/*
Theme Name: kizasi Cocoon Child
Description: kizasiの配色・文字・余白を整えるCocoon子テーマ。
Template: cocoon-master
Version: 0.1.0
License: GNU General Public License v2 or later
Text Domain: kizasi-cocoon-child
*/

/* 01. ブランドと本文 */
:root { --kizasi-navy:#14243a; --kizasi-gold:#a77225; --kizasi-ivory:#f8f6f0; --kizasi-line:#e4dfd5; }
body { font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif; letter-spacing:.035em; }
.entry-content { line-height:2.05; }
.entry-content p { margin-bottom:1.65em; }
a { text-underline-offset:.25em; }
a:focus-visible,button:focus-visible { outline:3px solid var(--kizasi-gold); outline-offset:5px; }

/* 02. Cocoon既存ヘッダー・ナビの細部 */
.logo-image { padding:16px 0 9px; }
.logo-image img { width:200px; height:auto; }
.navi-in > ul > li { font-size:13px; letter-spacing:.09em; }
.navi-in > ul > li > a { padding:0 16px; }
.header-container { border-bottom:1px solid var(--kizasi-line); }
.footer { margin-top:80px; padding-top:42px; padding-bottom:28px; }

/* 03. トップページの標準ブロック */
.kizasi-home { color:var(--kizasi-navy); }
.kizasi-intro { padding:0 0 24px; }
.kizasi-eyebrow { color:var(--kizasi-gold); font-size:12px; font-weight:600; letter-spacing:.24em; }
.kizasi-home h1 { font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:clamp(30px,3.4vw,42px); font-weight:500; line-height:1.6; letter-spacing:.08em; margin:12px 0; }
.kizasi-intro .kizasi-description { color:#68707a; font-size:14px; }
.kizasi-intro p { margin-bottom:12px; }
.kizasi-feature { border-radius:3px; overflow:hidden; }
.kizasi-feature .wp-block-cover__inner-container { max-width:650px; margin-left:0; padding:clamp(18px,4vw,48px); }
.kizasi-feature h2 { padding:0; border:0; background:none; color:#fff; font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-weight:600; font-size:clamp(25px,3.4vw,39px); line-height:1.65; text-shadow:0 2px 18px #0008; }
.kizasi-feature p { font-size:13px; }
.kizasi-feature .wp-block-button__link { background:var(--kizasi-ivory); color:var(--kizasi-navy); border-radius:0; font-size:13px; padding:12px 24px; }
.kizasi-section { padding-top:54px; }
.kizasi-section > h2 { border:0; background:none; padding:0 0 15px; margin-bottom:22px; border-bottom:1px solid var(--kizasi-line); font-size:22px; letter-spacing:.1em; }
.kizasi-home .wp-block-post-title { border:0; background:none; padding:0; font-size:19px; line-height:1.8; }
.kizasi-home .wp-block-post-title a { color:var(--kizasi-navy); text-decoration:none; }
.kizasi-home .wp-block-post-excerpt { font-size:14px; color:#68707a; }
.kizasi-home .wp-block-post-featured-image { margin:0 0 22px; }
.kizasi-home .wp-block-post-featured-image img { aspect-ratio:16/9; object-fit:cover; }
.kizasi-about { border-top:1px solid var(--kizasi-line); margin-top:55px; padding:35px 0 15px; }
.kizasi-about p { font-size:14px; color:#68707a; }

/* 04. 記事の見出し・画像・動画 */
.single .entry-title { font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:clamp(27px,3.2vw,39px); font-weight:600; line-height:1.65; letter-spacing:.06em; }
.single .entry-content h2 { border:0; border-bottom:1px solid var(--kizasi-line); background:none; color:var(--kizasi-navy); padding:0 0 17px; margin:64px 0 28px; font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:25px; line-height:1.6; }
.single .entry-content h3 { border:0; padding-left:0; }
.entry-content figcaption { color:#7a7d80; font-size:11px; line-height:1.8; text-align:left; }
.kizasi-editorial-note { border-left:2px solid var(--kizasi-gold); padding:20px 26px; background:var(--kizasi-ivory); margin:36px 0; }
.kizasi-editorial-note p { margin:0; }
.kizasi-video { margin:26px 0 8px; }
.kizasi-video iframe { display:block; width:100%; aspect-ratio:16/9; height:auto; border:0; }
.kizasi-sources { margin-top:54px; border-top:1px solid var(--kizasi-line); padding-top:22px; font-size:12px; color:#68707a; }
.kizasi-sources summary { cursor:pointer; padding:8px 0; font-weight:600; }
.kizasi-sources li { margin-bottom:10px; }
.kizasi-visual { max-width:470px; margin:38px auto; }

/* 05. スマートフォンの余白と可読性 */
@media (max-width:767px) {
 .logo-image img { width:165px; }
 .kizasi-intro { padding-top:10px; padding-bottom:24px; }
 .kizasi-home h1 { font-size:29px; }
 .kizasi-feature { min-height:440px !important; }
 .kizasi-feature .wp-block-cover__inner-container { padding:16px 8px; }
 .kizasi-feature h2 { font-size:26px; }
 .kizasi-section { padding-top:36px; }
 .single .entry-content h2 { font-size:23px; margin-top:46px; }
 .entry-content { line-height:2; }
 .kizasi-editorial-note { padding:18px; }
}
