@charset "UTF-8";
/* Foundation
 * 変数、関数、mixinを定義
 * サイト全体のデフォルトスタイルを管理
======================================*/
/****** 変数定義 ******/
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/NotoSansJP-wght.ttf") format("truetype");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url("../fonts/PlusJakartaSans-wght.ttf") format("truetype");
}
/****** mixin定義 ******/
/****** 関数定義 ******/
/****** デザイントークン ******/
/*--------------------------------
 *  サイト全体設定
--------------------------------*/
/*------ 基本カラー -------*/
:root {
  --color_main: #003174;
  --color_text: #333333;
  --color_link: #1176d4;
  --color_bg: #fdfdfd;
  --color_border: hsla(0, 0%, 78%, 0.5);
}

/*------ 基本デザイン -------*/
:root {
  --swl-font_family: 游ゴシック体, Yu Gothic, YuGothic, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
  --swl-fz--content: vw(14);
  --swl-font_weight: 500;
  --swl-pad_container: 20px;
  --container_size: 1200px;
  --article_size: 900px;
}
@media screen and (min-width: 600px) {
  :root {
    --swl-fz--content: 16px;
  }
}

/*--------------------------------
 *  ヘッダー
--------------------------------*/
/*------ カラー設定 -------*/
:root {
  --color_header_bg: #fdfdfd;
  --color_header_text: #333;
}

/*--------------------------------
 *  フッター
--------------------------------*/
/*------ カラー設定 -------*/
:root {
  --color_footer_bg: #fdfdfd;
  --color_footer_text: #333;
}

/****** ベースとなるスタイル ******/
a {
  color: unset;
}

@media screen and (min-width: 600px) {
  a[href^="tel:"] {
    text-decoration: none;
    pointer-events: none;
  }
}

address {
  font-style: unset;
}

figure {
  line-height: 1;
}

/* Layout
 * 接頭辞：l-
 * 各ページを構成する大枠のエリアに対するレイアウトを定義
======================================*/
/****** ヘッダー ******/
/*--------------------------------
 *  基本のヘッダー
--------------------------------*/
[data-mobile-shell] #header.l-header {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0px);
  right: 0;
  left: 0;
  z-index: 100;
  background-color: transparent;
  color: #ffffff;
  box-shadow: none;
}

[data-mobile-shell] #header .l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: none;
  padding-top: 20px;
  padding-right: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
}

[data-mobile-shell] #header .l-header__logo {
  display: block;
  margin-right: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  order: 0;
}

[data-mobile-shell] #header .c-headLogo {
  margin-right: 0;
  font-size: 40px;
  line-height: 1;
  height: 1em;
}

[data-mobile-shell] #header .c-headLogo__link {
  display: block;
  width: 3em;
  height: 1em;
}

[data-mobile-shell] #header .c-headLogo__link img {
  display: block;
  width: 100%;
  height: 100%;
}

.l-header__actions {
  display: flex;
  align-items: center;
  column-gap: 20px;
}

.l-header__toggle {
  display: block;
  width: 24px;
  height: 24px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.l-header__toggle img {
  display: block;
  width: 24px;
  height: 24px;
}

.l-header__pending {
  display: block;
  width: 20px;
  height: 20px;
}

[data-mobile-shell] #header img.l-header__scrolled {
  display: none;
}

.l-header__toggle:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

/*------ SWELLが所有するスクロール状態 -------*/
[data-scrolled=true] .top #header.l-header {
  background-color: rgba(235, 225, 213, 0.9019607843);
  color: #3c3430;
}

[data-scrolled=true] .top #header img.l-header__default {
  display: none;
}

[data-scrolled=true] .top #header img.l-header__scrolled {
  display: block;
}

@media screen and (min-width: 601px) {
  .top #header.l-header {
    display: none;
  }
}
/*--------------------------------
 *  固定ヘッダーをキャンセル
--------------------------------*/
/*------ 下層共通variant：TOPのscroll状態とは独立した不透明ヘッダー。 -------*/
[data-mobile-shell] #header.l-header.--subpage {
  background-color: #ebe1d5;
  color: #3c3430;
}
@media screen and (min-width: 601px) {
  [data-mobile-shell] #header.l-header.--subpage {
    width: var(--shell-content-width);
    left: calc(100% - var(--shell-content-width) - var(--shell-nav-width));
    right: auto;
  }
}

[data-mobile-shell] #header.--subpage img.l-header__default {
  display: none;
}

[data-mobile-shell] #header.--subpage img.l-header__scrolled {
  display: block;
}

@media screen and (min-width: 601px) {
  [data-mobile-shell] #header.--subpage .l-header__toggle {
    display: none;
  }
}

/****** フッター ******/
/*--------------------------------
 *  本文末尾の共通フッター
--------------------------------*/
[data-mobile-shell] #footer.l-footer {
  position: relative;
  padding-top: 60px;
  padding-right: 20px;
  padding-bottom: 88px;
  padding-left: 20px;
  border-top: 1px solid rgba(235, 225, 213, 0.3019607843);
  background-image: url("../img/common/footer-tile.png");
  background-repeat: repeat;
  background-size: auto;
  color: #ffffff;
  text-align: center;
}

.l-footer__logo {
  display: block;
  width: 191.223px;
  max-width: 100%;
  height: 64px;
  margin-left: auto;
  margin-right: auto;
}

.l-footer__logo img {
  display: block;
  width: 100%;
  height: 100%;
}

.l-footer__sns {
  display: flex;
  justify-content: center;
  align-items: center;
  row-gap: 20px;
  column-gap: 20px;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}

.l-footer__socialLink {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 28px;
  width: 28px;
  height: 28px;
}

.l-footer__socialLink img {
  display: block;
  width: 100%;
  height: 100%;
}

.l-footer__menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 5px;
  column-gap: 10px;
  margin-top: 30px;
  font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7857142857;
  letter-spacing: 0.05em;
}

.l-footer__menu a {
  color: inherit;
  text-decoration: none;
}

.l-footer__menu > :not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 14px;
  margin-left: 10px;
  background-color: #ffffff;
  vertical-align: middle;
}

.l-footer__copyright {
  margin-top: 30px;
  color: rgba(255, 255, 255, 0.5019607843);
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.8333333333;
  letter-spacing: 0.05em;
}

.l-footer__top {
  display: block;
  width: 48px;
  height: 32px;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #ffffff;
  border-radius: 8px;
}

.l-footer__top img {
  display: block;
  width: 8px;
  height: 12px;
  margin-left: auto;
  margin-right: auto;
}

/*------ フッター操作のfocus -------*/
[data-mobile-shell] .p-fixBtnWrap {
  display: none;
}

.l-footer a:focus-visible,
.l-footer button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

@media screen and (min-width: 601px) {
  [data-mobile-shell] #footer.l-footer {
    width: var(--shell-content-width);
    margin-left: calc(100% - var(--shell-content-width) - var(--shell-nav-width));
    padding-bottom: 60px;
  }
}
/****** コンテンツエリア ******/
/*--------------------------------
 *  スマホ特化の中央本文
--------------------------------*/
[data-mobile-shell] {
  --shell-pc-min: 601px;
}

[data-mobile-shell] #content.l-content {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

[data-mobile-shell] #main_content.l-mainContent {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

#body_wrap.top .l-content {
  margin-bottom: 0;
}

/*------ PCの左右固定領域に対応する本文配置 -------*/
@media screen and (min-width: 601px) {
  [data-mobile-shell] {
    --shell-content-width: clamp(375px, calc(375px + (100vw - 601px) * 25 / 679), 400px);
    --shell-nav-width: clamp(226px, calc(226px + (100vw - 601px) * 14 / 679), 240px);
  }
  [data-mobile-shell] #content.l-content {
    width: var(--shell-content-width);
    margin-left: calc(100% - var(--shell-content-width) - var(--shell-nav-width));
  }
}
/*------ 下層は固定headerの実寸80pxを本文フローで確保する。 -------*/
[data-mobile-shell][data-shell-page=subpage] #content.l-content {
  padding-top: 80px;
}

[data-mobile-shell][data-shell-page=subpage] .l-mainContent__inner {
  padding-right: 20px;
  padding-left: 20px;
}

[data-mobile-shell][data-shell-page=subpage] #breadcrumb .p-breadcrumb__list {
  padding-right: 0;
  padding-left: 0;
}

/****** PC左側の背景 ******/
/*--------------------------------
 *  PC左側の静止画
--------------------------------*/
.l-background {
  display: none;
}

/*------ 共有祖先と本文の通常フロー -------*/
[data-mobile-shell] {
  background-color: #ebe1d5;
}

@media screen and (min-width: 601px) {
  .l-background {
    display: block;
    position: fixed;
    top: var(--wp-admin--admin-bar--height, 0px);
    bottom: 0;
    left: 0;
    width: calc(100% - var(--shell-content-width) - var(--shell-nav-width));
    background-image: url("../img/common/8029a.png");
    background-position: 61.9734212353% center;
    background-repeat: no-repeat;
    background-size: cover;
    mask-image: url("../img/common/ef985.svg");
    mask-mode: alpha;
    mask-size: calc(100% + 160px) calc(100% + 160px);
    mask-position: center;
    mask-repeat: no-repeat;
  }
}
@media screen and (min-width: 601px) {
  .l-background.--home {
    background-image: none;
  }
}

@media screen and (min-width: 601px) {
  .l-background__video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/****** セクション ******/
/*--------------------------------
 *  ホーム
--------------------------------*/
/*--------------------------------
 * キービジュアル
--------------------------------*/
.l-sect-home-fv {
  position: relative;
  overflow: hidden;
  height: 100svh;
  background-color: #3c3430;
  color: #fff;
}

.l-sect-home {
  width: min(100%, 400px);
  margin-right: auto;
  margin-left: auto;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
}

.l-sect-home-fv__video {
  display: block;
  object-fit: cover;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 50%;
  width: max(100%, 400px);
  height: max(100%, 832px);
  transform: translateX(-50%);
}

.l-sect-home-fv__copy {
  position: absolute;
  bottom: 160px;
  left: 40px;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 10px;
  column-gap: 10px;
  width: 234px;
  color: #3c3430;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 20px;
}

.l-sect-home-fv__copy .l-sect-home-fv__copy-line {
  overflow: hidden;
  width: 1px;
  height: 36px;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  background-color: #fff;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.l-sect-home-fv__copy-line > span {
  display: flex;
  align-items: center;
  width: 234px;
  height: 36px;
  padding-top: 0;
  padding-right: 8px;
  padding-bottom: 0;
  padding-left: 8px;
  white-space: nowrap;
}

.l-sect-home-fv__scroll {
  position: absolute;
  right: 20px;
  bottom: 20px;
  display: inline-flex;
  align-items: center;
  row-gap: 10px;
  column-gap: 10px;
  color: #fff;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  text-decoration: none;
  filter: drop-shadow(0 0 5px rgba(60, 52, 48, 0.9019607843));
}
@media screen and (min-width: 601px) {
  .l-sect-home-fv__scroll {
    right: 30px;
    bottom: 30px;
  }
}

.l-sect-home-fv__scroll:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}

.l-sect-home-fv__scroll-icon {
  position: relative;
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 48px;
  overflow: hidden;
  width: 48px;
  height: 32px;
  border-radius: 8px;
  background-color: #fff;
}

.l-sect-home-fv__scrollArrow {
  position: absolute;
  top: 10px;
  left: 20px;
  overflow: hidden;
  width: 8px;
  height: 12px;
}

.l-sect-home-fv__scrollArrow::before,
.l-sect-home-fv__scrollArrow::after {
  content: "";
  position: absolute;
  left: 0;
  width: 8px;
  height: 12px;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4IDEyIj48cGF0aCB0cmFuc2Zvcm09InJvdGF0ZSgxODAgNCA2KSIgZD0iTTQgMEwwIDQuNTEyTC44NzIgNS4zMDRMMy40MDggMy4xNlYxMkg0LjU5MlYzLjE2TDcuMTI4IDUuMzA0TDggNC41MTJaIi8+PC9zdmc+");
  mask-size: 8px 12px;
  mask-repeat: no-repeat;
  animation-duration: 2.001s;
  animation-timing-function: ease-out;
  animation-iteration-count: infinite;
}

.l-sect-home-fv__scrollArrow::before {
  top: 0;
  background-color: #3c3430;
  animation-name: homeScrollFirst;
}

.l-sect-home-fv__scrollArrow::after {
  top: -14px;
  background-color: #fff;
  animation-name: homeScrollSecond;
}

/*------ 原prototype: 1.2秒待機、0.8秒移動、0.001秒後に無遷移reset -------*/
@keyframes homeScrollFirst {
  0%, 59.970015% {
    transform: translateY(0);
    background-color: #3c3430;
  }
  99.950025%, 100% {
    transform: translateY(14px);
    background-color: #fff;
  }
}
@keyframes homeScrollSecond {
  0%, 59.970015% {
    transform: translateY(0);
    background-color: #fff;
  }
  99.950025%, 100% {
    transform: translateY(14px);
    background-color: #3c3430;
  }
}
/*------ ホーム各セクションの共通背景 -------*/
.l-sect-home-concept,
.l-sect-home-menu,
.l-sect-home-news,
.l-sect-home-instagram {
  background-color: #ebe1d5;
}

/*--------------------------------
 * コンセプト
--------------------------------*/
.l-sect-home-concept {
  position: relative;
  overflow: hidden;
  padding-top: 60px;
  padding-right: 40px;
  padding-bottom: 80px;
  padding-left: 40px;
  background-color: #ebe1d5;
  color: #fff;
}

.l-sect-home-concept__pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  mask-image: url("../img/top/d9a78.svg");
  mask-mode: alpha;
  mask-size: calc(100% + 160px) calc(100% + 160px);
  mask-position: center;
  mask-repeat: no-repeat;
}

.l-sect-home-concept > :not(.l-sect-home-concept__pattern) {
  position: relative;
}

.l-sect-home-concept__title {
  padding-top: 0;
  padding-bottom: 0;
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 40px;
  margin-left: 0;
  border: 0;
  color: #fff;
  font-size: 28px;
  letter-spacing: 0.1em;
  line-height: 2;
}

.l-sect-home-concept__copy {
  display: flex;
  flex-direction: column;
  row-gap: 40px;
  column-gap: 40px;
  color: #fff;
  font-size: 16px;
  line-height: 2;
}

.l-sect-home-concept__copy p {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
}

/*--------------------------------
 * メニュー
--------------------------------*/
.l-sect-home-menu {
  padding-top: 60px;
  padding-right: 0;
  padding-bottom: 40px;
  padding-left: 0;
}

.l-sect-home-menu > .p-slider-menu {
  margin-top: 0;
}

.l-sect-home-menu > .p-list-menu {
  margin-top: 40px;
  margin-right: 20px;
  margin-bottom: 0;
  margin-left: 20px;
}

/*--------------------------------
 * 店内写真
--------------------------------*/
.l-sect-home-gallery {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  overflow: hidden;
  background-color: #3c3430;
}

.l-sect-home-gallery img {
  display: block;
  width: 100%;
  aspect-ratio: 2/3;
  object-fit: cover;
}

/*--------------------------------
 * 空間
--------------------------------*/
.l-sect-home-space {
  padding-top: 60px;
  padding-right: 20px;
  padding-bottom: 60px;
  padding-left: 20px;
  background-color: rgba(60, 52, 48, 0.9);
  color: #fff;
}

.l-sect-home-space__lead {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 60px;
  margin-left: 0;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: center;
}

.l-sect-home-space__items {
  display: flex;
  flex-direction: column;
  row-gap: 48px;
  column-gap: 48px;
}

.l-sect-home-space__items > :nth-child(1) {
  align-self: flex-end;
}

.l-sect-home-space__items > :nth-child(1) img {
  margin-left: auto;
}

.l-sect-home-space__items > :nth-child(3) {
  align-self: flex-end;
}

.l-sect-home-space__items > :nth-child(3) > img {
  margin-left: auto;
}

/*--------------------------------
 * お知らせ
--------------------------------*/
.l-sect-home-news {
  padding-top: 60px;
  padding-bottom: 80px;
}

.l-sect-home-news > .p-list-news {
  margin-top: 0;
  margin-right: 20px;
  margin-bottom: 0;
  margin-left: 20px;
}

.l-sect-home-news .c-btn-arrow {
  margin-top: 40px;
  margin-right: auto;
  margin-left: auto;
}

/*--------------------------------
 * Instagram
--------------------------------*/
.l-sect-home-instagram {
  padding-bottom: 32px;
}

.l-sect-home-instagram > .c-btn-instagram {
  display: flex;
  width: max-content;
  margin-top: 28px;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}

/*--------------------------------
 * LINE案内
--------------------------------*/
.l-sect-home-line {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 40px;
  column-gap: 40px;
  overflow: hidden;
  padding-top: 60px;
  padding-right: 20px;
  padding-bottom: 60px;
  padding-left: 20px;
  background-color: #3c3430;
  color: #fff;
  text-align: center;
}

.l-sect-home-line__background {
  position: absolute;
  inset: 0;
  background-image: url("../img/top/b82a7.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.l-sect-home-line > :not(.l-sect-home-line__background) {
  position: relative;
}

.l-sect-home-line__title {
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border: 0;
  background-color: transparent;
  color: #fff;
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.1em;
}

.l-sect-home-line > p {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  color: #fff;
  font-size: 14px;
  line-height: 25px;
}

.l-sect-home-line .c-btn-line {
  width: 100%;
  max-width: 360px;
}

.l-sect-home-line .l-sect-home-line__note {
  max-width: 360px;
  font-size: 14px;
  line-height: 1.7857142857;
}

/*--------------------------------
 * アクセス
--------------------------------*/
.l-sect-home-access {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0;
  padding-top: 60px;
  padding-right: 20px;
  padding-bottom: 60px;
  padding-left: 20px;
  background-color: #3c3430;
  color: #fff;
}

.l-sect-home-access__details {
  width: 100%;
  margin-bottom: 40px;
}

.l-sect-home-access__name {
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 10px;
  margin-left: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.5;
}

.l-sect-home-access__details dl {
  display: flex;
  flex-direction: column;
  row-gap: 5px;
  column-gap: 5px;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  color: #fff;
  font-size: 14px;
  line-height: 1.7857142857;
}

.l-sect-home-access__details dl > div {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  row-gap: 10px;
  column-gap: 10px;
}

.l-sect-home-access__details dt,
.l-sect-home-access__details dd {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.l-sect-home-access__map {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

/*--------------------------------
 * スタイルガイド
--------------------------------*/
.l-sect-styleguide .c-btn-line {
  width: 179px;
  max-width: 100%;
}

.l-sect-styleguide__item {
  margin-top: 40px;
}

.l-sect-styleguide .l-sect-styleguide__title {
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 1.8;
}

.l-sect-styleguide .l-sect-styleguide__sample {
  margin-top: 0;
  margin-bottom: 0;
}

.l-sect-styleguide .l-sect-styleguide__sample + .l-sect-styleguide__sample {
  margin-top: 16px;
}

.l-sect-styleguide__sample.--dark {
  background-color: #3c3430;
}

.l-sect-styleguide .l-sect-styleguide__description {
  margin-top: 12px;
  margin-bottom: 0;
}

/* Object > Component
 * 接頭辞：c-
 * 再利用できるパターンとして最小単位のモジュールを定義
======================================*/
/****** 見出し/タイトル ******/
/*--------------------------------
 * 共通セクション見出し
--------------------------------*/
.c-heading-sect {
  display: block;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 40px;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border: 0;
  background-color: transparent;
  background-image: none;
  color: #3c3430;
  text-align: center;
}

.c-heading-sect__en {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.7916666667;
  letter-spacing: 0.05em;
}

.c-heading-sect__ja {
  display: block;
  padding-top: 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: normal;
}

.c-heading-sect.--white {
  color: #fff;
}

/*--------------------------------
 * 共通見出し
--------------------------------*/
.post_content .c-heading {
  padding-top: 4px;
  padding-bottom: 4px;
  border-bottom: 1px solid #3c3430;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.8181818182;
}

/*--------------------------------
 * 中見出し
--------------------------------*/
.post_content .c-heading-sub {
  padding-top: 4px;
  padding-right: 10px;
  padding-bottom: 4px;
  padding-left: 10px;
  border: 0;
  background-color: #e2d8cc;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7777777778;
}
.post_content .c-heading-sub::before, .post_content .c-heading-sub::after {
  content: none;
}

/*--------------------------------
 * 小見出し
--------------------------------*/
.post_content .c-heading-small {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border: 0;
  background-color: transparent;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8125;
}

/****** ラベル ******/
/*--------------------------------
 * 投稿カテゴリーラベル
--------------------------------*/
.c-label-postCategory {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  padding-top: 6px;
  padding-right: 12px;
  padding-bottom: 6px;
  padding-left: 12px;
  border: 1px solid #3c3430;
  border-radius: 16px;
  color: #3c3430;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

/****** ボタン ******/
/*--------------------------------
 * 矢印リンク
--------------------------------*/
.c-btn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  row-gap: 0;
  column-gap: 20px;
  padding-top: 8px;
  padding-bottom: 8px;
  width: fit-content;
  border-top: 2px solid #3c3430;
  border-bottom: 1px solid #3c3430;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8125;
  text-decoration: none;
}

.c-btn-arrow img {
  flex-grow: 0;
  flex-shrink: 0;
}

/*------ 操作状態 -------*/
.c-btn-arrow[href] {
  transition: opacity 0.3s ease;
}

.c-btn-arrow[href]:hover {
  opacity: 0.6;
}

.c-btn-arrow[href]:focus-visible {
  outline: 2px solid #3c3430;
  outline-offset: 4px;
}

/*--------------------------------
 * LINEリンク
--------------------------------*/
.c-btn-line {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  row-gap: 0;
  column-gap: 5px;
  min-height: 48px;
  border-radius: 4px;
  background-color: #2abe97;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8125;
  text-decoration: none;
}

.c-btn-line img {
  flex-grow: 0;
  flex-shrink: 0;
}

/*------ 操作状態 -------*/
.c-btn-line[href] {
  transition: opacity 0.3s ease;
}

.c-btn-line[href]:hover {
  opacity: 0.6;
}

.c-btn-line[href]:focus-visible {
  outline: 2px solid #3c3430;
  outline-offset: 4px;
}

.c-btn-line:not([href]) {
  cursor: default;
}

/*------ ホームで使用済みの表示 -------*/
.c-btn-line.--home {
  display: flex;
  min-height: 64px;
  justify-content: space-between;
  padding-top: 16px;
  padding-right: 16px;
  padding-bottom: 16px;
  padding-left: 16px;
  font-size: 18px;
  line-height: 32px;
}

.c-btn-line__body {
  display: inline-flex;
  align-items: center;
  row-gap: 5px;
  column-gap: 5px;
}

.c-btn-line__logo {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 24px;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik0xNC41NzU0IDkuMjIyMTJWMTMuMDMwOUMxNC41NzU0IDEzLjEyODQgMTQuNTAwNSAxMy4yMDM0IDE0LjQwMyAxMy4yMDM0SDEzLjc5NTdDMTMuNzM1NyAxMy4yMDM0IDEzLjY4MzIgMTMuMTczNCAxMy42NTMyIDEzLjEzNTlMMTEuOTA2MyAxMC43ODE2VjEzLjAzODRDMTEuOTA2MyAxMy4xMzU5IDExLjgzMTMgMTMuMjEwOSAxMS43MzM4IDEzLjIxMDlIMTEuMTI2NUMxMS4wMjkxIDEzLjIxMDkgMTAuOTU0MSAxMy4xMzU5IDEwLjk1NDEgMTMuMDM4NFY5LjIyOTYyQzEwLjk1NDEgOS4xMzIxNSAxMS4wMjkxIDkuMDU3MTcgMTEuMTI2NSA5LjA1NzE3SDExLjczMzhDMTEuNzg2MyA5LjA1NzE3IDExLjg0NjMgOS4wODcxNiAxMS44NzYzIDkuMTMyMTVMMTMuNjIzMiAxMS40ODY0VjkuMjI5NjJDMTMuNjIzMiA5LjEzMjE1IDEzLjY5ODIgOS4wNTcxNyAxMy43OTU3IDkuMDU3MTdIMTQuNDAzQzE0LjUwMDUgOS4wNTcxNyAxNC41ODI5IDkuMTMyMTUgMTQuNTgyOSA5LjIyMjEySDE0LjU3NTRaTTEwLjE4MTggOS4wNDk2N0g5LjU3NDUxQzkuNDc3MDQgOS4wNDk2NyA5LjQwMjA2IDkuMTI0NjUgOS40MDIwNiA5LjIyMjEyVjEzLjAzMDlDOS40MDIwNiAxMy4xMjg0IDkuNDc3MDQgMTMuMjAzNCA5LjU3NDUxIDEzLjIwMzRIMTAuMTgxOEMxMC4yNzkzIDEzLjIwMzQgMTAuMzU0MyAxMy4xMjg0IDEwLjM1NDMgMTMuMDMwOVY5LjIyMjEyQzEwLjM1NDMgOS4xMzIxNSAxMC4yNzkzIDkuMDQ5NjcgMTAuMTgxOCA5LjA0OTY3Wk04LjcwNDc4IDEyLjI0MzdINy4wNDAzVjkuMjIyMTJDNy4wNDAzIDkuMTI0NjUgNi45NjUzMiA5LjA0OTY3IDYuODY3ODUgOS4wNDk2N0g2LjI2MDU0QzYuMTYzMDcgOS4wNDk2NyA2LjA4ODEgOS4xMjQ2NSA2LjA4ODEgOS4yMjIxMlYxMy4wMzA5QzYuMDg4MSAxMy4wNzU5IDYuMTAzMDkgMTMuMTEzNCA2LjEzMzA4IDEzLjE1MDlDNi4xNjMwNyAxMy4xODA5IDYuMjAwNTYgMTMuMTk1OSA2LjI1MzA1IDEzLjE5NTlIOC42OTcyOEM4Ljc5NDc1IDEzLjE5NTkgOC44Njk3MyAxMy4xMjA5IDguODY5NzMgMTMuMDIzNFYxMi40MTYxQzguODY5NzMgMTIuMzI2MSA4Ljc5NDc1IDEyLjI0MzcgOC43MDQ3OCAxMi4yNDM3Wk0xNy43ODQ0IDkuMDQ5NjdIMTUuMzQwMkMxNS4yNTAyIDkuMDQ5NjcgMTUuMTY3OCA5LjEyNDY1IDE1LjE2NzggOS4yMjIxMlYxMy4wMzA5QzE1LjE2NzggMTMuMTIwOSAxNS4yNDI3IDEzLjIwMzQgMTUuMzQwMiAxMy4yMDM0SDE3Ljc4NDRDMTcuODgxOSAxMy4yMDM0IDE3Ljk1NjkgMTMuMTI4NCAxNy45NTY5IDEzLjAzMDlWMTIuNDIzNkMxNy45NTY5IDEyLjMyNjEgMTcuODgxOSAxMi4yNTEyIDE3Ljc4NDQgMTIuMjUxMkgxNi4xMlYxMS42MDY0SDE3Ljc4NDRDMTcuODgxOSAxMS42MDY0IDE3Ljk1NjkgMTEuNTMxNCAxNy45NTY5IDExLjQzMzlWMTAuODE5MUMxNy45NTY5IDEwLjcyMTcgMTcuODgxOSAxMC42NDY3IDE3Ljc4NDQgMTAuNjQ2N0gxNi4xMlYxMC4wMDE5SDE3Ljc4NDRDMTcuODgxOSAxMC4wMDE5IDE3Ljk1NjkgOS45MjY5IDE3Ljk1NjkgOS44Mjk0M1Y5LjIyMjEyQzE3Ljk1NjkgOS4xMzIxNSAxNy44NzQ0IDkuMDQ5NjcgMTcuNzg0NCA5LjA0OTY3Wk0yMy45OTI1IDQuMzc4NjNWMTkuNjU4OUMyMy45OTI1IDIyLjA1ODEgMjIuMDIwNiAyNCAxOS42MTM5IDI0SDQuMzQxMTRDMS45NDE4OSAyMy45ODUgMCAyMi4wMTMxIDAgMTkuNjEzOVY0LjM0MTE0QzAgMS45NDE4OSAxLjk3OTM4IDAgNC4zNzg2MyAwSDE5LjY1ODlDMjIuMDU4MSAwIDI0IDEuOTcxODggMjQgNC4zNzg2M0gyMy45OTI1Wk0yMC42OTM1IDEwLjkzOTFDMjAuNjkzNSA3LjAzMjggMTYuNzcyMyAzLjg0NjMgMTEuOTU4OCAzLjg0NjNDNy4xNDUyNyAzLjg0NjMgMy4yMjM5OSA3LjAzMjggMy4yMjM5OSAxMC45MzkxQzMuMjIzOTkgMTQuNDQwNSA2LjMyODAyIDE3LjM3OTYgMTAuNTI2NyAxNy45MzQ0QzExLjU0NjQgMTguMTUxOCAxMS40MzM5IDE4LjUyNjcgMTEuMjAxNSAxOS45MDYzQzExLjE2NCAyMC4xMjM3IDExLjAyMTYgMjAuNzY4NSAxMS45NTg4IDIwLjM3ODZDMTIuODg4NSAxOS45ODg4IDE2Ljk4OTcgMTcuNDE3MSAxOC44MjY2IDE1LjMxMDJDMjAuMDkzNyAxMy45MTU3IDIwLjY5MzUgMTIuNTA2MSAyMC42OTM1IDEwLjk0NjZWMTAuOTM5MVoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-size: 24px 24px;
  background-repeat: no-repeat;
}

.c-btn-line__arrow {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 18px;
  width: 18px;
  height: 12px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik0xOCA2TDExLjIzMiAwTDEwLjY2OCAwLjY4NEwxMC4wNDQgMS4zMDhMMTMuMjYgNS4xMTJIMFY2Ljg4OEgxMy4yNkwxMC4wNDQgMTAuNjkyTDEwLjY2OCAxMS4zMTZMMTEuMjMyIDEyTDE4IDZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
  background-position: center;
  background-size: 18px 12px;
  background-repeat: no-repeat;
  transform: rotate(-45deg);
}

/*--------------------------------
 * Instagramリンク
--------------------------------*/
.c-btn-instagram {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  row-gap: 0;
  column-gap: 10px;
  padding-bottom: 4px;
  border-bottom: 1px solid #000;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7857142857;
  text-decoration: none;
}

.c-btn-instagram__body {
  display: inline-flex;
  align-items: center;
  row-gap: 0;
  column-gap: 5px;
}

.c-btn-instagram__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 17.678px;
  height: 17.678px;
}

.c-btn-instagram__arrow img {
  transform: rotate(-45deg);
}

/*------ 操作状態 -------*/
.c-btn-instagram[href] {
  transition: opacity 0.3s ease;
}

.c-btn-instagram[href]:hover {
  opacity: 0.6;
}

.c-btn-instagram[href]:focus-visible {
  outline: 2px solid #3c3430;
  outline-offset: 4px;
}

.c-btn-instagram:not([href]) {
  cursor: default;
}

/* Object > Project
 * 接頭辞：p-
 * 再利用できるパターンとしてComponentの集合体を定義
 * もしくはComponentとするには大きすぎるObject（4階層構造以上を目安）を定義
======================================*/
/****** リスト ******/
/*--------------------------------
 * メニュー分類リスト
--------------------------------*/
.p-list-menu {
  border-bottom: 2px solid #3c3430;
}

.p-list-menu__item {
  border-top: 2px solid #3c3430;
}

.p-list-menu__item h3 {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.p-list-menu__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  row-gap: 10px;
  column-gap: 10px;
  width: 100%;
  padding-top: 8px;
  padding-right: 10px;
  padding-bottom: 8px;
  padding-left: 10px;
  border: 0;
  background-color: transparent;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 32px;
  text-align: left;
  cursor: pointer;
}

.p-list-menu__icon {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 12px;
  width: 12px;
  height: 8px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjEyIiBoZWlnaHQ9IjgiIHZpZXdCb3g9IjAgMCAxMiA4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBpZD0iVmVjdG9yIiBkPSJNNiA4TDEyIDEuMTg3ODhMMTAuNjkyIDBMNiA0LjM2MzY0TDEuMzA4IDBMMCAxLjE4Nzg4TDYgOFoiIGZpbGw9IiMzQzM0MzAiLz4KPC9zdmc+Cg==");
  background-position: center;
  background-size: 12px 8px;
  background-repeat: no-repeat;
  transition: transform 0.3s ease-out;
}

.p-list-menu__toggle[aria-expanded=true] .p-list-menu__icon {
  transform: rotate(180deg);
}

.p-list-menu__toggle:focus-visible {
  outline: 2px solid #3c3430;
  outline-offset: -2px;
}

.p-list-menu__panel {
  overflow: hidden;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
}

.p-list-menu__panel-body {
  padding-top: 10px;
  padding-right: 0;
  padding-bottom: 20px;
  padding-left: 0;
}

/*------ メニュー本文 -------*/
.p-list-menu__prices {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8125;
}

.p-list-menu__priceRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 80px;
  column-gap: 10px;
  padding-top: 4px;
  padding-right: 10px;
  padding-bottom: 4px;
  padding-left: 10px;
}

.p-list-menu__prices.--drink .p-list-menu__priceRow {
  grid-template-columns: minmax(0, 1fr) 80px 80px;
}

.p-list-menu__priceRow dt,
.p-list-menu__priceRow dd {
  min-width: 0;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  font-weight: inherit;
}

/* 原name枠160pxに144px文字＋5px間隔＋14px原markを保持。末尾3pxは原枠外の10px列間内。 */
.p-list-menu__name {
  display: flex;
  align-items: center;
  column-gap: 5px;
}

.p-list-menu__name > span {
  flex-shrink: 0;
  max-width: calc(100% - 16px);
}

.p-list-menu__name .p-list-menu__setMark {
  flex-shrink: 0;
  margin-left: 0;
}

.p-list-menu__temperature {
  font-size: 14px;
}

.p-list-menu__price {
  text-align: right;
}

.p-list-menu__setMark {
  display: inline-block;
  width: 14px;
  height: 16px;
  margin-left: 5px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxNiI+PHBhdGggZmlsbD0iIzAwYTRiNCIgZD0iTTEwLjAyMiAxMS45MzdjLjA1Ny0uMDE3LjExOS0uMDMzLjE2My0uMDYuMDQzLS4wMjYuMDczLS4wNTUuMTA1LS4wODRxLjI2NC0uMTA3LjQ5My0uMjczYTEgMSAwIDAgMCAuMjAyLS4xMDVzLjAxNC0uMDE2LjAzLS4wMTRjLjAxNi4wMDEuMDMtLjAzMS4wMy0uMDMxbC4wMDYtLjAxMS4wNzUtLjAzN3EuMDM0LS4wMjIuMDY3LS4wNDdhLjcuNyAwIDAgMCAuMjE4LS4xMTYuNi42IDAgMCAwIC4wODUtLjA4N3EuMDI4LS4wMi4wNC0uMDI5bC4wNDgtLjAyM2MuMDI2LS4wMTQuMTExLS4wNzguMTQtLjEwMi4wNTQtLjAyOC4xMTItLjA1Mi4xNjUtLjA4MS4wOC0uMDQ1LjE0NC0uMDg3LjIwNS0uMTM4YS44MzguODM4IDAgMCAwIC4zNjMtLjI1IDEgMSAwIDAgMCAuMjAxLS4wOWMuMDU0LS4wMzIuMTUyLS4xLjE3OC0uMTU0LjAxLS4wMi4wMDYtLjAyMyAwLS4wMjIuMDQ2LS4wMjQuMTA0LS4wNDEuMTQ0LS4wNjhhMS44IDEuOCAwIDAgMCAuMzEzLS4yNWMuMDQ3LS4wNS4wODUtLjEwOC4xMzgtLjE1NC4wNC0uMDM2LjEwNi0uMDY0LjE0Ni0uMTEzLjAzNC0uMDQzLjAzOC0uMDg4LjA2MS0uMTM2LjAzLS4wNi4wOS0uMTA2LjEzLS4xNTguMDQtLjA1Ni4wNi0uMTE4LjA4Ni0uMTgyLjAyNy0uMDYzLjA4My0uMTI4LjA4Ny0uMTk2LjAwNS0uMDUxLS4wMDQtLjA4LjAxLS4xMjcuMDE5LS4wNjIuMDMtLjA4LjAzLS4xNTIgMC0uMDUzLjAyNS0uMTIuMDE4LS4xNy0uMDEyLS4wNjctLjA0Mi0uMDk3LS4wNDItLjE2OCAwLS4wNjIuMDE2LS4xMjgtLjAxLS4xODktLjAyMS0uMDUtLjA1NS0uMDg4LS4wNzUtLjE0Mi0uMDQzLS4xMTMtLjA4MS0uMjYyLS4xNDUtLjM2Ni0uMDU5LS4wOTctLjE2Ni0uMTI4LS4yMjUtLjIzNy0uMDUtLjA5NC0uMTQtLjEzOC0uMjExLS4yMi0uMDc1LS4wODgtLjE5Mi0uMTQtLjI2OC0uMjI0LS4wNzgtLjA4Ny0uMjA2LS4xMS0uMjk1LS4xOTJhMS4yIDEuMiAwIDAgMC0uMzMzLS4yMTdjLS4xMzgtLjA1LS4yMjktLjEyNy0uMzQzLS4yMTdhMiAyIDAgMCAwLS4zNDQtLjIxNWMtLjEyNy0uMDY0LS4yMTMtLjE1Mi0uMzQtLjIxNy0uMTI2LS4wNjUtLjIxNy0uMTc0LS4zMjgtLjI1Ny0uMTE5LS4wOS0uMjY1LS4xNDktLjM3OS0uMjQ1YTEzIDEzIDAgMCAxLS42MjYtLjU1OGMtLjE4OC0uMTc4LS4zOTItLjM0LS41OTUtLjUwOC0uMDUtLjA0LS4wNTktLjA0Ni0uMDk1LS4wOTQtLjAzMi0uMDQyLS4wNi0uMDg4LS4wOTctLjEyNS0uMDQ2LS4wNDUtLjA5NC0uMDUzLS4xNDQtLjA4OS0uMDUzLS4wMzctLjEtLjExLS4xNDgtLjE1NS0uMDUtLjA1LS4wNzUtLjA5MS0uMTExLS4xNDctLjAyOS0uMDQ2LS4wNy0uMDY2LS4xMDMtLjEwMi0uMDc2LS4wOC0uMTE2LS4xODYtLjIxNi0uMjU5LS4wNzQtLjA1NC0uMDQxLS4wMTgtLjA4NC0uMTAzLS4wMjctLjA1Ni0uMDg2LS4xMDQtLjEyNC0uMTU1LS4wNzYtLjEwMy0uMTgyLS4xNDctLjI1LS4yNTctLjA3Mi0uMTE1LS4xMzctLjIyMy0uMjM1LS4zMjMtLjA4NC0uMDgzLS4xOC0uMTY1LS4yMzYtLjI1OGExLjcgMS43IDAgMCAwLS4yOTItLjM0M2MtLjA1Ni0uMDUyLS4xMi0uMDk0LS4xNjgtLjE1MS0uMDQyLS4wNS0uMDY5LS4xMDctLjEyNC0uMTQ5LS4wNTYtLjA0My0uMTExLS4wNy0uMTYyLS4xMTYtLjA1NC0uMDQ4LS4xMDEtLjExMi0uMTUyLS4xNjYtLjExLS4xMTYtLjI1LS4yMDYtLjM3NC0uMzA4LS4wNjQtLjA1MS0uMTE4LS4xMS0uMTgxLS4xNjEtLjA1Ny0uMDQ3LS4xMjItLjA2LS4xODYtLjA5Ni0uMDY1LS4wMzctLjExLS4xLS4xNzQtLjE0MS0uMDcyLS4wNDUtLjE1Ni0uMDYtLjIzMi0uMDk4LS4wNzQtLjAzNS0uMTQ0LS4wNzktLjIyLS4xMTQtLjA2LS4wMjgtLjA5OS0uMDczLS4xNTktLjA5NkM1LjEwNS4yNzIgNS4wNTEuMjYgNC45ODcuMjNhLjYuNiAwIDAgMC0uMTkzLS4wNDYuNi42IDAgMCAwLS4yNC0uMDY1TDQuNDYyLjEyQzQuNDU0LjEyIDQuNDUuMTE2IDQuNDQuMTE0IDQuMjg2LjA0MyA0LjExNy4wMzEgMy45NDguMDQzYTEuNCAxLjQgMCAwIDAtLjYwNC0uMDE3cS0uMDExIDAtLjAzLS4wMDJhMS40MzIgMS40MzIgMCAwIDAtLjQ3LjA3NmMtLjA1LjAwOC0uMTAxLjAxNC0uMTUuMDI3LS4wNzMuMDE3LS4xMjcuMDM3LS4xOTQuMDYtLjA4Ny4wMS0uNTYzLjItLjU4NS4yMWEzIDMgMCAwIDAtLjk2OC42NDJjLS4xMTQuMTE2LS4yLjI1LS4zMDQuMzcyLS4wNDguMDU0LS4xMTYuMTI3LS4xNDQuMTkyLS4wMTIuMDI0LS4wMDguMDU3LS4wMTYuMDgyLS4wMTMuMDQ1LS4wMjkuMDY2LS4wNTYuMTExLS4wNDEuMDY3LS4wNTQuMTQ0LS4wOTMuMjE0LS4wNDIuMDczLS4wOTcuMTU2LS4xMi4yMzctLjAxOC4wNzQuMDEyLjE2MS0uMDIuMjMyLS4wMzUuMDc4LS4wNy4wOS0uMDguMTc1LS4wNDIuMzEzLS4wNjYuNjMtLjA4Ny45NDgtLjAyMi4zMzMuMDM1LjY0OC4wNjcuOTc4LjAxNi4xNTYuMDIuMzA2LjA0NC40Ni4wMTIuMDcyLjAxNi4xNTYuMDE1LjIzLS4wMDIuMTAzLjAyMi4xODUuMDI4LjI4NC4wMS4xNDkuMDAzLjMwMy4wNC40NTJhLjcuNyAwIDAgMSAuMDE0LjI0MmMtLjAwNS4wOTEuMDI3LjE0NS4wNDYuMjI5LjAxNi4wNjctLjAwNi4xNC4wMDMuMjA5LjAxMi4wNzkuMDA1LjE1LjAxNS4yMjYuMDEuMDczLS4wMS4xMzguMDA0LjIxLjAwNS4wMjYuMDM0LjA0LjAzNS4wNjkgMCAuMDMtLjAyNy4wNjctLjAyNy4xLS4wMDQuMTIxLjA2NC4yNi4wNS4zNzQtLjAwOC4wNzEtLjAyMy4wODQtLjAwOC4xNTYuMDE0LjA3OC0uMDAyLjE0Ny4wMDMuMjI4cy4wMzMuMTcyLjAzLjI1M2MwIC4wNTgtLjAzMy4xMDgtLjAzMi4xNzMuMDA1LjE2NC4wMTEuMzM1LjAwMy40OTYtLjAwOC4xNDctLjAwNC4yOTQtLjAxMi40NC0uMDEuMTcxLS4wMTEuMzM5LS4wMjkuNTEtLjAwMy4wMzYuMDIuMDY5LjAxLjEwOS0uMDA1LjAyMi0uMDM3LjA1LS4wNDUuMDczLS4wMjIuMDYzLS4wMDguMTQ3LS4wMDYuMjE0LjAwMS4xNzgtLjA3My4zMy0uMDguNTAzLS4wMDMuMDc2LjAyNC4xNTMuMDIzLjIzLS4wMDMuMDc3LS4wNDMuMTQ1LS4wNTcuMjItLjAyNy4xNTUtLjA0OC4zMTctLjA3My40NzUtLjAyMi4xNS0uMDU0LjI5Ny0uMDYuNDQ5LS4wMDQuMDc3LjAwNy4xNS4wMTIuMjI3LjAwNi4xMDQtLjAzMi4xOS0uMDM4LjI4OS0uMDA1LjA3Ny4wMDguMTQ1IDAgLjIyNi0uMDEuMDc3LjAxNi4xNDIuMDMyLjIxOC4wMTcuMDg1LS4wMTQuMTUyLS4wMTMuMjM0LjAwMi4wOC4wNjcuMTU1LjA2Mi4yNDIgMCAuMDI2LS4wMTcuMDUyLS4wMi4wNzktLjAwMi4wNi4wMjguMDg2LjA0NC4xNDUuMDI0LjA5My4wMjcuMTU1LjA3My4yNDUuMDguMTYuMDc3LjMzLjE5OC40Ny4wNjMuMDcyLjA2OC4xNTcuMTE5LjI0LjAzNS4wNTUuMS4xLjE0MS4xNTRxLjA3Ny4xLjE3OC4xOGMuMDguMDYzLjEzNi4xNC4yMS4yMDkuMTA1LjA5Ni4yNDcuMjM3LjM4My4yOTQuMTk0LjA4LjM3NC4yMy41OTUuMjQ4LjAzNS4wMDMuMDc2IDAgLjExNCAwIDAgLjAwNS4wNTIuMDIuMDguMDI4LjEuMDMuMTkzLjA2LjMuMDcuMTkuMDE3LjM2Ni4wMDYuNTQ2LS4wMTQuMTcuMDE1LjMyOS4wMDYuNS0uMDM4LjA1LjAyNS4zMjItLjAyNi4zNDMtLjAyOWEzLjIgMy4yIDAgMCAwIDEuMDItLjMwOHEuMTA1LS4wMzMuMjA5LS4wOGwuMDc2LS4wMzhjLjAzMi0uMDEuMDY1LS4wMTUuMDc1LS4wMTguMTItLjA0Mi4yNTgtLjA4Ny4zNDItLjE4cS4wMDMtLjAwNC4wMDctLjAwOGEuNi42IDAgMCAwIC4xNjUtLjEwNGMuMTA3LS4xLjI0Mi0uMTg3LjM1Ni0uMjgyLjA2Ny0uMDU1LjEzNS0uMDg4LjE5NC0uMTU1LjAzNS0uMDM4LjA1OS0uMDY4LjEwNS0uMDk5LjIxNC0uMTQ1LjQ0LS4yOTQuNjA5LS40ODEuMTEyLS4wNTEuMTYxLS4xMS4yNC0uMTkuMDQ3LS4wNDcuMTEtLjA3NS4xNjQtLjExNy4wNDgtLjAzNy4wNzgtLjA3Ny4xMTEtLjEyLjA2OC0uMDQ5LjEyMi0uMDk4LjE4NC0uMTYuMDI5LS4wMjguMDY0LS4wNDguMDk1LS4wNzVsLjAzNy0uMDMuMDYzLS4wMzVjLjA4NC0uMDQ2LjE1OS0uMTA3LjI0LS4xNTYuMDcxLS4wNDMuMTEtLjEwMi4xNTctLjE1OGExIDEgMCAwIDAgLjIwMS0uMTA5cS4xNS0uMTA2LjI4OS0uMjI2LjA2LS4wNTIuMTI4LS4wOTljLjAzNC0uMDIzLjE4My0uMTI1LjEzNC0uMTE2bC4wNjMtLjAzYy4wNTktLjAzNy4wOTQtLjA3OC4xMzctLjEzLjA0Mi0uMDUuMDQyLS4wNTUuMTAzLS4wOTcuMDQ5LS4wMzQuMDYzLS4wNTEuMDYtLjA1NnEuMDc5LS4wMi4xNDktLjA1M2MuMDU5LS4wMjkuMTE0LS4wNjMuMTcxLS4wOTIuMDYyLS4wMzMuMTI2LS4wNi4xNzYtLjEwNCAwIDAgLjAxOC0uMDIuMDI0LS4wM3MuMDItLjAxMi4wMjQtLjAyMWMuMDA1LS4wMS4wMzItLjAyLjAzMi0uMDJ6Ii8+PC9zdmc+");
  background-position: center;
  background-size: 14px 16px;
  background-repeat: no-repeat;
  vertical-align: middle;
}

.p-list-menu__set {
  margin-top: 20px;
  border: 1px solid #3c3430;
  border-radius: 10px;
  padding-top: 15px;
  padding-right: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
}

.p-list-menu__setTitle {
  display: grid;
  margin-right: -2px;
  color: #00a3b4;
  grid-template-columns: minmax(0, 1fr) 80px;
  column-gap: 10px;
  margin-top: 0;
  margin-bottom: 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7777777778;
}

.p-list-menu__setTitle small {
  font-size: 14px;
  line-height: 2.6666666667;
}

.p-list-menu__setTitle > :last-child {
  font-size: 16px;
  line-height: 1.8125;
  text-align: right;
}

.p-list-menu__desc {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}

.p-list-menu__setDescription {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 13px;
  line-height: 1.9230769231;
}

.p-list-menu__setDescription .p-list-menu__setMark {
  margin-right: 5px;
  margin-left: 0;
}

/*--------------------------------
 * お知らせ一覧
--------------------------------*/
.p-list-news {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border-bottom: 1px solid #3c3430;
  list-style: none;
}

.p-list-news > li {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 12px;
  padding-right: 0;
  padding-bottom: 12px;
  padding-left: 0;
  border-top: 1px solid #3c3430;
  line-height: inherit;
}

.p-list-news [hidden] {
  display: none;
}

.p-list-news__meta {
  display: flex;
  flex-wrap: wrap;
  overflow-wrap: anywhere;
  align-items: center;
  row-gap: 10px;
  column-gap: 10px;
}

.p-list-news__meta .c-label-postCategory {
  max-width: 100%;
}

.p-list-news time {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}

.p-list-news__title {
  margin-top: 10px;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  font-size: 16px;
  line-height: 1.8125;
}

.p-list-news__link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.p-list-news__link:focus-visible {
  outline: 2px solid #3c3430;
  outline-offset: 4px;
}

/*--------------------------------
 * 写真付きメニューカード
--------------------------------*/
.p-card-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 20px;
  column-gap: 20px;
  width: 280px;
  color: #3c3430;
}

.p-card-menu > img {
  display: block;
  width: 100%;
  aspect-ratio: 280/187;
  border-radius: 8px;
  object-fit: cover;
}

.p-card-menu__copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 10px;
  column-gap: 10px;
}

.p-card-menu__copy > span {
  padding-top: 8px;
  padding-right: 16px;
  padding-bottom: 8px;
  padding-left: 16px;
  border: 1px solid currentColor;
  border-radius: 16px;
  font-size: 14px;
  line-height: 14px;
}

.p-card-menu__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  width: 280px;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  text-align: center;
}

/*--------------------------------
 * 空間紹介カード
--------------------------------*/
.p-card-space {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  column-gap: 20px;
  width: 320px;
  color: #fff;
}

.p-card-space > img {
  display: block;
  width: 240px;
  height: auto;
  object-fit: cover;
}

.p-card-space__title {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  color: inherit;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7777777778;
}

.p-card-space > p {
  margin-top: -10px;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8125;
}

/*--------------------------------
 * Instagram写真カード
--------------------------------*/
.p-card-instagram {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 2px solid #3c3430;
  border-bottom: 2px solid #3c3430;
}

.p-card-instagram figure {
  position: relative;
  aspect-ratio: 1;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
}

.p-card-instagram figure > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-card-instagram__mark {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMTYgMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik00LjggMTIuOEM0LjM2IDEyLjggMy45ODQgMTIuNjQgMy42NzIgMTIuMzI4QzMuMzYgMTIuMDE2IDMuMiAxMS42NCAzLjIgMTEuMlYxLjZDMy4yIDEuMTYgMy4zNiAwLjc4NCAzLjY3MiAwLjQ3MkMzLjk4NCAwLjE2IDQuMzYgMCA0LjggMEgxNC40QzE0Ljg0IDAgMTUuMjE2IDAuMTYgMTUuNTI4IDAuNDcyQzE1Ljg0IDAuNzg0IDE2IDEuMTYgMTYgMS42VjExLjJDMTYgMTEuNjQgMTUuODQgMTIuMDE2IDE1LjUyOCAxMi4zMjhDMTUuMjE2IDEyLjY0IDE0Ljg0IDEyLjggMTQuNCAxMi44SDQuOFpNNC44IDExLjJIMTQuNFYxLjZINC44VjExLjJaTTEuNiAxNkMxLjE2IDE2IDAuNzg0IDE1Ljg0IDAuNDcyIDE1LjUyOEMwLjE2IDE1LjIxNiAwIDE0Ljg0IDAgMTQuNFYzLjJIMS42VjE0LjRIMTIuOFYxNkgxLjZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
  background-position: center;
  background-size: 16px 16px;
  background-repeat: no-repeat;
}

/*--------------------------------
 * 写真付きメニュースライダー
--------------------------------*/
.p-slider-menu {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  height: 285px;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
}

/* 375px枠の中央47.5pxと原図のtaco左48pxとの差0.5pxだけ配置で補う。 */
.p-slider-menu__track {
  left: 0.5px;
  transition-timing-function: linear;
}

.p-slider-menu__track > .p-card-menu {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 280px;
}

/****** ナビゲーション ******/
/*--------------------------------
 *  共通の業務ナビゲーション
--------------------------------*/
.p-nav {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 20px;
  margin-top: 80px;
  margin-bottom: 80px;
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.p-nav a {
  color: #3c3430;
  text-decoration: none;
}

.p-nav__pending {
  display: block;
  width: 20px;
  height: 20px;
}

.p-nav a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

/****** 共通メニューと下部CTA ******/
/*--------------------------------
 *  SPドロワーとPC固定ナビ（共通DOM）
--------------------------------*/
[data-mobile-shell] #sp_menu.p-spMenu {
  display: block;
  font-size: 16px;
}

[data-mobile-shell] #sp_menu .p-spMenu__inner {
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  width: 240px;
  max-width: 100%;
  height: 100%;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  background-color: #ebe1d5;
  color: #3c3430;
  transform: translateX(100%);
  transition: transform 0.3s;
}

[data-mobile-shell] #sp_menu .p-spMenu__inner::before {
  content: none;
}

[data-mobile-shell] #sp_menu .p-spMenu__body {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 60px;
  padding-right: 30px;
  padding-bottom: 60px;
  padding-left: 30px;
  height: auto;
  min-height: 100%;
  overflow: visible;
}

.p-spMenu__logo {
  display: block;
  width: 120px;
  height: 144px;
  margin-left: auto;
  margin-right: auto;
}

.p-spMenu__logo img {
  display: block;
  width: 100%;
  height: 100%;
}

.p-spMenu__close {
  position: absolute;
  top: clamp(20px, 20px + (100svh - 480px) * 8 / 332, 28px);
  right: 21px;
  width: 24px;
  height: 24px;
}

.p-spMenu__close img {
  display: block;
  width: 100%;
  height: 100%;
}

.p-spMenu__line {
  width: 100%;
}

.p-spMenu__line img {
  width: 20px;
  height: 20px;
}

.p-spMenu__close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

/*------ SWELLのメニュー状態 -------*/
[data-spmenu=opened] [data-mobile-shell] #sp_menu .p-spMenu__inner {
  transform: translateX(0);
}

@media screen and (max-width: 600px) {
  [data-spmenu=opened] body {
    overflow-y: hidden;
  }
}
/*------ 601px以上は同じナビを右側へ常設 -------*/
@media screen and (min-width: 601px) {
  [data-mobile-shell] #sp_menu.p-spMenu {
    position: fixed;
    top: var(--wp-admin--admin-bar--height, 0px);
    right: 0;
    bottom: 0;
    left: auto;
    z-index: 100;
    width: var(--shell-nav-width);
    height: auto;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  [data-mobile-shell] #sp_menu .p-spMenu__inner {
    position: relative;
    width: 100%;
    border-left: 1px solid #3c3430;
    transform: none;
  }
  [data-mobile-shell] #sp_menu .p-spMenu__body {
    padding-top: 160px;
  }
  [data-mobile-shell] #sp_menu .p-spMenu__overlay,
  .p-spMenu__close {
    display: none;
  }
}
/*------ 低いviewportでも全操作へ到達できる自然高 -------*/
@media screen and (max-height: 680px) {
  [data-mobile-shell] #sp_menu .p-spMenu__body {
    padding-top: 64px;
    padding-bottom: 30px;
  }
  .p-nav {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}
/*--------------------------------
 *  スクロール後のSP下部CTA
--------------------------------*/
.p-float {
  display: none;
}

@media screen and (max-width: 600px) {
  .p-float {
    position: fixed;
    z-index: 999;
    right: 20px;
    bottom: calc(20px + env(safe-area-inset-bottom, 0px));
    left: 20px;
    z-index: 90;
    display: flex;
    align-items: center;
    column-gap: 5px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }
  .p-float__pending {
    display: block;
    width: 48px;
    height: 48px;
    pointer-events: auto;
  }
  .p-float__pending img {
    display: block;
    width: 100%;
    height: 100%;
  }
  .p-float__line {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 0;
    min-width: 0;
  }
  .p-float__line img {
    width: 20px;
    height: 20px;
  }
  [data-scrolled=true] .p-float {
    visibility: visible;
    opacity: 1;
  }
  [data-spmenu=opened] .p-float {
    visibility: hidden;
    opacity: 0;
  }
}
/****** フォーム ******/
/*--------------------------------
 *  [コンタクトフォーム7]お問合せフォーム
--------------------------------*/
form.wpcf7-form {
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
  font-family: inherit;
}

.p-form {
  width: 100%;
  line-height: 1.4;
}

.p-form .__row {
  margin-bottom: 2em;
}

.p-form .__th {
  padding-bottom: 0.5em;
  font-size: 14px;
  font-weight: 700;
}
.p-form .__th strong {
  font-size: 10px;
  margin-left: 0.5em;
  color: #dc3232;
}

.p-form .__td {
  font-size: 16px;
}

.p-form .__td input[type=text],
.p-form .__td input[type=tel],
.p-form .__td input[type=url],
.p-form .__td input[type=date],
.p-form .__td input[type=email],
.p-form .__td select,
.p-form .__td textarea {
  padding: 0.25em 0.5em;
  width: 100%;
  display: block;
}
.p-form .__td input[name=zip],
.p-form .__td select[name=pref] {
  width: 180px;
}

.p-form .wpcf7-form-control-wrap {
  display: block;
}
.p-form .wpcf7-checkbox,
.p-form .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  padding-top: 0.5em;
  font-size: 14px;
}
.p-form .wpcf7-list-item {
  margin: 0;
  display: block;
  line-height: 1;
}
.p-form select.wpcf7-select {
  appearance: none;
  padding-right: 1.5em;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+IDxwYXRoIGZpbGw9IiNhMGE1YWEiIGQ9Im01IDYgNSA1IDUtNSAyIDEtNyA3LTctNyAyLTF6Ii8+PC9zdmc+");
  background-position: center right 0.5em;
  background-repeat: no-repeat;
  background-size: 1em 1em;
}
.p-form .formError,
.p-form .formError * {
  box-sizing: content-box;
}
.p-form .wpcf7-not-valid-tip {
  margin-top: 0.5em;
  font-size: 12px;
}
.p-form ::placeholder {
  color: #AAAAAA;
}

.-privacyPolicy {
  margin-top: 2em;
}

.-privacyPolicy .__note {
  padding: 10px;
  width: 100%;
  height: 200px;
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.4;
  overflow-y: auto;
  border: 1px solid #ccc;
}
.-privacyPolicy .__note * {
  font-size: 12px;
}
.-privacyPolicy .__note h2 {
  margin-top: 2em;
  margin-bottom: 1em;
  font-size: 14px;
}

.-privacyPolicy .__agree {
  margin-top: 20px;
  line-height: 1;
  font-size: 14px;
  text-align: center;
}
.-privacyPolicy .__agree .wpcf7-list-item {
  margin-left: 0;
}

#submit.p-form__submit {
  display: block;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  padding: 0.75em 1em;
  width: 180px;
  max-width: 100%;
  line-height: 1;
  text-align: center;
  color: #FFF;
  background-color: var(--color_main);
  border-width: 0;
  transition: 0.3s;
}
#submit.p-form__submit:hover {
  opacity: 0.6;
}
#submit.p-form__submit:disabled {
  background-color: #b5b5b5 !important;
  opacity: 1;
}

/* Utility
 * 接頭辞：u-
 * スポットで状態変化させたいmarginなどの補助クラスを定義
======================================*/
/****** マージン ******/
.u-mt0 {
  margin-top: 0px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-mt0e {
  margin-top: 0em !important;
}

.u-mb0e {
  margin-bottom: 0em !important;
}

.u-mt0_25e {
  margin-top: 0.25em !important;
}

.u-mb0_25e {
  margin-bottom: 0.25em !important;
}

.u-mt0_5e {
  margin-top: 0.5em !important;
}

.u-mb0_5e {
  margin-bottom: 0.5em !important;
}

.u-mt0_75e {
  margin-top: 0.75em !important;
}

.u-mb0_75e {
  margin-bottom: 0.75em !important;
}

.u-mt1e {
  margin-top: 1em !important;
}

.u-mb1e {
  margin-bottom: 1em !important;
}

.u-mt1_25e {
  margin-top: 1.25em !important;
}

.u-mb1_25e {
  margin-bottom: 1.25em !important;
}

.u-mt1_5e {
  margin-top: 1.5em !important;
}

.u-mb1_5e {
  margin-bottom: 1.5em !important;
}

.u-mt1_75e {
  margin-top: 1.75em !important;
}

.u-mb1_75e {
  margin-bottom: 1.75em !important;
}

.u-mt2e {
  margin-top: 2em !important;
}

.u-mb2e {
  margin-bottom: 2em !important;
}

.u-mt2_25e {
  margin-top: 2.25em !important;
}

.u-mb2_25e {
  margin-bottom: 2.25em !important;
}

.u-mt2_5e {
  margin-top: 2.5em !important;
}

.u-mb2_5e {
  margin-bottom: 2.5em !important;
}

@media screen and (min-width: 960px) {
  .l-mt0 {
    margin-top: 0px !important;
  }
  .l-mb0 {
    margin-bottom: 0px !important;
  }
  .l-mt5 {
    margin-top: 5px !important;
  }
  .l-mb5 {
    margin-bottom: 5px !important;
  }
  .l-mt10 {
    margin-top: 10px !important;
  }
  .l-mb10 {
    margin-bottom: 10px !important;
  }
  .l-mt15 {
    margin-top: 15px !important;
  }
  .l-mb15 {
    margin-bottom: 15px !important;
  }
  .l-mt20 {
    margin-top: 20px !important;
  }
  .l-mb20 {
    margin-bottom: 20px !important;
  }
  .l-mt25 {
    margin-top: 25px !important;
  }
  .l-mb25 {
    margin-bottom: 25px !important;
  }
  .l-mt30 {
    margin-top: 30px !important;
  }
  .l-mb30 {
    margin-bottom: 30px !important;
  }
  .l-mt35 {
    margin-top: 35px !important;
  }
  .l-mb35 {
    margin-bottom: 35px !important;
  }
  .l-mt40 {
    margin-top: 40px !important;
  }
  .l-mb40 {
    margin-bottom: 40px !important;
  }
  .l-mt45 {
    margin-top: 45px !important;
  }
  .l-mb45 {
    margin-bottom: 45px !important;
  }
  .l-mt50 {
    margin-top: 50px !important;
  }
  .l-mb50 {
    margin-bottom: 50px !important;
  }
  .l-mt0e {
    margin-top: 0em !important;
  }
  .l-mb0e {
    margin-bottom: 0em !important;
  }
  .l-mt0_25e {
    margin-top: 0.25em !important;
  }
  .l-mb0_25e {
    margin-bottom: 0.25em !important;
  }
  .l-mt0_5e {
    margin-top: 0.5em !important;
  }
  .l-mb0_5e {
    margin-bottom: 0.5em !important;
  }
  .l-mt0_75e {
    margin-top: 0.75em !important;
  }
  .l-mb0_75e {
    margin-bottom: 0.75em !important;
  }
  .l-mt1e {
    margin-top: 1em !important;
  }
  .l-mb1e {
    margin-bottom: 1em !important;
  }
  .l-mt1_25e {
    margin-top: 1.25em !important;
  }
  .l-mb1_25e {
    margin-bottom: 1.25em !important;
  }
  .l-mt1_5e {
    margin-top: 1.5em !important;
  }
  .l-mb1_5e {
    margin-bottom: 1.5em !important;
  }
  .l-mt1_75e {
    margin-top: 1.75em !important;
  }
  .l-mb1_75e {
    margin-bottom: 1.75em !important;
  }
  .l-mt2e {
    margin-top: 2em !important;
  }
  .l-mb2e {
    margin-bottom: 2em !important;
  }
  .l-mt2_25e {
    margin-top: 2.25em !important;
  }
  .l-mb2_25e {
    margin-bottom: 2.25em !important;
  }
  .l-mt2_5e {
    margin-top: 2.5em !important;
  }
  .l-mb2_5e {
    margin-bottom: 2.5em !important;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .l-mt0 {
    margin-top: 0px !important;
  }
  .l-mb0 {
    margin-bottom: 0px !important;
  }
  .l-mt5 {
    margin-top: 5px !important;
  }
  .l-mb5 {
    margin-bottom: 5px !important;
  }
  .l-mt10 {
    margin-top: 10px !important;
  }
  .l-mb10 {
    margin-bottom: 10px !important;
  }
  .l-mt15 {
    margin-top: 15px !important;
  }
  .l-mb15 {
    margin-bottom: 15px !important;
  }
  .l-mt20 {
    margin-top: 20px !important;
  }
  .l-mb20 {
    margin-bottom: 20px !important;
  }
  .l-mt25 {
    margin-top: 25px !important;
  }
  .l-mb25 {
    margin-bottom: 25px !important;
  }
  .l-mt30 {
    margin-top: 30px !important;
  }
  .l-mb30 {
    margin-bottom: 30px !important;
  }
  .l-mt35 {
    margin-top: 35px !important;
  }
  .l-mb35 {
    margin-bottom: 35px !important;
  }
  .l-mt40 {
    margin-top: 40px !important;
  }
  .l-mb40 {
    margin-bottom: 40px !important;
  }
  .l-mt45 {
    margin-top: 45px !important;
  }
  .l-mb45 {
    margin-bottom: 45px !important;
  }
  .l-mt50 {
    margin-top: 50px !important;
  }
  .l-mb50 {
    margin-bottom: 50px !important;
  }
  .m-mt0e {
    margin-top: 0em !important;
  }
  .m-mb0e {
    margin-bottom: 0em !important;
  }
  .m-mt0_25e {
    margin-top: 0.25em !important;
  }
  .m-mb0_25e {
    margin-bottom: 0.25em !important;
  }
  .m-mt0_5e {
    margin-top: 0.5em !important;
  }
  .m-mb0_5e {
    margin-bottom: 0.5em !important;
  }
  .m-mt0_75e {
    margin-top: 0.75em !important;
  }
  .m-mb0_75e {
    margin-bottom: 0.75em !important;
  }
  .m-mt1e {
    margin-top: 1em !important;
  }
  .m-mb1e {
    margin-bottom: 1em !important;
  }
  .m-mt1_25e {
    margin-top: 1.25em !important;
  }
  .m-mb1_25e {
    margin-bottom: 1.25em !important;
  }
  .m-mt1_5e {
    margin-top: 1.5em !important;
  }
  .m-mb1_5e {
    margin-bottom: 1.5em !important;
  }
  .m-mt1_75e {
    margin-top: 1.75em !important;
  }
  .m-mb1_75e {
    margin-bottom: 1.75em !important;
  }
  .m-mt2e {
    margin-top: 2em !important;
  }
  .m-mb2e {
    margin-bottom: 2em !important;
  }
  .m-mt2_25e {
    margin-top: 2.25em !important;
  }
  .m-mb2_25e {
    margin-bottom: 2.25em !important;
  }
  .m-mt2_5e {
    margin-top: 2.5em !important;
  }
  .m-mb2_5e {
    margin-bottom: 2.5em !important;
  }
}
@media screen and (max-width: 599px) {
  .s-mt0 {
    margin-top: 0px !important;
  }
  .s-mb0 {
    margin-bottom: 0px !important;
  }
  .s-mt5 {
    margin-top: 5px !important;
  }
  .s-mb5 {
    margin-bottom: 5px !important;
  }
  .s-mt10 {
    margin-top: 10px !important;
  }
  .s-mb10 {
    margin-bottom: 10px !important;
  }
  .s-mt15 {
    margin-top: 15px !important;
  }
  .s-mb15 {
    margin-bottom: 15px !important;
  }
  .s-mt20 {
    margin-top: 20px !important;
  }
  .s-mb20 {
    margin-bottom: 20px !important;
  }
  .s-mt25 {
    margin-top: 25px !important;
  }
  .s-mb25 {
    margin-bottom: 25px !important;
  }
  .s-mt30 {
    margin-top: 30px !important;
  }
  .s-mb30 {
    margin-bottom: 30px !important;
  }
  .s-mt35 {
    margin-top: 35px !important;
  }
  .s-mb35 {
    margin-bottom: 35px !important;
  }
  .s-mt40 {
    margin-top: 40px !important;
  }
  .s-mb40 {
    margin-bottom: 40px !important;
  }
  .s-mt45 {
    margin-top: 45px !important;
  }
  .s-mb45 {
    margin-bottom: 45px !important;
  }
  .s-mt50 {
    margin-top: 50px !important;
  }
  .s-mb50 {
    margin-bottom: 50px !important;
  }
  .s-mt0e {
    margin-top: 0em !important;
  }
  .s-mb0e {
    margin-bottom: 0em !important;
  }
  .s-mt0_25e {
    margin-top: 0.25em !important;
  }
  .s-mb0_25e {
    margin-bottom: 0.25em !important;
  }
  .s-mt0_5e {
    margin-top: 0.5em !important;
  }
  .s-mb0_5e {
    margin-bottom: 0.5em !important;
  }
  .s-mt0_75e {
    margin-top: 0.75em !important;
  }
  .s-mb0_75e {
    margin-bottom: 0.75em !important;
  }
  .s-mt1e {
    margin-top: 1em !important;
  }
  .s-mb1e {
    margin-bottom: 1em !important;
  }
  .s-mt1_25e {
    margin-top: 1.25em !important;
  }
  .s-mb1_25e {
    margin-bottom: 1.25em !important;
  }
  .s-mt1_5e {
    margin-top: 1.5em !important;
  }
  .s-mb1_5e {
    margin-bottom: 1.5em !important;
  }
  .s-mt1_75e {
    margin-top: 1.75em !important;
  }
  .s-mb1_75e {
    margin-bottom: 1.75em !important;
  }
  .s-mt2e {
    margin-top: 2em !important;
  }
  .s-mb2e {
    margin-bottom: 2em !important;
  }
  .s-mt2_25e {
    margin-top: 2.25em !important;
  }
  .s-mb2_25e {
    margin-bottom: 2.25em !important;
  }
  .s-mt2_5e {
    margin-top: 2.5em !important;
  }
  .s-mb2_5e {
    margin-bottom: 2.5em !important;
  }
}
/****** パディング ******/
.u-pt0 {
  padding-top: 0px !important;
}

.u-pb0 {
  padding-bottom: 0px !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-pt25 {
  padding-top: 25px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-pt35 {
  padding-top: 35px !important;
}

.u-pb35 {
  padding-bottom: 35px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-pt45 {
  padding-top: 45px !important;
}

.u-pb45 {
  padding-bottom: 45px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-pt0e {
  margin-top: 0em !important;
}

.u-pb0e {
  margin-bottom: 0em !important;
}

.u-pt0_25e {
  margin-top: 0.25em !important;
}

.u-pb0_25e {
  margin-bottom: 0.25em !important;
}

.u-pt0_5e {
  margin-top: 0.5em !important;
}

.u-pb0_5e {
  margin-bottom: 0.5em !important;
}

.u-pt0_75e {
  margin-top: 0.75em !important;
}

.u-pb0_75e {
  margin-bottom: 0.75em !important;
}

.u-pt1e {
  margin-top: 1em !important;
}

.u-pb1e {
  margin-bottom: 1em !important;
}

.u-pt1_25e {
  margin-top: 1.25em !important;
}

.u-pb1_25e {
  margin-bottom: 1.25em !important;
}

.u-pt1_5e {
  margin-top: 1.5em !important;
}

.u-pb1_5e {
  margin-bottom: 1.5em !important;
}

.u-pt1_75e {
  margin-top: 1.75em !important;
}

.u-pb1_75e {
  margin-bottom: 1.75em !important;
}

.u-pt2e {
  margin-top: 2em !important;
}

.u-pb2e {
  margin-bottom: 2em !important;
}

.u-pt2_25e {
  margin-top: 2.25em !important;
}

.u-pb2_25e {
  margin-bottom: 2.25em !important;
}

.u-pt2_5e {
  margin-top: 2.5em !important;
}

.u-pb2_5e {
  margin-bottom: 2.5em !important;
}

@media screen and (min-width: 960px) {
  .l-pt0 {
    padding-top: 0px !important;
  }
  .l-pb0 {
    padding-bottom: 0px !important;
  }
  .l-pt5 {
    padding-top: 5px !important;
  }
  .l-pb5 {
    padding-bottom: 5px !important;
  }
  .l-pt10 {
    padding-top: 10px !important;
  }
  .l-pb10 {
    padding-bottom: 10px !important;
  }
  .l-pt15 {
    padding-top: 15px !important;
  }
  .l-pb15 {
    padding-bottom: 15px !important;
  }
  .l-pt20 {
    padding-top: 20px !important;
  }
  .l-pb20 {
    padding-bottom: 20px !important;
  }
  .l-pt25 {
    padding-top: 25px !important;
  }
  .l-pb25 {
    padding-bottom: 25px !important;
  }
  .l-pt30 {
    padding-top: 30px !important;
  }
  .l-pb30 {
    padding-bottom: 30px !important;
  }
  .l-pt35 {
    padding-top: 35px !important;
  }
  .l-pb35 {
    padding-bottom: 35px !important;
  }
  .l-pt40 {
    padding-top: 40px !important;
  }
  .l-pb40 {
    padding-bottom: 40px !important;
  }
  .l-pt45 {
    padding-top: 45px !important;
  }
  .l-pb45 {
    padding-bottom: 45px !important;
  }
  .l-pt50 {
    padding-top: 50px !important;
  }
  .l-pb50 {
    padding-bottom: 50px !important;
  }
  .l-pt0e {
    margin-top: 0em !important;
  }
  .l-pb0e {
    margin-bottom: 0em !important;
  }
  .l-pt0_25e {
    margin-top: 0.25em !important;
  }
  .l-pb0_25e {
    margin-bottom: 0.25em !important;
  }
  .l-pt0_5e {
    margin-top: 0.5em !important;
  }
  .l-pb0_5e {
    margin-bottom: 0.5em !important;
  }
  .l-pt0_75e {
    margin-top: 0.75em !important;
  }
  .l-pb0_75e {
    margin-bottom: 0.75em !important;
  }
  .l-pt1e {
    margin-top: 1em !important;
  }
  .l-pb1e {
    margin-bottom: 1em !important;
  }
  .l-pt1_25e {
    margin-top: 1.25em !important;
  }
  .l-pb1_25e {
    margin-bottom: 1.25em !important;
  }
  .l-pt1_5e {
    margin-top: 1.5em !important;
  }
  .l-pb1_5e {
    margin-bottom: 1.5em !important;
  }
  .l-pt1_75e {
    margin-top: 1.75em !important;
  }
  .l-pb1_75e {
    margin-bottom: 1.75em !important;
  }
  .l-pt2e {
    margin-top: 2em !important;
  }
  .l-pb2e {
    margin-bottom: 2em !important;
  }
  .l-pt2_25e {
    margin-top: 2.25em !important;
  }
  .l-pb2_25e {
    margin-bottom: 2.25em !important;
  }
  .l-pt2_5e {
    margin-top: 2.5em !important;
  }
  .l-pb2_5e {
    margin-bottom: 2.5em !important;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .m-pt0 {
    padding-top: 0px !important;
  }
  .m-pb0 {
    padding-bottom: 0px !important;
  }
  .m-pt5 {
    padding-top: 5px !important;
  }
  .m-pb5 {
    padding-bottom: 5px !important;
  }
  .m-pt10 {
    padding-top: 10px !important;
  }
  .m-pb10 {
    padding-bottom: 10px !important;
  }
  .m-pt15 {
    padding-top: 15px !important;
  }
  .m-pb15 {
    padding-bottom: 15px !important;
  }
  .m-pt20 {
    padding-top: 20px !important;
  }
  .m-pb20 {
    padding-bottom: 20px !important;
  }
  .m-pt25 {
    padding-top: 25px !important;
  }
  .m-pb25 {
    padding-bottom: 25px !important;
  }
  .m-pt30 {
    padding-top: 30px !important;
  }
  .m-pb30 {
    padding-bottom: 30px !important;
  }
  .m-pt35 {
    padding-top: 35px !important;
  }
  .m-pb35 {
    padding-bottom: 35px !important;
  }
  .m-pt40 {
    padding-top: 40px !important;
  }
  .m-pb40 {
    padding-bottom: 40px !important;
  }
  .m-pt45 {
    padding-top: 45px !important;
  }
  .m-pb45 {
    padding-bottom: 45px !important;
  }
  .m-pt50 {
    padding-top: 50px !important;
  }
  .m-pb50 {
    padding-bottom: 50px !important;
  }
  .m-pt0e {
    margin-top: 0em !important;
  }
  .m-pb0e {
    margin-bottom: 0em !important;
  }
  .m-pt0_25e {
    margin-top: 0.25em !important;
  }
  .m-pb0_25e {
    margin-bottom: 0.25em !important;
  }
  .m-pt0_5e {
    margin-top: 0.5em !important;
  }
  .m-pb0_5e {
    margin-bottom: 0.5em !important;
  }
  .m-pt0_75e {
    margin-top: 0.75em !important;
  }
  .m-pb0_75e {
    margin-bottom: 0.75em !important;
  }
  .m-pt1e {
    margin-top: 1em !important;
  }
  .m-pb1e {
    margin-bottom: 1em !important;
  }
  .m-pt1_25e {
    margin-top: 1.25em !important;
  }
  .m-pb1_25e {
    margin-bottom: 1.25em !important;
  }
  .m-pt1_5e {
    margin-top: 1.5em !important;
  }
  .m-pb1_5e {
    margin-bottom: 1.5em !important;
  }
  .m-pt1_75e {
    margin-top: 1.75em !important;
  }
  .m-pb1_75e {
    margin-bottom: 1.75em !important;
  }
  .m-pt2e {
    margin-top: 2em !important;
  }
  .m-pb2e {
    margin-bottom: 2em !important;
  }
  .m-pt2_25e {
    margin-top: 2.25em !important;
  }
  .m-pb2_25e {
    margin-bottom: 2.25em !important;
  }
  .m-pt2_5e {
    margin-top: 2.5em !important;
  }
  .m-pb2_5e {
    margin-bottom: 2.5em !important;
  }
}
@media screen and (max-width: 599px) {
  .s-pt0 {
    padding-top: 0px !important;
  }
  .s-pb0 {
    padding-bottom: 0px !important;
  }
  .s-pt5 {
    padding-top: 5px !important;
  }
  .s-pb5 {
    padding-bottom: 5px !important;
  }
  .s-pt10 {
    padding-top: 10px !important;
  }
  .s-pb10 {
    padding-bottom: 10px !important;
  }
  .s-pt15 {
    padding-top: 15px !important;
  }
  .s-pb15 {
    padding-bottom: 15px !important;
  }
  .s-pt20 {
    padding-top: 20px !important;
  }
  .s-pb20 {
    padding-bottom: 20px !important;
  }
  .s-pt25 {
    padding-top: 25px !important;
  }
  .s-pb25 {
    padding-bottom: 25px !important;
  }
  .s-pt30 {
    padding-top: 30px !important;
  }
  .s-pb30 {
    padding-bottom: 30px !important;
  }
  .s-pt35 {
    padding-top: 35px !important;
  }
  .s-pb35 {
    padding-bottom: 35px !important;
  }
  .s-pt40 {
    padding-top: 40px !important;
  }
  .s-pb40 {
    padding-bottom: 40px !important;
  }
  .s-pt45 {
    padding-top: 45px !important;
  }
  .s-pb45 {
    padding-bottom: 45px !important;
  }
  .s-pt50 {
    padding-top: 50px !important;
  }
  .s-pb50 {
    padding-bottom: 50px !important;
  }
  .s-pt0e {
    margin-top: 0em !important;
  }
  .s-pb0e {
    margin-bottom: 0em !important;
  }
  .s-pt0_25e {
    margin-top: 0.25em !important;
  }
  .s-pb0_25e {
    margin-bottom: 0.25em !important;
  }
  .s-pt0_5e {
    margin-top: 0.5em !important;
  }
  .s-pb0_5e {
    margin-bottom: 0.5em !important;
  }
  .s-pt0_75e {
    margin-top: 0.75em !important;
  }
  .s-pb0_75e {
    margin-bottom: 0.75em !important;
  }
  .s-pt1e {
    margin-top: 1em !important;
  }
  .s-pb1e {
    margin-bottom: 1em !important;
  }
  .s-pt1_25e {
    margin-top: 1.25em !important;
  }
  .s-pb1_25e {
    margin-bottom: 1.25em !important;
  }
  .s-pt1_5e {
    margin-top: 1.5em !important;
  }
  .s-pb1_5e {
    margin-bottom: 1.5em !important;
  }
  .s-pt1_75e {
    margin-top: 1.75em !important;
  }
  .s-pb1_75e {
    margin-bottom: 1.75em !important;
  }
  .s-pt2e {
    margin-top: 2em !important;
  }
  .s-pb2e {
    margin-bottom: 2em !important;
  }
  .s-pt2_25e {
    margin-top: 2.25em !important;
  }
  .s-pb2_25e {
    margin-bottom: 2.25em !important;
  }
  .s-pt2_5e {
    margin-top: 2.5em !important;
  }
  .s-pb2_5e {
    margin-bottom: 2.5em !important;
  }
}
/****** その他 ******/
/*--------------------------------
 *  デバイス別 表示/非表示
 *  sm　：スマートフォン幅、モバイル幅のみ表示
 *  md　：タブレット幅のみ表示
 *  lg　：PC幅のみ表示
 *  mdlg：デスクトップ幅のみ表示
--------------------------------*/
@media screen and (min-width: 960px) {
  .md {
    display: none !important;
  }
  .sm {
    display: none !important;
  }
  .smmd {
    display: none !important;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .lg {
    display: none !important;
  }
  .sm {
    display: none !important;
  }
}
@media screen and (max-width: 599px) {
  .lg {
    display: none !important;
  }
  .md {
    display: none !important;
  }
  .mdlg {
    display: none !important;
  }
}
/*--------------------------------
 *  フロート・クリアフィックス
--------------------------------*/
.clearfix::after {
  display: block;
  content: "";
  clear: both;
}

/*--------------------------------
 *  ブロックエディター
--------------------------------*/
h2.wp-block-heading:not(.is-style-section_ttl) {
  padding-top: 4px;
  padding-bottom: 4px;
  border-bottom: 1px solid #3c3430;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.8181818182;
}

h3.wp-block-heading:not(.is-style-section_ttl) {
  padding-top: 4px;
  padding-right: 10px;
  padding-bottom: 4px;
  padding-left: 10px;
  border: 0;
  background-color: #e2d8cc;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7777777778;
}
h3.wp-block-heading:not(.is-style-section_ttl)::before, h3.wp-block-heading:not(.is-style-section_ttl)::after {
  content: none;
}

h4.wp-block-heading:not(.is-style-section_ttl) {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border: 0;
  background-color: transparent;
  color: #3c3430;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8125;
}

.wp-block-media-text.is-style-default .wp-block-media-text__media img {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1), 0 4px 8px -4px rgba(0, 0, 0, 0.2);
}

.embed-google-map {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1), 0 4px 8px -4px rgba(0, 0, 0, 0.2);
}

/*--------------------------------
 *  その他
--------------------------------*/
#autozip {
  display: none !important;
}