@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/* BEGIN shika-ad-check Codex customization 2026-05-21 */
:root {
  --sac-ink: #1f2933;
  --sac-muted: #5b6b76;
  --sac-line: #dfe8eb;
  --sac-bg: #f5f7f8;
  --sac-card: #ffffff;
  --sac-navy: #123444;
  --sac-teal: #0f766e;
  --sac-teal-soft: #edf8f6;
  --sac-blue: #2563eb;
}

body {
  background: var(--sac-bg);
  color: var(--sac-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  letter-spacing: 0;
}

a {
  color: var(--sac-blue);
}

.header-container,
.navi,
.footer {
  box-shadow: none;
}

.header-container {
  background: var(--sac-card);
  border-bottom: 1px solid var(--sac-line);
}

.header-in {
  padding: 24px 16px 18px;
}

.tagline {
  color: var(--sac-muted);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 6px;
}

.site-name-text {
  color: var(--sac-navy);
  font-size: clamp(24px, 4vw, 34px);
  font-weight: 750;
  letter-spacing: 0;
}

.navi-in:empty,
.navi-footer-in:empty {
  display: none;
}

.sns-share,
.sns-follow,
.sns-share-message,
.sns-follow-message,
.sns-share-buttons,
.sns-follow-buttons,
.article-footer .sns-share,
.article-footer .sns-follow,
.footer-meta,
.author-info {
  display: none !important;
}

.home .toc,
.page .toc,
.page .date-tags,
.page .post-date,
.page .post-update,
.page .entry-date,
.page .entry-categories,
.page .entry-tags {
  display: none !important;
}

.content-in {
  max-width: 1040px;
}

.main {
  background: var(--sac-card);
  border: 1px solid var(--sac-line);
  border-radius: 8px;
  box-shadow: 0 12px 34px rgba(18, 52, 68, 0.07);
  padding: 34px;
}

.sidebar {
  display: none;
}

.content-in .main {
  width: 100%;
}

.entry-title,
.article h1,
.home-hero h1 {
  color: var(--sac-navy);
  font-weight: 750;
  letter-spacing: 0;
  line-height: 1.35;
}

.article h2,
.home-section-grid h2 {
  border-left: 5px solid var(--sac-teal);
  color: var(--sac-navy);
  font-size: 1.35em;
  line-height: 1.45;
  margin-top: 2.2em;
  padding: 0.15em 0 0.15em 0.7em;
}

.article h3 {
  color: var(--sac-navy);
  font-size: 1.12em;
  margin-top: 1.8em;
}

.article p,
.article li,
.home-hero p,
.home-section-grid p,
.home-section-grid li,
.home-note p {
  line-height: 1.9;
}

.cta-box,
.point-box,
.home-note {
  background: var(--sac-teal-soft);
  border: 1px solid #cfe7e3;
  border-radius: 8px;
  margin: 1.4em 0;
  padding: 18px 20px;
}

.cta-box,
.cta-box p,
.cta-box strong {
  color: var(--sac-navy);
}

.cta-box a.wp-block-button__link,
.article a.wp-block-button__link,
.article p > a[rel~="sponsored"] {
  background: var(--sac-teal);
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-weight: 700;
  line-height: 1.5;
  padding: 12px 18px;
  text-align: center;
  text-decoration: none;
}

.cta-box a.wp-block-button__link:hover,
.article a.wp-block-button__link:hover,
.article p > a[rel~="sponsored"]:hover {
  background: #0b5f59;
}

.entry-categories-tags {
  margin: 28px 0 8px;
}

.entry-categories .cat-link {
  align-items: center;
  background: #edf8f6;
  border: 1px solid #cfe7e3;
  border-radius: 999px;
  color: var(--sac-teal);
  display: inline-flex;
  font-size: 0.9rem;
  font-weight: 700;
  gap: 6px;
  line-height: 1.4;
  padding: 6px 11px;
  text-decoration: none;
}

.entry-categories .cat-link:hover {
  background: #dff1ee;
  color: #0b5f59;
}

#related-entries:has(.related-list > p) {
  display: none;
}

#breadcrumb {
  border-top: 1px solid var(--sac-line);
  color: var(--sac-muted);
  margin-top: 24px;
  padding-top: 16px;
}

#breadcrumb a {
  color: var(--sac-muted);
}

#breadcrumb a:hover {
  color: var(--sac-teal);
}

.table-scroll {
  border: 1px solid var(--sac-line);
  border-radius: 8px;
}

.table-scroll table {
  margin: 0;
}

.table-scroll th {
  background: #eef5f7;
  color: var(--sac-navy);
  font-weight: 700;
}

.table-scroll th,
.table-scroll td {
  border-color: var(--sac-line);
  line-height: 1.65;
  padding: 10px 12px;
  vertical-align: top;
}

.home-hero {
  border-bottom: 1px solid var(--sac-line);
  margin-bottom: 28px;
  padding-bottom: 24px;
}

.home-kicker {
  color: var(--sac-teal);
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 8px;
}

.home-section-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-section-grid section {
  border: 1px solid var(--sac-line);
  border-radius: 8px;
  padding: 18px 20px;
}

.footer {
  background: var(--sac-navy);
  color: #eaf4f4;
  margin-top: 32px;
}

.footer a,
.footer .site-name-text {
  color: #ffffff;
}

.copyright {
  color: #d9e7e9;
}

@media (max-width: 834px) {
  .mobile-footer-menu-buttons,
  .mobile-menu-buttons {
    display: none !important;
  }

  .main {
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    box-shadow: none;
    padding: 24px 18px;
  }

  .home-section-grid {
    grid-template-columns: 1fr;
  }

  .article h2,
  .home-section-grid h2 {
    font-size: 1.22em;
  }

  .entry-title,
  .article h1,
  .home-hero h1 {
    font-size: 30px;
    line-height: 1.38;
  }

  .home-hero p,
  .home-section-grid p,
  .home-section-grid li,
  .home-note p,
  .article p,
  .article li {
    font-size: 16px;
  }

  .cta-box a.wp-block-button__link,
  .article a.wp-block-button__link,
  .article p > a[rel~="sponsored"] {
    display: block;
    width: 100%;
  }
}
/* END shika-ad-check Codex customization 2026-05-21 */
/* BEGIN shika-ad-check front page polish 2026-05-21 */
body.home.page #sidebar,
body.home.page .sidebar,
body.home.page .widget-area {
  display: none !important;
}

body.home.page .content-in,
body.home.page #content,
body.home.page #main,
body.home.page .main {
  box-sizing: border-box;
  max-width: 100% !important;
  overflow-x: hidden;
  width: 100% !important;
}

body.home.page .content-in {
  max-width: 960px !important;
}

body.home.page .entry-content,
body.home.page .sac-home,
body.home.page .sac-hero,
body.home.page .sac-home p,
body.home.page .sac-home h2,
body.home.page .sac-home h3 {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

body.home.page .sac-home [style*="display:grid"] {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
}

@media (max-width: 834px) {
  body.home.page .main {
    padding-left: 16px;
    padding-right: 16px;
  }

  body.home.page .entry-content,
  body.home.page .sac-home {
    box-sizing: border-box;
    max-width: calc(100vw - 32px) !important;
    overflow-x: hidden;
    width: calc(100vw - 32px) !important;
  }

  body.home.page .sac-hero,
  body.home.page .sac-home section,
  body.home.page .sac-home section > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  body.home.page .sac-hero {
    padding: 24px 18px !important;
  }

  body.home.page .sac-home [style*="display:grid"] {
    display: block !important;
  }

  body.home.page .sac-home [style*="display:grid"] > div {
    margin-bottom: 14px;
  }
}
/* END shika-ad-check front page polish 2026-05-21 */
/* BEGIN shika-ad-check front page heading polish 2026-05-21 */
body.home.page .sac-home h2,
body.home.page.article h2,
body.home.page .article .sac-home h2 {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid #d9e8e6 !important;
  box-shadow: none !important;
  color: var(--sac-navy) !important;
  display: block !important;
  font-size: 1.28rem !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
  margin: 0 0 16px !important;
  padding: 0 0 10px !important;
}

body.home.page .sac-home h2::before,
body.home.page .sac-home h2::after,
body.home.page.article h2::before,
body.home.page.article h2::after,
body.home.page .article .sac-home h2::before,
body.home.page .article .sac-home h2::after {
  content: none !important;
  display: none !important;
}

body.home.page .sac-home h3,
body.home.page.article h3,
body.home.page .article .sac-home h3 {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--sac-navy) !important;
  font-size: 1.08rem !important;
  font-weight: 750 !important;
  line-height: 1.55 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
}

body.home.page .sac-home h3::before,
body.home.page .sac-home h3::after,
body.home.page.article h3::before,
body.home.page.article h3::after,
body.home.page .article .sac-home h3::before,
body.home.page .article .sac-home h3::after {
  content: none !important;
  display: none !important;
}

body.home.page .sac-home > section > div,
body.home.page .sac-home .sac-hero {
  border-radius: 6px !important;
}

@media (max-width: 834px) {
  body.home.page .sac-home h2 {
    font-size: 1.2rem !important;
  }

  body.home.page .sac-home h3 {
    font-size: 1.02rem !important;
  }
}
/* END shika-ad-check front page heading polish 2026-05-21 */