@charset "UTF-8";
a {
  transition: 0.3s ease 0s;
}

/***ベースカスタム***/
.c-gnav > .menu-item > a .ttl {
  font-size: 18px;
}

.c-gnav {
  color: black;
  font-weight: bold;
}

.-parallel .l-header__gnav .c-gnav > li > a:after {
  background-color: #004fd2;
}

@media (min-width: 960px) {
  .-parallel-bottom .l-header__inner {
    display: grid;
    grid-template-columns: 420px 1fr 500px;
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }
  .-parallel .l-header__logo {
    grid-area: 1/1/3/3;
    display: block;
    text-align: left;
    margin-left: 1em;
  }
  .w-header.pc_ {
    grid-area: 1/3/3/4;
    display: block;
  }
  .w-header.pc_ > div, .w-header.pc_ > div > div, .w-header.pc_ > div > div > div {
    height: 100%;
  }
  nav#gnav {
    grid-area: 3/1/4/4;
  }
}
:root .wp-block-button__link {
  padding: 0.4em 2em;
  background-color: #f5ee1a;
  position: relative;
  top: 0;
  transition: all 0.3s;
}
:root .wp-block-button__link:not(.has-text-color) {
  color: #000;
  box-shadow: 0 3px 0 #000;
}
:root .wp-block-button__link.has-text-color {
  box-shadow: 0 3px 0 currentColor;
}
:root .wp-block-button__link:hover {
  background-color: #000 !important;
  color: white !important;
  box-shadow: none;
  position: relative;
  top: 3px;
}

.center-table table tbody tr td a {
  display: block;
  background-color: #f5ee1a;
  border-radius: 3em;
  text-align: center;
  margin: 1em 0;
  padding: 0.5em;
  text-decoration: none;
  font-weight: bold;
}
.center-table table tbody tr td a:hover {
  background-color: #000;
  color: white;
}
.center-table table tbody tr td a.mochimono_btn {
  background-color: #004fd2;
  color: white;
}
.center-table table tbody tr td a.mochimono_btn:hover {
  background-color: #000;
  color: white;
}

.has-border, div.has-background, p.has-background {
  padding: 1em;
}

p.access_ttl {
  background-color: #eb6120;
  max-width: 200px;
  width: 100%;
  text-align: center;
  color: white;
  padding: 0.25em;
  border-radius: 10px;
  margin-bottom: 0.5em;
}

/***追加カスタム***/
.header-right {
  display: flex;
  align-items: center;
  justify-content: right;
  padding: 0 1em;
}

.yellow-btn {
  display: flex;
  height: 100%;
  justify-content: flex-end;
  align-items: center;
  margin-right: 1em;
}
.yellow-btn a {
  display: inline-block;
  background-color: #f5ee1a;
  color: #004fd2;
  padding: 0.5em 2em;
  border-radius: 3em;
  font-size: 1.1em;
  text-decoration: none;
  box-shadow: 0 4px 0 #004fd2;
}
.yellow-btn a:hover {
  background-color: #004fd2;
  color: white;
}

/*********フォントアクセシビリティ*********/
/* 基準をremで管理 */
:root {
  --base-fz: 16px;
}

html {
  font-size: var(--base-fz);
}

/* ステップ */
html[data-font=s] {
  --base-fz: 15px;
} /* 小 */
html[data-font=m] {
  --base-fz: 18px;
} /* 中(デフォ) */
html[data-font=l] {
  --base-fz: 22px;
} /* 大 */
/* 投稿本文の固定px指定を上書きして rem に乗せる */
#lp-content .post_content,
#main_content .post_content {
  font-size: 1rem !important;
  line-height: 1.8;
}

#lp-content .post_content h1,
#lp-content .post_content h2,
#lp-content .post_content h3,
#main_content .post_content h1,
#main_content .post_content h2,
#main_content .post_content h3 {
  /* 例：ベースに対する倍率（好みで調整） */
  line-height: 1.3;
}

#lp-content .post_content h1,
#main_content .post_content h1 {
  font-size: 2rem !important;
}

#lp-content .post_content h2,
#main_content .post_content h2 {
  font-size: 1.75rem !important;
}

#lp-content .post_content h3,
#main_content .post_content h3 {
  font-size: 1.5rem !important;
}

/* スマホ用（幅600px以下）では無効化してテーマ標準のサイズに戻す */
@media (max-width: 600px) {
  #lp-content .post_content h1,
  #main_content .post_content h1,
  #lp-content .post_content h2,
  #main_content .post_content h2,
  #lp-content .post_content h3,
  #main_content .post_content h3 {
    font-size: inherit !important; /* 親要素のサイズを継承 */
  }
}
/*********トップページ*********/
/*** お知らせ ***/
#main_content .post_content .post-list article.post-list__item {
  border-top: 1px solid #ccc;
  padding: 1em 0;
}
#main_content .post_content .post-list article.post-list__item h3 {
  margin: 0;
  font-size: 1.2rem !important;
  padding: 0;
}
#main_content .post_content .post-list article.post-list__item h3:before {
  display: none;
}
#main_content .post_content .post-list article.post-list__item:last-child {
  border-bottom: 1px solid #ccc;
}
#main_content .post_content .post-list article.post-list__item span.post-list__more {
  margin-left: 1em;
}

/*********予約モーダル*********/
.reserved-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 10000;
}
.reserved-modal.is-open {
  display: block;
}
.reserved-modal__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  height: 100vh;
  min-height: 100%;
}
.reserved-modal__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 24px;
  width: 90%;
  max-width: 500px;
  border-radius: 8px;
}
.reserved-modal__close {
  position: absolute;
  top: 8px;
  right: 8px;
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
}

.l-content {
  position: relative;
}
.l-content.is-modal-open {
  position: initial;
}

/*********お問い合わせ*********/
div#contact {
  border: 1px solid #004fd2;
  padding: 1em;
}
@media (max-width: 600px) {
  div#contact {
    font-size: 90%;
  }
}

/*********QandA*********/
h2#qanda {
  padding: 0.5em;
}
h2#qanda strong {
  position: relative;
}
h2#qanda strong::before {
  content: "";
  background-image: url(/wp/wp-content/themes/swell_child/images/usagi02.webp);
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  left: -1.5em;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.faq-container .wp-block-snow-monkey-blocks-accordion-item.smb-accordion__item {
  border-top: 1px solid #ccc;
}
.faq-container .wp-block-snow-monkey-blocks-accordion-item.smb-accordion__item .smb-accordion__item__title::before {
  content: "Q";
  font-size: 1.25em;
  font-weight: bold;
  width: 2.5em;
  text-align: center;
  color: #ccc;
  margin-right: 0.5em;
}
.faq-container .wp-block-snow-monkey-blocks-accordion-item.smb-accordion__item:last-child {
  border-bottom: 1px solid #ccc;
}

/*********持ち物*********/
.tab-container ul.c-tabList li button.c-tabList__button {
  font-size: 20px;
  font-weight: bold;
}
@media (max-width: 600px) {
  .tab-container ul.c-tabList li button.c-tabList__button {
    font-size: 16px;
  }
}
.tab-container ul.c-tabList li:nth-child(1) button.c-tabList__button {
  border: 3px solid #e8578f;
  opacity: 1;
  color: #e8578f;
}
.tab-container ul.c-tabList li:nth-child(1) button.c-tabList__button[aria-selected=true] {
  background-color: #e8578f;
  color: #fff;
}
.tab-container ul.c-tabList li:nth-child(2) button.c-tabList__button {
  border: 3px solid #009661;
  opacity: 1;
  color: #009661;
}
.tab-container ul.c-tabList li:nth-child(2) button.c-tabList__button[aria-selected=true] {
  background-color: #009661;
  color: #fff;
}
.tab-container .is-style-default .c-tabBody {
  padding: 1em;
}

div#mncard,
div#passnum,
div#name,
div#app {
  --color_list_num: #e8578f;
}

div#denshi {
  --color_list_num: #009661;
}

div#other {
  --color_list_num: #5c5c5c;
}

div#mncard h3,
div#denshi h3,
div#passnum h3,
div#name h3,
div#app h3,
div#other h3 {
  background: #ffffff;
  padding: 0.5em;
}
div#mncard h3::before,
div#denshi h3::before,
div#passnum h3::before,
div#name h3::before,
div#app h3::before,
div#other h3::before {
  content: "";
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 0.25em;
  background-color: currentColor;
  position: relative;
  top: 3px;
}
div#mncard ul li, div#mncard ol li,
div#denshi ul li,
div#denshi ol li,
div#passnum ul li,
div#passnum ol li,
div#name ul li,
div#name ol li,
div#app ul li,
div#app ol li,
div#other ul li,
div#other ol li {
  margin: 0.5em 0;
}

#id_doc-container_mncard p.ttl,
#id_doc-container_denshi p.ttl,
#id_doc-container_passnum p.ttl,
#id_doc-container_name p.ttl,
#id_doc-container_app p.ttl,
#id_doc-container_other p.ttl {
  padding: 0.25em 1em;
}
#id_doc-container_mncard ul,
#id_doc-container_denshi ul,
#id_doc-container_passnum ul,
#id_doc-container_name ul,
#id_doc-container_app ul,
#id_doc-container_other ul {
  -moz-column-count: 2;
       column-count: 2;
  -moz-column-gap: 1em;
       column-gap: 1em;
}
@media (max-width: 600px) {
  #id_doc-container_mncard ul,
  #id_doc-container_denshi ul,
  #id_doc-container_passnum ul,
  #id_doc-container_name ul,
  #id_doc-container_app ul,
  #id_doc-container_other ul {
    -moz-column-count: 1;
         column-count: 1;
  }
}/*# sourceMappingURL=main.css.map */