/*
Theme Name: Small Dog Affiliate
Author: Small Dog Affiliate
Description: 小型犬専門メディア向けの軽量なオリジナルテーマ。
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: small-dog-affiliate
Tags: blog, custom-logo, custom-menu, featured-images, footer-widgets, threaded-comments, translation-ready
*/
:root{--ink:#34312e;--muted:#696158;--paper:#fff;--ivory:#f8f6f1;--line:#ded8ce;--accent:#64513e;--radius:12px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:16px;line-height:1.9;overflow-wrap:anywhere}a{color:var(--accent);text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea,select{font:inherit}button,input[type=submit]{cursor:pointer}button,input,textarea{border:1px solid var(--line);border-radius:6px;padding:.5rem .75rem;background:white;color:var(--ink)}input,textarea{max-width:100%}button:hover,input[type=submit]:hover{background:var(--ivory)}:focus-visible{outline:3px solid #80633f;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,h4{line-height:1.5;letter-spacing:.025em}h1{font-size:clamp(1.8rem,4vw,2.8rem)}h2{font-size:clamp(1.25rem,2.5vw,1.6rem)}.container{width:min(1120px,calc(100% - 40px));margin-inline:auto}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.site-name{font-size:1.35rem;font-weight:700;text-decoration:none;color:var(--ink)}.tagline{margin:4px 0 0;font-size:.8rem;color:var(--muted)}.custom-logo{max-width:220px;max-height:80px;width:auto}.primary-navigation{display:flex;align-items:center;gap:20px}.primary-navigation ul,.site-footer nav ul{display:flex;gap:16px;flex-wrap:wrap;list-style:none;padding:0}.primary-navigation li{position:relative}.primary-navigation ul ul{display:block;padding-left:1rem}.primary-navigation a{font-size:.9rem}.search-form{display:flex;gap:6px}.search-form input{width:150px;min-width:0}.hero{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;background:var(--ivory);border-radius:var(--radius);margin-top:40px;padding:clamp(24px,5vw,64px)}.hero:has(.hero-image){grid-template-columns:1fr 1fr}.hero h1{margin:.4em 0}.hero p{max-width:38em}.eyebrow{font-size:.75rem;letter-spacing:.18em;color:var(--muted)}.hero-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}.home-section{margin-block:56px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.article-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white}.card-image{display:block}.card-image img{width:100%;aspect-ratio:3/2;object-fit:cover}.card-body{padding:20px}.card-body h2{margin:8px 0;font-size:1.2rem}.card-body h2 a{color:var(--ink);text-decoration:none}.card-body p{font-size:.9rem}.post-meta{font-size:.8rem;color:var(--muted)}.category-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0}.category-list a{display:block;padding:12px 20px;background:var(--ivory);border-radius:6px}.about{background:var(--ivory);border-radius:var(--radius);padding:32px}.ad-notice,.ad-label{font-size:.8rem;color:var(--muted)}.breadcrumbs{margin-block:24px;font-size:.8rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}.breadcrumbs li+li:before{content:"/";margin-right:8px}.page-heading{margin-block:40px}.article{max-width:760px;margin:40px auto 64px}.article-header{margin-bottom:28px}.article-image{width:100%;border-radius:var(--radius);margin-bottom:32px}.entry-content{line-height:2}.entry-content h2{margin-top:2.5em;padding-bottom:.6em;border-bottom:1px solid var(--line)}.entry-content h3{margin-top:2em}.entry-content :is(h2,h3){scroll-margin-top:24px}.entry-content p{margin-block:1.5em}.entry-content iframe{max-width:100%}.entry-content table{display:block;overflow-x:auto;border-collapse:collapse;max-width:100%}.entry-content td,.entry-content th{padding:12px;border:1px solid var(--line)}.entry-content blockquote{margin-inline:0;border-left:3px solid var(--line);padding-left:24px}.entry-content .alignleft{float:left;margin:0 24px 16px 0}.entry-content .alignright{float:right;margin:0 0 16px 24px}.aligncenter{display:block;margin-inline:auto}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:.85rem;color:var(--muted)}.sticky{border-color:var(--accent)}.bypostauthor{border-left:2px solid var(--line);padding-left:12px}.toc{padding:24px;background:var(--ivory);border-radius:var(--radius)}.toc h2{margin-top:0}.toc-subheading{margin-left:20px}.ad-area{margin-top:40px;padding:24px;border:1px solid var(--line)}.article-footer{margin-top:32px}.navigation{margin-block:40px}.nav-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.post-navigation .nav-links{justify-content:space-between}.page-numbers{padding:8px 12px}.page-numbers.current{background:var(--ivory)}.site-footer{padding-block:40px;margin-top:64px;background:var(--ivory);border-top:1px solid var(--line);font-size:.9rem}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{clip:auto;width:auto;height:auto;top:12px;left:12px;padding:12px;background:white;z-index:100}.comment-list{padding-left:24px}.comment-form label{display:block}.comment-form textarea{width:100%}.comment-form-cookies-consent label{display:inline}.empty-state{padding:24px;background:var(--ivory)}
@media(max-width:1000px){.header-inner{flex-wrap:wrap}.primary-navigation{flex-wrap:wrap}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.container{width:calc(100% - 32px)}.header-inner{gap:16px;padding-block:20px}.branding{flex:1}.primary-navigation{width:100%;display:block}.primary-navigation ul{display:block}.primary-navigation a{display:block;padding:8px 0}.search-form input{flex:1;width:auto}.hero,.hero:has(.hero-image){grid-template-columns:1fr;padding:24px;margin-top:24px}.card-grid{grid-template-columns:1fr;gap:20px}.home-section{margin-block:40px}.article{margin-top:24px}.about,.toc,.ad-area{padding:20px}.entry-content .alignleft,.entry-content .alignright{float:none;margin-inline:0}.site-footer nav ul{display:block}.site-footer nav a{display:inline-block;padding-block:8px}}
/* DOG NAVI：ヘッダーとメニュー */
.site-header {
  background: #fff;
  border-bottom: 1px solid #dce5dd;
}

.header-inner {
  flex-wrap: wrap;
  gap: 20px;
  padding-block: 24px 16px;
}

.site-name {
  color: #284d3c;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: .06em;
}

.tagline {
  margin-top: 6px;
  color: #626b64;
}

.primary-navigation {
  width: 100%;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid #e5ebe5;
  padding-top: 14px;
}

.primary-navigation > ul {
  margin: 0;
  gap: 8px;
}

.primary-navigation a {
  display: block;
  padding: 10px 18px;
  border-radius: 8px;
  color: #35483b;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.primary-navigation a:hover,
.primary-navigation a:focus-visible {
  background: #edf3ed;
  color: #234d37;
}

.primary-navigation .current-menu-item > a,
.primary-navigation .current-menu-ancestor > a {
  background: #e6efe5;
  color: #234d37;
}

.site-header .search-form {
  flex-shrink: 0;
}

.site-header .search-form input[type="search"] {
  width: 180px;
  background: #f7f9f6;
  border-color: #dce5dd;
}

.site-header .search-form button,
.site-header .search-form input[type="submit"] {
  background: #315c43;
  border-color: #315c43;
  color: #fff;
}

.site-header .search-form button:hover,
.site-header .search-form input[type="submit"]:hover {
  background: #234632;
}

.nav-toggle {
  padding: 8px 14px;
  border-color: #dce5dd;
  color: #284d3c;
  font-weight: 700;
}

@media (min-width: 768px) and (max-width: 1000px) {
  .primary-navigation {
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .header-inner {
    gap: 16px;
    padding-block: 18px;
  }

  .site-name {
    font-size: 23px;
  }

  .tagline {
    font-size: 11px;
  }

  .primary-navigation {
    padding-top: 16px;
  }

  .primary-navigation > ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 16px;
  }

  .primary-navigation a {
    padding: 12px 8px;
    background: #f1f5ef;
    font-size: 14px;
    text-align: center;
  }

  .site-header .search-form {
    width: 100%;
  }

  .site-header .search-form input[type="search"] {
    width: 0;
    flex: 1;
  }
																																																																																																												}
																																																																																																												/* 人気記事を準備するまで非表示 */
.home .home-section[aria-labelledby="popular-title"] {
  display: none;
																																																																																																												}
																																																																																																												/* トップページのカテゴリーカード */
.home .category-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 24px;
}

.home .category-list li {
  min-width: 0;
}

.home .category-list a {
  display: block;
  height: 100%;
  padding: 24px 20px;
  background: #f1f5ef;
  border: 1px solid #dce5dd;
  border-radius: 12px;
  text-decoration: none;
}

.home .category-list a:hover,
.home .category-list a:focus-visible {
  background: #e6efe5;
  border-color: #72967b;
}

.category-card-title {
  display: block;
  color: #284d3c;
  font-size: 17px;
  font-weight: 700;
}

.category-card-description {
  display: block;
  margin-top: 8px;
  color: #626b64;
  font-size: 13px;
  line-height: 1.8;
}

@media (max-width: 1000px) {
  .home .category-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .home .category-list {
    gap: 12px;
  }

  .home .category-list a {
    padding: 18px 14px;
  }

  .category-card-title {
    font-size: 15px;
  }
																																																																																																												}
																																																																																																												.about-link a {
  display: inline-block;
  padding: 10px 18px;
  border: 1px solid #315c43;
  border-radius: 8px;
  color: #284d3c;
  font-weight: 700;
  text-decoration: none;
}

.about-link a:hover,
.about-link a:focus-visible {
  background: #e6efe5;
}