@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** フォントファミリー
************************************/

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 400;
  src: url("https://use.fontawesome.com/releases/v6.3.0/webfonts/fa-brands-400.woff2") format("woff2");
}

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  src: url("https://use.fontawesome.com/releases/v6.3.0/webfonts/fa-solid-900.woff2") format("woff2");
}


/* Shippori Mincho 700 */

.recruit_card_title ,
.concert_2026_detail p {
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-style: normal;	
}

/* Kaisei decol 500 */

.greeting p {
  font-family: "Kaisei Decol", serif;
  font-weight: 500;
  font-style: normal;	
}

/* Kaisei decol 700 */

#header p.sub_title ,
h2.schedule_heading ,
.schedule h2 ,
.schedule h3 ,
h2.greeting_heading ,
.greeting h3 ,
.greeting p .bold ,
h2.news__heading ,
#list_container h2#latest_article ,
.sidebar h2 ,
.sidebar h3 ,
.related-entry-heading ,
.concert_2026_introduction p.heading {
  font-family: "Kaisei Decol", serif;
  font-weight: 700;
  font-style: normal;	
}


/************************************
** フォントサイズ 変数指定
************************************/

:root {
  --fs-06: 0.6rem;
  --fs-07: 0.7rem;
  --fs-08: 0.8rem;
  --fs-09: 0.9rem;
  --fs-10: 1rem;
  --fs-11: 1.1rem;
  --fs-12: 1.2rem;
  --fs-14: 1.4rem;
  --fs-16: 1.6rem;
  --fs-18: 1.8rem;
  --fs-20: 2.0rem;
  --fs-22: 2.2rem;
  --fs-24: 2.4rem;
}


/************************************
** フォントカラー
************************************/

/*** 濃プラム色 ***/

h2.schedule_heading ,
.schedule h2 ,
.schedule h3 ,
h2.greeting_heading ,
.greeting h3 ,
.greeting p .bold ,
.news__heading ,
#list_container h2#latest_article {
	color: #821b64;
}

/*** 薄プラム色 ***/

#header p.sub_title ,
#navi .navi-in a ,
#navi .navi-in a::after ,
#navi .navi-in a:hover {
	color: #fff3fa;
}

/************************************
** letter_spacing
************************************/

#navi .navi-in a ,
.recruit_card_title ,
.schedule h4 ,
.greeting h3 ,
.greeting a ,
.news__heading ,
.news__date {
	letter-spacing : 0.1em;
} 

#header p.sub_title ,
.recruit_card_desc ,
h2.schedule_heading ,
.latest-schedule__link a ,
h2.greeting_heading ,
.greeting p ,
.news__title ,
.chorus_recruit_lower_heading ,
body.single-post article h1.entry-title ,
body.page article h1.entry-title ,
body.single-post .article h2 ,
.page-template-default .article h2 ,
.related-entry-heading ,
.page_design__boxtype_1 p ,
.conductor_profile p span {
	letter-spacing : 0.05em;	
}

/************************************
** スクロールバーの幅取得関連
************************************/

:root {
  --scrollbar: 0;
}

body {
  margin: 0;
}


/************************************
** リセット
************************************/

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

a:hover {
	color: #000;
}

a {
	text-decoration: none !important;
}

.article ul li, .article ol li {
	margin: 0;
}

.article h2 {
	background: #fff3fa;
}

.article h4, .article h5, .article h6 {
    font-size: var(--fs-11);
	font-weight: 600;
    padding: 0.5em 0;
}

.article h4 {
	border: none;
}

.a-wrap:hover {
	background: none;
	transition: all 0s ease-in-out;
}

.eye-catch {
	margin-bottom: 0;
}

/* 余白とレイアウトの土台 */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/************************************
** hover
************************************/

#navi .navi-in a:hover {
	background: none;
}

@media screen and (min-width: 1024px) {

/* アンダーライン */

.ect-3-columns a.entry-card-wrap:hover .entry-card-title ,
.rect-vertical-card-3 a.related-entry-card-wrap:hover .related-entry-card-title ,
body.single-post #date_and_categories div a:hover ,
a.rt_tw_link:hover {
    text-decoration: underline !important;	
}

/* 文字色変化 */

.contact_link a:hover {
	color: #94D5D5;
	transition: all .3s ease 0s;
}

.pagination a:hover {
	color: #fff;
	background: #000;
}

/* 投稿記事： リンクカード */
	
body.single-post .blogcard-wrap:hover {
	background: #ffffd8;
	color: #000;
	transition: all .3s ease 0s;
}
	
/* 戻り */

.home .widget_categories ul li a ,
.contact_link a {
	transition: all .3s ease 0s;
}
	
}

/************************************
** display: none;
************************************/

#crumb .fa-folder , #breadcrumb .fa-file ,

.entry-card .admin-pv ,

.post-date .fa-clock , 

#main .button-caption ,

.eye-catch .cat-label, 

#breadcrumb .fa-folder ,

#breadcrumb .fa-folder:before , 

#archive-title span.fa-folder-open ,

#archive-title span.fa-tags ,

.pagination-next-link ,

.breadcrumbs_original div:last-child .fa-angle-right ,

body.single-post div.date-tags span.post-update ,

body.single-post #date_sp .date-tags {
	
	display: none;

}

/************************************
** sp pc での表示切替
************************************/
	
i.i_sp ,
.site_topimg_mobile {
	display: none;
}
	
i.i_pc {
	display: inline-block;
}

.entry-card-meta span.cat-label ,
.related-entry-card-meta span.cat-label {
	display: none;
}

/************************************
** font awesome
************************************/

.fa-arrow-up-right-from-square:before,
.fa-external-link:before {
	
	font-weight: 600;

}

.fa-square-check {
	margin-right: 0.5em;
}


/************************************
** 装飾
************************************/

.bold {
	font-weight: 600;
}

.red {
    color: #E45DB0;
}

.blue{
	color: #0BB4D1;
}

.red-under {
    border-bottom: 2px solid #D43B99;
}

.marker-under_wine {
    background: linear-gradient(transparent 60%, #f1c9e2 60%);
	font-weight: 700;
}

.marker-under , 
.marker-under-blue ,
.marker-under-red {
	font-weight: 600;
}


h2 .marker-under , h3 .marker-under , h4 .marker-under , h4 .marker-under {
	font-weight: 600;
}

.under_line {
	text-decoration: underline;
	text-underline-offset: 0.3em;
}

.vertical {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}


/* マーク：circle */

.fa-circle-dot:before, .fa-dot-circle:before {
	color: #9B7A1E;
    font-size: var(--fs-10);
}


/* color */

.color_w {
	color: #fff !important;
}

/* color 動的生成箇所への指定 */

.copyright {
	color: #fff;
}

body.single-post table tr:first-child th,
body.single-post table tr:first-child td,
body.page table tr:first-child th,
body.page table tr:first-child td {
	color: #fff;
}

/* background 動的生成箇所への指定 */

.entry-card-thumb .cat-label ,
.related-entry-card .cat-label {
	background: #fff !important;
}

.entry-card, .related-entry-card {
	background: #fff;
}

body.single-post .white_box ,
body.page .white_box {
	background: #fff !important;
}

table td {
	background: #fff;
}

/************************************
** 大枠
************************************/

/* container */

#container {
    width: 100%;
    margin: 0 auto;
}

/* content */

body.single-post .content , 
body.page .content {
	margin-top: 0;
	padding-top: 140px;
}


/* wrap */

.wrap{
	width: 90%;
	max-width: 1200px;
}

/* main */

.main {
    width: 70%;
	padding: 0;
	background: #fff3fa;
	border: none;
}


/* entry-content */

.entry-content {
	margin-bottom: 3.6em;
}

.page-template-page-basic_page_list .entry-content {
	margin-top: 0;
}


/************************************
** sticky
************************************/

.sticky {
    position: -webkit-sticky; /* Safari */
	position: sticky;
	top: calc(100px + 3.6em);
}

.none {
    opacity: 0;
    z-index: -1;
    transition: 1s;
}

/************************************
** モバイルメニュー
************************************/

.mobile-menu-buttons {
	min-height:auto;
}

.mobile-menu-buttons .menu-content {
	background: #000;
}

.mobile-menu-buttons .menu-button > a {
	padding: 0.5em 0;
}

.menu-drawer a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1em 0.5em;
    font-size: var(--fs-10);
    font-weight: 600;
    color: #fff;
}

.menu-drawer a i.fa-house ,
.menu-drawer a i.fa-twitter ,
.menu-drawer a i.fa-envelope ,
.menu-drawer a i.fa-chart-simple ,
.menu-drawer a i.fa-pen-to-square {
	margin-right: 1em;
}

.fa-twitter {
	color: #1da1f2;
}

.menu-drawer a i.fa-chart-simple {
	color: #44b0b0;
}

.menu-drawer a i.fa-pen-to-square {
    color: #ffff8e;
}

.menu-close-button {
    font-size: var(--fs-20);
	color: #fff;
	text-align: right;
	margin: 0.25em 0.5em 0 0;
}

body.single-post .menu-drawer a p {
	color: #fff;
}

.menu-drawer .sub-menu {
	padding-left: 40px;
}

.menu-drawer .sub-menu li a {
	font-size: var(--fs-09);
    margin: 0 0 1em 0;
    padding:  0.5em 0 0.5em;
}

.menu-drawer li.cat_label > a {
	background: #444;
    margin-top: 0.5em;
    margin-bottom: 1em;
	padding-left: 1em;
}

.menu-drawer li.cat_label > a p {
	font-weight: 600;
}

.menu-drawer .sub-menu li a:after {
    font-family: "Font Awesome 5 Free";
    content: "\f105";
	font-weight: 600;
}

.menu-drawer a:hover {
	background-color: #000;
    transition: none;
    color: #fff;
}

/************************************
** ヘッダー ～ widebox_01 背景
************************************/

.top_background {
  width: 100%;
  background: url("https://nagaoka-chorus.jp/wp-content/uploads/2025/08/top_bg_img-scaled.webp") center no-repeat;
  background-size: cover;
}


/************************************
** ヘッダー
************************************/

#header-container {
    width: 100%;
    z-index: +1;
	background: #821b64;
}

.home #header-container {
	background: none;
}

#header-container-in {
	padding: 1em 0 ;
	background: none;
}

#header {
	width: 100%;
}

.header-in {
	flex-direction: row;
    align-items: center;
	justify-content: space-between;
}

body.single-post .header-container ,
body.page .header-container {
	position: fixed;
}

/* ロゴ・サブテキスト */

#header-container-in .logo_box {
	display: flex;
	align-items: center;
}

.header-container-in.hlt-top-menu .logo-header img {
	width: min(35vw, 200px);
}

#header .site-name-text {
	line-height: 1;
}

#header p.sub_title {
	font-size: var(--fs-09);
	margin-left: 1.2em;
}

.site-name-text-link {
	padding: 0;
}

/* ヘッダーメニュー */

.navi {
	background: none;
}

#navi .navi-in a {
	font-weight: bold;
	font-size: var(--fs-09);
	padding-left: 1em;
}

#navi .navi-in a::after {
  content: "|";
  margin-left: 1em;
}

#navi .navi-in ul li:last-child a {
	padding-right: 0;
}

#navi .navi-in ul li:last-child a::after {
	content: none;
}

.header-container-in.hlt-top-menu .navi {
	width: auto;
}

.navi-in > ul{
	padding: 0;
    margin: 0;
    display: flex;
}

.navi-in > ul li{
	width: auto;
	height: auto;
	line-height: 1;
}

#header-container .cf::after {
	content: none;
}

/************************************
** パンくずリスト
************************************/

#breadcrumb_container {
	padding: 1.8em 0;
    width: calc(100vw - var(--scrollbar));
	margin: 0 calc(50% - 50vw);
    background: #9B7A1E;
}

.breadcrumb {
	margin: 0 auto;
    width: 90%;
    max-width: 1200px;
	font-size: var(--fs-08);
	line-height: 2.4;
}

#breadcrumb ,
#breadcrumb a ,
#breadcrumb span {
	color: #fff !important;
	font-weight: 600;
}

.breadcrumb .sp {
	margin: 0 1.5em;
}

/************************************
** サイドバー　※トップページでのみ表示
************************************/

.home #sidebar {
	display: flex;
    align-items: flex-end;
	max-width: 400px;
	width: 29vw;
	margin: 0 0 4vw 4vw;
	padding: 2vw;
}

.home #sidebar aside.widget_categories {
	margin-bottom: 0;
}

.home #content {
	margin-top: 0;
}

.home #content-in {
	display: flex;
}

.home #main {
    margin: 0;
    flex: 1;
}

.home #sidebar .search-box {
	margin-top: 0;
}

.home .sidebar {
	padding: 0;
}

.home .sidebar-scroll {
	width: 100%;
	top: auto;
	bottom: 0;
}

.sidebar h2, .sidebar h3 {
	background-color: #821b64;
    color: #fff !important;
    padding: 12px;
	margin-bottom: 14px;
	font-size: var(--fs-12);
}

.home #sidebar #custom_html-2 {
	margin-top: 0;
}

.home #sidebar .side_link_banner a {
	display: block;
	margin-bottom: 2vw;
}

.home #sidebar .side_link_banner a:last-child {
	margin-bottom: 0;
}

li.sidebar-menu-button {
	display: none !important;
}

/************************************
** #content_before
************************************/

#content_before {
    display: flex;
	align-items: center;
	gap: 4vw;
	padding: 60px 0 110px;
}

/*** L_box ***/

#content_before .L_box {
    width: 70vw;
	margin-top: -30px;
}


/*** 合唱団員募集カード ***/

.chorus_recruit {
	display: inline-block;
	width: 375px;
	padding: 0 20px;
	background: #821b64;
	transition: transform 0.3s ease;
}

.chorus_recruit:hover {
  transform: scale(1.05);
}

.recruit_card {
	text-align: center;
	padding: 2em 0.5em;
	color: #fff3fa;
}

.recruit_card_title {
	 position:relative;
	font-size: var(--fs-16);
}

.recruit_card_title::after{
  content: "\f4c4";
  font-family:"Font Awesome 5 Free";
  font-weight:900;
  color: #fff3fa;
  font-size: var(--fs-16);
  margin-left: 0.2em;
}

.recruit_card_detail {
	display: inline-block;
	padding: 0.2em 1em;
	font-size: var(--fs-09);
	font-weight: 700;
	background: #fff3fa;
	color: #821b64;
}

.recruit_card_desc {
	font-weight: 700;
}

.recruit_card_cta {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 200px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 1.5em;
	background: #9B7A1E;
	border-radius: 999px;
}

.recruit_card_cta-arrow {
    margin-left: 1em;
	font-size: var(--fs-06);
}

/* recruit_card内のmargin_bottom一括指定 */

.recruit_card_title {
	margin-bottom: 5px;
}
.recruit_card_detail ,
.recruit_card_desc {
	margin-bottom: 20px;
}
	
/************************************
** content_before_second
************************************/

#widebox_02 {
	background: #fff;
}

#content_before_second {
	padding: 80px 0;
}

/*** schedule ***/

.schedule {
	position:relative;
	display: flex;
	gap: 120px;
	z-index: 2;
}

.schedule > div {
	position: relative;
}

/* schedule greeting 各見出し */

h2.schedule_heading {
	position: relative;
	z-index: 2;
}

h2.schedule_heading ,
h2.greeting_heading {
	font-size: var(--fs-18);
}

.schedule h3 ,
.greeting h3 {
	font-size: var(--fs-14);
}

h2.schedule_heading ,
h2.greeting_heading ,
.schedule h3 {
	text-align: center;
}

.schedule h4 {
	font-size: var(--fs-12);
	font-weight: 500;
}


/* latest-schedule__meta */

.latest-schedule__meta li span {
	font-size: var(--fs-09);
}

.latest-schedule__meta li span.label {
	display: inline-block;
	width: 90px;
}

/* latest-schedule__meta FontAwesome */

.latest-schedule__meta .date::before {
    font-family: "Font Awesome 5 Free";
    content: "\f073";
	color: #821b64;
    font-weight: 600;
	margin-right: 0.5em;
}

.latest-schedule__meta .time::before {
    font-family: "Font Awesome 5 Free";
    content: "\f017";
	color: #821b64;
    font-weight: 600;
	margin-right: 0.5em;
}

.latest-schedule__meta .venue::before {
    font-family: "Font Awesome 5 Free";
    content: "\f015";
	color: #821b64;
    font-weight: 600;
	margin-right: 0.5em;
}

/* schedule リンクボタン */

.latest-schedule__link {
  position: absolute;
  bottom: -40px;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

.latest-schedule__link a {
  color: #0000ee;
  text-decoration: underline !important;
}

.latest-schedule__link a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  line-height: 1;
}

/* greeting */

.greeting {
	position: relative;
	z-index: 2;
	text-align: center;
}

.greeting p {
	font-size: var(--fs-12);
}

.greeting a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 20px auto 0;
	font-size: var(--fs-12);
	color: #fff3fa;
	font-weight: bold;
	background: #821b64;
	border-radius: 999px;
	padding: 1em 3em;
	width: fit-content;
}


.greeting_a_arrow {
	margin-top: 0.1em;
    margin-left: 1em;
	font-size: var(--fs-06);
}

/* content_before_second内・margin-bottom一括指定 */

.schedule {
	margin-bottom: 120px;
}

h2.schedule_heading ,
.schedule h3 ,
h2.greeting_heading {
	margin-bottom: 40px;
}

.greeting h3 {
	margin-bottom: 20px;
}

.schedule img ,
.schedule h4 ,
.latest-schedule__meta ,
.greeting p {
	margin-bottom: 10px;
}


/************************************
** 新着情報
************************************/

.news {
	position: relative;
	z-index: 2;
	padding: 60px 0 ;
}

.news__heading {
	font-size: var(--fs-10);
}

.news__heading::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0f3";
  margin-right: 0.5em;
}

.news__list {
	width: 70vw;
	max-width: 1200px;
}

.news__item a {
	display: flex;
	color: #821b64;
}

.news__title {
	font-size: var(--fs-09);
}

.news__date {
	font-size: var(--fs-09);
	margin-right: 1em;
	font-weight: 700;
}

/* news内・margin-bottom一括指定 */

h2.news__heading ,
.news__list li {
	margin-bottom: 10px;
}

.news__list li:last-child {
	margin-bottom: 0;
}

/* chorus_recruit_lower */

.chorus_recruit_lower {
	margin-bottom: 60px;
}


/************************************
** decoration
************************************/

#widebox_01 ,
#widebox_02 ,
#widebox_03 { 
	position: relative;
	z-index: auto;
}

#widebox_03 {
	overflow-x: clip;
}

.cut-decoA {
  --cut-width: clamp(420px, 36vw, 500px); /* 幅を400〜500pxに制限 */
  width: var(--cut-width);
  height: auto;
  position: absolute;
  pointer-events: none;
  z-index: 1;
  opacity: 1;

  /* 幅に比例して動き、400px〜500pxでストップ */
  bottom: calc(var(--cut-width) * -1 / 3);
  left:   calc(var(--cut-width) * -1 / 12);
}

.cut-decoB {
  --cut-width-b: clamp(292px, 25vw, 417px);  /* 幅を292〜417pxに制限 */
  width: var(--cut-width-b);
  height: auto;
  position: absolute;
  pointer-events: none;
  z-index: 1;
  opacity: 0.5;

  /* 幅に比例して動き、292〜417pxの範囲でストップ */
  left:   calc(var(--cut-width-b) * -0.4);  /* -40% */
  bottom: calc(var(--cut-width-b) *  0.2);  /* 20% */
}

.cut-decoC {
  --cut-width-c: clamp(450px, 35vw, 600px); /* 幅を450〜600pxに制限 */
  width: var(--cut-width-c);
  height: auto;
  position: absolute;
  pointer-events: none;
  z-index: 1;
  opacity: 1;

  /* 幅に比例して動き、450〜600pxでストップ */
  bottom: calc(var(--cut-width-c) * 0.45);
  right:  calc(var(--cut-width-c) * -0.429);
}

/************************************
** 記事一覧
************************************/

.ect-3-columns ,
.rect-vertical-card .related-list {
	justify-content: space-between;
}

.related-list {
	margin-bottom: 0;
}

.ect-3-columns .entry-card-wrap ,
.rect-vertical-card-3 .related-entry-card-wrap {
    width: 30%;
	padding: 0;
	margin-bottom: 4vw;
}

.entry-card-title ,
.related-entry-card-title {
    font-size: var(--fs-11);
    margin: 0 0 1.4em 0;
    line-height: 1.8;
    font-weight: 600;
}

.ect-vertical-card .entry-card-wrap .entry-card-thumb {
 	position: static;
    width: 100%;
    float: none;
	margin: 0;
}

.entry-card-thumb .cat-label ,
.related-entry-card .related-entry-card-thumb .cat-label {
    left: 5%;
    top: -14px;
	border: 1px solid #000;
    font-size: var(--fs-08);
    padding: 0.6em 0.6em 0.6em 1.8em;
    line-height: 1;
    font-weight: 600;
}

.entry-card-thumb .cat-label:before ,
.related-entry-card .related-entry-card-thumb .cat-label:before {
    position: absolute;
	content: "";
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	border-radius: 50%;
	background: #9B7A1E;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0.6em;
}
	
.ect-vertical-card .entry-card-wrap .entry-card-content ,
.rect-vertical-card .related-entry-card-content {
	margin-top: -7.5px;
	padding: 1.6em;
}

.entry-card .entry-date ,
.related-entry-card .post-date {
    display: inline-block;
	margin: 0;
	font-size: var(--fs-08);
}

/* トップページのみサイドバー表示に準ずる指定 */

.home .ect-3-columns .entry-card-wrap {
	width: calc( 50% - 2vw); 
	margin-bottom: 4vw;
}

/* 記事一覧：トップページ・関連記事 */

#list, .list-wrap {
	margin-bottom: 0;
}

.related-entry-card {
	background: #fff3fa;
}

.rect-vertical-card .related-entry-card-title {
	font-size: var(--fs-10);
}

.home #list:after ,
.related-list:after {
    content:"";
    display: block;
    width:30%;
}

#list_container {
	display: flex
}

#list_container h2#latest_article {
    font-size: var(--fs-12);
    font-weight: 600;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.15em;
    margin-right: 3vw;
    line-height: 1;
}

#list_container h2#latest_article .fa-dot-circle:before {
	margin-bottom: 0.3em;
}

.all_post_link {
	padding: 0 0 4vw calc( 3vw + 20px );
	text-align: center;
}

.all_post_link a {
    display: inline-block;
    background: #821b64;
	color: #fff3fa;
    border-radius: 999px;
    padding: 1em 3em;
    font-weight: 600;
	font-size: var(--fs-11);
    letter-spacing: 0.05em;
}

.all_post_link a i {
	font-weight: 600;
	margin-right: 0.45em;
}

aside#related-entries {
	margin: 0 auto;
	width: 90%;
	max-width: 1200px;
}


/************************************
** テーブル
************************************/

table tr th, table tr td, h2, h3 {
    transform: unset;
}

.table_container {
	max-width: 99.9%;
	max-height: 99.9%;
	overflow-x: auto;
	overflow-y: hidden !important;
	margin-bottom: 2.4em;
}

.table_container table{
	width: 100%;
	white-space: nowrap;
	margin: 0;
}

.table_container:last-child table {
	margin: 0;
}

table th , table td {
	border: none;
	border-bottom: 6px solid #fff3fa;
	font-size: var(--fs-10);
	text-align: center;
	padding: 1em 0;
	min-width: 90px;
}

/*** テーブル：外枠線の消去 ***/

table tr:first-child th , table tr:first-child td {
	border-top: none;	
}

table tr th:first-child , table td:first-child {
	border-left: none;	
}

table tr th:last-child , table td:last-child {
	border-right: none;	
}

table tr:last-child th , table tr:last-child td {
	border-bottom: none;		
}

body.single-post table tr:first-child th ,
body.single-post table tr:first-child td ,
body.page table tr:first-child td ,
body.page table tr:first-child td {
	background: #3B9A9A;
    font-weight: 600;
	text-align: center;
	padding: 0.75em 1em;
}

table .red {
	vertical-align: text-bottom;
	text-decoration: underline;
    text-underline-offset: 0.3em;
}


/*** テーブル：１列目 ***/

table tbody tr td:first-child {
	white-space: nowrap;
	text-align: center;
	position: sticky;
    top: 0;
    left: 0;
	z-index: +1;
	font-weight: 600;
}

table tbody tr td:first-child:after {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-right: 6px solid #fff3fa;
}

/*** 分析テーブル：３行目以降・奇数行の背景色 ***/

table tbody tr:nth-child(odd) td {
	background: #FFF7E9;
}

/*** th,tdの親CSS無効化 ***/

table:not(.has-border-color) :where(th, td) {
	border: none;
	padding: 1em 0;
}

/************************************
** 投稿記事	/ 固定ページ 基本レイアウト
************************************/

/*** 固定ページ：タイトル ***/

body.page article h1.entry-title {
	margin: 0;
    padding: 4vw 0;
    line-height: 1.8;
    font-weight: 600;
    font-size: var(--fs-20);
}

body.page article .sub_title {
    display: inline-block;
	font-weight: 600;
	line-height: 1;
    padding: 0.5em;
	margin: 0;
    background: #BB9A3C;
	color: #fff;
}

body.page .eye-catch-wrap {
	margin-top: 0;
}

/*** article ***/

body.single-post main > article.article ,
body.page main > article.article {
    position: relative;
	margin: 0 auto 3.6em;
	padding:0 17.5%;
}

body.single-post p ,
body.single-post h2 ,
body.single-post h3 ,
body.single-post h4 ,
body.single-post h5 {
	color: #000;
}

.is-style-primary-box, .primary-box, .sp-primary, .primary , .is-style-secondary-box, .secondary-box {
	color: #000;
    font-size: var(--fs-10);
    background: none;
    border: none;
    padding: 0;
    border-radius: none;
    margin-bottom: 20px;
}

/*** 投稿記事：タイトル ***/

body.single-post article h1.entry-title {
	margin: 0;
	padding: 4vw 0;
	line-height: 1.8;
    font-weight: 600;
    font-size: var(--fs-20);
}

body.single-post #date_and_categories {
	display: flex;
    align-items: center;
}

.date-tags {
    line-height: 1;
    text-align: left;
    border-right: 1px solid rgba(47,47,47, .3);
    padding-right: 1.5em;
}

body.single-post #date_and_categories ul {
	display: flex;
	margin: 0;
}


body.single-post #date_and_categories ul li a {
    font-size: var(--fs-09);
   padding: 0.75em 1.5em;
}

body.single-post #date_and_categories ul li:after {
	font-family: 'Font Awesome 5 Free';
	content: '\f105';
    font-weight: 600;
    color: rgba(47,47,47, .3);	
}

body.single-post #date_and_categories ul li:last-child:after {
	content: none;
}

body.single-post .entry-date {
	margin-left: 0;
    font-size: var(--fs-09);
}

body.single-post .post-date {
	margin-right: 0;
	vertical-align: bottom;
}

body.single-post .entry-categories-tags > div , body.single-post .entry-categories-tags , body.single-post .date-tags {
	margin-bottom: 0;
}

body.single-post ul.entry-categories {
	display: flex;
	align-items: center;
	margin-bottom: 0;
}

body.single-post .entry-categories .cat-link {
    font-size: var(--fs-09);
	font-weight: 600;
	color: #0CC0DF;
    margin: 0;
	padding: 0;
    background: none;
}

body.single-post ul.entry-categories li:nth-of-type(2) a:before {
    font-family: "Font Awesome 6 Free";
	content: "\f054";
	font-weight: 600;
	color: rgba(47,47,47, .3);
	padding: 0 1em;
}

.eye-catch-wrap {
	margin: 4vw 0;
}

/*** 投稿記事本文 ***/

body.single-post .entry-content a {
	text-decoration: underline;
	color: #0000ee;
}

body.single-post .entry-content a .blogcard {
	color: #000;
}

/*** 投稿記事・固定ページ：h2 ***/

body.single-post .article h2 ,
.page-template-default .article h2 {
	display: flex;
    align-items: baseline;
    width: 100%;
	margin: 4vw 0 28.8px;
    padding: 28.8px 0;	
    background: none;
    border-top: 1px solid rgba(47,47,47, .2);
    border-bottom: 1px solid rgba(47,47,47, .2);
    line-height: 1.8;
    font-size: var(--fs-18);
}

/*** 投稿記事：h3 ***/

body.single-post h3 {
   border: none;
   padding: 0;
    font-size: var(--fs-14);
   font-weight: 600;
   margin-bottom: 28.8px;
}


/*** 投稿記事：dl ***/

body.single-post dl {
	margin-bottom: 2.4em;
}

body.single-post dl.overview dt {
	display: flex;
    align-items: center;
	position: relative;
    border: none;
    margin: 1.8em 0 1.2em;
	font-weight: 600;
}

body.single-post dl.overview dt:before {
    content: "";
    display: inline-block;
    height: 0.5em;
    margin-right: 0.6em;
    width: 0.5em;
    background: #000;
}

dl.overview dd:before {
  margin-right: 1em; /* 文字の右隣 */
}

h2 span.denomination:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
	margin: 0 0.75em;
}


/*** 投稿記事：画像・リンク ***/

body.single-post .entry-content img.size-large {
	width: 75%;
}

body.page .blogcard-wrap ,
body.single-post .blogcard-wrap {
	margin-left: 0;
}

/*** 投稿記事： シェアボタン ***/

#main #side_sns_area {
	position: absolute;
	left: 0;
	top: 0;
    display: block;
	height: 100%;
	text-align: center;
}

#main .sns-share-buttons , #main .sns-follow-buttons {
	display: flex;
    flex-flow: column;
	justify-content: center; /*中央寄せ*/
}

#main .sns-share a {
	margin-bottom: 1.5em;
}

#main .sns-share a:last-child {
	margin-bottom: 0;
}

.sns-share-message, .sns-follow-message {
	margin-bottom: 1.5em;
}

.sns-share, .sns-follow {
	margin: 0;
}

.icon-x-corp:before {
	content:"Ｘ";
	font-weight: bold;
}


/*SNSシェアボタン*/

.sns-share-message , .sns-follow-message {
    font-weight: 600;
    color: #875d5b;
    line-height: 2.25;
    font-size: var(--fs-09);
}
.sns-share-buttons a {
	border-radius: 50%;
    font-size: var(--fs-12);
	margin: 0;
}
#main .sns-share a {
	width: 2.75rem;
	height: 2.75rem;
}

.bc-brand-color-white.sns-share a, .bc-brand-color-white.sns-follow a {
	border: none;
}

.social-icon {
	color: rgba(47,47,47, .4);
}

.bc-brand-color-white.sns-share a:hover, .bc-brand-color-white.sns-follow a:hover {
	opacity: 1;
}

.bc-brand-color-white.sns-share a:hover .social-icon , .bc-brand-color-white.sns-follow a:hover .social-icon {
	color: #000;
}

/*SNSフォローボタン*/

.sns-follow-message{
	font-weight: bold;
	color: #875d5b;
}
.sns-follow-buttons {
	justify-content: center;
}
.sns-follow-buttons a {
	border-radius: 50%;
    font-size: var(--fs-12);
	margin: 0 ;
}
#main .sns-follow a {
	width: 2.5rem; 
	height: 2.5rem;
}

/* 投稿記事本文下のカテゴリーリンク */

body.single-post footer.article-footer {
	margin-bottom: 1.8em:
}

.footer_cat_link {
	margin-bottom: 3.6em;
	text-align: center;
}

.footer_cat_link a {
	display: inline-block;
	padding: 1em;
	font-weight: 600;
}

/************************************
** 固定ページ 本文デザイン
************************************/

.page_design__boxtype_1 {
	background: #fff;
	padding: 43.2px;
}

.page_design__boxtype_1 p:last-child {
	margin-bottom: 0;
}

.annotation {
	display: block;
}

.bg_wine {
  display: inline-block;
  background-color: #821b64;
  color: #fff;
  padding: 0.25em 0.5em;
  line-height: 1.2;
	border-radius: 6px;
	margin-right: 1em;
}

.page_introduction {
	background: #fff;
	padding: 40px
}

.page_introduction p:last-child {
	margin-bottom: 0;
}

/************************************
** 固定ページ 合唱団紹介ページ
************************************/

.conductor_profile {
	margin-bottom: 28.8px;
	border-bottom: 1px solid rgba(47,47,47, .2);
}

.conductor_name {
	display: flex;
	margin-bottom: 28.8px;
}

.conductor_name p {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start; 
	font-weight: bold;
}

.conductor_name p span:first-child {
	display: inline-block;
	font-size: var(--fs-10);
	background: #821b64;
	color: #fff;
	padding: 0em 0.4em;
	border-radius: 6px;
	margin-bottom: 10px;
}

.conductor_name p span:last-child {
	font-size: var(--fs-14);
}

.conductor_name img {
  width: 225px;
  flex-shrink: 0;
  border-radius: 6px;
}

.greetingpage_links {
	display: flex;
}

.greetingpage_links a {
	margin-right: 3em;
	color: #0000ee;
    text-decoration: underline !important;
}

.greetingpage_links a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  line-height: 1;
}

/************************************
** 固定ページ：団員の声ページ
************************************/

.page-id-5621 .page_introduction {
	margin-bottom: 3.6em;
}

.page-id-5621 .article h3 {
	border: none;
	font-size: 1.2rem;
	padding: 0;
}

.page-id-5621 .entry-content .wp-block-columns {
	border-bottom: 1px solid rgba(47,47,47, .2);
	margin-bottom: 3.6em;
	padding-bottom: 3.6em;
}

.page-id-5621 .entry-content .wp-block-columns:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.page-id-5621 .entry-content .wp-block-columns img {
	border-radius: 6px;
}

.members_voice_heading:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;             
	content: "\f007";          
	margin-right: 0.5em;
	color: #821b64; 
}

/************************************
** 固定ページ：活動履歴ページ
************************************/

.past-concert-box {
	display: flex;
}

.past-concert-left {
	width: 60%;
	padding-right: 40px;
}

.past-concert-right {
	width: 40%;
	text-align: right;
}

.past-concert-right img {
	display: inline-block;
	width: 100%;
	max-width: 250px;
	height: auto;
	margin-bottom: 1.8em;
}

.past-concert-right img:last-child {
	margin-bottom: 0;
}

.article .past-concert-box dt {
	display: inline-block;
	background: #BB9A3C;
    color: #fff;
	padding: 0 0.5em;
	border-radius: 4px;
}

.article .past-concert-box dd {
	margin-left: 0;
	padding: 1em 0;
}

/* 開閉ボタン用スタイル（フラット） */
.history-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  padding: 0.6em 1.4em;
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(135deg, #821b64, #5c0f48); /* ブランドカラー濃淡 */
  border: none;       /* ボーダー無し */
  border-radius: 30px;
  cursor: pointer;
  transition: background 0.25s ease, transform 0.2s ease;
  position: relative;
}

/* 矢印アイコン */
.history-toggle::after {
  content: "▼";
  font-size: 0.9rem;
  color: #fff;
  transition: transform 0.3s ease;
}

/* hover時（色だけ変化） */
.history-toggle:hover {
  background: linear-gradient(135deg, #9a2780, #6e1655);
  transform: translateY(-1px);
}

/* 押した時 */
.history-toggle:active {
  transform: translateY(1px);
}

/* フォーカス時（ブラウザ標準アウトラインを使用） */
.history-toggle:focus {
  outline: auto;
}

/* 開いた状態では矢印を上向きに */
.history-toggle[aria-expanded="true"]::after {
  transform: rotate(180deg);
}


/************************************
** 固定ページ：問い合わせページ
************************************/

.contact_link {
	display: flex;
	flex-direction: column;
}

.contact_link p {
	display: inline-block;
	width: fit-content;
}

.contact_link p i {
	margin-right: 0.45em;
}

.contact_link p a {
	color: #44b0b0;
	font-weight: 600;
	border-bottom: 1px solid;
}

.page-id-464 .entry-content {
	margin-top: 0;
}

input[type='submit'] {
	font-family: "Noto Sans JP" ,sans-serif;
}

.entry-content form p input {
	margin-bottom: 0.9em;
}

.entry-content .submit_button {
	margin-bottom: 2.7em;
	width: 50%;
}

.submit_button .back {
	background: rgba(47,47,47,0.5);
	margin-bottom: 1.8em;
}


/************************************
** 固定ページ：Contact
************************************/

.submit_button {
	margin: 0 0 3.6em;
}

input[type='submit'] {
    border: none;
    background-color: #000;
    color: #fff;
    font-size: var(--fs-10);
    letter-spacing: 0.2em;
    font-weight: 600;
}

input[type='submit'], #bbp_reply_submit, .bp-login-widget-register-link a {
	padding: 1em;
}

form p input {
	margin-bottom: 2.1em;
}

form .check_box {
	margin: 2.7em 0;
}

form p.recaptha {
    margin-bottom: 0;
    padding: 2em;
    background: #fff;
    font-size: var(--fs-09);
}

form p.contact_input , form p.contact_question  {
	display: flex;
	align-items: center;
}

form p.contact_input:before , form p.contact_question:before {
	content: "";
    display: inline-block;
    height: 0.5em;
    margin-right: 0.45em;
    width: 0.5em;
    background: #000;
	margin-top: 1px;
}

.mw_wp_form_preview .check_box {
	display: none;
} 

.contact_red {
	font-size: var(--fs-14);
	color: #ff0000;
}

/************************************
** 投稿記事：演奏会のお知らせ
************************************/

.concert_2026_introduction {
	text-align: center;
	background: #fff;
	padding: 40px;
}

.concert_2026_introduction p.heading {
	font-size: var(--fs-16);
	margin-bottom: 28.8px;
}

.concert_2026_introduction p:last-child {
	margin-bottom: 0;
}

.concert_2026_detail {
	text-align: center;
}

.concert_2026_detail p {
	font-size: var(--fs-11);
}

.concert_2026_detail_box_a p {
	font-size: var(--fs-12);
}

.concert_2026_introduction ,
.concert_2026_detail_box_b ,
.mb_36em {
	margin-bottom: 4.8em ;
}

.concert_2026_requruiting_area {
	margin-top: 4vw;
}

.concert_2026_info p span:first-child {
	display: inline-block;
    background: #BB9A3C;
    color: #fff;
    padding: 0 0.5em;
	margin-right: 1em;
    border-radius: 4px;
}

/************************************
** ブロックエディタ
************************************/

/* ブロックエディタ上でのグループ化で付与される、cssクラスのリセット */

body .is-layout-constrained > * + * {
	margin-block-start: 0;
}

/************************************
** サイト内検索
************************************/

.archive-header .search-box {
    margin: 0;
	padding: 40px 0;	
}

.search-submit {
	color: #000;
	background: #fff;
}


/************************************
** フッター
************************************/

#footer {
    margin: 0 ;
    padding: 40px 0;
}

footer.footer ,  footer .footer-bottom {
    padding: 0;
}

.footer-bottom {
	margin: 0;
    font-size: var(--fs-08);
}

.footer-bottom-logo {
	float: none;
	position: relative;
	line-height: 1;
}

.footer-bottom-content {
	float: none;
    text-align: center;
}

.footer-bottom-logo img {
	height: 50px;
}

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


/************************************
** アーカイブページ
************************************/

body.archive .content {
	margin-top: 0;
	padding-top: 61.5px;
}

#main .archive-content {
	display: flex;
	align-items: center;
	margin-bottom: 1em;
}

.archive-content #archive-title ,
.page-template-page-all_post #archive-title  {
	margin: 0;
    padding: 4vw 0;
    line-height: 1.8;
    font-weight: 600;
    font-size: var(--fs-24);
}

body.archive .archive-header .sub_title ,
body.tag .archive-content .article-header p {
    display: inline-block;
	font-weight: 600;
	line-height: 1;
    padding: 0.5em;
	margin: 0;
	color: #fff;
    background: #9B7A1E;
}

.archive-content .entry-content {
    margin: 0;
}

.archive-content .entry-content p {
    font-size: var(--fs-09);
	padding-top: 0.1em;
	margin: 0;
}

.archive #list:after {
    content:"";
    display: block;
    width:30%;
}

.archive-content .article-header p {
	margin-bottom: 0.9em;
    font-size: var(--fs-09);
}

/************************************
** ページネーション
************************************/

.pagination {
	margin: 0 0 3.6em;
}

.pagination-next {
	margin: 0;
}

.pagination .current {
	background: #000;
	color: #fff;
}
.page-numbers, .pagination-next-link {
    border-style: none;
}

.page-numbers {
	background: #fff;
	border: 1px solid rgba(47,47,47,0.2);
}

/************************************
** wide mobile
************************************/

.wide {
		display: block;
}

.mobile {
		display: none;
}

/************************************
** レスポンシブ
************************************/

/*** header sub_title navi 調整 1080px ***/

@media screen and (max-width: 1080px){
	
	#header p.sub_title {
		display: none;
	}
	
	#navi .navi-in a {
		font-size: var(--fs-08);
	}
	
}

/*** タブレット：1023px ***/

@media screen and (max-width: 1023px){
	
	/* 1023 wide mobile */
	
	.wide {
		display: none;
	}

	.mobile {
		display: block;
	}

	/* 1023 wrap */
	
	.inner_wrap {
		width: 90%;
		margin: 0 auto;
	}
	
	/* 1023 ヘッダーメニュー */
	
	.navi-in .menu-pc {
		display: flex;
	}
	
	/* 1023 content_before */
	
	#content_before {
		flex-direction: column;
		padding: max(6vw,40px) 0 max(21vw,120px);
	}
	
	#content_before .L_box {
		width: 100%;
		margin: 0;
	}
	
	/*1023 schedule  */
	
	.schedule {
		flex-direction: column;
	}

	.news__list {
	    width: 100%;	
	}

	/* 1023 sidebar */

	.home #sidebar .side_link_banner a {
		margin-bottom: 40px;
	}
		
	/* 1023 新着記事 */
	
	#list_container ,
	.latest_post {
		display: block;
	}

	#list_container h2#latest_article ,
	.latest_post > h2 {
		writing-mode: horizontal-tb;
		margin-bottom: 30px;
		margin-right: 0;
	}
	
	#list_container h2#latest_article ,
	.latest_post > h2 {
		margin-bottom: 40px;
	}
	
	#content_before_second .fa-dot-circle:before ,
	#list_container h2#latest_article .fa-dot-circle:before ,
	.latest_post > h2 .fa-dot-circle:before {
        margin: 0 0.3em 0 0;
	}

	/* 1023 記事一覧：トップページ・関連記事 */
	
	.ect-vertical-card .entry-card-wrap .entry-card-content ,
	.rect-vertical-card .related-entry-card-content {
		padding: 1.4em;
	}
	
	.entry-card .entry-date ,
	.related-entry-card .post-date {
		padding: 1.4em;
	}
	
	main.main, div.sidebar {
		padding: 0;	
	}
	
	body.single-post main > article {
		width: auto;
	}

	.all_post_link {
		margin-top: calc( 40px - 4vw);
		padding: 0 0 40px;
	}
	
	.archive .ect-3-columns .entry-card-wrap ,
	.rect-vertical-card-3 .related-entry-card-wrap {
		width: calc( 50% - 2vw);
		
	}
		
	/* サイドバー・及び関係する要素 */
	
	.home #content-in {
		display: block;
	}
	
	.home #sidebar {
		max-width: 100%;
		width: 100%;
		margin: 0 0 40px 0;
		padding: 40px;
	}
	
	.home div.sidebar {
		margin: 0;
	}
	
	/* 1023 投稿記事・固定ページ */
	
	body.single-post #date_and_categories ul li a {
		padding: 0;
	}
	
	body.single-post #date_and_categories ul li:after {
		margin: 0 1.5em;
	}
		
	body.single-post article h1.entry-title ,
	body.page article h1.entry-title {
		padding: 40px 0;
	}
	
	body.single-post .article h2 ,
	.page-template-default .article h2 ,
	.article .status > h2 {
		margin-top: 60px;		
	}
	
	body.single-post main > article.article ,
	body.page main > article.article {
		padding: 0;
	}
	
	.eye-catch-wrap {
		margin: 40px 0;
	}

	.entry-content .inside_link {
		margin-bottom: 40px;
	}

	
	/* 1023 投稿記事：table */
	
	.table_container {
        overflow-y: hidden !important;
	}
	
	
	/* snsシェアボタン */
	
	#main #side_sns_area {
		position: relative;
		max-width: 600px;
		margin: 0 auto 3.6em;
		padding: 40px;
		background: rgba(47,47,47,0.1);
	}
	
	#main .sns-share-buttons ,
	#main .sns-follow-buttons {
		display: flex;
		flex-flow: row;
		justify-content: space-between;
	}
	
	#main .sns-share a {
		margin: 0;
	}
	
	#main .sns-share a:last-child {
		margin-right: 0;
	}
	
	/* 1023 演奏会のお知らせ */
	
	.concert_2026_requruiting_area {
		margin-top: 40px;
	}

	.latest_post > h2 {
		align-items: baseline;
		line-height: 1.8;
	}
	
	.latest_post > h2 .fa-dot-circle:before {
		margin-top: 0;
	}

	/* 1023 アーカイブページ */
	
	.archive-content #archive-title,
	.page-template-page-all_post #archive-title {
		padding: 40px 0;
	}
	
	body.archive .content {
		padding-top: 71px;
	}


	/* モバイルメニュー */
	
	.mobile-menu-buttons {
		align-items: center;
	}
	
	.mobile-menu-buttons .menu-caption {
		display: none;
	}
	
	.mobile-menu-buttons {
		font-size: var(--fs-12);
	}
	
	.mobile-menu-buttons > li {
		padding-top: 0;
	}
	
		/**** 1023 active リセット ****/
	
		*:focus {
			outline: none;
		}
	
	    ul.mobile-footer-menu-buttons li.search-menu-button ,
	    ul.mobile-footer-menu-buttons li.navi-menu-button {
			tap-highlight-color:rgba(0,0,0,0);
			-webkit-tap-highlight-color:rgba(0,0,0,0);
			cursor:pointer;
		}
	
	    .bc-brand-color-white.sns-share a:hover .social-icon ,
        .bc-brand-color-white.sns-follow a:hover .social-icon {
			color: rgba(47,47,47, .4);
        }

	    .menu-drawer a {
			tap-highlight-color: rgba( 255 , 255 , 255 , 0.5) ;
			-webkit-tap-highlight-color: rgba( 255 , 255 , 255 , 0.5) ;
		}
	
		/**** 1023 hover カーソルポインター有のみ ****/
	
		@media (hover: hover) and (pointer: fine) {
		
			/* アンダーライン */

			.ect-3-columns a.entry-card-wrap:hover .entry-card-title ,
			.rect-vertical-card-3 a.related-entry-card-wrap:hover .related-entry-card-title ,
			body.single-post #date_and_categories div a:hover {
				text-decoration: underline;	
			}
		
			/* 文字色変化 */
			
	        .bc-brand-color-white.sns-share a:hover .social-icon ,
			.bc-brand-color-white.sns-follow a:hover .social-icon {
				color: #000;
			}
		
			.contact_link a:hover {
				color: #94D5D5;
				transition: all .3s ease 0s;
			}
		
			.pagination a:hover {
				color: #fff;
				background: #000;
			}
			
			/* 戻り */

			.contact_link a {
				transition: all .3s ease 0s;
			}

		
		}

	
}


/* 834px以下のメディアクエリ：リセット */

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

	/* 834 ヘッダー */

	.header-container-in.hlt-top-menu .header .header-in, .header-container-in.hlt-top-menu .header .logo-text {
		display: flex;
		height: auto;
	}
	
	/* 834 ヘッダーメニュー */
	
	.navi-in .menu-pc {
		display: none;
	}
	
	.article ul, .article ol {
		padding-left: 0;
	}
	
	.blogcard-title {
		margin-bottom: 0.4em;
	}
	
	/* deco */
	
	.cut-decoA {
		--cut-width:70vw;
	}
	
	/* 記事一覧 */
	
	.entry-card-title, .related-entry-card-title {
		font-size: var(--fs-10);
	}
	
	/* 各ページタイトル font-size */
	
	body.single-post article h1.entry-title ,
	body.page article h1.entry-title {
		font-size: var(--fs-16);
	}
	
	body.single-post .article h2 ,
	.page-template-default .article h2 {
		font-size: var(--fs-14);		
	}

}


/* スマホ用のブレイクポイント：600px以下 */

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

	/* 600 sidebar */

	.home #sidebar {
		padding: 40px 0;
		margin: 0;
		background: #fff3fa;
	}

	.home #sidebar .side_link_banner a {
		margin-bottom: 20px;
	}
	
	/* sp pc での表示切替 */
	
	i.i_sp {
		display: inline-block;
	}
	
	i.i_pc {
		display: none;
	}
	
	/* 600 top_background 調整 */
	
	.top_background {
		background-position: 52.5% 50%;
	}
	
	/* 600 ヘッダー直下の余白対処 */

	#header-container-in {
		padding: 0.9em 0;
	}
		
	/* 600 記事一覧 */
	
	.home .entry-card ,
	.entry-card ,
	.related-entry-card ,
	.entry-content .status .a-wrap h2.entry-card-title {
		background: none !important;
	}

	.entry-card-thumb span.cat-label ,
	.related-entry-card-thumb span.cat-label {
		display: none;
	}
	
	.entry-card-meta span.cat-label ,
	.related-entry-card-meta  span.cat-label {
		display: inline-block;
	}
	
	
	.ect-vertical-card .entry-card-wrap .entry-card-content ,
	.rect-vertical-card .related-entry-card-content ,
	.entry-content .status .a-wrap .entry-card-content {
		display: flex;
		flex-direction: column;
		flex: 1;
		padding: 0;
		margin: 0;
	}
	
	.ect-vertical-card .entry-card-wrap .entry-card-thumb ,
	.rect-vertical-card .related-entry-card-thumb ,
	.entry-content .status .a-wrap .entry-card-thumb {
		width: clamp( 100px , 25% , 160px );
		padding-left: 10px;
		line-height: 1;	
	}
	
	.home .ect-3-columns .entry-card-wrap ,
	.archive .ect-3-columns .entry-card-wrap ,
	.rect-vertical-card-3 .related-entry-card-wrap ,
	.entry-content .status .a-wrap {
		width: 100%;
		margin: 0;
		padding: 15px 0;
		border-bottom: 1px solid rgba(47,47,47,0.2);
	}
	
	.home .ect-3-columns .entry-card-wrap:first-child ,
	.archive .ect-3-columns .entry-card-wrap:first-child ,
	.rect-vertical-card-3 .related-entry-card-wrap:first-child ,
	.entry-content .status .a-wrap:first-child {
		border-top: 1px solid rgba(47,47,47,0.2);
	}
	
	article.entry-card ,
	article.related-entry-card {
		display: flex;
		flex-direction: row-reverse !important;
	}
	
	.entry-card-title ,
	body.single-post h3.related-entry-card-title ,
	.entry-content .status .a-wrap h2.entry-card-title {
		font-weight: 600;
		line-height: 1.6;
		margin: 0 0 10px;
	}
	
	.entry-card-meta ,
	.related-entry-card-meta {
		display: flex;
		align-items: center;
		justify-content: space-between;
		position: static;
		margin: auto 0 0;
	}
		
	.entry-card .entry-date ,
	.related-entry-card .post-date {
		padding: 0;
	}
	
	.cat-label ,
	.related-entry-card .cat-label {
		position: static;
		background: none;
		color: #821b64;
		border: none;
		font-weight: 600;
		padding: 0;
		max-width: 100%;
	}
	
	.all_post_link {
		padding: 40px 0;
		margin: 0;
	}
	
	/* 600 合唱団紹介ページ  */

	.conductor_name ,
	.greetingpage_links {
		flex-direction: column;
	}
	
	.greetingpage_links a {
		margin-bottom: 28.8px;
	}
	
	.greetingpage_links a:last-child {
		margin-bottom: 0;
	}
	
	.conductor_name img {
		width: 100%;
	}
	
	.pagination {
		margin-top: 1.8em;
	}
	
	/* 600 活動履歴ページ */
	
	.past-concert-box {
		flex-direction: column;
	}
	
	.past-concert-left ,
	.past-concert-right {
		width: 100%;
	}
	
	.past-concert-right img {
		max-width: 100%;
	}
	
	dl.past-concert-meta {
		margin-bottom: 0;
	}
	
	.past-concert-right img:last-child {
		margin-bottom: 1.8em;
	}
	
	/* 600 投稿記事：投稿日・カテゴリー */
	
	body.single-post #date_and_categories {
		display: block;
	}
	
	body.single-post .date-tags {
		display: none; 
	}
	
	body.single-post #date_sp .date-tags {
		display: block; 
		margin: 0 0 clamp( 36px , 4vw , 64px ) 0 ;
		padding: 0;
		border: none;
		text-align: right;
	}
	
	/* 600 投稿記事：本文 */
	
	body.single-post .content , 
	body.page .content {
		padding-top: clamp( calc( 36px + 65px ) , calc( 4vw + 65px ) , calc( 64px + 65px ) ) ;
	}
	
	/* 600 SNSシェアボタン */
	
	#main #side_sns_area {
		padding: 8vw;
	}
	
	#main .sns-share a {
        background: none;
	}

	#main .sns-share a span {
		padding: 1em;
        background: #fff;
		border-radius: 50%;
	}
	

	/* アーカイブ */
	
	body.archive .content {
		padding-top: clamp( 36px, 4vw , 64px );
	}
	
	body.archive #breadcrumb_container {
		margin-top: 36px;
	}
	
	/* 問い合わせページ */
	
	.submit_button {
		width: 100%;
	}
	
}

@media screen and (max-width: 480px) {
	
	.cat-label {
		font-size: 0.7rem;
		padding: 0;
	}
	
	.page-numbers {
		line-height: 32px;
	}
	
}

@media screen and (max-width: 356px) {
	.ect-vertical-card .entry-card-wrap ,
	.rect-vertical-card .related-entry-card-wrap ,
	.ect-2-columns > * ,
	.ect-3-columns > * ,
	.fpt-2-columns > * ,
	.fpt-3-columns > * {
        width: 100% !important;
    }
	
}

@media screen and (min-width: 1650px) {
	
	.home #content-in {
		padding-top: 60px;
	}
	
	.home .ect-3-columns .entry-card-wrap ,
	.entry-content .status .a-wrap {
		width: calc( 50% - 30px);
	}
	
	.ect-3-columns .entry-card-wrap,
	.home .ect-3-columns .entry-card-wrap ,
	.rect-vertical-card-3 .related-entry-card-wrap {
		margin-bottom: 60px;
	}
	
	.all_post_link {
		padding: 0 0 66px 70px;
	}
	
	.home #sidebar {
		margin: 0 0 60px 60px;
		padding: 30px;
	}
			
	/* 1650 投稿・固定ページ・アーカイブページ */
	
	body.page article h1.entry-title ,
	body.single-post article h1.entry-title ,
	.archive-content #archive-title ,
	.page-template-page-all_post #archive-title {
		padding: 60px 0;
	}
	
	.eye-catch-wrap {
		margin: 60px 0;
	}


}