@charset "utf-8";
/* head,text */
/* Link */
.common_btn {
  text-align: center;
  margin: 0 auto;
}
.common_btn a {
  --key_color: var(--main_color);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.555556em;
  min-width: 13.33334em;
  width: fit-content;
  min-height: 3.555556em;
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--white);
  background: var(--key_color);
  border-radius: 0.2777778em;
  padding: 0.555556em 1.666667em;
  margin: auto;
  text-decoration: none;
  transition: translate .3s;
}
.common_btn.btn_red a {
  --key_color: var(--sub_color02);
}
.common_btn.btn_green a {
  --key_color: var(--sub_color03);
}
.common_btn.btn_black a {
  --key_color: var(--sub_color04);
}
.common_btn a i {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 0.8em;
  overflow: clip;
}
.common_btn a i::before {
  content: "→" / "";
  scale: 1 1;
  transform-origin: left;
  transition: scale .3s;
}
.more_btn a {
  --key_color: var(--hover_main_color);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.555556em;
  min-width: 12.9444445em;
  width: fit-content;
  min-height: 2.77778em;
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--black);
  background: var(--key_color);
  border-radius: 0.4444445em;
  padding: 0.555556em 0.8333334em;
  margin: auto;
  text-decoration: none;
  transition: translate .3s;
}
body:not(.home) .list_btn {
  margin-block: 3.75em;
}
.list_btn a {
  --key_color: var(--hover_main_color);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.555556em;
  min-width: 14em;
  width: fit-content;
  min-height: 3em;
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--black);
  background: var(--key_color);
  border-radius: 0.2777778em;
  padding: 0.555556em 1em;
  margin: auto;
  text-decoration: none;
  transition: translate .3s;
}
.txt_link a,
a.txt_link {
  position: relative;
  z-index: 10;
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--yellow);
  text-decoration: underline;
  text-underline-offset: 0.5em;
  padding-right: 2.5em;
}
a .image_fit,
a.image_fit {
  overflow: clip;
}
a .image_fit img,
a.image_fit img {
  object-fit: contain;
  max-width: inherit;
  width: 100%;
  height: 100%;
  scale: 1.01 1.01;
  transition: scale .4s;
}
.block_link a,
a.block_link {
  display: inline-block;
  text-decoration: none;
}
.block_link a img {
  transition: opacity 0.4s;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  :is(.common_btn a, .list_btn a):hover {
    translate: 0 -3px;
  }
  .more_btn a:hover,
  .entry-body :is(.wp-block-buttons .wp-block-button__link, .vk_button .vk_button_link.btn):hover {
    translate: 0 -5px;
  }
  .common_btn a:hover i::before {
    scale: 0 1;
    transform-origin: right;
  }
  .txt_link a:hover,
  a.txt_link:hover {
    text-decoration: none;
  }
  a:hover .image_fit img,
  a.image_fit:hover img {
    scale: 1.05 1.05;
  }
  .block_link a:hover img,
  a:hover img.opacity {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .common_btn a {
    min-width: 17.8571428571em;
    min-height: 2.85714285714em;
    font-size: 1rem;
    padding: 0.71428571428em 2.14285714286em;
  }
  .common_btn a i {
    font-size: 0.92857142857em;
  }
}
/* table */
.table_wrap table,
.table_wrap table * {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  text-decoration: none;
  border: none;
  padding: 0;
  margin: 0;
  word-break: break-all;
}
.table_wrap table {
  width: 100%;
}
.table_wrap table tr {
  font-size: 1.125rem;
  border-bottom: 1px solid #c5c5c5;
}
.table_wrap table tr>* {
  padding-block: 1em;
  line-height: 1.6;
}
.table_wrap table tr th {
  width: 12em;
  font-weight: bold;
  padding-inline: 2em;
  vertical-align: text-top;
}
.table_wrap table p+p {
  margin-top: 1.5em;
}
.table_wrap table p span {
  display: inline-block;
  font-size: 0.875rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  .table_wrap table tr a:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width:767px) {
  .table_wrap table tr {
    display: block;
    padding-block: 0.5em;
  }
  .table_wrap table tr>* {
    display: block;
    padding-block: 0;
  }
  .table_wrap table tr th {
    width: 100%;
    padding-inline: 0;
  }
}
/* list */
:is(.news-list, .event-list, .circle-list, .event-calendar_list, .single-category_box, .facility-list, .connection-list, .volunteer-list),
:is(.news-list, .event-list, .circle-list, .event-calendar_list, .single-category_box, .facility-list, .connection-list, .volunteer-list) * {
  margin: 0;
  padding: 0;
  line-height: inherit;
  color: inherit;
}
.news-list .news-item a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.5em;
  font-size: 1rem;
  color: var(--black);
  text-decoration: none;
  padding-block: 1.5em;
  padding-inline: 5px;
  border-bottom: 1px solid #c5c5c5;
}
.news-list .news-item a .news-item_article {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.5em 1.25em;
}
.news-list .news-item a:has(.news-item_image) .news-item_article {
  width: calc(100% - 1.5em - 80px);
}
body:not(.home) .news-list .news-item a:has(.news-item_image) .news-item_article {
  width: calc(100% - 1.5em - 200px);
}
.news-list .news-item a .news-item_article time {
  font-size: 1em;
}
:is(.news-list .news-item a .news-item_article, .entry-header) .news-category_list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em;
  font-size: 0.875em;
}
:is(.news-list .news-item a .news-item_article, .entry-header) .news-category_item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 1em;
  font-weight: bold;
  letter-spacing: 0.04165em;
  line-height: 1;
  color: var(--white);
  background: var(--sub_color05);
  padding: 0.35714285714em 1.21428571429em;
  border-radius: 3em;
}
:is(.news-list .news-item a .news-item_article, .entry-header) .news-category_item.category-important {
  color: var(--sub_color04);
  background: #f7f030;
}
:is(.news-list .news-item a .news-item_article, .entry-header) .news-category_item:has(img) {
  flex-direction: row;
  gap: 0.5em;
}
:is(.news-list .news-item a .news-item_article, .entry-header) .news-category_item img {
  filter: var(--filter_white);
}
.news-list .news-item a .news-item_article .news-item_ttl {
  width: 100%;
  font-size: 1.125em;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
:is(.event-list, .circle-list, .event-calendar_list, .volunteer-list) {
  margin-bottom: 3.25em;
}
:is(.event-list .event-item, .circle-list .circle-item, .volunteer-list) a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.8125em;
  font-size: 1rem;
  color: var(--black);
  text-decoration: none;
  padding-block: 1em 1.875em;
  padding-inline: 5px;
  border-bottom: 1px solid #c5c5c5;
}
:is(.event-list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a :is(.event-item_ttl, .circle-item_ttl, .volunteer-item_ttl) {
  font-size: 1.375em;
  font-weight: bold;
}
:is(.event-list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a :is(.event-item_detail, .circle-item_detail, .volunteer-item_detail) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em 1em;
  width: 100%;
}
:is(.event-list .event-item, .volunteer-list .volunteer-item) a time {
  font-size: 1.125em;
  font-weight: bold;
  color: var(--sub_color02);
}
:is(.event-list .event-item, .event-calendar_list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a :is(.event-item_tag, .circle-item_tag, .volunteer-item_tag),
.single-category_box .single-category_tag {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  min-width: 8.33334em;
  min-height: 2.33334em;
  font-size: 0.75em;
  font-weight: bold;
  color: var(--white);
  background: var(--sub_color05);
  border-radius: 2.4em;
  padding-inline: 1.25em;
}
:is(.event-list .event-item, .event-calendar_list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a :is(.event-item_tag, .circle-item_tag, .volunteer-item_tag) img,
.single-category_box .single-category_tag img {
  filter: var(--filter_white);
}
:is(.event-list, .event-calendar_list) .event-item a .event-item_tag.tag-type_sponsored,
.volunteer-list .volunteer-item a .volunteer-item_tag.tag-type_status,
.single-category_box .single-category_tag.tag-type_sponsored {
  color: var(--black);
  background: #d8eef5;
}
:is(.event-list, .event-calendar_list) .event-item a .event-item_tag.tag-type_sponsored img,
.volunteer-list .volunteer-item a .volunteer-item_tag.tag-type_status img,
.single-category_box .single-category_tag.tag-type_sponsored img {
  filter: var(--filter_black);
}
:is(.event-list .event-item, .circle-list .circle-item, .event-calendar_list .event-item, .volunteer-list .volunteer-item) a :is(.event-item_hash, .circle-item_hash, .volunteer-item_hash) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em 1em;
  font-size: 1em;
  font-weight: 500;
}
.event-calendar_list {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 2.8125em 1.25em;
}
.event-calendar_list .event-item {
  width: calc((100% - 1.25em * 3) / 4);
}
.event-calendar_list .event-item a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  color: var(--black);
  text-decoration: none;
  padding: 0.625em;
}
.event-calendar_list .event-item .event-item_ttl {
  font-size: 1.25em;
  font-weight: bold;
  margin-block: 0.5em;
}
.event-calendar_list .event-item .event-item_detail {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em;
}
.event-calendar_list .event-item .event-item_hash {
  width: 100%;
}
.volunteer-list .volunteer-item a .volunteer-item_event-date {
  width: 100%;
  font-weight: bold;
}
.volunteer-list .volunteer-item a .volunteer-item_event-date time {
  color: inherit;
}
.facility-list {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0 1.875em;
}
.facility-list .facility-item {
  width: min(calc((100% - 1.875em)/2), 670px);
}
.facility-list .facility-item a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.625em;
  height: 100%;
  color: var(--black);
  border-bottom: 1px solid var(--sub_color06);
  padding: 1.875em 0.3125em 1.375em;
  text-decoration: none;
}
.facility-list .facility-item .facility-item_image {
  width: 38.8059701493%;
}
.facility-list .facility-item .facility-item_article {
  width: calc(100% - 38.8059701493% - 1.625em);
}
.facility-list .facility-item .facility-item_ttl {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 0.6em;
}
.facility-list .facility-item .facility-item_details {
  color: var(--black);
  line-height: 1.6;
}
.connection-list {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 1.625em;
}
.connection-list .connection-item {
  width: calc((100% - 1.625em * 2) / 3);
}
.connection-list .connection-item a {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-direction: column;
  color: var(--black);
  background: var(--white);
  border: 1px solid #e8e8e8;
  text-decoration: none;
  transition: translate .4s;
}
.connection-list .connection-item .connection-item_article {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-direction: column;
  padding: 1.25em 2em 2.25em;
}
.connection-list .connection-item .connection-category_list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em;
  margin-bottom: 1em;
  order: 1;
}
.connection-list .connection-item .connection-category_item {
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--main_color);
}
.connection-list .connection-item .connection-item_ttl {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1em;
  order: 2;
}
.connection-list .connection-item .connection-item_lead {
  line-height: 1.6;
  order: 3;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  .news-list .news-item a:hover {
    background: var(--hover_main_color);
  }
  :is(.event-list .event-item, .circle-list .circle-item, .event-calendar_list .event-item, .volunteer-list .volunteer-item, .facility-list .facility-item) a:hover {
    background: var(--bg_color01);
  }
  .connection-list .connection-item a:hover {
    translate: 0 -5px;
  }
}
@media screen and (max-width: 767px) {
  .news-list .news-item a {
    gap: 1.64285714286em;
    padding-block: 1.42857142857em;
  }
  .news-list .news-item a .news-item_image {
    width: 52px;
  }
  .news-list .news-item a .news-item_article {
    gap: 0.25em 1em;
  }
  .news-list .news-item a:has(.news-item_image) .news-item_article {
    width: calc(100% - 1.64285714286em - 52px) !important;
  }
  .news-list .news-item a .news-item_article time {
    font-size: 0.85714285714em;
  }
  :is(.news-list .news-item a .news-item_article, .entry-header) .news-category_list {
    font-size: 0.78571428571em;
  }
  .news-list .news-item a .news-item_article .news-item_ttl {
    font-size: 1em;
  }
  :is(.event-list, .circle-list, .event-calendar_list, .volunteer-list) {
    margin-bottom: 2em;
  }
  :is(.event-list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a {
    gap: 0.5em;
    font-size: 1rem;
    padding-block: 1em;
  }
  :is(.event-list .event-item, .circle-list .circle-item, .volunteer-list .volunteer-item) a :is(.event-item_detail, .circle-item_detail, .volunteer-item_detail) {
    gap: 0.35em 1em;
  }
  :is(.event-list .event-item, .volunteer-list .volunteer-item) a time {
    width: 100%;
  }
  .event-calendar_list {
    gap: 1.25em 1em;
  }
  .event-calendar_list .event-item {
    width: calc((100% - 1em * 1) / 2);
  }
  .event-calendar_list .event-item a {
    padding: 0;
  }
  .event-calendar_list .event-item .event-item_ttl {
    font-size: 1.125em;
  }
  .facility-list {
    flex-direction: column;
  }
  .facility-list .facility-item {
    width: 100%;
  }
  .facility-list .facility-item a {
    gap: 1em;
    height: auto;
    padding: 1em 0;
  }
  .facility-list .facility-item .facility-item_image {
    width: 30%;
  }
  .facility-list .facility-item .facility-item_article {
    width: calc(100% - 30% - 1em);
  }
  .facility-list .facility-item .facility-item_ttl {
    font-size: 1.125rem;
  }
  .connection-list {
    gap: 1em;
  }
  .connection-list .connection-item {
    width: calc((100% - 1em) / 2);
  }
  .connection-list .connection-item .connection-item_article {
    padding: 0.75em 0.5rem 1.25em;
  }
  .connection-list .connection-item .connection-category_list {
    gap: 0.5em;
    margin-bottom: .5em;
  }
  .connection-list .connection-item .connection-category_item {
    font-size: 0.875rem;
  }
  .connection-list .connection-item .connection-item_ttl {
    font-size: 1rem;
    margin-bottom: 0.5em;
  }
  .connection-list .connection-item .connection-item_lead {
    font-size: 0.875rem;
  }
}
/*  GoogleMAP・動画埋め込み  */
.map_wrap iframe {
  width: 100%;
}
.movie_wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}
.movie_wrap iframe,
.movie_wrap video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/*  パンくずリスト  */
#pan {
  position: relative;
  z-index: 2;
  margin-top: 2.125rem;
  margin-bottom: 4.125rem;
  overflow: hidden;
}
#pan ol {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
  font-size: 0;
  overflow-y: hidden;
  overflow-x: auto;
}
#pan li,
#pan li * {
  display: inline-block;
  vertical-align: middle;
  font-size: 0.875rem;
  text-transform: uppercase;
  white-space: nowrap;
}
#pan li::after {
  display: inline-block;
  vertical-align: middle;
  content: "\003E";
  margin-left: 1em;
}
#pan li:not(:last-child) {
  margin-right: 1em;
}
#pan li:last-child::after {
  display: none;
}
#pan li * {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  color: var(--black);
}
#pan li a {
  font-weight: bold;
  text-decoration: underline;
  text-underline-offset: 0.25em;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  #pan li a:hover {
    text-decoration: none;
  }
}
@media only screen and (max-width: 767px) {
  #pan {
    position: relative;
    z-index: 10;
    margin-top: 1em;
    margin-bottom: 2.5em;
    overflow: hidden;
  }
  #pan:after,
  #pan li:last-child:after {
    position: absolute;
    z-index: 10;
    content: "";
    display: block;
    top: 0;
    bottom: 0;
    right: 1.15em;
    width: 0.75em;
    background: var(--black);
    background: linear-gradient(-90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 50%);
  }
  #pan a {
    text-decoration: underline;
  }
  #pan li:last-child {
    position: relative;
    padding-right: 0.75em;
    margin-right: 0;
    flex-grow: 1;
  }
  #pan li:last-child:after {
    z-index: 20;
    top: -1em;
    right: 0;
    bottom: -1em;
    background: var(--white);
  }
}
/*  ページャー  */
.navigation {
  margin-block: 4.625em;
}
ul.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  padding: 0;
  margin: 0;
}
ul.page-numbers li {
  margin: 0;
}
ul.page-numbers li :is(a, span.page-numbers) {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 2.5em;
  aspect-ratio: 1/1;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  color: var(--black);
  background: var(--white);
  border: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  text-decoration: none;
}
ul.page-numbers li a:is(.prev, .next) {
  justify-content: space-between;
  flex-direction: row;
  width: 6.16666666667em;
  aspect-ratio: 111/40;
  font-size: 1.125em;
  font-weight: normal;
  background: #f2f2f2;
  border: 1px solid #999999;
  text-transform: uppercase;
  padding: 0.25em 0.5em;
  margin-left: 0.5em;
}
ul.page-numbers li a:is(.prev, .next) i {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 1.75em;
  aspect-ratio: 1/1;
  font-size: 0.75em;
  line-height: 0.5;
  background: var(--white);
  border: 1px solid #999999;
  border-radius: 100%;
  overflow: clip;
  margin: 0;
}
ul.page-numbers li a:is(.prev, .next) i::before {
  content: "→";
  font-weight: bold;
  color: var(--main_color);
  scale: 1 1;
  transform-origin: left;
  transition: scale .3s;
}
ul.page-numbers li a.prev {
  flex-direction: row-reverse;
  margin-left: auto;
  margin-right: 0.5em;
}
ul.page-numbers li a.prev i::before {
  content: "←";
  transform-origin: right;
}
ul.page-numbers li span.page-numbers.current {
  background: #f2f2f2;
  color: inherit;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  ul.page-numbers li a:hover {
    background: #f2f2f2;
  }
  ul.page-numbers li a:is(.prev, .next):hover i::before {
    scale: 0 1;
    transform-origin: right;
  }
  ul.page-numbers li a.prev:hover i::before {
    transform-origin: left;
  }
}
@media screen and (max-width:767px) {
  .navigation {
    margin-block: 3em;
  }
  ul.page-numbers li :is(a, span.page-numbers) {
    width: 2em;
  }
  ul.page-numbers li a:is(.prev, .next) {
    justify-content: center;
    flex-direction: column;
    text-indent: -9999px;
    aspect-ratio: 1/1;
    padding: 0;
  }
  ul.page-numbers li a:is(.prev, .next) span {
    display: none;
  }
  ul.page-numbers li a:is(.prev, .next) i {
    text-indent: 1px;
    width: auto;
    font-size: 1em;
    background: none;
    border: none;
  }
  ul.page-numbers li a:is(.prev, .next) i::before {
    color: var(--black);
  }
}
/*  モーダル  */
body:has(#modal-overlay) {
  overflow: hidden
}
.modal-content {
  width: 80%;
  max-width: 1240px;
  margin: 0px;
  padding: 10px 20px;
  background: none;
  position: fixed;
  display: none;
  z-index: 1020;
}
.modal-content.modal-search {
  max-width: 1320px;
  width: calc(100% - 80px);
  top: 0 !important;
  left: 0 !important;
  bottom: 0;
  padding: 0;
}
#modal-overlay {
  z-index: 1001;
  display: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.6);
}
.modal-content .close_btn {
  position: absolute;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 1.3333334em;
  aspect-ratio: 1/1;
  font-size: 3.75rem;
  color: var(--white);
  background: transparent;
  border: none;
  cursor: pointer;
  top: 0;
  right: -80px;
}
@media screen and (max-width: 768px) {
  .modal-content {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
  }
  .modal-content.modal-search {
    max-width: 100%;
    width: 100%;
  }
  .modal-content .close_btn {
    font-size: 3.215rem;
    background: var(--key_color);
    right: 0;
  }
}
/*  検索  */
.modal-content.modal-search,
.modal-content.modal-search * {
  line-height: 1.4;
  padding: 0;
  margin: 0;
}
.modal-content.modal-search .modal-search_wrap {
  width: 100%;
  height: 100vh;
  background: var(--bg_color);
  padding: 3.75em 1.25em;
  overflow-y: auto;
  scrollbar-width: thin;
}
:is(#modal-facility_search, #side-search_wrap, .map-search_form) {
  --bg_color: var(--hover_main_color);
  --key_color: var(--main_color);
  --icon_color: var(--filter_main_color);
  --map_color: #81cadb;
}
#modal-event_search {
  --bg_color: var(--hover_sub_color02);
  --key_color: var(--sub_color02);
  --icon_color: var(--filter_sub_color02);
  --map_color: #e7848e;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) input[type=text] {
  display: block;
  width: 100%;
  height: 2.5em;
  line-height: 2.5em;
  font-size: 1rem;
  font-weight: 500;
  border: #e5e5e5 solid 1px;
  border-radius: 0.5em;
  padding: 0 1em !important;
  margin-bottom: 0 !important;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) input[type=checkbox] {
  position: absolute;
  z-index: -10;
  font-size: 0;
  line-height: 0;
  border: none;
  background: transparent;
  outline: none;
  box-shadow: none;
  width: 0;
  height: 0;
  margin: 0
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox {
  position: relative;
  z-index: 10;
  display: inline-block;
  font-size: 1rem;
  padding-left: 1.375em;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox::before,
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox::after {
  position: absolute;
  z-index: 10;
  display: inline-block;
  content: "";
  top: 50%;
  translate: 0 -50%;
  box-sizing: border-box;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox::before {
  z-index: 15;
  width: 0.375em;
  aspect-ratio: 1/2;
  border-bottom: 3px solid var(--white);
  border-right: 3px solid var(--white);
  top: calc(50% - 0.05em);
  left: 0.3em;
  rotate: 45deg;
  opacity: 0;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox::after {
  width: 1em;
  aspect-ratio: 1/1;
  border: 1px solid #999999;
  border-radius: 0.1875em;
  left: 0;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox:has(input:checked)::before {
  opacity: 1;
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox:has(input:checked)::after {
  background: var(--key_color);
}
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) button:focus-visible,
.modal-content.modal-search .item_area_map label[class^="item_area"]:has(input:focus-visible),
:is(.modal-content.modal-search, #side-search_wrap form, .map-search_form form) label.item_checkbox:has(input:focus-visible)::after {
  outline: 1px solid #000;
}
.modal-content.modal-search button {
  box-sizing: border-box;
  cursor: pointer;
}
.modal-content.modal-search button.all-item_reset {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 5.57142857143em;
  min-height: 1.57142857143em;
  font-size: 0.875rem;
  color: var(--black);
  line-height: 1.2;
  background: var(--white);
  border: 1px solid #999999;
  border-radius: 0.21428571428em;
}
.modal-content.modal-search .modal-search_wrap form {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 2.25em 1em;
  width: min(100%, 1100px);
  text-align: left;
  margin-inline: auto;
}
.modal-content.modal-search .modal-search_wrap .item_full {
  width: 100%;
}
.modal-content.modal-search .modal-search_wrap .item_half {
  width: min(48%, 511px);
}
.modal-content.modal-search .modal-search_wrap .modal-search_subttl_box:nth-child(n + 2) {
  margin-top: 3.5em;
}
.modal-content.modal-search .modal-search_ttl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.1944444em;
  font-size: 2.25rem;
  font-weight: bold;
  order: -2;
}
.modal-content.modal-search .modal-search_ttl img {
  filter: var(--icon_color);
}
.modal-content.modal-search .modal-search_subttl_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3125em 1em;
  background: var(--white);
  padding: 0.3125em 1em;
  margin-bottom: 1.25em;
}
.modal-content.modal-search .item_area .modal-search_subttl_box {
  margin-bottom: 0.3125em;
}
.modal-content.modal-search .modal-search_subttl_box .modal-search_subttl {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
}
.modal-content.modal-search .modal-search_subttl_box .modal-select_box {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
}
.modal-content.modal-search .item_area_map {
  position: relative;
  z-index: 10;
  width: min(100%, 512px);
  margin-inline: auto;
}
.modal-content.modal-search .item_area_map .map_district {
  fill: #f2f3f6;
  stroke: #a6a6a6;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  cursor: pointer;
}
.modal-content.modal-search .item_area_map :is(.map_district.is-checked, .is-checked .map_district) {
  fill: var(--map_color);
  stroke: var(--key_color);
}
.modal-content.modal-search .item_area_map label[class^="item_area"] {
  position: absolute;
  z-index: 10;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  min-width: 4em;
  min-height: 1.57142857143em;
  text-align: center;
  font-size: 0.875rem;
  font-weight: bold;
  color: var(--black);
  white-space: nowrap;
  background: var(--white);
  border: 1px solid var(--sub_color04);
  border-radius: 0.21428571428em;
  padding: 0.1em 0.5em;
  top: 0;
  left: 0;
  translate: -50% -50%;
  box-sizing: border-box;
}
.modal-content.modal-search .item_area_map label[class^="item_area"]:has(input:checked) {
  color: var(--white);
  background: var(--key_color);
}
.modal-content.modal-search .item_area_map label.item_area_order_1 {
  top: 38%;
  left: 61%;
}
.modal-content.modal-search .item_area_map label.item_area_order_2 {
  top: 32%;
  left: 51%;
}
.modal-content.modal-search .item_area_map label.item_area_order_3 {
  top: 25%;
  left: 47%;
}
.modal-content.modal-search .item_area_map label.item_area_order_4 {
  top: 17%;
  left: 33%;
}
.modal-content.modal-search .item_area_map label.item_area_order_5 {
  top: 39%;
  left: 26%;
}
.modal-content.modal-search .item_area_map label.item_area_order_6 {
  top: 44%;
  left: 41.5%;
}
.modal-content.modal-search .item_area_map label.item_area_order_7 {
  top: 49%;
  left: 56%;
}
.modal-content.modal-search .item_area_map label.item_area_order_8 {
  top: 56.5%;
  left: 54%;
}
.modal-content.modal-search .item_area_map label.item_area_order_9 {
  top: 61%;
  left: 39.5%;
}
.modal-content.modal-search .item_area_map label.item_area_order_10 {
  top: 55%;
  left: 21%;
}
.modal-content.modal-search .item_area_map label.item_area_order_11 {
  top: 70%;
  left: 21%;
}
.modal-content.modal-search .item_area_map label.item_area_order_12 {
  top: 72%;
  left: 49%;
}
.modal-content.modal-search .item_area_map label.item_area_order_13 {
  top: 21%;
  left: 70%;
}
.modal-content.modal-search .item_area_map label.item_area_order_14 {
  top: 80%;
  left: 65%;
}
.modal-content.modal-search .item_area_map label.item_area_order_15 {
  top: 43%;
  left: 80%;
}
.modal-content.modal-search .item_area_map label.item_area_order_16 {
  top: 62%;
  left: 72%;
}
.modal-content.modal-search .item_area_map label.item_area_order_17 {
  top: 10%;
  left: 10%;
}
.modal-content.modal-search .modal-search_item:has(.item_checkbox) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
}
.modal-content.modal-search .modal-search_wrap .item_calendar {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em;
}
.modal-content.modal-search .modal-search_wrap .item_calendar_child {
  width: calc(50% - 0.3125em);
}
.modal-content.modal-search .modal-search_wrap .item_calendar_child span {
  display: block;
  font-weight: bold;
  margin-bottom: 0.3125em;
}
.modal-content.modal-search .modal-search_wrap .flatpickr-calendar,
.modal-content.modal-search .modal-search_wrap .flatpickr-days,
.modal-content.modal-search .modal-search_wrap .dayContainer {
  min-width: 0;
  width: 100% !important;
  max-width: 100%;
}
.modal-content.modal-search .item_full .modal-search_item .item_checkbox {
  width: calc((100% - 1em * 3) / 4);
}
.modal-content.modal-search .item_half .modal-search_item .item_checkbox {
  width: calc((100% - 1em) / 2);
}
.modal-content.modal-search .modal-search_submit_box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  order: -1;
}
.modal-content.modal-search .modal-search_submit_box button {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  min-width: 11.0625em;
  min-height: 2.5em;
  font-size: 1rem;
  font-weight: bold;
  color: var(--white);
  background: var(--key_color);
  border: 1px solid var(--key_color);
  border-radius: 0.3125em;
  padding: 0.25em 0.5em;
}
.modal-content.modal-search .modal-search_submit_box button.all-rest_btn {
  color: var(--black);
  background: #e9eaed;
  border-color: #999999;
}
#side-search_wrap, #side-search_wrap *:not(.flatpickr-prev-month,.flatpickr-next-month) {
  line-height: inherit;
  margin: 0;
  padding: 0;
}
#side-search_wrap .side-search_box {
  background: var(--bg_color03);
}
#side-search_wrap .side-search_box:not(:first-child) {
  border-top: 1px solid var(--white);
}
#side-search_wrap .side-search_box .side-search_ttl:has(button) {
  position: relative;
  z-index: 10;
}
#side-search_wrap .side-search_box .side-search_ttl:has(button)::after {
  position: absolute;
  z-index: 10;
  display: inline-block;
  content: "";
  width: 0.5em;
  aspect-ratio: 1/1;
  border-bottom: 3px solid var(--white);
  border-right: 3px solid var(--white);
  top: 50%;
  right: 1em;
  translate: 0 -50%;
  rotate: 45deg;
  transform: skew(-3deg, -3deg);
  transition: scale .4s;
}
#side-search_wrap .side-search_box .side-search_ttl.opened:has(button)::after {
  scale: -1 -1;
}
#side-search_wrap .side-search_box :is(.side-search_ttl button, .side-search_ttl:not(:has(button))) {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  width: 100%;
  min-height: 3em;
  text-align: left;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--white);
  background: var(--key_color);
  border: none;
  padding: 0.5em 1.111112em;
  outline-width: 2px;
  outline-offset: -2px;
  outline-color: var(--white);
}
#side-search_wrap .side-search_box.inner_search_box .side-search_ttl {
  min-height: 2.5em;
  padding-inline: 0.5em;
}
#side-search_wrap .side-search_box .side-search_ttl button {
  padding-right: 2em;
  cursor: pointer;
}
#side-search_wrap .side-search_box .side-search_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
  padding: 0.5em 1.25em 1em;
}
#side-search_wrap .side-search_box.inner_search_box .side-search_item {
  padding-inline: 0;
  padding-bottom: 0;
}
#side-search_wrap .side-search_box .side-search_item>* {
  width: 100%;
}
#side-search_wrap .side-search_box .side-search_item.item_half>* {
  width: calc((100% - 1em) / 2);
}
:is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 1em;
  padding: 1em 0.625em;
}
:is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) button {
  position: relative;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: min(100%, 320px);
  min-height: 3.5em;
  font-size: 1.125rem;
  font-weight: 500;
  background: var(--bg_color01);
  border: 1px solid #a6a6a6;
  border-radius: 0.2777778em;
  cursor: pointer;
}
:is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) button.submit_btn {
  color: var(--white);
  background: var(--sub_color02);
  border-color: var(--sub_color02);
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  .modal-content.modal-search button.all-item_reset:hover {
    color: var(--white);
    background: var(--key_color);
  }
  .modal-content.modal-search .modal-search_submit_box button:hover {
    color: var(--key_color);
    background: var(--white);
  }
  .modal-content.modal-search .modal-search_submit_box button.all-rest_btn:hover {
    color: var(--black);
  }
  :is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) button:hover {
    background: var(--hover_main_color);
  }
  :is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) button.submit_btn:hover {
    color: var(--sub_color02);
    background: var(--white);
  }
}
@media screen and (max-width: 1000px) {
  .modal-content.modal-search .modal-search_wrap .item_half {
    width: 100%;
  }
  #side-search_wrap {
    padding-inline: 2%;
  }
  #side-search_wrap form {
    display: flex;
    flex-wrap: wrap;
  }
  #side-search_wrap .side-search_box {
    width: 100%;
  }
  #side-search_wrap .side-search_box :is(.side-search_ttl button, .side-search_ttl:not(:has(button))) {
    font-size: 1rem;
  }
  #side-search_wrap .side-search_box.item_freeword {
    width: 100%;
  }
  :is(#side-search_wrap .side-search_submit_box, .map-search_form .map-search_submit_box) {
    flex-direction: row;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .modal-content.modal-search .modal-search_wrap {
    padding: 4.75em 15px;
  }
  .modal-content.modal-search button.all-item_reset {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 5.57142857143em;
    min-height: 1.57142857143em;
    font-size: 0.875rem;
    color: var(--black);
    line-height: 1.2;
    background: var(--white);
    border: 1px solid #999999;
    border-radius: 0.21428571428em;
  }
  .modal-content.modal-search .modal-search_wrap form {
    gap: 1.25em 1em;
  }
  .modal-content.modal-search .modal-search_wrap .modal-search_subttl_box:nth-child(n + 2) {
    margin-top: 1.5em;
  }
  .modal-content.modal-search .modal-search_ttl {
    font-size: 1.75rem;
  }
  .modal-content.modal-search .modal-search_ttl img {
    width: 1.25em;
  }
  .modal-content.modal-search .item_area_map label[class^="item_area"] {
    font-size: min(3.25vw, 0.875rem);
  }
  .modal-content.modal-search .item_full .modal-search_item .item_checkbox {
    width: calc((100% - 1em) / 2);
  }
  .modal-content.modal-search .modal-search_submit_box {
    flex-wrap: wrap;
    width: 100%;
    order: 3;
  }
  #side-search_wrap {
    padding-inline: 15px;
  }
}
/*  タブ切替  */
.tab_controller input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.tab_table .tab_content {
  overflow: hidden;
  opacity: 0;
  max-height: 0;
  z-index: -10;
  visibility: hidden;
  transition: opacity .4s;
  background: var(--white);
}
.tab_change:has(input[id$="01"]:checked) .tab_content01,
.tab_change:has(input[id$="02"]:checked) .tab_content02,
.tab_change:has(input[id$="03"]:checked) .tab_content03,
.tab_change:has(input[id$="04"]:checked) .tab_content04 {
  opacity: 1;
  z-index: 10;
  visibility: visible;
  max-height: none;
  overflow: visible;
  width: 100%;
  padding: 2em 1.25em 1.75em;
}
.tab_change {
  position: relative;
  z-index: 20;
}
.tab_controller {
  position: relative;
  z-index: 10;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 1px;
  border-bottom: 2px solid var(--main_color);
  list-style: none;
  padding: 0;
  margin: 0;
}
.tab_controller::after {
  position: absolute;
  z-index: -10;
  display: inline-block;
  content: "";
  width: 100%;
  inset: 0.5em 0 0;
  background: var(--main_color);
}
.tab_controller li {
  width: 100%;
  display: flex;
}
.tab_controller label {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.333334em;
  text-align: center;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.2;
  color: var(--black);
  text-decoration: none;
  background: var(--white);
  transition: min-height .4s, color .4s, background .4s, padding .4s;
  cursor: pointer;
}
.tab_controller label:hover,
.tab_controller input:checked+label {
  min-height: 3.77777777778em;
  color: var(--white);
  background: var(--main_color);
  padding-top: 0.4444445em;
}
.tab_controller input:focus+label {
  outline: 3px solid #000;
  outline-offset: -3px;
  box-shadow: 0 0 0 2px var(--white);
}
.tab_change .tab_content .tab_cotent-inner {
  width: min(62.5em, 100%);
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .tab_change:has(input[id$="01"]:checked) .tab_content01,
  .tab_change:has(input[id$="02"]:checked) .tab_content02,
  .tab_change:has(input[id$="03"]:checked) .tab_content03,
  .tab_change:has(input[id$="04"]:checked) .tab_content04 {
    padding: 0 15px 2.14285714286em;
  }
  .tab_controller::after {
    inset: 0.35714285714em 0 0;
  }
  .tab_controller label {
    min-height: 3.92857142857em;
    font-size: 1rem;
  }
  .tab_controller label:hover,
  .tab_controller input:checked+label {
    min-height: 4.28571428571em;
  }
}
/*  フォーム  */
.acf-taxonomy-field .categorychecklist-holder {
  border: none;
  border-radius: 0;
  max-height: 100%;
  overflow: visible;
}
ul.acf-radio-list,
ul.acf-checkbox-list {
  background: transparent;
  border: none;
  position: static;
}
.acf-hl:before,
.acf-hl:after,
.acf-bl:before,
.acf-bl:after,
.acf-cf:before,
.acf-cf:after {
  display: none;
}
.acf-fields.-border {
  border: none;
  background: transparent;
}
.acf-fields.-left>.acf-field {
  padding: 0;
}
.acf-fields.-left>.acf-field>.acf-label,
.acf-fields.-left>.acf-field>.acf-input {
  float: none;
  width: auto;
  padding: 0;
  margin: 0;
}
.acf-fields.-left>.acf-field:before,
.acf-fields.-left>.acf-field:after {
  display: none;
}
.acf-field .acf-notice.-error {
  background: transparent;
  color: inherit;
  border: none;
  padding: 0;
  font-size: inherit;
  margin-bottom: 0;
}
.acf-field .acf-label {
  margin: 0;
}
:is(#acf-form, .smf-form) {
  --key_color: var(--main_color);
}
:is(#acf-form, .smf-form) input[type="text"],
:is(#acf-form, .smf-form) input[type="search"],
:is(#acf-form, .smf-form) input[type="email"],
:is(#acf-form, .smf-form) input[type="tel"],
:is(#acf-form, .smf-form) input[type="url"],
:is(#acf-form, .smf-form) input[type="number"],
:is(#acf-form, .smf-form) input[type="password"],
:is(#acf-form, .smf-form) input[type="date"],
:is(#acf-form, .smf-form) textarea,
:is(#acf-form, .smf-form) select {
  display: block;
  width: 100%;
  height: 2.875em;
  line-height: 2.875em;
  font-size: 1rem;
  font-weight: 500;
  background: #f3f4f6;
  border: 1px solid #f3f4f6;
  border-radius: 0;
  padding: 0 1em !important;
  margin-bottom: 0 !important;
}
:is(#acf-form, .smf-form) textarea {
  height: auto;
  line-height: 1.5em;
  padding-block: 1em !important;
}
:is(#acf-form, .smf-form) input::placeholder,
:is(#acf-form, .smf-form) textarea::placeholder {
  color: #d4d4d4;
  font-weight: normal;
}
:is(#acf-form, .smf-form) label {
  cursor: pointer;
}
:is(#acf-form, .smf-form) input[type="radio"],
:is(#acf-form, .smf-form) input[type="checkbox"] {
  position: absolute;
  z-index: -10;
  font-size: 0;
  line-height: 0;
  border: none;
  background: transparent;
  outline: none;
  box-shadow: none;
  width: 0;
  height: 0;
  margin: 0
}
:is(#acf-form, .smf-form) input[type="radio"]::before,
:is(#acf-form, .smf-form) input[type="checkbox"]::before {
  display: none !important;
}
:is(#acf-form, .smf-form) input[type="radio"]+span,
:is(#acf-form, .smf-form) input[type="checkbox"]+span {
  display: inline-block;
  padding: 0.25em 0.25em 0.25em 1.75em;
  position: relative;
}
:is(#acf-form, .smf-form) input[type="checkbox"]+span {
  padding-left: 1.75em;
}
:is(#acf-form, .smf-form) input[type="radio"]+span:before,
:is(#acf-form, .smf-form) input[type="checkbox"]+span:before,
:is(#acf-form, .smf-form) input[type="radio"]+span:after,
:is(#acf-form, .smf-form) input[type="checkbox"]+span:after {
  position: absolute;
  z-index: 10;
  display: inline-block;
  content: "";
  top: 50%;
  translate: 0 -50%;
  box-sizing: border-box;
}
:is(#acf-form, .smf-form) input[type="checkbox"]+span::before {
  z-index: 15;
  width: 0.375em;
  aspect-ratio: 1/2;
  border-bottom: 3px solid var(--white);
  border-right: 3px solid var(--white);
  top: calc(50% - 0.05em);
  left: 0.3em;
  rotate: 45deg;
  opacity: 0;
}
:is(#acf-form, .smf-form) input[type="checkbox"]+span:after {
  width: 1em;
  aspect-ratio: 1/1;
  border: 1px solid #999999;
  border-radius: 0.1875em;
  background: var(--white);
  left: 0;
}
:is(#acf-form, .smf-form) input[type="radio"]+span:before {
  border: 1px solid #999999;
  border-radius: 50%;
  width: 1.125em;
  height: 1.125em;
  left: 0;
}
:is(#acf-form, .smf-form) input[type="radio"]+span:after {
  border-radius: 50%;
  width: 0.75em;
  height: 0.75em;
  border: none;
  background: var(--main_color);
  left: 0.2em;
  opacity: 0;
}
:is(#acf-form, .smf-form) input[type="checkbox"]:checked+span:before,
:is(#acf-form, .smf-form) input[type="radio"]:checked+span:after {
  opacity: 1;
}
:is(#acf-form, .smf-form) input[type="radio"]:checked+span:after,
:is(#acf-form, .smf-form) input[type="checkbox"]:checked+span:after {
  background: var(--key_color);
}
:is(#acf-form, .smf-form) input[type="radio"]:focus-visible+span::after,
:is(#acf-form, .smf-form) input[type="checkbox"]:focus-visible+span::after {
  outline: 1px solid #000;
}
:is(#acf-form, .smf-form) .select_wrap {
  display: inline-block;
  position: relative;
  z-index: 5;
  min-width: 18.75em;
}
:is(#acf-form, .smf-form) .select_wrap:after {
  position: absolute;
  z-index: 2;
  content: "";
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  width: 1em;
  height: 0.625em;
  background: var(--black);
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  top: 50%;
  right: 0.625em;
  translate: 0 -50%;
}
:is(#acf-form, .smf-form) .select_wrap select {
  padding-right: 2em !important;
}
.smf-form .smf-item .smf-error-messages,
.acf-form-fields .acf-notice.-error p {
  color: #cc0101;
  font-size: inherit;
  line-height: inherit;
  font-weight: bold;
  margin: 0;
}
.smf-form--simple-table .smf-item,
.acf-form-fields>.acf-field {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  border-top: 1px solid var(--bg_color01);
  gap: 1.25em;
  padding: 1.25em 1.875em;
}
.acf-form-fields>.acf-field .acf-label {
  width: min(30%, 274px) !important;
}
.smf-form .smf-item .smf-item__col--label,
.acf-form-fields>.acf-field .acf-label label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.625em;
  flex-wrap: wrap;
  min-height: 2.875em;
  font-size: 1rem;
  font-weight: bold;
  color: var(--black);
  padding: 0;
  margin: 0;
}
.smf-form .smf-item .smf-item__description,
.acf-form-fields>.acf-field .acf-label label .acf-required {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 0.875em;
  line-height: 1;
  color: var(--white);
  background: var(--sub_color02);
  border-radius: 1em;
  padding: 0.4em 1em;
  margin: 0;
}
.acf-form-fields>.acf-field .acf-input {
  flex: 1;
  align-self: center;
}
.acf-field :is(.acf-checkbox-list, .acf-radio-list),
.acf-field :is(.acf-checkbox-list, .acf-radio-list) li {
  font-size: inherit;
  padding: 0;
  margin: 0;
  list-style: none;
}
.acf-field :is(.acf-checkbox-list, .acf-radio-list) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3125em 1em;
}
.acf-field .acf-checkbox-list.acf-bl li {
  width: calc((100% - 1em * 2) / 3);
  min-width: 200px;
}
.acf-input:has(.acf-field-image) {
  border: 1px solid #c5c5c5;
}
.acf-input .acf-field-image {
  border-bottom: 1px solid #e5e5e5;
}
.acf-input .acf-field-image:last-child {
  border: none;
}
.acf-input .acf-field-image .acf-label label {
  background: #f3f4f6;
  padding: 0.625em 1em;
  border-right: 1px solid #e5e5e5;
}
.acf-input .acf-field-image .acf-input {
  padding-inline: 1em !important;
}
.acf-input .acf-field {
  display: flex;
  gap: 1.25em;
  border-top: none;
  border-right: none;
  border-left: none;
}
.acf-input .acf-field:not(.acf-field-image):nth-child(n + 2) {
  margin-top: 1em;
}
.acf-input .acf-field:not(.acf-field-image) .acf-label {
  width: auto !important;
}
.smf-placeholder[data-name="privacypolicy"],
.acf-field[data-name="privacy_agreement"] .acf-input {
  background: var(--hover_sub_color02);
  padding: 0.625em 1em;
}
#acf-form :is(.acf-url i.acf-icon, .acf-field-image .show-if-value.image-wrap) {
  display: none !important;
}
.smf-form .smf-item .smf-control-description {
  font-size: 0.875rem;
  color: var(--black);
  margin-top: 0;
}
.smf-form .smf-item .smf-select-control {
  width: 40%;
}
.smf-form .privacypolicy-box .smf-placeholder {
  text-align: center;
}
:is(.smf-action, .acf-form-submit) {
  display: flex;
  justify-content: center;
  flex-direction: column-reverse;
  margin: 3em auto 0 !important;
  gap: 1em;
}
:is(.smf-action, .acf-form-submit) .smf-button-control {
  margin: 0 !important;
}
:is(.smf-action, .acf-form-submit) .smf-button-control__control {
  --key_color: var(--main_color);
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 15em;
  width: fit-content;
  min-height: 3.2em;
  font-size: 1.25rem;
  font-weight: bold;
  color: var(--white) !important;
  background: var(--key_color);
  border: none;
  border-radius: 0.2777778em;
  padding: 0.555556em 1.666667em;
  margin: auto;
  text-decoration: none;
  transition: translate .3s;
  cursor: pointer;
}
.acf-form-submit .acf-spinner,
.smf-action .smf-button-control__control .smf-sending::before {
  display: none;
}
:is(.smf-action, .acf-form-submit) .smf-button-control__control[data-action="back"] {
  min-width: 220px;
}
:is(.smf-action, .acf-form-submit) .smf-button-control__control[data-action="back"] .smf-sending {
  right: 28%;
}
.snow-monkey-form[data-screen="input"] .form-confirm,
.snow-monkey-form[data-screen="invalid"] .form-confirm,
.snow-monkey-form[data-screen="back"] .form-confirm,
.snow-monkey-form[data-screen="confirm"] .form-input,
.snow-monkey-form[data-screen="invalid"] .form-input {
  display: none !important;
}
.smf-form [data-invalid="1"],
.acf-field [aria-invalid="true"] {
  border-color: #cc0101 !important;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
  :is(.smf-action, .acf-form-submit) .smf-button-control__control:hover {
    translate: 0 -3px;
  }
}
@media screen and (max-width: 767px) {
  :is(#acf-form, .smf-form) input[type="text"],
  :is(#acf-form, .smf-form) input[type="search"],
  :is(#acf-form, .smf-form) input[type="email"],
  :is(#acf-form, .smf-form) input[type="tel"],
  :is(#acf-form, .smf-form) input[type="url"],
  :is(#acf-form, .smf-form) input[type="number"],
  :is(#acf-form, .smf-form) input[type="password"],
  :is(#acf-form, .smf-form) input[type="date"],
  :is(#acf-form, .smf-form) textarea,
  :is(#acf-form, .smf-form) select {
    font-size: 1rem;
  }
  :is(#acf-form, .smf-form) input[type="radio"]+span,
  :is(#acf-form, .smf-form) input[type="checkbox"]+span {
    font-size: 1rem;
    padding-left: 1.5em;
  }
  :is(#acf-form, .smf-form) .select_wrap {
    min-width: 100%;
  }
  .smf-form--simple-table .smf-item,
  .acf-form-fields>.acf-field {
    flex-direction: column;
    gap: 0.5em;
    padding: .65em 1em;
  }
  .acf-form-fields>.acf-field .acf-label {
    width: 100% !important;
  }
  .smf-form .smf-item .smf-item__col--label,
  .acf-form-fields>.acf-field .acf-label label {
    min-height: 0;
  }
  .smf-form .smf-item .smf-item__col,
  .acf-form-fields>.acf-field .acf-input {
    width: 100% !important;
  }
  .acf-field :is(.acf-checkbox-list, .acf-radio-list) {
    gap: 0.5em 1em;
  }
  .acf-field .acf-checkbox-list.acf-bl li {
    width: 100%;
    min-width: 0;
  }
  .acf-input .acf-field {
    align-items: center;
  }
  .acf-input :is(.acf-field-textarea, .acf-field-url, .acf-field-text, .acf-field-date-picker, .acf-field-radio, .acf-field-checkbox, .acf-field-select) {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5em;
  }
  .acf-input :is(.acf-field-textarea, .acf-field-url, .acf-field-text, .acf-field-date-picker, .acf-field-radio, .acf-field-checkbox, .acf-field-select)>* {
    width: 100% !important;
  }
  .acf-input .acf-field-image {
    gap: 0 !important;
    flex-direction: column;
  }
  .acf-input .acf-field-image .acf-label label {
    border-right: none;
  }
  .acf-input .acf-field-image .acf-input {
    padding-block: 0.5em !important;
  }
  :is(.smf-action, .acf-form-submit) {
    margin: 2em auto 0 !important;
    gap: 1em;
  }
  :is(.smf-action, .acf-form-submit) .smf-button-control__control {
    min-width: 15em;
    font-size: 1rem;
  }
}