@charset "UTF-8";
/* ---------------------------------------
	Mixin
-----------------------------------------*/
/*
/* 固定ページ用CSS
-----------------------------------------*/
.page_article .page_heading_h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.25rem;
  color: var(--cl-accent);
  font-weight: bold;
  font-family: var(--font-zenmaru);
  -webkit-font-feature-settings: "halt";
          font-feature-settings: "halt";
  text-align: center;
}
@media screen and (width > 768px) {
  .page_article .page_heading_h2 {
    font-size: 3rem;
    margin-bottom: 3.75rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h2 {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.page_article .page_heading_h2:before, .page_article .page_heading_h2:after {
  content: "";
  display: block;
  width: 7rem;
  height: 0.125rem;
  background-color: var(--cl-accent);
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h2:before, .page_article .page_heading_h2:after {
    width: 2rem;
  }
}
.page_article .page_heading_h2_02, .page_article .post_content h2, .post_content .page_article h2 {
  border-bottom: 0.125rem solid var(--cl-accent);
  color: var(--cl-accent);
  font-weight: 400;
}
@media screen and (width > 768px) {
  .page_article .page_heading_h2_02, .page_article .post_content h2, .post_content .page_article h2 {
    font-size: 1.875rem;
    padding-bottom: 0.25rem;
    margin-bottom: 2.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h2_02, .page_article .post_content h2, .post_content .page_article h2 {
    font-size: 1.25rem;
    padding-bottom: 0.125rem;
    margin-bottom: 1.5rem;
  }
}
.page_article .page_heading_h3, .page_article .post_content h3, .post_content .page_article h3 {
  background-color: var(--cl-accent);
  color: var(--cl-white);
  font-weight: 400;
}
@media screen and (width > 768px) {
  .page_article .page_heading_h3, .page_article .post_content h3, .post_content .page_article h3 {
    font-size: 1.5rem;
    padding: 0.5rem 1rem;
    margin-bottom: 1.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h3, .page_article .post_content h3, .post_content .page_article h3 {
    font-size: 1.125rem;
    padding: 0.25rem 0.5rem;
    margin-bottom: 1rem;
  }
}
.page_article .page_heading_h3.is_exchange_supporter, .page_article .post_content h3.is_exchange_supporter, .post_content .page_article h3.is_exchange_supporter {
  background-color: var(--cl-exchange_supporter);
}
.page_article .page_heading_h3.is_exchange_dinner, .page_article .post_content h3.is_exchange_dinner, .post_content .page_article h3.is_exchange_dinner {
  background-color: var(--cl-exchange_dinner);
}
.page_article .page_heading_h3.is_exchange_magager, .page_article .post_content h3.is_exchange_magager, .post_content .page_article h3.is_exchange_magager {
  background-color: var(--cl-exchange_magager);
}
.page_article .page_heading_h3_02 {
  font-weight: bold;
  color: var(--cl-accent);
}
@media screen and (width > 768px) {
  .page_article .page_heading_h3_02 {
    font-size: 1.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h3_02 {
    font-size: 1.125rem;
  }
}
.page_article .page_heading_h4, .page_article .post_content h4, .post_content .page_article h4 {
  font-weight: 400;
  border-bottom: 0.125rem solid var(--cl-accent);
}
@media screen and (width > 768px) {
  .page_article .page_heading_h4, .page_article .post_content h4, .post_content .page_article h4 {
    font-size: 1.5rem;
    padding-bottom: 0.5rem;
    margin-bottom: 1.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h4, .page_article .post_content h4, .post_content .page_article h4 {
    font-size: 1.125rem;
    padding-bottom: 0.25rem;
    margin-bottom: 1rem;
  }
}
.page_article .page_heading_h5, .page_article .post_content h5, .post_content .page_article h5 {
  font-weight: bold;
  font-family: var(--font-zenmaru);
  color: var(--cl-accent);
  border-bottom: 0.125rem dashed var(--cl-accent);
}
@media screen and (width > 768px) {
  .page_article .page_heading_h5, .page_article .post_content h5, .post_content .page_article h5 {
    font-size: 1.125rem;
    padding-bottom: 0.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h5, .page_article .post_content h5, .post_content .page_article h5 {
    font-size: 1rem;
    padding-bottom: 0.25rem;
  }
}
.page_article .page_heading_h6, .page_article .post_content h6, .post_content .page_article h6 {
  font-weight: bold;
  font-family: var(--font-zenmaru);
  color: var(--cl-accent);
}
@media screen and (width > 768px) {
  .page_article .page_heading_h6, .page_article .post_content h6, .post_content .page_article h6 {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_heading_h6, .page_article .post_content h6, .post_content .page_article h6 {
    font-size: 1rem;
  }
}
.page_article .page_content {
  width: 100%;
}
@media screen and (width > 768px) {
  .page_article .page_content {
    padding-block: 3.75rem 5.625rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_content {
    padding-block: 2rem 4rem;
  }
}
.page_article .page_content_960 {
  width: 100%;
  max-width: 60rem;
  margin-inline: auto;
}
.page_article .page_content_600 {
  width: 100%;
  max-width: 600px;
  margin-inline: auto;
}
.page_article .page_content_inner {
  width: calc(100% - 2rem);
  max-width: 80rem;
  margin-inline: auto;
}
.page_article .page_text {
  line-height: 1.8;
}
@media screen and (width > 768px) {
  .page_article .page_text {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_text {
    font-size: 1rem;
  }
}
.page_article .page_text:has(+ .page_text) {
  margin-bottom: 1rem;
}
.page_article .page_text a {
  color: var(--cl-accent);
}
@media (any-hover: hover) {
  .page_article .page_text a:hover {
    color: var(--cl-accent);
    text-decoration: underline;
  }
}
.page_article .page_text_large {
  line-height: 1.8;
}
@media screen and (width > 768px) {
  .page_article .page_text_large {
    font-size: 1.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_text_large {
    font-size: 1.125rem;
  }
}
.page_article .page_text_small {
  line-height: 1.5;
}
@media screen and (width > 768px) {
  .page_article .page_text_small {
    font-size: 1rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .page_text_small {
    font-size: 0.75rem;
  }
}
.page_article .icon_num {
  font-size: 1.5rem;
  font-weight: bold;
  font-family: var(--font-zenmaru);
  color: var(--cl-white);
  background-color: var(--cl-accent);
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (width <= 768px) {
  .page_article .icon_num {
    font-size: 1.125rem;
    width: 2rem;
    height: 2rem;
  }
}
.page_article .list_number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  counter-reset: list-number;
  padding-left: 0;
}
@media screen and (width > 768px) {
  .page_article .list_number {
    gap: 3rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .list_number {
    gap: 2rem;
  }
}
.page_article .list_number li {
  position: relative;
}
@media screen and (width > 768px) {
  .page_article .list_number li {
    padding-left: 2rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .list_number li {
    padding-left: 1.5rem;
  }
}
.page_article .list_number li:not(:last-child):after {
  content: "";
  display: block;
  background-color: var(--cl-bg04);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (width > 768px) {
  .page_article .list_number li:not(:last-child):after {
    width: 3rem;
    height: 1rem;
    bottom: -2.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .list_number li:not(:last-child):after {
    width: 2rem;
    height: 1rem;
    bottom: -2rem;
  }
}
.page_article .list_number li::before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  content: counter(list-number);
  counter-increment: list-number;
  font-weight: bold;
  font-family: var(--font-zenmaru);
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  background-color: var(--cl-accent);
  color: var(--cl-white);
  position: absolute;
  left: 0;
  top: 4%;
}
@media screen and (width > 768px) {
  .page_article .list_number li::before {
    width: 1.5rem;
    height: 1.5rem;
    font-size: 1rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .list_number li::before {
    width: 1.25rem;
    height: 1.25rem;
    font-size: 0.875rem;
  }
}
.page_article .list_marker {
  list-style: none;
  padding-left: 0;
}
.page_article .list_marker li {
  position: relative;
  padding-left: 1rem;
}
.page_article .list_marker li::before {
  content: "・";
  display: inline-block;
  color: var(--cl-accent);
  position: absolute;
  left: 0;
  top: 0;
}
.page_article .marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, #ffee33));
  background: linear-gradient(transparent 70%, #ffee33 30%);
}
.page_article .tel_189 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-bottom: 0;
}
.page_article .tel_189 dt {
  font-size: 2rem;
  font-weight: bold;
  font-family: var(--font-zenmaru);
  color: var(--cl-accent);
}
@media screen and (width <= 768px) {
  .page_article .tel_189 dt {
    font-size: 1.5rem;
  }
}
.page_article .tel_189 dd {
  color: var(--cl-accent);
  font-size: 5rem;
  font-weight: bold;
  font-family: var(--font-zenmaru);
}
@media screen and (width <= 768px) {
  .page_article .tel_189 dd {
    font-size: 3.75rem;
  }
}
.page_article .tel_189 dd rt {
  font-size: 1rem;
  font-weight: normal;
  font-family: var(--font-zenmaru);
  color: var(--cl-accent);
}
.page_article .tel_189 dd a {
  color: var(--cl-accent);
}
.page_article .rainbow_icon {
  width: 10.75rem;
  height: auto;
  margin-inline: auto;
}
@media screen and (width <= 768px) {
  .page_article .rainbow_icon {
    width: 5.375rem;
  }
}
.page_article .rainbow_icon img {
  width: 100%;
  height: auto;
}
@media screen and (width <= 768px) {
  .page_article .map_wrapper_pc {
    display: none;
  }
}
.page_article .map_wrapper_pc iframe {
  aspect-ratio: 16/9;
  width: 100%;
  height: 100%;
  border: none;
}
.page_article .map_wrapper_sp {
  display: none;
}
@media screen and (width <= 768px) {
  .page_article .map_wrapper_sp {
    display: block;
  }
}
.page_article .map_wrapper_sp iframe {
  aspect-ratio: 4/3;
  width: 100%;
  height: 100%;
  border: none;
}
.page_article .cartjs_product_img {
  width: 100% !important;
}
.page_article .cartjs_product_table .cartjs_product_num input[type=text] {
  background-color: var(--cl-bg03);
}
.page_article .cartjs_cart_in input[type=submit] {
  background-color: var(--cl-accent) !important;
}
.page_article .cartjs_sk_link_other {
  width: 100% !important;
}
.page_article .cartjs_sk_link_other a {
  color: var(--cl-accent);
}
@media screen and (width > 768px) {
  .page_article .wpcf7 {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .wpcf7 {
    font-size: 1rem;
  }
}
.page_article .wpcf7:has(+ .page_text) {
  margin-bottom: 1rem;
}
.page_article .wpcf7 input[type=radio],
.page_article .wpcf7 input[type=checkbox] {
  all: revert;
}
.page_article .wpcf7 input::-webkit-input-placeholder {
  color: var(--cl-gray);
}
.page_article .wpcf7 input::-moz-placeholder {
  color: var(--cl-gray);
}
.page_article .wpcf7 input:-ms-input-placeholder {
  color: var(--cl-gray);
}
.page_article .wpcf7 input::-ms-input-placeholder {
  color: var(--cl-gray);
}
.page_article .wpcf7 input::placeholder {
  color: var(--cl-gray);
}
.page_article .wpcf7 a {
  color: var(--cl-accent);
}
@media (any-hover: hover) {
  .page_article .wpcf7 a:hover {
    color: var(--cl-accent);
    text-decoration: underline;
  }
}
.page_article .wpcf7 dl {
  font-size: 1rem;
}
@media screen and (width <= 768px) {
  .page_article .wpcf7 dl {
    font-size: 0.875rem;
  }
}
.page_article .wpcf7 dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
}
@media screen and (width > 768px) {
  .page_article .wpcf7 dl dt {
    gap: 0.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .wpcf7 dl dt {
    gap: 0.25rem;
  }
}
.page_article .wpcf7 dl dt span {
  border-radius: 0.25rem;
  display: inline-block;
  font-weight: normal;
  background-color: var(--cl-accent);
  color: var(--cl-white);
}
@media screen and (width > 768px) {
  .page_article .wpcf7 dl dt span {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .wpcf7 dl dt span {
    font-size: 0.75rem;
    padding: 0.125rem 0.25rem;
  }
}
.page_article .wpcf7 dl dd {
  margin-left: 0;
}
.page_article .event_categories {
  padding-left: 0;
  margin-bottom: 0;
}
.page_article .event_categories li {
  color: var(--cl-white);
  text-align: center;
  font-family: var(--font-zenmaru);
}
@media screen and (width > 768px) {
  .page_article .event_categories li {
    font-size: 1.125rem;
    padding: 0.5rem 1rem;
  }
}
@media screen and (width <= 768px) {
  .page_article .event_categories li {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
  }
}
.page_article .event_categories li.is_exchange_supporter {
  background-color: var(--cl-exchange_supporter);
}
.page_article .event_categories li.is_exchange_magager {
  background-color: var(--cl-exchange_magager);
}
.page_article .event_categories li.is_exchange_dinner {
  background-color: var(--cl-exchange_dinner);
}
.page_article .event_categories li a {
  color: var(--cl-white);
  display: block;
}

/*
/* 投稿ページ用CSS
-----------------------------------------*/
.custom_post_loop {
  position: relative;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
@media (any-hover: hover) {
  .custom_post_loop:hover {
    opacity: var(--opacity);
  }
}
.custom_post_loop .thumbnail {
  aspect-ratio: 3/2;
}
.custom_post_loop .thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.custom_post_loop .post_title {
  font-family: var(--font-zenmaru);
}
@media screen and (width > 768px) {
  .custom_post_loop .post_title {
    font-size: 1.5rem;
  }
}
@media screen and (width <= 768px) {
  .custom_post_loop .post_title {
    font-size: 1.125rem;
  }
}
.custom_post_loop .post_title a {
  color: var(--cl-accent);
}
.custom_post_loop .post_title a::before {
  content: "";
  position: absolute;
  inset: 0;
}

.post_content h1 {
  background-color: var(--cl-accent);
  color: var(--cl-white);
  font-weight: bold;
}
@media screen and (width > 768px) {
  .post_content h1 {
    font-size: 2rem;
    padding: 0.5rem 1rem;
    margin-bottom: 2.5rem;
  }
}
@media screen and (width <= 768px) {
  .post_content h1 {
    font-size: 1.5rem;
    padding: 0.25rem 0.5rem;
    margin-bottom: 1.5rem;
  }
}
.post_content p,
.post_content ul,
.post_content ol,
.post_content dl {
  line-height: 1.8;
}
@media screen and (width > 768px) {
  .post_content p,
  .post_content ul,
  .post_content ol,
  .post_content dl {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .post_content p,
  .post_content ul,
  .post_content ol,
  .post_content dl {
    font-size: 0.875rem;
  }
}
.post_content p,
.post_content ul,
.post_content ol,
.post_content dl {
  /* すぐ次の要素がh2の場合：p の下余白で見出しとの間を確保 */
}
@media screen and (width > 768px) {
  .post_content p:has(+ h2),
  .post_content ul:has(+ h2),
  .post_content ol:has(+ h2),
  .post_content dl:has(+ h2) {
    margin-bottom: 3.75rem;
  }
}
@media screen and (width <= 768px) {
  .post_content p:has(+ h2),
  .post_content ul:has(+ h2),
  .post_content ol:has(+ h2),
  .post_content dl:has(+ h2) {
    margin-bottom: 2.5rem;
  }
}
@media screen and (width > 768px) {
  .post_content p:has(+ h3),
  .post_content ul:has(+ h3),
  .post_content ol:has(+ h3),
  .post_content dl:has(+ h3) {
    margin-bottom: 2.5rem;
  }
}
@media screen and (width <= 768px) {
  .post_content p:has(+ h3),
  .post_content ul:has(+ h3),
  .post_content ol:has(+ h3),
  .post_content dl:has(+ h3) {
    margin-bottom: 1.5rem;
  }
}
.post_content a {
  color: var(--cl-accent);
}
@media (any-hover: hover) {
  .post_content a:hover {
    color: var(--cl-accent);
    text-decoration: underline;
  }
}
.post_content table {
  width: 100%;
  border-collapse: collapse;
  border-top: var(--cl-border) 1px solid;
}
@media screen and (width > 768px) {
  .post_content table {
    font-size: 1rem;
  }
}
@media screen and (width <= 768px) {
  .post_content table {
    font-size: 0.75rem;
  }
}
.post_content table th,
.post_content table td {
  padding: 0.5rem;
  border-bottom: var(--cl-border) 1px solid;
}
.post_content table th {
  background-color: var(--cl-bg01);
}
@media screen and (width > 768px) {
  .post_content table th {
    width: 100px;
  }
}
.post_content table caption {
  caption-side: top;
  font-weight: bold;
  color: var(--cl-accent);
}
@media screen and (width > 768px) {
  .post_content table caption {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .post_content table caption {
    font-size: 1rem;
  }
}
.post_content dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.post_content dl dt {
  color: var(--cl-accent);
}
@media screen and (width > 768px) {
  .post_content dl dt {
    font-size: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .post_content dl dt {
    font-size: 1rem;
  }
}
.post_content dl dd {
  word-break: break-word;
}
@media screen and (width > 768px) {
  .post_content dl dd {
    font-size: 1rem;
  }
}
@media screen and (width <= 768px) {
  .post_content dl dd {
    font-size: 0.875rem;
  }
}
.post_content ul {
  padding-left: 0;
}
.post_content ul li {
  position: relative;
}
@media screen and (width > 768px) {
  .post_content ul li {
    font-size: 1.125rem;
    padding-left: 1.125rem;
  }
}
@media screen and (width <= 768px) {
  .post_content ul li {
    font-size: 1rem;
    padding-left: 1rem;
  }
}
.post_content ul li::before {
  content: "・";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}/*# sourceMappingURL=page.css.map */