/* MYZ Blog Tabs v1.1.4 — ブログ一覧のテーマ別タブ＋サイドバー（公式サイトのトンマナ：#159BBE / #0A7EAA / Noto Sans JP） */

/* ---------- テーマ別タブ ---------- */
.myzbt{ max-width:1200px; margin:0 auto; font-family:'Noto Sans JP',sans-serif; }
.myzbt-tabs{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:-18px 0 36px; }
.myzbt-tab{ display:inline-block; padding:9px 20px; border:1px solid #CFE3EA; border-radius:999px; background:#fff;
	color:#333 !important; font-size:14px; font-weight:500; line-height:1.4; text-decoration:none !important; white-space:nowrap;
	transition:background .2s,border-color .2s,color .2s; }
.myzbt-tab:hover{ border-color:#159BBE; color:#0A7EAA !important; }
.myzbt-tab.is-active{ background:#159BBE; border-color:#159BBE; color:#fff !important; font-weight:700; }
/* PC：7つを1行に等幅で並べる（折り返して1つだけ下に落ちるのを防ぐ） */
@media (min-width:1025px){
	.myzbt-tabs{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
	.myzbt-tab{ padding:9px 4px; font-size:13.5px; text-align:center; }
}

/* ---------- 記事カード ---------- */
.myzbt-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; transition:opacity .2s; }
.myzbt.is-loading .myzbt-grid{ opacity:.4; }
.myzbt-card{ background:#fff; border-radius:10px; overflow:hidden; box-shadow:0 2px 12px rgba(10,126,170,.08); transition:box-shadow .2s,transform .2s; }
.myzbt-card:hover{ box-shadow:0 8px 24px rgba(10,126,170,.16); transform:translateY(-2px); }
.myzbt-link{ display:flex; flex-direction:column; height:100%; color:inherit !important; text-decoration:none !important; }
.myzbt-media{ aspect-ratio:16/10; overflow:hidden; background:#EAF4F7; }
.myzbt-media img, .myzbt-media picture{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.myzbt-card:hover .myzbt-media img{ transform:scale(1.04); }
.myzbt-body{ display:flex; flex-direction:column; flex:1; padding:16px 18px 18px; }
.myzbt-title{ margin:0 0 10px; font-size:15.5px; font-weight:700; line-height:1.55; color:#222; }
.myzbt-excerpt{ margin:0 0 12px; font-size:13px; line-height:1.7; color:#666; }
.myzbt-more{ margin-top:auto; font-size:13px; font-weight:700; color:#159BBE; }
.myzbt-foot{ text-align:center; margin:40px 0 20px; }
.myzbt-load{ background:#fff; color:#159BBE; border:1px solid #159BBE; border-radius:4px; padding:14px 34px;
	font-size:15px; font-weight:700; cursor:pointer; transition:background .2s,color .2s; }
.myzbt-load:hover{ background:#159BBE; color:#fff; }
.myzbt-load[hidden]{ display:none; }

@media (max-width:1024px){
	.myzbt-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
	/* タブレット・スマホ：1行の横スクロール */
	.myzbt-tabs{ flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; margin:-10px 0 24px; padding:2px 0 6px;
		scrollbar-width:none; -webkit-overflow-scrolling:touch; }
	.myzbt-tabs::-webkit-scrollbar{ display:none; }
}
@media (max-width:767px){
	.myzbt-tab{ padding:8px 16px; font-size:13.5px; }
	.myzbt-grid{ grid-template-columns:1fr; gap:18px; }
}

/* ---------- サイドバー：見出しをランキングと同じ型に統一 ---------- */
.sidebar .widget .widget-title{ font-size:1.25rem; font-weight:700; color:#1a202c; letter-spacing:.05em;
	margin-bottom:24px; padding-bottom:12px; border-bottom:2px solid #e2e8f0; position:relative; }
.sidebar .widget .widget-title::after{ content:''; position:absolute; left:0; bottom:-2px; width:60px; height:2px; background:#159BBE; }

/* ---------- サイドバー：検索 ---------- */
.sidebar .widget_search .search-form{ display:flex; position:relative; }
.sidebar .widget_search label{ flex:1; margin:0; }
.sidebar .widget_search .search-field{ width:100%; height:48px; padding:0 52px 0 18px; border:1px solid #CFE3EA; border-radius:999px;
	background:#fff; color:#333; font-size:14px; box-shadow:none; transition:border-color .2s,box-shadow .2s; }
.sidebar .widget_search .search-field::placeholder{ color:#999; }
.sidebar .widget_search .search-field:focus{ outline:none; border-color:#159BBE; box-shadow:0 0 0 3px rgba(21,155,190,.15); background:#fff; }
.sidebar .widget_search .search-submit{ position:absolute; right:5px; top:5px; width:38px; height:38px; padding:0; border:0; border-radius:50%;
	font-size:0; color:transparent; cursor:pointer; background:#159BBE url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16 16l4.5 4.5'/%3E%3C/svg%3E") center/18px no-repeat;
	transition:background-color .2s; }
.sidebar .widget_search .search-submit:hover{ background-color:#0A7EAA; }

/* ---------- サイドバー：ブログ購読 ---------- */
.sidebar .widget.widget_newsletterwidget{ background:#F4FBFB; border-radius:10px; padding:26px 22px 24px; font-size:14px; line-height:1.75; color:#555; }
.sidebar .widget_newsletterwidget .widget-title{ border-bottom-color:#D9ECF1; }
.sidebar .widget_newsletterwidget .tnp-subscription{ margin:16px 0 0; max-width:none; }
.sidebar .widget_newsletterwidget .tnp-field{ margin-bottom:12px; }
.sidebar .widget_newsletterwidget label{ font-size:12.5px; font-weight:700; color:#333; margin-bottom:6px; }
.sidebar .widget_newsletterwidget input.tnp-email{ height:46px; padding:0 14px; border:1px solid #CFE3EA; border-radius:6px; background:#fff; color:#333; font-size:14px; }
.sidebar .widget_newsletterwidget input.tnp-email:focus{ outline:none; border-color:#159BBE; box-shadow:0 0 0 3px rgba(21,155,190,.15); }
.sidebar .widget_newsletterwidget input.tnp-submit{ height:48px; padding:0; border:0; border-radius:4px; background:#0A7EAA; color:#fff;
	font-size:15px; font-weight:700; letter-spacing:.08em; cursor:pointer; transition:background .2s; }
.sidebar .widget_newsletterwidget input.tnp-submit:hover{ background:#0B6D93; }
.myzbt-load:disabled{ opacity:.6; cursor:default; }

/* v1.1.1 テーマ（GeneratePress）とサイト共通のボタン色 rgb(101,203,229) に負けないよう上書き */
.sidebar .widget_search .search-submit{ display:block !important; width:38px !important; height:38px !important; padding:0 !important;
	background-color:#159BBE !important; border-radius:50% !important;
	font-size:0 !important; color:transparent !important; text-indent:-9999px; overflow:hidden; }
.sidebar .widget_search .search-submit:hover{ background-color:#0A7EAA !important; }
.sidebar .widget_search .search-submit::before{ content:none !important; }
.sidebar .widget_newsletterwidget input.tnp-submit{ width:100% !important; background:#0A7EAA !important; color:#fff !important; border-radius:4px !important; }
.sidebar .widget_newsletterwidget input.tnp-submit:hover{ background:#0B6D93 !important; }

/* v1.1.3 見出し「マイズのブログ」の枠（ぼかし模様を切り取る四角）を記事カードと同じ角丸に */
.blog-section{ border-radius:10px; isolation:isolate; transform:translateZ(0); }
