@charset "UTF-8";
:root {
  --z-index-back-to-top: 7;
  --font-color: #433619;
  --header-text: #433619;
  --ystd-button-background-color: #433619; }

:where(.wp-block-cover-image.is-light:not(.has-text-color)),
:where(.wp-block-cover.is-light:not(.has-text-color)) {
  color: var(--font-color); }

/* _common */
/* header */
body > header {
  background-image: url("../assets/images/bg-header.png");
  background-position: bottom center;
  background-repeat: repeat-x;
  padding-bottom: 3px; }
  @media (max-width: 767.98px) {
    body > header {
      background-size: 200px 3px; } }
  body > header .sub-header.is-top {
    padding-top: 0.7em; }
    body > header .sub-header.is-top a {
      padding: 0.8em 1.2em;
      border-radius: 2em;
      color: white;
      font-weight: 700; }
    body > header .sub-header.is-top .sub-header__nav li {
      margin-right: 1.5em;
      z-index: 1; }
      body > header .sub-header.is-top .sub-header__nav li.guide a {
        background-color: #EA945D; }
      body > header .sub-header.is-top .sub-header__nav li.mail a {
        background-color: #4A96D9; }
      body > header .sub-header.is-top .sub-header__nav li.officers a {
        background-color: #4E8F7F; }
  @media (max-width: 767.98px) {
    body > header .site-branding .site-title {
      padding-right: 1em; } }
  body > header.site-header button {
    height: 100%;
    background-color: #4A96D9; }
  @media (min-width: 768px) {
    body > header > .container {
      margin-top: -3em; }
    body > header .site-branding {
      width: 22em;
      padding-top: 0.5rem;
      padding-bottom: 0; } }
  body > header .global-nav {
    justify-content: center; }
    body > header .global-nav .global-nav__container {
      width: 100%; }
  body > header .global-nav__menu {
    justify-content: space-around; }
  body > header .global-nav__menu {
    margin: 1em 0 0; }
    body > header .global-nav__menu > .menu-item {
      width: 100%;
      transition: all .3s; }
      body > header .global-nav__menu > .menu-item:hover, body > header .global-nav__menu > .menu-item:active, body > header .global-nav__menu > .menu-item:focus {
        background-color: rgba(226, 97, 112, 0.1); }
      body > header .global-nav__menu > .menu-item small {
        color: #aaa; }
      body > header .global-nav__menu > .menu-item > a::after {
        display: none; }
      @media (min-width: 768px) {
        body > header .global-nav__menu > .menu-item.menu-item-has-children {
          background-image: url("../assets/images/arrow.png");
          background-position: bottom 5px center;
          background-repeat: no-repeat; } }
      body > header .global-nav__menu > .menu-item.menu-item-has-children .sub-menu {
        width: 100%;
        margin-top: -0.9em;
        box-shadow: 1px 1px 5px 3px rgba(200, 200, 200, 0.2);
        min-width: 12em; }
        body > header .global-nav__menu > .menu-item.menu-item-has-children .sub-menu > .menu-item:hover, body > header .global-nav__menu > .menu-item.menu-item-has-children .sub-menu > .menu-item:active, body > header .global-nav__menu > .menu-item.menu-item-has-children .sub-menu > .menu-item:focus {
          background-color: rgba(226, 97, 112, 0.07); }
        body > header .global-nav__menu > .menu-item.menu-item-has-children .sub-menu a::before {
          display: none; }
  body > header .global-nav__menu a:focus::before,
  body > header .global-nav__menu a:hover::before {
    margin-left: 0; }
  body > header .global-nav .sub-header.is-mobile {
    display: none; }
  body > header .global-nav__toggle.is-open + .global-nav {
    margin-top: 61px;
    padding-top: 0.5em; }
  body > header .widget-mobile-nav > * {
    margin-top: 0; }
  body > header .widget.widget_nav_menu {
    border-bottom: 1px solid var(--site-border-gray-light); }

/* content */
#main {
  text-align: justify; }

@media (min-width: 1025px) {
  .archive__main {
    max-width: var(--ystd-content-default-width); } }
/* サムネイルの表示切り取り範囲の変更 */
.ratio .ratio__image amp-img, .ratio .ratio__image img {
  object-position: top center; }

/* footer */
#cta {
  background-image: linear-gradient(180deg, #EA945D 50%, #4A96D9 50%); }
  @media (max-width: 1024.98px) {
    #cta {
      margin-left: 0;
      margin-right: 0; } }
  @media (min-width: 768px) {
    #cta {
      background-image: linear-gradient(90deg, #EA945D 50%, #4A96D9 50%); } }
  #cta .ystdb-column-block-container {
    padding-bottom: 1em; }
  #cta .ystdb-custom-button a {
    justify-content: flex-start;
    padding-left: .7em;
    padding-right: .7em; }
    #cta .ystdb-custom-button a > *:last-of-type {
      margin-left: auto;
      margin-right: 0;
      background-color: #4A96D9;
      border-radius: 1em;
      color: white; }

body > footer {
  /*  */
  background-color: #FBF8EE; }
  body > footer .widget_nav_menu li, body > footer .widget_nav_menu > ul,
  body > footer .widget_nav_menu .children, body > footer .widget_nav_menu .sub-menu {
    border-bottom: none;
    border-top: none; }
  body > footer .footer-main {
    background-color: transparent; }
    body > footer .footer-main .footer-widget .sub-menu {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      padding-left: 1em; }
      body > footer .footer-main .footer-widget .sub-menu > .menu-item > a {
        padding-left: 0;
        margin-left: 1em;
        margin-right: 1em; }
    body > footer .footer-main .footer-widget .widget_nav_menu a:hover::before {
      margin-right: .75em; }
    body > footer .footer-main .menu-item:hover, body > footer .footer-main .menu-item:active, body > footer .footer-main .menu-item:focus {
      background-color: rgba(226, 97, 112, 0.05); }
  body > footer .menu-footer_mega-container > .menu .lv-0 {
    border-top: 3px solid rgba(0, 0, 0, 0.05);
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: .5em; }
    body > footer .menu-footer_mega-container > .menu .lv-0 > a {
      background-image: url("../assets/images/icon-arrow.png");
      background-repeat: no-repeat;
      background-position: top 1em left;
      background-size: 1em 1em;
      padding-left: 1.4em; }
      body > footer .menu-footer_mega-container > .menu .lv-0 > a::before {
        display: none; }
  body > footer .menu-footer_mega-container > .menu .members, body > footer .menu-footer_mega-container > .menu .officers {
    position: relative; }
    body > footer .menu-footer_mega-container > .menu .members::after, body > footer .menu-footer_mega-container > .menu .officers::after {
      display: block;
      content: "ログインが必要です";
      color: #E26170;
      padding-left: 1.5em; }
  @media (max-width: 767.98px) {
    body > footer .footer-widget__column > * {
      margin-top: 0; }
    body > footer .menu-footer_sub-container li {
      border-top: 3px solid rgba(0, 0, 0, 0.05);
      padding-top: 1em;
      padding-bottom: 1em;
      transition: all .3s; }
    body > footer .menu-footer_sub-container li:last-of-type {
      border-bottom: 3px solid rgba(0, 0, 0, 0.05); } }
  @media (min-width: 768px) {
    body > footer .menu-footer_mega-container > .menu,
    body > footer .menu-footer_sub-container > .menu {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: space-between; }
    body > footer .menu-footer_mega-container > .menu .w-1 {
      flex-basis: calc( 25% - 1.5em ); }
    body > footer .menu-footer_mega-container > .menu .w-2 {
      flex-basis: calc( 50% - 1.5em ); }
    body > footer .menu-footer_mega-container > .menu .w-3 {
      flex-basis: calc( 75% - 2em ); }
    body > footer .menu-footer_mega-container > .menu .w-4 {
      flex-basis: 100%; }
    body > footer .menu-footer_sub-container > .menu {
      justify-content: center;
      font-size: .75em; }
      body > footer .menu-footer_sub-container > .menu > li {
        padding-left: 1.5em;
        padding-right: 1.5em; } }

body {
  position: relative; }

.site-info {
  position: absolute;
  width: 100%;
  bottom: 0; }

.footer-address {
  padding-top: 1.5em;
  padding-bottom: 2.5em; }

/* footer end */
/* トップへ戻るボタン */
body #back-to-top {
  right: 0.25em;
  bottom: 0.25em; }

/* CSS Document */
.req {
  padding: 2px 4px;
  color: #fff;
  background-color: #E26170;
  border-radius: 4px;
  font-size: 85%; }

.home {
  /**/
  /* カテゴリーリスト */
  /* topics / publish */ }
  .home #hero.wp-block-cover {
    min-height: 120px; }
    @media (min-width: 768px) {
      .home #hero.wp-block-cover {
        min-height: 280px; } }
  .home #copy.wp-block-cover {
    min-height: 120px;
    padding-left: 0;
    padding-right: 0; }
    @media (min-width: 768px) {
      .home #copy.wp-block-cover {
        min-height: 280px; } }
    .home #copy.wp-block-cover .copy {
      max-width: 1200px;
      margin: 0 auto; }
  .home .wp-block-categories-list.box {
    display: flex;
    flex-direction: row;
    gap: 0.75em;
    flex-wrap: wrap;
    justify-content: center; }
    .home .wp-block-categories-list.box li {
      border: 1px solid #fff;
      border-radius: 0.5em;
      flex-basis: calc( ( 100% - 0.75em ) / 2 );
      transition: all .3s; }
      @media (min-width: 768px) {
        .home .wp-block-categories-list.box li {
          flex-basis: 8.5em; } }
      .home .wp-block-categories-list.box li:hover {
        background-color: rgba(255, 255, 255, 0.8); }
        .home .wp-block-categories-list.box li:hover a {
          color: #3A7CB7; }
    .home .wp-block-categories-list.box a {
      padding: 0.5em 0.75em; }
      .home .wp-block-categories-list.box a::before {
        display: none; }
  .home .ys-posts .ys-posts__item {
    border-bottom: none;
    padding: .75em 1em;
    background-color: white;
    border-radius: .75em; }
  .home .pickup .ys-posts .ys-posts__item {
    background-color: #ffffdf; }
  .home #publish .ys-posts .ys-posts__item {
    padding: 0; }
  .home #publish .ystdb-column.has-background {
    border-radius: 1em; }
  .home #sns .facebook {
    text-align: center; }

.page-title {
  background-color: #FBF8EE;
  background-image: url("../assets/images/bg-header.png");
  background-position: bottom center;
  background-repeat: repeat-x;
  padding-bottom: 3px; }
  .page-title .content__main,
  .page-title .archive__main {
    background-color: transparent;
    margin-top: 0;
    margin-bottom: 0; }
  .page-title h1 {
    margin: 0;
    padding-top: 1.9em;
    padding-bottom: 2em; }

.page-title + .site-content {
  margin-top: calc( var(--ystd-container-margin-vertical) * 0.25 ); }

.site-content th.nowrap, .site-content td.nowrap {
  white-space: nowrap; }

/* 見出しデザイン */
.ystdtb .entry-content h2:not([class*="is-style-ystdtb-"]):not(.is-clear-style):not(:where(.wp-block-accordion-heading)) {
  position: relative; }
  .ystdtb .entry-content h2:not([class*="is-style-ystdtb-"]):not(.is-clear-style):not(:where(.wp-block-accordion-heading))::before {
    display: block !important;
    content: '';
    background-color: #4A96D9;
    width: 0.9em;
    height: 5px;
    position: absolute;
    bottom: calc( 50% - 2.5px );
    left: 0; }

/* アーカイブでのサムネイル */
.ratio .ratio__image img.tkp__thumb {
  object-position: top center; }

/* login */
#wpmem_login {
  margin-left: auto;
  margin-right: auto; }

#wpmem_login fieldset legend,
#wpmem_reg fieldset legend {
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: normal; }

/* 子ページリスト */
.child_pagelist {
  border: 1px solid #EA945D;
  border-radius: .5em;
  padding: 1em;
  margin-bottom: 3em; }
  .child_pagelist a:hover, .child_pagelist a:active, .child_pagelist a:focus {
    background-color: rgba(226, 97, 112, 0.1); }
  .ystdtb .entry-content .child_pagelist h4:not([class*="is-style-ystdtb-"]):not(.is-clear-style):not(:where(.wp-block-accordion-heading)) {
    padding-top: .5em;
    margin-bottom: 0;
    border-color: #EA945D; }
  .child_pagelist .ystdtb-posts {
    padding-top: calc( var(--ystd-layout-gap) / 2 ); }
  @media (max-width: 679.98px) {
    .child_pagelist .ys-posts__list > * {
      --ystd-posts-item-width: calc(50% - var(--ystd-posts-item-gap)*0.5) ; } }
  .child_pagelist .ys-posts__list .ys-posts__item {
    padding-top: 0;
    padding-bottom: 0;
    margin-top: -1.5em; }
  .child_pagelist .ys-posts__list .ys-posts__text,
  .child_pagelist .ys-posts__list .ys-posts__title,
  .child_pagelist .ys-posts__list a.ys-posts__link {
    display: block;
    text-align: center;
    width: 100%; }
  .child_pagelist .ys-posts__list a.ys-posts__link {
    padding-top: calc( var(--ystd-posts-item-gap) * 0.5 );
    padding-bottom: calc( var(--ystd-posts-item-gap) * 0.5 ); }
  .entry-content .child_pagelist:last-child {
    margin-top: 3em;
    margin-bottom: 0; }

/* アーカイブ */
.ys-posts.is-card .ys-posts__meta,
.archive__item.is-card .archive__meta {
  justify-content: flex-end; }
  .ys-posts.is-card .ys-posts__meta .archive__date,
  .archive__item.is-card .archive__meta .archive__date {
    margin-right: 0; }

.ys-posts.is-list .ys-posts__meta,
.archive__item.is-list .archive__meta {
  text-align: right; }

.ys-posts__meta .ys-icon,
.archive__meta .ys-icon {
  display: none; }

.ys-posts__cat,
.archive__category {
  background-color: #4A96D9;
  color: white;
  padding: .25em .5em;
  border-radius: .5em;
  line-height: 1; }

/* table */
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table {
  border-top: none;
  background-color: white; }
  .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr {
    border-left: none; }
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th, .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr td {
      background-color: transparent;
      border: none;
      border-bottom: 2px solid #ccc; }
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th {
      font-weight: bold; }
