@charset "UTF-8";
html {
  font-size: 100%;
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.2841091493vw;
  }
}
@media (min-width: 1246px) {
  html {
    font-size: 100%;
  }
}

body {
  font-family: "Shippori Mincho", serif;
  color: #14100E;
}

@media screen and (min-width: 768px) {
  a,
  button {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  a:hover,
  button:hover {
    opacity: 0.7;
    cursor: pointer;
  }
}

/*****************************
* A Modern CSS Reset (https://github.com/hankchizljaw/modern-css-reset)
* 上記に、ul要素,ol要素,a要素への記述追加
*****************************/
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
li {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul,
ol {
  list-style: none;
  padding: 0;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

button {
  border: none;
  padding: 0;
  background-color: transparent;
  background-color: initial;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.l-concept {
  padding-top: 4.125rem;
  padding-bottom: 4.8125rem;
}
@media screen and (min-width: 768px) {
  .l-concept {
    padding-top: 9.0625rem;
    padding-bottom: 9.875rem;
  }
}

.l-contact {
  padding-top: 3.75rem;
  padding-bottom: 3.625rem;
}
@media screen and (min-width: 768px) {
  .l-contact {
    padding-top: 8.5rem;
    padding-bottom: 4.875rem;
  }
}

.l-food {
  padding-top: 4.1875rem;
  padding-bottom: 6.4375rem;
}
@media screen and (min-width: 768px) {
  .l-food {
    padding-top: 12.5rem;
    padding-bottom: 28.375rem;
  }
}

.l-footer {
  padding-top: 3.5625rem;
  padding-bottom: 0.875rem;
}
@media screen and (min-width: 768px) {
  .l-footer {
    padding-top: 4.625rem;
    padding-bottom: 2.8125rem;
  }
}

.l-information {
  padding-top: 0.5rem;
  padding-bottom: 3.75rem;
}
@media screen and (min-width: 768px) {
  .l-information {
    padding-top: 0;
    padding-bottom: 7.5rem;
    margin-top: 4.4375rem;
  }
}

.l-inner {
  width: 100%;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 1246px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.l-message {
  padding-top: 2.4375rem;
}
@media screen and (min-width: 768px) {
  .l-message {
    padding-top: 0;
  }
}

.l-top {
  padding-top: 1.25rem;
  padding-bottom: 6.9375rem;
}
@media screen and (min-width: 768px) {
  .l-top {
    padding-top: 2rem;
    padding-bottom: 15.5rem;
  }
}

.c-btn {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: bold;
  color: #FFFFFF;
  background-color: #048338;
  text-align: center;
  line-height: 1;
  padding: 0.75rem 1.5625rem 0.9375rem;
}
@media screen and (min-width: 768px) {
  .c-btn {
    font-size: 1.25rem;
    padding: 1.3125rem 2rem;
  }
}

.c-btn span {
  text-transform: uppercase;
}

.c-hamburger {
  display: block;
  position: relative;
  cursor: pointer;
  width: 2rem;
  height: 1.625rem;
  z-index: 9999;
}
@media screen and (min-width: 768px) {
  .c-hamburger {
    display: none;
  }
}

.c-hamburger span {
  display: inline-block;
  position: absolute;
  background-color: #0E0E0E;
  width: 2rem;
  height: 0.125rem;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.c-hamburger span:nth-of-type(1) {
  top: 0;
}

.c-hamburger span:nth-of-type(2) {
  top: 0.75rem;
}

.c-hamburger span:nth-of-type(3) {
  top: 1.5rem;
}

.js-hamburger.is-active {
  position: fixed;
  right: 2rem;
}

.js-hamburger.is-active span:nth-child(1) {
  top: 0.75rem;
  background-color: #FFFFFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.js-hamburger.is-active span:nth-child(2) {
  opacity: 0;
  background-color: #FFFFFF;
}

.js-hamburger.is-active span:nth-child(3) {
  top: 0.75rem;
  background-color: #FFFFFF;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.c-title {
  display: block;
}

.c-title__en {
  display: block;
  font-size: 1.125rem;
  font-weight: bold;
  color: #CFB55B;
  font-family: "Lora", serif;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .c-title__en {
    font-size: 1.5rem;
  }
}

.c-title__ja {
  font-size: 1.75rem;
  font-weight: bold;
  color: #FFFFFF;
  line-height: 1;
  padding-top: 1rem;
}
@media screen and (min-width: 768px) {
  .c-title__ja {
    font-size: 2.25rem;
    padding-top: 0;
    letter-spacing: 0.09em;
  }
}

.p-concept {
  display: block;
  background-color: #0E0E0E;
}

.p-concept__inner.l-inner {
  padding: 0 2.5625rem;
}

.p-concept__content {
  max-width: 37.5rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-concept__content {
    max-width: 18.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    max-width: 75rem;
  }
}

.p-concept__title.c-title {
  margin-left: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-concept__title.c-title {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    margin-left: 3.9375rem;
  }
}

@media screen and (min-width: 768px) {
  .p-concept__title-en.c-title__en {
    -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
            writing-mode: vertical-lr;
  }
}

.p-concept__title-ja.c-title__ja {
  padding-top: 0.5625rem;
}
@media screen and (min-width: 768px) {
  .p-concept__title-ja.c-title__ja {
    padding-top: 0;
    text-orientation: upright;
    margin-right: -0.375rem;
  }
}

.p-concept__title-ja.c-title__ja span {
  -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb;
  letter-spacing: -0.03em;
  margin-bottom: 0.6875rem;
}

.p-concept__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 3.3125rem;
}
@media screen and (min-width: 768px) {
  .p-concept__body {
    margin-top: 3.625rem;
    margin-left: -1.25rem;
  }
}

.p-concept__text {
  font-size: 1rem;
  color: #FFFFFF;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 2.23;
}
@media screen and (min-width: 768px) {
  .p-concept__text {
    font-size: 1.25rem;
    line-height: 3.4;
  }
}

.p-contact__inner.l-inner {
  padding: 0 0.9375rem;
}

.p-content__title {
  font-size: 1.75rem;
  font-weight: 700;
  color: #846F25;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p-content__title {
    font-size: 1.875rem;
  }
}

.p-contact__text {
  font-size: 1rem;
  line-height: 1.38;
  margin-top: 2.5rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-contact__text {
    font-size: 1.125rem;
    margin-top: 2.25rem;
  }
}

.p-contact__btn {
  display: block;
  text-align: center;
  margin-top: 1.1875rem;
}
@media screen and (min-width: 768px) {
  .p-contact__btn {
    margin-top: 1.5625rem;
  }
}

.p-contact__btn-link.c-btn {
  font-size: 1rem;
  padding: 1.4375rem 1.875rem 1.5rem 1.9375rem;
  min-width: 21.5625rem;
}
@media screen and (min-width: 768px) {
  .p-contact__btn-link.c-btn {
    font-size: 1.25rem;
    padding: 1.3125rem 1.8125rem 1.375rem 2.5rem;
    min-width: 26.4375rem;
  }
}

.p-contact__tel {
  position: relative;
  font-size: 1rem;
  text-align: center;
  margin-top: 2.75rem;
}
@media screen and (min-width: 768px) {
  .p-contact__tel {
    font-size: 1.125rem;
    margin-top: 1.9375rem;
    margin-right: 1.25rem;
  }
}

.p-contact__tel::after {
  position: absolute;
  content: "";
  width: 20.9375rem;
  height: 0.125rem;
  background: -webkit-gradient(linear, left top, right top, from(#FFFFFF), color-stop(#14100E), to(#FFFFFF));
  background: linear-gradient(90deg, #FFFFFF, #14100E, #FFFFFF);
  bottom: -0.625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-contact__tel::after {
    bottom: 0;
    width: 29rem;
  }
}

.p-contact__tel a {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  font-family: "Lora", serif;
}
@media screen and (min-width: 768px) {
  .p-contact__tel a {
    pointer-events: none;
    font-size: 2rem;
    margin-left: 0.75rem;
  }
}

.p-contact__date {
  font-size: 1rem;
  text-align: center;
  margin-top: 1.375rem;
}
@media screen and (min-width: 768px) {
  .p-contact__date {
    font-size: 1.125rem;
    margin-top: 0.875rem;
  }
}

.p-drawer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  height: -webkit-fill-available;
  opacity: 0;
  background: linear-gradient(25deg, #14100E, #250D11);
  z-index: -300;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .p-drawer {
    display: none;
  }
}

.p-drawer__content-list {
  width: 100%;
  overflow: scroll;
  padding-top: 7.1875rem;
}

.p-drawer__content-item {
  display: block;
  text-align: center;
}

.p-drawer__content-item span {
  text-transform: uppercase;
}

.p-drawer__content-item:not(:first-child) {
  margin-top: 1.5rem;
}

.p-drawer__content-item a {
  display: block;
  letter-spacing: 0.2em;
  line-height: 1;
  width: 100%;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.p-drawer.is-active {
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 300;
}

.p-drawer__btn {
  display: block;
  text-align: center;
}

.p-drawer__reserve {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 700;
  color: #FFFFFF;
  background-color: #048338;
  line-height: 1;
  text-align: center;
  min-width: 11.875rem;
  padding: 0.75rem 1.5625rem 0.9375rem;
  margin-top: 1.875rem;
}

.p-drawer__logo {
  max-width: 11.5rem;
  width: 100%;
  margin-inline: auto;
  margin-top: 2.8125rem;
}

.p-drawer__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 184/184;
}

@media screen and (min-width: 768px) {
  .p-food {
    position: relative;
    overflow: hidden;
  }
}

.p-food__inner.l-inner {
  padding: 0 0.9375rem;
  max-width: 37.5rem;
}
@media screen and (min-width: 768px) {
  .p-food__inner.l-inner {
    max-width: 62.3125rem;
    padding: 0 1.5625rem;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
  }
}

.p-food__drink {
  position: absolute;
  top: -4rem;
  left: calc(50% - 17px);
  max-width: 44rem;
  width: 100%;
}

.p-food__drink img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 704/438;
}

.p-food__title-ja.c-title__ja {
  font-size: 1.75rem;
  color: #14100E;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .p-food__title-ja.c-title__ja {
    letter-spacing: 0.08em;
    margin-right: 0.4375rem;
    font-size: 2.3125rem;
  }
}

.p-food__title-en.c-title__en {
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .p-food__title-en.c-title__en {
    font-size: 1.25rem;
  }
}

.p-food__text {
  font-size: 1rem;
  margin-top: 2.875rem;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .p-food__text {
    font-size: 1.125rem;
    line-height: 2.7;
    margin-top: 5.4375rem;
    margin-right: 3.0625rem;
    margin-left: 10.3125rem;
  }
}

.p-food__menu {
  margin-top: 4.625rem;
}
@media screen and (min-width: 768px) {
  .p-food__menu {
    margin-top: 11.75rem;
  }
}

.p-food__menu-list {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-food__menu-list {
    margin-top: 0;
  }
}

.p-food__menu-title {
  font-size: 1.25rem;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-food__menu-title {
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-left: 4.75rem;
    text-align: unset;
  }
}

@media screen and (min-width: 768px) {
  .p-food__menu-title span {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}

.p-food__menu-item {
  font-size: 1rem;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-food__menu-item {
    text-align: unset;
    font-size: 1.25rem;
    margin-top: 2.8125rem;
  }
}

.p-food__menu-item:not(:first-child) {
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .p-food__menu-item:not(:first-child) {
    margin-top: 2.8125rem;
    margin-right: 3.75rem;
  }
}

.p-food__img {
  max-width: 37.5rem;
  width: 100%;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-food__img {
    max-width: 53rem;
    margin-top: 4.5rem;
  }
}

.p-food__bottom {
  position: absolute;
  bottom: -4.875rem;
  right: 0;
  max-width: 89.9375rem;
  width: 100%;
}

.p-food__bottom img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1439/659;
}

.p-footer {
  background: radial-gradient(at left bottom, #371F1A -3%, #14100E 44%);
  color: #FFFFFF;
}

.p-footer__inner.l-inner {
  max-width: 37.5rem;
  padding: 0 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-footer__inner.l-inner {
    max-width: 78.125rem;
    padding: 0 1.5625rem;
  }
}

.p-footer__list {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-footer__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-footer__list li:not(:first-child) {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-footer__list li:not(:first-child) {
    margin-top: 0;
    margin-left: 1.25rem;
  }
}

.p-footer__link {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
}

.p-footer__link span {
  text-transform: uppercase;
}

.p-footer__content {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-footer__content {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2.6875rem;
    margin-left: -2rem;
  }
}

.p-footer__logo {
  max-width: 12.5rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-footer__logo {
    margin: 0;
    max-width: 19.375rem;
  }
}

.p-footer__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 200/200;
}
@media screen and (min-width: 768px) {
  .p-footer__logo img {
    aspect-ratio: 310/310;
  }
}

.p-footer__info {
  margin-top: 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-footer__info {
    margin-top: 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

.p-footer__name {
  font-size: 1.75rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-footer__name {
    font-size: 2rem;
  }
}

.p-footer__address {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: -0.5625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__address {
    line-height: 1.7;
    letter-spacing: 0.18em;
    margin-top: 1.9375rem;
  }
}

.p-footer__time {
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 1.75rem;
  border-bottom: solid 1px #3A2527;
  padding: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__time {
    font-size: 1rem;
    padding: 0.625rem 1.25rem;
  }
}

.p-footer__time span {
  margin-left: 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-footer__time span {
    margin-left: 1.25rem;
  }
}

.p-footer__bottom {
  text-align: center;
  margin-top: 2.9375rem;
}
@media screen and (min-width: 768px) {
  .p-footer__bottom {
    margin-top: 1.4375rem;
  }
}

.p-footer__copyright {
  font-size: 0.875rem;
  line-height: 1.38;
  letter-spacing: 0.06em;
  margin-left: 0.5625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__copyright {
    font-size: 1.125rem;
  }
}

.p-footer__copyright span {
  font-family: "Lora", serif;
}

.p-information {
  overflow: hidden;
  background: linear-gradient(40deg, #14100E 8.64%, #250D11 100%);
}

.p-information__wrap.l-inner {
  max-width: 37.5rem;
  padding-right: 0.875rem;
  padding-left: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-information__wrap.l-inner {
    max-width: 78.125rem;
    padding: 0 1.5625rem;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .p-information__body {
    width: 59.28%;
    padding: 3.75rem 8.4375rem 4.625rem 4.25rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-information__title-en.c-title__en {
    font-size: 1.25rem;
  }
}

.p-information__title-ja.c-title__ja {
  color: #FFFFFF;
  letter-spacing: 0;
  padding-top: 0.1875rem;
}

.p-information__content {
  margin-top: 5.1875rem;
}
@media screen and (min-width: 768px) {
  .p-information__content {
    margin-top: 3.4375rem;
    margin-left: 4.375rem;
  }
}

.p-information__name {
  color: #FFFFFF;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .p-information__name {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.38;
    letter-spacing: 0;
  }
}

.p-information__box {
  color: #FFFFFF;
  margin-top: 1.8125rem;
}
@media screen and (min-width: 768px) {
  .p-information__box {
    width: 27.125rem;
    margin-top: 1.75rem;
  }
}

.p-information__box dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 1.1875rem;
  border-bottom: solid 1px #3A2527;
}
@media screen and (min-width: 768px) {
  .p-information__box dl {
    padding-bottom: 1.5rem;
  }
}

.p-information__box dl:not(:first-child) {
  line-height: 1;
  padding-top: 1.125rem;
  padding-bottom: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-information__box dl:not(:first-child) {
    padding-top: 1.4375rem;
    padding-bottom: 1.125rem;
  }
}

.p-information__box dt {
  width: 5rem;
}
@media screen and (min-width: 768px) {
  .p-information__box dt {
    width: 4.5rem;
    font-size: 1.125rem;
    line-height: 1;
  }
}

.p-information__box dd {
  line-height: 1.34;
  letter-spacing: 0.01em;
  margin-left: 1.6875rem;
  width: calc(100% - 5rem);
}
@media screen and (min-width: 768px) {
  .p-information__box dd {
    font-size: 1.125rem;
    width: calc(100% - 6.5625rem);
    margin-left: 2.0625rem;
  }
}

.p-information__tel {
  letter-spacing: 0.11em;
}

.p-information__box span {
  font-size: 1rem;
}

.p-information__logo {
  margin-top: 2rem;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .p-information__logo {
    position: relative;
    width: 100%;
    margin-top: 0;
    margin-left: 0;
  }
}

.p-information__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-information__logo img {
    position: absolute;
  }
}

.p-information__follow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #241616;
  width: 21.5625rem;
  margin-top: 2.5625rem;
  margin-inline: auto;
  padding: 0.9375rem 1.5625rem 0.9375rem 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-information__follow {
    width: 38.8125rem;
    padding: 2.5rem 0;
    margin-top: 4.375rem;
  }
}

.p-information__follow-title.c-title__en {
  display: inline-block;
  font-size: 1.1875rem;
  margin-right: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-information__follow-title.c-title__en {
    margin-right: 1.25rem;
  }
}

.p-information__follow-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-information__instagram {
  max-width: 2.5rem;
  width: 100%;
  margin-right: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-information__instagram {
    max-width: 3.125rem;
    margin-right: 1.25rem;
  }
}

.p-information__instagram img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 40/40;
}
@media screen and (min-width: 768px) {
  .p-information__instagram img {
    aspect-ratio: 50/50;
  }
}

.p-information__text {
  font-size: 1rem;
  font-weight: 400;
  color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .p-information__text {
    font-size: 1.125rem;
  }
}

.p-information__text span {
  text-transform: capitalize;
}

.p-information__inner.l-inner {
  max-width: 37.5rem;
  padding: 0 0.9375rem;
  margin-top: 2.25rem;
}
@media screen and (min-width: 768px) {
  .p-information__inner.l-inner {
    max-width: 69.375rem;
    padding: 0 1.5625rem;
    margin-top: 4.375rem;
  }
}

@media screen and (min-width: 768px) {
  .p-information__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-information__container.p-information__container-second {
  gap: 2.1875rem;
}

.p-information__block.p-information__block-big {
  margin-top: 2.4375rem;
}
@media screen and (min-width: 768px) {
  .p-information__block.p-information__block-big {
    margin-top: 0;
  }
}

.p-information__block-wrap {
  gap: 2.1875rem;
}
@media screen and (min-width: 768px) {
  .p-information__block-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-information__img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-information__img {
    max-width: 20.625rem;
  }
}

.p-information__img.p-information__img-second {
  margin-top: 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-information__img.p-information__img-second {
    margin-top: 0;
  }
}

.p-information__img.p-information__img-third {
  margin-top: 2.3125rem;
}
@media screen and (min-width: 768px) {
  .p-information__img.p-information__img-third {
    margin-top: 0;
    margin-left: 2.1875rem;
  }
}

.p-information__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 345/460;
}
@media screen and (min-width: 768px) {
  .p-information__img img {
    aspect-ratio: 330/440;
  }
}

.p-information__block-text {
  font-size: 1rem;
  color: #FFFFFF;
  line-height: 1.45;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-information__block-text {
    margin-top: 1.25rem;
  }
}

.p-information__block-text.p-information__block-text-small {
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-information__block-text.p-information__block-text-small {
    font-size: 1rem;
  }
}

.p-information__block-line {
  display: block;
  width: 100%;
  height: 0.0625rem;
  background-color: #FFFFFF;
  opacity: 0.4;
  margin-top: 1.8125rem;
  margin-bottom: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-information__block-line {
    margin-top: 2.1875rem;
    margin-bottom: 2.5rem;
  }
}

.p-message {
  overflow: hidden;
}

.p-message__inner.l-inner {
  position: relative;
  max-width: 37.5rem;
  padding: 0 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-message__inner.l-inner {
    max-width: 78.125rem;
    padding: 0 1.5625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .p-message__body {
    width: 61.6911764706%;
    padding: 5.5625rem 9.1875rem 8.5625rem 4.25rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.p-message__deco {
  position: absolute;
  max-width: 9.375rem;
  width: 100%;
  top: -3.3125rem;
  right: calc(50% + 81px);
}
@media screen and (min-width: 768px) {
  .p-message__deco {
    max-width: 10.9375rem;
    top: 2.0625rem;
    right: calc(50% + 465px);
  }
}

.p-message__deco img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 150/150;
}
@media screen and (min-width: 768px) {
  .p-message__deco img {
    aspect-ratio: 175/175;
  }
}

.c-title.p-message__title {
  margin-right: 0.75rem;
}
@media screen and (min-width: 768px) {
  .c-title.p-message__title {
    margin-right: 0;
  }
}

.c-title__en.p-message__title-en {
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .c-title__en.p-message__title-en {
    font-size: 1.25rem;
  }
}

.c-title__ja.p-message__title-ja {
  font-size: 1.75rem;
  color: #14100E;
  margin-top: 0;
  letter-spacing: -0.03em;
  padding-top: 0.375rem;
}
@media screen and (min-width: 768px) {
  .c-title__ja.p-message__title-ja {
    padding-top: 0;
    margin-top: 0.5rem;
    margin-right: 0.4375rem;
    font-size: 2.3125rem;
  }
}

.p-message__text {
  font-size: 1rem;
  line-height: 1.8;
  margin-top: 3.4375rem;
}
@media screen and (min-width: 768px) {
  .p-message__text {
    font-size: 1.125rem;
    line-height: 2.7;
    margin-top: 6rem;
  }
}

.p-message__person {
  width: 100%;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .p-message__person {
    position: relative;
    margin-top: 0;
    margin-right: calc(50% - 50vw);
  }
}

.p-message__person img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-message__person img {
    position: absolute;
  }
}

.p-messsage__bottom {
  max-width: 37.5rem;
  width: 100%;
  padding: 0 0.9375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-messsage__bottom {
    max-width: 69.375rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0;
    margin-top: 4.375rem;
  }
}

.p-message__img {
  width: 100%;
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-message__img {
    margin-top: 0;
    max-width: 38.4375rem;
  }
}

.p-message__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 345/160;
}
@media screen and (min-width: 768px) {
  .p-message__img img {
    aspect-ratio: 615/284;
  }
}

.p-message__description {
  line-height: 1.8;
  margin-top: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-message__description {
    font-size: 1.125rem;
    line-height: 2.7;
    margin-top: 0;
    margin-left: 6.4375rem;
  }
}

.p-top {
  position: relative;
  display: block;
  overflow: hidden;
}

.p-top__person {
  position: absolute;
  max-width: 13.8125rem;
  width: 100%;
  top: 12.75rem;
  right: -2.3125rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-top__person {
    max-width: 31.9375rem;
    top: 8.1875rem;
    right: 0;
  }
}

.p-top__person img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 221/294;
}
@media screen and (min-width: 768px) {
  .p-top__person img {
    aspect-ratio: 511/784;
  }
}

.p-top__drink {
  position: absolute;
  max-width: 23.8125rem;
  width: 100%;
  top: 29.25rem;
  left: 0;
  z-index: -1;
}

.p-top__drink img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 381/510;
}

.p-top__inner.l-inner {
  padding: 0 2rem;
}
@media screen and (min-width: 768px) {
  .p-top__inner.l-inner {
    max-width: 84.875rem;
    width: 100%;
    padding: 0 1.25rem;
    margin-left: auto;
  }
}

.p-top__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-top__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

.p-top__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-top__list li {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .p-top__list li:not(:first-child) {
    margin-left: 1.0625rem;
  }
}

@media screen and (min-width: 768px) {
  .p-top__list-link {
    display: inline-block;
    font-size: 1.125rem;
    font-weight: 500;
  }
}

.p-top__list-link span {
  text-transform: uppercase;
}

.p-top__list-link {
  display: inline-block;
}

.p-top__btn {
  display: block;
  margin-right: 1.75rem;
}
@media screen and (min-width: 768px) {
  .p-top__btn {
    margin-right: 0;
    margin-left: 2.6875rem;
  }
}

.p-top__hamburger {
  display: block;
  margin-top: -0.375rem;
}

.p-top__content {
  position: relative;
  text-align: center;
  max-width: 25rem;
  width: 100%;
  margin-top: 3.6875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-top__content {
    margin-top: 8.5rem;
    max-width: 34.0625rem;
  }
}

.p-top__icon {
  max-width: 6.6875rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-top__icon {
    max-width: 11rem;
  }
}

.p-top__icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 107/107;
}
@media screen and (min-width: 768px) {
  .p-top__icon img {
    aspect-ratio: 176/176;
  }
}

.p-top__logo {
  max-width: 5.125rem;
  width: 100%;
  margin-top: 0.625rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-top__logo {
    max-width: 8.3125rem;
    margin-top: 1.4375rem;
  }
}

.p-top__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 130/118;
}
@media screen and (min-width: 768px) {
  .p-top__logo img {
    aspect-ratio: 133/120;
  }
}

.p-top__name {
  display: block;
  margin-top: 0.625rem;
}

.p-top__text {
  font-size: 1.25rem;
  line-height: 1.6;
  margin-top: 6.9375rem;
}
@media screen and (min-width: 768px) {
  .p-top__text {
    margin-top: 4.625rem;
    font-size: 2rem;
    line-height: 1.7;
  }
}

.p-top__date {
  display: inline-block;
  font-size: 1.1875rem;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  color: #FFFFFF;
  min-width: 19.1875rem;
  background-color: #0E0E0E;
  padding: 0.75rem 0.625rem 0.8125rem 1.0625rem;
  margin-top: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-top__date {
    font-size: 2rem;
    min-width: 34.875rem;
    padding: 1.25rem 0.3125rem 1.25rem 0.5625rem;
    margin-top: 2.4375rem;
  }
}

.p-top__date span {
  font-size: 1.75rem;
  font-family: "Lora", serif;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-top__date span {
    font-size: 3.125rem;
  }
}

.p-top__date span:nth-child(3) {
  font-size: 0.875rem;
  font-family: "Shippori Mincho", serif;
}
@media screen and (min-width: 768px) {
  .p-top__date span:nth-child(3) {
    font-size: 1.5rem;
  }
}

.p-top__time {
  position: absolute;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-size: 1.25rem;
  top: -0.1875rem;
  right: calc(50% + 58px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-top__time {
    top: 2rem;
    right: calc(50% + 132px);
  }
}

.p-top__time span {
  text-combine-upright: all;
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}
/*# sourceMappingURL=styles.css.map */
