@charset "UTF-8";
/*
    Template: nishiki-pro
    Theme Name: Nishiki Pro CHILD
    Theme URI: https://support.animagate.com/product/wp-nishiki-pro/
    Description: Nishiki Proの子テーマ
    Version: 1.0.0
	A.Tsumori 2025.12
*/

/* ----------------------------------------
   0.全ページ共通
     0.1 PC・スマホ表示切替
     0.2 メールアドレス記述用
     0.3 ページタイトル
     0.4 サイトメインカラー指定用
     0.5 見出し
     0.6 インデント
     0.7 投稿リスト
     0.8 RSSアイコン非表示
	 0.9 reCAPTCHAアイコン非表示
	 0.10 ボタンデザイン

   1.ローディング画面
   2.トップページ
     2.1 メインビジュアル
     2.2 利用案内
     2.3 トップページ ボタン
     2.4 心のふるさとへ誘う
     2.5 お知らせ・イベント情報

     0.3 フォント設定
     0.4 文章校正
     0.5 テーブル設定
     0.6 囲い枠設定
     0.7 aタグ設定
     --
     
   3.ヘッダー部
   
   4.フッター部
     2.1 フッター枠
     2.2 フッターリンクの表記
     2.3 フッター情報

   5.イベント情報
     5.1 アイキャッチ付き投稿リスト
     5.2 企画展報告・お知らせ 投稿一覧（クエリループ）
     
---------------------------------------- */

span.mb-bhi-display {
	display: block;
    text-align: center;
}

span.mb-bhi-display span{
	background-color: #fff;
	padding: 0.5em 2em;
}

/* ----------------------------------------
   0.全ページ共通
---------------------------------------- */
/*0.1 ページ全体*/
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

/* 0.1 PC・スマホ表示切替 */
/* PC・タブレットのみ表示------*/
@media (max-width: 900px){
	.v-pc{
	    display: none;
    }
}
/* スマホのみ表示------*/
@media (min-width: 901px){
	.v-sp{
	    display: none;
    }
}

/* 0.6 インデント */

/*全角1文字*/
.indent-10{
	text-indent:1rem;
	padding-bottom:1rem !important;
}


/*  0.8 RSSアイコン非表示 */
.-rss {
	display: none;
}
/*  0.9 reCAPTCHAアイコン非表示 */
.grecaptcha-badge { visibility: hidden; }

/*0.10 ボタンデザイン*/
.simple-btn--style01{
	text-align:center;
}
.simple-btn--style01 .left{
	text-align:left;
}
.simple-btn {
  display: inline-block;
  padding: 0.7rem 2rem;
  border: 1px solid #ccc;
  color: #333;
  text-decoration: none !important;
  position: relative;
  transition: 0.3s;
	min-width: 230px;
}

/* ライン */
.simple-btn::after {
  content: "";
  position: absolute;
  top: 50%;         
  transform: translateY(-50%);
  width: 60px;
  height: 2px;
  background-color: #f5c856;
  right: -30px;  
  /* ← ここで「左から右へ伸びる」設定 */
  transform-origin: left center;
  transform: translateY(-50%) scaleX(0.6);  /* 初期は短め */
  transition: transform 0.3s;
}

/* hover時に右方向へニュッと伸びる */
.simple-btn:hover::after {
  transform: translateY(-50%) scaleX(1);
}

.simple-btn:hover {
  border-color: #f5c856;
  color: #333!important;
}

/* ボタンのスタイル */
.btn a {
  position: relative;
  display: block;
  width: 280px;
  padding: 15px 0;
  background-color: #21be78;
  border-radius: 8px;
  font-size: 14px;
  color: #fff;
  text-decoration: none;
  text-align: center;
}

/* アイコンのスタイル */
.btn-arrow-bottom a::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 27px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-2px) rotate(135deg);
  box-sizing: border-box;
}

/*nishikiproボタン*/
.wp-block-nishiki-blocks-pro-button2.is-style-nishiki-blocks-pro-button-border-01 .btn::after{
	/*border-color:#ffc21b;*/
}
.wp-block-nishiki-blocks-pro-button2 i{
	/*color:#ffc21b;*/
	transition:0.2s;
}

.wp-block-nishiki-blocks-pro-button2:hover i{
	transform:translatex(1rem) scale(1.25);
}

/*0.11 表示関連*/
/*スマホ表示時 行間設定*/
@media (max-width: 768px) {
  p {
    line-height: 1.8;
  }
}

/*縦積みカラムをSP時逆に*/
@media(max-width: 900px){
	.flex-reverse{
		flex-direction: column-reverse;
	}
}
/*aタグ アンダーライン*/
a {
  text-decoration: none !important;
}
/*pタグ余白管理*/
p{
	margin-top:0;
	margin-block-start: 0 !important;
    margin-block-end: 0 !important;
	padding-bottom: 20px;
}
/*アイキャッチサイズ変更*/
.eye-catch-background{
	height:400px;
	background-position:top;
	position:relative;
	
}
.page .page-header-inner {
    display: inline-block;
    padding: 0px !important;
    position: absolute !important;
    left: 10vw;
    top: 50%;
    transform: translateY(-50%);
}
@media(max-width:768px){
	.eye-catch-background{
		height:150px;
	}
}

/*スペーサー余白管理*/
.wp-block-spacer{
	margin-top:0 !important;
}

/*snowmokey余白管理*/
.wp-block-snow-monkey-blocks-items{
	margin-top:0px !important;
}

/*PC時電話番号リンクの無効化*/
/*TELリンクをスマホのみに*/
@media (pointer: fine), (hover: hover) {
  a:where([href^="tel:"]) {
    pointer-events: none;
  }
}

.articles.is-list-date.is-border-dashed article{
	border-color:#ccc;
}
/* ----------------------------------------*/


/* ----------------------------------------
   2.トップページ
---------------------------------------- */
/*2.1メインビジュアル*/
.main-visual-content .wp-block-cover{
	height:90vh;
}
@media(max-width:768px){
	.main-visual-content .wp-block-cover{
		height:500px;
	}
}

/*2.2ご利用案内*/
.top-riyou-wrap{
	max-width: 720px;
}
.riyou-title {
    position: relative;
}
.riyou-title:after {
    content: '';
    display: block;
    width: 24px;
    height: 2px;
    background-color: #ffc21b;
    position: absolute;
    top: 1em;
    right: -12px;
}
.riyou-title p{
	padding-right: 12px;
}
@media(max-width:768px){/*sp*/
	.riyou-title::after {
		left: 0;
		bottom: 0;
		top: unset;
		right: unset;
		width: 100%;
	}
}
/*BK Start*/
.introdcution-table {
  width: 100%;
  max-width: 800px;
}

.introdcution-table th{
  position: relative;
  text-align: left;
  width: 15%;
}

.introdcution-table th:after{
  display: block;
  content: "";
  width: 150px;
  height: 2px;
  background-color: #ffc21b;
  position: absolute;
  top:calc(50% - 1px);
  right:-120px;
}

.introdcution-table td{
  text-align: left;
  padding:7px 0 7px 160px !important;
  width: 85%;
}

@media(max-width:781px){
	.introdcution-table th,.introdcution-table td{
		display:block;
		width:100%
	}
	.introdcution-table td{
  		padding-left:20px !important;
	}
	.introdcution-table th{
  		padding-left:0px !important;
	}
	.introdcution-table th:after{
    	width: 100%;
    	top: calc(100% - 10px);
    	left: 0px;
	}
	.introdcution-table {
		margin-top:0px !important;
	}
}
/*BK End*/

/*2.3バナー01*/
.banner-style01 img{
	height: 600px !important;
    object-fit: cover;
}
.banner-style01{
	position:relative;
    margin-bottom: 350px;
}

.banner-style01_container{
    background: white;
    padding: 30px;
}

.banner-style01_container.pc{
	position: absolute;
	width: 500px;
    right: 10%;
	bottom:-300px;
}

.banner-style01_container.sp{
	margin-bottom:100px;
	padding:0px;
}

.banner-style01_container p{
	margin:0px;
	margin-bottom:20px !important;
}
.banner-style01_container .title {
	font-size:1.2rem;
  	align-items: center; /* 横線を上下中央 */
  	display: flex; /* 文字と横線を横並び */
  	justify-content: center; /* 文字を中央寄せ */
	font-weight: 600;
	margin-bottom:20px !important;
	padding-bottom:0px !important;
}
.banner-style01_container .title::after {
    background-color: #222222;
    content: "";
    height: 1px;
    width: 70px;
    margin-top: 4px;
}
.banner-style01_container .title::after {
  margin-left: 15px; /* 文字との余白 */
}
.v-sp:has(.title){
	margin-bottom:80px;
}
@media(max-width:901px){
	.banner-style01 img{
		height: 500px !important;
	}
	.banner-style01_container.pc{
		position: absolute;
		right:50%;
		padding: 50px;
		transform: translateX(50%);
  		bottom:-200px;
	}
	.banner-style01{
    	margin-bottom: 200px;
	}
	.banner-style01_container{
    	background: none;
	}
}
/* 2.4心のふるさとへと誘う */
.top-furusato{
	max-width: 800px!important;
}
.title-sasou {
	font-size:1.4rem;
  	align-items: center; /* 横線を上下中央 */
  	display: flex; /* 文字と横線を横並び */
  	justify-content: center; /* 文字を中央寄せ */
	font-weight: 600;
	margin-bottom:20px !important;
	padding-bottom:0px !important;
}
.title-sasou::after {
    background-color: #222222;
    content: "";
    height: 1px;
    width: 70px;
    margin-top: 4px;
}
.title-sasou::after {
  margin-left: 15px; /* 文字との余白 */
}


/*BK Start*/
@media(min-width:769px){/*PC*/
	.top-col-sasou{
		transform: translateY(-12em);
	}
}
@media(max-width:768px){/*sp*/
	.top-col-sasou{
		gap: 0;
	}
	.top-col-sasou .has-main-02-background-color, .top-col-sasou .has-main-02-background-color:hover {
		background-color: unset !important;
		padding: 2em 0 !important;
	}
}
/*BK End*/

/*2.5お知らせ・イベント情報*/
/* 投稿一覧リスト */
ul.top-info-list {
    list-style: none;
    padding-left: 0;
}
ul.top-info-list a {
    padding: .5em 0;
    border-bottom: 1px #ccc solid;
    display: block;
}
ul.top-info-list span.period {
    display: block;
    font-size: 0.8em;
    color: #666;
}
ul.top-info-list span.period {
    display: block;
    font-size: 0.8em;
    color: #666;
}

  /* 投稿一覧ラッパー */
    .top-info-3col .top-posts {
      display: grid;
      grid-template-columns: 1fr;
      gap: 24px;
    }
    /* PC・タブレットで横並び */
    @media (min-width: 768px) {
      .top-info-3col .top-posts {
        grid-template-columns: repeat(3, 1fr);
      }
    }
    /* 各投稿 */
    .top-info-3col .top-post {
      display: flex;
      flex-direction: column;
    }
    /* アイキャッチ */
    .top-post-thumb img {
      width: 100%;
      height: auto;
      object-fit: contain;
      display: block;
    }
    /* タイトル */
    .top-post-title {
      font-size: 1rem;
      padding-bottom: 0;
    }
    /* 開催期間 */
    .top-post-period {
      font-size: 0.875rem;
      color: #666;
    }
    .top-post-link {
      display: block;
      color: inherit;
      text-decoration: none;
      height: 100%;
    }
    .top-post-link:hover {
      text-decoration: none;
    }
  

/* ----------------------------------------
   3.ご利用案内
---------------------------------------- */
/* ----------------------------------------*/

/*ナビゲーション*/
.flex_btn{
    display: flex;
    justify-content: space-around;
    gap:20px;
    text-align: center;
}

@media(max-width:768px){
    .flex_btn{
        flex-direction:column;
    }
}
.arrow-button{
	
}
.arrow-button svg{
	color:#ffc21b !important;
	font-size:1.5rem;
    vertical-align: text-top;
	transition:0.2s;
}

.arrow-button:hover svg{
	transform:scale(1.1) translatey(2px);;
}
/* ----------------------------------------*/

/* ----------------------------------------
   3.記念館と四季
---------------------------------------- */
/* ----------------------------------------*/
.text_line{
	position: relative;
    margin-right: calc(2rem + 10px);
}
.text_line:after{
	background-color: #222222;
    content: "";
    height: 1px;
    width: 2rem;
    /* margin-top: 4px; */
    margin-left: 5px;
    margin-right: 0;
    display: inline-block;
    position: absolute;
    transform: translateY(-50%);
    bottom: 0.5rem;
}
.map-style {
	display:flex;
	row-gap:20px;
	flex-wrap: wrap;
	padding:20px 0px 20px 20px;
	background:white;
}
.map-style .arrow-button{
	width:50%;
	position:relative;
}
.map-style .arrow-button svg{
	position:absolute;
	right:10%;
}

/* ----------------------------------------
   3.フッター
---------------------------------------- */
/* ----------------------------------------*/
.nishiki-pro-before-site-footer > div{
	margin-bottom:0px;
}
.sitemap-style{
	display:flex;
	flex-wrap:wrap;
	row-gap:5px;
}
.sitemap-style a{
	width:100%;
}
#footer{
	background:#e8e8e8;
}

/* ----------------------------------------
   4.投稿ページ
---------------------------------------- */
/* ----------------------------------------*/

/*投稿ページ著者削除*/
.author-info{
	display:none;
}


/* ----------------------------------------
   5.イベント情報
---------------------------------------- */
/* ----------------------------------------*/
/* 5.1 アイキャッチ付き投稿リスト---------*/
.event-container {
    border: 1px solid #ccc;
    padding: 2em;
    background-color: #ededed;
}
.event-container div.title p {
    padding-bottom: 0;
    font-size: 1.2em;
}
.event-container div.period p {
	padding-bottom: 0;
}
.event-container div.period p.p-label {
    /* font-size: 0.8em; */
    background-color: #333;
    display: inline;
    color: #fff;
    padding: 0.2em 1em;
	margin-bottom: 6px;
}
.event-container a {/*grid layout*/
  display: grid;
  gap: 24px;
  text-decoration: none;
  color: inherit;
}
@media (max-width: 768px) {/*sp*/
	.event-container {
		padding: 1em .5em;
	}
	.event-container a {
		gap: 10px;
	}
}

/* =========================
   PCレイアウト（デフォルト）
   ========================= */
.event-container a {
  grid-template-columns: 150px 1fr;
  grid-template-rows: auto auto;
  align-items: start;
}

.event-container .image {
  grid-column: 1;
  grid-row: 1 / 3; /* 上下2段分使う */
}

.event-container .title {
  grid-column: 2;
  grid-row: 1;
}

.event-container .period {
  grid-column: 2;
  grid-row: 2;
}

/* =========================
   スマホレイアウト
   ========================= */
@media (max-width: 768px) {

  .event-container a {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    align-items: center;
  }

  .event-container .title {
    grid-column: 1 / 3; /* 横幅いっぱい */
    grid-row: 1;
  }

  .event-container .image {
    grid-column: 1;
    grid-row: 2;
  }

  .event-container .period {
    grid-column: 2;
    grid-row: 2;
    align-items: center;
  }

}
/* ----------------------------------------*/
/* 5.2 企画展報告・お知らせ 投稿一覧（クエリループ）---------*/
.info-ul li.wp-block-post {
    border-bottom: 1px solid #ccc;
    padding-bottom: .8em;
    padding-top: .8em;
}
