/* project */
.bl_topMV {
  /* display: grid;
  grid-template-columns: 0.167fr 1fr;
  align-items: stretch; */
  display: flex;
  align-items: stretch;
  width: 100%;
}

.bl_topMV_logo {
  position: relative;
  z-index: 20;
  width: 15%;
}

@media only screen and (max-width: 860px) {
  .bl_topMV_logo {
    display: none;
  }
}
.bl_topMV_logo_img {
  position: absolute;
  bottom: 50%;
  transform: translate(50%, 50%);
}

.bl_topMV_slider_wrapper {
  width: 85%;
  display: block;
}

@media only screen and (max-width: 860px) {
  .bl_topMV_slider_wrapper {
    width: 100%;
  }
}
.bl_topMV_slide img {
  border-radius: 50px 0 0 50px;
  max-width: none;
  width: 100%;
}

@media only screen and (max-width: 860px) {
  .bl_topMV_slide img {
    border-radius: 0;
  }
}
.bl_topSection {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

@media only screen and (max-width: 860px) {
  .bl_topSection {
    flex-direction: column;
    row-gap: 8vw;
  }
}
.bl_topSection__history {
  flex-direction: row-reverse;
}

@media only screen and (max-width: 860px) {
  .bl_topSection__history {
    flex-direction: column-reverse;
  }
  .bl_topSection__history .bl_topSection_figure {
    padding-right: 0;
    padding-left: 10%;
  }
}
.bl_topSection__history .bl_topSection_img {
  border-radius: 50px 0 0 50px;
}

@media only screen and (max-width: 860px) {
  .bl_topSection__history .bl_topSection_img {
    border-radius: 2vw 0 0 2vw;
  }
}
.bl_topSection_img {
  border-radius: 0 50px 50px 0;
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 860px) {
  .bl_topSection_img {
    border-radius: 0 2vw 2vw 0;
  }
}
.bl_topSection_figure {
  width: 50%;
  position: relative;
}

@media only screen and (max-width: 860px) {
  .bl_topSection_figure {
    width: 100%;
    padding-right: 10%;
  }
}
.bl_topSection_caption {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  color: var(--color-white);
  background-color: var(--color-main);
  writing-mode: vertical-rl;
  font-size: 3.2rem;
  padding: 0.5em 0.25em;
  line-height: 1.2;
}

.bl_topSection_body {
  width: 50%;
}

@media only screen and (max-width: 860px) {
  .bl_topSection_body {
    width: 100%;
    text-align: center;
  }
}
.bl_topSection_body_inner {
  padding: 0 10%;
}

@media only screen and (max-width: 860px) {
  .bl_topSection_body_inner {
    padding: 0 10%;
  }
}
.bl_topSection_ttl {
  font-size: 3.2rem;
}

.bl_topSection_txt {
  font-size: 1.4rem;
  margin-top: 1.5em;
}

.bl_topSection_btn {
  text-align: center;
  font-size: 1.4rem;
  margin-top: 2.5em;
}

.bl_notice {
  margin: 60px 0;
  padding: 40px;
  font-size: 2rem;
  color: var(--color-white);
  box-shadow: 0 0 10px 0px rgba(var(--color-main-rgb), 0.6);
  background-color: var(--color-main);
  text-align: center;
  position: relative;
}

@media only screen and (max-width: 860px) {
  .bl_notice {
    padding: 4vw;
    margin: 8vw 0;
    font-size: 1.2rem;
  }
}
.bl_notice::before {
  content: "";
  display: block;
  position: absolute;
  height: 80%;
  aspect-ratio: 1/1;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  background: url(../img/top/tit_deco.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: brightness(150%);
}

.bl_notice_list {
  position: relative;
  z-index: 5;
}

.bl_topNews {
  display: flex;
  align-items: stretch;
}

@media only screen and (max-width: 860px) {
  .bl_topNews {
    padding: 0 4vw;
  }
}
.bl_topNews_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0.25em 50px;
  border-right: 3px solid var(--color-black);
  font-size: 2.4rem;
  margin-right: 50px;
}

@media only screen and (max-width: 860px) {
  .bl_topNews_ttl {
    display: none;
  }
}
.bl_topNews_list {
  font-size: 1.4rem;
}

.bl_topNews_link {
  padding: 0.25em 0;
  display: grid;
  grid-template-columns: 5em 1fr;
  column-gap: 2em;
}

@media only screen and (max-width: 860px) {
  .bl_topNews_link {
    column-gap: 1.5em;
  }
}
.bl_topNews_link:hover .bl_topNews_txt {
  padding-left: 1em;
}

.bl_topNews_txt {
  transition: all ease 0.3s;
}

@media only screen and (max-width: 860px) {
  .bl_topRecommend {
    padding-bottom: 44%;
  }
}
.bl_topRecommend_heading {
  text-align: center;
  font-size: 3rem;
}

.bl_topRecommend_list {
  --gap: 40px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: var(--gap);
  margin-top: 20px;
}

.bl_topRecommend_figure {
  overflow: hidden;
  border-radius: 10px;
}

.bl_topRecommend_figure img {
  max-width: none;
  width: 100%;
}

.bl_topRecommend_item {
  width: calc(33.3333333333% - var(--gap) / 3);
}

@media only screen and (max-width: 860px) {
  .bl_topRecommend_item {
    width: 100%;
  }
  .bl_topRecommend_item:nth-of-type(n + 2) {
    margin-top: 8vw;
  }
}
.bl_topRecommend_ttl {
  text-align: center;
  font-size: 2rem;
  margin: 0.25em 0;
}

.bl_topRecommend_txt {
  font-size: 1.4rem;
}

.bl_topContact {
  background-color: var(--color-white);
  padding-bottom: 140px;
  position: relative;
}

.bl_topContact_ttl {
  font-size: 3.2rem;
  writing-mode: vertical-rl;
  text-orientation: upright;
  width: 100%;
  background: url(../img/top/tit_deco.png) center center no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: -2em;
  margin-bottom: -2em;
}

.bl_topContact_txt {
  font-size: 1.8rem;
  text-align: center;
  margin: 1.5em 0;
}

.bl_topContact_slider {
  text-align: center;
  font-size: 1.6rem;
}

@media only screen and (max-width: 860px) {
  .bl_topContact_slider {
    font-size: 1.4rem;
  }
}
.bl_topContact_slider .swiper-wrapper {
  transition-timing-function: linear;
}

.bl_topContact_slider img {
  max-width: none;
  width: 100%;
}

.bl_topContact_slider figcaption {
  margin-top: 1em;
  line-height: 1.4;
}

.bl_topContact_btn {
  position: absolute;
  bottom: 0;
  right: 50%;
  transform: translateX(50%);
  color: var(--color-white);
  background-color: var(--color-main);
  border-radius: 100%;
  font-size: 1.6rem;
  border-radius: 50%/100% 100% 0 0;
}

.bl_topContact_btn a {
  display: block;
  padding: 1.2em 1.6em 0.5em;
}

.bl_topCalendar {
  background-color: var(--color-bg);
  padding: 80px 0;
}

@media only screen and (max-width: 860px) {
  .bl_topCalendar {
    padding: 10% 0;
  }
}
.bl_topCalendar_ttl {
  text-align: center;
  font-size: 3.2rem;
  margin-bottom: 1em;
  color: var(--color-main);
  position: relative;
}

.bl_topCalendar_ttl span {
  position: relative;
  z-index: 5;
}

.bl_topCalendar_ttl::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 50%;
  right: 50%;
  transform: translate(50%, 50%);
  background: url(../img/top/tit_deco.png) center center no-repeat;
  width: 3em;
  height: 3em;
}

.bl_single {
  font-size: 2rem;
}

@media only screen and (max-width: 860px) {
  .bl_single {
    font-size: 1.6rem;
  }
}
.bl_single_time {
  color: var(--color-main);
  text-align: center;
  font-size: 1.4rem;
}

.bl_single_heading {
  text-align: center;
  font-size: 2.7rem;
  margin-bottom: 1.5em;
}

.bl_single_heading::after {
  content: "";
  display: block;
  width: 2em;
  height: 4px;
  background-color: var(--color-black);
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;
}

.bl_single_btn {
  font-size: 1.4rem;
  margin-top: 4em;
  text-align: center;
}

.bl_page_heading {
  font-size: 3rem;
  margin-bottom: 1em;
  text-align: center;
}

.bl_pageHead {
  background: url(../img/common/main_bg.jpg) center center no-repeat;
  background-size: cover;
  min-height: 250px;
  font-size: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

@media only screen and (max-width: 860px) {
  .bl_pageHead {
    background: url(../img/common/main_bg.jpg) center right -150px no-repeat;
    background-size: cover;
    min-height: 180px;
  }
}
.bl_pageHead_ttl::after {
  content: "";
  display: block;
  height: 2px;
  width: 2em;
  margin-left: auto;
  margin-right: auto;
  background-color: var(--color-main);
  margin-top: 1em;
}

.bl_contact {
  background: #ece4e2 url(../img/common/bg_light.jpg) left top repeat;
}

@media only screen and (max-width: 860px) {
  .bl_contact {
    padding: 6% 0;
  }
}
.bl_contact_ttl {
  text-align: center;
  font-size: 2.5rem;
  margin-bottom: 1em;
}

@media only screen and (max-width: 860px) {
  .bl_contact_ttl {
    font-size: 2.2rem;
  }
}
.bl_contact_body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media only screen and (max-width: 860px) {
  .bl_contact_body {
    justify-content: center;
    display: block;
  }
}
.bl_contact_links {
  font-size: 3rem;
  text-align: center;
}

@media only screen and (max-width: 860px) {
  .bl_contact_links {
    margin-bottom: 1em;
    font-size: 1.8rem;
  }
}
.bl_contact_links_tel::after {
  content: "/";
  display: inline-block;
  margin: 0 0.1em;
  font-size: 0.8em;
}

.bl_contact_links_fax {
  font-size: 0.66em;
}

.bl_contact_btn {
  font-size: 1.8rem;
  width: 50%;
}

@media only screen and (max-width: 860px) {
  .bl_contact_btn {
    width: 100%;
  }
}
.mfp-bg {
  background-color: rgba(var(--color-black-rgb), 0.7);
  backdrop-filter: blur(30px);
  opacity: 1;
}

.bl_links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  font-size: 3.5rem;
  column-gap: 1em;
}

@media only screen and (max-width: 860px) {
  .bl_links {
    font-size: 2.5rem;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 1em;
  }
}
.bl_itemCat {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  font-size: 1.4rem;
  line-height: 1.2;
  row-gap: 1em;
}

.bl_itemCat_item:nth-of-type(n + 2) {
  border-left: 1px solid var(--color-black);
}

@media only screen and (max-width: 860px) {
  .bl_itemCat_item {
    border-left: 1px solid var(--color-black);
    border-right: 1px solid var(--color-black);
    margin-left: -1px;
  }
}
.bl_itemCat_link {
  padding: 0.25em 2em;
  display: block;
}

.bl_itemSec:nth-of-type(2n) {
  background: #ece4e2 url(../img/common/bg_light.jpg) left top repeat;
}

.bl_itemSec_ttl {
  text-align: center;
  font-size: 3rem;
}

.bl_itemList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: flex-start;
  column-gap: 30px;
  row-gap: 60px;
  margin-top: 30px;
}

@media only screen and (max-width: 860px) {
  .bl_itemList {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 8vw;
  }
}
.bl_item_img {
  text-align: center;
}

@media only screen and (max-width: 860px) {
  .bl_item_img {
    padding: 0 4%;
  }
}
.bl_item_img img {
  max-width: none;
  width: 100%;
  height: auto;
}

.bl_item_ttl {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.4;
  color: var(--color-main);
  margin: 1em 0 0.5em;
}

.bl_item_txt {
  font-size: 1.4rem;
  text-align: center;
}

.bl_shopInfo {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 30px;
}

@media only screen and (max-width: 860px) {
  .bl_shopInfo {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 6vw;
  }
}
.bl_shopInfo_table {
  width: 100%;
  font-size: 1.4rem;
}

.bl_shopInfo_row {
  border-bottom: 2px solid var(--color-bg);
}

.bl_shopInfo_th, .bl_shopInfo_td {
  padding: 1em 1.5em 0.9em;
}

.bl_shopInfo_th {
  border-right: 2px solid var(--color-bg);
  background-color: var(--color-main);
  color: var(--color-white);
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.bl_shopInfo_td {
  background-color: var(--color-white);
}

@media only screen and (max-width: 860px) {
  .bl_shopInfo_map {
    width: 100%;
    aspect-ratio: 4/3;
  }
}
.bl_shopInfo_map_iframe {
  width: 100%;
  height: 100%;
}

.bl_shopInfo_imgs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 20px;
  margin: 60px 0;
}

@media only screen and (max-width: 860px) {
  .bl_shopInfo_imgs {
    margin: 8vw 0 16vw;
    column-gap: 4vw;
  }
}
.bl_kissaRecommend {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: flex-start;
  column-gap: 30px;
}

@media only screen and (max-width: 860px) {
  .bl_kissaRecommend {
    row-gap: 8vw;
    grid-template-columns: repeat(1, 1fr);
  }
}
.bl_kissaRecommend_img {
  position: relative;
  text-align: center;
}

@media only screen and (max-width: 860px) {
  .bl_kissaRecommend_img {
    margin: 0 4%;
  }
}
.bl_kissaRecommend_img img {
  max-width: none;
  width: 100%;
  height: auto;
}

.bl_kissaRecommend_cap {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  background-color: var(--color-main);
  color: var(--color-white);
  padding: 0.5em 1em;
  line-height: 1;
  font-size: 1.4rem;
}

.bl_kissaRecommend_body {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  font-size: 1.4rem;
  column-gap: 0.5em;
  margin-top: 1em;
}

.bl_kissa_ttl {
  padding: 0.5em 1em;
  background-color: var(--color-main);
  color: var(--color-white);
  font-size: 2rem;
  margin: 4em 0 0.5em;
}

.bl_kissaList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: column;
  font-size: 1.4rem;
  column-gap: 2em;
}

@media only screen and (max-width: 860px) {
  .bl_kissaList {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto !important;
    grid-auto-flow: row;
  }
}
.bl_kissaList_item {
  padding: 0.7em 0;
  display: grid;
  grid-template-columns: 1fr 0.2fr;
  gap: 0.5em;
  border-bottom: 1px solid var(--color-gray);
}

.bl_kissaList_item__caution {
  display: block;
  border-bottom: none;
  color: var(--color-gray-d);
}

.bl_kissaList_price {
  font-weight: bold;
  text-align: right;
}

.bl_recommend {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 860px) {
  .bl_recommend {
    flex-direction: column;
    row-gap: 6vw;
  }
}
.bl_recommend_body {
  width: 40%;
  padding: 0 60px;
}

@media only screen and (max-width: 860px) {
  .bl_recommend_body {
    width: 100%;
    padding: 0 4vw;
  }
}
.bl_recommend_media {
  width: 60%;
}

@media only screen and (max-width: 860px) {
  .bl_recommend_media {
    width: 100%;
  }
}
.bl_recommend_heading {
  font-size: 3rem;
}

@media only screen and (max-width: 860px) {
  .bl_recommend_heading {
    text-align: center;
  }
}
.bl_recommend_heading::after {
  content: "";
  display: block;
  width: 2em;
  height: 2px;
  background-color: var(--color-main);
  margin: 0.4em 0 0.7em;
}

@media only screen and (max-width: 860px) {
  .bl_recommend_heading::after {
    margin-left: auto;
    margin-right: auto;
  }
}
.bl_recommend_txt {
  font-size: 1.4rem;
}

@media only screen and (max-width: 860px) {
  .bl_recommend_txt {
    text-align: center;
  }
}
/*# sourceMappingURL=maps/style.css.map */