@charset "utf-8";

/*縦書き*/
  .u-w-v{
    writing-mode: horizontal-tb;
    -ms-writing-mode: tb-rl;
  }

/*SP時の表示順番変更 */
@media (max-width: 767px) {
 .grid-row1{
    grid-row:1;
  } 
 .grid-row2{
    grid-row:2;
  } 
}

@media screen and (min-width: 992px) {
  .u-w-v{
    writing-mode: vertical-rl;
  }
}

/*投稿の位置調整*/
img.alignright {
    display: block;
    margin: 0 0 0 auto;
}
img.alignleft {
    display: block;
    margin: 0 auto 0 0;
}
img.aligncenter {
    display: block;
    margin: 0 auto;
}

.c-post [class^=c-grid__item], .c-post [class*=" c-grid__item"] {
    background-color: #fff!important;
}

.c-post-shadow{
  box-shadow: 0 0 1rem .25rem #3b3b3b0f;
}

.c-post-data {
  display: flex;
  align-items: flex-start;
}
.c-post-data .material-symbols-outlined {
  margin-top: 6px; /* 2～4pxくらいで調整 */
  font-size: 18px;
}


/*個別ページ用css*/

.p-pages p{
 margin-bottom: 1rem; 
}
.p-pages h2{
  background-color: #333333;
  color: #ffffff;
  padding:1rem 2rem;
  font-size: 1.5rem !important;
  margin-bottom: 1.5rem;
}

.p-pages h3{
  background-color: #f6f6f6;
  padding:.5rem 2rem;
  border-left: solid 5px #8b9b4f;
  font-size: 1.125rem !important;
  margin-bottom: 1.5rem;
}
.p-pages h4{
  padding: .5rem;
  line-height: .8rem;
  border-left: solid 10px #8b9b4f;
  margin-bottom: 1.5rem;
}

.p-pages .c-link-other{
  box-shadow: 0 0 0 0 #ffffff;
}

.c-profile__item{
  display:grid;
  grid-template-columns: 7rem 1fr;
}

.c-profile__item dt,
.c-profile__item dd{
  padding:.25rem 0;
}

.c-profile__item dt{
  font-weight:700;
}

@media screen and (max-width:992px){
  .c-profile__item{
    display:block;
  }
}

.c-history__item{
  display:flex;
}
.c-history__item dt,.c-history__item dd{
  padding: .5rem 0;
}
.c-history__item dt{
  width:12rem;
  font-weight: 700;
}

@media screen and (max-width: 992px){
 .c-history__item{
    display:block;
  }

  .c-history__item dt{
    width:auto;
  }
}


/*投稿用ページ区切り*/
.pagebreak-links{
  text-align: center;
  margin-bottom: 30px;
}
.pagebreak-links .post-page-numbers{
  background-color: #4e4f4b;
  border: 1px solid #cbcbcb;
  border-radius: 8rem;
  color: #fff;
  display: inline-block;
  height: 48px;
  line-height: 46px;
  margin: 0 10px;
  padding: 0 0.25rem;
  position: relative;
  width: 75px;
}
.pagebreak-links .current{
  background-color: #f5f5f5 !important;
  color: #6b6b6b !important;
}



/*トップページ NEWSテキストサイズ調整 */
.c-title-top .txtsmall {
    font-size: 2rem;
}

@media screen and (min-width: 992px) {
    .c-title-top .txtsmall {
        font-size: 1.8rem;
    }
}

/*ヘッダメニュー　*/
.l-header__menu-subchild{
  padding: .5rem 2.5rem !important;
}
.l-header__menu-subchild::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 3px;
  background: currentColor;
  margin-right: 8px;
  vertical-align: middle;  
}
.l-header__menu-subchild:last-child{
  padding-bottom: 1.25rem !important;
}
.l-header__menu-parent .l-header__menu-ttl span{
  padding:0;
}
.l-header__menu-parent .l-header__menu-ttl span:after{
  border:none;
}

/*フッターメニュー */
.l-footer__menu-subchild::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 3px;
  background: currentColor;
  margin-right: 8px;
  vertical-align: middle;  
}


/*レスポンシブの表示・非表示*/
.pc_view{
  display: block;
}
.sp_view{
  display: none;
}
@media screen and (max-width: 992px){
  .pc_view{
    display: none;
  }
  .sp_view{
    display: block;
  }
}



/*段落字下げ */
.font_indent::first-letter {
  display: inline-block;
  margin-left: 1rem; /* 字下げのスペースを指定 */
}


.menu-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

.menu-flex__item{
    width: calc((100% - 20rem) / 4);
}
@media screen and (max-width: 992px){
  .menu-flex__item{
    width: calc((100% - 2rem) / 4);
  }
}
.menu-flex__item a{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    width: 100%;
    height: 100%;
    text-decoration: none;
}
.menu-flex__ititle{
  display: block;
  width: 5em;
  margin: 0 auto;
  text-align: center;
  text-align:justify;
  text-align-last:justify;
}

@media screen and (max-width: 992px){
  .menu-flex__ititle{
    width: auto;
  }
}
/*運営方針　組織表 */
.organzation_list div{
  display:flex;
  justify-content: flex-start;
  padding: 6px;
}
 .organzation_list dt {
  width: 10rem;
}
.organzation_list dd {
  margin-left: 0;
  width: calc(100% - 10rem);
}

/*事業方針リスト*/
.p-policy-list ol,.p-policy-list li {
  list-style-type: decimal-leading-zero;
}
.p-policy-list ol{
  margin-left: 1rem;
}
.p-policy-list li{
  margin-bottom: 1rem;
}
.p-policy-list li::marker{
  font-size: 1.2rem;
}
.p-policy-sublist ol,.p-policy-sublist li {
  list-style-type:none;
  margin-top: .25rem;
  margin-bottom: .25rem;
  margin-left: -1rem;
}


/*
会員ページ
*/
.members .c-link-other{padding: 1.5rem 1rem;}
.p-pages .members p{margin-bottom: 0rem;}
.p-member img{
  max-width: 180px !important;
  margin: 0 auto;
}

.c-form textarea{
  height: 200px !important;  
}