/*
Theme Name: Tachibana Furisode 2025
Theme URI: 
Author: BRAVO
Author URI: 
Description: 
Version: 2.0
License: 
License URI: 
Tags: 
Text Domain: 
*/
/* -----------------------------------------------
 * WordPress Core
 * ----------------------------------------------- */
 .alignnone {
	margin: 5px;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float:right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

a img.alignnone {
	margin: 5px 20px 20px 0;
}

a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	background: #fff;
	border: 1px solid #f0f0f0;
	max-width: 96%; /* Image does not overflow the content area */
	padding: 5px 3px 10px;
	text-align: center;
}

.wp-caption.alignnone {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
	margin: 5px 0 20px 20px;
}

.wp-caption img {
	border: 0 none;
	height: auto;
	margin: 0;
	max-width: 98.5%;
	padding: 0;
	width: auto;
}

.wp-caption p.wp-caption-text {
	font-size: 11px;
	line-height: 17px;
	margin: 0;
	padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
clip: rect(1px, 1px, 1px, 1px);
position: absolute !important;
			white-space: nowrap;
height: 1px;
width: 1px;
overflow: hidden;
}

.screen-reader-text:focus {
background-color: #f1f1f1;
border-radius: 3px;
box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
clip: auto !important;
color: #21759b;
display: block;
font-size: 14px;
font-size: 0.875rem;
font-weight: bold;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000; /* Above WP toolbar. */
}

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

.entry-content > :last-child,
.entry-summary > :last-child {
margin-bottom: 0;
}

.entry-content,
.entry-summary,
.page-content,
.comment-content {
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
word-wrap: break-word;
}

.entry-content h1,
.entry-summary h1,
.page-content h1,
.comment-content h1 {
font-size: 2.2rem;
line-height: 1.5em;
font-weight: 500;
color: #00345c;
}

.entry-content h2,
.entry-summary h2,
.page-content h2,
.comment-content h2 {
line-height: 1.5em;
margin-top: 1.5em;
margin-bottom: 0.5em;
font-weight: bold;
font-weight: 500;
color: #fff;
background: #444444;
margin-left: -20px;
margin-right: -20px;
padding: 10px 20px;
}

.entry-content h3,
.entry-summary h3,
.page-content h3,
.comment-content h3 {
font-size: 1.6rem;
line-height: 1.5em;
margin-top: 1.5em;
margin-bottom: 0.5em;
font-weight: 500;
color: #C34545;
border-bottom: 1px solid #C34545;
padding-bottom: 10px;
}

.entry-content h4,
.entry-summary h4,
.page-content h4,
.comment-content h4 {
font-size: 1.8rem;
line-height: 1.5em;
margin-top: 1.5em;
margin-bottom: 0.5em;
color: #00345c;
font-weight: 500;
}

.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-summary h4,
.entry-summary h5,
.entry-summary h6,
.page-content h4,
.page-content h5,
.page-content h6,
.comment-content h4,
.comment-content h5,
.comment-content h6 {
font-size: 1.6rem;
line-height: 1.5em;
margin-top: 1.5em;
margin-bottom: 0.5em;
font-weight: 500;
}

.entry-content h5,
.entry-content h6,
.entry-summary h5,
.entry-summary h6,
.page-content h5,
.page-content h6,
.comment-content h5,
.comment-content h6 {
letter-spacing: 0.1em;
text-transform: uppercase;
}

.entry-content > h1:first-child,
.entry-content > h2:first-child,
.entry-content > h3:first-child,
.entry-content > h4:first-child,
.entry-content > h5:first-child,
.entry-content > h6:first-child,
.entry-summary > h1:first-child,
.entry-summary > h2:first-child,
.entry-summary > h3:first-child,
.entry-summary > h4:first-child,
.entry-summary > h5:first-child,
.entry-summary > h6:first-child,
.page-content > h1:first-child,
.page-content > h2:first-child,
.page-content > h3:first-child,
.page-content > h4:first-child,
.page-content > h5:first-child,
.page-content > h6:first-child,
.comment-content > h1:first-child,
.comment-content > h2:first-child,
.comment-content > h3:first-child,
.comment-content > h4:first-child,
.comment-content > h5:first-child,
.comment-content > h6:first-child {
margin-top: 0;
}

.entry-content a,
.entry-summary a,
.page-content a,
.comment-content a,
.pingback .comment-body > a {
color: #0066BD;
}

.entry-content a:hover,
.entry-content a:focus,
.entry-summary a:hover,
.entry-summary a:focus,
.page-content a:hover,
.page-content a:focus,
.comment-content a:hover,
.comment-content a:focus,
.pingback .comment-body > a:hover,
.pingback .comment-body > a:focus {
border-bottom: 0;
}

.entry-content a img,
.entry-summary a img,
.page-content a img,
.comment-content a img {
display: block;
}

.entry-content .more-link,
.entry-summary .more-link:after {
white-space: nowrap;
}

.entry-content .more-link:after,
.entry-summary .more-link:after {
content: "\f429";
font-size: 16px;
position: relative;
top: 5px;
}

.entry-content > *{
line-height: 1.75em;
margin: 1em 0;
font-size: 15px;
}

.entry-content p{
font-size: 1.5rem;
margin: 2em 0;
}

.entry-content ul li{
list-style: disc;
list-style-position: inside;
}

.entry-content ol li{
list-style: decimal;
list-style-position: inside;
}

.entry-content table th,
.entry-content table td{
border: 1px solid #dddddd;
padding: 10px;
}

.entry-content table th{
background: #f2f2f2;
}

.entry-content table td{
font-size: 1.3rem;
}

/*ngg gallery*/
.sl-caption{
display: none;
opacity: 0;
}

.ngg-navigation{
padding-bottom: 10px !important;
}

/*pagenavi*/
body .wp-pagenavi{
text-align: center;
margin: 40px 0;
width: 100%;
}

body .wp-pagenavi span,
body .wp-pagenavi a{
font-family: 'Jost', sans-serif;
font-weight: 500;
display: inline-block;
min-width: 30px;
height: 30px;
line-height: 30px;
font-size: 1.5rem;
margin: 0 4px;
border-radius: 100px;
border: 1px solid #9cb4c3;
color: #9cb4c3;
box-sizing: content-box;
}
body .wp-pagenavi span.pages{
padding: 0 10px;
}
body .wp-pagenavi .current,
body .wp-pagenavi a:hover{
background: #004c8a;
border-color: #004c8a;
color: #fff;
font-weight: normal;
}

@media only screen and (max-width: 800px) {
/*entry content*/
.entry-content p{
	font-size: 1.3rem;
	margin: 1em 0;
}

.entry-content > *{
	font-size: 13px;
}

.entry-content h1,
.entry-summary h1,
.page-content h1,
.comment-content h1 {
	font-size: 1.8rem;
	line-height: 1.5em;
}

.entry-content h2,
.entry-summary h2,
.page-content h2,
.comment-content h2 {
	font-size: 1.6rem;
	line-height: 1.5em;
	margin-top: 1.5em;
	margin-bottom: 0.5em;
}

.entry-content h3,
.entry-summary h3,
.page-content h3,
.comment-content h3 {
	font-size: 1.4rem;
	line-height: 1.5em;
	margin-top: 1.5em;
	margin-bottom: 0.5em;
}

.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-summary h4,
.entry-summary h5,
.entry-summary h6,
.page-content h4,
.page-content h5,
.page-content h6,
.comment-content h4,
.comment-content h5,
.comment-content h6 {
	font-size: 1.4rem;
	line-height: 1.5em;
	margin-top: 1.5em;
	margin-bottom: 0.5em;
}

}

/* ===== Post card navigation ===== */
:root{
  --nav-brand:#F16291;      /* ブランド基調色（必要なら変更） */
  --nav-border:#e8e8e8;
  --nav-bg:#fff;
  --nav-text:#222;
}

.post-card-nav{ margin-top:32px; }
.post-card-nav .nav-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
@media (max-width: 768px){
  .post-card-nav .nav-links{ grid-template-columns: 1fr; }
}

.post-card-nav a{
  text-decoration:none; color:var(--nav-text);
}
.post-card-nav .nav-card{
  position:relative;
  display:flex; flex-direction:column; gap:10px;
  background:var(--nav-bg);
  border:1px solid var(--nav-border);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(0,0,0,.04);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.post-card-nav .nav-card:hover{
  transform:translateY(-2px);
  border-color: color-mix(in oklab, var(--nav-brand) 30%, #ffffff);
  box-shadow:0 10px 24px rgba(0,0,0,.08);
}

/* 画像は16:9でトリミング、横幅100% ⇒ タイトルも同じ幅で回り込みなし */
.post-card-nav .nav-thumb{ width:100%; aspect-ratio:16/9; background:#f4f4f4; }
.post-card-nav .nav-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

/* テキスト部は画像と同じ横幅内で折り返す */
.post-card-nav .nav-meta{ padding:10px 14px 14px; }
.post-card-nav .nav-title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:15px; line-height:1.5; font-weight:600;
}

/* “前/次”のバッジを分かりやすく */
.post-card-nav .nav-badge{
  position:absolute; top:10px; left:10px;
  padding:.28em .6em; font-size:12px; font-weight:700;
  border-radius:999px; color:#fff; background:var(--nav-brand);
  backdrop-filter:saturate(140%) blur(2px);
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
.post-card-nav .nav-next .nav-badge{
  left:auto; right:10px;             /* 次の記事は右上に配置 */
}
.post-card-nav .nav-badge::before,
.post-card-nav .nav-badge::after{
  font-weight:900; opacity:.85;
}
.post-card-nav .nav-previous .nav-badge::before{ content:"← "; }
.post-card-nav .nav-next .nav-badge::after{ content:" →"; }

/* キーボード操作のフォーカスも分かりやすく */
.post-card-nav a:focus-visible .nav-card{
  outline:2px solid color-mix(in oklab, var(--nav-brand) 70%, #fff);
  outline-offset:2px;
}
