* {
  box-sizing: border-box;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0
}

:root {
  --base-mb: 20px;
  --base-mb--s: 10px;
  --base-mb--h: 25px;
  --base-font_family: "Noto Sans JP", sans-serif;
  --mincho-font_family: "Noto Serif JP", serif;
  --zenkaku-font_family: "Zen Kaku Gothic New", sans-serif;
  --base-font_size: 16px;
  --base-line_height: 1.8;
  --base-letter_spacing: .025em;
  --base-padding--container: min(48px, 4vw);
  --base-color: #B17C26;
  --base-color--text: #000;
  --base-color--border: hsla(0, 0%, 78%, .5);
  --base-color--border--table: #000;
  --base-color--gray--hover: hsla(0, 0%, 59%, .05);
  --base-opacity--thin: .75;
  --base-header_height: 0px;
  --base-header_height--fixed: 0px;
  --base-adminbar_height: 0px;
  --base-scrollbar_width: 0px;
  --base-100vh: 100vh;
  --base-fz--xs: .75em;
  --base-fz--s: .9em;
  --base-fz--n: 1rem;
  --base-fz--m: 1.1em;
  --base-fz--l: 1.25em;
  --base-fz--xl: 1.5em;
  --base-fz--xxl: 2em;
  --base-fz--huge: 3em;
  --base-submenu_btn_size: 1.75rem;
  --base-content-width: 1200px;
}

html {
  font-size: var(--base-font_size);
  letter-spacing: var(--base-letter_spacing)
}

body {
  --base-offset--y: calc(var(--base-adminbar_height) + var(--base-header_height--fixed));
  --base-height--full: calc(var(--base-100vh, 100vh) - var(--base-offset--y))
}

body.admin-bar {
  --base-adminbar_height: var(--wp-admin--admin-bar--height, 32px)
}

@supports (height:100svh) {
  .l-main__body>.c-postContent>:first-child {
    --base-100vh: 100svh
  }
}

body {
  --base-color_main: var(--base-color--main);
  --base-color_text: var(--base-color--text);
  --base-color_link: var(--base-color--link);
  --base-color_bg: var(--base-color--bg);
  --base-color_gray: var(--base-color--gray);
  --base-hover_gray: var(--base-color--gray--hover);
  --base-color_border: var(--base-color--border);
  --base-pad--container: var(--base-padding--container);
  --base-container_width: var(--base-width--container);
  --base-article_width: var(--base-width--article);
  --base-slim_width: var(--base-width--article--slim);
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  background-color: var(--base-color--bg);
  color: var(--base-color--text);
  font-family: var(--base-font_family);
  font-size: var(--base-font_size);
  font-weight: 400;
  line-height: 1.8;
  max-width: 100%;
  min-width: 100%;
  overflow-wrap: break-word;
  overflow-x: hidden;
  position: relative
}

a {
  color: var(--base-color--link);
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  --base-mb: var(--base-mb--h);
  font-weight: 600;
  line-height: 1.8
}

h1 {
  font-size: 50px;
}

h2 {
  font-size: 40px;
}

h3 {
  font-size: 30px;
}

h4 {
  font-size: 25px;
}

h5 {
  font-size: 20px;
}

h6 {
  font-size: 18px;
}

@media screen and (max-width:1000px) {
  h4 {
    font-size: 20px;
  }

  h5 {
    font-size: 16px;
  }

  h6 {
    font-size: 16px;
  }
}

b,
strong {
  font-weight: 700
}

ruby>rt {
  font-size: 50%
}

img {
  border-style: none;
  height: auto;
  max-width: 100%
}

video {
  outline: none
}

.c-filterLayer__img,
.c-gnav .sub-menu .c-gnav__a:before,
.c-submenuToggleBtn:after {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0
}

.c-bottomSection__title,
.c-secTitle,
.c-widget>.wp-block-group>.wp-block-group__inner-container>h2,
.c-widget__title,
h2.widgettitle {
  font-size: 1.4em;
  font-weight: 700;
  margin-bottom: 1em;
  position: relative
}

.c-commentList,
.c-drawerNav,
.c-gnav,
.c-gnav .sub-menu,
.c-pnNav,
.has-child--acc .children,
.has-child--acc .sub-menu,
.l-footer__nav,
.p-postList,
.widget_categories>ul,
.widget_nav_menu .menu,
.widget_recent_entries__list,
.wp-block-archives-list,
.wp-block-categories-list,
.wp-block-categories-list .children,
.wp-block-latest-comments,
.wp-block-latest-posts:not(.is-grid),
.wp-block-page-list,
.wp-block-page-list .submenu-container,
.wp-block-social-links {
  --base-list-padding: 0;
  list-style: none
}

.c-drawerNav,
.widget_categories>ul,
.widget_nav_menu .menu,
.widget_recent_entries__list,
.wp-block-archives-list,
.wp-block-categories-list,
.wp-block-latest-comments,
.wp-block-latest-posts:not(.is-grid),
.wp-block-page-list {
  border-bottom: var(--base-menulist_border);
  border-top: var(--base-menulist_border)
}

.c-drawerNav .menu-item,
.widget_categories li,
.widget_nav_menu .menu-item,
.widget_recent_entries__li,
.wp-block-archives-list li,
.wp-block-categories-list li,
.wp-block-latest-comments__comment,
.wp-block-latest-posts:not(.is-grid) li,
.wp-block-pages-list__item {
  border-bottom: var(--base-menulist_border);
  line-height: 1.5;
  margin: 0 !important;
  position: relative
}

.c-drawerNav__a,
.c-gnav .sub-menu .c-gnav__a,
.widget_categories a,
.widget_nav_menu a,
.widget_recent_entries__a,
.wp-block-archives-list a,
.wp-block-categories-list a,
.wp-block-pages-list__item__link {
  color: inherit;
  display: block;
  font-size: var(--base-nav_fz, 1em);
  padding: var(--base-nav-padding--Y, .75rem) var(--base-nav-padding--R, .5rem) var(--base-nav-padding--Y, .75rem) var(--base-nav-padding--L, .5rem);
  position: relative;
  text-decoration: none
}

.c-drawerNav__a:hover,
.widget_categories a:hover,
.widget_nav_menu a:hover,
.widget_recent_entries__a:hover,
.wp-block-archives-list a:hover,
.wp-block-categories-list a:hover,
.wp-block-pages-list__item__link:hover {
  background-color: var(--base-color--gray--hover)
}

.has-child--acc .children,
.has-child--acc .sub-menu,
.wp-block-categories-list .children,
.wp-block-page-list .submenu-container {
  --base-nav-padding--L: 1.5rem;
  --base-nav_fz: .925em;
  border-top: 1px dashed var(--base-color--border)
}

.has-child--acc .children ul,
.has-child--acc .sub-menu ul,
.wp-block-categories-list .children ul,
.wp-block-page-list .submenu-container ul {
  --base-nav-padding--L: 2.25rem
}

.has-child--acc .children,
.has-child--acc .sub-menu {
  border-top: 1px dashed var(--base-color--border);
  height: 0;
  list-style: none;
  margin: 0;
  opacity: 0;
  padding: 0;
  position: relative;
  visibility: hidden
}

.has-child--acc .is-opened.children,
.has-child--acc .is-opened.sub-menu {
  height: auto;
  opacity: 1;
  visibility: visible
}

:after,
:before {
  box-sizing: inherit;
  text-decoration: inherit;
  vertical-align: inherit
}


svg:not([fill]) {
  fill: currentcolor
}

[hidden] {
  display: none
}

/* form入力関連 */
button,
input {
  overflow: visible
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
  cursor: pointer;
  display: inline-block
}

[role=button] {
  cursor: pointer
}

button,
input,
select,
textarea {
  border: 1px solid var(--base-color--border);
  border-radius: 0;
  color: #333;
  padding: 4px 8px
}

[type=color] {
  padding: 0
}

[type=range] {
  vertical-align: middle
}

[aria-busy=true] {
  cursor: progress
}

[aria-controls] {
  cursor: pointer
}

[aria-disabled] {
  cursor: default
}

blockquote {
  background: none;
  border-left: 2px solid var(--base-color--border);
  padding: .25em 1em;
  quotes: none
}

blockquote cite {
  display: block;
  font-size: .8em;
  margin-top: 1em;
  opacity: .75
}

blockquote p+p {
  margin-top: .75em
}

table {
  border: none;
  border-collapse: collapse;
  border-right: 1px solid var(--base-color--border--table);
  border-spacing: 0;
  border-top: 1px solid var(--base-color--border--table);
  max-width: 100%;
  text-align: left;
  width: 100%
}

table caption {
  font-size: .9rem;
  margin-top: .75rem;
  opacity: var(--base-opacity--thin)
}

td,
th {
  border-bottom: 1px solid var(--base-color--border--table);
  border-left: 1px solid var(--base-color--border--table);
  padding: var(--base-padding--cell, .5em .75em) !important;
  vertical-align: top;
  word-break: break-all
}

thead td,
thead th {
  background-color: var(--base-color--main);
  color: #fff
}

tbody th {
  background-color: var(--base-color--gray);
  font-weight: 700
}

code,
pre {
  -o-tab-size: 4;
  tab-size: 4
}

pre {
  background-color: var(--base-color--gray);
  overflow-x: auto;
  padding: 1rem
}

pre code {
  font-family: Menlo, Consolas, monaco, monospace;
  font-size: .9rem
}

hr:not(.wp-block-separator) {
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, .1)
}

:not(pre)>code,
kbd {
  background: #edf0f3;
  border-radius: 3px;
  color: #3f3f3f;
  display: inline-block;
  font-family: Menlo, Consolas, Hiragino Kaku Gothic ProN, Hiragino Sans, メイリオ, sans-serif;
  font-size: .9em;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0 .25em;
  padding: .2em .5em;
  text-decoration: inherit
}

kbd {
  background-color: #fbfbfb;
  box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15), 0 0 1px rgba(0, 0, 0, .1)
}

small {
  opacity: var(--base-opacity--thin)
}

small,
sub,
sup {
  font-size: .75em
}

ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

ol.has-background,
ul.has-background {
  padding: var(--base-list-padding--has_bg, 1em 1em 1em 2.25em)
}

iframe {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%
}

.page-template-one-column-slim,
.post-template-default,
.post-template-one-column-slim {
  --base-width--article: var(--base-width--article--slim)
}

.c-bottomSection {
  margin-top: 4rem
}

.l-container {
  width: 100%
}

.l-content {
  padding-top: 150px;
  flex: 1 0 auto;
  position: relative;
  z-index: 0
}

.l-content__body {
  margin: 0 auto
}

.home.page .l-content__body {
  margin-bottom: 0;
  margin-top: 0
}

.c-copyright {
  font-size: .8rem;
  text-align: center
}

:root {
  --base-drawerW: 40px;
  --base-searchW: 40px
}

[data-has-drawer=""] {
  --base-drawerW: 0px
}

[data-has-drawer=""] .l-header__drawerBtn {
  display: none
}

[data-has-search=""] {
  --base-searchW: 0px
}

[data-has-search=""] .l-header__searchBtn {
  display: none
}

[data-btns=l-r] .l-header__body {
  grid-template-areas: "menu left center right search";
  grid-template-columns: var(--base-drawerW) calc(25% - var(--base-drawerW)) 50% calc(25% - var(--base-searchW)) var(--base-searchW)
}

[data-btns=r-l] .l-header__body {
  grid-template-areas: "search left center right menu";
  grid-template-columns: var(--base-searchW) calc(25% - var(--base-searchW)) 50% calc(25% - var(--base-drawerW)) var(--base-drawerW)
}

[data-btns=rl-rr] .l-header__body {
  grid-template-areas: "left center right menu search";
  grid-template-columns: 25% 50% auto var(--base-drawerW) var(--base-searchW)
}

[data-btns=rr-rl] .l-header__body {
  grid-template-areas: "left center right search menu";
  grid-template-columns: 25% 50% auto var(--base-searchW) var(--base-drawerW)
}

.l-main {
  position: static !important;
  width: 100%
}

.l-main__body>:first-child {
  margin-top: 0 !important
}

.l-main__body>:last-child {
  margin-bottom: 0 !important
}

.l-scrollObserver {
  display: block;
  height: 1px;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 100px;
  visibility: hidden;
  width: 100%;
  z-index: 1000
}

.l-sidebar {
  position: relative
}

[data-sidebar=on] {
  --base-width--sidebar: 280px;
  --base-gap--container: 32px
}

.l-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh
}

.c-headLogo {
  color: inherit;
  display: block;
  font-weight: 400;
  text-decoration: none
}

.has-text>.c-headLogo {
  font-size: .75em;
  line-height: 1.5
}

.c-headLogo__img {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  width: auto
}

.l-headerUnder {
  background: #fff;
  width: 100%;
  z-index: 1
}

.l-headerUnder .c-gnav {
  justify-content: center;
  width: 100%
}

.l-headerUnder .c-gnav>.menu-item>a {
  padding: 16px 24px
}

.l-headerUnder[data-fix] {
  position: sticky;
  top: 0
}

[data-pcfix="1"]+.l-headerUnder[data-fix] {
  top: var(--base-header_height)
}

.admin-bar .l-headerUnder[data-fix] {
  top: var(--base-adminbar_height)
}

.admin-bar [data-pcfix="1"]+.l-headerUnder[data-fix] {
  top: calc(var(--base-header_height) + var(--base-adminbar_height))
}

.p-searchModal__inner {
  background: hsla(0, 0%, 100%, .1);
  left: 50%;
  max-width: 600px;
  padding: 1em;
  position: absolute;
  top: calc(50% + 16px);
  transform: translateX(-50%) translateY(-50%);
  transition: top .5s;
  width: 96%;
  z-index: 1
}

.is-open>.p-searchModal__inner {
  top: 50%
}

.p-searchModal__inner .c-searchForm {
  box-shadow: 0 0 4px hsla(0, 0%, 100%, .2)
}

.p-searchModal__inner .s {
  font-size: 1rem
}

.p-searchModal__close {
  color: #fff;
  left: 50%;
  margin-top: 1em;
  position: absolute;
  top: 100%;
  transform: translateX(-50%)
}

.c-filterLayer {
  z-index: 0
}

.c-filterLayer:after,
.c-filterLayer:before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.c-filterLayer:before {
  z-index: 1
}

.c-filterLayer:after {
  z-index: 2
}

.c-filterLayer.-filter-none:after,
.c-filterLayer.-filter-none:before {
  content: none
}

.c-filterLayer.-filter-dot:after {
  background-color: rgba(0, 0, 0, .1);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAGUExURUdwTAAAAJ8qhFEAAAABdFJOUwBA5thmAAAAEklEQVQI12MwYDBgYGBoYGAAAASKAOH8MS30AAAAAElFTkSuQmCC);
  background-size: 2px;
  opacity: .5
}

.c-fixBtn {
  background: var(--base-color--main);
  border-radius: 1px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .2), 0 4px 4px -4px rgba(0, 0, 0, .15);
  color: #fff;
  cursor: pointer;
  height: 42px;
  line-height: 1;
  opacity: .5;
  overflow: hidden;
  transition: opacity .25s;
  width: 42px
}

.c-fixBtn__icon {
  display: block;
  font-size: 16px
}

.c-gnavWrap {
  height: 100%
}

.l-header__body .c-gnavWrap {
  position: relative;
  z-index: 1
}

.c-gnav {
  font-size: .9rem;
  height: 100%;
  text-align: center
}

.c-gnav .__mainText {
  font-size: 13px
}

.main-nav .c-gnav__a:before {
  content: none !important;
}

.main-nav>a>.__mainText {
  font-size: 22px;
  font-family: var(--mincho-font_family);
  font-weight: 700;
  transition: all .5s ease;
}

.main-nav>a>.__mainText .small {
  font-size: 13px;
  line-height: 2.5;
}

.c-gnav .__mainText,
.c-gnav .__subText {
  color: inherit;
  display: block;
  line-height: 1;
  transition: all .5s ease;
}

.c-gnav .__subText {
  font-size: 10px;
  opacity: .6;
  position: relative;
  top: 4px
}

.c-gnav__l:hover .__mainText {
  color: var(--base-color);
  transition: all .5s ease;
}

.c-gnav__a {
  font-size: 1em;
  text-decoration: none
}

.c-gnav__li,
.c-gnav__li>.c-gnav__a {
  height: 100%;
}

.c-gnav__li>.c-gnav__a {
  position: relative;
  color: inherit;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 16px 12px;
  transition: color .25s;
  white-space: nowrap;
  font-weight: 500;
}

.c-gnav__li>.c-gnav__a:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 11px;
  margin: auto 0;
  background-color: #000;
}

.c-gnav__li:last-of-type>.c-gnav__a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 1px;
  height: 11px;
  margin: auto 0;
  background-color: #000;
}

@media screen and (min-width:769px) {
  .c-gnav__li>.c-gnav__a:hover {
    color: var(--base-color);
  }

  .c-gnav__li.-current,
  .c-gnav__li.focus,
  .c-gnav__li:hover {
    color: var(--base-color--main)
  }
}

@media screen and (max-width:1280px) {
  .c-gnav__li:last-of-type>.c-gnav__a:after {
    content: none;
  }
}

.c-gnav__depth1 {
  --base-color--border: hsla(0, 0%, 100%, .2);
  --base-nav-padding--Y: 1rem;
  --base-nav-padding--R: .75rem;
  --base-nav-padding--L: .75rem;
  --base-nav_fz: .9em;
  box-shadow: 0 4px 12px -2px rgba(0, 0, 0, .15);
  left: 50%;
  min-width: 240px;
  opacity: 0;
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
  transition: opacity .5s, visibility .35s;
  visibility: hidden;
  width: 100%;
  z-index: 1
}

.c-gnav__li.focus>.c-gnav__depth1,
.c-gnav__li:hover>.c-gnav__depth1,
.c-gnav__li.focus>.c-gnav__depth1 .c-gnav__depth2,
.c-gnav__li:hover>.c-gnav__depth1 .c-gnav__depth2 {
  opacity: 1;
  visibility: visible
}

.c-gnav__li font {
  display: block;
}

.c-iconBtn {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  height: 100%;
  padding: 0;
  text-decoration: none;
  width: 100%
}

.c-iconBtn .-menuBtn {
  z-index: 1
}

.c-iconBtn__icon {
  display: block;
  font-size: 24px;
  height: 24px;
  line-height: 1;
  position: relative;
  width: 24px
}

.c-iconBtn__icon svg {
  display: block;
  height: 100% !important;
  width: 100% !important
}

.c-iconBtn__icon .__close,
.c-iconBtn__icon .__open {
  transform-origin: 50% 50%;
  transition: .25s
}

.c-iconBtn__icon .__close {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transform: rotate(180deg);
  z-index: 1
}

[data-drawer=opened] .c-iconBtn__icon .__close {
  opacity: 1;
  transform: rotate(0)
}

[data-drawer=opened] .c-iconBtn__icon .__open {
  opacity: 0;
  transform: rotate(-180deg)
}

.c-iconBtn__label {
  display: block;
  font-size: 10px;
  transform: scale(.9);
  width: 100%
}

.c-modal {
  height: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition-duration: .5s;
  transition-property: visibility, opacity;
  visibility: hidden;
  width: 100%;
  z-index: 1000
}

[data-loaded=false] .c-modal {
  display: none
}

.c-modal.is-open {
  opacity: 1;
  visibility: visible
}

.c-overlay {
  background: rgba(0, 0, 0, .75);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0
}

.c-pageTitle__main {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.8;
  position: relative
}

.c-pageTitle__sub {
  font-size: .9rem;
  font-style: italic;
  font-weight: 400;
  position: relative;
  vertical-align: middle
}

.c-pageTitle__sub:after,
.c-pageTitle__sub:before {
  content: "?";
  margin: 0 1em;
  vertical-align: baseline
}

.p-page__title .c-pageTitle__sub {
  margin-left: .5em
}

.p-archive__title,
.p-page__title {
  margin-bottom: 2.5rem
}

.p-404__title {
  font-size: 1.5rem;
  padding-top: 2rem;
  text-align: center
}

.pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  font-size: 13px;
  justify-content: center;
  margin: 3rem 0;
  position: relative
}

.pagination .dots {
  margin: 0;
  opacity: var(--base-opacity--thin)
}

.pagination .next,
.pagination .prev {
  display: none
}

.page-numbers,
.post-page-numbers {
  box-sizing: content-box;
  color: #9D9D9D;
  display: block;
  font-size: 14px;
  height: 32px;
  line-height: 32px;
  margin: 0 9px;
  min-width: 32px;
  padding: 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: color .25s, background-color .25s;
  width: auto;
  border: solid 1px #9D9D9D;
}

.page-numbers:not(.dots).current,
.page-numbers:not(.dots):hover,
.post-page-numbers:not(.dots).current,
.post-page-numbers:not(.dots):hover {
  background-color: #A67F0B;
  color: #FFF;
  border: solid 1px #A67F0B;
}

.c-searchForm {
  position: relative
}

.c-searchForm__s {
  line-height: 2;
  padding: 4px 44px 4px 8px;
  width: 100%
}

.c-searchForm__submit {
  background: none;
  border: none;
  font-size: 16px;
  height: 100%;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity .25s;
  width: 40px
}

.c-searchForm__submit:hover {
  opacity: .75
}

.c-submenuToggleBtn {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  color: inherit;
  cursor: pointer;
  height: var(--base-submenu_btn_size);
  outline-offset: -1px;
  padding: 0;
  position: absolute;
  right: 8px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  width: var(--base-submenu_btn_size);
  z-index: 1
}

.c-submenuToggleBtn:focus {
  outline-style: solid;
  outline-width: 2px
}

.c-submenuToggleBtn .c-submenuToggleBtn__svg {
  display: block;
  height: 100%;
  padding: 25%;
  transform: rotate(0deg);
  transition: transform .25s;
  width: 100%
}

.c-submenuToggleBtn:after {
  box-shadow: inset 0 0 0 1px currentcolor;
  content: "";
  opacity: .2
}

.c-submenuToggleBtn.is-opened .c-submenuToggleBtn__svg {
  transform: rotate(-180deg)
}

.skip-link {
  left: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute !important;
  text-decoration: none;
  top: 0;
  z-index: 999
}

.skip-link:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
  color: #21759b;
  display: block;
  font-size: 14px;
  font-weight: 700;
  height: auto;
  left: 8px;
  opacity: 1;
  padding: 16px 24px;
  pointer-events: auto;
  top: 8px;
  width: auto;
  z-index: 1000
}

.screen-reader-text {
  word-wrap: normal !important;
  clip: rect(1px, 1px, 1px, 1px);
  border: 0;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px
}

.c-postAuthor {
  color: inherit;
  text-decoration: none
}

a.c-postAuthor:hover {
  text-decoration: underline
}

.c-postAuthor__figure {
  border-radius: 50%;
  height: 16px;
  margin: 0 .25em 0 1px;
  overflow: hidden;
  width: 16px
}

.c-postMetas>.c-postAuthor,
.c-postMetas>div {
  margin-bottom: .25rem
}

.c-postMetas__icon {
  display: block
}

.c-postMetas__icon,
.c-postTerms__item,
.c-postTerms__link {
  margin-right: .25rem
}

.c-postTerms__item .c-postTerms__link {
  background-color: #999;
  padding: 3px 10px;
  border-radius: 5px;
  color: #FFF;
  font-size: 14px;
}

.c-postTerms__link {
  color: inherit;
  display: block
}

.p-entry__head .c-postTerms__link:not(:hover) {
  text-decoration: none
}

.p-entry__head .c-postTerms__link:not(:last-child):after {
  content: ","
}

.p-entry__foot .c-postTerms {
  margin-bottom: 0
}

.p-entry__foot .c-postTerms__item {
  margin-bottom: .25rem;
  margin-right: .5rem
}

.p-entry__foot .c-postTerms__link {
  background: #f7f7f7;
  border: none;
  color: #333;
  display: block;
  line-height: 1;
  padding: 6px 8px;
  position: relative;
  text-decoration: none;
  transition: opacity .25s
}

.p-entry__foot .c-postTerms__link:hover {
  opacity: .75
}

.c-postThumb {
  overflow: hidden;
  position: relative;
  vertical-align: middle
}

.c-postThumb__figure {
  margin: 0;
  overflow: hidden;
  padding-top: var(--base-thumb_ratio);
  position: relative;
  width: 100%;
  z-index: 0
}

.c-postThumb__img {
  display: block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  transition: transform .25s;
  width: 100%
}

.c-postTimes__item {
  margin-right: 15px;
  font-size: 18px;
}

.p-archive__desc {
  margin-bottom: 2rem
}

.p-entry__thumb {
  margin-bottom: 20px;
  text-align: center;
  width: 100%
}

.p-entry__thumb__img {
  display: block;
  width: 100%
}

.p-authorBox {
  background-color: var(--base-color--gray);
  padding: 1.5rem
}

.author .p-authorBox {
  margin-bottom: 4rem
}

.p-authorBox__avatar {
  flex: 1 0 auto;
  margin: 0
}

.p-authorBox__avatar .avatar {
  border-radius: 50%;
  display: block;
  height: 100px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100px
}

.p-authorBox__name {
  color: inherit;
  display: block;
  font-weight: 700;
  text-decoration: none
}

.p-authorBox__position {
  display: block;
  font-size: .75rem;
  margin-top: .25rem
}

.p-authorBox__description {
  font-size: .9rem;
  margin-top: .75rem
}

.p-authorBox__footer {
  font-size: .9rem;
  margin-top: 1rem
}

.p-authorBox__weblink .arkhe-svg-link {
  margin-right: 2px
}

.p-authorBox__archivelink a {
  box-shadow: 0 0 0 1px currentcolor;
  color: inherit;
  display: block;
  letter-spacing: 1px;
  margin: 0 auto;
  opacity: var(--base-opacity--thin);
  text-align: center;
  text-decoration: none;
  transition: opacity .25s
}

.p-authorBox__archivelink a:hover {
  opacity: 1
}

.p-breadcrumb {
  margin: 0 auto;
  padding: 8px 0;
  position: relative;
  width: 90%;
  max-width: var(--base-content-width);
}

.p-breadcrumb__list {
  display: flex;
  list-style: none;
  overflow: hidden;
  width: 100%
}

.p-breadcrumb__item {
  margin-right: 10px;
  padding-right: 12px;
  position: relative
}

.p-breadcrumb__item:after {
  border-right: 1px solid;
  border-top: 1px solid;
  color: inherit;
  content: "";
  display: block;
  height: 4px;
  opacity: var(--base-opacity--thin);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 4px
}

.p-breadcrumb__item:last-child:after {
  content: none
}

.p-breadcrumb__text {
  align-items: center;
  color: inherit;
  display: flex;
  font-size: 10px;
  white-space: nowrap
}

.p-breadcrumb__text:where(:not(:hover)) {
  text-decoration: none
}

.p-breadcrumb__text .arkhe-svg-home {
  margin-bottom: 1px;
  margin-right: 4px
}

.c-commentList {
  font-size: .9rem;
  margin: 2rem 0 0
}

.c-commentList .comment {
  margin-top: 1rem
}

.c-commentList>.comment {
  background-color: var(--base-color--gray);
  padding: 1rem
}

.c-commentList .children {
  border-left: 1px solid var(--base-color--border);
  list-style: none;
  margin-left: 1rem;
  padding: 0 0 0 1rem
}

.c-commentList .reply {
  margin-top: .5rem
}

.comment-body {
  padding: 8px
}

.comment-author {
  align-items: center;
  display: flex
}

.comment-author .avatar {
  border-radius: 50%
}

.comment-author .fn {
  font-size: 1.1em;
  margin-left: 1rem
}

.comment-author .url {
  color: inherit;
  text-decoration: none
}

.comment-author .says {
  display: none
}

.comment-metadata {
  margin-top: .25rem
}

.comment-metadata a {
  color: inherit;
  font-size: 11px;
  opacity: var(--base-opacity--thin)
}

.comment-metadata a:where(:not(:hover)) {
  text-decoration: none
}

.comment-content {
  line-height: 1.5;
  margin-top: 1rem
}

.comment-content>:first-child {
  margin-top: 0
}

.comment-content p {
  margin-top: 1rem
}

.comment-awaiting-moderation {
  display: block;
  font-weight: 700;
  margin-top: 1rem
}

.comment-respond {
  margin-top: 2.5rem
}

.comment-reply-title {
  font-size: 1rem;
  font-weight: 700
}

.comment-notes {
  font-size: .75rem
}

.comment-form,
.comment-form p {
  margin-top: 1rem
}

.comment-form label {
  display: block;
  font-weight: 700;
  margin-bottom: .5rem
}

.comment-form .comment-form-comment label {
  display: none
}

.comment-form [for=wp-comment-cookies-consent] {
  font-weight: 400
}

.comment-form #author,
.comment-form #comment,
.comment-form #email,
.comment-form #url {
  width: 100%
}

.comment-form .form-submit {
  margin-top: 2rem
}

.comment-form .submit {
  background-color: var(--base-color--main);
  border: none;
  color: #fff;
  padding: .5rem 1.5rem;
  transition: opacity .25s
}

.comment-form .submit:hover {
  opacity: .75
}

#cancel-comment-reply-link {
  font-size: .9em;
  font-style: italic;
  margin-left: 1em
}

.comment-form-cookies-consent {
  align-items: center;
  display: flex
}

.comment-form-cookies-consent label {
  margin-bottom: 0;
  margin-left: .5em
}

#wp-comment-cookies-consent {
  margin: 0
}

[data-drawer=closed] .p-drawer {
  opacity: 0;
  pointer-events: none;
  visibility: hidden
}

[data-drawer=opened] body {
  overflow-y: hidden;
  touch-action: none
}

.p-drawer,
[data-drawer=opened] .l-header__center,
[data-drawer=opened] .l-header__left,
[data-drawer=opened] .l-header__right,
[data-drawer=opened] .l-header__searchBtn {
  pointer-events: none
}

.p-drawer {
  --base-color--border: hsla(0, 0%, 100%, .15);
  --base-nav-padding--Y: 1rem;
  background: rgba(0, 0, 0, .92);
  color: #fff;
  font-size: .9rem;
  height: 100%;
  left: 0;
  padding: var(--base-header_height) 0 1rem;
  position: fixed;
  top: 0;
  transition: opacity .5s, visibility .5s;
  width: 100%;
  z-index: 1
}

[data-loaded=false] .p-drawer {
  display: none
}

.admin-bar .p-drawer {
  height: calc(100% - var(--base-adminbar_height));
  top: var(--base-adminbar_height)
}

.p-drawer__inner {
  -webkit-overflow-scrolling: touch;
  height: 100%;
  overflow-y: auto;
  pointer-events: auto;
  position: relative;
  width: 100%;
  z-index: 1
}

.p-drawer__body {
  margin: 0;
  padding: 4vw 6vw;
  position: relative
}

.c-drawerNav .__subText {
  font-size: .75em;
  margin-left: 1em;
  opacity: .6
}

[data-drawer-move=fade] .p-drawer__inner {
  margin: 0 auto;
  max-width: 600px
}

[data-drawer-move=fade][data-drawer=opened] .l-header__drawerBtn {
  color: #fff
}

.c-modalClose {
  background: none;
  border: none
}

.c-modalClose .arkhe-svg-close {
  margin-right: .5em
}

.p-drawer__close {
  color: inherit;
  margin: 1rem auto .5em
}

.p-drawerUnderlayer {
  background: none;
  height: 100%;
  left: 0;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  position: absolute;
  top: 0;
  transition: opacity .5s, visibility .5s;
  visibility: hidden;
  width: 100%;
  z-index: 99
}

[data-loaded=false] .p-drawerUnderlayer {
  display: none
}

[data-drawer=opened] .p-drawerUnderlayer {
  opacity: 1;
  visibility: visible
}

.p-entry__head .c-postMetas {
  letter-spacing: .1px;
  margin-top: 10px;
}

.p-entry__content.c-postContent {
  margin-top: 35px;
  margin-bottom: 35px;
}

@media screen and (max-width:1000px) {
  .p-entry__content.c-postContent {
    margin-top: 15px;
  }
}

.p-entry__foot>.c-postMetas {
  font-size: .8rem
}

.p-fixBtnWrap {
  align-items: flex-end;
  bottom: 6%;
  display: flex;
  flex-direction: column;
  opacity: 0;
  position: fixed;
  right: 3%;
  text-align: center;
  transition: opacity .5s, visibility .5s;
  visibility: hidden;
  z-index: 10
}

[data-scrolled=true] .p-fixBtnWrap {
  opacity: 1;
  visibility: visible
}

.c-pnNav {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 1rem 0
}

.c-pnNav__item {
  flex: 1 0 auto;
  font-size: .8rem;
  max-width: 100%;
  position: relative
}

.c-pnNav__item .c-pnNav__svg {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%)
}

.c-pnNav__item.-prev .c-pnNav__link {
  padding-left: 1.5em
}

.c-pnNav__item.-prev .c-pnNav__svg {
  left: 0
}

.c-pnNav__item.-next .c-pnNav__link {
  justify-content: flex-end;
  padding-right: 1.5em
}

.c-pnNav__item.-next .c-pnNav__svg {
  right: 0
}

.c-pnNav__link {
  color: inherit;
  height: 100%;
  line-height: 1.5;
  padding: .5rem .75rem;
  position: relative;
  text-decoration: none;
  transition: .25s;
  width: 100%
}

.c-pnNav__link:hover {
  opacity: .75
}

.c-pnNav__title {
  left: 0;
  position: relative;
  transition: all .25s
}

.p-postList.-type-simple {
  border-top: 1px solid var(--base-color--border)
}

.p-postList.-type-card {
  display: flex;
  flex-wrap: wrap;
  margin-left: -.75rem;
  margin-right: -.75rem
}

.p-postList.-type-simple .p-postList__item {
  margin-bottom: 0;
  margin-top: 0
}

.p-postList.-type-list .p-postList__item {
  margin-bottom: 2rem;
  margin-top: 0
}

.p-postList.-type-card .p-postList__item {
  flex-basis: 100%;
  margin-bottom: 2.5rem;
  margin-top: 0;
  padding: 0 .75rem
}

.p-postList__link {
  display: block;
  position: relative;
  z-index: 0
}

.p-postList .p-postList__link {
  color: inherit;
  text-decoration: none
}

.p-postList__link:hover .c-postThumb:before {
  opacity: .1
}

.p-postList__link:hover .c-postThumb__img {
  transform: scale(1.15)
}

.p-postList.-type-card .p-postList__link {
  height: 100%
}

.p-postList.-type-simple .p-postList__link {
  border-bottom: 1px solid var(--base-color--border);
  display: block;
  padding: .75rem .5rem;
  transition: background-color .25s
}

.p-postList.-type-simple .p-postList__link:hover {
  background-color: var(--base-color--gray)
}

.p-postList.-type-list .p-postList__link {
  align-items: flex-start;
  display: flex
}

.p-postList.-type-card .p-postList__thumb {
  width: 100%
}

.p-postList.-type-list .p-postList__thumb {
  flex-shrink: 0;
  max-width: 280px;
  width: 36%
}

.p-postList__thumb:before {
  background: #000;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity .25s;
  width: 100%;
  z-index: 1
}

.p-postList__body {
  position: relative;
  transition: opacity .25s
}

.p-postList.-type-card .p-postList__body {
  padding-top: 1rem
}

.p-postList.-type-list .p-postList__body {
  flex: 1 1 auto;
  padding-left: 1rem
}

.-type-card>.p-postList__item:hover .p-postList__body,
.-type-list>.p-postList__item:hover .p-postList__body {
  opacity: .75
}

.p-postList .p-postList__title {
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0
}

.p-postList.-type-simple .p-postList__title {
  font-size: 1rem
}

.-related .p-postList__title {
  font-size: .9rem
}

.p-postList__excerpt {
  font-size: .8rem;
  line-height: 1.6;
  margin-top: .5rem
}

.p-postList__meta {
  font-size: 10px;
  letter-spacing: .1px;
  margin-top: .5rem;
  position: relative
}

.p-postList__title+.p-postList__meta {
  margin-top: .25rem
}

.p-postList.-type-simple .p-postList__meta {
  margin: 2px 0 0
}

.p-postList__category {
  margin-right: .5rem
}

.p-postList.-type-simple .p-postList__author {
  padding: 0
}

.p-postList.-related.-type-card .p-postList__item {
  margin-bottom: 1.5rem;
  width: 50%
}

.p-postList.-related.-type-list .p-postList__thumb {
  max-width: 240px
}

.dump_data {
  background: #fafafa;
  border: 1px solid #ddd;
  display: block;
  font-family: Arial, sans-serif;
  font-size: 13px;
  padding: 16px;
  white-space: pre-wrap
}

.alignfull {
  left: calc(50% - 50vw + var(--base-scrollbar_width)/2);
  max-width: 100vw !important;
  position: relative;
  width: calc(100vw - var(--base-scrollbar_width))
}

.alignfull+.alignfull {
  margin-top: 0
}

:where(.c-postContent>div) .alignfull {
  left: 0;
  width: 100%
}

.alignfull.wp-block-cover,
.alignfull.wp-block-group.has-background {
  padding: 4em var(--base-padding--container, 48px)
}

.alignfull.has-background>.wp-block-group__inner-container,
.alignfull>.wp-block-cover__inner-container {
  margin: 0 auto;
  max-width: var(--base-width--article)
}

.alignfull.has-background>.wp-block-group__inner-container>.alignfull,
.alignfull:not([data-inner=full])>.ark-block-section__body>.ark-block-section__bodyInner>.alignfull,
.alignfull>.ark-block-container__inner>.alignfull,
.alignfull>.wp-block-cover__inner-container>.alignfull {
  left: calc(50% - 50vw + var(--base-padding--container));
  width: calc(100vw - var(--base-padding--container)*2)
}

.alignfull.has-background>.wp-block-group__inner-container>.alignwide,
.alignfull:not([data-inner=full])>.ark-block-section__body>.ark-block-section__bodyInner>.alignwide,
.alignfull>.ark-block-container__inner>.alignwide,
.alignfull>.wp-block-cover__inner-container>.alignwide {
  --base-alignwide_ex_width: revert
}

.alignwide {
  left: calc(var(--base-alignwide_ex_width)*-1);
  max-width: unset !important;
  position: relative;
  width: calc(100% + var(--base-alignwide_ex_width)*2)
}

:where(.c-postContent>div) .alignwide {
  --base-alignwide_ex_width: 0px
}

[data-sidebar=on] .l-main .alignwide {
  left: 0;
  width: 100%
}

.u-cf {
  clear: both !important
}

.u-cf--after:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  visibility: hidden
}

.u-color-thin {
  opacity: var(--base-opacity--thin)
}

.u-display-none {
  display: none !important
}

.u-display-block {
  display: block !important
}

.u-flex {
  display: flex
}

.u-flex--aic,
.u-flex--aicw {
  align-items: flex-end;
  display: flex
}

.u-flex--aicw,
.u-flex--c {
  flex-wrap: wrap
}

.u-flex--c {
  align-content: center;
  align-items: center;
  display: flex;
  justify-content: center
}

.has-xsmall-font-size,
.u-fz-xs {
  font-size: var(--base-fz--xs, .75em) !important
}

.has-small-font-size,
.u-fz-s {
  font-size: var(--base-fz--s, .9em) !important
}

.has-normal-font-size,
.u-fz-n {
  font-size: var(--base-fz--n, 1rem) !important
}

.u-fz-m {
  font-size: var(--base-fz--m, 1.1em) !important
}

.has-large-font-size,
.u-fz-l {
  font-size: var(--base-fz--l, 1.25em) !important
}

.has-xlarge-font-size,
.u-fz-xl {
  font-size: var(--base-fz--xl, 1.5em) !important
}

.has-xxlarge-font-size,
.u-fz-xxl {
  font-size: var(--base-fz--xxl, 2em) !important
}

.has-huge-font-size {
  font-size: var(--base-fz--huge, 2.75em) !important
}

.u-obf-cover {
  -o-object-fit: cover;
  object-fit: cover
}

.u-obf-contain,
.u-obf-cover {
  display: block;
  height: 100% !important;
  width: 100% !important
}

.u-obf-contain {
  -o-object-fit: contain;
  object-fit: contain
}

.u-ta-c {
  text-align: center !important
}

.u-ta-l {
  text-align: left !important
}

.u-ta-r {
  text-align: right !important
}

.alignleft {
  float: left
}

.alignright {
  float: right
}

.sticky {
  display: block
}

.bypostauthor {
  color: inherit
}

.calendar_wrap,
.wp-block-calendar {
  background: #fff;
  border: 1px solid var(--base-color--border);
  color: #333;
  margin: auto;
  max-width: 400px;
  padding: 1em;
  width: 100%
}

.widget_calendar .wp-calendar-table,
.wp-block-calendar .wp-calendar-table {
  border: none;
  width: 100%
}

.widget_calendar caption,
.wp-block-calendar caption {
  color: #40464d;
  line-height: 1;
  padding: 0 0 .75em
}

.widget_calendar .wp-calendar-table th,
.wp-block-calendar .wp-calendar-table th {
  background: none;
  border: none;
  color: inherit;
  font-weight: 700;
  padding: 0 0 10px;
  text-align: center
}

.widget_calendar tbody a,
.wp-block-calendar tbody a {
  background-color: var(--base-color--main);
  color: #fff !important;
  display: block;
  line-height: 36px
}

.widget_calendar tbody td,
.wp-block-calendar tbody td {
  background: #f7f7f7;
  border: 1px solid #fff;
  font-family: arial, sans-serif;
  line-height: 36px;
  padding: 0;
  text-align: center
}

.widget_calendar .pad,
.wp-block-calendar .pad {
  background: none
}

.widget_calendar #next,
.widget_calendar #prev,
.wp-block-calendar #next,
.wp-block-calendar #prev {
  padding-top: 8px;
  text-transform: uppercase
}

.widget_calendar #prev,
.wp-block-calendar #prev {
  text-align: left
}

.widget_calendar #next,
.wp-block-calendar #next {
  text-align: right
}

.wp-calendar-nav {
  display: flex;
  justify-content: space-between;
  margin-top: 8px
}

.wp-calendar-nav a {
  color: inherit
}

.widget_archive select,
.widget_categories select,
.wp-block-archives-dropdown select,
.wp-block-categories-dropdown select {
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6.984 9.984h10.031l-5.016 5.016z"></path></svg>');
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 24px 24px;
  border: 1px solid var(--base-color--border);
  border-radius: 2px;
  color: #333;
  cursor: pointer;
  display: block;
  height: auto;
  line-height: 32px;
  padding: 4px 24px 4px 12px;
  width: 100%
}

.widget_archive select::-ms-expand,
.widget_categories select::-ms-expand,
.wp-block-archives-dropdown select::-ms-expand,
.wp-block-categories-dropdown select::-ms-expand {
  display: none
}

.wp-block-archives-dropdown select,
.wp-block-categories-dropdown select {
  max-width: 400px
}

.widget_search .c-widget__title {
  display: none
}

.tagcloud,
.wp-block-tag-cloud {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}

.wp-block-tag-cloud.is-style-outline .tag-cloud-link {
  background: none
}

.tag-cloud-link {
  background: #f7f7f7;
  border: none;
  color: #333 !important;
  display: block;
  line-height: 1;
  margin: 0;
  padding: 6px 8px !important;
  position: relative;
  text-decoration: none;
  transition: opacity .25s
}

.tag-cloud-link.tag-cloud-link.tag-cloud-link {
  font-size: .75rem !important
}

.tag-cloud-link:before {
  content: "#";
  margin-right: .25em;
  opacity: .75
}

.tag-cloud-link:hover {
  opacity: .75
}

.w-drawerBottom {
  margin-top: 2rem
}

:root {
  --base-menulist_border: solid 1px var(--base-color--border)
}

li:last-child {
  --base-menulist_border: none
}

.has-child--acc {
  --base-nav-padding--R: calc(var(--base-submenu_btn_size) + 16px)
}

.wp-block-latest-comments__comment,
.wp-block-latest-posts:not(.is-grid) li {
  padding: var(--base-padding--nav, .75rem .5rem)
}

.c-widget+.c-widget {
  margin-top: 2.5rem
}

.textwidget a {
  transition: opacity .25s
}

.textwidget a:hover {
  opacity: .75;
  text-decoration: underline
}

.widget_categories label,
.wp-block-categories label {
  display: none
}

.c-postCount,
.tag-link-count.tag-link-count {
  color: inherit;
  display: inline-block;
  font-family: arial;
  font-size: .9em;
  margin-left: .25em;
  opacity: var(--base-opacity--thin);
  position: relative
}

.wp-block-rss .wp-block-rss__item {
  margin: 0;
  padding: .25em 0
}

.c-postContent {
  line-height: var(--base-line_height, 1.8);
  margin: 0;
  padding: 0
}

.c-postContent>* {
  margin-bottom: 0;
  margin-bottom: var(--base-mb)
}

.l-main__body>.c-postContent {
  margin-top: 4rem
}

.c-pageTitle+.c-postContent {
  margin-top: 0
}

.c-postContent li {
  --base-list-padding--has_bg: .5em .5em .5em 2em;
  margin: .25em 0
}

.c-postContent li li {
  line-height: 1.6
}

.c-postContent li ul {
  list-style: circle
}

.c-postContent>:first-child {
  margin-top: 0 !important
}

.wp-block-column>*,
.wp-block-cover__inner-container>*,
.wp-block-group__inner-container>*,
.wp-block-media-text__content>* {
  margin-bottom: 0;
  margin-bottom: 15px;
}

.wp-block-column>:first-child,
.wp-block-cover__inner-container>:first-child,
.wp-block-group__inner-container>:first-child,
.wp-block-media-text__content>:first-child {
  --base-mb--inner: 0
}

.alignfull {
  --base-mb--inner: var(--base-mb)
}

.has-ark-main-color {
  color: var(--base-color--main) !important
}

.has-ark-text-color {
  color: var(--base-color--text) !important
}

.has-ark-link-color {
  color: var(--base-color--link) !important
}

.has-ark-bg-color {
  color: var(--base-color--bg) !important
}

.has-ark-gray-color {
  color: var(--base-color--gray) !important
}

.has-ark-main-background-color {
  background-color: var(--base-color--main) !important
}

.has-ark-text-background-color {
  background-color: var(--base-color--text) !important
}

.has-ark-link-background-color {
  background-color: var(--base-color--link) !important
}

.has-ark-bg-background-color {
  background-color: var(--base-color--bg) !important
}

.has-ark-gray-background-color {
  background-color: var(--base-color--gray) !important
}

.wp-block-columns.has-background,
.wp-block-group.has-background,
p.has-background {
  padding: 1.5rem 1.75rem
}

.has-drop-cap {
  min-height: 3rem
}

.has-drop-cap:not(:focus):first-letter {
  font-size: 4rem
}

.wp-block-audio audio {
  display: block
}

.wp-block-columns {
  --wp-column-gap: 2rem;
  gap: var(--wp-column-gap) !important
}

.wp-block-columns .wp-block-column {
  margin: 0 !important
}

.wp-block-cover {
  padding: 1.5rem 1.75rem
}

.c-postContent blockquote.wp-embedded-content {
  display: none
}

.c-postContent iframe.wp-embedded-content {
  max-width: 100%;
  position: relative !important
}

.wp-block-embed {
  max-width: 100%
}

.wp-block-embed-facebook,
.wp-block-embed-instagram,
.wp-block-embed-twitter {
  max-width: 100%;
  overflow: hidden;
  text-align: center
}

.wp-block-embed.aligncenter iframe {
  display: block !important;
  margin: 0 auto !important
}

.instagram-media-rendered,
.twitter-tweet-rendered {
  margin-left: auto !important;
  margin-right: auto !important
}

.wp-has-aspect-ratio {
  position: relative
}

.wp-has-aspect-ratio .wp-block-embed__wrapper {
  position: relative;
  width: 100%
}

.wp-has-aspect-ratio .wp-block-embed__wrapper:before {
  content: "";
  display: block;
  padding-top: 50%
}

.wp-has-aspect-ratio iframe {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%
}

.wp-embed-aspect-21-9 .wp-block-embed__wrapper:before {
  padding-top: 42.85%
}

.wp-embed-aspect-18-9 .wp-block-embed__wrapper:before {
  padding-top: 50%
}

.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
  padding-top: 56.25%
}

.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
  padding-top: 75%
}

.wp-embed-aspect-1-1 .wp-block-embed__wrapper:before {
  padding-top: 100%
}

.wp-embed-aspect-9-16 .wp-block-embed__wrapper:before {
  padding-top: 177.78%
}

.wp-embed-aspect-1-2 .wp-block-embed__wrapper:before {
  padding-top: 200%
}

.wp-block-file.wp-block-file {
  font-size: .9em
}

.wp-block-file .wp-block-file__button {
  background: var(--base-color--main);
  border-radius: 2em;
  color: #fff;
  display: inline-flex;
  font-size: .9em;
  line-height: 1.5;
  padding: .5em 1em;
  text-decoration: none
}

.wp-block-gallery .blocks-gallery-grid {
  list-style: none;
  padding: 0;
  width: 100%
}

.wp-block-gallery figure {
  margin: 0
}

.blocks-gallery-caption,
.gallery-caption {
  font-size: .8rem;
  opacity: var(--base-opacity--thin);
  text-align: center;
  width: 100%
}

.wp-block-image {
  text-align: center
}

.wp-block-image img {
  vertical-align: bottom
}

.wp-block-image.is-resized {
  display: block
}

.wp-block-image figure {
  display: block !important
}

.wp-block-image a {
  display: block;
  transition: opacity .25s
}

.wp-block-image a:hover {
  opacity: .75
}

.wp-block-image figcaption a {
  display: inline
}

.wp-caption {
  max-width: 100%;
  text-align: center;
  width: 100%
}

.wp-caption-text {
  font-size: .8rem;
  margin-top: .75rem;
  opacity: var(--base-opacity--thin)
}

img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto
}

.wp-block-latest-comments__comment-excerpt p {
  margin: .5em 0 0
}

.wp-block-latest-posts>li:after {
  clear: both;
  content: "";
  display: block;
  height: 0
}

.wp-block-latest-posts__featured-image>img {
  display: block;
  width: 100%
}

.wp-block-latest-posts__featured-image.alignleft,
.wp-block-latest-posts__featured-image.alignright {
  max-width: 40%
}

.recent_entries_date {
  display: block;
  margin-top: 2px
}

.wp-block-media-text {
  --base-mediatext--space: 1.5rem;
  --base-mediatext--gap: var(--base-mediatext--space);
  --base-mediatext--offsetX: var(--base-mediatext--space);
  --base-mediatext--offsetY: var(--base-mediatext--space);
  gap: var(--base-mediatext--gap)
}

.wp-block-media-text .wp-block-media-text__content {
  padding: 0
}

.wp-block-media-text.alignfull:not(.has-media-on-the-right) .wp-block-media-text__content {
  margin-right: var(--base-mediatext--offsetX)
}

.wp-block-media-text.alignfull.has-media-on-the-right .wp-block-media-text__content {
  margin-left: var(--base-mediatext--offsetX)
}

.wp-block-media-text.has-background {
  --base-mediatext--gap: 0;
  --base-mediatext--offsetX: 0;
  --base-mediatext--offsetY: 0
}

.wp-block-media-text.has-background .wp-block-media-text__content {
  padding: var(--base-mediatext--space)
}

.wp-block-media-text__media img {
  display: block
}

.is-image-fill>.wp-block-media-text__content {
  margin-bottom: var(--base-mediatext--offsetY);
  margin-top: var(--base-mediatext--offsetY)
}

.is-vertically-aligned-top>.wp-block-media-text__content {
  margin-top: var(--base-mediatext--offsetY)
}

.is-vertically-aligned-bottom>.wp-block-media-text__content {
  margin-bottom: var(--base-mediatext--offsetY)
}

.wp-block-preformatted {
  white-space: pre-wrap
}

.wp-block-pullquote {
  border-bottom: 2px solid;
  border-top: 2px solid;
  padding: 2rem 0;
  text-align: center
}

.wp-block-pullquote.alignleft {
  float: none;
  max-width: 100%;
  text-align: left
}

.wp-block-pullquote.alignright {
  float: none;
  max-width: 100%;
  text-align: right
}

.wp-block-pullquote .wp-block-pullquote__citation {
  text-transform: none
}

.wp-block-pullquote>blockquote {
  background: none;
  border-left: none !important;
  margin: 0;
  padding: .5rem
}

.wp-block-pullquote p {
  font-size: 1.2rem !important
}

.wp-block-pullquote a {
  text-decoration: underline
}

.wp-block-pullquote.is-style-solid-color {
  background-color: var(--base-color--gray);
  padding: 2rem
}

.wp-block-pullquote.is-style-solid-color blockquote {
  max-width: 100%;
  text-align: inherit
}

.wp-block-quote.has-text-align-center {
  border-left: none
}

.wp-block-quote.has-text-align-right {
  border-left: none;
  border-right: 2px solid var(--base-color--border)
}

.wp-block-quote.is-style-large {
  background: var(--base-color--gray);
  border: none;
  position: relative
}

.wp-block-quote.is-style-large.is-style-large {
  margin: var(--base-mb) auto 0;
  padding: 2.5rem 3rem
}

.wp-block-quote.is-style-large.is-style-large p {
  font-size: 1.25rem
}

.wp-block-quote.is-style-large.is-style-large cite {
  font-size: 1rem
}

.wp-block-quote.is-style-large:after,
.wp-block-quote.is-style-large:before {
  color: #000;
  content: "\00201c";
  display: inline-block;
  font-family: Arial, sans-serif;
  font-size: 5rem;
  line-height: 1;
  opacity: .1;
  position: absolute;
  z-index: 0
}

.wp-block-quote.is-style-large:before {
  left: .5rem;
  top: .25rem
}

.wp-block-quote.is-style-large:after {
  bottom: .25rem;
  right: .5rem;
  transform: rotate(180deg)
}

.wp-block-quote.is-style-plain {
  border: none;
  padding: 0
}

.wp-block-quote.has-background {
  padding: 1.5rem 1.75rem
}

.wp-block-search .wp-block-search__button {
  background: var(--base-color--gray);
  border: none !important;
  border-radius: 2px;
  box-shadow: 0 0 1px var(--base-color--border), inset 0 -2px 0 var(--base-color--border);
  line-height: 1.5
}

.wp-block-search .wp-block-search__button:hover {
  opacity: .75
}

.wp-block-search .wp-block-search__input {
  line-height: 1.5;
  padding: .4em .5em
}

.wp-block-search .wp-block-search__input,
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
  border: 1px solid var(--base-color--border);
  border-radius: 2px
}

.wp-block-search__button.has-icon {
  align-items: center;
  display: flex;
  height: 2.8em;
  justify-content: center;
  padding: .25em;
  width: 2.8em
}

.wp-block-search__button.has-icon .search-icon {
  height: 100%;
  width: 100%
}

.wp-block-search__button:not(.has-icon) {
  font-size: .9em
}

.wp-block-search__button-inside .wp-block-search__input {
  border: none;
  border-radius: 0
}

.wp-block-search__button-inside .wp-block-search__button {
  background: none;
  box-shadow: none
}

.wp-block-separator {
  background-color: currentcolor;
  border: none;
  height: 1px;
  opacity: .5
}

.wp-block-separator.has-background {
  opacity: 1
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  height: 2px;
  margin-left: auto;
  margin-right: auto;
  max-width: 6em
}

.wp-block-separator.is-style-wide {
  height: 1px
}

.wp-block-social-links {
  align-items: center;
  gap: .5em
}

.wp-block-social-links .wp-block-social-link {
  margin: 0 !important
}

.wp-block-social-links.is-style-logos-only a {
  padding: 0
}

.wp-block-table,
.wp-block-table>table {
  margin-bottom: 0
}

.wp-block-table td,
.wp-block-table th {
  border-bottom: 1px solid var(--base-color--border--table);
  border-left: 1px solid var(--base-color--border--table);
  border-right: none;
  border-top: none
}

.is-style-stripes table,
.wp-block-table.is-style-stripes td,
.wp-block-table.is-style-stripes th {
  border: none
}

.is-style-stripes figcaption {
  border-top: 1px solid #ededed;
  margin-top: 0;
  padding: .5rem 0
}

.wp-block-video {
  text-align: center
}

.wp-block-video video {
  display: block;
  width: 100%
}

@media screen {
  [hidden~=screen] {
    display: inherit
  }

  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important
  }
}

@media screen and (max-width:1536px) {
  .main-nav>a>.__mainText {
    font-size: 18px;
  }

  .main-nav>a>.__mainText .small {
    font-size: 11px;
    line-height: 2.5;
  }
}

@media screen and (max-width:1280px) {
  .l-content {
    padding-top: 56px;
  }

  .c-gnav__li.focus>.c-gnav__depth1,
  .c-gnav__li:hover>.c-gnav__depth1 {
    display: none;
    opacity: 0;
    visibility: hidden;
  }

  header .header-right .menu-item-has-children .c-gnav__depth1 {
    display: none;
    transition: none !important;
  }

  header .header-right .menu-item-has-children.open .c-gnav__depth1 {
    position: relative;
    display: block;
    opacity: 1;
    visibility: visible;
    padding: 20px;
    border-top: solid 1px #CCC;
    box-shadow: none;
  }

  .c-gnav .__mainText,
  .c-gnav .__subText {
    line-height: 1.8;
  }

  .main-nav>a>.__mainText .small {
    line-height: 1.8;
  }
}

@media screen and (max-width:782px) {
  body.admin-bar {
    --base-adminbar_height: var(--wp-admin--admin-bar--height, 46px)
  }
}

@media not all and (min-width:1000px) {
  .l-content {
    overflow-x: hidden
  }

  .l-header[data-spfix="1"] {
    position: sticky
  }

  .l-headerUnder,
  .l-header__bar,
  .l-header__left,
  .l-header__right {
    display: none
  }

  .l-header__body {
    padding-left: 2vw;
    padding-right: 2vw
  }

  [data-has-drawer=pc] {
    --base-drawerW: 0px
  }

  [data-has-drawer=pc] .l-header__drawerBtn {
    display: none
  }

  [data-has-search=pc] {
    --base-searchW: 0px
  }

  [data-has-search=pc] .l-header__searchBtn {
    display: none
  }

  .l-header__center {
    flex-basis: 100%
  }

  .l-header__center .c-tagline {
    font-size: 10px;
    text-align: center;
    width: 100%
  }

  .l-sidebar {
    margin-top: 4rem
  }

  .l-header__logo {
    font-size: var(--base-logo_size--sp)
  }

  .has-image>.c-headLogo {
    height: var(--base-logo_size--sp)
  }

  .p-fixBtnWrap {
    padding-bottom: calc(env(safe-area-inset-bottom)*.5)
  }

  .u-hide-sp,
  .u-only-pc {
    display: none !important
  }
}

@media (min-width:1000px) {

  .l-footer__widgets .wp-block-columns,
  .l-footer__widgets.has-columns {
    font-size: .9rem
  }

  .l-footer__widgets>.l-container {
    display: flex
  }

  .l-footer__widgets .w-footer {
    flex-basis: 100%
  }

  .l-footer__widgets .w-footer+.w-footer {
    margin-left: 2rem
  }

  .l-header[data-pcfix="1"] {
    position: sticky
  }

  [data-has-drawer=sp] {
    --base-drawerW: 0px
  }

  [data-has-drawer=sp] .l-header__drawerBtn {
    display: none
  }

  [data-has-search=sp] {
    --base-searchW: 0px
  }

  [data-has-search=sp] .l-header__searchBtn {
    display: none
  }

  [data-btns=l-r][data-logo=left] .l-header__body,
  [data-btns=r-l][data-logo=left] .l-header__body {
    grid-template-columns: min-content auto 1fr auto min-content
  }

  [data-btns=rl-rr][data-logo=left] .l-header__body,
  [data-btns=rr-rl][data-logo=left] .l-header__body {
    grid-template-columns: auto 1fr auto min-content min-content
  }

  .l-sidebar {
    font-size: .9rem
  }

  [data-sidebar=on] .l-sidebar {
    width: var(--base-width--sidebar)
  }

  [data-sidebar=on] .l-main {
    max-width: 100%;
    width: calc(100% - var(--base-width--sidebar) - var(--base-gap--container))
  }

  [data-sidebar=on] .l-content__body {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: var(--base-content-width);
  }

  .l-header__logo {
    font-size: var(--base-logo_size--pc)
  }

  [data-logo=left] .l-header__logo {
    justify-content: flex-start
  }

  .has-image>.c-headLogo {
    height: var(--base-logo_size--pc)
  }

  .c-fixBtn:hover {
    opacity: 1
  }

  .p-drawer {
    padding-bottom: var(--base-header_height)
  }

  .p-drawer__body {
    padding: 2rem
  }

  [data-sidebar=off] .p-postList.-type-card .p-postList__item {
    flex-basis: 33.3%
  }

  .l-sidebar .p-postList.-type-card .p-postList__item {
    flex-basis: 100%
  }

  .p-postList.-related.-type-card .p-postList__item {
    width: 33.33%
  }

  [data-sidebar=on] .l-main .alignfull {
    left: 0 !important;
    width: 100% !important
  }

  .u-hide-pc,
  .u-only-sp {
    display: none !important
  }
}

@media (min-width:600px) {

  .page-numbers,
  .post-page-numbers {
    height: 40px;
    line-height: 40px;
    min-width: 40px
  }

  .p-authorBox {
    align-items: center;
    display: flex;
    padding: 1.5rem 2rem
  }

  .p-authorBox__body {
    flex: 1 1 100%;
    margin-left: 1.5em
  }

  .p-authorBox__footer {
    align-items: center;
    display: flex
  }

  .p-authorBox__links {
    margin-right: 1rem
  }

  .p-authorBox__archivelink {
    align-self: flex-end;
    margin-left: auto
  }

  .p-authorBox__archivelink a {
    font-size: .8rem;
    padding: .5rem 1.5rem
  }

  .p-breadcrumb__text {
    font-size: 11px
  }

  .c-pnNav__item {
    width: 50%
  }

  .p-postList.-type-card .p-postList__item {
    flex-basis: 50%
  }

  .p-postList.-type-list .p-postList__body {
    padding-left: 1.5rem
  }

  .p-postList__excerpt {
    font-size: .8rem
  }

  .p-postList__meta {
    font-size: 11px
  }

  .calendar_wrap,
  .wp-block-calendar {
    font-size: 14px
  }

  .widget_calendar #next,
  .widget_calendar #prev,
  .widget_calendar caption,
  .wp-block-calendar #next,
  .wp-block-calendar #prev,
  .wp-block-calendar caption {
    font-size: 13px
  }
}

@media (min-width:1100px) {
  [data-sidebar=on] {
    --base-width--sidebar: 300px
  }
}

@media (min-width:1200px) {
  [data-sidebar=on] {
    --base-width--sidebar: 312px;
    --base-gap--container: 48px
  }

  .p-authorBox__links {
    display: flex;
    flex-wrap: wrap
  }

  .p-authorBox__weblink+.p-authorBox__iconList {
    margin-left: 1em
  }

  .wp-block-media-text.alignfull {
    --base-mediatext--space: 2rem
  }
}

@media (max-width:340px) {

  .page-numbers,
  .post-page-numbers {
    height: 28px;
    line-height: 28px;
    min-width: 28px
  }
}

@media (max-width:360px) {
  .page-numbers[data-apart="2"] {
    display: none
  }
}

@media (hover:hover) {
  .c-submenuToggleBtn:hover {
    outline: 2px solid
  }
}

@media not all and (min-width:600px) {
  .p-authorBox__avatar {
    margin-bottom: .75em
  }

  .p-authorBox__avatar .avatar {
    margin: 0 auto
  }

  .p-authorBox__name,
  .p-authorBox__position,
  .p-authorBox__weblink {
    text-align: center
  }

  .p-authorBox__archivelink {
    margin-top: 1.25rem
  }

  .p-authorBox__archivelink a {
    padding: .75rem 1rem
  }

  .p-postList.-type-list .p-postList__title {
    font-size: 4vw
  }

  .p-postList.-related.-type-card {
    margin-left: -.5rem;
    margin-right: -.5rem
  }

  .p-postList.-related.-type-card .p-postList__item {
    padding: 0 .5rem
  }
}

@media (max-width:1199px) {
  .p-authorBox__weblink+.p-authorBox__iconList {
    margin-top: 8px
  }
}

@media (max-width:600px) {
  .wp-block-media-text {
    --base-mediatext--space: 1rem
  }

  .is-image-fill>.wp-block-media-text__media {
    min-height: 56vw
  }

  .wp-block-media-text.is-stacked-on-mobile {
    --base-mediatext--gap: 0;
    --base-mediatext--offsetX: 0;
    --base-mediatext--offsetY: 0
  }

  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
    grid-row: 1 !important
  }

  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
    grid-row: 2 !important;
    padding: var(--base-mediatext--space)
  }
}


/* header
-------------------------------------*/
header {
  position: fixed;
  z-index: 9999;
  top: 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  height: 150px;
  padding-left: 20px;
  background-color: #FFF;
  transition: all .5s ease;
}

header .logo {
  display: flex;
  align-items: center;
  height: 100%;
  padding-right: 20px;
  line-height: 0;
}

header .logo img {
  width: 360px;
  transition: all .5s ease;
}

header .logo a {
  position: relative;
}

header.shrink .logo a:before {
  width: 35px;
  height: 36px;
}

header .header-right {
  padding-right: 20px;
}

header .header-right>.column {
  justify-content: flex-end;
  align-items: center;
  transition: all .5s ease;
}

header .header-right .contact-link {
  margin-right: 15px;
}

header .header-right .contact-link a {
  position: relative;
  padding-left: 28px;
  font-size: 13px;
}

header .header-right .contact-link a:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 21px;
  height: 14px;
  margin: auto 0;
  background-image: url(../../img/icon-contact.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}

header .header-right .language {
  width: fit-content;
}

header .header-right .language select {
  padding: 0;
  color: #000;
  border-radius: 50px;
  border-color: #000;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  background-color: #FFF;
}

#gtranslate_selector option,
.gtranslate_wrapper select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: none !important;
}

.gtranslate_wrapper select,
#gtranslate_selector {
  text-align: center;
  text-align-last: center;
  /* Chrome, Edge, Safari対応 */
  -moz-text-align-last: center;
  /* Firefox対応 */
}

header .header-right .menu-btn {
  display: none;
  z-index: 1;
}

header .c-gnav .sub-menu {
  left: 0;
  padding: 40px;
  transform: none;
  background: #f1f1f1;
  color: #000;
  text-align: left;
  visibility: hidden;
}

header .c-gnav .sub-menu>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

header .c-gnav .sub-menu>ul>li {
  width: fit-content;
  padding-right: 50px;
}

header .c-gnav .sub-menu>ul .u-flex--c {
  display: none;
}

header .c-gnav .sub-menu>ul>li a {
  padding: 10px 0 10px 20px !important;
}

header .c-gnav .sub-menu>ul>li a::after {
  content: "";
  width: 9px;
  height: 9px;
  border: 0;
  border-top: solid 2px var(--base-color);
  border-right: solid 2px var(--base-color);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
  bottom: -1px;
  margin: auto;
}

header .c-gnav .sub-menu>ul>li.menu-heading a {
  padding: 0 !important;
  margin-bottom: 15px;
  color: var(--base-color);
}

header .c-gnav .sub-menu>ul>li.menu-heading a:after {
  content: none;
}

header .c-gnav .sub-menu>ul>li a .__mainText {
  font-size: 15px;
}

header .c-gnav .sub-menu>ul>li.menu-heading a .__mainText {
  font-size: 17px;
  font-weight: 700;
}

header .c-gnav .sub-menu>ul>li>.sub-menu {
  display: block;
  position: relative;
  padding: 0;
  background: transparent;
  height: auto;
  opacity: 1;
}

header .c-gnav .sub-menu>ul>li>.sub-menu>ul {
  display: block;
  width: 100%;
  max-width: none;
}

header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li {
  width: 100%;
}

header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li a {
  padding: 10px 0 10px 20px !important;
  margin-bottom: 0;
}

header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li a::after {
  content: "";
  width: 9px;
  height: 9px;
  border: 0;
  border-top: solid 2px var(--base-color);
  border-right: solid 2px var(--base-color);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
  bottom: -1px;
  margin: auto;
}

header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li .__mainText {
  color: #000;
  font-size: 15px;
  font-weight: normal;
}

header .c-gnav .sub-menu .c-gnav__a:before {
  background-color: transparent;
  content: ""
}

header .c-gnav .sub-menu .c-gnav__a:hover:before,
header .header-right #gnav>ul>li.c-gnav__li {
  background-color: hsla(0, 0%, 100%, .1)
}

header.shrink {
  height: 80px;
  transition: all .5s ease;
}

header.shrink .logo img {
  width: 260px;
}

header.shrink .header-right>.column {
  transform: translateY(45px);
}

@media screen and (min-width:769px) {
  header .c-gnav .sub-menu>ul>li a:hover .__mainText {
    color: var(--base-color) !important;
  }
}

@media screen and (max-width:1280px) {
  header {
    align-items: center;
    height: 56px !important;
    padding-left: 10px;
  }

  header .logo {
    padding-right: 20px;
  }

  header .logo img {
    width: auto;
    height: 38px;
  }

  header.shrink .logo img {
    width: auto;
  }

  header.shrink .header-right>.column {
    transform: translateY(0);
  }

  header .header-right {
    display: flex;
    flex-flow: row;
  }

  header .header-right>.column {
    margin-right: 10px;
  }

  header .header-right .contact-link {
    display: none;
  }

  header .header-right .language .gtranslate_wrapper {
    display: flex;
    align-items: center;
    height: 100%;
  }

  header .header-right .language select {
    width: 100px;
    padding: 0 0 2px;
    text-align: center;
  }

  header .header-right .language select,
  header .header-right .language option {
    font-size: 9px;
    text-align: center;
  }

  /* アニメーション前のメニューの状態 */
  header .header-right .menu {
    position: fixed;
    top: 56px;
    left: 0;
    pointer-events: none;
    transition: opacity .3s linear;
    width: 100%;
    height: calc(100vh - 50px);
    opacity: 1;
    background-color: #f1f1f1;
    transform: translateX(-100%);
    transition: all .5s ease;
  }

  /* アニメーション後のメニューの状態 */
  header .header-right .menu.is-active {
    pointer-events: auto;
    transform: translateX(0);
    transition: all .5s ease;
    overflow: auto;
  }

  header .header-right .menu .menu-inner {
    display: block;
    position: relative;
    width: 100%;
    margin: auto;
  }

  header .header-right .menu-btn {
    position: relative;
    display: flex;
    height: 56px;
  }

  header .header-right .openbtn {
    position: relative;
    cursor: pointer;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }

  header .header-right .openbtn>div {
    position: relative;
    width: 40px;
    height: 9px;
  }

  header .header-right .openbtn>p {
    margin-top: 6px;
    font-family: var(--mincho-font_family);
    font-weight: 500;
    font-size: 12px;
    line-height: 1;
  }

  /*ボタン内側*/
  header .header-right .openbtn span {
    display: inline-block;
    transition: all .4s;
    /*アニメーションの設定*/
    position: absolute;
    height: 1px;
    background: #000;
    width: 40px;
  }

  header .header-right .openbtn span:nth-of-type(1) {
    top: 0;
  }

  header .header-right .openbtn span:nth-of-type(2) {
    bottom: 0;
  }

  header .header-right .openbtn.active span:nth-of-type(1) {
    transform: translateY(2px) rotate(-20deg);
    top: 3px;
  }

  header .header-right .openbtn.active span:nth-of-type(2) {
    transform: translateY(-4px) rotate(20deg);
  }

  header .u-flex--aic,
  header .u-flex--aicw {
    display: block;
  }

  .main-nav>a>.__mainText br {
    display: none;
  }

  header .header-right .menu .menu-inner #gnav {
    position: relative;
    height: auto;
  }

  header .c-gnav .sub-menu>ul>li.menu-heading a::before,
  header .c-gnav .sub-menu>ul>li.menu-heading a::after {
    content: none !important;
  }

  header .header-right #gnav>ul>li.c-gnav__li {
    position: relative;
    border-bottom: solid 1px #CCC;
    height: auto;
    text-align: left;
  }


  header .header-right .c-gnav__li>.c-gnav__a {
    display: block;
    padding: 10px 20px;
    letter-spacing: 3px;
  }

  header .header-right .c-gnav__li>.c-gnav__a:before {
    content: none;
  }

  header .c-gnav .sub-menu>.menu-item:not(:last-child) {
    border-bottom: 1px solid var(--base-color--border)
  }

  header .header-right .menu-item-has-children>.c-gnav__a:before {
    content: "" !important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: auto;
    right: 27px;
    width: 1px;
    height: 15px;
    margin: auto 0;
    background-color: #000;
  }

  header .header-right .menu-item-has-children.open>.c-gnav__a:before {
    content: none !important;
  }

  header .header-right .menu-item-has-children>.c-gnav__a:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: auto;
    right: 20px;
    width: 15px;
    height: 1px;
    margin: auto 0;
    background-color: #000;
  }

  header .c-gnav .sub-menu {
    padding: 0;
  }

  header .c-gnav .sub-menu>ul {
    display: block;
    width: 100%;
    max-width: none;
  }

  header .c-gnav .sub-menu>ul>li {
    width: 100%;
    padding-right: 0;
  }

  header .c-gnav .sub-menu>ul>li a::after {
    content: none;
  }

  header .c-gnav .sub-menu>ul>li.menu-heading {
    margin-bottom: 30px;
  }

  header .c-gnav .sub-menu>ul>li.menu-heading:last-of-type {
    margin-bottom: 0;
  }

  header .c-gnav .sub-menu>ul>li>.sub-menu {
    visibility: visible;
  }

  header .c-gnav .sub-menu>ul>li.menu-heading a {
    margin-bottom: 5px;
  }

  header .c-gnav .sub-menu>ul>li a,
  header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li a {
    padding: 5px 0 !important;
  }

  header .c-gnav .sub-menu>ul>li a .__mainText,
  .main-nav>a>.__mainText {
    font-size: 13px !important;
    font-weight: 600;
  }

  .c-gnav .__mainText {
    font-family: var(--mincho-font_family);
    font-size: 14px;
    font-weight: 600;
  }

  header .c-gnav .sub-menu>ul>li.menu-heading a .__mainText {
    font-size: 13px;
  }

  header .c-gnav .sub-menu>ul>li>.sub-menu>ul>li .__mainText {
    font-size: 13px !important;
    font-weight: 600;
  }
}

/* footer
-------------------------------------*/
footer {
  padding: 60px 0;
  background-color: var(--base-color);
  color: #FFF;
  font-family: var(--mincho-font_family);
  font-weight: 700;
}

footer a {
  font-weight: 500;
}

footer .inner {
  width: 90%;
  max-width: 1230px;
  margin: 0 auto;
}

footer .facility-intro {
  width: calc(100% - 770px);
  padding-right: 20px;
}

footer .facility-intro .logo {
  margin-bottom: 30px;
}

footer .facility-intro .logo img {
  width: 328px;
}

footer .facility-intro p {
  font-size: 20px;
}

footer .facility-intro .tel {
  margin-bottom: 20px;
}

footer .facility-intro .tel p {
  display: flex;
  align-items: center;
}

footer .facility-intro .tel p a {
  margin-left: 5px;
  font-size: 28px;
}

footer .facility-intro ul.sns-area {
  margin-bottom: 30px;
}

footer .facility-intro ul.sns-area li {
  width: 50px;
  margin-right: 30px;
}

footer .facility-intro .footer-gtrans select {
  width: 180px;
  border-radius: 50px;
  color: var(--base-color);
  font-family: var(--base-font_family);
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}

footer .footer-menu {
  position: relative;
  width: 570px;
}

footer .footer-menu::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #FFF;
}

footer .footer-menu ul.footer-nav {
  display: flex;
  flex-wrap: wrap;
}

footer .footer-menu ul.footer-nav>li {
  width: fit-content;
  min-width: 220px;
  margin-bottom: 25px;
  font-weight: 500;
}

footer .footer-menu ul.footer-nav>li>a {
  margin-bottom: 8px;
}

footer .footer-menu ul.sub-menu {
  padding-left: 32px;
  margin-top: 10px;
}


footer .footer-menu ul.sub-menu li {
  position: relative;
  margin-bottom: 5px;
  font-weight: 500;
}

footer .footer-menu ul.sub-menu li:first-of-type:before {
  content: "";
  position: absolute;
  top: -7px;
  left: -24px;
  width: 1px;
  height: 75%;
  background-color: #FFF;
}

footer .footer-menu ul.sub-menu li::before {
  content: "";
  position: absolute;
  top: -95%;
  left: -24px;
  width: 1px;
  height: 145%;
  background-color: #FFF;
}

footer .footer-menu ul.sub-menu li::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -24px;
  width: 15px;
  height: 1px;
  margin: auto 0;
  background-color: #FFF;
}

footer .footer-sub-menu {
  width: 200px;
  padding-left: 50px;
}

footer .footer-sub-menu li {
  margin-bottom: 20px;
  font-size: 14px;
}

footer .sp-menu {
  display: none;
}

footer .copyright {
  margin-top: 20px;
}

footer .copyright p {
  font-size: 12px;
  text-align: right;
}


@media screen and (max-width:1280px) {
  footer .facility-intro {
    width: fit-content;
    padding-right: 0;
    margin: 0 auto;
  }

  footer .footer-menu {
    display: none;
  }

  footer .footer-sub-menu {
    display: none;
  }

  footer .sp-menu {
    display: block;
    margin-bottom: 30px;
  }
}

@media screen and (max-width:768px) {
  footer {
    padding: 30px 0 25px;
  }

  footer .facility-intro {
    margin: 0;
  }

  footer .facility-intro p {
    font-size: 17px;
  }

  footer .facility-intro ul.sns-area {
    position: absolute;
    right: 0;
    bottom: 90px;
  }

  footer .facility-intro ul.sns-area li {
    margin-right: 20px;
  }

  footer .copyright p {
    font-size: 11px;
  }
}

/* 共通
-------------------------------------*/
.column {
  display: flex;
  flex-wrap: wrap;
}

.column-reverse {
  flex-flow: row-reverse;
}

/* 楕円マスク */
.curve {
  position: absolute;
  bottom: -1px;
}

.curve svg {
  display: block;
  height: 100%;
  width: 100vw;
}

.curve-reverse {
  position: absolute;
  top: -1px;
}

.curve-reverse svg {
  display: block;
  height: 100%;
  width: 100vw;
}

@media screen and (min-width:1281px) and (max-width:1920px) {
  .curve-fixed {
    left: 50%;
    right: 0;
    margin: 0 auto;
    width: 1920px;
    transform: translateX(-50%);
  }

  .curve-fixed svg {
    width: 1920px;
  }
}

.absolute-top {
  top: -43px;
  bottom: auto;
}

.absolute-bottom {
  top: auto;
}

.sp-hidden {
  display: block;
}

.sp-block {
  display: none;
}

.w1280-block {
  display: none;
}

.w1280-none {
  display: block;
}

.button,
.wp-block-button {
  width: fit-content;
  min-width: 195px;
  border: solid 1px #000;
  border-radius: 50px;
  margin: 0 auto;
}

.button a,
.wp-block-button a {
  position: relative;
  display: block;
  padding: 10px 30px 10px 65px;
  color: #000;
  font-size: 14px;
  text-align: left;
  background-color: #FFF;
  border-radius: 50px;
  transition: all .5s ease;
  line-height: 1.5;
}

.button a::before,
.wp-block-button a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30px;
  width: 22px;
  height: 10px;
  margin: auto 0;
  background-color: #898989;
  clip-path: polygon(80% 0, 100% 50%, 80% 100%, 0 100%, 0 0);
  transition: all .5s ease;
}

.button a:hover,
.wp-block-button a:hover {
  background-color: #000;
  color: #FFF;
}

@media screen and (max-width:1280px) {
  .w1280-block {
    display: block;
  }

  .w1280-none {
    display: none;
  }
}

@media screen and (max-width:1000px) {
  .sp-hidden {
    display: none;
  }

  .sp-block {
    display: block;
  }
}

/* Safari / iOS */
@supports (-webkit-touch-callout: none) {
  :root {
    --rt-shift: -0.04em;
  }
}

/* Firefox */
@supports (-moz-appearance: none) {
  :root {
    --rt-shift: -0.04em;
  }
}


/* page-top
----------------------------------*/
/*リンクを右下に固定*/
#page-top {
  position: fixed;
  bottom: 0;
  right: 10px;
  z-index: 2;
  /*はじめは非表示*/
  transform: translateY(100%);
}

#page-top a {
  color: #000;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 13px;
  transition: all 0.3s;
  font-weight: 600;
}

#page-top a p {
  margin-bottom: 5px;
}

#page-top img {
  width: 50px;
}

/*　上に上がる動き　*/
#page-top.UpMove {
  animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    transform: translateY(100%);
  }

  to {
    transform: translateY(0);
  }
}

/*　下に下がる動き　*/
#page-top.DownMove {
  animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 1;
    transform: translateY(100%);
  }
}


/* sitemap-wrap
----------------------------------*/
#sitemap-wrap h3 {
  padding-bottom: 5px;
  margin-bottom: 10px;
  font-size: 20px;
  border-bottom: solid 1px var(--base-color);
}

#sitemap-wrap h3 a {
  position: relative;
  padding-right: 20px;
}

#sitemap-wrap h3 a::after {
  content: "";
  position: absolute;
  right: 0;
  width: 12px;
  height: 12px;
  border: 0;
  border-top: solid 2px var(--base-color);
  border-right: solid 2px var(--base-color);
  transform: rotate(45deg);
  bottom: 7px;
  margin: auto;
}

#sitemap-wrap h5 {
  position: relative;
  padding-left: 20px;
  margin-top: 25px;
  margin-bottom: 10px;
  font-size: 16px;
}

#sitemap-wrap h5:first-of-type {
  margin-top: 0;
}

#sitemap-wrap h5:before {
  content: "";
  position: absolute;
  top: 13px;
  left: 0;
  width: 15px;
  height: 2px;
  background-color: var(--base-color);
}

#sitemap-wrap #main-menu-wrap {
  margin-bottom: 50px;
}

#sitemap-wrap #main-menu-wrap>.wp-block-group__inner-container {
  -moz-column-count: 2;
  column-count: 2;
}

#sitemap-wrap #main-menu-wrap .main-menu-content {
  break-inside: avoid-column;
  padding-right: 40px;
  margin-bottom: 50px;
}

#sitemap-wrap ul.wp-block-list li {
  padding-left: 0;
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 500;
}

#sitemap-wrap ul.wp-block-list li::before {
  content: none;
}

#sitemap-wrap ul.wp-block-list li a {
  position: relative;
  padding-right: 15px;
  text-decoration: none;
}

#sitemap-wrap ul.wp-block-list li a:after {
  content: "";
  position: absolute;
  right: 0;
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 1px var(--base-color);
  border-right: solid 1px var(--base-color);
  transform: rotate(45deg);
  bottom: 5px;
  margin: auto;
}

#sitemap-wrap a {
  transition: all .5s ease;
}

#sitemap-wrap a:hover {
  color: #000;
}

#sitemap-wrap a:after {
  transition: all .5s ease;
}

#sitemap-wrap a:hover:after {
  border-color: #000 !important;
}

#sitemap-wrap #sub-menu-wrap ul.wp-block-list {
  display: flex;
  flex-wrap: wrap;
}

#sitemap-wrap #sub-menu-wrap ul.wp-block-list li {
  margin-right: 25px;
}

@media screen and (max-width:768px) {

  #sitemap-wrap h3 {
    font-size: 16px;
  }

  #sitemap-wrap h3 a {
    padding-right: 15px;
  }

  #sitemap-wrap h3 a::after {
    width: 10px;
    height: 10px;
    bottom: 5px;
  }

  #sitemap-wrap #main-menu-wrap .main-menu-content {
    padding-right: 0;
  }

  #sitemap-wrap #main-menu-wrap>.wp-block-group__inner-container {
    -moz-column-count: auto;
    column-count: auto;
  }

  #sitemap-wrap #sub-menu-wrap ul.wp-block-list {
    display: block;
  }
}