@charset "UTF-8";
/* -------------------------------------
カラー
------------------------------------- */
.mv-inner {
  display: flex;
  justify-content: space-between;
  height: 100vh;
  /* フォールバック */
  height: 100dvh;
  min-height: 70rem;
  max-height: 111.55rem;
  overflow: clip;
}
@media screen and (max-width: 1440px) {
  .mv-inner {
    min-height: 70rem;
    max-height: 81rem;
  }
}
@media screen and (max-width: 1024px) {
  .mv-inner {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-height: unset;
    max-height: unset;
    overflow: unset;
  }
}

.mv-left {
  width: calc(100% - 87vw);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-left: 0;
  margin-bottom: 5.3rem;
}
@media screen and (max-width: 1440px) {
  .mv-left {
    width: calc(100% - 117.6rem);
    justify-content: flex-start;
    padding-left: 5.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .mv-left {
    display: none;
  }
}

.mv-nav {
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mv-nav_list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.mv-nav_list li a {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1;
  margin-block: var(--leading-trim);
}

.mv-sns_block {
  display: flex;
  gap: 1rem;
}

.mv-sns_block-icon {
  width: 2rem;
  height: 2rem;
  transition: 0.3s;
}
@media (hover: hover) {
  .mv-sns_block-icon:hover {
    opacity: 0.6;
    transition: 0.3s;
  }
}
.mv-sns_block-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mv-right {
  width: 87vw;
  position: relative;
}
@media screen and (max-width: 1440px) {
  .mv-right {
    width: 117.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .mv-right {
    width: 62rem;
    margin-left: auto;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media screen and (max-width: 768px) {
  .mv-right {
    width: 35rem;
  }
}

.mv-swiper .swiper-slide {
  overflow: hidden;
}
.mv-swiper .swiper-slide-prev img,
.mv-swiper .swiper-slide-active img {
  -webkit-animation: zoom 6s 0.5s linear both;
          animation: zoom 6s 0.5s linear both;
}

@-webkit-keyframes zoom {
  from {
    scale: 1;
  }
  to {
    scale: 1.1;
  }
}

@keyframes zoom {
  from {
    scale: 1;
  }
  to {
    scale: 1.1;
  }
}
.mv_slider_img {
  height: 100%;
}
.mv_slider_img img {
  display: block;
}

.mv-news_block {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 59.5rem;
  background-color: #fff;
  border-radius: 1rem 0 0 0;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .mv-news_block {
    width: 96%;
    border-radius: 0.5rem;
    translate: 0 100%;
    bottom: -2rem;
    left: 0;
    right: auto;
  }
}
@media screen and (max-width: 768px) {
  .mv-news_block {
    width: 32.5rem;
  }
}
.mv-news_block .c-news-item {
  padding: 2.5rem 2.9rem 2.5rem 3rem;
  border-bottom: none;
}
@media screen and (max-width: 1024px) {
  .mv-news_block .c-news-item {
    padding: 1.5rem 2.9rem 1.5rem 3rem;
  }
}
@media screen and (max-width: 768px) {
  .mv-news_block .c-news-item {
    display: grid;
    padding: 1.5rem 1.9rem;
    gap: 1.3rem 1rem;
  }
}
.mv-news_block .c-news-ttl {
  width: 31.8rem;
  border-right: 1px solid #d9d9d9;
  padding-right: 0.5rem;
}
@media screen and (max-width: 1024px) {
  .mv-news_block .c-news-ttl {
    width: auto;
    flex: 1;
    border-right: none;
    padding-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .mv-news_block .c-news-ttl {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .mv-news_block .c-news-ttl span::before {
    opacity: 1;
  }
}
@media screen and (max-width: 1024px) {
  .mv-news_block .c-iconBox {
    display: none;
  }
}

/* -------------------------------------
about
------------------------------------- */
.about {
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}

.about-left {
  position: relative;
}

.about-inner {
  padding: 30rem 0 21rem;
}
@media screen and (max-width: 1024px) {
  .about-inner {
    padding: 30rem 0 14.7rem;
  }
}
@media screen and (max-width: 768px) {
  .about-inner {
    padding: 32.5rem 0 9.3rem;
  }
}

.about-cnt {
  display: flex;
  gap: 10.6rem;
}
@media screen and (max-width: 1024px) {
  .about-cnt {
    flex-direction: column;
    gap: 9.6rem;
  }
}

.about-img {
  width: 83.7rem;
  aspect-ratio: 637/750;
}
@media screen and (max-width: 1440px) {
  .about-img {
    width: 63.7rem;
  }
}
@media screen and (max-width: 1024px) {
  .about-img {
    width: 100%;
    height: 50rem;
  }
}
.about-img img {
  border-radius: 0 1rem 1rem 0;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .about-img img {
    border-radius: 0;
  }
}

.about-illust {
  position: absolute;
  bottom: -1.7rem;
  left: 50%;
  translate: -50% 0;
  width: 15.4rem;
  height: 15.4rem;
}
@media screen and (max-width: 1024px) {
  .about-illust {
    width: 11.55rem;
    height: 11.55rem;
  }
}
.about-illust img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-right {
  padding-top: 5.7rem;
  width: 55.2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 1440px) {
  .about-right {
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  .about-right {
    width: 100%;
    margin: 0 auto;
    padding-top: 0;
    padding-inline: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .about-right {
    width: 32.5rem;
    padding-inline: 0;
  }
}
.about-right .c-ttl .--text::after {
  bottom: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .about-right .c-ttl .--text::after {
    bottom: 0;
  }
}

.about-catch {
  position: absolute;
  top: -10.6rem;
  left: 50%;
  translate: -50% 0;
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (max-width: 1024px) {
  .about-catch {
    top: -12.4rem;
  }
}

.about-catch_text {
  width: 9.3rem;
  height: 42.5rem;
  background-color: #fff;
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: 0.15em;
  color: #0E86AA;
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  white-space: nowrap;
  padding: 3.3rem 2.6rem 0;
}
@media screen and (max-width: 1024px) {
  .about-catch_text {
    width: 6.2rem;
    height: 28.6rem;
    font-size: 2.97rem;
    padding: 2.2rem 1.6rem 0;
  }
}
.about-catch_text:nth-of-type(2) {
  margin-top: 5rem;
  padding: 3.3rem 2rem 0;
}
@media screen and (max-width: 1024px) {
  .about-catch_text:nth-of-type(2) {
    margin-top: 3.5rem;
    padding: 2.1rem 1.3rem 0;
  }
}
.about-catch_text.--strong {
  position: relative;
}
.about-catch_text.--strong::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  translate: 100% 0;
  width: 100%;
  height: 100%;
  background-color: #0E86AA;
}

.about-text {
  margin-top: 9.3rem;
}
@media screen and (max-width: 1024px) {
  .about-text {
    margin-top: 5.1rem;
  }
}
.about-text p {
  font-size: 1.9rem;
  line-height: 2.3;
}
@media screen and (max-width: 1024px) {
  .about-text p {
    font-size: 1.5rem;
  }
}
.about-text p + p {
  margin-top: 5.4rem;
}
@media screen and (max-width: 1024px) {
  .about-text p + p {
    margin-top: 3.3rem;
  }
}

.about-gallery {
  margin-top: 24rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery {
    margin-top: 9.2rem;
  }
}

.about-gallery_list {
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery_list {
    gap: 1rem;
  }
}
.about-gallery_list li {
  width: 45.7rem;
  height: 30.6rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery_list li {
    width: 27.2rem;
    height: 18.2rem;
  }
}
.about-gallery_list li img {
  border-radius: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery_list li img {
    border-radius: 0.476rem;
  }
}
.about-gallery_list li:nth-child(even) {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery_list li:nth-child(even) {
    margin-top: 1.78rem;
  }
}
.about-gallery_list + .about-gallery_list {
  margin-left: 2rem;
}
@media screen and (max-width: 1024px) {
  .about-gallery_list + .about-gallery_list {
    margin-left: 1rem;
  }
}

/* -------------------------------------
fixed-block
------------------------------------- */
.about-fixed_block {
  height: 43.5rem;
}
.about-fixed_block .fixed-image {
  background-image: url(../img/front/fixed_01.webp);
}
@media screen and (max-width: 768px) {
  .about-fixed_block .fixed-image {
    background-image: url(../img/front/fixed_01_sp.webp);
  }
}
.about-fixed_block .wave.--top {
  background-color: #F0F0F0;
}
.about-fixed_block .wave.--bottom {
  background-color: #F5EE85;
}

.wave {
  width: 100%;
  height: 3.5rem;
  clip-path: url(#waveClip);
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}
@media screen and (max-width: 1024px) {
  .wave {
    height: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .wave {
    height: 3.5rem;
    clip-path: url(#waveClip_sp);
  }
}
.wave.--top {
  scale: -1 -1;
  translate: 0 -0.1rem;
}
@media screen and (max-width: 768px) {
  .wave.--top {
    translate: 0 -50%;
  }
}
.wave.--bottom {
  position: absolute;
  bottom: 0rem;
  translate: 0 0.1rem;
}
@media screen and (max-width: 768px) {
  .wave.--bottom {
    bottom: 0rem;
    translate: 0 50%;
  }
}

.waveMask {
  width: 100%;
  height: 12.8rem;
  -webkit-mask-image: url(../img/common/wave-mask_big.svg);
          mask-image: url(../img/common/wave-mask_big.svg);
  -webkit-mask-repeat: repeat-x;
          mask-repeat: repeat-x;
  overflow: hidden;
  position: relative;
  top: -3.5rem;
  left: 0;
  translate: 0 0.1rem;
}
@media screen and (max-width: 768px) {
  .waveMask {
    -webkit-mask-image: url(../img/common/wave-mask_big_sp.svg);
            mask-image: url(../img/common/wave-mask_big_sp.svg);
  }
}
.waveMask::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/common/noise.png), linear-gradient(180deg, rgb(242, 225, 45) 0%, rgb(245, 238, 133) 100%);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}

.waveMask_duck01 {
  position: absolute;
  bottom: 1rem;
  left: 109.5rem;
  width: 4.765rem;
  height: 4.187rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .waveMask_duck01 {
    width: 3.574rem;
    height: 3.14rem;
    bottom: 0.9rem;
    left: 27rem;
  }
}

.waveMask_duck02 {
  position: absolute;
  bottom: 1rem;
  left: 123rem;
  width: 3.8rem;
  height: 3.3rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .waveMask_duck02 {
    width: 2.85rem;
    height: 2.475rem;
    bottom: 0.9rem;
    left: 32.4rem;
  }
}

.feature-fixed_block {
  height: 44rem;
}
.feature-fixed_block .fixed-image {
  background-image: url(../img/front/fixed_02.webp);
}
@media screen and (max-width: 768px) {
  .feature-fixed_block .fixed-image {
    background-image: url(../img/front/fixed_02_sp.webp?251229);
    background-size: cover;
    background-position: left center;
  }
}
.feature-fixed_block .wave.--top {
  background-color: #F5EE85;
}
.feature-fixed_block .wave.--bottom {
  background-color: #F0F0F0;
}

.fixed-image_block {
  position: relative;
}

.fixed-image_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: inset(0);
  z-index: -1;
}

.fixed-image {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-size: cover;
  background-position: center;
  z-index: -1;
}

.waveBlock {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
  display: block;
  position: absolute;
  bottom: -0.1rem;
}

.waveBlock_img {
  width: 204.8rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
  left: 0;
  display: block;
}
@media screen and (max-width: 768px) {
  .waveBlock_img {
    width: 100rem;
  }
}
.waveBlock_img img {
  display: block;
}

/* -------------------------------------
feature
------------------------------------- */
.feature {
  background-color: #F5EE85;
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
  position: relative;
}

.feature-inner {
  padding-block: 13rem;
}
@media screen and (max-width: 1024px) {
  .feature-inner {
    padding-block: 12.4rem 6.5rem;
  }
}

.feature-block {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .feature-block {
    flex-direction: column;
    align-items: center;
    display: block;
  }
}

.feature-left {
  width: 18%;
  position: relative;
}
@media screen and (max-width: 1440px) {
  .feature-left {
    width: calc(100% - 117.6rem);
  }
}
@media screen and (max-width: 1024px) {
  .feature-left {
    width: 100%;
  }
}

.feature-catch_block {
  height: 91vh;
  position: sticky;
  top: 6vh;
  bottom: 3vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .feature-catch_block {
    position: static;
    height: auto;
  }
}

.feature-catch {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.17em;
  color: #6D4218;
}
@media screen and (max-width: 1024px) {
  .feature-catch {
    font-size: 3.6rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 1024px) {
  .feature-catch span:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 1024px) {
  .feature-catch_img {
    width: 13.9rem;
    height: 10.29rem;
    margin-top: 7.1rem;
  }
}

.feature-right {
  width: auto;
  flex: 1;
  border-radius: 1.5rem 0 0 1.5rem;
  background-color: #fff;
}
@media screen and (max-width: 1440px) {
  .feature-right {
    width: 117.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .feature-right {
    width: 73.8rem;
    padding: 5.6rem 3rem 8rem;
    margin: -1rem auto 0;
    border-radius: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .feature-right {
    width: 34.5rem;
  }
}

.feature-cnt {
  padding: 8rem 0;
  width: 99.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 1440px) {
  .feature-cnt {
    width: 100%;
    padding: 8rem 9rem;
  }
}
@media screen and (max-width: 1024px) {
  .feature-cnt {
    padding: 0;
  }
}

.feature-ttl_block {
  text-align: center;
}
.feature-ttl_block .c-ttl .--text::after {
  bottom: 0;
}

.feature-list {
  margin-top: 8.8rem;
}
@media screen and (max-width: 1024px) {
  .feature-list {
    margin-top: 4.7rem;
  }
}

.feature-section {
  display: flex;
  gap: 5rem;
  padding-block: 10rem;
  border-bottom: 1px dashed rgba(35, 35, 35, 0.5);
  position: relative;
}
@media screen and (max-width: 1024px) {
  .feature-section {
    flex-direction: column-reverse;
    gap: 2.3rem;
    padding-block: 4.1rem 6.6rem;
  }
}
.feature-section:first-child {
  padding-top: 0;
}
.feature-section:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .feature-section:last-child {
    gap: 1rem;
  }
}
.feature-section:nth-child(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 1024px) {
  .feature-section:nth-child(even) {
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 768px) {
  .feature-section:nth-child(2) .feature-section_num, .feature-section:nth-child(3) .feature-section_num {
    width: 7.45rem;
  }
}

.feature-section_imgArea {
  position: relative;
}

.feature-swiper {
  width: 45.7rem;
  aspect-ratio: 457/306;
  border-radius: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .feature-swiper {
    width: 70%;
  }
}
@media screen and (max-width: 768px) {
  .feature-swiper {
    width: 100%;
    border-radius: 0.518rem;
  }
}
.feature-swiper .swiper-slide img {
  width: 100%;
  display: block;
}

.feature-swiper_nav {
  position: relative;
  width: 100%;
  bottom: -1.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .feature-swiper_nav {
    gap: 2rem;
  }
}
.feature-swiper_nav .swiper-button-prev,
.feature-swiper_nav .swiper-button-next {
  position: relative;
  width: 1.4rem;
  height: 1.4rem;
  color: #232323;
  margin: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.50098%206.06299V7.86377L7.22949%2011.5923H9.41309L4.7832%206.96338L9.41406%202.3335H7.23047L3.50098%206.06299Z%22%20fill%3D%22%23232323%22%2F%3E%3C%2Fsvg%3E");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.feature-swiper_nav .swiper-button-prev > svg,
.feature-swiper_nav .swiper-button-next > svg {
  display: none;
}
.feature-swiper_nav .swiper-button-next {
  scale: -1 1;
}
.feature-swiper_nav .swiper-pagination {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  bottom: 0;
}
.feature-swiper_nav .swiper-pagination .swiper-pagination-bullet {
  width: 0.5rem;
  height: 0.5rem;
  opacity: 1;
  background-color: #C8C8C8;
}
.feature-swiper_nav .swiper-pagination .swiper-pagination-bullet-active {
  width: 1.2rem;
  height: 1.2rem;
  background-color: #F4DB36;
  border-radius: 0;
  clip-path: url(#lemonClip);
}

.feature-section_num {
  position: absolute;
  top: 0;
  right: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  translate: 0.7rem 0;
}
@media screen and (max-width: 1024px) {
  .feature-section_num {
    margin-left: 0;
    translate: 0;
    width: 6.45rem;
    position: static;
    margin-right: auto;
  }
}
.feature-section_ttl {
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.05em;
  color: #9B8315;
}
@media screen and (max-width: 1024px) {
  .feature-section_ttl {
    font-size: 2.6rem;
  }
}

.feature-section_text {
  margin-top: calc((1em - 1lh) / 2 + 2.6rem);
}
@supports not (top: 1lh) {
  .feature-section_text {
    margin-top: 2.6rem;
  }
}
.feature-section_text {
  line-height: 2;
}
@media screen and (max-width: 1024px) {
  .feature-section_text {
    margin-top: calc((1em - 1lh) / 2 + 1.9rem);
  }
  @supports not (top: 1lh) {
    .feature-section_text {
      margin-top: 1.9rem;
    }
  }
  .feature-section_text {
    font-size: 1.4rem;
  }
}

.feature-section_textArea {
  position: relative;
  display: flex;
  align-items: flex-end;
}
.feature-section_textArea.--flex1 {
  flex: 1;
}
@media screen and (max-width: 1024px) {
  .feature-section_textArea {
    flex-direction: column;
  }
}

.feature-section_textBlock {
  position: relative;
  margin-bottom: 4.8rem;
}
@media screen and (max-width: 1024px) {
  .feature-section_textBlock {
    margin-top: 2.5rem;
    margin-bottom: 0;
  }
}
.feature-section_textBlock.--mt7 {
  margin-top: -7rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 1024px) {
  .feature-section_textBlock.--mt7 {
    margin-top: 2.1rem;
    margin-bottom: 0;
  }
}
.feature-section_textBlock.--mb3 {
  margin-bottom: 1rem;
}

.feature-btn {
  width: 15.6rem;
  height: 4.8rem;
  margin-top: 3.5rem;
}
@media screen and (max-width: 1024px) {
  .feature-btn {
    width: 14.8rem;
  }
}
@media screen and (max-width: 768px) {
  .feature-btn {
    width: 13.8rem;
    height: 4.2rem;
    margin-top: 2.6rem;
  }
}

/* -------------------------------------
info
------------------------------------- */
.info {
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}

.info-inner {
  padding-block: 14rem;
  width: 116.3rem;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .info-inner {
    width: 100%;
    padding-block: 3rem;
  }
}

.info-section {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .info-section {
    flex-direction: column;
  }
}
.info-section + .info-section {
  margin-top: 12rem;
}
@media screen and (max-width: 1024px) {
  .info-section + .info-section {
    margin-top: 9.4rem;
  }
}

.info-header {
  display: flex;
  flex-direction: column;
  width: calc(100% - 104rem);
  margin-top: 4.7rem;
  padding-left: 2.1rem;
}
@media screen and (max-width: 1024px) {
  .info-header {
    width: 100%;
    flex-direction: row;
    align-items: center;
    margin-top: 2.1rem;
    padding-left: 2.5rem;
    gap: 0.9rem;
  }
}

.info-floor {
  background-color: #467F89;
  clip-path: url(#lemonClip);
  width: 5rem;
  height: 5rem;
  display: grid;
  place-content: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.15;
  color: #fff;
}
@media screen and (max-width: 1024px) {
  .info-floor {
    width: 4rem;
    height: 4rem;
    font-size: 2rem;
  }
}

.info-ttl {
  margin-top: 2.2rem;
  margin-left: 0.1rem;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.25;
  letter-spacing: 0.25em;
  color: #467F89;
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
}
@media screen and (max-width: 1024px) {
  .info-ttl {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    margin-top: 0;
    font-size: 2.8rem;
    letter-spacing: 0.15em;
  }
}

.info-section.--private .info-floor {
  background-color: #9B8315;
}
.info-section.--private .info-ttl {
  color: #9B8315;
}

@media screen and (max-width: 1024px) {
  .info-board_block {
    width: 73.8rem;
    margin: 1.5rem auto 0;
  }
}
@media screen and (max-width: 768px) {
  .info-board_block {
    width: 32.5rem;
  }
}

.info-board {
  color: #fff;
  width: 104rem;
  min-height: 48rem;
  display: flex;
  border-radius: 1.5rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .info-board {
    display: flex;
    width: 100%;
    border-radius: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .info-board {
    display: block;
  }
}
.info-board .c-ttl .--text::after {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.info-board::after {
  content: "";
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
  width: 100%;
  height: 100%;
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.info-board::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 98.3%;
  height: 96%;
  border-radius: 0.6rem;
  border: 1px dashed #fff;
  opacity: 0.3;
  z-index: 0;
}
@media screen and (max-width: 1024px) {
  .info-board::before {
    width: 96.3%;
    height: 98.3%;
  }
}

.info-section.--public .info-board {
  background-color: #467F89;
}

.info-section.--private .info-board {
  background-color: #9B8315;
}

.info-topic {
  padding: 6rem 8.1rem;
  width: 50%;
}
@media screen and (max-width: 1024px) {
  .info-topic {
    padding: 6.3rem 3rem 7.3rem;
    width: 100%;
  }
}
.info-topic .c-ttl {
  text-align: center;
}
.info-topic:not(:first-child) {
  position: relative;
}
.info-topic:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.3rem;
  translate: 0 -50%;
  width: 0.3rem;
  height: 83%;
  background-image: url(../img/common/border_wave.svg);
  background-size: 100% auto;
  background-repeat: repeat-y;
  background-position: center right;
  opacity: 0.5;
}
@media screen and (max-width: 768px) {
  .info-topic:not(:first-child)::before {
    top: 0;
    left: 50%;
    height: 28.5rem;
    rotate: 90deg;
    translate: -50% -50%;
  }
}

.info-hours_block {
  margin-top: 8rem;
}
@media screen and (max-width: 1024px) {
  .info-hours_block {
    margin-top: 4.1rem;
  }
}

.info-section.--private .info-hours_block {
  margin-top: 9.2rem;
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-hours_block {
    margin-top: 4.3rem;
  }
}

.info-hours_top {
  font-size: 1.7rem;
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media screen and (max-width: 1024px) {
  .info-hours_top {
    font-size: 1.5rem;
  }
}
.info-hours_top::before {
  content: "";
  flex: 1;
  height: 0.2rem;
  background-color: #fff;
  opacity: 0.3;
}

.info-hours_time {
  position: relative;
  margin-top: 0.9rem;
  padding-bottom: 1.4rem;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .info-hours_time {
    margin-top: 1.4rem;
    justify-content: center;
    padding-bottom: 2rem;
  }
}
.info-hours_time::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-color: #fff;
  opacity: 0.3;
}
.info-hours_time p {
  line-height: 1.5;
  font-size: 7.2rem;
  letter-spacing: -0.01em;
}
.info-hours_time p.--days {
  font-size: 2.6rem;
}
@media screen and (max-width: 1024px) {
  .info-hours_time p {
    font-size: 5.3rem;
  }
}

.info-section.--private .info-hours_time {
  display: flex;
  justify-content: space-between;
  margin-top: 1.8rem;
  padding-bottom: 2.6rem;
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-hours_time {
    padding-bottom: 1.6rem;
  }
}
.info-section.--private .info-hours_time p {
  font-size: 4.6rem;
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-hours_time p {
    font-size: 3.6rem;
  }
}
.info-section.--private .info-hours_time p.--days {
  font-size: 2.6rem;
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-hours_time p.--days {
    font-size: 1.6rem;
  }
}
.info-section.--private .info-closed {
  margin-top: calc((1em - 1lh) / 2 + 3rem);
}
@supports not (top: 1lh) {
  .info-section.--private .info-closed {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-closed {
    margin-top: calc((1em - 1lh) / 2 + 2rem);
  }
  @supports not (top: 1lh) {
    .info-section.--private .info-closed {
      margin-top: 2rem;
    }
  }
}

.info-closed {
  margin-top: calc((1em - 1lh) / 2 + 2.8rem);
}
@supports not (top: 1lh) {
  .info-closed {
    margin-top: 2.8rem;
  }
}
.info-closed {
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .info-closed {
    margin-top: calc((1em - 1lh) / 2 + 2rem);
  }
  @supports not (top: 1lh) {
    .info-closed {
      margin-top: 2rem;
    }
  }
  .info-closed {
    font-size: 2.2rem;
  }
}

.info-note {
  margin-top: calc((1em - 1lh) / 2 + 1.8rem);
}
@supports not (top: 1lh) {
  .info-note {
    margin-top: 1.8rem;
  }
}
.info-note {
  font-size: 1.5rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .info-note {
    margin-top: calc((1em - 1lh) / 2 + 1.6rem);
  }
  @supports not (top: 1lh) {
    .info-note {
      margin-top: 1.6rem;
    }
  }
  .info-note {
    font-size: 1.3rem;
  }
}

.info-price_closed {
  margin-top: calc((1em - 1lh) / 2 + 2.6rem);
}
@supports not (top: 1lh) {
  .info-price_closed {
    margin-top: 2.6rem;
  }
}
.info-price_closed {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.5;
}

.info-price_block {
  margin-top: 7.4rem;
}
@media screen and (max-width: 1024px) {
  .info-price_block {
    margin-top: 5.2rem;
  }
}

.info-section.--private .info-price_block {
  margin-top: 4.1rem;
}

.info-price_list {
  display: flex;
  flex-direction: column;
}
.info-price_list li:not(:last-child) {
  padding-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .info-price_list li:not(:last-child) {
    padding-bottom: 2.7rem;
  }
}
.info-price_list li + li {
  padding-top: 2.7rem;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.info-price_item {
  display: flex;
  justify-content: space-between;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 2;
}
@media screen and (max-width: 1024px) {
  .info-price_item {
    font-size: 2rem;
  }
}
.info-price_item .--small {
  font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .info-price_item .--small {
    font-size: 1.4rem;
  }
}
.info-price_item span {
  margin-block: var(--leading-trim);
}

.info-section.--private .info-topic.--price .info-price_list li:nth-child(3) {
  border-top: none;
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-topic.--price .info-price_list li:nth-child(3) {
    margin-top: -1rem;
  }
}
@media screen and (max-width: 1024px) {
  .info-section.--private .info-topic.--price .info-price_item {
    font-size: 1.8rem;
  }
}

.info-price_label {
  margin-bottom: 3rem;
  border-radius: 0.3rem;
  height: 3rem;
  background-color: #8C7301;
  font-size: 1.7rem;
  line-height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .info-price_label {
    margin-bottom: 2.6rem;
    font-size: 1.4rem;
    height: 2.5rem;
  }
}

.info-price_other {
  margin-top: calc((1em - 1lh) / 2 + 8.9rem);
}
@supports not (top: 1lh) {
  .info-price_other {
    margin-top: 8.9rem;
  }
}

.info-price_note {
  margin-top: calc((1em - 1lh) / 2 + 5.4rem);
}
@supports not (top: 1lh) {
  .info-price_note {
    margin-top: 5.4rem;
  }
}
.info-price_note {
  font-size: 1.5rem;
  line-height: 1.5;
  padding-bottom: 1rem;
}
@media screen and (max-width: 1024px) {
  .info-price_note {
    margin-top: calc((1em - 1lh) / 2 + 4.4rem);
  }
  @supports not (top: 1lh) {
    .info-price_note {
      margin-top: 4.4rem;
    }
  }
  .info-price_note {
    font-size: 1.3rem;
  }
}

.info-board_illust {
  position: absolute;
}
.info-board_illust img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.info-board_illust.--faci {
  bottom: -1rem;
  left: -14.8rem;
  width: 17.1rem;
  height: 11.2rem;
}
@media screen and (max-width: 1024px) {
  .info-board_illust.--faci {
    width: 10.9rem;
    height: 7.13rem;
    top: 1rem;
    bottom: auto;
    left: auto;
    right: 0.5rem;
    translate: 0 -100%;
  }
}
.info-board_illust.--shampoo {
  bottom: -1rem;
  right: -3.5rem;
  width: 7.2rem;
  height: 6.8rem;
}
@media screen and (max-width: 1024px) {
  .info-board_illust.--shampoo {
    width: 5.7rem;
    height: 5.4rem;
    bottom: -2.2rem;
    left: 1.5rem;
    right: auto;
  }
}
.info-board_illust.--duckling {
  bottom: -1rem;
  right: -3.8rem;
  width: 8.7rem;
  height: 6.5rem;
}
@media screen and (max-width: 1024px) {
  .info-board_illust.--duckling {
    width: 6.5rem;
    height: 5rem;
    right: auto;
    left: 1.3rem;
    bottom: -1rem;
  }
}

.info-private_note {
  position: relative;
  margin-top: 5.5rem;
}
@media screen and (max-width: 1024px) {
  .info-private_note {
    margin-top: 3.5rem;
  }
}
.info-private_note li {
  padding-left: 2rem;
  line-height: 2;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .info-private_note li {
    font-size: 1.3rem;
    line-height: 1.5;
    padding-left: 1.3rem;
  }
}
.info-private_note li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0.4rem;
}
@media screen and (max-width: 1024px) {
  .info-private_note li::before {
    left: 0;
  }
}
@media screen and (max-width: 1024px) {
  .info-private_note li + li {
    margin-top: 1rem;
  }
}
.info-private_note li .--red {
  color: #BC0000;
}

/* -------------------------------------
access
------------------------------------- */
.access {
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}

.access-inner {
  width: 107.9rem;
  margin: 0 auto;
  padding-block: 5.3rem 16rem;
}
@media screen and (max-width: 1024px) {
  .access-inner {
    width: 73.8rem;
    padding-block: 8.7rem 3.4rem;
  }
}
@media screen and (max-width: 768px) {
  .access-inner {
    width: 32.5rem;
  }
}

.access-ttl_block {
  text-align: center;
}
.access-ttl_block .c-ttl .--text::after {
  bottom: 0;
}

.access-block {
  height: 71.3rem;
  margin-top: 5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .access-block {
    height: auto;
  }
}

.access-cnt {
  display: flex;
  height: 100%;
  border-radius: 1.5rem;
  overflow: hidden;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .access-cnt {
    display: block;
  }
}

.access-map_block {
  width: 50%;
}
@media screen and (max-width: 1024px) {
  .access-map_block {
    width: 100%;
  }
}
.access-map_block iframe {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .access-map_block iframe {
    height: 32.5rem;
  }
}

.access-maplink {
  position: absolute;
  right: 0.9rem;
  bottom: -0.6rem;
  width: 8.6rem;
  height: 2rem;
}
@media screen and (max-width: 1024px) {
  .access-maplink {
    position: relative;
    margin-top: 1.2rem;
    display: grid;
  }
}
.access-maplink a {
  width: 100%;
  height: 100%;
  border-radius: 9999px;
  font-size: 1.3rem;
  line-height: 2;
  padding-left: 0.5rem;
  border: 1px solid #232323;
  margin-block: var(--leading-trim);
  display: flex;
  align-items: center;
}
.access-maplink a .c-iconBox {
  rotate: -45deg;
  position: absolute;
  right: 0.7rem;
  width: 1rem;
  height: 1rem;
}
.access-maplink a .c-arrow {
  width: 1rem;
  height: 0.594rem;
  background-size: contain;
}
.access-maplink a .c-btn_icon {
  width: 0.8rem;
  height: 0.8rem;
}
.access-maplink a .c-btn_icon::before, .access-maplink a .c-btn_icon::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2210%22%20height%3D%228%22%20viewBox%3D%220%200%2010%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20y%3D%223.30719%22%20width%3D%229.39745%22%20height%3D%221.32282%22%20fill%3D%22%23232323%22%2F%3E%3Cpath%20d%3D%22M10.002%203.19727V4.74023L6.80566%207.93652H4.93457L8.90332%203.96875L4.93359%200H6.80469L10.002%203.19727Z%22%20fill%3D%22%23232323%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.access-maplink a .c-btn_icon::before {
  translate: 0 0;
  opacity: 1;
  transition: 0.3s;
}
.access-maplink a .c-btn_icon::after {
  translate: -100% -100%;
  opacity: 0;
  transition: 0.3s;
}
@media (hover: hover) {
  .access-maplink a:hover {
    opacity: 0.8;
    transition: 0.3s;
  }
  .access-maplink a:hover .c-btn_icon::before {
    opacity: 0;
    translate: 100% 0%;
    transition: 0.3s;
  }
  .access-maplink a:hover .c-btn_icon::after {
    opacity: 1;
    translate: 0 -100%;
    transition: 0.3s;
  }
}

.access-info_block {
  width: 50%;
  padding: 7.6rem 6.1rem;
}
@media screen and (max-width: 1024px) {
  .access-info_block {
    width: 100%;
    padding: 5.8rem 3rem 3.5rem;
  }
}

.access-address_block {
  position: relative;
}

.access-address {
  display: flex;
  flex-direction: column;
}
.access-address .--post {
  font-size: 1.8rem;
  line-height: 2;
  margin-block: var(--leading-trim);
}
@media screen and (max-width: 1024px) {
  .access-address .--post {
    font-size: 1.4rem;
  }
}
.access-address .--address {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-block: var(--leading-trim);
  margin-top: calc((1em - 1lh) / 2 + 1.5rem);
}
@supports not (top: 1lh) {
  .access-address .--address {
    margin-top: 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .access-address .--address {
    font-size: 1.8rem;
    margin-top: calc((1em - 1lh) / 2 + 1rem);
  }
  @supports not (top: 1lh) {
    .access-address .--address {
      margin-top: 1rem;
    }
  }
}

.access-info_list {
  margin-top: 5.2rem;
}
@media screen and (max-width: 1024px) {
  .access-info_list {
    margin-top: 3.2rem;
  }
}
.access-info_list dl {
  padding-block: 2.1rem;
}
.access-info_list dl:first-child {
  padding-top: 0;
}
.access-info_list dl:last-child {
  padding-bottom: 0;
}
.access-info_list dl:not(:first-child) {
  border-top: 1px dashed rgba(35, 35, 35, 0.5);
}
.access-info_list dt {
  color: #9B8315;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media screen and (max-width: 1024px) {
  .access-info_list dt {
    font-size: 1.6rem;
    gap: 0.6rem;
  }
}
.access-info_list dd p {
  margin-top: calc((1em - 1lh) / 2 + 1.1rem);
}
@supports not (top: 1lh) {
  .access-info_list dd p {
    margin-top: 1.1rem;
  }
}
.access-info_list dd p {
  line-height: 1.7;
}
@media screen and (max-width: 1024px) {
  .access-info_list dd p {
    margin-top: calc((1em - 1lh) / 2 + 0.9rem);
  }
  @supports not (top: 1lh) {
    .access-info_list dd p {
      margin-top: 0.9rem;
    }
  }
}
.access-info_list i {
  background-color: #9B8315;
  width: 3.2rem;
  height: 3.2rem;
  display: grid;
  place-content: center;
  clip-path: url(#lemonClip);
  background-repeat: no-repeat;
  background-position: center;
}
.access-info_list i.icon-tel {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M16.0313%2013.4928V15.6142C16.0321%2015.8111%2015.9918%2016.006%2015.9129%2016.1865C15.834%2016.3669%2015.7183%2016.5289%2015.5732%2016.662C15.4281%2016.7952%2015.2567%2016.8965%2015.0702%2016.9596C14.8836%2017.0227%2014.6859%2017.0462%2014.4898%2017.0284C12.3138%2016.792%2010.2236%2016.0485%208.38722%2014.8575C6.67866%2013.7718%205.2301%2012.3233%204.14441%2010.6147C2.94934%208.76997%202.20562%206.66963%201.97351%204.48388C1.95584%204.28834%201.97908%204.09125%202.04175%203.90518C2.10442%203.71911%202.20515%203.54812%202.33752%203.40311C2.46989%203.2581%202.63101%203.14224%202.81061%203.06291C2.99021%202.98358%203.18437%202.94251%203.38071%202.94233H5.50211C5.84529%202.93895%206.17799%203.06048%206.43819%203.28425C6.69839%203.50803%206.86835%203.81878%206.91638%204.1586C7.00592%204.8375%207.17197%205.50408%207.41137%206.14565C7.50651%206.39875%207.52711%206.67382%207.47071%206.93826C7.41431%207.2027%207.28329%207.44544%207.09316%207.6377L6.1951%208.53576C7.20175%2010.3061%208.66757%2011.7719%2010.4379%2012.7786L11.336%2011.8805C11.5282%2011.6904%2011.771%2011.5594%2012.0354%2011.503C12.2999%2011.4466%2012.5749%2011.4672%2012.828%2011.5623C13.4696%2011.8017%2014.1362%2011.9677%2014.8151%2012.0573C15.1586%2012.1057%2015.4723%2012.2788%2015.6965%2012.5434C15.9208%2012.8081%2016.0399%2013.146%2016.0313%2013.4928Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
}
.access-info_list i.icon-bus {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2217%22%20height%3D%2216%22%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.9189%200H3.3975C2.51799%200%201.80469%200.694724%201.80469%201.55329V12.3338C1.80469%2012.8071%202.19883%2013.1916%202.68501%2013.1916H13.63C14.1154%2013.1916%2014.5095%2012.8071%2014.5095%2012.3338V1.55329C14.5095%200.694724%2013.7968%200%2012.9189%200ZM4.30435%201.11753C4.30435%200.944972%204.44755%200.805182%204.62432%200.805182H11.7129C11.8897%200.805182%2012.0329%200.944972%2012.0329%201.11753V1.61274C12.0329%201.78504%2011.8897%201.92509%2011.7129%201.92509H4.62432C4.44755%201.92509%204.30435%201.78504%204.30435%201.61274V1.11753ZM4.60781%2011.8238C4.11811%2011.8238%203.72072%2011.4364%203.72072%2010.9576C3.72072%2010.4787%204.11811%2010.0921%204.60781%2010.0921C5.09751%2010.0921%205.49517%2010.4798%205.49517%2010.9576C5.49517%2011.4353%205.09778%2011.8238%204.60781%2011.8238ZM11.7083%2011.8238C11.217%2011.8238%2010.8199%2011.4364%2010.8199%2010.9576C10.8199%2010.4787%2011.217%2010.0921%2011.7083%2010.0921C12.1996%2010.0921%2012.5949%2010.4798%2012.5949%2010.9576C12.5949%2011.4353%2012.1975%2011.8238%2011.7083%2011.8238ZM13.2072%207.98972C13.2072%208.19875%2013.0321%208.36972%2012.8179%208.36972H3.49712C3.28272%208.36972%203.10731%208.19875%203.10731%207.98972V3.10578C3.10731%202.89649%203.28272%202.72499%203.49712%202.72499H12.8179C13.0321%202.72499%2013.2072%202.89649%2013.2072%203.10578V7.98972Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M12.0332%201.11752V1.61274C12.0332%201.78503%2011.89%201.92508%2011.7133%201.92508H4.62466C4.44789%201.92508%204.30469%201.78503%204.30469%201.61274V1.11752C4.30469%200.944966%204.44789%200.805176%204.62466%200.805176H11.7133C11.89%200.805176%2012.0332%200.944966%2012.0332%201.11752Z%22%20fill%3D%22%239B8315%22%2F%3E%3Cpath%20d%3D%22M1.38518%203.2062V6.34633H0.557917C0.251211%206.34633%200%206.1011%200%205.80117V3.7503C0%203.45116%200.251211%203.20593%200.557917%203.20593H1.38518V3.2062Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M15.7565%206.34607H14.929V3.2062H15.7565C16.0646%203.2062%2016.3145%203.45037%2016.3145%203.75083V5.80118C16.3145%206.1019%2016.0643%206.34607%2015.7563%206.34607H15.7565Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M4.8132%2013.7761V14.7864C4.8132%2015.0659%204.57877%2015.2945%204.29237%2015.2945H3.14892C2.86225%2015.2945%202.62891%2015.0657%202.62891%2014.7864V13.7761H4.8132Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M13.687%2013.7762V14.7865C13.687%2015.0661%2013.4525%2015.2946%2013.1669%2015.2946H12.0229C11.7371%2015.2946%2011.5029%2015.0658%2011.5029%2014.7865V13.7762H13.687Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
}
.access-info_list i.icon-parking {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.54102%2015.0121V1.98792H9.49493C10.7105%201.98792%2011.6718%202.27321%2012.3789%202.84379C13.0983%203.41437%2013.458%204.37568%2013.458%205.72772C13.458%207.07975%2013.0983%208.04727%2012.3789%208.63025C11.6718%209.21324%2010.7105%209.50473%209.49493%209.50473H5.6807V15.0121H3.54102ZM5.6807%207.49529H9.19724C9.82984%207.49529%2010.3198%207.35884%2010.6671%207.08596C11.0144%206.81307%2011.1881%206.36032%2011.1881%205.72772C11.1881%205.10752%2011.0144%204.66098%2010.6671%204.38809C10.3198%204.1152%209.82984%203.97876%209.19724%203.97876H5.6807V7.49529Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
}

.access-info_tel {
  font-size: 2.6rem;
  line-height: 2;
  margin-block: var(--leading-trim);
  margin-top: calc((1em - 1lh) / 2 + 1.2rem);
}
@supports not (top: 1lh) {
  .access-info_tel {
    margin-top: 1.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .access-info_tel {
    font-size: 2.4rem;
    margin-top: calc((1em - 1lh) / 2 + 0.8rem);
  }
  @supports not (top: 1lh) {
    .access-info_tel {
      margin-top: 0.8rem;
    }
  }
}

.access-info_parking {
  margin-top: 1.5rem;
}

.access-info_illust {
  position: absolute;
  bottom: -1rem;
}
@media screen and (max-width: 768px) {
  .access-info_illust {
    bottom: auto;
  }
}
.access-info_illust.--kanban {
  left: -6.8rem;
  width: 10.856rem;
  height: 20rem;
}
@media screen and (max-width: 1024px) {
  .access-info_illust.--kanban {
    width: 6.1rem;
    height: 11.2rem;
    left: 0.8rem;
  }
}
@media screen and (max-width: 768px) {
  .access-info_illust.--kanban {
    top: 23rem;
  }
}
.access-info_illust.--faci {
  right: -7.5rem;
  width: 17.1rem;
  height: 11.2rem;
}
@media screen and (max-width: 1024px) {
  .access-info_illust.--faci {
    width: 11rem;
    height: 7.2rem;
    right: 0.7rem;
  }
}
@media screen and (max-width: 768px) {
  .access-info_illust.--faci {
    top: 27rem;
  }
}

.access-fixed_block {
  position: relative;
  background-color: #DDD;
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}
.access-fixed_block .wave.--top {
  background-color: #F0F0F0;
}

/* -------------------------------------
news
------------------------------------- */
.news {
  background-color: #ddd;
  background-image: url(../img/common/noise.png);
  background-size: 10rem;
  background-position: center;
  background-repeat: repeat;
}

.news-inner {
  width: 107.9rem;
  margin: 0 auto;
  padding-block: 12rem 9rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .news-inner {
    width: 52.5rem;
    margin: 0 auto;
    display: block;
    padding-block: 7.5rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .news-inner {
    width: 32.5rem;
  }
}

.news-block {
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .news-block {
    margin-top: 1rem;
  }
}

.news-header .c-ttl .--text::after {
  bottom: 0;
}

.news-sns_block {
  width: 49.8rem;
  height: 39.1rem;
  border-radius: 1rem;
  border: 0.2rem solid #232323;
  position: relative;
  display: grid;
  place-content: center;
}
@media screen and (max-width: 1024px) {
  .news-sns_block {
    width: 100%;
    height: 30.8rem;
  }
}
.news-sns_block::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 97%;
  height: 96%;
  border: 1px dashed #232323;
  border-radius: 0.6rem;
  opacity: 0.5;
  pointer-events: none;
}

.news-cnt {
  padding-top: 2rem;
}

.news-btn_block {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 3.5rem 0.1rem 0 auto;
}
@media screen and (max-width: 1024px) {
  .news-btn_block {
    margin: 2.5rem 0rem 0 auto;
  }
}

@media screen and (max-width: 1024px) {
  .news-sns {
    margin-top: 7rem;
  }
}

.news-sns_ttl {
  font-size: 2.8rem;
  line-height: 1.15;
  letter-spacing: 0.05em;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .news-sns_ttl {
    font-size: 2.6rem;
  }
}

.news-sns_list {
  margin-top: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .news-sns_list {
    margin-top: 3rem;
  }
}

.news-sns_item {
  width: 6.4rem;
  height: 6.4rem;
  display: grid;
  place-content: center;
  background-color: #fff;
  border-radius: 9999px;
  transition: 0.3s;
}
@media (hover: hover) {
  .news-sns_item:hover {
    background-color: #232323;
    transition: 0.3s;
  }
  .news-sns_item:hover .--x img {
    -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1);
  }
}
.news-sns_item .news-sns_icon {
  width: 3.2rem;
  height: 3.2rem;
}
.news-sns_item .news-sns_icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.news-sns_text {
  text-align: center;
  line-height: 1.7;
  margin-top: 2rem;
}
@media screen and (max-width: 1024px) {
  .news-sns_text {
    font-size: 1.4rem;
  }
}