/*--------------------------------------------------------------
This is your custom stylesheet.

Add your own styles here to make theme updates easier.
To override any styles from other stylesheets, simply copy them into here and edit away.

Make sure to respect the media queries! Otherwise you may
accidentally add desktop styles to the mobile layout.
https://www.w3schools.com/css/css_rwd_mediaqueries.asp
--------------------------------------------------------------*/

/* ----------------------------------------------------------------------
 共通
---------------------------------------------------------------------- */
/** コメント欄 **/
.logged-in-as {
  margin-bottom: 10px;
}
.comment-respond,
.comment-body {
  padding: 15px 20px;
}
.comment-content-wrap .comment-text p {
  margin-bottom: 0;
}
.comment-content-wrap .comment-text {
  margin-top: 0;
  margin-bottom: 0;
}

/** BuddyPanel **/
.bb-template-v2 ul.buddypanel-menu li {
  min-height: 52px;
}
.bb-template-v2 ul.buddypanel-menu li a {
  padding: 10px 0;
}

/* ボタンホバー */
article:not(.bp_register) > .entry-content a.wp-element-button:hover {
  color: #fff;
  opacity: 0.7;
}

/** ヘッダー **/
@media screen and(max-width: 799px) {
  .bb-mobile-header {
    height: 60px;
  }
}

/* ----------------------------------------------------------------------
 ログイン・登録ページ
---------------------------------------------------------------------- */
body.login,
body.register.buddypress,
body.register.buddypress .site {
  background-color: transparent;
  background-image: url("../img/bg.png") !important;
}

/* ----------------------------------------------------------------------
 コンテンツ一覧
---------------------------------------------------------------------- */
/** 全体 **/
.page-id-232 .container {
  max-width: 1400px;
}

/** モバイル用メニューパネル **/
.mobile-menu-panel {
  background: var(--bb-primary-color);
  margin: -30px -20px 20px -20px;
}
@media screen and (min-width: 768px) {
  .mobile-menu-panel {
    margin-top: -14px;
  }
}

.mobile-menu-panel .wp-block-post-template.is-flex-container.panel-container {
  gap: 10px;
  margin-left: 20px;
  margin-right: 20px;
  padding: 10px 0;
  height: 100%;
}

.mobile-menu-panel .wp-block-post-template.is-flex-container li.panel-item {
  width: calc((100vw - 70px) / 4);
  background: var(--wp--preset--color--white);
  border-radius: 4px;
  height: 100%;
}
.mobile-menu-panel .panel-link {
  height: 100%;
  width: 100%;
  padding: 8px;
}

.mobile-menu-panel .panel-link i {
  font-size: 32px;
}

.mobile-menu-panel .panel-link .panel-link-label {
  font-size: 12px;
  line-height: 14px;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (min-width: 800px) {
  .mobile-menu-panel {
    display: none;
  }
}

/** カテゴリータイトル **/
.article-list-header {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.header {
  display: flex;
  flex: 1 1 0%;
}
.contents-ttl {
  display: flex;
  flex: 1 1 100%;
  align-items: center;
  max-width: 90%;
  font-size: 20px;
  padding-left: 6px;
  border-left: 4px solid var(--bb-primary-color);
  margin-bottom: 0;
}
.contents-ttl span {
  display: flex;
  align-items: center;
  font-size: 12px;
  color: var(--bb-primary-color);
  margin-left: 5px;
  font-weight: 500;
}
.more-wrapper {
  float: right;
}
.more-wrapper .more {
  display: flex;
  align-items: center;
  padding: 0 10px;
}
.more-wrapper .more span {
  display: none;
}
@media screen and (min-width: 800px) {
  h3.wp-block-post-title {
    font-size: 18px;
  }
  .more-wrapper .more span {
    margin-right: 7px;
    font-weight: 400;
    font-size: 16px;
    color: var(--bb-body-text-color);
    display: block;
  }
}

/** コンテンツ **/

/* 全体調整 */

.contents-list :where(.wp-block-columns.has-background) {
  padding: 0;
}
.contents-list :where(.wp-block-columns.is-layout-flex) {
  gap: 0;
}
.contents-list ul {
  margin-left: 0;
  margin-bottom: 50px;
}
.contents-list .wp-block-columns.has-white-background-color {
  border-radius: 4px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}
.contents-list .wp-block-post-template.is-flex-container {
  gap: 15px;
}
@media screen and (min-width: 800px) {
  .contents-list .wp-block-columns.has-white-background-color {
    border-radius: 8px;
  }
  .contents-list .wp-block-post-template.is-flex-container {
    gap: 20px;
  }
}

/* タイトル */
h3.wp-block-post-title {
  color: var(--bb-headings-color);
  font-size: 14px;
  line-height: 22px;
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-bottom: 0;
  font-weight: 700;
}
@media screen and (min-width: 800px) {
  h3.wp-block-post-title {
    font-size: 18px;
  }
}

.contents-list
  ul.wp-block-post-template
  li
  .wp-block-columns
  .wp-block-column:nth-child(2) {
  padding: 5px;
}
@media screen and (min-width: 800px) {
  .contents-list
    ul.wp-block-post-template
    li
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: calc((100vw - 168px) * 0.0984375);
    padding: 16px 21px;
  }
}
@media screen and (min-width: 1528px) {
  .contents-list
    ul.wp-block-post-template
    li
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: 133.86px;
  }
}
@media screen and (min-width: 800px) {
  .buddypanel-open
    .contents-list
    ul.wp-block-post-template
    li
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: calc((100vw - 330px) * 0.0984375);
  }
}
@media screen and (min-width: 1690px) {
  .buddypanel-open
    .contents-list
    ul.wp-block-post-template
    li
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: 133.86px;
  }
}

/* アイキャッチ */
.contents-list .wp-block-post-featured-image img {
  border-radius: 4px;
}
@media screen and (min-width: 800px) {
  .contents-list .wp-block-post-featured-image img {
    border-radius: 8px;
  }
}

/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
.bb-icon-inbox:before {
  content: "\ee33";
}

/* ----------------------------------------------------------------------
 カテゴリーアーカイブ
---------------------------------------------------------------------- */
/** 全体 **/
.archive.category .container {
  max-width: 1400px;
}

/* ----------------------------------------------------------------------
 コンテンツ詳細
---------------------------------------------------------------------- */
.single .entry-img {
  padding-top: calc((100vw - 40px) * 0.5625);
}
@media screen and (min-width: 800px) {
  .single .entry-img {
    padding-top: calc((100vw - 428px) * 0.5625);
  }
}
@media screen and (min-width: 1328px) {
  .single .entry-img {
    padding-top: 495px;
  }
}
.single-post .entry-content table,
.single-post .entry-content table tr th,
.single-post .entry-content table tr td {
  border-color: gray;
}
.single-post .entry-content table p,
.single-post .entry-content .graybox p {
  margin-bottom: 12px;
}

.single-post .entry-content p {
  margin-bottom: 5px;
}
.ymarker-s {
  background: linear-gradient(transparent 70%, #fff9c4 0);
}
.freebox {
  background: #f0f7e9;
  border: 1px solid #7cb342;
  font-size: 14px;
  line-height: inherit;
  margin-bottom: 0;
  padding: 5px 0;
  position: relative;
}
.free-inbox {
  padding: 0 15px;
  text-align: left;
}
.p-free {
  font-weight: 700;
}
.p-entry-f {
  padding: 3px 20px;
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  background: #7cb342;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  max-width: 80%;
}
.p-free:after {
  content: "";
  display: block;
  margin-bottom: 30px;
}
.graybox:not(.noborder) {
  border: 1px solid #ccc;
  padding: 20px;
  background-color: #fafafa;
  font-size: 15px;
}
.graybox,
.mce-edit-area p,
.redbox,
.yellowbox {
  font-size: 18px;
  line-height: 30px;
}

.single .entry-content .graybox > *:last-child {
  margin-bottom: 0;
}

:not(h2) > .custom-heading,
.single .entry-content h2 {
  background: #fafafa;
  display: block;
  padding: 10px 15px;
  border-left: 8px solid #185d3b;
  color: #000;
  font-size: 18px;
}
:not(h3) > .headingBorderStyle,
.single .entry-content h3 {
  border-top: 3px solid #1a5c3c;
  padding: 10px;
  background: #eee;
  border-bottom: 2px solid #ddd;
  font-weight: 700;
  margin-bottom: 5px;
  font-size: 16px;
}

:not(h4) > .headingStyle,
.single .entry-content h4 {
  border-bottom: 2px solid #ddd;
  overflow: hidden;
  padding-bottom: 3px;
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: 700;
}

.headingCounter {
  color: #fff;
  background: #1a5c3c;
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 1px;
  font-size: 18px;
  margin-right: 10px;
  font-weight: 700;
  line-height: 30px;
}

.headingCounter,
.headingStyleText {
  float: left;
}

.post-author-info {
  border-bottom: none;
}

.post-move-link {
  font-weight: 900;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #fff;
  background: #333;
  border-radius: 6px;
  padding: 15px 30px;
}

.post-move-link:hover {
  color: #fff;
}

.prev-link {
  margin-right: 20px;
}

.detail-three {
  display: flex;
  margin-bottom: 40px;
  flex-direction: column;
}

.detail-three .double {
  display: flex;
  align-items: stretch;
  width: 200px;
  margin: 0 auto;
}

.post-author-info {
  margin: 0;
}

.single:not(.radio-template-default) .entry-header,
.single:not(.radio-template-default) .entry-title {
  margin-bottom: 0;
}

.single .entry-content .wpulike {
  text-align: right;
}

/* ----------------------------------------------------------------------
 ラジオ一覧
---------------------------------------------------------------------- */
.has-sidebar.home-page #primary {
  max-width: initial;
  width: initial;
}

.item-ttl {
  font-weight: 700;
  font-size: 14px;
  line-height: 21px;
  color: #1c1d21;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.date {
  color: #333;
  font-size: 10px;
  line-height: 20px;
}

.radio-category {
  position: absolute;
  top: -10px;
  background: #1c1d21;
  color: #fff;
  padding: 1px 9px 2px;
  border-radius: 5px;
  font-size: 12px;
  text-align: center;
}

.post-type-archive .post-grid article .post-inner-wrap .entry-content-wrap,
.home-page .post-grid article .post-inner-wrap .entry-content-wrap {
  flex-direction: row;
  box-sizing: border-box;
  display: flex;
  place-content: center space-between;
  align-items: center;
  padding: 15px;
  border-radius: 8px;
  position: relative;
}

.post-type-archive .post-grid,
.home-page .post-grid {
  flex-flow: row wrap;
  box-sizing: border-box;
  display: flex;
  margin: 0px -20px -25px 0px;
}

.post-type-archive .post-grid > .hentry,
.home-page .post-grid > .hentry {
  flex-direction: column;
  box-sizing: border-box;
  display: flex;
  place-content: stretch space-between;
  align-items: stretch;
  flex: 1 1 100%;
  max-width: 100%;
  padding: 0px 20px 25px 0px;
  margin-bottom: 0;
}
.post-type-archive .post-grid.bb-standard .hentry .entry-img,
.home-page .post-grid.bb-standard .hentry .entry-img {
  padding-top: calc((100vw - 40px) * 0.5625);
}
@media screen and (min-width: 500px) {
  .post-type-archive .post-grid > .hentry,
  .home-page .post-grid > .hentry {
    flex: 1 1 50%;
    max-width: 50%;
  }
  .post-type-archive .post-grid.bb-standard .hentry .entry-img,
  .home-page .post-grid.bb-standard .hentry .entry-img {
    padding-top: calc((100vw - 60px) * 0.28125);
  }
}
@media screen and (min-width: 800px) {
  .post-type-archive .post-grid > .hentry,
  .home-page .post-grid > .hentry {
    flex: 1 1 33%;
    max-width: 33%;
  }
  .post-type-archive .post-grid.bb-standard .hentry .entry-img,
  .home-page .post-grid.bb-standard .hentry .entry-img {
    padding-top: calc((100vw - 168px) * 0.1875);
  }
}
@media screen and (min-width: 1328px) {
  .post-type-archive .post-grid.bb-standard .hentry .entry-img,
  .home-page .post-grid.bb-standard .hentry .entry-img {
    padding-top: 213.75px;
  }
}
@media screen and (min-width: 800px) {
  .buddypanel-open.post-type-archive .post-grid.bb-standard .hentry .entry-img,
  .buddypanel-open.home-page .post-grid.bb-standard .hentry .entry-img {
    padding-top: calc((100vw - 330px) * 0.1875);
  }
}
@media screen and (min-width: 1490px) {
  .buddypanel-open.post-type-archive .post-grid.bb-standard .hentry .entry-img,
  .buddypanel-open.home-page .post-grid.bb-standard .hentry .entry-img {
    padding-top: 213.75px;
  }
}

/* 絞り込み機能追加 2024/07/24 ADD START */
.query-area{  
  margin-top: 15px;
}
/* 絞り込み機能追加 2024/07/24 ADD END */

/* ----------------------------------------------------------------------
 ラジオ詳細
---------------------------------------------------------------------- */
.radio-template-default .entry-header,
.radio-template-default .entry-title {
  margin-bottom: 0;
}
.radio-template-default figure.wp-block-audio {
  margin-bottom: 0;
}

.single:not(.single-post) .entry-content-wrap {
  padding-top: 0;
}

@media screen and (min-width: 800px) {
  .radio-template-default .entry-header,
  .radio-template-default .entry-title {
    margin-bottom: 20px;
  }
}

.lnk-all-radio{
  margin-top: 10px;
  display: block;
}
@media screen and (min-width: 800px) {
  .lnk-all-radio{
    margin-top: 0;
    margin-left: 10px;
    display: inline-block;
  }
}


/* ----------------------------------------------------------------------
 勉強会アーカイブ詳細
---------------------------------------------------------------------- */
.study-template-default .entry-content-wrap .fluid-width-video-wrapper {
  margin-bottom: 32px;
}

/* ----------------------------------------------------------------------
 チャット詳細
---------------------------------------------------------------------- */
#whats-new-form {
  margin-top: 20px;
}

/* ----------------------------------------------------------------------
 検索結果一覧
---------------------------------------------------------------------- */
/** 全体 **/
.search-results .container {
  max-width: 1400px;
}

/* 一覧 */
.search-results .post-grid {
  margin-left: 0;
  margin-bottom: 50px;
  gap: 15px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.search-results .wp-block-columns{
  gap: 0;
}

.search-results .wp-block-columns.has-white-background-color {
  border-radius: 4px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  padding: 0;
}

.search-results .post-grid article{
  width: calc(50% - .625em);
  margin-bottom: 0;
}

@media screen and (min-width: 800px) {
  .search-results .wp-block-columns.has-white-background-color {
    border-radius: 8px;
  }
  .search-results .post-grid {
    gap: 20px;
  }
}

/* アイキャッチ */
.search-results .wp-block-post-featured-image img {
  border-radius: 4px;
}
@media screen and (min-width: 800px) {
  .search-results .wp-block-post-featured-image img {
    border-radius: 8px;
  }
}


/* タイトル */
.search-results .post-grid article
  .wp-block-columns
  .wp-block-column:nth-child(2) {
  padding: 5px;
}
@media screen and (min-width: 800px) {
  .search-results .post-grid article
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: calc((100vw - 168px) * 0.0984375);
    padding: 16px 21px;
  }
}
@media screen and (min-width: 1528px) {
  .search-results .post-grid article
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: 133.86px;
  }
}
@media screen and (min-width: 800px) {
  .buddypanel-open.search-results .post-grid article
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: calc((100vw - 330px) * 0.0984375);
  }
}
@media screen and (min-width: 1690px) {
  .buddypanel-open.search-results .post-grid article
    .wp-block-columns
    .wp-block-column:nth-child(2) {
    height: 133.86px;
  }
}

/* ----------------------------------------------------------------------
 グループ一覧
---------------------------------------------------------------------- */
@media screen and (max-width: 375px) {
  .buddypress-wrap
    ul.bp-list.groups-dir-list:not(.grid)
    .item-entry
    .item-avatar {
    width: auto;
    margin-bottom: 0;
  }
}

/* ----------------------------------------------------------------------
 よくある質問
---------------------------------------------------------------------- */
.wp-block-details summary {
  background: #fff;
  padding: 10px 20px;
  border-radius: 8px;
  border: 1px solid var(--bb-content-border-color);
}

.wp-block-details p {
  padding: 10px 20px;
}

/* ----------------------------------------------------------------------
 フルスクリーンページ
---------------------------------------------------------------------- */
.page-template-page-fullscreen .site-content {
  padding-left: 10px;
  padding-right: 10px;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (min-width: 800px) {
  .page-template-page-fullscreen .site-content {
    padding-left: 30px;
    padding-right: 30px;
  }
}
body.page-template-page-fullscreen {
  background-color: transparent;
  background-image: url("../img/bg.png") !important;
}

/* ----------------------------------------------------------------------
 ラジオ連続再生ページ
---------------------------------------------------------------------- */
.post-type-archive-radio.post-type-archive .post-grid{
  display: block;
}

.post-type-archive-radio.post-type-archive .post-grid > .hentry{
  max-width: 100%;
  padding: 0px 20px 15px 0px;
}

.post-type-archive-radio.post-type-archive .post-grid article .post-inner-wrap .entry-content-wrap{
  display: block;
}

.post-type-archive-radio figure.wp-block-audio {
  margin-bottom: 0;
}

.post-type-archive-radio .radio-item-ttl{
  margin-bottom: 15px;
}

.post-type-archive-radio .post-inner-wrap:hover{
  box-shadow: none;
}

.post-type-archive-radio.post-type-archive .pagination a{
  text-decoration: none;
  color: #26A69A;
  background: #fff;
  border: 2px solid #26A69A;
}

.post-type-archive-radio.post-type-archive .current{
  background: #26A69A;
  border: 2px solid #26A69A;
  color: #fff;
}

@media screen and (min-width: 800px) {
  .post-type-archive-radio.post-type-archive .post-grid article .post-inner-wrap .entry-content-wrap{
    padding: 15px 30px;
  }
}