@charset "utf-8";
/*
Template: jstork19
Theme Name: stork19_custom
Theme URI:http://open-cage.com/stork19/
Version: 1.3.0
Author: opencage
Author URI: https://open-cage.com/
*/

@font-face {
  font-family: 'IcoMoon-Free';
  src:  url('fonts/IcoMoon-Free.eot?mgf7b4');
  src:  url('fonts/IcoMoon-Free.eot?mgf7b4#iefix') format('embedded-opentype'),
    url('fonts/IcoMoon-Free.ttf?mgf7b4') format('truetype'),
    url('fonts/IcoMoon-Free.woff?mgf7b4') format('woff'),
    url('fonts/IcoMoon-Free.svg?mgf7b4#IcoMoon-Free') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'IcoMoon-Free' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* - - - - - - - - - - - - -
　パンくず
- - - - - - - - - - - - -　*/

.bc_homelink .breadcrumb__link::before {
    font-family: 'IcoMoon-Free' !important;
    content: "\e900" !important;
}


/* - - - - - - - - - - - - -
　段落 Pタグ 
- - - - - - - - - - - - -　*/
.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label {font-size: 1.1rem;line-height: 1.9;margin: 0 0 2rem;}
.faq__label {font-size: 1.1rem;line-height: 1.9;margin: 0;}


/* - - - - - - - - - - - - -
　見出し1（H1タグ） 
- - - - - - - - - - - - -　*/

.archive-title.ttl-category::before{content:none;}
.entry-header .entry-title, .archive-title.ttl-category{text-align:left;color:var(--main-ttl-bg);border:none;font-family:"游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HiraMinProN-W3",serif;}
.entry-title.post-title{line-height: 1.2;font-size: 1.8rem;}
.category .entry-title.post-title{margin:1rem;}

/* - - - - - - - - - - - - -
　見出し2（H2タグ）
- - - - - - - - - - - - -　*/
.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.32rem;}

.entry-content h2:not(.is-style-stylenone) {
    border-left: 20px double rgba(255, 255, 255, 0.45) !important;
    letter-spacing: 0.06em;
    font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HiraMinProN-W3", serif;
    background-image:
        linear-gradient(45deg, rgba(255,255,255,.07) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(255,255,255,.07) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(255,255,255,.07) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.07) 75%);
    background-size: 20px 20px;
    background-position: 0 0, 0 10px, 10px -10px, -10px 0;
    padding: 1rem;
}

/* h2 ナンバリング */
.numbering2 {counter-reset: headline2;}
.numbering2 h2{content: counter(headline2);}
.numbering2 h2::before{
      counter-increment: headline2;
      content: counter(headline2);
      width: 1.7rem;
      height: 1.7rem;
      }

/* - - - - - - - - - - - - -
　見出し3（H3タグ） 
- - - - - - - - - - - - -　*/
.entry-content h3:not(.is-style-stylenone){font-size: 1.22rem;}

.entry-content h3:not([class*=is-style-style]) {
    text-align: left;
    border: 0 !important;
    border-top: 4px solid var(--main-ttl-bg) !important;
    border-bottom: 4px solid var(--main-ttl-bg) !important;
    margin: 3rem 0 1.5rem;
    color: var(--main-ttl-bg);
    background: transparent;
    background-image: none;
    padding: .45em 0 .45em 1.5rem;
    text-shadow: none;
    line-height: 1.5;
    position: relative;
    border-radius: 0;
    font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HiraMinProN-W3", serif;
}

/* 菱形アイコン3つ：上が濃く下が薄い、重なりあり */
/* 7px間隔（画面座標）→ 45°回転のローカル座標は 4.95px, 4.95px */
.entry-content h3:not([class*=is-style-style])::before {
    content: "";
    display: block;
    position: absolute;
    left: .5rem;
    top: calc(50% - 12px);
    width: 10px;
    height: 10px;
    background: var(--main-ttl-bg);
    transform: rotate(45deg);
    border-radius: 2px;
    box-shadow:
        4.95px 4.95px 0 0 color-mix(in srgb, var(--main-ttl-bg) 52%, transparent),
        9.9px  9.9px  0 0 color-mix(in srgb, var(--main-ttl-bg) 18%, transparent);
}

.entry-content h3:not([class*=is-style-style])::after {
    content: none;
}

/* 見出し4（H4タグ） */
.entry-content h4:not(.is-style-stylenone) {
    font-size: 1.16rem;
    font-weight: 700;
    margin: 2rem 0 1rem;
    padding-bottom: .3em;
    border-left: none;
    border-bottom: 2px solid var(--main-ttl-bg);
    padding-left: .5rem;
    color: var(--main-ttl-bg);
    font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HiraMinProN-W3", serif;
    line-height: 1.5;
}

.entry-content h4:not(.is-style-stylenone)::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background: var(--main-ttl-bg);
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

/* 見出し3のナンバリング */

.numbering3 {counter-reset: headline3;}
.numbering3 h3{content: counter(headline3);}
.numbering3 h3::before{
      counter-increment: headline3;
      content: counter(headline3);
      width: 1.3em;
      height: 1.3em;
      }

.numbering3.step h3::before {
    counter-increment: headline3; /* 変数名のみを記述 */
    content: "STEP " counter(headline3) " "; /* 文字列と変数を結合 */
    
    /* レイアウト調整（width/heightを有効にするため） */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto; /* STEP+数字が入るよう広めに設定 */
    height: 2rem;
     /* 例：背景色 */
    color: #fff;
    padding: 0 .5rem;
    margin-right: 0.5em;
    font-size: 0.8em;
    border-radius: .5rem;
}


/*---------------------------
　　箇条書き
---------------------------*/

.entry-content ul:not(li ul), .entry-content ol:not(li ol){text-align:left;margin: 3rem 0 3rem;padding: 1rem 1rem;border-radius:1rem;}

.entry-content .auto-toc-block-ol a::before {
    content: "\ea36 ";
    font-family: 'icomoon';
    font-size: .9rem;
}
.entry-content .cbox ul:not(li ul), .entry-content .cbox ol:not(li ol){background:transparent;padding: 0;}
.entry-content dl ul:not(li ul), .entry-content dl ol:not(li ol){margin-bottom:0;}

.entry-content li,.toc_list {font-size: 1.1rem;line-height: 1.3;}

/*---------------------------
　　詳細
---------------------------*/

.entry-content .accordion_label {
    color: var(--main-ttl-bg);
    text-shadow:
        -1.5px -1.5px 0 #fff,
         0px   -1.5px 0 #fff,
         1.5px -1.5px 0 #fff,
        -1.5px  0px   0 #fff,
         1.5px  0px   0 #fff,
        -1.5px  1.5px 0 #fff,
         0px    1.5px 0 #fff,
         1.5px  1.5px 0 #fff;
    padding: .5rem .5rem .5rem 1rem;
    margin: 0;
    display: block;
    text-indent: 0;
    background-image: none;
    font-family: "游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HiraMinProN-W3",serif;
}
.entry-content .accordion_label::before,.entry-content .details-h3 h3::after {content:none;}
/* QとAのテキスト左端を揃える：em→remに統一 */
.oc-faq__title,
.oc-faq__comment {
    padding-left: 2.2rem;
}

.faq-icon--simple .oc-faq__comment::before{color:var(--main-ttl-bg);}
.oc-faq__comment::before {font-size: 1.15rem;}
@media only screen and (min-width: 481px) and (max-width: 600px){.oc-faq__comment::before{font-size: 1.08rem;top: 1px;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.oc-faq__comment::before{font-size: 1.09rem;top: 1px;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.oc-faq__comment::before{font-size: 1.2rem;top: 2px;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.oc-faq__comment::before{font-size: 1.35rem;top: 2px;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.oc-faq__comment::before{font-size: 1.47rem;top: 2px;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.oc-faq__comment::before{font-size: 1.24rem;top: 1px;}}
@media only screen and (min-width: 1081px){.oc-faq__comment::before{font-size: 1.3rem;top: 2px;}}
.wp-block-details:open summary{margin-bottom: 1rem;}


/* - - - - - - - - - - - - -
　メディアクエリ
- - - - - - - - - - - - -　*/

/* 段落 Pタグ（メディアクエリ） */
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.08rem;line-height: 2;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.09rem;line-height: 1.9;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.21rem;line-height: 1.9;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.35rem;line-height: 2;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.47rem;line-height: 1.9;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content p,kbd,#toc_container p.toc_title,#toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.24rem;line-height: 1.9;}}
@media only screen and (min-width: 1081px){.entry-content p, kbd, #toc_container p.toc_title,.cbox:not(.type_simple).is-style-site_color .span__box_title,.accordion_label,.faq__label {font-size: 1.3rem;line-height: 2;}}

/* h1　（メディアクエリ）*/
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 1.8rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.3rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.5rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.65rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.8rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.5rem;}}
@media only screen and (min-width: 1081px){.entry-title.post-title, .archive-title, .entry-header .entry-title{font-size: 2.5rem;}}

/* h2　（メディアクエリ）　*/
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.5rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.55rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.7rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.8rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.95rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.6rem;}}
@media only screen and (min-width: 1081px){.entry-content h2:not(.is-style-stylenone),.homeadd_wrap h2,.entry-content .addup h2,.cate-title, .archives-list #all-articles{font-size: 1.8rem;}}

/* h2 ナンバリング（メディアクエリ）　*/
@media only screen and (max-width: 480px){.numbering2 h2::before {line-height: .85;width: 1.3rem;height: 1.3rem;}}
@media only screen and (min-width: 481px) and (max-width: 600px){.numbering2 h2::before {line-height:1.1;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.numbering2 h2::before {line-height: 1.1;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.numbering2 h2::before {line-height: .9;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.numbering2 h2::before {line-height: .9;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.numbering2 h2::before {line-height: 1;font-size: 70%;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.numbering2 h2::before {line-height: 1;}}
@media only screen and (min-width: 1081px){.numbering2 h2::before {line-height: .9;}}

@media only screen and (max-width: 480px) {
    .archives-list.simple-list #all-articles {
        margin-left: var(--stk-h2-margin-rl, -2vw);
        margin-right: var(--stk-h2-margin-rl, -2vw);
    }
}

/* h3　（メディアクエリ）　*/
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content h3:not(.is-style-stylenone){font-size: 1.36rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content h3:not(.is-style-stylenone){font-size: 1.4rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content h3:not(.is-style-stylenone){font-size: 1.59rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content h3:not(.is-style-stylenone){font-size: 1.73rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content h3:not(.is-style-stylenone){font-size: 1.8rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content h3:not(.is-style-stylenone){font-size: 1.45rem;}}
@media only screen and (min-width: 1081px){.entry-content h3:not(.is-style-stylenone){font-size: 1.56rem;}}
	
@media screen and (max-width: 480px) {.numbering3 h3::before{width: 1.4rem;height: 1.4rem;line-height: 1.1;}}

/* h4　（メディアクエリ）　*/
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.3rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.35rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.5rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.6rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.75rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.41rem;}}
@media only screen and (min-width: 1081px){.entry-content h4:not(.is-style-stylenone),.other-articles{font-size: 1.5rem;}}


/* 箇条書き（メディアクエリ） */
@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content li,.toc_list {font-size: 1.08rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content li,.toc_list {font-size: 1.09rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content li,.toc_list {font-size: 1.21rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content li,.toc_list {font-size: 1.35rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content li,.toc_list {font-size: 1.47rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content li,.toc_list {font-size: 1.24rem;}}
@media only screen and (min-width: 1081px){.entry-content li,.toc_list {font-size: 1.3rem;}}

/* 詳細 （メディアクエリ） */

@media only screen and (min-width: 481px) and (max-width: 600px){.entry-content .accordion_label{font-size: 1.3rem;}}
@media only screen and (min-width: 601px) and (max-width: 680px){.entry-content .accordion_label{font-size: 1.35rem;}}
@media only screen and (min-width: 681px) and (max-width: 780px){.entry-content .accordion_label{font-size: 1.5rem;}}
@media only screen and (min-width: 781px) and (max-width: 880px){.entry-content .accordion_label{font-size: 1.6rem;}}
@media only screen and (min-width: 881px) and (max-width: 980px){.entry-content .accordion_label{font-size: 1.75rem;}}
@media only screen and (min-width: 981px) and (max-width: 1080px){.entry-content .accordion_label{font-size: 1.41rem;}}
@media only screen and (min-width: 1081px){.entry-content .accordion_label{font-size: 1.5rem;}}

/* - - - - - - - - - - - - -
　ACF役員情報テーブル
- - - - - - - - - - - - -　*/
.stk-officer-table-wrap {
	margin: 2rem 0;
	overflow-x: auto;
}

.stk-officer-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #d7dee8;
	background: #fff;
	font-size: 0.98rem;
}

.stk-officer-table caption {
	padding: 0.9rem 1rem;
	background: #eef5fb;
	color: var(--main-link-color);
	font-size: 1.1rem;
	font-weight: 700;
	text-align: left;
}

.stk-officer-table th,
.stk-officer-table td {
	padding: 0.85rem 1rem;
	border: 1px solid #d7dee8;
	vertical-align: top;
	line-height: 1.7;
}

.stk-officer-table thead th {
	background: #f5f8fb;
	font-weight: 700;
	text-align: left;
}

.stk-officer-table tbody th[scope="row"] {
	width: 18%;
	min-width: 8rem;
	background: #fbfcfe;
	font-weight: 700;
}

@media screen and (max-width: 680px) {
	.stk-officer-table {
		font-size: 0.92rem;
		min-width: 640px;
	}
}

/* - - - - - - - - - - - - -
　団体紹介テーブル
- - - - - - - - - - - - -　*/
.stk-org-profile-table-wrap {
	margin: 2.5rem 0;
}

/* タイトル：左ボーダーアクセント */
.stk-org-profile-table-title {
	margin-bottom: 1.2rem;
	padding: 0.2em 0 0.2em 0.8em;
	border-left: 4px solid var(--main-link-color);
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--main-text-color);
	background: none;
}

/* テーブル本体：上部にアクセントライン */
.stk-org-profile-table {
	width: 100%;
	border-collapse: collapse;
	border-top: 2px solid var(--main-link-color);
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #fff;
}

/* 行ごとの区切り線 */
.stk-org-profile-table tr {
	border-bottom: 1px solid #e8e8e8;
}

.stk-org-profile-table tr:last-child {
	border-bottom: none;
}

.stk-org-profile-table th,
.stk-org-profile-table td {
	padding: 14px 18px;
	vertical-align: middle;
	text-align: left;
	line-height: 1.8;
}

/* th：ラベル列 */
.stk-org-profile-table th {
	width: 28%;
	min-width: 7rem;
	background: #fafafa;
	font-weight: 700;
	font-size: 0.92rem;
	color: #555;
	letter-spacing: 0.03em;
	border-right: 1px solid #e8e8e8;
}

/* td：値列 */
.stk-org-profile-table td {
	background: #fff;
	font-size: 0.98rem;
	color: #333;
}

.stk-org-profile-table td a {
	color: var(--main-link-color);
	text-decoration: underline;
	text-underline-offset: 0.2em;
	word-break: break-word;
}

.stk-org-profile-table td a:hover {
	opacity: 0.75;
}

.stk-org-profile-table td .stk-empty-value {
	color: #aaa;
	font-size: 0.9em;
}

/* SNS・リンクボタン群 */
.stk-social-link-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.stk-social-link-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 16px;
	border-radius: 4px;
	color: #fff !important;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.03em;
	text-decoration: none !important;
	transition: opacity 0.18s ease, transform 0.18s ease;
}

.stk-social-link-button:hover {
	color: #fff;
	opacity: 0.82;
	transform: translateY(-1px);
}

.entry-content .stk-social-link-buttons a:not(.no-icon)[target=_blank]::after {
	content: none;
}

.stk-social-link-button.is-site  { background: #5a6472; }
.stk-social-link-button.is-x,
.stk-social-link-button.is-tiktok { background: #1a1a1a; }
.stk-social-link-button.is-facebook  { background: #1877f2; }
.stk-social-link-button.is-instagram { background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.stk-social-link-button.is-note      { background: #41c9b0 !important; }

/* スマホ：縦積みレイアウト */
@media screen and (max-width: 680px) {
	.stk-org-profile-table,
	.stk-org-profile-table tbody,
	.stk-org-profile-table tr,
	.stk-org-profile-table th,
	.stk-org-profile-table td {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.stk-org-profile-table tr {
		border-bottom: 1px solid #e8e8e8;
		padding: 4px 0;
	}

	.stk-org-profile-table th {
		padding: 12px 16px 4px;
		background: transparent;
		font-size: 0.82rem;
		color: #888;
		font-weight: 700;
		border-right: none;
		letter-spacing: 0.05em;
	}

	.stk-org-profile-table td {
		padding: 4px 16px 12px;
		font-size: 0.97rem;
	}

	.stk-social-link-button {
		padding: 8px 14px;
		font-size: 0.85rem;
	}
}

/* - - - - - - - - - - - - -
　イベント情報テーブル
- - - - - - - - - - - - -　*/
.event-info-box {
	margin: 2rem 0;
}

.event-info-status {
	display: inline-block;
	margin-bottom: 1em;
	padding: 0.35em 0.85em;
	border-radius: 999px;
	background: #eef5fb;
	color: var(--main-link-color);
	font-size: 0.9em;
	font-weight: 700;
	line-height: 1.4;
}

.event-info-image {
	margin-bottom: 1.5em;
}

.event-info-image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.event-info-summary {
	margin-bottom: 1.5em;
	padding: 18px 16px;
	border-left: 4px solid #d7dee8;
	background: #f7f7f7;
	line-height: 1.8;
}

.event-info-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #e5e5e5;
	background: #fff;
}

.event-info-table th,
.event-info-table td {
	border: 1px solid #e5e5e5;
	padding: 18px 16px;
	vertical-align: middle;
	line-height: 1.8;
	text-align: left;
}

.event-info-table th {
	width: 30%;
	background: #f7f7f7;
	color: #333;
	font-weight: 700;
}

.event-info-table td {
	background: #fff;
}

.event-info-note {
	display: inline-block;
	margin-top: 0.2em;
	color: #555;
	font-size: 0.95em;
}

.event-info-link {
	color: var(--main-link-color);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.event-info-button {
	display: inline-block;
	padding: 12px 20px;
	border-radius: 12px;
	background: var(--main-link-color);
	color: #fff !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.event-info-button:hover {
	opacity: 0.92;
	transform: translateY(-1px);
}

.event-info-description {
	margin-top: 2rem;
	line-height: 1.9;
}

.event-info-description h2 {
	margin-bottom: 1rem;
	padding-bottom: 0.35em;
	border-bottom: 2px solid #d7dee8;
	font-size: 1.35em;
	color: var(--main-link-color);
}

.event-info-error {
	padding: 1em;
	border: 1px solid #e7b7b7;
	background: #fff4f4;
	color: #9b2222;
}

@media screen and (max-width: 767px) {
	.event-info-table,
	.event-info-table tbody,
	.event-info-table tr,
	.event-info-table th,
	.event-info-table td {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.event-info-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.event-info-table td {
		padding-top: 8px;
	}
}

/* =========================================
   トップ：お城画像＋筆文字重ね
========================================= */

/* 全体エリアを画面幅いっぱいにする */
.top-castle-hero {
	position: relative;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-top: 0 !important;
	margin-right: calc(50% - 50vw) !important;
	margin-bottom: clamp(40px, 6vw, 100px) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 0 !important;
	overflow: hidden;
}

/* WordPressのグループ内コンテナの幅制限を解除 */
.top-castle-hero > .wp-block-group__inner-container {
	position: relative;
	width: 100vw !important;
	max-width: 100vw !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* お城画像ブロック */
.top-castle-bg {
	position: relative;
	z-index: 1;
	width: 100vw !important;
	max-width: 100vw !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* お城画像そのもの */
.top-castle-bg img {
	display: block;
	width: 100vw !important;
	max-width: 100vw !important;
	height: clamp(260px, 38vw, 560px);
	object-fit: cover;
	object-position: center center;
	margin: 0 !important;
	padding: 0 !important;
}

/* 筆文字画像ブロック */
.top-castle-logo {
	position: absolute !important;
	z-index: 5;
	top: clamp(90px, 15vw, 220px);
	left: clamp(24px, 7vw, 120px);
	width: clamp(220px, 34vw, 560px) !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none;
}

/* 筆文字画像そのもの */
.top-castle-logo img {
	display: block;
	width: 100% !important;
	height: auto;
	margin: 0 !important;
	padding: 0 !important;
}

/* =========================================
   スマホ表示：筆文字を左側の雲あたりに配置
========================================= */
@media (max-width: 600px) {
	.top-castle-bg img {
		height: clamp(220px, 62vw, 340px);
		object-position: center center;
	}

	.top-castle-logo {
		top: clamp(30px, 12vw, 95px);
		left: clamp(18px, 6vw, 40px);
		width: clamp(190px, 47vw, 320px) !important;
		transform: none;
	}
}
