/* Sanitize
 * ========================================================================== */
/**
 * Add border box sizing in all browsers (opinionated).
 */
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@400;500;600;700;800&display=swap");

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

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */
}

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Use a 4-space tab width in all browsers (opinionated).
 * 4. Remove the grey highlight on links in iOS (opinionated).
 * 5. Prevent adjustments of font size after orientation changes in
 *		IE on Windows Phone and in iOS.
 * 6. Breaks words to prevent overflow in all browsers (opinionated).
 */
html {
  cursor: default;
  /* 1 */
  line-height: 1.5;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
  tab-size: 4;
  /* 3 */
  -webkit-tap-highlight-color: transparent;
  /* 4 */
  -ms-text-size-adjust: 100%;
  /* 5 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
  word-break: break-word;
  /* 6 */
}

/* Sections
 * ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
 * ========================================================================== */
/**
 * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
 */
dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
  margin: 0;
}

/**
 * Remove the margin on nested lists in Edge 18- and IE.
 */
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0;
}

/**
 * 1. Add the correct sizing in Firefox.
 * 2. Show the overflow in Edge 18- and IE.
 */
hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * Add the correct display in IE.
 */
main {
  display: block;
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none;
  padding: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
 * ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Add the correct text decoration in Edge 18-, IE, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/* Embedded content
 * ========================================================================== */
/*
 * Change the alignment on media elements in all browsers (opinionated).
 */
img {
  max-width: 100%;
  height: auto;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: top;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on iframes in all browsers (opinionated).
 */
iframe {
  border-style: none;
}

/**
 * Remove the border on images within links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg:not([fill]) {
  fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Tabular data
 * ========================================================================== */
/**
 * Collapse border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse;
}

/* Forms
 * ========================================================================== */
/**
 * Remove the margin on controls in Safari.
 */
button,
input,
select {
  margin: 0;
}

/**
 * 1. Show the overflow in IE.
 * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
 */
button {
  overflow: visible;
  /* 1 */
  text-transform: none;
  /* 2 */
}

/**
 * Correct the inability to style buttons in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * 1. Change the inconsistent appearance in all browsers (opinionated).
 * 2. Correct the padding in Firefox.
 */
fieldset {
  border: 1px solid #a0a0a0;
  /* 1 */
  padding: 0.35em 0.75em 0.625em;
  /* 2 */
}

/**
 * Show the overflow in Edge 18- and IE.
 */
input {
  overflow: visible;
}

/**
 * 1. Correct the text wrapping in Edge 18- and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 */
legend {
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  white-space: normal;
  /* 1 */
  color: inherit;
  /* 2 */
}

/**
 * 1. Add the correct display in Edge 18- and IE.
 * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the inheritance of text transform in Firefox.
 */
select {
  text-transform: none;
}

/**
 * 1. Remove the margin in Firefox and Safari.
 * 2. Remove the default vertical scrollbar in IE.
 * 3. Change the resize direction in all browsers (opinionated).
 */
textarea {
  margin: 0;
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
  /* 3 */
}

/**
 * Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  padding: 0;
}

/**
 * 1. Correct the odd appearance in Chrome, Edge, and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style upload buttons in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Remove the inner border and padding of focus outlines in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus outline styles unset by the previous rule in Firefox.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove the additional :invalid styles in Firefox.
 */
:-moz-ui-invalid {
  box-shadow: none;
}

/* Interactive
 * ========================================================================== */
/*
 * Add the correct display in Edge 18- and IE.
 */
details {
  display: block;
}

/*
 * Add the correct styles in Edge 18-, IE, and Safari.
 */
dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
 * ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* User interaction
 * ========================================================================== */
/*
 * 1. Remove the tapping delay in IE 10.
 * 2. Remove the tapping delay on clickable elements
			in all browsers (opinionated).
 */
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation;
  /* 2 */
}

/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/* Accessibility
 * ========================================================================== */
/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */
[aria-busy=true] {
  cursor: progress;
}

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */
[aria-controls] {
  cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */
[aria-disabled=true],
[disabled] {
  cursor: not-allowed;
}

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */
[aria-hidden=false][hidden] {
  display: initial;
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

/**
 * Add
 */
dl dd {
  margin-left: 0;
}

figure {
  margin: 0;
}

table {
  table-layout: fixed;
}

menu {
  padding: 0;
}

@font-face {
  font-family: "LouisGeorgeCafe";
  src: url("../font/Louis_George_Cafe.woff") format("woff"), url("../font/Louis_George_Cafe.woff2") format("woff2"), url("../font/Louis_George_Cafe.ttf") format("truetype"), url("../font/Louis_George_Cafe.eot") format("embedded-opentype");
}

@font-face {
  font-family: "LouisGeorgeCafe_Light";
  src: url("../font/Louis_George_Cafe_Light.woff") format("woff"), url("../font/Louis_George_Cafe_Light.woff2") format("woff2"), url("../font/Louis_George_Cafe_Light.ttf") format("truetype"), url("../font/Louis_George_Cafe_Light.eot") format("embedded-opentype");
}

@font-face {
  font-family: "NotoSansJP-Light";
  src: url("../font/NotoSansJP-Light.woff") format("woff");
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Shippori Mincho B1", serif;
  line-height: 1.5;
  color: #000;
  min-width: 1150px;
  font-size: 1.6rem;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  position: relative;
  z-index: 2;
}

.l-contents {
  display: block;
  overflow: hidden;
}

img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

label {
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  body {
    min-width: 1%;
    overflow-x: hidden;
    padding-top: 0;
    font-size: 4vw;
  }
}

/* link
--------------------------------------------------*/
a {
  color: inherit;
  /*&:hover,
	&:focus {
		text-decoration: underline;
	}*/
}

a:link,
a:active,
a:visited {
  text-decoration: none;
}

@media screen and (min-width: 768px) {

  a,
  a img {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }

  a:hover,
  a img:hover {
    opacity: 0.6;
  }

  a,
  a * {
    outline: 1px solid transparent;
  }
}

/* --------------------------------------------------
animation
-------------------------------------------------- */
.slide-animation{
  animation: fadezoom 8s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}

/* --------------------------------------------------
  l-header
-------------------------------------------------- */
.l-header {
  position: fixed;
  top: 20px;
  left: 0;
  width: 100%;
  height: 30px;
  z-index: 10;
  pointer-events: none;
}

.l-header__wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  height: 100%;
}

.u-preload .l-header__toggleBtn {
  opacity: 0;
}

.l-header__toggleBtn {
  opacity: 1;
  -webkit-transition: opacity 1s ease 1s;
  transition: opacity 1s ease 1s;
  display: block;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: 3;
  margin-right: 30px;
  width: 40px;
  height: 30px;
  cursor: pointer;
  position: relative;
  pointer-events: auto;
}

.l-header__toggleBtn span {
  position: absolute;
  width: 40px;
  height: 1px;
  background: #fff;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  right: 0;
}

.bg-is-black .l-header__toggleBtn span {
  background: #000;
}

.l-header__toggleBtn span:nth-child(1) {
  top: 10px;
  animation: menu-bar01 .5s forwards;
}

@keyframes menu-bar01 {
  0% {
    top: 14px;
    transform: rotate(45deg);
  }
  50% {
    top: 15px;
    transform: rotate(0);
  }
  100% {
    top: 10px;
    transform: rotate(0);
  }
}

.l-header__toggleBtn span:nth-child(2) {
  top: 20px;
  animation: menu-bar02 .5s forwards;
}

@keyframes menu-bar02 {
  0% {
    top: 14px;
    transform: rotate(-45deg);
  }
  50% {
    top: 15px;
    transform: rotate(0);
  }
  100% {
    top: 20px;
    transform: rotate(0);
  }
}

.l-header__toggleBtn.js-action span {
  background: #fff;
}

.l-header__toggleBtn.js-action span:nth-of-type(1) {
  animation: active-menu-bar01 .5s forwards;
}

@keyframes active-menu-bar01 {
  0% {
    top: 10px;
    transform: rotate(0);
  }
  50% {
    top: 15px;
    transform: rotate(0);
  }
  100% {
    top: 14px;
    transform: rotate(45deg);
  }
}

.l-header__toggleBtn.js-action span:nth-of-type(2) {
  animation: active-menu-bar03 .5s forwards;
}

@keyframes active-menu-bar03 {
  0% {
    top: 20px;
    transform: rotate(0);
  }
  50% {
    top: 15px;
    transform: rotate(0);
  }
  100% {
    top: 14px;
    transform: rotate(-45deg);
  }
}

body.js-fixed {
  position: fixed;
  width: 100%;
  min-width: auto;
  min-width: inherit;
}

.l-headerMenu {
  visibility: hidden;
  opacity: 0;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100vw;
  height: 100vh;
  min-height: 500px;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  background: rgba(0,0,0,.9);
}

.l-headerMenu.js-action {
  visibility: visible;
  opacity: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  pointer-events: auto;
}

.l-headerMenu__wrap {
  position: relative;
  width: 90vw;
  height: 100vh;
  margin: 0 auto;
}

.l-headerMenu__logo {
  position: absolute;
  top: 86px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 90px;
}

.l-headerMenu__linkWrap {
  position: absolute;
  top: 53.5%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  width: 100%;
}

.l-headerMenu__link,
.l-headerMenu__cld__link {
  line-height: 1;
  font-weight: 500;
  font-size: 2.2rem;
  letter-spacing: 0.11em;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  color: #fff;
  flex: none;
}

.l-headerMenu__link a,
.l-headerMenu__cld__link a {
  transition: .3s;
}

.l-headerMenu__linkWrap li:nth-child(6) .l-headerMenu__cld__link {
  letter-spacing: 0;
}

.l-headerMenu__cld__list {
  display: flex;
  justify-content: flex-end;
  min-width: 119px;
  padding: 0 8px 0 0;
}

.l-headerMenu__cld__link {
  font-size: 1.8rem;
  line-height: 2.222;
  letter-spacing: -.03em;
  margin-top: 22px;
  color: #b3b3b3;
}

@media screen and (min-width: 768px) {
  .l-headerMenu__link:nth-child(1) {
    margin-right: 33px;
  }
  
  .l-headerMenu__link a:hover {
    color: #b3b3b3;
    opacity: 1;
  }
  
  .l-headerMenu__cld__link a:hover {
    color: #fff;
    opacity: 1;
  }
}

@media screen and (max-width: 767px) {
  .l-header {
    top: 30px;
  }
  
  .l-header__wrap {
    width: 90.933333333%;
  }
  
  .l-header__toggleBtn {
    right: 0;
    margin: 0;
    -webkit-transform: scale(0.82);
    transform: scale(0.82);
    -webkit-transform-origin: top right;
    transform-origin: top right;
  }

  .l-headerMenu__logo {
    top: 8vw;
    width: 20.4vw;
  }

  .l-headerMenu__linkWrap {
    top: 40%;
  }

  .l-headerMenu__link {
    font-size: 4.8vw;
    margin-left: 9.333333333vw;
  }

  .l-headerMenu__link:first-child {
    margin-left: 0;
  }

  .l-headerMenu__snsWrap {
    position: absolute;
    top: 65%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 19.0666666667vw;
    height: 5.3333333333vw;
    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;
  }

  .l-headerMenu__sns a {
    display: flex;
  }

  .l-headerMenu__sns.-insta {
    width: 5.3333333333vw;
  }

  .l-headerMenu__sns.-tw {
    width: 5.7333333333vw;
  }
  
  .l-headerMenu__link,
  .l-headerMenu__cld__link {
    font-size: 4.533vw;
  }
  
  .l-headerMenu__cld__list {
    min-width: 18.4vw;
    padding: 0 1.067vw 0 4.267vw;
  }
  
  .l-headerMenu__cld__link {
    font-size: 3.733vw;
    line-height: 1.785;
    margin-top: 4.533vw;
  }
}

/* --------------------------------------------------
  footer
-------------------------------------------------- */
.l-footer {
  height: 400px;
  pointer-events: none;
}

.l-footer_wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: -1;
  padding: 32px 0 30px;
  width: 100%;
  height: 400px;
  background: #1a1a1a;
  pointer-events: auto;
}

.foot-is-hide .l-footer_wrap {
  display: none;
}

.l-footer .l-footer__flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
  width: 1000px;
  pointer-events: auto;
}

.l-footer .l-footer__flex + .l-footer__flex {
  align-items: flex-end;
}

.l-footer .l-footer__logo {
  margin-top: 14px;
  width: 96px;
}

.l-footer .l-footerNav__list,
.l-footer .cld__list {
  display: flex;
  flex-direction: row-reverse;
  margin: 0;
}

.l-footer .cld__list {
  padding: 0 8px 0 34px;
  min-width: 92px;
}

.l-footer .l-footerNav__link,
.l-footer .cld__link {
  line-height: 1;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

.l-footer .cld__link {
  margin-top: 1em;
  line-height: 1.571;
}

.l-footer .l-footerNav__link a,
.l-footer .cld__link a {
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: .06em;
  color: #fff;
  transition: .3s;
}

.l-footer .cld__link a {
  letter-spacing: 0;
  color : #B3B3B3;
}

.l-footer .l-footerTel {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-top: auto;
  width: 70%;
}

.l-footer .l-footerTel p {
  line-height: 1;
  color: #F7F5ED;
  margin: 0;
}

.l-footer .l-footerTel .l-footerTel__txt1 {
  font-size: 1.4rem;
  margin-bottom: 12px;
  width: 100%;
}

.l-footer .l-footerTel .l-footerTel__txt2 {
  font-size: 1.2rem;
}

.l-footer .l-footerTel .l-footerTel__txt2 + .l-footerTel__txt2,
.l-footer .l-footerTel .l-footerTel__txt3 + .l-footerTel__txt2 {
  margin-left: 2em;
}

.l-footer .l-footerTel .l-footerTel__txt3 {
  font-size: 1.4rem;
  letter-spacing: -.02em;
  margin-left: 17px;
}

.l-footer .l-footer__copyArea {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 30%;
}

.l-footer .l-footer__snsWrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.l-footer .l-footer__sns {
  line-height: 1;
}

.l-footer .l-footer__sns a {
  display: flex;
}

.l-footer .l-footer__sns a img {
  width: 100%;
}

.l-footer .l-footer__sns.-insta {
  width: 15px;
}

.l-footer .l-footer__sns.-tw {
  margin-left: 24px;
  width: 16px;
}

.l-footer .l-footer__copy {
  font-size: 1.1rem;
  line-height: 1.3636;
  color: #fff;
  text-align: right;
  margin: 12px 0 0;
}

.l-footer .l-footer__copy small {
  font-size: inherit;
}

.l-footer .l-footer__copy a {
  color: #808080;
  text-decoration: underline;
  text-decoration-color: #808080;
  display: inline-block;
  transition: .3s;
}

@media screen and (min-width: 768px) {
  .l-footer .l-footerTel .l-footerTel__txt3 a {
    pointer-events: none;
  }

  .l-footer .l-footer__copy a:hover {
    color: #fff;
    text-decoration-color: #fff;
    opacity: 1;
  }
  
  .l-footer .l-footerNav__link a:hover {
    color: #b3b3b3;
    opacity: 1;
  }
  
  .l-footer .cld__link a:hover {
    color: #fff;
    opacity: 1;
  }
}

@media screen and (max-width: 767px) {
  .l-footer {
    height: calc(84vw + 55px);
  }
  
  .l-footer .l-footer_wrap {
    padding: 6.4vw 0 15.333333333vw;
    height: 84vw;
  }
  
  .l-footer .l-footer__flex,
  .l-footer__snsWrap {
    display: block;
    margin: 0 auto;
    width: 89.333333333%;
  }
  
  .l-footer__snsWrap {
    margin-top: auto;
  }

  .l-footer .l-footer__logo {
    margin: 0;
    width: 22.686567164%;
  }
  
  .l-footer .l-footerTel {
    justify-content: flex-end;
    margin-top: 5.6vw;
    width: 100%;
  }

  .l-footer .l-footerTel p {
    font-size: 3.733vw;
    text-align: right;
  }

  .l-footer .l-footerTel .l-footerTel__txt1 {
    margin-bottom: 2.667vw;
  }

  .l-footer .l-footerTel .l-footerTel__txt2 {
    font-size: 3.733vw;
  }

  .l-footer .l-footerTel .l-footerTel__txt2 + .l-footerTel__txt2,
  .l-footer .l-footerTel .l-footerTel__txt3 + .l-footerTel__txt2 {
    margin-left: 1em;
  }

  .l-footer .l-footerTel .l-footerTel__txt3 {
    font-size: 3.733vw;
    margin-left: .3em;
  }

  .l-footer .l-footerTel .l-footerTel__txt3:last-of-type {
    margin-top: 1.533vw;
  }

  .l-footer .l-footer__copyArea {
    display: block;
    margin-top: 3.6vw;
    width: 100%;
  }

  .l-footer .l-footer__sns.-insta {
    width: 6vw;
  }

  .l-footer .l-footer__sns.-tw {
    margin-left: 6vw;
    width: 6.533333333vw;
  }

  .l-footer .l-footer__copy {
    font-size: 2.666666666vw;
    line-height: 1.3;
    margin: 0;
  }
}

/* --------------------------------------------------
	common title
-------------------------------------------------- */
.c-ttlEnJn {
  font-size: 0;
  line-height: 1;
  position: relative;
}

.c-ttlEnJn__en {
  position: absolute;
  top: 0;
  left: 51.3%;
  -webkit-transform: translateX(-50%) rotate(90deg);
  transform: translateX(-50%) rotate(90deg);
  color: #a07d39;
  font-size: 1.3rem;
  letter-spacing: 0.12em;
  line-height: 1;
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
  font-family: "LouisGeorgeCafe";
  margin: 0;
}

.c-ttlEnJn__jn {
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .c-ttlEnJn__en {
    left: 54.3%;
    font-size: 3.2vw;
  }
}

/* --------------------------------------------------
	common btn
-------------------------------------------------- */
.js-tab_box {
  margin: 35px auto 0;
  width: 100%;
  max-width: 900px;
}

.js-tab_box.dinnerTab {
  margin-top: 92px;
}

.js-tab_box .btn_area {
  display: flex;
  justify-content: space-between;
}

.js-tab_box .tab_btn {
  font-family: "Shippori Mincho B1", serif;
  position: relative;
  width: 33.111111111%;
  height: 76px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 600;
  font-size: 2.2rem;
  letter-spacing: .07em;
  cursor: pointer;
  border: none;
  transition: .5s;
  background: #a07d39;
}

.js-tab_box .tab_btn::before {
  content: "OPEN";
  position: absolute;
  top: 12px;
  right: 12px;
  width: 38px;
  height: 10px;
  text-align: center;
  white-space: nowrap;
  color: #fff;
  letter-spacing: .12em;
  font-size: 1.1rem;
  line-height: 1;
  font-family: "LouisGeorgeCafe_Light";
}

.js-tab_box.lunchTab .tab_btn.open {
  background:#1a1a1a;
}

.js-tab_box.dinnerTab .tab_btn.open {
  background: #4d4d4d;
}

.js-tab_box .tab_btn .tab_btn_icon {
  position: absolute;
  top: 50%;
  right: 19px;
  transform: translateY(-50%);
  width: 25px;
  height: 25px;
}

.js-tab_box .tab_btn .tab_btn_icon::before,
.js-tab_box .tab_btn .tab_btn_icon::after {
  content: "";
  position: absolute;
  background: #fff;
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: transform 0.5s ease, opacity 0.5s ease;
  transition: transform 0.5s ease, opacity 0.5s ease, -webkit-transform 0.5s ease;
}

.js-tab_box .tab_btn .tab_btn_icon::before {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  height: 1px;
}

.js-tab_box .tab_btn .tab_btn_icon::after {
  top: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  width: 1px;
  height: 100%;
}

.js-tab_box .tab_btn.open::before {
  content: "CLOSE";
  width: 41px;
  right: 10px;
}

.js-tab_box .tab_btn.open .tab_btn_icon::before {
  opacity: 0;
}

.js-tab_box .tab_btn.open .tab_btn_icon::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.js-tab_box .panel_area {
  background: #fff;
}

.js-tab_box .tab_panel {
  display:none;
}

@media screen and (min-width: 768px) {
  .js-tab_box.lunchTab .tab_btn:hover {
    background-color: #1a1a1a;
  }

  .js-tab_box.dinnerTab .tab_btn:hover {
    background: #4d4d4d;
  }
}

@media screen and (max-width: 767px) {
  .js-tab_box {
    margin-top: 12.4vw;
  }

  .js-tab_box.dinnerTab {
    margin-top: 11.733333333vw;
  }

  .js-tab_box .tab_btn {
    text-align: left;
    width: 32.931034482%;
    height: 15.066666666vw;
    justify-content: flex-start;
    font-size: 3.733333333vw;
    line-height: calc(35 / 28);
    letter-spacing: 0;
    padding: 0 0 0 1.733333333vw;
  }

  .js-tab_box .tab_btn::before {
    top: 3.466666666vw;
    right: .933333333vw;
    width: auto;
    height: auto;
    font-size: 2.133333333vw;
  }

  .js-tab_box .tab_btn .tab_btn_icon {
    right: 1.733333333vw;
    width: 4.8vw;
    height: 4.8vw;
    transform: translateY(-30%);
  }

  .js-tab_box .tab_btn.open::before {
    width: auto;
    right: .4vw;
  }
}

@media screen and (max-width: 375px) {
  .js-tab_box .tab_btn::before {
    top: 3vw;
  }
}

/* --------------------------------------------------
	anime
-------------------------------------------------- */
.c-fade__bottom {
  -webkit-transform: translate(0, 50px);
  transform: translate(0, 50px);
  opacity: 0;
}

.c-fade__bottom.js-animeOn {
  -webkit-transform: translate(0);
  transform: translate(0);
  opacity: 1;
  -webkit-transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.c-fade__bottom.js-animeOn.-delay1 {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.c-fade__bottom.js-animeOn.-delay2 {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}

.c-fade__bottom.js-animeOn.-delay3 {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}

/* --------------------------------------------------
  display
-------------------------------------------------- */
@media screen and (max-width: 767px) {
  .u-pc {
    display: none!important;
  }
}

@media screen and (min-width: 768px) {
  .u-sp {
    display: none!important;
  }
}

/* --------------------------------------------------
  cleafix
-------------------------------------------------- */
.u-clearfix::after {
  display: block;
  clear: both;
  content: "";
}

/* --------------------------------------------------
  align
-------------------------------------------------- */
.u-alignL {
  text-align: left;
}

.u-alignC {
  text-align: center;
}

.u-alignR {
  text-align: right;
}

/* --------------------------------------------------
  preload
-------------------------------------------------- */
.u-preload * {
  -webkit-transition: none !important;
  transition: none !important;
}

/* --------------------------------------------------
  wrap
-------------------------------------------------- */
.u-wrap {
  position: relative;
  width: 1050px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .u-wrap {
    width: 90vw;
  }
}

/* --------------------------------------------------
  font,text
-------------------------------------------------- */
.u-underline {
  text-decoration: underline !important;
}

.u-bold {
  font-weight: bold;
}

.u-txt__size73 {
  font-size: 73%;
}

/* --------------------------------------------------
  other
-------------------------------------------------- */
.u-bg__cream {
  background: #f7f5ed;
}

.u-bg__cream_bf {
  position: relative;
  z-index: 2;
}

.u-bg__cream_bf::before {
  content:"";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 147px);
  background: #f7f5ed;
}

@media screen and (max-width: 767px) {
  .u-bg__cream_bf::before {
    height: calc(100% - 14.933vw);
  }
}

/* --------------------------------------------------
  fixedArea
-------------------------------------------------- */
.fixedArea {
  overflow: hidden;
}

.u-preload .fixedArea__wrap {
  opacity: 0;
}

.fixedArea__wrap {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 11;
  opacity: 1;
  -webkit-transition: opacity 1s ease 1s;
  transition: opacity 1s ease 1s;
}

.fixedArea__sns .change_af,
.icon-is-black .fixedArea__sns .change_bf,
.js-fixed .fixedArea .fixedArea__sns .change_af {
  display: none;
}

.js-fixed .fixedArea .fixedArea__sns .change_bf,
.icon-is-black .fixedArea__sns .change_af {
  display: inline;
}

@media screen and (min-width: 768px) {
  .fixedArea.-sp {
    display: none;
  }

  .fixedArea__wrap {
    width: 30px;
    padding-bottom: 11px;
  }

  .fixedArea__link1 {
    line-height: 1;
    position: relative;
    height: 130px;
  }

  .fixedArea__link1 .fixedArea__link1__btn {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    padding: 9px 7px 0;
    color: #fff;
    line-height: 1;
    font-family: inherit;
    font-size: 1.6rem;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
    transition: .3s;
    cursor: pointer;
    border: none;
    background: #a07d39;
  }

  .fixedArea__link1.-yaizu .fixedArea__link1__btn {
    letter-spacing: -.041em;
  }

  .fixedArea__link1.-shimizu .fixedArea__link1__btn {
    letter-spacing: -.05em;
  }

  .fixedArea__link1.-hitoyadochou .fixedArea__link1__btn {
    letter-spacing: -.1em;
    padding-top: 4px;
  }

  .fixedArea__link1 .fixedArea__link1__btn::after {
    content: "";
    position: absolute;
    bottom: 9px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 12px;
    height: 16px;
    background: url(../img/icon_tel.svg) no-repeat center center/contain;
  }

  .fixedArea__link1.-hitoyadochou .fixedArea__link1__btn::after {
    bottom: 5px;
  }

  .fixedArea__link1 .fixedArea__link1__btn:hover {
    background: #B89D6A;
    opacity: 1;
  }

  .fixedArea__link1 + .fixedArea__link1 {
    margin-top: 4px;
  }

  .fixedArea__link2 {
    height: 110px;
    margin-top: 2px;
  }

  .fixedArea__link2 a {
    background: #000;
    display: block;
    width: 100%;
    padding: 12px 7px;
    color: #fff;
    line-height: 1;
    font-size: 1.6rem;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.01em;
    transition: .3s;
  }

  .fixedArea__link2 a:hover {
    color: #000;
    background: #fff;
    opacity: 1;
  }

  .fixedArea__sns.-insta {
    width: 15px;
    margin: 11px auto 0;
  }

  .fixedArea__sns.-tw {
    width: 16px;
    margin: 7px auto 0;
  }

  .ie11 .fixedArea__sns {
    overflow: hidden;
  }
  
  .fixedArea__link1__popUp {
    font-size: 1.4rem;
    line-height: calc(18 / 14);
    letter-spacing: -.08em;
    color: #fff;
    white-space: nowrap;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    position: absolute;
    top: 0;
    left: -42px;
    margin: 0;
    padding: 5px 3px 0 0;
    width: 42px;
    height: 130px;
    background: #B89D6A;
    opacity: 0;
    transition: .3s;
    pointer-events: none;
  }

  .fixedArea__link1__popUp .spacing_minus {
    letter-spacing: -.4em;
  }
  
  .fixedArea__link1__popUp .spacing_minus ~ .spacing_minus {
    letter-spacing: -.48em;
  }
  
  .fixedArea__link1 .fixedArea__link1__btn:hover + .fixedArea__link1__popUp  {
    opacity: 1;
  }

  .l-headerMenu .mv__title {
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.272;
    color: #fff;
    text-align: right;
    position: fixed;
    top: 0;
    right: 0;
    margin: 29px 88px 0 0;
  }
}

@media screen and (max-width: 767px) {
  .fixedArea.-pc {
    display: none;
  }

  .fixedArea__wrap {
    width: 100%;
    height: 11.333333333vw;
    display: flex;
    justify-content: space-between;
    background: #fff;
    transition: .3s;
    transform: translateY(100%);
  }

  .fixedArea__wrap.show {
    transform: translateY(0);
  }

  .fixedArea__link1 {
    /*width: 24.8%;*//* 4列用 */
    width: calc(248 / 750 * 100%);/* 3列用 */
  }

  .fixedArea__link1 a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
    color: #fff;
    letter-spacing: normal;
    line-height: calc(30 / 28);
    font-size: 3.733333333vw;
    background: #a07d39;
  }

  .fixedArea__link1 a .txt {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: -.05em;
    text-align: right;
  }

  .fixedArea__link1 a .icon {
    margin-left: calc(4 / 750 * 100vw);
    width: 4.533333333vw;
  }

  .fixedArea__link1:last-child a {
    background: #1a1a1a;
  }
}

/* --------------------------------------------------
  mv
-------------------------------------------------- */
.mv {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  min-height: 610px;
  background: #fff;
}

.mv__slide,
.slick-list,
.slick-track,
.slick-track div {
  margin: 0!important;
  height: 100%;
}

.mv__slideitem.-slide1 {
  background: url(../img/img_mv1_pc@2x.jpg) no-repeat center top/cover;
}

.mv__slideitem.-slide2 {
  background: url(../img/img_mv2_pc@2x.jpg) no-repeat center top/cover;
}

.mv__slideitem.-slide3 {
  background: url(../img/img_mv3_pc@2x.jpg) no-repeat center top/cover;
}

.u-preload .mv__wrap {
  opacity: 0;
}

.mv .slick-dots {
  text-align: left;
  margin: 0;
  bottom: 13px;
  left: 100px;
}

.mv .slick-dots li {
  width: 15px;
  height: 1px;
  margin: 0 7px 0 0;
}

.mv .slick-dots li button {
  width: 15px;
  height: 1px;
  padding: 0;
}

.mv .slick-dots li button::before {
  font-size: 0;
  line-height: 1px;
  content:'';
  text-align: center;
  width: 15px;
  height: 1px;
  background: #fff;
  opacity: 1;
}

.mv .slick-dots li.slick-active button::before {
  opacity: .5;
}

.mv .mv__title {
  font-size: 1.1rem;
  line-height: 1.272;
  color: #fff;
  text-align: right;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  margin: 29px 88px 0 0;
}

.mv__wrap {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 1150px;
  height: 100vh;
  min-height: 610px;
  opacity: 1;
  -webkit-transition: opacity 1s ease 0.5s;
  transition: opacity 1s ease 0.5s;
}

.mv__logo {
  position: absolute;
  top: 86px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 90px;
}

.mv__ttl {
  position: absolute;
  top: 51%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 3.4rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.01em;
  width: 550px;
  height: 88px;
  font-weight: normal;
  margin: 0;
}

.mv__scroll {
  position: absolute;
  bottom: -11px;
  left: 46.5%;
  -webkit-transform: translateX(-50%) rotate(90deg);
  transform: translateX(-50%) rotate(90deg);
  -webkit-transform-origin: top right;
  transform-origin: top right;
  width: 106px;
  height: 15px;
  line-height: 1;
}

.mv__scroll a {
  position: relative;
  width: 100%;
  height: 100%;
  line-height: 1;
  font-family: "LouisGeorgeCafe";
  color: #fff;
  font-size: 1rem;
  letter-spacing: 0.26em;
}

.mv__scroll a::after {
  content: "";
  position: absolute;
  top: 7px;
  width: 47px;
  height: 1px;
  background: #fff;
  -webkit-animation: pathmove 1.4s ease-in-out infinite;
  animation: pathmove 1.4s ease-in-out infinite;
  opacity: 0;
}

@-webkit-keyframes pathmove {
  0% {
    width: 0;
    left: 56px;
    opacity: 0;
  }

  30% {
    width: 47px;
    opacity: 1;
  }

  100% {
    width: 0;
    left: 106px;
    opacity: 0;
  }
}

@keyframes pathmove {
  0% {
    width: 0;
    left: 56px;
    opacity: 0;
  }

  30% {
    width: 47px;
    opacity: 1;
  }

  100% {
    width: 0;
    left: 106px;
    opacity: 0;
  }
}

@media screen and (max-width: 767px) {
  .mv {
    min-height: 630px;
  }

  .mv__slideitem.-slide1 {
    background: url(../img/img_mv1_sp@2x.jpg) no-repeat center top/cover;
  }

  .mv__slideitem.-slide2 {
    background: url(../img/img_mv2_sp@2x.jpg) no-repeat center top/cover;
  }

  .mv__slideitem.-slide3 {
    background: url(../img/img_mv3_sp@2x.jpg) no-repeat center top/cover;
  }

  .mv .mv__title {
    font-size: 1rem;
    text-align: right;
    margin: 30px 18.75vw 0 0;
  }
  
  .mv__wrap {
    width: 90%;
    min-height: 630px;
    pointer-events: none;
  }

  .mv__ttl {
    width: 150px;
    height: 380px;
    top: 58%;
    font-size: 3rem;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-align: left;
    letter-spacing: 0.2em;
  }
  
  .mv__spBox {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  
  .mv__spBox__title {
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 1.667;
    color: #fff;
    text-align: center;
    margin: 0 0 1.6vw;
  }
}

@media screen and (max-width: 439px) {
  .mv__logo {
    top: 8vw;
    width: 20.4vw;
  }

  .mv__ttl {
    top: 54.6666666667vw;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    font-size: 6.1333333333vw;
    width: 27.4666666667vw;
    height: 77.3333333333vw;
  }
}

/* --------------------------------------------------
  sec1
-------------------------------------------------- */
.sec1 {
  position: relative;
  z-index: 2;
  width: 1300px;
  margin: 0 auto;
}

.sec1::before {
  content: "";
  position: absolute;
  top: 299px;
  left: -35px;
  z-index: 0;
  width: 615px;
  height: 444px;
  background: url(../img/ill_sec1@2x.png) no-repeat center center/contain;
}

.sec1 > * {
  position: relative;
  z-index: 1;
}

.sec1 .simpleParallax {
  position: relative;
}

.sec1 .simpleParallax img {
  width: 100%;
}

.sec1__ttl {
  font-size: 3.4rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-weight: normal;
  margin: 0;
}

.sec1__txt {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.77;
  margin: 25px 0 0;
}

.sec1__txt + .sec1__txt {
  margin-top: 34px;
}

.sec1Box1 {
  height: 36.428571428vw;
  min-height: 510px;
}

.sec1Box1 .sec1Box1__txtArea {
  position: relative;
  padding-top: 226px;
  width: 1000px;
  margin: 0 auto;
}

.sec1Box1 .sec1Box1__txtArea::before {
  content: "About MINAMI";
  position: absolute;
  top: 48px;
  left: -3px;
  color: #a07d39;
  font-size: 1.3rem;
  letter-spacing: 0.12em;
  line-height: 1;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
  font-family: "LouisGeorgeCafe";
}

.sec1Box1__img1 {
  position: absolute;
  top: 60px;
  bottom:0;
  right: -11.309523809vw;
  width: 46.428571428vw;
  min-width: 650px;
}

.sec1Box1__img2 {
  position: absolute;
  top: 453px;
  right: -11.309523809vw;
  width: 22.857142857vw;
  min-width: 320px;
}

.sec1Box2 {
  margin-top: 5.857142857vw;
}

.sec1Box2 .sec1Box2__txtArea {
  padding-left: 484px;
  width: 1000px;
  margin: 0 auto;
}

.sec1Box2__img {
  position: absolute;
  top: 32px;
  left: -11.309523809vw;
  width: 28.571428571vw;
  min-width: 400px;
}

@media screen and (max-width: 1400px) {
  .sec1Box2 {
    margin-top: 83px;
  }
}

@media screen and (max-width: 767px) {
  .sec1 {
    width: 100%;
  }

  .sec1::before {
    top: 69vw;
    left: -5.5vw;
    width: 74vw;
    height: 53.3333333333vw;
  }

  .sec1__ttl {
    font-size: 6.6666666667vw;
    line-height: 1.4;
  }

  .sec1__txt {
    font-size: 4vw;
    line-height: 1.46;
    margin: 4.5vw 0 0;
  }

  .sec1__txt + .sec1__txt {
    margin-top: 7vw;
  }

  .sec1Box1 {
    height: auto;
    min-height: auto;
    padding-top: 7vw;
  }

  .sec1Box1 .sec1Box1__txtArea {
    padding-top: 0;
    width: 90vw;
    padding: 6vw 0 0;
  }

  .sec1Box1 .sec1Box1__txtArea::before {
    top: -27vw;
    left: 0;
    font-size: 3.2vw;
  }

  .sec1Box1__img1 {
    position: static;
    top: auto;
    right: auto;
    width: 95vw;
    min-width: auto;
    margin-left: auto;
  }

  .sec1Box1__img2 {
    position: static;
    top: auto;
    right: auto;
    width: 42.6666666667vw;
    min-width: auto;
    margin: -16vw 5vw 0 auto;
  }

  .sec1Box2 {
    margin-top: 5vw;
  }

  .sec1Box2 .sec1Box2__txtArea {
    padding: 7vw 0 0;
    width: 90vw;
  }

  .sec1Box2__img {
    position: static;
    top: auto;
    left: auto;
    width: 60vw;
    min-width: auto;
  }
}

/* --------------------------------------------------
  sec2
-------------------------------------------------- */
.sec2 {
  position: relative;
  z-index: 1;
  margin-top: 5.5vw;
  overflow: visible;
}

.sec2__ttl {
  padding-top: 74px;
}

.sec2__ttl .c-ttlEnJn__jn {
  width: 75px;
}

.lunchArea {
  position: relative;
  z-index: 1;
  width: 1150px;
  margin: 0 auto;
  background: #fff;
  padding: 77px 120px 87px;
}

.lunchArea::before,
.lunchArea::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
}

.lunchArea::before {
  top: 56px;
  left: 65px;
  width: 193px;
  height: 185px;
  background: url(../img/bg_sec2_1_pc@2x.png) no-repeat center center/contain;
}

.lunchArea::after {
  top: 693px;
  right: 36px;
  width: 174px;
  height: 185px;
  background: url(../img/bg_sec2_2_pc@2x.png) no-repeat center center/contain;
}

.lunchArea__ttl {
  width: 73px;
  margin: 75px auto 0;
}

.lunchBox {
  margin-top: 75px;
}

.lunchBox__list {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lunchBox__item {
  position: relative;
  width: 440px;
}

.lunchBox__circle {
  position: absolute;
  top: -58px;
  left: -44px;
  z-index: 1;
  width: 128px;
}

.lunchBox__item:nth-child(2) .lunchBox__circle {
  left: auto;
  right: -41px;
}

.lunchBox__namePrice {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 9px;
}

.lunchBox__namePrice__name {
  font-weight: 600;
  font-size: 2.4rem;
  line-height: calc(34 / 24);
  letter-spacing: .04em;
  margin: 0;
}

.lunchBox__namePrice__price {
  font-size: 2.2rem;
  line-height: 1;
  position: relative;
  margin: 0;
}

.lunchBox__namePrice__price::after {
  content:"\5186";
  font-size: 1.6rem;
  line-height: calc(22 / 16);
  margin-left: .2em;
}

.lunchBox__txt {
  font-size: 1.4rem;
  line-height: calc(20 / 14);
  margin: 6px 0 0;
}

.lunchBox__txtSml {
  font-family: "NotoSansJP-Light";
  font-size: 1.2rem;
  line-height: calc(20 / 12);
  display: block;
  margin: 0;
}

.lunchBox__note {
  font-size: 1.2rem;
  line-height: calc(22 / 12);
  text-align: right;
  margin-top: 6px;
}

.lunchArea .js-tab_box .tab_panel {
  padding: 79px 0 40px;
}

.lunchArea .js-tab_box .tab_panel .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  list-style: none;
}

.lunchArea .js-tab_box .tab_panel .list::after {
  content:"";
  width: 31.888888888%;
}

.lunchArea .js-tab_box .tab_panel .list li {
  position: relative;
  width: 31.888888888%;
}

.lunchArea .js-tab_box .tab_panel .list li:nth-child(n+4) {
  margin-top: 74px;
}

.lunchArea .js-tab_box .tab_panel .list .icon {
  position: absolute;
  top: -34px;
  right: -15px;
  z-index: 1;
  width: 78px;
}

.lunchArea .js-tab_box .tab_panel .list .img + .namePrice {
  border-top: none;
}

.lunchArea .js-tab_box .tab_panel .list .namePrice {
  padding-top: 10px;
  border-top: 1px solid #1a1a1a;
}

.lunchArea .js-tab_box .tab_panel .list .namePrice .name {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: calc(28 / 18);
  margin: 0;
}

.lunchArea .js-tab_box .tab_panel .list .namePrice .price {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: calc(24 / 18);
  text-align: right;
  position: relative;
  margin: 0;
}

.lunchArea .js-tab_box .tab_panel .list .namePrice .price::after {
  content: "\5186";
  margin-left: .2em;
}

.lunchArea .js-tab_box .tab_panel .list .txt {
  font-size: 1.4rem;
  line-height: calc(20 / 14);
  margin: 9px 0 0;
}

.lunchArea .js-tab_box .tab_panel .list .txt .txtSml {
  font-family: "NotoSansJP-Light";
  font-size: 1.2rem;
  line-height: calc(20 / 12);
}

.lunchArea .js-tab_box .tab_panel .note {
  font-size: 1.2rem;
  line-height: calc(22 / 12);
  text-align: right;
  margin: 23px 0 0;
}

@media screen and (max-width: 1400px) {
  .sec2 {
    margin-top: 77px;
  }
}

.dinnerArea {
  width: 1150px;
  margin: 0 auto;
  background: #1a1a1a;
  padding: 101px 120px 120px;
  color: #fff;
}

.dinnerArea__ttl {
  width: 73px;
  margin: 0 auto;
}

.dinnerArea__lead {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: calc(30 / 18);
  letter-spacing: .04em;
  text-indent: .04em;
  text-align: center;
  margin: 0;
}

.dinnerArea__lead + .dinnerBox__item {
  margin-top: 68px;
}

.dinnerBox {
  margin-top: 39px;
}

.dinnerBox__item {
  position: relative;
}

.dinnerBox__img {
  display: block;
}

.dinnerBox__img img {
  max-width: 100%;
  width: 100%;
}

.dinnerBox__circle {
  position: absolute;
  top: -43px;
  right: -36px;
  width: 128px;
}

.dinnerBox__name {
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.04em;
  margin: 10px 0 0;
}

.dinnerBox__price {
  font-size: 2.2rem;
  line-height: 1;
  margin: 16px 0 0;
}

.dinnerBox__cap {
  font-size: 1.4rem;
  line-height: 1.57;
  margin: 7px 0 0;
}

.dinnerArea__note {
  font-size: 1.2rem;
  line-height: 1;
  margin: 7px 0 0;
  text-align: right;
}

.dinnerTab .dinnerAcc__box {
  color: #1a1a1a;
  padding-top: 13px;
}

.dinnerAcc__ttl {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.66;
  text-align: center;
  letter-spacing: 0.04em;
  margin: 0;
}

.dinnerAcc__item:nth-child(odd) .dinnerAcc__itemIn {
  padding: 85px 70px;
}

.dinnerAcc__item:nth-child(even) {
  background: #f7f5ed;
}

.dinnerAcc__item:nth-child(even) .dinnerAcc__itemIn {
  padding: 40px 70px;
}

.dinnerAcc__item:last-child .dinnerAcc__itemIn {
  padding: 69px 70px 40px;
}

.dinnerAcc__itemIn {
  position: relative;
}

.dinnerAcc__img img {
  max-width: auto;
  width: 100%;
}

.dinnerAcc__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  font-size: 1.8rem;
  line-height: 1.1;
  margin: 0;
}

.dinnerAcc__price dt {
  width: calc(100% - 80px);
  font-weight: 600;
}

.dinnerAcc__price dd {
  width: 80px;
  text-align: right;
}

.dinnerAcc__price dt:nth-of-type(n+2),
.dinnerAcc__price dd:nth-of-type(n+2) {
  margin-top: 11px;
}

.dinnerAccSet {
  border: 1px solid #a07d39;
  padding: 15px 19px 28px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  line-height: 1;
}

.dinnerAccSet__txt1 {
  font-size: 2rem;
  color: #a07d39;
  font-weight: 600;
  letter-spacing: -0.01em;
  width: calc(100% - 85px);
  margin: 0;
}

.dinnerAccSet__txt2 {
  font-size: 2rem;
  color: #a07d39;
  width: 85px;
  margin: 0;
  text-align: right;
  padding-right: 9px;
}

.dinnerAccSet__txt3 {
  font-weight: 600;
  font-size: 1.6rem;
  margin: 10px 0 0;
  letter-spacing: -0.03em;
}

.dinnerTab .intro_note_txt {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: calc(30 / 18);
  letter-spacing: .04em;
  text-indent: 0.04em;
  color: #d00;
  text-align: center;
  margin: 40px 0 0;
}

.dinnerAcc__item.-alcohol .note_txt {
  font-size: 1.2rem;
  line-height: calc(22 / 12);
  text-align: right;
  margin: 12px 0 0;
}

.dinnerAcc__item.-alcohol .alcohol__txt {
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
  margin: 11px 0 0;
  letter-spacing: -0.01em;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .lunchBox__item.-shimizu {
    padding-top: 116px;
    padding-left: 8px;
  }

  .lunchBox__item.-shimizu .lunchBox__txtArea {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding: 81px 0 0 45px;
  }

  .lunchBox__item.-shimizu .lunchBox__imgArea {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .lunchBox__item.-shimizu .lunchBox__circle {
  }

  .lunchBox__item.-shimizu .lunchBox__note {
    text-align: left;
  }

  .dinnerBox__item.-alcohol {
    margin-top: -62px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }

  .dinnerBox__item.-alcohol .dinnerBox__img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .dinnerBox__item.-alcohol .dinnerBox__txtArea {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-right: 16px;
    text-align: right;
  }

  .dinnerBox__item.-alcohol .dinnerBox__price {
    margin-top: 8px;
  }

  .dinnerBox__item.-alcohol .dinnerBox__cap {
    margin-top: 27px;
  }

  .dinnerAcc__name {
    position: absolute;
    left: 40px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    color: #a07d39;
    font-weight: 600;
    font-size: 2.1rem;
    line-height: 1;
    letter-spacing: 0.04em;
    margin: 0;
  }

  .dinnerAcc__item:nth-child(odd) .dinnerAcc__name {
    top: 30px;
  }

  .dinnerAcc__item:nth-child(even) .dinnerAcc__name {
    top: 26px;
  }

  .dinnerAcc__item.-vCol1 {
    background: url(../img/bg_sec2_3@2x.png) no-repeat right bottom/314px;
  }

  .dinnerAcc__item.-vCol1 .dinnerAcc__itemIn {
    padding: 93px 70px 107px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .dinnerAcc__item.-vCol1 .dinnerAcc__name {
    top: 38px;
  }

  .dinnerAcc__item.-vCol1 .dinnerAcc__img {
    width: 100%;
    margin-bottom: 13px;
  }

  .dinnerAcc__item.-vCol1 .dinnerAcc__price {
    width: 398px;
    padding-left: 5px;
  }

  .dinnerAcc__item.-vCol1 .dinnerAccSet {
    width: 330px;
    margin-left: auto;
  }

  .dinnerAcc__item.-hCol2 .dinnerAcc__itemIn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .dinnerAcc__item.-hCol2 .dinnerAcc__img {
    width: 340px;
  }

  .dinnerAcc__item.-hCol2 .dinnerAcc__price {
    width: 387px;
  }

  .dinnerAcc__item.-reverse .dinnerAcc__img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .dinnerAcc__item.-reverse .dinnerAcc__price {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__itemIn {
    padding: 99px 70px 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__col {
    width: 340px;
    position: relative;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__name {
    top: -56px;
    left: -31px;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__price {
    margin-top: 9px;
    font-size: 1.7rem;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__price dt {
    letter-spacing: -0.03em;
  }

  .dinnerAcc__item.-vCol2 .dinnerAcc__txt {
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    text-align: center;
    margin: 28px 0 0;
    width: 100%;
  }

  .dinnerAcc__item.-alcohol .dinnerAcc__itemIn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .dinnerAcc__item.-alcohol .dinnerAcc__img {
    width: 340px;
  }

  .dinnerAcc__item.-alcohol .dinnerAcc__txtArea {
    width: 348px;
  }

  .dinnerAcc__item.-alcohol .alcohol__ttl1 {
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 600;
    margin: 0;
  }

  .dinnerAcc__item.-alcohol .alcohol__ttl2 {
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 800;
    margin: 16px 0 0 -9px;
  }

  .dinnerAcc__item.-alcohol .dinnerAcc__price {
    margin-top: 13px;
  }

  .dinnerAcc__item.-alcohol .dinnerAcc__price + .alcohol__ttl2 {
    margin-top: 38px;
  }
}

@media screen and (max-width: 767px) {
  .sec2 {
    margin-top: 14vw;
  }

  .sec2__ttl {
    padding-top: 16.5vw;
  }

  .sec2__ttl .c-ttlEnJn__en {
    left: 55.3%;
  }

  .sec2__ttl .c-ttlEnJn__jn {
    width: 22.2666666667vw;
  }

  .lunchArea {
    width: 90vw;
    padding: 13.5vw 6.333333333vw 24.4vw;
  }

  .lunchArea::before {
    top: 3.333333333vw;
    left: 2.133333333vw;
    width: 29.333333333vw;
    height: 24.666666666vw;
    background: url(../img/bg_sec2_1_sp@2x.png) no-repeat center center/contain;
  }

  .lunchArea::after {
    top: 247.866666666vw;
    right: 3.466666666vw;
    width: 42.133333333vw;
    height: 44.8vw;
    background: url(../img/bg_sec2_2_sp@2x.png) no-repeat center center/contain;
  }

  .lunchArea__ttl {
    width: 16.1333333333vw;
    margin: 7vw auto 0;
  }

  .lunchBox__item {
    width: 100%;
  }

  .lunchBox {
    margin-top: 17.866666666vw;
  }

  .lunchBox__list {
    display: block;
  }

  .lunchBox__item:nth-child(n+2) {
    margin-top: 16.533333333vw;
  }

  .lunchBox__circle {
    top: -10.666666666vw;
    left: auto;
    right: -6.4vw;
    width: 25.2vw;
  }

  .lunchBox__img img {
    width: 100%;
    max-width: 100%;
  }

  .lunchBox__item:nth-child(2) .lunchBox__circle {
    right: -6.4vw;
  }

  .lunchBox__namePrice {
    margin-top: 4.266666666vw;
  }

  .lunchBox__namePrice__name,
  .lunchBox__namePrice__price,
  .lunchBox__namePrice__price::after {
    font-size: 4.533333333vw;
    line-height: calc(44 / 34);
  }

  .lunchBox__txt {
    font-size: 4vw;
    line-height: calc(40 / 30);
    margin: 2.266666666vw 0 0;
  }

  .lunchBox__txtSml {
    font-size: 3.466666666vw;
    line-height: calc(40 / 26);
  }

  .lunchBox__note {
    font-size: 3.2vw;
    line-height: calc(34 / 24);
    margin-top: 4.4vw;
  }

  .lunchArea .js-tab_box .tab_panel {
    padding: 18.666666666vw 0 0;
  }

  .lunchArea .js-tab_box .tab_panel .list {
    display: block;
  }

  .lunchArea .js-tab_box .tab_panel .list::after {
    display: none;
  }

  .lunchArea .js-tab_box .tab_panel .list li {
    width: 100%;
  }

  .lunchArea .js-tab_box .tab_panel .list li:nth-child(n+2) {
    margin-top: 12.666666666vw;
  }

  .lunchArea .js-tab_box .tab_panel .list .icon {
    top: -10.666666666vw;
    right: -4vw;
    width: 20.133333333vw;
  }

  .lunchArea .js-tab_box .tab_panel .list .img img {
    width: 100%;
    max-width: 100%;
  }

  .lunchArea .js-tab_box .tab_panel .list .namePrice {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 4.533333333vw;
  }

  .lunchArea .js-tab_box .tab_panel .list .namePrice .name,
  .lunchArea .js-tab_box .tab_panel .list .namePrice .price {
    font-size: 4.533333333vw;
    line-height: calc(44 / 34);
    text-align: left;
  }

  .lunchArea .js-tab_box .tab_panel .list .txt {
    font-size: 4vw;
    line-height: calc(40 / 30);
    margin-top: 2vw;
  }

  .lunchArea .js-tab_box .tab_panel .list .txt .txtSml {
    font-size: 3.466666666vw;
    line-height: calc(40 / 26);
  }

  .lunchArea .js-tab_box .tab_panel .note {
    font-size: 3.2vw;
    line-height: calc(34 / 24);
    margin-top: 4.666666666vw;
  }

  .dinnerArea {
    width: 90vw;
    padding: 16.5vw 6vw 15vw;
  }

  .dinnerArea__ttl {
    width: 16.1333333333vw;
  }

  .dinnerArea__lead {
    font-size: 4.266666666vw;
    line-height: calc(42 / 32);
  }

  .dinnerArea__lead + .dinnerBox__item {
    margin-top: 24.933333333vw;
  }

  .dinnerBox {
    margin-top: 8vw;
  }

  .dinnerBox__item {
    position: relative;
  }

  .dinnerBox__item.-alcohol {
    margin-top: 15vw;
  }

  .dinnerBox__circle {
    top: -14vw;
    right: -3vw;
    width: 25.2vw;
  }

  .dinnerBox__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 3vw;
  }

  .dinnerBox__name {
    font-size: 4.5333333333vw;
    margin: 0;
    width: calc(100% - 17vw);
  }

  .dinnerBox__price {
    font-size: 4.5333333333vw;
    margin: 0;
    width: 17vw;
  }

  .dinnerBox__price .u-txt__size73 {
    font-size: 100%;
  }

  .dinnerBox__cap {
    font-size: 3.8666666667vw;
    line-height: 1.33;
    margin: 3vw 0 0;
  }

  .dinnerArea__note {
    font-size: 3.2vw;
    margin: 2vw 0 0;
  }

  .dinnerAcc__wrap{
    width: 100%;
    padding: 12vw 0 0;
  }

  .dinnerAcc__ttl {
    font-size: 4.2666666667vw;
    line-height: 1.59;
  }
  
  .dinnerAcc__txt {
    font-size: 3.4666666666vw;
    text-align: center;
  }

  .dinnerAcc__item:nth-child(odd) .dinnerAcc__itemIn {
    padding: 8vw 6.066666666vw 13vw;
  }

  .dinnerAcc__item:nth-child(even) .dinnerAcc__itemIn {
    padding: 6.5vw 6.066666666vw;
  }

  .dinnerTab .tab_panel .dinnerAcc__item.-alcohol {
    background: #fff;
  }
  
  .dinnerTab .tab_panel .dinnerAcc__item:nth-child(5) .dinnerAcc__itemIn {
    padding: 0;
  }
  
  .dinnerTab .tab_panel .dinnerAcc__item:nth-child(5) .dinnerAcc__itemIn .dinnerAcc__col:first-of-type {
    padding: 8vw 6.5vw 13vw;
  }
  
  .dinnerTab .tab_panel .dinnerAcc__item:nth-child(5) .dinnerAcc__itemIn .dinnerAcc__col:last-of-type {
    padding: 6.5vw;
    background: #f7f5ed;
  }
  
  .dinnerTab .tab_panel .dinnerAcc__item:nth-child(5) .dinnerAcc__txt {
    margin: 0;
    padding: 1em 0;
    background: #f7f5ed;
  }

  .dinnerAcc__item.-vCol1 {
    background: url(../img/bg_sec2_3@2x.png) no-repeat right bottom/46.4vw;
  }

  .dinnerAcc__name {
    color: #a07d39;
    font-size: 4vw;
    line-height: 1;
    letter-spacing: 0.04em;
    margin: 0;
  }

  .dinnerAcc__img {
    margin-top: 3vw;
    display: block;
  }

  .dinnerAcc__price {
    margin-top: 5vw;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 4.5333333333vw;
    line-height: 1.1;
  }

  .dinnerAcc__price dt {
    width: calc(100% - 20vw);
  }

  .dinnerAcc__price dd {
    width: 20vw;
  }

  .dinnerAcc__price dt:nth-of-type(n+2),
  .dinnerAcc__price dd:nth-of-type(n+2) {
    margin-top: 4vw;
  }

  .dinnerAccSet {
    border: 1px solid #a07d39;
    padding: 5vw 2vw 4vw;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 5vw;
  }

  .dinnerAccSet__txt1 {
    font-size: 4.5333333333vw;
    margin: 0 5vw 0 0;
    width: auto;
  }

  .dinnerAccSet__txt2 {
    font-size: 4.5333333333vw;
    width: auto;
    text-align: left;
    padding-right: 0;
  }

  .dinnerAccSet__txt3 {
    font-size: 4vw;
    margin: 2vw 0 0;
    text-align: center;
  }

  .dinnerTab .intro_note_txt {
    font-feature-settings: "palt";
    font-size: calc(26 / 750 * 100vw);
    line-height: calc(38 / 26);
    letter-spacing: 0;
    margin-top: 6vw;
  }

  .dinnerAcc__item.-alcohol .note_txt {
    font-size: 3.2vw;
    line-height: calc(34 / 24);
    margin-top: 5.2vw;
  }

  .dinnerAcc__item.-alcohol .alcohol__txt {
    font-size: 3.466666666vw;
    line-height: calc(30 / 26);
    text-align: center;
    margin-top: 6vw;
  }
}

/* -----------------
parallaxArea
-------------------- */
.parallaxArea {
  width: 100%;
  height: 41.071428571vw;
  max-height: 575px;
}

.parallaxArea::before {
  content:"";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background: #1a1a1a;
}

.foot-is-hide .parallaxArea::before {
  background: url(../img/img_parallax_pc@2x.jpg) center / cover;
}

@media screen and (max-width: 767px) {
  .parallaxArea {
    height: 78.4vw;
    max-height: 700px;
  }
  
  .foot-is-hide .parallaxArea::before {
    background: url(../img/img_parallax_sp@2x.jpg) center / cover;
  }
}

/* -----------------
sec3
-------------------- */
#js-section-3 {
  container-type: inline-size;
  overflow: hidden;
}

.sec3 {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 115px 0 232px;
  width: 1300px;
}

.sec3 .c-ttlEnJn__jn {
  padding-top: 74px;
  width: 161px;
}

.sec3 .box {
  position: relative;
  z-index: 1;
  margin: 62px auto 0;
  padding-bottom: 80px;
  max-width: 1149px;
  background: url(../img/bg_sec3_shop.jpg) center top / contain repeat;
}

.sec3 .box::before {
  content:"";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 26px);
  background: rgba(204,204,204, .55);
  mix-blend-mode: overlay;
}

.sec3 .box_img {
  margin-inline: calc(50% - 50cqi);
}

.sec3 .box_txt {
  font-weight: 500;
  font-size: 2rem;
  line-height: calc(33 / 20);
  letter-spacing: .05em;
  text-align: center;
  margin-block: 50px 36px;
}

.sec3 .box_img_pic {
  display: block;
}

.sec3 .box .sec3_btn {
  margin-inline: auto;
  max-width: 360px;
}

.sec3 .box .sec3_btn a {
  font-size: 1.9rem;
  letter-spacing: .04em;
  padding-left: 40px;
}

.sec3 .sec3__item {
  position: relative;
  z-index: 1;
  margin-top: 88px;
  padding: 55px 0;
  width: 1150px;
}

.sec3 .sec3__item::before,
.sec3 .sec3__item::after {
  content:"";
  display: block;
  position: absolute;
  right: 0;
  width: calc(100vw + 100vw);
}

.sec3 .sec3__item::before {
  top: 50%;
  height: calc(100% - 30px);
  background: rgba(245,245,245,.4);
  transform: translateY(-50%);
}

.sec3 .sec3__item::after {
  top: 0;
  z-index: -1;
  height: 100%;
  background: url(../img/bg_sec3_pc.png) center / cover;
}

.sec3 .sec3__item + .sec3__item {
  margin-top: 55px;
  margin-left: auto;
}

.sec3 .sec3__item + .sec3__item::before,
.sec3 .sec3__item + .sec3__item::after {
  left: 0;
  right: auto;
}

.sec3 .sec3__wrap {
  display: flex;
  align-content: flex-start;
  padding-left: 150px;
}

.sec3 .sec3__item + .sec3__item .sec3__wrap {
  flex-direction: row-reverse;
  padding: 0 150px 0 0;
}

.sec3 .sec3__img {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
  position: relative;
  width: 50%;
}

.sec3 .sec3__img__img1 {
  margin-bottom: 9px;
  width: 100%;
}

.sec3 .sec3__img__img:nth-child(n+2):not(:last-of-type) {
  width: 32%;
}

.sec3 .sec3__txtImg {
  position: absolute;
}

.sec3 .sec3__txtImg_1 {
  bottom: -56px;
  left: -37px;
  width: 83px;
}

.sec3 .sec3__txtImg_2 {
  bottom: -122px;
  right: -73px;
  width: 90px;
}

.sec3 .sec3__txtArea {
  padding-left: 50px;
  width: 50%;
}

.sec3 .sec3__item + .sec3__item .sec3__txtArea {
  padding-left: 92px;
}

.sec3 .sec3__txt1 {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.1;
  margin: 50px 0 18px;
}

.sec3 .sec3__nameArea {
  display: flex;
  align-items: center;
}

.sec3 .sec3__nameArea p {
  font-weight: 600;
  line-height: 1;
  margin: 0;
}

.sec3 .sec3__nameArea .sec3__name {
  font-size: 3.5rem;
  letter-spacing: .04em;
}

.sec3 .sec3__nameArea .sec3__kana {
  font-size: 1.6rem;
  letter-spacing: .04em;
  margin: 0 29px 0 0;
  padding-top: 6px;
}

.sec3 .sec3__nameArea .sec3__price {
  font-size: 2.4rem;
  padding-top: 3px;
}

.sec3 .sec3__nameArea .sec3__tax {
  font-size: 1.2rem;
  padding-top: 14px;
}

.sec3 .sec3__txt2 {
  font-size: 1.4rem;
  line-height: 1.272;
  letter-spacing: .03em;
  margin: 17px 0 68px;
}

.sec3 .sec3_btn {
  position: relative;
  z-index: 1;
  max-width: 300px;
}

.sec3 .sec3_btn::before {
  content:"";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border: 1px solid #1a1a1a;
  border-left: 1px solid #A07D39;
}

.sec3 .sec3_btn a {
  font-size: 1.4rem;
  line-height: 1;
  display: inline-block;
  position: relative;
  z-index: 1;
  padding: 22.5px 21px 23.5px;
  width: 100%;
  transition: .3s;
  transition-delay: 0s;
}

.sec3 .sec3_btn .sec3_btn_ico {
  position: absolute;
  top: 47%;
  right: -22px;
  width: 72px;
  height: 8px;
  transform: translateY(-50%);
  pointer-events: none;
  transition: .3s;
  transition-delay: .9s;
}

.sec3 .sec3_btn .sec3_btn_ico img {
  position: absolute;
  top: 0;
  left: 0;
  transition-delay: .9s;
}

@media screen and (min-width: 768px) {
  .sec3 .sec3_btn a::before,
  .sec3 .sec3_btn a::after {
    content:"";
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
    width: 1px;
    height: 100%;
    background: #A07D39;
    transform: scale(1, 0);
    transition: .3s;
    transform-origin: left center;
  }
  
  .sec3 .sec3_btn a::before {
    left: 0;
    background: #1a1a1a;
    transform: scale(1, 1);
  }
  
  .sec3 .sec3_btn a::after {
    right: 0;
    transition-delay: .6s;
  }
  
  .sec3 .sec3_btn .sec3_btn_txt {
    display: block;
  }
  
  .sec3 .sec3_btn .sec3_btn_txt::before,
  .sec3 .sec3_btn .sec3_btn_txt::after {
    content:"";
    display: block;
    position: absolute;
    right: 0;
    z-index: 1;
    width: 100%;
    height: 1px;
    background: #A07D39;
    transform: scale(0, 1);
    transition: .3s;
    transition-delay: .3s;
    transform-origin: top right;
  }
  
  .sec3 .sec3_btn .sec3_btn_txt::before {
    top: 0;
  }
  
  .sec3 .sec3_btn .sec3_btn_txt::after {
    bottom: 0;
  }
  
  .sec3 .sec3_btn a:hover {
    color: #A07D39;
    opacity: 1;
    transition-delay: .9s;
  }
  
  .sec3 .sec3_btn a:hover::before {
    transform: scale(1, 0);
    transition-delay: .9s;
  }
  
  .sec3 .sec3_btn a:hover::after {
    transform: scale(1, 1);
    transition-delay: .3s;
  }
  
  .sec3 .sec3_btn a:hover .sec3_btn_txt::before,
  .sec3 .sec3_btn a:hover .sec3_btn_txt::after {
    transform: scale(1, 1);
    transition-delay: .6s;
  }
  
  .sec3 .sec3_btn a:hover .sec3_btn_ico {
    right: -45px;
    transition-delay: 0s;
  }
  
  .sec3 .sec3_btn a:hover .sec3_btn_ico ._off {
    opacity: 0;
    transition-delay: 0s;
  }
}

@media screen and (max-width: 767px) {
  .sec3 {
    padding: 19.333vw 0 20.8vw;
    width: 100%;
    overflow: hidden;
  }

  .sec3 .c-ttlEnJn__jn {
    padding-top: 16vw;
    width: 27.733333333vw;
  }

  .sec3 .box {
    margin-top: calc(116 / 750 * 100vw);
    padding-bottom: calc(104 / 750 * 100vw);
    max-width: calc(670 / 750 * 100vw);
  }

  .sec3 .box::before {
    height: calc(100% - (30 / 750 * 100vw));
  }

  .sec3 .box_txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: calc(35 / 24);
    letter-spacing: .04em;
    margin-block: calc(57 / 750 * 100vw) calc(37 / 750 * 100vw);
  }

  .sec3 .box .sec3_btn {
    max-width: calc(600 / 750 * 100vw);
  }

  .sec3 .box .sec3_btn a {
    font-size: calc(32 / 750 * 100vw);
    text-align: center;
    padding-inline: 0;
  }

  .sec3 .sec3__item {
    margin-top: 14.933vw;
    padding: 0;
    width: 100%;
    background: none;
  }
  
  .sec3 .sec3__item::before,
  .sec3 .sec3__item::after {
    display: none;
  }

  .sec3 .sec3__item + .sec3__item {
    margin-top: 31.467vw;
    margin-left: auto;
  }

  .sec3 .sec3__wrap {
    display: block;
    padding: 0;
  }

  .sec3 .sec3__item + .sec3__item .sec3__wrap {
    padding: 0;
  }

  .sec3 .sec3__img {
    margin: 0 auto;
    padding: 7.2vw 0;
    width: 89.333333333%;
  }
  
  .sec3 .sec3__img__img1 {
    margin-bottom: 1.866666666vw;
  }

  .sec3 .sec3__img::before {
    content:"";
    display: block;
    position: absolute;
    top: 0;
    left: 9.2vw;
    z-index: -1;
    width: 100vw;
    height: 100%;
    background: url(../img/bg_sec3_sp.png) top right / cover;
  }

  .sec3 .sec3__item + .sec3__item .sec3__img::before {
    left: auto;
    right: 9.2vw;
  }

  .sec3 .sec3__img::after {
    content:"";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: -1;
    width: 100vw;
    height: calc(100% - 4vw);
    background: rgba(245,245,245,.4);
    transform: translateY(-50%);
  }
  
  .sec3 .sec3__item + .sec3__item .sec3__img::after {
    left: auto;
    right: 0;
  }

  .sec3 .sec3__img img {
    width: 100%;
  }

  .sec3 .sec3__img .sec3__txtImg_1 {
    top: -6.2267vw;
    bottom: auto;
    left: auto;
    right: 3.813vw;
    width: 15.6vw;
  }

  .sec3 .sec3__img .sec3__txtImg_2 {
    top: -16.267vw;
    bottom: auto;
    left: 1.067vw;
    right: auto;
    width: 16.933vw;
  }

  .sec3 .sec3__txtArea {
    margin: 0 auto;
    padding: 0;
    width: 89.333333333%;
  }

  .sec3 .sec3__item + .sec3__item .sec3__txtArea {
    padding: 0;
  }

  .sec3 .sec3__txt1 {
    font-size: 4.267vw;
    line-height: 1;
    margin: 6.667vw 0 3.6vw;
  }

  .sec3 .sec3__nameArea {
    align-items: flex-end;
  }

  .sec3 .sec3__nameArea .sec3__name {
    font-size: 6.667vw;
  }

  .sec3 .sec3__nameArea .sec3__kana {
    font-size: 4vw;
    margin: 0 auto 0 0;
    padding: 0;
  }

  .sec3 .sec3__nameArea .sec3__price {
    font-size: 5.867vw;
    padding: 0;
  }

  .sec3 .sec3__nameArea .sec3__tax {
    font-size: 2.933vw;
    padding: 0;
  }

  .sec3 .sec3__txt2 {
    font-size: 4vw;
    line-height: 1.467;
    letter-spacing: .04em;
    margin: 6.533vw 0 5.867vw;
  }
  
  .sec3 .sec3_btn {
    text-align: center;
    margin: 0 auto;
    max-width: 89.552238805%;
  }

  .sec3 .sec3_btn a {
    font-size: 3.8666666666vw;
    padding: 4.6vw 0;
  }
}

/* -----------------
sec4
-------------------- */
.sec4 {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 38px 70px 0 73px;
  width: 1150px;
  min-height: 750px;
  background: #1A1A1A;
}

.sec4::before {
  content:"";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 750px;
  background: url(../img/bg_sec4_pc@2x.png) top left/ cover;
}

.sec4 .c-ttlEnJn__en {
  left: 0;
  transform: translateX(0) rotate(90deg);
}

.sec4 .c-ttlEnJn__jn {
  position: absolute;
  top: 78px;
  left: 0;
  width: 81px;
}

.sec4 .sec4__item1 {
  display: flex;
  margin-top: 305px;
  padding-top: 85px;
}

.sec4 .sec4__item2 {
  margin-top: 95px;
}

.sec4 .sec4__item3 {
  margin-top: 140px;
}

.sec4 .sec4__img {
  display: block;
  width: 185px;
}

.sec4 .sec4__img + .sec4__txt {
  margin-top: 9px;
}

.sec4 .sec4__item2 .sec4__img {
  width: 221px;
}

.sec4 .sec4__item1 .sec4__txtArea {
  width: 232px;
}

.sec4 .sec4__ttl {
  font-size: 2rem;
  line-height: 1;
  color: #fff;
  margin: 0;
}

.sec4 .sec4__txt {
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0;
}

.sec4 .sec4__ttl + .sec4__txt {
  margin-top: 20px;
}

.sec4 .sec4__txt + .sec4__txt {
  margin-top: 10px;
}

.sec4 .sec4__btn + .sec4__txt {
  margin-top: 25px;
}

.sec4 .sec4__txtS {
  font-size: 1.4rem;
  position: relative;
  top: -1px;
}

.sec4 .sec4__btn {
  line-height: 1;
  display: inline-block;
  position: relative;
  margin-top: 8px;
  padding-right: 50px;
}

.sec4 .sec4__btn + .sec4__img {
  margin-top: 13px;
}

.sec4 .sec4__btn img {
  position: absolute;
  top: 50%;
  right: 0;
  width: 37px;
  transform: translateY(-50%);
  transition: .3s;
}

.sec4 .sec4__btn a {
  font-size: 1.6rem;
  letter-spacing: .02em;
  color: #A07D39;
  border-bottom: 1px solid #A07D39;
  transition: .3s;
}

@media screen and (min-width: 768px) {
  .sec4 .sec4__box {
    display: flex;
    justify-content: space-between;
  }

  .sec4 .sec4__item1 {
    order: 1;
  }

  .sec4 .sec4__item2 {
    order: 2;
  }

  .sec4 .sec4__item3 {
    order: 0;
  }

  .sec4 .sec4__txt a[href*="tel:"] {
    pointer-events: none;
  }
  
  .sec4 .sec4__btn a:hover {
    color: #fff;
    border-color: #fff;
    opacity: 1;
  }

  .sec4 .sec4__btn a:hover ~ img {
    right: -16px;
  }

  .sec4 .sec4__btn a:hover ~ ._off {
    opacity: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec4 {
    margin: 0 auto;
    padding: 0;
    width: 89.333333333%;
    min-height: auto;
    background: none;
  }

  .sec4::before {
    display: none;
  }

  .sec4 .c-ttlEnJn__en {
    left: 55.6%;
    transform: translateX(-50%) rotate(90deg);
  }

  .sec4 .c-ttlEnJn__jn {
    position: static;
    padding-top: 17.733vw;
    width: 24.4vw;
  }

  .sec4 .sec4__box {
    margin: 14vw 0 0;
    padding-bottom: 13.466666666vw;
    width: 100%;
    background: #1A1A1A;
  }

  .sec4 .sec4__item {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 88.805970149%;
  }

  .sec4 .sec4__item1 {
    margin-top: 5.333333333vw;
    padding-top: 0;
  }

  .sec4 .sec4__item2,
  .sec4 .sec4__item3 {
    margin-top: 15.866666666vw;
  }

  .sec4 .sec4__img,
  .sec4 .sec4__item2 .sec4__img {
    width: 45.882352941%;
  }

  .sec4 .sec4__img + .sec4__txt {
    margin-top: 5.333333333vw;
  }

  .sec4 .sec4__item1 .sec4__txtArea {
    width: calc(100% - 45.882352941%);
  }

  .sec4 .sec4__ttl {
    font-size: 4.8vw;
  }

  .sec4 .sec4__txt,
  .sec4 .sec4__txtS {
    font-size: 3.733333333vw;
    line-height: calc(34 / 28);
    letter-spacing: 0;
  }

  .sec4 .sec4__txtS {
    text-indent: -.6em;
    display: block;
    position: static;
  }

  .sec4 .sec4__ttl + .sec4__txt {
    margin-top: 2.4vw;
  }

  .sec4 .sec4__txt + .sec4__txt {
    margin-top: 3.333333333vw;
  }

  .sec4 .sec4__btn + .sec4__txt {
    margin-top: 4.933333333vw;
  }

  .sec4 .sec4__btn {
    margin-top: 2.666666666vw;
    padding: 0;
  }

  .sec4 .sec4__btn + .sec4__img {
    margin-top: 0;
  }

  .sec4 .sec4__btn img {
    display: none;
  }

  .sec4 .sec4__btn a {
    font-size: 4vw;
    letter-spacing: -.02em;
  }
}

/* -----------------
sec5
-------------------- */
.sec5 {
  position: relative;
  z-index: 2;
  padding: 83px 0 60px;
}

.sec5__wrap {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 1000px;
}

.sec5 .c-ttlEnJn__en {
  left: 0;
  transform: translateX(0) rotate(90deg);
}

.sec5 .c-ttlEnJn__jn {
  margin: 0 0 0 27px;
  padding-top: 48px;
  width: 83px;
}

.sec5 .newsArea .c-ttlEnJn__en {
  top: 15px;
}

.sec5 .newsArea .c-ttlEnJn__jn {
  padding-top: 46.47px;
}

.sec5 .galleryArea {
  width: 562px;
}

.sec5 .galleryArea .gallery__box {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 95px;
  padding: 0;
}

.sec5 .galleryArea .gallery__box .gallery_item {
  width: 180px;
  height: 180px;
  overflow: hidden;
}

.sec5 .galleryArea .gallery__box .gallery_item:nth-child(n+4) {
  margin-top: 11px;
}

.sec5 .galleryArea .gallery__box img a {
  display: block;
}

.sec5 .galleryArea .gallery__box video,
.sec5 .galleryArea .gallery__box img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.sec5 .newsArea {
  width: 370px;
}

.sec5 .newsArea .news__box {
  margin-top: 95px;
}

.sec5 .news__box {
  max-height: 563px;
  background: #fff;
  overflow-y: scroll;
}

@media screen and (max-width: 767px) {
  .sec5 {
    padding: 14.8vw 0 16.4vw;
  }

  .sec5__wrap {
    display: block;
    width: 89.333333333%;
  }

  .sec5 .c-ttlEnJn__en {
    left: 54.3%;
    transform: translateX(-50%) rotate(90deg);
  }

  .sec5 .c-ttlEnJn__jn {
    margin: 0 auto;
    padding-top: 18.533vw;
    width: 22.267vw;
  }

  .sec5 .newsArea .c-ttlEnJn__en {
    top: 0;
  }

  .sec5 .newsArea .c-ttlEnJn__jn {
    padding-top: 15.067vw;
    width: 22.933vw;
  }

  .sec5 .galleryArea {
    width: 100%;
  }

  .sec5 .galleryArea .gallery__box {
    margin-top: 10.8vw;
  }
  
  .sec5 .galleryArea .gallery__box .gallery_item {
    width: 28.666666666vw;
    height: 28.666666666vw;
  }

  .sec5 .galleryArea .gallery__box .gallery_item:nth-child(n+4) {
    margin-top: 1.666666666vw;
  }

  .sec5 .newsArea {
    margin-top: 13.2vw;
    width: 100%;
  }

  .sec5 .newsArea .news__box {
    margin-top: 8.4vw;
  }

  .sec5 .news__box {
    max-height: 89.333333333vw;
  }
}
