@charset "UTF-8";
/**
Theme Name: Kyoto Nishiki
Text Domain: kyoto-nishiki
Version: 5.6.5
Description: 錦市場 Webサイト
Author: TAM inc.
 */
*,
::after,
::before {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  word-break: break-word;
  word-wrap: break-word; }

blockquote, body, dd, dl, figure, h1, h2, h3, h4, p {
  margin: 0; }

ol[role=list], ul[role=list] {
  list-style: none; }

html {
  scroll-behavior: smooth; }

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img,
picture {
  max-width: 100%;
  display: block; }

button, input, select, textarea {
  font: inherit; }

@media (prefers-reduced-motion: reduce) {
  *,
  ::after,
  ::before {
    animation-duration: NaNs !important;
    animation-iteration-count: 1 !important;
    transition-duration: NaNs !important;
    scroll-behavior: auto !important; } }
html,
body {
  padding: 0;
  margin: 0;
  border: none; }

picture {
  overflow: hidden; }

caption, figure, h1, h2, h3, h4, h5, h6, p, table, td, th, tr {
  padding: 0;
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  text-align: inherit;
  border: none; }

main {
  display: block; }

img {
  vertical-align: middle; }

button, input {
  font-size: 1rem;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0; }

address {
  font-style: normal; }

body {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-text-size-adjust: none; }

img {
  max-width: 100%; }

dd, dl, dt, ol, ul {
  padding-left: 0;
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  list-style: none; }

[data-whatintent=mouse] :focus,
[data-whatintent=touch] :focus {
  outline: 0; }

@-webkit-keyframes drew_line {
  0% {
    background-position: right bottom;
    background-size: 100% 1px; }
  50% {
    background-position: right bottom;
    background-size: 0 1px; }
  51% {
    background-position: left bottom;
    background-size: 0 1px; }
  100% {
    background-position: left bottom;
    background-size: 100% 1px; } }
@keyframes drew_line {
  0% {
    background-position: right bottom;
    background-size: 100% 1px; }
  50% {
    background-position: right bottom;
    background-size: 0 1px; }
  51% {
    background-position: left bottom;
    background-size: 0 1px; }
  100% {
    background-position: left bottom;
    background-size: 100% 1px; } }
@-webkit-keyframes drew_line_reverse {
  0% {
    background-position: left bottom;
    background-size: 0 1px; }
  50% {
    background-position: left bottom;
    background-size: 100% 1px; }
  51% {
    background-position: right bottom;
    background-size: 100% 1px; }
  100% {
    background-position: right bottom;
    background-size: 0 1px; } }
@keyframes drew_line_reverse {
  0% {
    background-position: left bottom;
    background-size: 0 1px; }
  50% {
    background-position: left bottom;
    background-size: 100% 1px; }
  51% {
    background-position: right bottom;
    background-size: 100% 1px; }
  100% {
    background-position: right bottom;
    background-size: 0 1px; } }
@-webkit-keyframes drew_bg {
  0% {
    background-position: right bottom;
    background-size: 100% 100%; }
  50% {
    background-position: right bottom;
    background-size: 0 100%; }
  51% {
    background-position: left bottom;
    background-size: 0 100%; }
  100% {
    background-position: left bottom;
    background-size: 100% 100%; } }
@keyframes drew_bg {
  0% {
    background-position: right bottom;
    background-size: 100% 100%; }
  50% {
    background-position: right bottom;
    background-size: 0 100%; }
  51% {
    background-position: left bottom;
    background-size: 0 100%; }
  100% {
    background-position: left bottom;
    background-size: 100% 100%; } }
@-webkit-keyframes slide-fade {
  from {
    width: 11.25rem;
    opacity: 0; }
  to {
    width: 10.125rem;
    opacity: 1; } }
@keyframes slide-fade {
  from {
    width: 11.25rem;
    opacity: 0; }
  to {
    width: 10.125rem;
    opacity: 1; } }
@-webkit-keyframes blink {
  0% {
    background: red; }
  100% {
    background: #bababa; } }
@keyframes blink {
  0% {
    background: red; }
  100% {
    background: #bababa; } }
html {
  scroll-behavior: smooth;
  font-size: 16px;
  position: relative;
  min-height: 100%;
  color: #000;
  background: #fff;
  min-height: 100%; }
  html.noSmooth {
    scroll-behavior: auto; }
  html.is-scrollfix {
    scroll-behavior: auto;
    overflow: hidden; }
    html.is-scrollfix body {
      overflow: hidden; }

body {
  text-indent: -.025em;
  letter-spacing: .05em;
  font-family: "Noto Sans JP",sans-serif,sans-serif;
  font-size: 1rem;
  line-height: 1.4;
  position: relative;
  min-height: 100%;
  color: #000;
  background: #fff;
  display: flex; }

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto; }
    html.noSmooth {
      scroll-behavior: auto; } }
@media print, screen and (max-width: 23.4275em) {
  html {
    font-size: 4.26667vw; } }
@supports (font-variation-settings: normal) {
  body {
    font-family: 'Noto Sans JP',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Helvetica,sans-serif; } }
a {
  color: currentColor;
  text-decoration: none; }

@media (any-hover: hover) {
  a[href*='tel:'] {
    pointer-events: none; }

  button:not(:disabled) {
    cursor: pointer; } }
.l-page {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  z-index: 1; }
  .l-page[data-pagetop=false] .l-header__onlineshop {
    pointer-events: none;
    opacity: 0; }
  .l-page[data-pagetop=true] .l-header__onlineshop {
    pointer-events: default; }
  .l-page[data-pagetop=false] .l-scroll {
    pointer-events: none;
    opacity: 0; }
  .l-page[data-pagetop=true] .l-scroll {
    pointer-events: default; }
  .l-page[data-manner=true][data-pagetop=false] .l-headerLogo {
    pointer-events: none;
    opacity: 0; }

@media print, screen and (max-width: 34.99em) {
  .l-page {
    min-height: -webkit-fill-available;
    transition: min-height .2s; } }
.l-body {
  padding-top: 3.75rem;
  z-index: 1; }

@media print, screen and (min-width: 35em) {
  .l-body {
    padding-top: 4.5rem; } }
@media print, screen and (min-width: 60em) {
  .l-body {
    padding-top: 0; } }
.l-manner {
  margin: auto 0 0;
  padding: 2.5rem 0;
  position: initial;
  z-index: 0; }

@media print, screen and (min-width: 35em) {
  .l-manner {
    padding: 3.75rem 0; } }
@media print, screen and (min-width: 60em) {
  .l-manner {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
    background: #fff; } }
.l-mannerHeader {
  font-family: "Noto Serif JP",serif;
  font-size: 1.125rem;
  font-weight: 600; }
  .l-mannerHeader small {
    display: block;
    height: 2.625rem;
    margin-bottom: .875rem;
    font-size: .8125rem;
    background: url(assets/img/common/ico_hashi.svg) no-repeat center bottom;
    background-size: 3.50312rem .58437rem; }

@media print, screen and (min-width: 35em) {
  .l-mannerHeader {
    font-size: 1.25rem; }
    .l-mannerHeader small {
      height: 3.25rem;
      font-size: 1.125rem; } }
.wpml-ls-statics-footer,
.otgs-development-site-front-end {
  display: none; }

.wpml-ls-legacy-list-horizontal,
.wpml-ls-legacy-list-vertical {
  display: block !important;
  border: none !important;
  border-bottom: unset !important;
  padding: 0 !important;
  clear: unset !important; }
  .wpml-ls-legacy-list-horizontal .wpml-ls-current-language,
  .wpml-ls-legacy-list-vertical .wpml-ls-current-language {
    pointer-events: none; }

.l-header {
  margin-right: auto;
  margin-left: auto;
  display: -ms-grid;
  display: grid;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 2;
  transition: height .3s; }

@media print, screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-header {
    width: calc(100% - 8.75rem); } }
@media print, screen and (min-width: 90em) {
  .l-header {
    width: calc(100% - 10rem);
    max-width: 80rem; } }
@media print, screen and (min-width: 60em) {
  .l-header {
    -ms-grid-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr;
    grid-template-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr; } }
@media print, screen and (max-width: 59.99em) {
  .l-header {
    display: flex;
    align-items: center;
    width: 100%;
    background: #fff;
    transition: box-shadow .3s ease-in-out; }

  .l-page[data-pagetop=false] .l-header {
    box-shadow: 0 0 0.15625rem 0 rgba(0, 0, 0, 0.1), 0 0.25rem 1.125rem -0.75rem rgba(0, 0, 0, 0.1); } }
@media print, screen and (min-width: 60em) {
  .l-header {
    height: 0; }
    .l-header[aria-hidden=true] {
      pointer-events: none;
      opacity: 0; } }
.l-headerLogo {
  display: inline-flex;
  align-items: flex-start;
  height: 3.75rem;
  padding: .625rem .625rem 0 .625rem; }

@media (any-hover: hover) {
  .l-headerLogo {
    transition: opacity .3s ease-out; }
    .l-headerLogo:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; } }
@media print, screen and (min-width: 35em) {
  .l-headerLogo {
    height: 4.5rem;
    padding: .9375rem .9375rem 0 .9375rem; } }
@media print, screen and (min-width: 60em) {
  .l-headerLogo {
    display: flex;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    align-items: flex-start;
    justify-content: center;
    width: calc(100% + 4.375rem);
    height: 9rem;
    padding: 1.25rem 0 0;
    transition: opacity .3s ease-in-out;
    -webkit-transform: translateX(-4.375rem);
    transform: translateX(-4.375rem); } }
@media print, screen and (min-width: 90em) {
  .l-headerLogo {
    width: calc(100% + 5rem);
    height: 11.875rem;
    padding: 1.875rem 0 0;
    -webkit-transform: translateX(-5rem);
    transform: translateX(-5rem); } }
.l-headerLogo__img {
  width: 7.52937rem;
  height: 2.75rem;
  transition: width .3s,height .3s; }

@media print, screen and (min-width: 60em) {
  .l-headerLogo__img {
    width: 4.25rem;
    height: 5.91125rem;
    display: block; } }
@media print, screen and (min-width: 90em) {
  .l-headerLogo__img {
    width: 5.625rem;
    height: 7.6875rem; } }
@media print, screen and (min-width: 60em) {
  [data-pagetop=false] .l-headerLogo__img {
    width: 3.375rem;
    height: 4.6875rem; } }
@media print, screen and (min-width: 90em) {
  [data-pagetop=false] .l-headerLogo__img {
    width: 4.375rem;
    height: 6.0625rem; } }
.l-header__onlineshop {
  display: none; }

@media print, screen and (min-width: 60em) {
  .l-header__onlineshop {
    width: 4.375rem;
    height: 5rem;
    position: fixed;
    right: 0;
    top: 8rem;
    display: inline-flex;
    align-items: center;
    justify-content: center; } }
@media print and (any-hover: hover), screen and (min-width: 60em) and (any-hover: hover) {
  .l-header__onlineshop {
    transition: opacity .3s ease-out; }
    .l-header__onlineshop:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; } }
@media print, screen and (min-width: 90em) {
  .l-header__onlineshop {
    width: 5rem; } }
.l-header__onlineshop-icon {
  width: 2.25rem;
  height: 2.25rem; }

.l-footer {
  margin: 0;
  padding: 2.25rem 0;
  background: #f8f8f8; }

@media print, screen and (min-width: 60em) {
  .l-footer {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
    padding: 3rem 0 1.5rem; } }
.l-footer__column {
  margin-right: auto;
  margin-left: auto;
  display: -ms-grid;
  display: grid; }

@media print, screen and (max-width: 34.99em) {
  .l-footer__column {
    width: calc(100% - 2.5rem); } }
@media print, screen and (min-width: 35em) and (max-width: 59.99em) {
  .l-footer__column {
    width: calc(100% - 4.875rem); } }
@media print, screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-footer__column {
    width: calc(100% - 8.75rem); } }
@media print, screen and (min-width: 90em) {
  .l-footer__column {
    width: calc(100% - 10rem);
    max-width: 80rem; } }
@media print, screen and (min-width: 35em) and (max-width: 59.99em) {
  .l-footer__column {
    -ms-grid-columns: 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr;
    grid-template-columns: 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr; } }
@media print, screen and (min-width: 60em) {
  .l-footer__column {
    -ms-grid-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr;
    grid-template-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr; } }
@media print, screen and (min-width: 35em) {
  .l-footerExternal {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 9;
    -ms-grid-column-span: 7;
    grid-column: 9/16; } }
@media print, screen and (min-width: 60em) {
  .l-footerExternal {
    -ms-grid-column: 15;
    -ms-grid-column-span: 9;
    grid-column: 15/24; } }
@media print, screen and (min-width: 73.75em) {
  .l-footerExternal {
    -ms-grid-column: 17;
    -ms-grid-column-span: 7;
    grid-column: 17/24; } }
.l-footerExternal__shop {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3.75em;
  padding: 1em 2em;
  color: currentColor;
  text-decoration: none;
  border: 1px solid #d3d3d3;
  width: 100%;
  padding: 1em; }

@media (any-hover: hover) {
  .l-footerExternal__shop {
    transition: opacity .3s ease-out; }
    .l-footerExternal__shop:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; } }
.l-footerExternal__shop-icon {
  width: 1.3125rem;
  height: 1.3125rem;
  margin-right: .75rem; }

.l-footerExternal__sns {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  text-align: center; }
  .l-footerExternal__sns::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 100%;
    display: block;
    margin: 0 auto;
    pointer-events: none;
    content: '';
    background: currentColor; }

.l-footerExternal__shop ~ .l-footerExternal__sns {
  margin-top: 2.1875rem; }

@media print, screen and (min-width: 35em) {
  .l-footerExternal__shop ~ .l-footerExternal__sns {
    margin-top: 1.875rem; } }
.l-footerExternal__sns-item {
  display: inline-flex;
  align-items: center;
  height: 1.75rem;
  padding: 0 .9375rem; }
  .l-footerExternal__sns-item:first-child {
    margin-right: 2.25rem; }

@media (any-hover: hover) {
  .l-footerExternal__sns-item {
    transition: opacity .3s ease-out; }
    .l-footerExternal__sns-item:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; } }
@media print, screen and (min-width: 35em) {
  .l-footerExternal__sns-item {
    padding: 0 .625rem; } }
@media print, screen and (min-width: 35em) {
  .l-footerExternal__sns-item:first-child {
    margin-right: 2.625rem; } }
@media print, screen and (min-width: 60em) {
  .l-footerExternal__sns-item:first-child {
    margin-right: 3.25rem; } }
.l-footerExternal__sns-icon {
  width: 1.375rem;
  height: 1.375rem;
  vertical-align: middle; }

.l-footerExternal__sns-text {
  font-family: "Noto Serif JP",serif;
  font-size: .875rem;
  font-weight: 600;
  margin-left: 1em; }

@media print, screen and (max-width: 47.99em) {
  .l-footerExternal__sns-text {
    display: none; } }
.l-footerSitemap {
  margin: 2.1875rem 0 0; }

@media print, screen and (min-width: 35em) {
  .l-footerSitemap {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7;
    grid-column: 1/8;
    margin: 0; } }
@media print, screen and (min-width: 60em) {
  .l-footerSitemap {
    display: flex;
    -ms-grid-column: 1;
    -ms-grid-column-span: 15;
    grid-column: 1/16; } }
@media print, screen and (min-width: 90em) {
  .l-footerSitemap {
    -ms-grid-column: 1;
    -ms-grid-column-span: 15;
    grid-column: 1/16; } }
.l-footerSitemap__top {
  margin-right: 4.375rem;
  transition: margin-right .3s; }

@media (any-hover: hover) {
  .l-footerSitemap__top {
    transition: opacity .3s ease-out; }
    .l-footerSitemap__top:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; } }
@media print, screen and (min-width: 90em) {
  .l-footerSitemap__top {
    margin-right: 5rem; } }
@media print, screen and (max-width: 73.74em) {
  .l-footerSitemap__top {
    display: none; } }
.l-footerSitemap__top-img {
  width: 4.62688rem;
  height: 6.43313rem; }

.l-footerSitemap__menu {
  margin-top: -1rem; }
  .l-footerSitemap__menu .menu-item {
    margin-top: 1rem;
    font-size: .875rem;
    transition: margin-left .3s; }
    .l-footerSitemap__menu .menu-item a {
      position: relative; }
      .l-footerSitemap__menu .menu-item a::before {
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        height: .2em;
        pointer-events: none;
        content: '';
        background: linear-gradient(currentColor, currentColor) no-repeat;
        background-position: bottom right;
        background-size: 0 1px;
        opacity: .75;
        transition: background-size .3s ease-in-out; }

@media print, screen and (min-width: 35em) {
  .l-footerSitemap__menu {
    width: 100%; } }
@media print, screen and (min-width: 60em) {
  .l-footerSitemap__menu {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    min-height: 8.625rem;
    max-height: 9.9375rem;
    margin-top: -1.5625rem; } }
.l-footerSitemap__menu-item {
  margin-top: 1rem;
  font-size: .875rem;
  transition: margin-left .3s; }

@media print, screen and (min-width: 60em) and (max-width: 67.74em) {
  .l-footerSitemap__menu-item {
    max-width: 11em; }

  .l-footerSitemap__menu .menu-item {
    max-width: 11em; } }
@media print, screen and (min-width: 35em) {
  .l-footerSitemap__menu-item {
    font-size: .9375rem; }

  .l-footerSitemap__menu .menu-item {
    font-size: .9375rem; } }
@media print, screen and (min-width: 60em) {
  .l-footerSitemap__menu-item {
    margin-top: 1.5625rem; }

  .l-footerSitemap__menu .menu-item {
    margin-top: 1.5625rem; } }
@media print, screen and (max-width: 59.99em) {
  .l-footerSitemap__menu-item:not(:nth-last-child(-n+4)) {
    display: none; }

  .l-footerSitemap__menu .menu-item:not(:nth-last-child(-n+4)) {
    display: none; } }
@media print, screen and (min-width: 60em) {
  .l-footerSitemap__menu-item:nth-child(n+4) {
    margin-left: 2.5rem; }

  .l-footerSitemap__menu .menu-item:nth-child(n+4) {
    margin-left: 2.5rem; } }
@media print, screen and (min-width: 90em) {
  .l-footerSitemap__menu-item:nth-child(n+4) {
    margin-left: 3.375rem; }

  .l-footerSitemap__menu .menu-item:nth-child(n+4) {
    margin-left: 3.375rem; } }
.l-footerSitemap__menu-link {
  position: relative; }
  .l-footerSitemap__menu-link::before {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: .2em;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 0 1px;
    opacity: .75;
    transition: background-size .3s ease-in-out; }

@media (any-hover: hover) {
  .l-footerSitemap__menu-link:hover::before {
    background-position: bottom left;
    background-size: 100% 1px;
    transition: background-size .6s ease-in-out; }

  .l-footerSitemap__menu .menu-item a:hover::before {
    background-position: bottom left;
    background-size: 100% 1px;
    transition: background-size .6s ease-in-out; } }
.l-footerScroller {
  width: 4.375rem;
  height: 4.375rem;
  position: absolute;
  right: 0;
  bottom: .75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: 0 0; }

@media print, screen and (min-width: 60em) {
  .l-footerScroller {
    width: 4.375rem;
    height: 4.375rem;
    bottom: 0; } }
@media print, screen and (min-width: 90em) {
  .l-footerScroller {
    width: 5rem;
    height: 5rem; } }
@media (any-hover: hover) {
  .l-footerScroller {
    transition: -webkit-transform .5s ease-in-out;
    transition: transform .5s ease-in-out;
    transition: transform .5s ease-in-out,-webkit-transform .5s ease-in-out; }
    .l-footerScroller:hover {
      transition: -webkit-transform .3s ease-in-out;
      transition: transform .3s ease-in-out;
      transition: transform .3s ease-in-out,-webkit-transform .3s ease-in-out;
      -webkit-transform: translateY(-10%);
      transform: translateY(-10%); } }
.l-page[data-pagetop=true] .l-footerScroller {
  display: none; }

.l-footerScroller__icon {
  width: 1.875rem;
  height: 1rem; }

@media print, screen and (min-width: 35em) {
  .l-footerScroller__icon {
    width: 2.5rem;
    height: 1.3125rem; } }
.l-footerCopyright {
  margin-right: auto;
  margin-left: auto;
  display: block;
  margin-top: 2.25rem;
  font-size: .8125rem; }

@media print, screen and (max-width: 34.99em) {
  .l-footerCopyright {
    width: calc(100% - 2.5rem); } }
@media print, screen and (min-width: 35em) and (max-width: 59.99em) {
  .l-footerCopyright {
    width: calc(100% - 4.875rem); } }
@media print, screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-footerCopyright {
    width: calc(100% - 8.75rem); } }
@media print, screen and (min-width: 90em) {
  .l-footerCopyright {
    width: calc(100% - 10rem);
    max-width: 80rem; } }
@media print, screen and (min-width: 35em) {
  .l-footerCopyright {
    margin-top: 4.125rem;
    font-size: .875rem;
    text-align: center; } }
@media print, screen and (min-width: 60em) {
  .l-footerCopyright {
    -ms-grid-column: 3;
    -ms-grid-column-span: 19;
    grid-column: 3/22; } }
.l-manner__column {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding: 2.25rem 1.5rem;
  text-align: center;
  border: 1px solid #d3d3d3; }

@media print, screen and (max-width: 34.99em) {
  .l-manner__column {
    width: calc(100% - 2.5rem); } }
@media print, screen and (min-width: 35em) and (max-width: 59.99em) {
  .l-manner__column {
    width: calc(100% - 4.875rem); } }
@media print, screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-manner__column {
    width: calc(100% - 8.75rem); } }
@media print, screen and (min-width: 90em) {
  .l-manner__column {
    width: calc(100% - 10rem);
    max-width: 80rem; } }
@media print, screen and (min-width: 35em) {
  .l-manner__column {
    padding: 3.125rem 2em; } }
.l-mannerBody {
  margin-top: 1.25rem;
  font-size: .875rem;
  line-height: 1.8; }

@media print, screen and (min-width: 60em) {
  .l-mannerBody {
    font-size: .9375rem; } }
.l-mannerFooter {
  padding-bottom: .25rem;
  margin-top: 1.25rem; }
  .l-mannerFooter a {
    font-family: "Noto Serif JP",serif;
    font-size: .875rem;
    font-weight: 600;
    position: relative;
    display: inline-flex;
    padding: 0 0 .4em;
    color: currentColor;
    text-decoration: none;
    background: linear-gradient(currentColor, currentColor) no-repeat bottom right;
    background-size: 100% 1px;
    font-family: "Noto Sans JP",sans-serif;
    font-weight: 400; }
    .l-mannerFooter a::after {
      position: absolute;
      top: 0;
      bottom: 0;
      display: inline-block;
      height: 1.5em;
      margin: auto 0 auto .25em;
      font-family: "Noto Serif JP",serif;
      font-size: 1.25em;
      font-weight: 600;
      content: '→';
      left: 100%;
      transition: .3s ease-in-out; }

@media (any-hover: hover) {
  .l-mannerFooter a:hover {
    -webkit-animation: drew_line 1s ease-in-out forwards;
    animation: drew_line 1s ease-in-out forwards; }
    .l-mannerFooter a:hover::after {
      left: 102%; } }
@media print, screen and (min-width: 35em) {
  .l-mannerFooter a {
    font-size: .9375rem; } }
/* VR錦・オンラインショップボタン追加 */
.l-footerExternal__shop:first-child {
  margin-bottom: 15px; }

@media screen and (min-width: 60em) {
  .l-footerSitemap__menu-item {
    margin-top: 1rem; }

  .l-footerSitemap__menu-item:nth-child(n+5) {
    margin-left: 1.8rem !important; }

  .l-footerSitemap__menu-item:nth-child(n+4) {
    margin-left: 0rem; }

  .l-footerSitemap__menu .menu-item {
    margin-top: 1rem; }
    .l-footerSitemap__menu .menu-item:nth-child(n+5) {
      margin-left: 1.8rem !important; }
    .l-footerSitemap__menu .menu-item:nth-child(n+4) {
      margin-left: 0rem; } }
@media screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-footer__column {
    width: calc(100% - 5rem); } }
@media screen and (min-width: 90em) {
  .l-footerSitemap__menu-item {
    margin-top: 2rem; }

  .l-footerSitemap__menu-item:nth-child(n+4) {
    margin-left: 2rem; }

  .l-footerSitemap__menu-item:nth-child(n+5) {
    margin-left: 2rem !important; }

  .l-footerSitemap__menu .menu-item {
    margin-top: 2rem; }
    .l-footerSitemap__menu .menu-item:nth-child(n+4) {
      margin-left: 2rem; }
    .l-footerSitemap__menu .menu-item:nth-child(n+5) {
      margin-left: 2rem !important; } }
.l-nav {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: fixed;
  overflow-x: hidden;
  overflow-y: auto;
  color: #fff;
  background: #333; }
  .l-nav[aria-hidden=true] {
    pointer-events: none;
    opacity: 0;
    transition: opacity .2s ease-in; }
  .l-nav[aria-hidden=false] {
    opacity: 1;
    transition: opacity .6s ease-in-out; }

.l-nav__column {
  margin-right: auto;
  margin-left: auto;
  display: -ms-grid;
  display: grid;
  position: relative;
  padding: 3.75rem 3.125rem; }

.l-nav,
.l-nav__open {
  z-index: 2; }

.l-nav__primary {
  margin-top: 1.25rem;
  margin-top: 1.25rem; }
  .l-nav__primary .menu-item {
    font-family: "Noto Serif JP",serif;
    font-size: 1.0625rem;
    font-weight: 600; }
    .l-nav__primary .menu-item a {
      position: relative; }
      .l-nav__primary .menu-item a::before {
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        height: .2em;
        pointer-events: none;
        content: '';
        background: linear-gradient(currentColor, currentColor) no-repeat;
        background-position: bottom right;
        background-size: 0 1px;
        opacity: .75;
        transition: background-size .3s ease-in-out; }
    .l-nav__primary .menu-item + .menu-item {
      margin-top: 1.25rem; }

.l-nav__primary-item {
  font-family: "Noto Serif JP",serif;
  font-size: 1.0625rem;
  font-weight: 600; }
  .l-nav__primary-item ~ .l-nav__primary-item {
    margin-top: 1.25rem; }

.l-nav__primary-link {
  position: relative; }
  .l-nav__primary-link::before {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: .2em;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 0 1px;
    opacity: .75;
    transition: background-size .3s ease-in-out; }

.l-nav__secondary {
  margin-top: 2.125rem; }

.l-nav__secondary-item {
  font-size: .875rem; }
  .l-nav__secondary-item ~ .l-nav__secondary-item {
    margin-top: 1.8125rem; }

.l-nav__secondary-link {
  position: relative;
  padding-left: 1.5rem; }
  .l-nav__secondary-link::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: .55rem;
    height: 1px;
    margin: auto 0;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat bottom right; }

.l-nav__external {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  margin-top: 2.5rem; }

.l-nav__external-link {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3.75em;
  padding: 1em 2em;
  color: currentColor;
  text-decoration: none;
  border: 1px solid #d3d3d3;
  width: 100%;
  line-height: 1.5625rem; }

.l-nav__external-linkIcon {
  width: 1.5625rem;
  height: 1.5625rem;
  margin-right: 1em; }

.l-nav__close {
  width: 4.0625rem;
  height: 4.5rem;
  position: absolute;
  top: 0;
  right: 0;
  padding: 0;
  color: currentColor;
  text-align: center;
  background: 0 0;
  box-shadow: inset 1px -1px 0 0 #707070; }
  .l-nav__close::after {
    width: 1.875rem;
    height: 2px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    top: -1rem;
    display: block;
    margin: auto;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 100% 100%;
    border-radius: 1px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .l-nav__close::before {
    width: 1.875rem;
    height: 2px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    top: -1rem;
    display: block;
    margin: auto;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 100% 100%;
    border-radius: 1px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.l-nav__open {
  width: 4.0625rem;
  height: 3.75rem;
  position: fixed;
  top: 0;
  right: 0;
  padding: 0;
  color: #000;
  background: 0 0; }
  .l-nav__open::after {
    width: 2.375rem;
    height: 2px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    bottom: .875rem;
    display: block;
    margin: auto;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 100% 100%;
    border-radius: 1px;
    -webkit-transform: translateY(0.3125rem);
    transform: translateY(0.3125rem); }
  .l-nav__open::before {
    width: 2.375rem;
    height: 2px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    bottom: .875rem;
    display: block;
    margin: auto;
    pointer-events: none;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat;
    background-position: bottom right;
    background-size: 100% 100%;
    border-radius: 1px;
    -webkit-transform: translateY(-0.3125rem);
    transform: translateY(-0.3125rem); }
  .l-nav__open:disabled {
    pointer-events: none; }
    .l-nav__open:disabled::after {
      width: 1.875rem;
      color: #fff;
      opacity: 0;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .l-nav__open:disabled::before {
      width: 1.875rem;
      color: #fff;
      opacity: 0;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }

.l-nav__button-text {
  font-family: "Noto Serif JP",serif;
  font-size: .625rem;
  font-weight: 600;
  position: absolute;
  top: 3rem;
  top: 2.625rem;
  right: 0;
  left: 0;
  margin: 0 auto;
  font-weight: 700;
  -webkit-transform: opacity .3s ease-in-out;
  transform: opacity .3s ease-in-out; }

.l-nav__open .l-nav__button-text {
  top: 2.25rem; }

:disabled .l-nav__button-text {
  opacity: 0; }

.l-nav__bnr {
  position: fixed;
  z-index: 1;
  top: 10px;
  right: 70px;
  width: 150px; }

.l-nav__bnr a {
  display: block;
  height: 40px;
  border: 1px solid;
  text-align: center;
  line-height: 38px;
  font-size: 15px;
  transition: .3s; }
  .l-nav__bnr a:hover {
    background: #000;
    color: #fff; }

.l-nav__shop a {
  border: none; }

/*VR錦・オンラインショップボタン追加*/
.l-nav__bnr a {
  display: block;
  height: 40px;
  border: 1px solid;
  text-align: center;
  line-height: 38px;
  font-size: 15px;
  transition: .3s; }
  .l-nav__bnr a:hover {
    background: #000;
    color: #fff; }

.l-nav__external:last-child {
  margin-top: 20px; }

/*言語選択ボタン*/
.l-nav__e-btn {
  width: 3.75rem;
  height: 3.75rem;
  position: fixed;
  top: 0%;
  right: 4.0625rem;
  z-index: 2;
  font-family: "Noto Serif JP",serif;
  text-align: center;
  font-size: 11px;
  letter-spacing: normal; }
  .l-nav__e-btn .l-nav__e-btn-icon {
    width: 50%;
    margin: 10px auto 0; }
  .l-nav__e-btn .l-nav__e-list {
    display: none;
    position: absolute;
    bottom: 0;
    width: 150%;
    transform: translateY(100%);
    background: #000;
    color: #fff;
    font-size: 13px; }
    .l-nav__e-btn .l-nav__e-list li {
      display: inherit; }
      .l-nav__e-btn .l-nav__e-list li + li {
        border-top: 1px solid; }
      .l-nav__e-btn .l-nav__e-list li a {
        display: block;
        padding: 10px;
        line-height: inherit; }

.l-nav__bnr {
  right: calc(7.8125rem + 10px);
  width: 95px; }

.l-scroll {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: fixed;
  pointer-events: none;
  transition: opacity .3s,bottom .3s; }

.l-scroll-text {
  font-family: "Noto Serif JP",serif;
  font-size: .6875rem;
  font-weight: 600;
  text-indent: -.05em;
  letter-spacing: .1em;
  width: 10.5rem;
  height: 5.625rem;
  position: absolute;
  right: 0;
  bottom: -.375rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  text-transform: uppercase;
  white-space: nowrap;
  transition: height .3s;
  -webkit-transform: rotate(90deg) translateY(100%);
  transform: rotate(90deg) translateY(100%);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
  -webkit-animation: slide-fade .5s forwards;
  animation: slide-fade .5s forwards; }
  .l-scroll-text::after {
    width: 100%;
    height: 1px;
    display: block;
    margin: auto 0 auto auto;
    margin-left: 1em;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat bottom right;
    background-size: 100% 1px;
    -webkit-animation: drew_line 4s ease-in-out infinite;
    animation: drew_line 4s ease-in-out infinite; }

.l-section {
  margin-top: 3rem; }

.l-sectionHeader {
  margin-right: auto;
  margin-left: auto;
  display: -ms-grid;
  display: grid; }

.l-sectionHeader__title {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  text-indent: -.04em;
  letter-spacing: .08em;
  display: inline;
  padding-top: .75rem;
  margin: 0 .25em 0 0;
  font-size: 1.375rem;
  line-height: 1.4; }

.l-sectionHeader__title-en {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  text-indent: -.1em;
  letter-spacing: .2em;
  display: inline-flex;
  font-size: .5rem;
  vertical-align: .33em;
  margin: 0 0.2em 0 0; }

.l-sectionHeader__title-deco {
  width: 4.5rem;
  height: 0.7em;
  display: inline-block;
  pointer-events: none;
  position: relative; }
  .l-sectionHeader__title-deco::after {
    width: 100%;
    height: 1px;
    content: '';
    background: linear-gradient(currentColor, currentColor) no-repeat 0 center;
    background-size: 100% 1px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%); }

.o-searchCategory {
  display: -ms-grid;
  display: grid;
  /*-ms-grid-rows:(auto)[6];*/
  grid-template-rows: repeat(6, auto);
  /*-ms-grid-columns:(1fr)[3];*/
  grid-template-columns: repeat(3, 1fr);
  margin-top: 3rem; }

.o-searchCategory__button {
  width: 100%;
  min-height: 7.25rem;
  background: 0 0;
  transition: background-color .3s ease-in-out .1s; }
  .o-searchCategory__button[aria-selected=true] {
    z-index: 3;
    background: #f4f4f4;
    border-bottom-color: transparent; }
  .o-searchCategory__button .u-category__icon {
    margin: 0 auto .625rem; }
  .o-searchCategory__button[aria-controls=u-category__fish], .o-searchCategory__button[aria-controls=u-category__fresh-food], .o-searchCategory__button[aria-controls=u-category__pickles] {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2; }
  .o-searchCategory__button[aria-controls=u-category__processed-food], .o-searchCategory__button[aria-controls=u-category__soy-food], .o-searchCategory__button[aria-controls=u-category__sweets] {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4; }
  .o-searchCategory__button[aria-controls=u-category__goods], .o-searchCategory__button[aria-controls=u-category__other], .o-searchCategory__button[aria-controls=u-category__restaurant] {
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6; }
  .o-searchCategory__button:not([aria-controls=u-category__fish]):not([aria-controls=u-category__soy-food]):not([aria-controls=u-category__restaurant]) {
    border-left: 1px solid #dedede; }
  .o-searchCategory__button[aria-controls=u-category__fish], .o-searchCategory__button[aria-controls=u-category__restaurant], .o-searchCategory__button[aria-controls=u-category__soy-food] {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2; }
  .o-searchCategory__button[aria-controls=u-category__fresh-food], .o-searchCategory__button[aria-controls=u-category__goods], .o-searchCategory__button[aria-controls=u-category__processed-food] {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3; }
  .o-searchCategory__button[aria-controls=u-category__other], .o-searchCategory__button[aria-controls=u-category__pickles], .o-searchCategory__button[aria-controls=u-category__sweets] {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4; }

.o-searchCategory .u-category__tabpanel {
  background: #f4f4f4;
  border-bottom: 1px solid #dedede; }
  .o-searchCategory .u-category__tabpanel[aria-hidden=false] {
    box-shadow: 0 -1px 0 0 #dedede; }
.o-searchCategory #u-category__fish,
.o-searchCategory #u-category__fresh-food,
.o-searchCategory #u-category__pickles {
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-column: 1/4; }
.o-searchCategory #u-category__processed-food,
.o-searchCategory #u-category__soy-food,
.o-searchCategory #u-category__sweets {
  -ms-grid-row: 4;
  -ms-grid-row-span: 1;
  grid-row: 4/5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-column: 1/4; }
.o-searchCategory #u-category__goods,
.o-searchCategory #u-category__other,
.o-searchCategory #u-category__restaurant {
  -ms-grid-row: 6;
  -ms-grid-row-span: 1;
  grid-row: 6/7;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-column: 1/4; }
.o-searchCategory #u-category__goods[aria-hidden=true],
.o-searchCategory #u-category__other[aria-hidden=true],
.o-searchCategory #u-category__restaurant[aria-hidden=true] {
  border-bottom: none; }
.o-searchCategory .u-category__child-link {
  background-color: #fff; }

.o-searchFreeword {
  position: relative;
  display: flex;
  height: 3.75rem;
  background: #f4f4f4; }

.o-searchFreeword__query {
  display: block;
  width: calc(100% - 3.75rem);
  height: 3.75rem;
  padding: 1em 1.2em;
  background: 0 0;
  border: 0;
  border-right: 1px solid #e4e4e4; }

.o-searchFreeword__button {
  width: 3.75rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: 0 0;
  border: 0; }

.o-searchFreeword__icon {
  width: 1.375rem;
  height: 1.375rem; }

.o-search__grid {
  margin-top: 1.875rem; }

.o-search__title {
  font-family: "Noto Serif JP",serif;
  font-size: 1.375rem;
  font-weight: 600;
  text-align: center; }

.o-search__title-sub {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  margin: 1.875rem 0 1.125rem; }
  .o-search__title-sub:first-child {
    margin-top: 0; }

.o-seatchMap {
  margin-top: 1.875rem; }

.o-seatchMap__link {
  font-family: "Noto Serif JP",serif;
  font-weight: 600;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3.75em;
  padding: 1em 2em;
  color: currentColor;
  text-decoration: none;
  border: 1px solid #d3d3d3;
  width: 100%; }
  .o-seatchMap__link::before {
    width: 1.25rem;
    height: 1.25rem;
    right: 100%;
    display: block;
    margin-right: .5em;
    content: '';
    background: url(assets/img/common/ico_pin.svg) no-repeat; }

.u-anchor {
  position: absolute;
  bottom: 100%;
  display: block;
  height: 5rem;
  pointer-events: none; }

.u-annotation {
  text-indent: 0;
  letter-spacing: 0;
  position: relative;
  padding-left: 1.25em;
  font-size: .875rem;
  line-height: 1.8; }
  .u-annotation::before {
    position: absolute;
    top: 0;
    left: 0;
    content: '※'; }

.u-attention {
  color: red; }

.u-category__button {
  font-family: "Noto Serif JP",serif;
  font-size: .9375rem;
  font-weight: 600;
  padding: 0;
  text-align: center;
  background: 0 0; }

.u-category__icon {
  width: 2.5rem;
  height: 2.5rem;
  display: block; }

.u-category__text {
  white-space: nowrap;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt'; }

.u-category__tabpanel {
  position: relative;
  background: #ebebeb; }
  .u-category__tabpanel[aria-hidden=true] {
    z-index: 1;
    height: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: hidden;
    pointer-events: none; }
  .u-category__tabpanel[aria-hidden=false] {
    z-index: 2;
    pointer-events: auto; }
  .u-category__tabpanel[aria-hidden] {
    transition: padding .5s ease; }

.u-category__child-item {
  padding: .3125rem; }

[aria-hidden] .u-category__child-item {
  transition: opacity .2s ease; }

[aria-hidden=true] .u-category__child-item {
  opacity: 0; }

.u-category__child-link {
  position: relative;
  display: flex;
  align-content: center;
  align-items: center;
  min-height: 2.5rem;
  padding: 0 1.875rem 0 .90625rem;
  font-size: 1rem;
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.08); }
  .u-category__child-link::after {
    width: .5625rem;
    height: .5625rem;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    margin: auto 1.125rem auto auto;
    pointer-events: none;
    content: '';
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.u-datalist dt {
  display: inline-block; }
  .u-datalist dt::after {
    margin: 0 .2em 0 .1em;
    content: ':'; }
.u-datalist dd {
  display: inline; }

.u-delimiter {
  display: inline-block; }

.u-grid {
  margin-right: auto;
  margin-left: auto;
  display: -ms-grid;
  display: grid; }

.u-hd__large {
  font-family: "Noto Serif JP",serif;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5; }

.u-hd__middle {
  font-family: "Noto Serif JP",serif;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5; }

.u-hide__md, .u-hide__lg, .u-hide__xl {
  display: inline; }

.u-keyword {
  display: flex;
  flex-wrap: wrap;
  margin: -.3125rem; }

.u-keyword__item {
  display: inline-flex;
  margin: .3125rem; }

.u-keyword__link {
  text-indent: 0;
  letter-spacing: 0;
  display: inline-flex;
  padding: .625rem;
  font-size: .9375rem;
  line-height: 1.36;
  color: #444;
  background: #f4f4f4; }
  .u-keyword__link::before {
    margin-right: .3em;
    content: '#'; }

.u-lazy[aria-busy] {
  transition: .5s ease; }
.u-lazy[aria-busy=true] {
  opacity: 0; }

.u-list {
  margin: 0 0 0 1.5em;
  color: #444; }

.u-list__item {
  text-indent: 0;
  letter-spacing: 0;
  line-height: 2;
  list-style: disc; }
  .u-list__item ~ .u-list__item {
    margin-top: .25rem; }

.u-loading {
  margin: 1rem;
  font-size: .875rem;
  color: #d3d3d3;
  text-align: center; }

.u-pagenation {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 25.875rem;
  margin: 0 auto; }

.u-pagenation__page {
  position: relative;
  width: 2.13333rem;
  height: 2.13333rem;
  padding: 0;
  margin: 0 .8vw;
  font-family: "Noto Serif JP",serif;
  font-size: 1.125rem;
  font-weight: 400;
  white-space: nowrap;
  background: 0 0;
  transition: color .3s ease-in-out; }
  .u-pagenation__page::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    margin: 0 auto;
    content: '';
    background: #1c1c1c;
    transition: width .3s ease-in-out; }
  .u-pagenation__page.is-near {
    display: none; }
  .u-pagenation__page[aria-checked] {
    color: #000; }
    .u-pagenation__page[aria-checked]::after {
      width: 1.44em; }
  .u-pagenation__page.is-more {
    padding-top: .5em;
    color: #000;
    pointer-events: none; }
  .u-pagenation__page.is-remined {
    color: transparent;
    vertical-align: text-bottom;
    pointer-events: none; }
    .u-pagenation__page.is-remined::before {
      display: inline-block;
      margin: .5em auto 0;
      color: #000;
      vertical-align: text-bottom;
      content: '…'; }

.u-pagenation__next, .u-pagenation__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.34667rem;
  height: 2.34667rem;
  max-height: 3.1875rem;
  padding: 0;
  margin: 0;
  font-family: "Noto Serif JP",serif;
  font-size: 1.25rem;
  background: 0 0;
  transition: color .3s ease-in-out; }

.u-pagenation__next:disabled {
  display: none; }

.u-pagenation__preview {
  margin-right: 1.33333vw; }
  .u-pagenation__preview:disabled {
    display: none; }

.u-pagenation__next {
  margin-left: 1.33333vw; }

.u-paragraph {
  text-indent: 0;
  letter-spacing: 0;
  font-size: 1rem;
  line-height: 2;
  margin-top: 1.125rem;
  color: #444; }
  .u-paragraph a {
    text-decoration: underline; }

.u-show__sm,
.u-show__md,
.u-show__md-only,
.u-show__lg,
.u-show__lg-only,
.u-show__xl {
  display: none; }

.u-tag:not(.--single) {
  display: flex;
  flex-wrap: wrap;
  margin: -.125rem; }
.u-tag.--single {
  display: inline-flex; }

.u-tag__item {
  display: inline-flex;
  align-items: center;
  height: 1.25rem;
  padding: .125rem .5rem;
  margin: .125rem;
  font-size: .6875rem;
  font-weight: 500;
  color: #fff;
  white-space: nowrap;
  background: #b1b1b1;
  border-radius: .125rem; }
  .u-tag__item.--fish, .u-tag__item.--fish_en {
    background: #44a2c4; }
  .u-tag__item.--meet, .u-tag__item.--meet_en {
    background: #305b7b; }
  .u-tag__item.--fresh-food, .u-tag__item.--fresh-food_en {
    background: #629328; }
  .u-tag__item.--pickles, .u-tag__item.--pickles_en {
    background: #a5c15a; }
  .u-tag__item.--soy-food, .u-tag__item.--soy-food_en {
    background: #ccbe56; }
  .u-tag__item.--processed-food, .u-tag__item.--processed-food_en {
    background: #937a53; }
  .u-tag__item.--sweets, .u-tag__item.--sweets_en {
    background: #e5a0b8; }
  .u-tag__item.--restaurant, .u-tag__item.--restaurant_en {
    background: #ce626b; }
  .u-tag__item.--goods, .u-tag__item.--goods_en {
    background: #a77fc4; }
  .u-tag__item.--other, .u-tag__item.--other_en {
    background: #b1b1b1; }
  .u-tag__item.--spices, .u-tag__item.--spices_en {
    background: #D6AF39; }

.u-tag.--single .u-tag__item {
  justify-content: center;
  min-width: 4.75rem;
  height: 1.25rem;
  margin: 0; }

/* 「hover」対応しているかどうかを判別
/*----------------------------------------------*/
@media (any-hover: hover) {
  .l-nav__primary .menu-item a:hover::before {
    background-position: bottom left;
    background-size: 100% 1px;
    transition: background-size .6s ease-in-out; }

  .l-nav__primary-link:hover::before {
    background-position: bottom left;
    background-size: 100% 1px;
    transition: background-size .6s ease-in-out; }

  .l-nav__secondary-link:hover {
    opacity: 1; }
    .l-nav__secondary-link:hover::before {
      -webkit-animation: drew_line .5s ease-in-out forwards;
      animation: drew_line .5s ease-in-out forwards; }

  .l-nav__external-link {
    transition: opacity .3s ease-out; }
    .l-nav__external-link:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; }

  .l-nav__close {
    transition: opacity .3s ease-out; }
    .l-nav__close:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; }

  .l-nav__open:hover::before {
    -webkit-animation: drew_bg .6s ease-in-out forwards;
    animation: drew_bg .6s ease-in-out forwards; }
  .l-nav__open:hover::after {
    animation: drew_bg .6s reverse ease-in-out forwards; }

  .o-searchCategory__button .u-category__icon,
  .o-searchCategory__button .u-category__text {
    transition: opacity .3s ease-in-out; }
  .o-searchCategory__button:hover .u-category__icon,
  .o-searchCategory__button:hover .u-category__text {
    opacity: .5; }

  .o-searchFreeword__button {
    transition: opacity .3s ease-out; }
    .o-searchFreeword__button:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; }

  .o-seatchMap__link {
    transition: opacity .3s ease-out; }
    .o-seatchMap__link:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; }

  .u-category__child-link {
    transition: box-shadow .3s ease-in-out,background-color .3s ease-in-out; }
    .u-category__child-link:hover {
      background-color: #fff;
      box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.25); }
      .u-category__child-link:hover::after {
        margin-right: .875rem; }

  .u-category__child-link::after {
    transition: margin-right .3s ease-in-out; }

  .u-keyword__link {
    transition: opacity .3s ease-out; }
    .u-keyword__link:hover {
      opacity: .5;
      transition: opacity .3s ease-in-out; }

  .u-pagenation__page:not(:disabled) {
    cursor: pointer; }
    .u-pagenation__page:not(:disabled):hover {
      color: rgba(0, 0, 0, 0.5); }

  .u-pagenation__next, .u-pagenation__preview {
    cursor: pointer; }

  .u-pagenation__next:hover, .u-pagenation__preview:hover {
    color: rgba(0, 0, 0, 0.5); }

  .u-paragraph a:hover {
    text-decoration: none; } }
/* 23.4375em以上
/*----------------------------------------------*/
@media print, screen and (min-width: 23.4375em) {
  .u-pagenation__next,
  .u-pagenation__preview {
    width: 2.75rem;
    height: 2.75rem; }

  .u-pagenation__preview {
    margin-right: .375rem; }

  .u-pagenation__next {
    margin-left: .375rem; } }
/* 35em未満
/*----------------------------------------------*/
@media print, screen and (max-width: 34.99em) {
  .l-sectionHeader {
    width: calc(100% - 2.5rem); }

  .l-sectionHeader__title-en {
    margin-top: .75rem; }

  .u-category__tabpanel {
    flex-direction: column;
    padding: .9375rem; }

  .u-category__child {
    flex-direction: column; }

  .u-category__child-item {
    width: 100%; }

  .u-grid {
    width: calc(100% - 2.5rem); }

  .u-hide__sm {
    display: none; }

  .u-show__sm {
    display: inline; }

  .u-tag.--single .u-tag__item {
    height: 1.125rem;
    padding: .0625rem .5rem; } }
/* 35em以上
/*----------------------------------------------*/
@media screen and (min-width: 35em) {
  .l-nav__bnr a {
    height: 50px;
    line-height: 48px; }

  .l-nav__bnr a {
    height: 50px;
    line-height: 48px; }

  .l-nav__external.online {
    margin-bottom: 80px; } }
@media print, screen and (min-width: 35em) {
  .l-nav__column {
    padding: 4.375rem 0; }

  .l-nav__primary {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 4;
    grid-column: 3/7;
    border-right: 1px solid #707070; }

  .l-nav__secondary {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 8;
    -ms-grid-column-span: 6;
    grid-column: 8/14; }

  .l-nav__external {
    display: flex;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 8;
    -ms-grid-column-span: 6;
    grid-column: 8/14;
    align-items: flex-end;
    width: 100%; }

  .o-searchCategory .u-category__tabpanel {
    padding: 1.0625rem 1.25rem; }

  .o-searchCategory .u-category__child {
    display: flex;
    flex-wrap: wrap; }

  .o-searchCategory .u-category__child-item {
    width: 50%;
    padding: .4375rem; }

  .o-searchFreeword__query {
    width: calc(100% - 4.125rem); }

  .o-searchFreeword__button {
    width: 4.125rem;
    height: 3.75rem; }

  .o-search__title {
    margin: 0 0 3rem; }

  .o-search__title-sub {
    margin: 2.625rem 0 1.125rem; }

  .o-seatchMap {
    margin-top: 2rem; }

  .o-seatchMap__link {
    height: 4.375rem; }

  .u-anchor {
    height: 5.75rem; }

  .u-category__child-link {
    text-indent: -.02em;
    letter-spacing: .04em;
    min-height: 2.375rem;
    font-size: .875rem; }

  .u-hd__large {
    font-size: 1.5rem; }

  .u-hd__middle {
    font-size: 1.25rem; }

  .u-hide__md {
    display: none; }

  .u-pagenation {
    max-width: initial;
    max-width: auto;
    max-width: 100%; }

  .u-pagenation__page {
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 .25rem; }

  .u-pagenation__page.is-near {
    display: block; }

  .u-pagenation__page.is-remined {
    color: #000;
    pointer-events: auto; }

  .u-pagenation__page.is-remined::before {
    content: none; }

  .u-pagenation__next, .u-pagenation__preview {
    width: 1.75rem;
    height: 2.5rem; }

  .u-show__md {
    display: inline; }

  .u-tag:not(.--single) {
    margin: -.15625rem; }

  .u-tag__item {
    height: 1.375rem;
    margin: .15625rem;
    font-size: .75rem; } }
/* 35em以上60em未満
/*----------------------------------------------*/
@media print, screen and (min-width: 35em) and (max-width: 59.99em) {
  .l-nav__column {
    width: calc(100% - 4.875rem); }

  .l-nav__column {
    -ms-grid-columns: 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr;
    grid-template-columns: 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr 1.875rem 1fr; }

  .l-nav__open {
    width: 4.375rem;
    height: 4.375rem; }

  .l-nav__open .l-nav__button-text {
    top: 2.625rem; }

  .l-sectionHeader {
    width: calc(100% - 4.875rem); }

  .u-grid {
    width: calc(100% - 4.875rem); }

  .u-show__md-only {
    display: inline; } }
/* 60em以上
/*----------------------------------------------*/
@media print, screen and (min-width: 60em) {
  .l-nav__column {
    -ms-grid-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr;
    grid-template-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr; }

  .l-nav__column {
    padding: 11.25rem 0; }

  .l-nav__primary {
    -ms-grid-column: 3;
    -ms-grid-column-span: 6;
    grid-column: 3/9; }
    .l-nav__primary .menu-item {
      font-size: 1.375rem; }
      .l-nav__primary .menu-item + .menu-item {
        margin-top: 2.8125rem; }

  .l-nav__primary-item {
    font-size: 1.375rem; }

  .l-nav__primary-item ~ .l-nav__primary-item {
    margin-top: 2.8125rem; }

  .l-nav__secondary {
    -ms-grid-column: 11;
    -ms-grid-column-span: 6;
    grid-column: 11/17; }

  .l-nav__secondary-item ~ .l-nav__secondary-item {
    margin-top: 1.8125rem; }

  .l-nav__external {
    -ms-grid-column: 11;
    -ms-grid-column-span: 7;
    grid-column: 11/18; }

  .l-nav__close {
    width: 4.375rem;
    height: 5rem; }

  .l-nav__open {
    width: 4.375rem;
    height: 5rem; }

  .l-nav__button-text {
    top: 3rem; }

  .l-nav__open .l-nav__button-text {
    top: 3rem; }

  .l-nav__bnr {
    display: none; }

  .l-scroll-text {
    height: 4.375rem; }

  .l-section {
    margin-top: 5.875rem; }

  .l-sectionHeader {
    -ms-grid-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr;
    grid-template-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr; }

  .l-sectionHeader__column {
    -ms-grid-column: 3;
    -ms-grid-column-span: 21;
    grid-column: 3/24; }

  .l-sectionHeader__title {
    padding-top: 0;
    font-size: 1.75rem; }

  .l-sectionHeader__title-en {
    font-size: 0.75rem; }

  .l-sectionHeader__title-en::after {
    width: 9.5rem; }

  .l-sectionHeader__title-deco {
    width: 9.5rem;
    height: 1.04em; }

  .o-searchCategory {
    margin-top: 0; }

  .o-searchCategory__button {
    min-height: 9rem;
    font-size: 1rem; }

  .o-searchCategory__button .u-category__icon {
    width: 3.75rem;
    height: 3.75rem; }

  .o-search {
    display: flex;
    justify-content: space-between;
    margin-top: 1.875rem; }

  .o-search__grid {
    width: calc(50% - 1.25rem);
    margin-top: 0; }

  .o-searchKeywords {
    height: 9.375rem;
    overflow: hidden; }

  .u-anchor {
    height: 1rem; }

  .u-grid {
    -ms-grid-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr;
    grid-template-columns: 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr 2.5rem 1fr; }

  .u-grid__column {
    -ms-grid-column: 3;
    -ms-grid-column-span: 19;
    grid-column: 3/22; }

  .u-grid__column-width {
    -ms-grid-column: 3;
    -ms-grid-column-span: 21;
    grid-column: 3/24; }

  .u-hd__large {
    font-size: 1.75rem; }

  .u-hide__lg {
    display: none; }

  .u-pagenation {
    justify-content: flex-end; }

  .u-show__lg {
    display: inline; } }
@media screen and (min-width: 60em) {
  .l-nav__column {
    padding: 4rem 0; }

  .l-nav__e-btn {
    top: 4.375rem;
    right: 0;
    width: 4.375rem;
    cursor: pointer; }
    .l-nav__e-btn .l-nav__e-list {
      top: 50%;
      left: 0;
      bottom: auto;
      transform: translate(-100%, -50%);
      font-size: 15px; }
      .l-nav__e-btn .l-nav__e-list li a {
        padding: 10px;
        transition: .3s; }
        .l-nav__e-btn .l-nav__e-list li a:hover {
          background: #8E0404; } }
/* 35em以上80em未満
/*----------------------------------------------*/
@media print, screen and (min-width: 35em) and (max-width: 79.99em) {
  .o-searchCategory .u-category__child-item:last-child {
    width: 100%; } }
/* 80em以上
/*----------------------------------------------*/
@media print, screen and (min-width: 80em) {
  .o-search {
    padding: 0 2.5rem; } }
/* 60em以上90em未満
/*----------------------------------------------*/
@media print, screen and (min-width: 60em) and (max-width: 89.99em) {
  .l-nav__column {
    width: calc(100% - 8.75rem); }

  .l-sectionHeader {
    width: calc(100% - 8.75rem); }

  .u-grid {
    width: calc(100% - 8.75rem); }

  .u-show__lg-only {
    display: inline; } }
/* 90em以上
/*----------------------------------------------*/
@media screen and (min-width: 90em) {
  .l-nav__e-btn {
    width: 5rem; }
    .l-nav__e-btn .l-nav__e-btn-icon {
      width: 42%; } }
@media print, screen and (min-width: 90em) {
  .l-nav__column {
    width: calc(100% - 10rem);
    max-width: 80rem; }

  .l-nav__close {
    width: 5rem;
    height: 5rem; }

  .l-nav__open {
    width: 5rem;
    height: 5rem; }

  .l-scroll-text {
    height: 5rem; }

  .l-section {
    margin-top: 8rem; }

  .l-sectionHeader {
    width: calc(100% - 10rem);
    max-width: 80rem; }

  .u-grid {
    width: calc(100% - 10rem);
    max-width: 80rem; }

  .u-hide__xl {
    display: none; }

  .u-show__xl {
    display: inline; } }
