@charset "UTF-8";
/*------------------------------------------------------------
  変数設定
  ------------------------------------------------------------*/
/*------------------------------------------------------------
  TOP/下層共通
  ------------------------------------------------------------*/
.mainWrap {
  /* slick */
}
.mainWrap .slide-arrow {
  position: absolute;
  z-index: 10;
  cursor: pointer;
}
@media screen and (max-width: 991px) {
  .mainWrap .slide-arrow img {
    width: 20px;
  }
}
.mainWrap .slick-dots {
  display: flex;
  justify-content: center;
  padding: 2rem 0 1.5rem;
  gap: 1rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .slick-dots {
    padding: 1rem 0 1.5rem;
    gap: 0.5rem;
  }
}
.mainWrap .slick-dots li {
  transform: none !important;
  display: block !important;
  padding-left: 0 !important;
}
.mainWrap .slick-dots li.slick-active button {
  background: #909090;
}
.mainWrap .slick-dots li button {
  font-size: 0;
  width: 14px;
  height: 14px;
  border: 1px solid #707070;
  background: #fff;
  border-radius: 7px;
}
@media screen and (max-width: 991px) {
  .mainWrap .slick-dots li button {
    width: 10px;
    height: 10px;
  }
}
.mainWrap .today {
  margin-bottom: 5rem;
  gap: 0 13rem;
}
@media screen and (max-width: 1366px) {
  .mainWrap .today {
    gap: 0 7rem;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap .today {
    gap: 1.5rem 0;
  }
}
.mainWrap .today .img {
  width: 480px;
  aspect-ratio: 1/1;
  overflow: hidden;
}
@media screen and (max-width: 991px) {
  .mainWrap .today .img {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
}
.mainWrap .today .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.mainWrap .today .img a:hover img {
  transform: scale(1.05);
}
.mainWrap .today .txt {
  width: calc(100% - 480px - 13rem);
}
@media screen and (max-width: 1366px) {
  .mainWrap .today .txt {
    width: calc(100% - 480px - 7rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap .today .txt {
    width: 100%;
  }
}
.mainWrap .today .txt .todaysTtl {
  font-size: 3rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .today .txt .todaysTtl {
    font-size: 2rem;
  }
}
.mainWrap .today .txt .todaysTtlSub {
  font-size: 1.6rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .today .txt .todaysTtlSub {
    font-size: 1.5rem;
  }
}
.mainWrap .today .txt .ttl {
  font-size: 2.8rem;
  margin-bottom: 1.5rem;
  font-weight: 500;
  line-height: 40px;
}
@media screen and (max-width: 991px) {
  .mainWrap .today .txt .ttl {
    font-size: 1.8rem;
    margin-bottom: 1rem;
    margin-top: -0.5rem;
  }
}
.mainWrap .today .txt .infoTxt {
  font-size: 1.6rem;
  line-height: 35px;
}
.mainWrap .catDate {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  line-height: 18px;
}
@media screen and (max-width: 991px) {
  .mainWrap .catDate {
    font-size: 1rem;
    margin-bottom: 1rem;
  }
}
.mainWrap .catDate span {
  color: #CEA842;
  margin-right: 1rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .catDate span {
    margin-right: 0.7rem;
  }
}
.mainWrap .secFlavor {
  background: #fff;
  padding: 12rem 0 15rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor {
    padding: 5rem 0;
  }
}
.mainWrap .secFlavor .inner-l h2.baseTtl {
  position: relative;
  width: 275px;
  margin: 0 auto 4rem;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l h2.baseTtl {
    width: 170px;
    margin: 0 auto 3.5rem;
  }
}
.mainWrap .secFlavor .inner-l h2.baseTtl::after {
  content: "";
  display: block;
  position: absolute;
  background: url("/assets/img/top/seasonal-ttl.png?20250527") no-repeat;
  width: 196px;
  height: 92px;
  right: -15rem;
  bottom: 2rem;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l h2.baseTtl::after {
    width: 103px;
    height: 48px;
    background-size: 103px;
    right: -7.5rem;
  }
}
.mainWrap .secFlavor .inner-l .introTxt {
  margin-bottom: 3.5rem;
  margin-top: -3rem;
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l .introTxt {
    margin-bottom: 2rem;
    margin-top: -1rem;
    font-size: 1.5rem;
    line-height: 27px;
  }
}
.mainWrap .secFlavor .inner-l ul {
  gap: 4.5rem 3rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l ul {
    gap: 2.5rem;
    margin-bottom: 2.5rem;
  }
}
.mainWrap .secFlavor .inner-l ul li {
  font-size: 1.4rem;
  line-height: 20px;
  width: calc(16.66% - 2.5rem);
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l ul li {
    width: calc(50% - 1.25rem);
    font-size: 1.2rem;
  }
}
.mainWrap .secFlavor .inner-l ul li .imgCir {
  background: #F1F3F5;
  border-radius: 87px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  width: 100%;
  aspect-ratio: 1/1;
  position: relative;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l ul li .imgCir {
    width: 100%;
    max-width: 174px;
    margin: 0 auto 0.6rem;
  }
}
.mainWrap .secFlavor .inner-l ul li .imgCir span {
  position: absolute;
  color: #CEA842;
  top: 1.5rem;
  left: -1rem;
}
.mainWrap .secFlavor .inner-l ul li img {
  max-width: 62%;
}
.mainWrap .secFlavor .inner-l ul li .origin {
  font-size: 1.4rem;
  font-weight: 500;
}
.mainWrap .secFlavor .inner-l ul li .name {
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}
.mainWrap .secFlavor .inner-l ul li .comment {
  margin-bottom: 2rem;
  text-align: left;
}
.mainWrap .secFlavor .inner-l ul li .cat {
  background: #242526;
  color: #fff;
  height: 22px;
  display: inline-block;
  padding: 1px 2.5rem 0;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l ul li .cat {
    font-size: 1rem;
    height: 16px;
    padding: 0 2rem;
    line-height: 16px;
  }
}
.mainWrap .secFlavor .inner-l .instaStory {
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l .instaStory {
    font-size: 1.2rem;
  }
}
.mainWrap .secFlavor .inner-l .instaStory a img {
  vertical-align: -5px;
  margin-right: 0.5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap .secFlavor .inner-l .instaStory a img {
    width: 14px;
    vertical-align: -3px;
    margin-right: 0.3rem;
  }
}

/*------------------------------------------------------------
  TOP
  ------------------------------------------------------------*/
body.top header#header .navbar.top {
  position: absolute;
  top: 100vh;
}
body.top header#header .navbar.top::before {
  display: none;
}
body.top header#header .navbar.top .container-fluid {
  position: absolute;
  bottom: 8rem;
  height: auto;
  justify-content: flex-end;
  right: 8rem;
}
body.top header#header .navbar.top .container-fluid .navLeft {
  display: none;
}
body.top header#header .navbar.top .container-fluid .navRight .collapse ul li.online {
  margin-right: 3.5rem;
}
body.top header#header .navbar.top .container-fluid .navRight .collapse ul li.online a {
  background: none;
  color: #000;
  line-height: inherit;
  height: auto;
  width: auto;
  margin-left: 0;
}
body.top header#header .navbar.top .container-fluid .navRight .collapse ul li.online a img {
  filter: brightness(0);
}
body.top header#header .navbar.top .container-fluid .navRight .collapse .snsBox {
  position: static;
  flex-direction: row;
  gap: 1rem;
  margin-top: -0.9rem;
}
body.top footer#footer {
  padding-top: 6rem;
}
@media screen and (max-width: 991px) {
  body.top footer#footer {
    padding-top: 3rem;
  }
}

.mainWrap.-top .secMv {
  z-index: 0;
  height: 100vh;
  overflow: hidden;
}
.mainWrap.-top .secMv ul li img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100vh;
}
.mainWrap.-top .secMv .absBox {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(50% - 82px);
  width: 19.3vw;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMv .absBox {
    top: 5rem;
    left: 2rem;
    width: 160px;
    right: auto;
  }
}
.mainWrap.-top .secMv .absBox::after {
  content: "";
  display: block;
  background: url("/assets/img/logo02.svg") no-repeat;
  position: absolute;
  background-size: 8.1vw;
  width: 8.1vw;
  height: 81px;
  right: -7.5rem;
  bottom: -9rem;
  left: auto;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMv .absBox::after {
    width: 100px;
    background-size: 100px;
    height: 52px;
    bottom: -5rem;
    right: -2rem;
  }
}
.mainWrap.-top .secMv .scroll {
  display: none;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMv .scroll {
    position: absolute;
    top: 90vh;
    left: 0;
    right: 0;
    text-align: center;
  }
}
.mainWrap.-top .secMv .scroll span {
  animation: top-scroll 3s linear infinite;
  display: block;
  width: 1px;
  background: #000;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMv .scroll span {
    animation: top-scroll-sp 2s linear infinite;
  }
}
.mainWrap.-top .secMv .scroll p {
  font-size: 1.2rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  color: #000;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMv .scroll p {
    font-size: 1rem;
    position: absolute;
    top: -2rem;
    left: 0;
    right: 0;
  }
}
@keyframes top-scroll {
  0% {
    height: 0;
  }
  100% {
    height: 100px;
  }
}
@keyframes top-scroll-sp {
  0% {
    height: 0;
  }
  100% {
    height: 25px;
  }
}
.mainWrap.-top .secAbout {
  background: #F1F3F5;
  padding-top: 10rem;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout {
    padding: 5.5rem 0 5rem;
    overflow: hidden;
  }
}
.mainWrap.-top .secAbout::before, .mainWrap.-top .secAbout::after {
  content: "";
  display: block;
  position: absolute;
  width: 1920px;
  height: 700px;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout::before, .mainWrap.-top .secAbout::after {
    width: 1200px;
    height: 560px;
    background-size: 1200px !important;
  }
}
.mainWrap.-top .secAbout::before {
  background: url("/assets/img/top/about-bg1.jpg") no-repeat;
  top: 0;
}
.mainWrap.-top .secAbout::after {
  background: url("/assets/img/top/about-bg2.jpg") no-repeat;
  bottom: 0;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout::after {
    display: none;
  }
}
.mainWrap.-top .secAbout .flex1 {
  padding-left: 8.9vw;
  gap: 0 7rem;
  margin-bottom: 10rem;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex1 {
    padding-left: 5rem;
    gap: 0 5rem;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex1 {
    padding: 0 2rem;
    gap: 3.5rem 0;
    margin-bottom: 3rem;
  }
}
.mainWrap.-top .secAbout .flex1 .txt {
  width: 620px;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex1 .txt {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex1 .txt {
    width: 100%;
  }
}
.mainWrap.-top .secAbout .flex1 h2.baseTtl span {
  font-family: trajan-pro-3, serif;
  font-weight: 600;
}
.mainWrap.-top .secAbout .flex1 .img {
  width: calc(100% - 620px - 7rem);
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex1 .img {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex1 .img {
    width: 100%;
  }
}
.mainWrap.-top .secAbout .flex2 {
  padding-right: 12rem;
  gap: 0 7rem;
  margin-bottom: 9.5rem;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex2 {
    padding: 0 2rem;
    gap: 0 5rem;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex2 {
    padding-right: 0;
    gap: 3rem 0;
    margin-bottom: 3rem;
  }
}
.mainWrap.-top .secAbout .flex2 .img {
  width: calc(100% - 665px - 7rem);
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex2 .img {
    width: calc(100% - 480px - 5rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex2 .img {
    width: 80%;
    margin-left: -2rem;
  }
}
.mainWrap.-top .secAbout .flex2 .img video {
  width: 100%;
}
.mainWrap.-top .secAbout .flex2 .txt {
  width: 665px;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .flex2 .txt {
    width: 480px;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex2 .txt {
    width: 100%;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex3 .txt {
    order: 2;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex3 .img {
    order: 1;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .flex3 .img img {
    margin-left: 2rem;
  }
}
.mainWrap.-top .secAbout .gallery {
  gap: 0 8rem;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .gallery {
    gap: 0 5rem;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery {
    gap: 3.5rem 0;
  }
}
.mainWrap.-top .secAbout .gallery .img {
  width: calc(100% - 665px - 8rem);
  max-width: 1048px;
  flex-wrap: nowrap;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .gallery .img {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery .img {
    width: 100%;
    flex-wrap: wrap;
    flex-direction: column;
  }
}
.mainWrap.-top .secAbout .gallery .img img {
  width: 50%;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery .img img {
    width: 80%;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery .img img:nth-child(1) {
    margin-right: -2rem;
    margin-left: auto;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery .img img:nth-child(2) {
    margin-left: -2rem;
  }
}
.mainWrap.-top .secAbout .gallery .txt {
  width: 665px;
  padding-right: 1rem;
}
@media screen and (max-width: 1366px) {
  .mainWrap.-top .secAbout .gallery .txt {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secAbout .gallery .txt {
    padding: 0 2rem;
    width: 100%;
  }
}
.mainWrap.-top .secNews {
  background: url("/assets/img/top/news-bg.jpg") no-repeat;
  background-size: cover;
  padding: 10rem 0 5.5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews {
    padding: 5rem 0 5rem;
  }
}
.mainWrap.-top .secNews h2.baseTtl {
  margin-bottom: 2rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews h2.baseTtl {
    margin-bottom: 3.5rem;
  }
}
.mainWrap.-top .secNews ul {
  gap: 0 3rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews ul {
    gap: 3rem 1.5rem;
  }
}
.mainWrap.-top .secNews ul li {
  width: calc(33.33% - 2rem);
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews ul li {
    width: calc(50% - 0.75rem);
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews ul li.line {
    width: 100%;
  }
}
.mainWrap.-top .secNews ul li a .img {
  margin-bottom: 1rem;
  aspect-ratio: 1/1;
  overflow: hidden;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews ul li a .img {
    max-width: 378px;
    margin: 0 auto 1.5rem;
  }
}
.mainWrap.-top .secNews ul li a .img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.mainWrap.-top .secNews ul li a .img:hover img {
  transform: scale(1.05);
}
.mainWrap.-top .secNews ul li a .ttl {
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secNews ul li a .ttl {
    font-size: 1.2rem;
  }
}
.mainWrap.-top .secNews .baseLinkBtn a {
  background: #fff;
  margin-top: 5rem;
}
.mainWrap.-top .secNews .baseLinkBtn a:hover {
  background: #242526;
}
.mainWrap.-top .secFlavor .inner-l h2.baseTtl::after {
  display: none;
}
.mainWrap.-top .secOnline {
  background: #F1F3F5 url("/assets/img/top/online-bg.png") no-repeat;
  padding: 10rem 0 12rem;
  background-size: cover;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline {
    padding: 5rem 0;
  }
}
.mainWrap.-top .secOnline ul {
  gap: 0 3rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline ul {
    gap: 2.5rem 1.5rem;
    margin-bottom: 3rem;
  }
}
.mainWrap.-top .secOnline ul li {
  width: calc(25% - 2.25rem);
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline ul li {
    width: calc(50% - 0.75rem);
  }
}
.mainWrap.-top .secOnline ul li a .thumb {
  overflow: hidden;
  width: 100%;
  max-width: 277px;
  margin: 0 auto 1.5rem;
}
.mainWrap.-top .secOnline ul li a .thumb:hover img {
  transform: scale(1.05);
}
.mainWrap.-top .secOnline ul li a .ttl {
  font-size: 1.6rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline ul li a .ttl {
    font-size: 1.2rem;
    max-width: 277px;
    margin-left: auto;
    margin-right: auto;
  }
}
.mainWrap.-top .secOnline ul li a .price {
  font-size: 1.2rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline ul li a .price {
    font-size: 1rem;
    margin-bottom: 1.5rem;
    max-width: 277px;
    margin-left: auto;
    margin-right: auto;
  }
}
.mainWrap.-top .secOnline ul li a .viewDetail {
  background: #CEA842;
  color: #fff;
  width: 140px;
  height: 30px;
  text-align: center;
  font-size: 1.5rem;
  line-height: 30px;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secOnline ul li a .viewDetail {
    font-size: 1.2rem;
    width: 90px;
    height: 20px;
    line-height: 20px;
  }
}
.mainWrap.-top .secBanner {
  background: #fff;
}
.mainWrap.-top .secBanner .banInner a {
  width: 50%;
  overflow: hidden;
  position: relative;
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secBanner .banInner a {
    width: 100%;
    height: 220px;
  }
}
.mainWrap.-top .secBanner .banInner a:hover .ttl::after {
  width: 100%;
}
.mainWrap.-top .secBanner .banInner a img {
  position: absolute;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secBanner .banInner a img {
    width: 100%;
  }
}
.mainWrap.-top .secBanner .banInner a .ttl {
  color: #fff;
  display: inline-block;
  font-size: 4.2rem;
  position: relative;
  line-height: 1.4;
  padding: 0 1rem;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secBanner .banInner a .ttl {
    font-size: 2.5rem;
    padding: 0 2rem;
  }
}
.mainWrap.-top .secBanner .banInner a .ttl::after {
  content: "";
  display: block;
  background: #fff;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secBanner .banInner a .ttl::after {
    width: 120px !important;
    right: 0;
    margin: 0 auto;
  }
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secBanner .banInner a:nth-child(2) .ttl {
    margin-top: 3rem;
  }
}
.mainWrap.-top .secMovie {
  background: #242526;
  position: relative;
  overflow: hidden;
  margin-bottom: -6rem;
  z-index: 1;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMovie {
    margin-bottom: -2rem;
  }
}
.mainWrap.-top .secMovie::before, .mainWrap.-top .secMovie::after {
  content: "";
  display: block;
  position: absolute;
  height: 150px;
  width: 1920px;
}
@media screen and (max-width: 991px) {
  .mainWrap.-top .secMovie::before, .mainWrap.-top .secMovie::after {
    width: 1200px;
    height: 93.75px;
    background-size: 1200px !important;
  }
}
.mainWrap.-top .secMovie::before {
  background: url("/assets/img/top/movie-bg1.png") no-repeat;
  top: -4rem;
}
.mainWrap.-top .secMovie::after {
  background: url("/assets/img/top/movie-bg2.png") no-repeat;
  bottom: -4rem;
}
.mainWrap.-top .secMovie video {
  max-width: 100%;
}
/*------------------------------------------------------------
  下層ページ共通
  ------------------------------------------------------------*/
body.-sub section {
  padding: 10rem 0 15rem;
}
@media screen and (max-width: 991px) {
  body.-sub section {
    padding: 5rem 0;
  }
}
body.-sub .secMv {
  padding-top: 8rem;
  padding-bottom: 0;
}
@media screen and (max-width: 991px) {
  body.-sub .secMv {
    padding-top: 6rem;
    max-height: calc(250px + 6rem);
    overflow: hidden;
  }
}
@media screen and (max-width: 991px) {
  body.-sub .secMv ul li.slick-slide img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    width: 100%;
    height: 250px;
  }
}
body.-sub .secMv .ttlBox {
  position: absolute;
  color: #fff;
  top: 79%;
  left: 0;
  right: 0;
  text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 991px) {
  body.-sub .secMv .ttlBox {
    top: calc(100% - 9.5rem);
  }
}
body.-sub .secMv .ttlBox h1 {
  font-size: 6rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 991px) {
  body.-sub .secMv .ttlBox h1 {
    font-size: 3.8rem;
  }
}
body.-sub .secMv .ttlBox p {
  margin-top: -0.7rem;
}
@media screen and (max-width: 991px) {
  body.-sub .secMv .ttlBox p {
    font-size: 0.9rem;
    margin-top: -0.5rem;
  }
}
body.-sub h2.baseTtl {
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 991px) {
  body.-sub h2.baseTtl {
    margin-bottom: 2.5rem;
  }
}
body.-sub .sep {
  background: #CCCCCC;
  height: 1px;
  width: 100%;
}
body.-sub .sepIcon {
  background: url("/assets/img/menu/sep-logo.png?20250530") no-repeat;
  width: 100%;
  height: 36px;
  background-size: 36px;
  background-position: center;
  display: flex;
  align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 991px) {
  body.-sub .sepIcon {
    height: 26px;
    background-size: 26px;
    gap: 1.3rem;
  }
}
body.-sub .sepIcon::before, body.-sub .sepIcon::after {
  content: "";
  display: block;
  height: 1px;
  background: #CCCCCC;
  flex-grow: 1;
}
body.-sub .sepIcon span {
  width: 36px;
}
@media screen and (max-width: 991px) {
  body.-sub .sepIcon span {
    width: 26px;
  }
}

/*------------------------------------------------------------
  下層ページ
  ------------------------------------------------------------*/
body.menu .introTxt {
  margin-bottom: 3.5rem;
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  body.menu .introTxt {
    margin-bottom: 2rem;
    font-size: 1.5rem;
    line-height: 25px;
  }
}
body.menu .itemName {
  margin-bottom: 1rem;
  font-size: 2.8rem;
  font-weight: 500;
}
@media screen and (max-width: 991px) {
  body.menu .itemName {
    font-size: 2rem;
  }
}
body.menu .itemName span {
  font-size: 1.8rem;
  margin-left: 2rem;
}
@media screen and (max-width: 991px) {
  body.menu .itemName span {
    font-size: 1.2rem;
    margin-left: 1rem;
  }
}
body.menu .priceTxt {
  margin-bottom: -0.3rem;
  font-weight: 500;
}
@media screen and (max-width: 991px) {
  body.menu .priceTxt {
    font-size: 1.2rem;
  }
}
body.menu .price {
  letter-spacing: -0.03em;
  font-size: 2.8rem;
}
@media screen and (max-width: 991px) {
  body.menu .price {
    font-size: 1.8rem;
  }
}
body.menu .price span {
  font-size: 1.8rem;
}
@media screen and (max-width: 991px) {
  body.menu .price span {
    font-size: 1.2rem;
  }
}
body.menu .flexBox {
  gap: 0 13rem;
  flex-wrap: nowrap;
}
@media screen and (max-width: 1366px) {
  body.menu .flexBox {
    gap: 0 7rem;
  }
}
body.menu .secGelato {
  padding-bottom: 5.5rem;
}
body.menu .secGelato .gelatoInner {
  width: 990px;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner {
    width: 100%;
  }
}
body.menu .secGelato .gelatoInner .itemFlex {
  gap: 0 3rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .itemFlex {
    gap: 3.5rem 0;
    padding: 0 2rem;
    flex-direction: column;
    max-width: 650px;
    margin: 0 auto 3.5rem;
  }
}
body.menu .secGelato .gelatoInner .itemFlex .itemBox {
  width: calc(50% - 1.5rem);
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .itemFlex .itemBox {
    width: 280px;
  }
}
body.menu .secGelato .gelatoInner .itemFlex .itemBox img {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .itemFlex .itemBox img {
    margin-bottom: 1.5rem;
  }
}
body.menu .secGelato .gelatoInner .itemFlex .itemBox .itemName span {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .itemFlex .itemBox:nth-child(2) {
    margin-right: 0;
    margin-left: auto;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .btmInfo {
    padding: 0 2rem;
  }
}
body.menu .secGelato .gelatoInner .btmInfo .info1 {
  margin-bottom: 2rem;
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .btmInfo .info1 {
    font-size: 1.2rem;
    margin-bottom: 3rem;
  }
}
body.menu .secGelato .gelatoInner .btmInfo .info2 {
  padding: 1.5rem 0 5rem;
  font-size: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secGelato .gelatoInner .btmInfo .info2 {
    padding: 1.5rem 0 3.5rem;
    font-size: 1.2rem;
  }
}
body.menu .secTopping {
  padding-top: 0;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping {
    overflow: inherit;
  }
}
body.menu .secTopping .inner-l h2.baseTtl {
  position: relative;
  z-index: 0;
  margin-bottom: 7rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l h2.baseTtl {
    margin-bottom: 3rem;
  }
}
body.menu .secTopping .inner-l h2.baseTtl::after {
  content: "";
  display: block;
  background: url("/assets/img/menu/ttl-topping.png?20250527") no-repeat;
  position: absolute;
  width: 159px;
  height: 64px;
  bottom: 2.5rem;
  left: calc(50% - 20rem);
  z-index: -1;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l h2.baseTtl::after {
    width: 95px;
    height: 38px;
    background-size: 95px;
    left: calc(50% - 11rem);
    bottom: 1.5rem;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox {
    gap: 1.5rem 0;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox .left {
    order: 2;
    width: 100%;
  }
}
body.menu .secTopping .inner-l .flexBox .left .itemName {
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox .left .itemName {
    margin-bottom: 0.5rem;
  }
}
body.menu .secTopping .inner-l .flexBox .left .price {
  margin-bottom: 2rem;
}
body.menu .secTopping .inner-l .flexBox .left .readTxt {
  margin-bottom: 3.5rem;
  width: 582px;
  font-size: 1.6rem;
  line-height: 35px;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox .left .readTxt {
    width: 100%;
    font-size: 1.5rem;
    line-height: 27px;
  }
}
body.menu .secTopping .inner-l .flexBox .left .notes {
  font-size: 1.4rem;
  padding-top: 1.5rem;
  line-height: 20px;
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox .left .notes {
    font-size: 1.2rem;
    line-height: 18px;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secTopping .inner-l .flexBox .right {
    max-width: 480px;
  }
}
body.menu .secDrink {
  background: url("/assets/img/menu/drink-bg.jpg") no-repeat;
  padding: 0 0 8rem;
  background-position: center bottom;
}
@media screen and (max-width: 991px) {
  body.menu .secDrink {
    background: url("/assets/img/menu/drink-bg-sp.jpg?202506031757") no-repeat;
    padding: 0 0 3.5rem;
    background-position: bottom center;
    background-size: 100%;
  }
}
body.menu .secDrink .inner-l .drinkBox {
  width: 490px;
  margin-left: auto;
  margin-right: 10rem;
}
@media screen and (max-width: 991px) {
  body.menu .secDrink .inner-l .drinkBox {
    width: 100%;
    margin-right: 0;
  }
}
body.menu .secDrink .inner-l .drinkBox h2.baseTtl {
  margin-bottom: 1rem;
}
@media screen and (max-width: 991px) {
  body.menu .secDrink .inner-l .drinkBox h2.baseTtl {
    text-align: center;
    margin-bottom: 2.5rem;
  }
}
body.menu .secDrink .inner-l .drinkBox .menu {
  align-items: baseline;
}
body.menu .secDrink .inner-l .drinkBox .menu .itemName {
  min-width: 260px;
  padding-right: 2rem;
  margin-bottom: 0.3rem;
  font-weight: 400;
}
@media screen and (max-width: 991px) {
  body.menu .secDrink .inner-l .drinkBox .menu .itemName {
    min-width: 205px;
    padding-right: 1rem;
  }
}
body.menu .secDrink .inner-l .drinkBox .menu .itemName span {
  margin-left: 0;
}
body.menu .secParfait {
  padding: 0 0 1px;
  background: #F1F3F5;
}
body.menu .secParfait .inner-l .sepIcon {
  margin-bottom: 8rem;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .sepIcon {
    margin-bottom: 4rem;
  }
}
body.menu .secParfait .inner-l h2.baseTtl {
  margin-bottom: 2.5rem;
  position: relative;
  z-index: 0;
}
body.menu .secParfait .inner-l h2.baseTtl::after {
  content: "";
  display: block;
  background: url("/assets/img/menu/ttl-parfait.png?20250527") no-repeat;
  position: absolute;
  width: 156px;
  height: 61px;
  bottom: 7.5rem;
  left: calc(50% - 22rem);
  z-index: -1;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l h2.baseTtl::after {
    width: 109px;
    background-size: 109px;
    height: 42px;
    left: calc(50% - 11rem);
    bottom: 5.5rem;
  }
}
body.menu .secParfait .inner-l .flexBox {
  margin-bottom: 10rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox {
    margin-bottom: 5rem;
  }
}
body.menu .secParfait .inner-l .flexBox .img {
  width: 480px;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .img {
    width: 100%;
    max-width: 480px;
    margin-bottom: 2rem;
    margin-left: 0;
  }
}
body.menu .secParfait .inner-l .flexBox .img > img {
  margin-bottom: 1.5rem;
}
body.menu .secParfait .inner-l .flexBox .img .itemName {
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .img .price {
    margin-bottom: 2rem;
  }
}
body.menu .secParfait .inner-l .flexBox .txt {
  width: calc(100% - 480px - 13rem);
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .txt {
    width: 100%;
  }
}
body.menu .secParfait .inner-l .flexBox .bottom {
  width: 100%;
  margin-top: 3rem;
}
body.menu .secParfait .inner-l .flexBox .bottom .btmTtl {
  font-size: 2rem;
  color: #CEA842;
  padding-bottom: 1.5rem;
  font-weight: 500;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .bottom .btmTtl {
    font-size: 1.2rem;
  }
}
body.menu .secParfait .inner-l .flexBox .bottom .btmTtl span {
  font-size: 1.5rem;
  color: #fff;
  background: #CEA842;
  display: inline-block;
  height: 30px;
  line-height: 30px;
  padding: 0 1.2rem;
  margin-right: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .bottom .btmTtl span {
    font-size: 1rem;
    height: 21px;
    line-height: 21px;
    padding: 0 1rem;
    margin-right: 0.6rem;
  }
}
body.menu .secParfait .inner-l .flexBox .bottom .notes {
  font-size: 1.4rem;
  padding-top: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox .bottom .notes {
    font-size: 1.2rem;
  }
}
body.menu .secParfait .inner-l .flexBox.p3 .price {
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox.p3 .price {
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox.p3 .left {
    order: 2;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox.p3 .right {
    order: 1;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secParfait .inner-l .flexBox.p3 .bottom {
    order: 3;
  }
}
body.menu .secTakeout {
  padding: 10rem 0 10.5rem;
  background: url("/assets/img/menu/gift-bg.jpg") no-repeat;
  background-position: center bottom;
  background-size: 100%;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout {
    padding: 5rem 0 8rem;
    background: url("/assets/img/menu/gift-bg-sp.jpg") no-repeat;
    background-position: center bottom;
    background-size: 100%;
  }
}
body.menu .secTakeout .takeInner {
  width: 786px;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner {
    width: 100%;
    padding: 0 2rem;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner h2.baseTtl {
    margin-bottom: 2.5rem;
  }
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .introTxt {
    margin-bottom: 3rem;
  }
}
body.menu .secTakeout .takeInner .takeImg {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .takeImg {
    max-width: 786px;
    margin: 0 auto 1.5rem;
    display: block;
    width: 100%;
  }
}
body.menu .secTakeout .takeInner .itemName {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .itemName span.lgBr {
    display: block;
    margin-left: 0;
    font-size: 1.5rem;
  }
}
body.menu .secTakeout .takeInner .menuBox {
  margin-bottom: 5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .menuBox {
    margin-bottom: 1.5rem;
  }
}
body.menu .secTakeout .takeInner .menuBox .menu .itemName {
  min-width: 8rem;
  margin-bottom: 0;
  padding-right: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .menuBox .menu .itemName {
    min-width: 5rem;
  }
}
body.menu .secTakeout .takeInner .menuBox .menu .itemName span {
  margin-left: 0;
}
body.menu .secTakeout .takeInner .takeNotes {
  line-height: 37px;
  margin-bottom: 10rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .takeInner .takeNotes {
    font-size: 1.2rem;
    line-height: 20px;
    margin-bottom: 4rem;
  }
}
body.menu .secTakeout .inner-l .giftTxtBox {
  padding-top: 9rem;
  margin-bottom: 9rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .inner-l .giftTxtBox {
    padding-top: 4rem;
    margin-bottom: 3.5rem;
  }
}
body.menu .secTakeout .inner-l .giftTxtBox h2.baseTtl {
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .inner-l .giftTxtBox h2.baseTtl {
    text-align: center;
  }
}
body.menu .secTakeout .inner-l .giftTxtBox .itemName {
  margin-bottom: 3rem;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .inner-l .giftTxtBox .itemName {
    margin-bottom: 1.5rem;
  }
}
body.menu .secTakeout .inner-l .giftTxtBox .readTxt {
  max-width: 582px;
}
body.menu .secTakeout .inner-l .baseLinkBtn a {
  width: 320px;
}
@media screen and (max-width: 991px) {
  body.menu .secTakeout .inner-l .baseLinkBtn a {
    width: 250px;
  }
}
body.menu .secTakeout .inner-l .baseLinkBtn a img {
  display: inline-block;
  vertical-align: -3px;
  margin-right: 1rem;
}
body.flavor .secFlavor {
  padding: 10rem 0 5.5rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor {
    padding: 5rem 0 3rem;
  }
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l .h2.baseTtl {
    right: -8.5rem;
    bottom: 1.5rem;
  }
}
body.flavor .secFlavor .inner-l .instaStory {
  margin: -2.5rem 0 3.5rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l .instaStory {
    font-size: 1.5rem;
    margin: -1.5rem 0 1rem;
    line-height: 25px;
  }
}
body.flavor .secFlavor .inner-l .readRight {
  font-size: 1.4rem;
  text-align: right;
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l .readRight {
    font-size: 1.2rem;
    text-align: center;
  }
}
body.flavor .secFlavor .inner-l .readRight span {
  color: #CEA842;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l .readRight .alleBox {
    margin-top: 0.5rem;
  }
}
body.flavor .secFlavor .inner-l .alleBox {
  font-size: 1.2rem;
  border-radius: 3px;
  border: 1px solid #666666;
  color: #666666;
  display: inline-block;
  line-height: 16px;
  padding: 0.1rem 0.7rem 0.2rem 0.7rem;
}
body.flavor .secFlavor .inner-l ul {
  gap: 6rem 5rem;
  margin-bottom: 6rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul {
    gap: 4rem 0;
    margin-bottom: 4rem;
  }
}
body.flavor .secFlavor .inner-l ul li {
  width: calc(20% - 4rem);
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul li {
    width: 100%;
    display: flex;
  }
}
body.flavor .secFlavor .inner-l ul li .imgCir {
  max-width: 174px;
  margin: 0 auto 1.5rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul li .imgCir {
    max-width: 150px;
  }
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul li .imgCir span {
    left: 0;
    top: 0.5rem;
  }
}
body.flavor .secFlavor .inner-l ul li .origin,
body.flavor .secFlavor .inner-l ul li .name {
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul li .origin,
  body.flavor .secFlavor .inner-l ul li .name {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l ul li .lgRight {
    text-align: left;
    padding-left: 2rem;
    width: calc(100% - 150px);
  }
}
body.flavor .secFlavor .inner-l .baseLinkBtn a {
  cursor: pointer;
}
body.flavor .secFlavor .inner-l .baseLinkBtn a:hover {
  color: #fff;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor .inner-l .baseLinkBtn a:hover {
    color: #242526;
    background: #fff;
  }
}
body.flavor .secFlavor.secStandard {
  padding: 0 0 17rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor.secStandard {
    padding: 0px 0 6rem;
  }
}
body.flavor .secFlavor.secStandard .sepIcon {
  margin-bottom: 8rem;
}
@media screen and (max-width: 991px) {
  body.flavor .secFlavor.secStandard .sepIcon {
    margin-bottom: 5rem;
  }
}
body.flavor .secFlavor.secStandard h2.baseTtl {
  margin-bottom: 2rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo section {
    width: 100%;
    overflow: hidden;
  }
}
body.shopInfo .shopName {
  font-size: 2.8rem;
  font-weight: 500;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .shopName {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}
body.shopInfo .shopName span {
  font-size: 3rem;
  margin-right: 0.7rem;
  vertical-align: -1px;
}
@media screen and (max-width: 991px) {
  body.shopInfo .shopName span {
    font-size: 2rem;
  }
}
body.shopInfo .secShop {
  padding-bottom: 0;
}
body.shopInfo .secShop .inner-l .introTxt {
  margin-bottom: 3.5rem;
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .introTxt {
    font-size: 1.5rem;
    line-height: 27px;
    margin-bottom: 2rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox {
  margin-bottom: 11rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox {
    font-size: 1.5rem;
    margin-bottom: 5rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum {
  gap: 0 13rem;
  margin-bottom: 6rem;
  align-items: flex-start;
}
@media screen and (max-width: 1366px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum {
    gap: 0 5rem;
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum {
    gap: 2rem 0;
    margin-bottom: 3.5rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum > img {
  width: 582px;
}
@media screen and (max-width: 1366px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum > img {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum > img {
    width: 100%;
    margin: 0 auto;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox {
  width: calc(100% - 582px - 13rem);
}
@media screen and (max-width: 1366px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox {
    width: calc(50% - 2.5rem);
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox {
    width: 100%;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox .address {
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox .address {
    margin-bottom: 2rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px dotted #000;
  gap: 0.5rem 0;
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl dt {
  font-weight: normal;
  width: 100px;
  position: relative;
  padding-left: 1.2rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl dt {
    padding-left: 1rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl dt::before {
  content: "";
  display: block;
  position: absolute;
  width: 3px;
  height: 18px;
  background: #ccc;
  left: 0rem;
  top: 0.4rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl dt::before {
    height: 15px;
    top: 0.5rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox dl dd {
  width: calc(100% - 100px);
}
body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox .notes {
  font-size: 1.4rem;
  line-height: 25px;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSum .txtBox .notes {
    font-size: 1.2rem;
    line-height: 18px;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSub {
  gap: 0 13rem;
  align-items: flex-start;
  margin-bottom: 5rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSub {
    gap: 3.5rem 0;
    margin-bottom: 3.5rem;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSub .parking {
  width: 378px;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSub .parking {
    width: 100%;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSub .parking .ttl {
  font-size: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSub .parking img {
    max-width: 378px;
    margin: 0 auto;
    display: block;
    width: 100%;
  }
}
body.shopInfo .secShop .inner-l .shopBox .infoSub > img {
  width: calc(100% - 378px - 13rem);
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .infoSub > img {
    width: 100%;
    margin: 0 auto;
  }
}
body.shopInfo .secShop .inner-l .shopBox .gMap {
  width: 786px;
  aspect-ratio: 786/440;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox .gMap {
    width: 100%;
    aspect-ratio: 3/2;
    max-width: 780px;
  }
}
body.shopInfo .secShop .inner-l .shopBox .gMap iframe {
  width: 100%;
  height: 100%;
}
body.shopInfo .secShop .inner-l .shopBox.shimizu .infoSub img {
  width: 786px;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .shopBox.shimizu .infoSub img {
    width: 100%;
    max-width: 780px;
  }
}
body.shopInfo .secShop .inner-l .sepIcon {
  margin-bottom: 10rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secShop .inner-l .sepIcon {
    margin-bottom: 5rem;
  }
}
body.shopInfo .secAtrie {
  background: #F1F3F5 url("/assets/img/shop-info/atrie-bg.png?20250527") no-repeat;
  background-position: center bottom;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie {
    padding-top: 3.5rem;
    padding-bottom: 15rem;
    background: #F1F3F5 url("/assets/img/shop-info/atrie-bg-sp.png") no-repeat;
    background-size: 100%;
    background-position: center bottom;
  }
}
body.shopInfo .secAtrie .inner-l .flexBox {
  gap: 0 13rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox {
    gap: 0;
  }
}
body.shopInfo .secAtrie .inner-l .flexBox .left {
  width: 582px;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox .left {
    width: 100%;
  }
}
body.shopInfo .secAtrie .inner-l .flexBox .left .infoTxt {
  font-size: 1.6rem;
  line-height: 28px;
  margin-top: -0.5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox .left .infoTxt {
    font-size: 1.5rem;
    line-height: 27px;
    margin-top: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox .left .infoTxt .lgImg {
    margin-bottom: 3.5rem;
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox .left .infoTxt .lgImg .img1 {
    margin-left: 0;
    margin-right: auto;
    width: 75%;
    max-width: 480px;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 991px) {
  body.shopInfo .secAtrie .inner-l .flexBox .left .infoTxt .lgImg .img2 {
    margin-right: 0;
    width: 75%;
    max-width: 378px;
  }
}
body.shopInfo .secAtrie .inner-l .flexBox .left img {
  margin-right: -10rem;
  margin-left: auto;
  display: block;
}
body.shopInfo .secAtrie .inner-l .flexBox .right {
  width: calc(100% - 582px - 13rem);
}
body.news .secMv {
  height: calc(350px + 8rem);
}
@media screen and (max-width: 991px) {
  body.news .secMv {
    height: calc(250px + 6rem);
  }
}
body.news .secMv::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
body.news .secMv img {
  position: absolute;
  left: 0;
  top: 8rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  height: calc(100% - 8rem);
}
@media screen and (max-width: 991px) {
  body.news .secMv img {
    top: 6rem;
    height: calc(100% - 6rem);
    width: 100%;
  }
}
body.news .secMv .inner-l {
  position: relative;
  height: 100%;
  z-index: 1;
}
body.news .secMv .inner-l h1 {
  position: absolute;
  color: #fff;
  font-size: 6rem;
  text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 6px;
  bottom: 5rem;
  left: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.news .secMv .inner-l h1 {
    text-align: center;
    width: 100%;
    font-size: 3.8rem;
    left: 0;
  }
}
body.news .secMv .inner-l h1 span {
  font-size: 1.8rem;
  display: block;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
@media screen and (max-width: 991px) {
  body.news .secMv .inner-l h1 span {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 991px) {
  body.news .secNewsList {
    padding-bottom: 10rem;
  }
}
body.news .secNewsList .inner-l ul {
  gap: 10rem 3rem;
  margin-bottom: 10rem;
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l ul {
    gap: 3.5rem 1.5rem;
    margin-bottom: 5rem;
  }
}
body.news .secNewsList .inner-l ul li {
  width: calc(25% - 2.25rem);
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l ul li {
    width: calc(50% - 0.75rem);
  }
}
body.news .secNewsList .inner-l ul li:hover .thumb img {
  transform: scale(1.05);
}
body.news .secNewsList .inner-l ul li .thumb {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  margin-bottom: 1rem;
}
body.news .secNewsList .inner-l ul li .thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
body.news .secNewsList .inner-l ul li .ttl {
  font-size: 1.6rem;
  line-height: 28px;
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l ul li .ttl {
    font-size: 1.2rem;
    line-height: 18px;
  }
}
body.news .secNewsList .inner-l .catLinks {
  width: 780px;
  margin: 0 auto;
  text-align: center;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 3.5rem 0;
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l .catLinks {
    width: 100%;
    padding: 2rem 0;
  }
}
body.news .secNewsList .inner-l .catLinks .ttl {
  font-size: 3rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l .catLinks .ttl {
    font-size: 2rem;
    margin-bottom: 1rem;
  }
}
body.news .secNewsList .inner-l .catLinks .links {
  justify-content: center;
  gap: 0 3.5rem;
}
@media screen and (max-width: 991px) {
  body.news .secNewsList .inner-l .catLinks .links {
    gap: 0.5rem 0.8rem;
  }
}
body.news .secNewsList .inner-l .catLinks .links a:hover,
body.news .secNewsList .inner-l .catLinks .links a.active {
  border-bottom: 1px solid #000;
}
body.newsDetail .secNewsList .inner-l .detailInner {
  width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner {
    width: 100%;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .catDate {
  font-size: 1.4rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .catDate {
    font-size: 1.2rem;
    margin-bottom: 1rem;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .catDate span {
  color: #CEA842;
  margin-right: 1rem;
}
body.newsDetail .secNewsList .inner-l .detailInner h1 {
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 40px;
  margin-bottom: 3rem;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner h1 {
    font-size: 2rem;
    line-height: 35px;
    margin-bottom: 2rem;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .content {
  margin-bottom: 10rem;
  font-size: 1.6rem;
  line-height: 35px;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .content {
    margin-bottom: 5rem;
    font-size: 1.5rem;
    line-height: 27px;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .content p {
  margin-bottom: 3rem;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .content p {
    margin-bottom: 2rem;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .btmLinks {
  justify-content: center;
  font-size: 1.4rem;
  gap: 0 2.5rem;
  align-items: center;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .btmLinks {
    font-size: 1.2rem;
    gap: 3.5rem 0;
    justify-content: space-between;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .btmLinks .backList {
  font-size: 1.6rem;
  width: 320px;
  border: 1px solid #000;
  height: 60px;
  line-height: 60px;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .btmLinks .backList {
    order: 3;
    width: 250px;
    height: 45px;
    line-height: 45px;
    font-size: 1.2rem;
    margin: 0 auto;
  }
}
body.newsDetail .secNewsList .inner-l .detailInner .btmLinks .backList:hover {
  background: #000;
  color: #fff;
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .btmLinks a:not(.backList):nth-child(1) {
    width: 50%;
    order: 1;
    text-align: left;
  }
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .btmLinks a:not(.backList):nth-child(2) {
    width: 100%;
    order: 1;
    text-align: right;
  }
}
@media screen and (max-width: 991px) {
  body.newsDetail .secNewsList .inner-l .detailInner .btmLinks a:not(.backList):nth-child(3) {
    width: 50%;
    order: 2;
    text-align: right;
  }
}
/*------------------------------------------------------------
  Loader
  ------------------------------------------------------------*/
#loader {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  background-color: #fff;
  z-index: 10000;
  top: 0;
}
#loader.loaded {
  animation: fadeOut 0.5s forwards;
}
#loader img {
  max-width: 64px;
}
@keyframes float {
  from {
    transform: scale(1, 1);
  }
  to {
    transform: scale(1.1, 1.1);
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    display: none;
    opacity: 0;
    z-index: -1;
  }
}/*# sourceMappingURL=page.css.map */