@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){
  /*必要ならばここにコードを書く*/
}

/* ===== 緑ナンバー通信 カスタムデザイン ここから ===== */

:root{
  --mn-green:#0d4f33;
  --mn-accent:#8cc63f;
  --mn-ink:#22272b;
  --mn-line:#e3e8e5;
}

.entry-content,
.article p{
  line-height:1.95;
  letter-spacing:.02em;
  color:var(--mn-ink);
}
.entry-content > p{ margin-bottom:1.6em; }

.article h2{
  background:var(--mn-green);
  color:#fff;
  padding:.7em .9em;
  border-radius:6px;
  font-size:1.35em;
  line-height:1.5;
  margin-top:2.6em;
}
.article h3{
  border-bottom:none;
  border-left:6px solid var(--mn-accent);
  padding:.1em 0 .1em .7em;
  font-size:1.18em;
  line-height:1.6;
  margin-top:2.2em;
}
.article h4{
  font-size:1.05em;
  color:var(--mn-green);
  margin-top:1.8em;
}

@media screen and (min-width:1240px){
  .article .entry-content{ max-width:760px; }
}

.entry-content table{ font-size:.95em; }
.entry-content table th{
  background:#f2f6f3;
  color:var(--mn-ink);
}

.list .entry-card-wrap,
.list .vertical-card-wrap{
  border-radius:10px;
  overflow:hidden;
  transition:box-shadow .2s ease, transform .2s ease;
}
.list .entry-card-wrap:hover{
  box-shadow:0 6px 20px rgba(13,79,51,.13);
  transform:translateY(-2px);
}
.entry-card-title,.vertical-card-title{
  line-height:1.5;
  font-weight:700;
}
.list .cat-label{ display:none; }

.menu-mobile > li > a{
  padding:.65em .4em;
  font-size:.82em;
  line-height:1.4;
}
.menu-mobile > li{
  flex:0 0 33.333%;
  max-width:33.333%;
  border-color:rgba(255,255,255,.14);
}

.header .site-name-text{ letter-spacing:.06em; }
.tagline{ font-size:.86em; opacity:.92; }

.sns-share .sns-buttons a{
  font-size:.78em;
}
.sns-share .sns-buttons a .social-icon{ font-size:1em; }
.sns-share-message{ display:none; }

.toc{
  background:#f7faf8;
  border:1px solid var(--mn-line);
  border-radius:8px;
}
.toc-title{ color:var(--mn-green); font-weight:700; }

.sidebar h3{
  background:var(--mn-green);
  color:#fff;
  border-radius:5px;
  padding:.55em .8em;
  font-size:.98em;
}

.footer{ font-size:.92em; }

/* ===== カスタムデザイン ここまで ===== */

/* ===== アピールエリア（入口） ===== */
.appeal-area{ padding:2.4em 1.2em; }
.appeal-content{ max-width:1000px; margin:0 auto; }
.appeal-title{
  font-size:1.5em;
  font-weight:700;
  letter-spacing:.04em;
  margin-bottom:.6em;
}
.mn-lead{
  font-size:.95em;
  line-height:1.9;
  opacity:.92;
  margin-bottom:1.8em;
}
.mn-nav-block{ margin-bottom:1.8em; }
.mn-nav-label{
  display:block;
  font-size:.78em;
  letter-spacing:.14em;
  opacity:.7;
  margin-bottom:.6em;
}
.mn-chips{ display:flex; flex-wrap:wrap; gap:.5em; }
.mn-chips a{
  display:inline-block;
  padding:.42em 1.1em;
  border:1px solid rgba(255,255,255,.4);
  border-radius:999px;
  font-size:.9em;
  color:#fff;
  text-decoration:none;
  transition:background .15s ease;
}
.mn-chips a:hover{ background:rgba(255,255,255,.16); }
.mn-doors{ display:grid; grid-template-columns:repeat(3,1fr); gap:.8em; }
.mn-door{
  display:block;
  padding:1.1em 1em;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  border-radius:9px;
  color:#fff;
  text-decoration:none;
  transition:background .15s ease, transform .15s ease;
}
.mn-door:hover{ background:rgba(255,255,255,.17); transform:translateY(-2px); }
.mn-door span{
  display:block;
  font-size:.74em;
  letter-spacing:.1em;
  color:#8cc63f;
  margin-bottom:.45em;
}
.mn-door strong{
  display:block;
  font-size:1.02em;
  line-height:1.5;
  margin-bottom:.35em;
}
.mn-door small{
  display:block;
  font-size:.78em;
  opacity:.75;
  line-height:1.6;
}
@media screen and (max-width:834px){
  .mn-doors{ grid-template-columns:1fr; }
  .appeal-title{ font-size:1.25em; }
}

/* mn-appeal-fix */
.appeal-area{
  background:var(--mn-green) !important;
  color:#fff !important;
  text-align:left;
}
.appeal-area a{ color:#fff; }
.appeal-title{ text-align:center; color:#fff; }
.mn-lead{ max-width:760px; margin-left:auto; margin-right:auto; }

/* mn-appeal-fix2 */
.appeal{ background:var(--mn-green) !important; padding:2.6em 1em !important; }
.appeal-content{ background:transparent !important; color:#fff !important; box-shadow:none !important; max-width:1040px; margin:0 auto; padding:0 !important; }
.appeal-content a{ color:#fff; }
.appeal-message{ text-align:left; }
.appeal-title{ text-align:center; color:#fff !important; }
.mn-lead{ color:rgba(255,255,255,.9); }

/* mn-side-chips */
.mn-side-chips{ display:flex; flex-wrap:wrap; gap:.45em; margin-bottom:1.2em; }
.mn-side-chips a{
  display:inline-block;
  padding:.4em 1em;
  border:1px solid var(--mn-green);
  border-radius:999px;
  font-size:.88em;
  color:var(--mn-green);
  text-decoration:none;
  transition:background .15s ease, color .15s ease;
}
.mn-side-chips a:hover{ background:var(--mn-green); color:#fff; }

/* ===== 計算機 ===== */
.mnc{ margin:2em 0; }
.mnc-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1em; }
.mnc-box{ background:#f7faf8; border:1px solid var(--mn-line); border-radius:10px; padding:1.2em 1.1em; }
.mnc-h{ margin:0 0 .9em; font-size:1.02em; color:var(--mn-green); border:none; padding:0; background:none; }
.mnc label{ display:block; font-size:.84em; font-weight:700; color:#41504a; margin:.9em 0 .3em; }
.mnc input[type=number], .mnc select{ width:100%; padding:.5em .6em; border:1px solid #cdd8d2; border-radius:6px; font-size:.95em; background:#fff; }
.mnc-2{ display:grid; grid-template-columns:1fr 1fr; gap:.7em; }
.mnc-sub{ display:none; margin-top:.6em; padding:.8em; background:#eef4f0; border-radius:8px; }
.mnc-check{ display:flex !important; align-items:center; gap:.5em; margin-top:1.1em !important; }
.mnc-check input{ width:auto !important; }
.mnc-u{ font-size:.8em; color:var(--mn-muted); margin-left:.3em; }
.mnc-hint{ font-size:.8em; line-height:1.7; color:#6b7680; margin:.6em 0 0; }
.mnc-btn{ width:100%; margin-top:1.3em; padding:.85em; background:var(--mn-green); color:#fff; border:none; border-radius:7px; font-size:1em; font-weight:700; cursor:pointer; }
.mnc-btn:hover{ background:#0a4029; }
.mnc-out{ margin-top:1.4em; padding:1.3em; border:2px solid var(--mn-green); border-radius:10px; background:#fff; }
.mnc-meta{ font-size:.84em; color:var(--mn-muted); margin:0 0 1em; }
.mnc-t{ width:100%; margin:0 0 1.1em; font-size:.92em; border-collapse:collapse; }
.mnc-t th,.mnc-t td{ padding:.5em .7em; border-bottom:1px solid #e7ede9; text-align:left; }
.mnc-t th{ width:52%; font-weight:400; color:#54615a; background:none; }
.mnc-t td{ text-align:right; font-variant-numeric:tabular-nums; }
.mnc-tot th,.mnc-tot td{ font-weight:700; color:var(--mn-green); font-size:1.08em; border-bottom:2px solid var(--mn-green); }
.mnc-ok{ padding:.9em 1em; border-radius:8px; background:#eaf5ec; border-left:5px solid #2e8b52; line-height:1.8; font-size:.93em; }
.mnc-ng{ padding:.9em 1em; border-radius:8px; background:#fdeeee; border-left:5px solid #c0392b; line-height:1.8; font-size:.93em; }
.mnc-err{ color:#c0392b; font-weight:700; margin:0; }
@media screen and (max-width:834px){ .mnc-grid{ grid-template-columns:1fr; } }

/* mn-fix-v2 */
@media screen and (min-width:1024px){
  .navi-in > ul{ flex-wrap:nowrap; }
  .navi-in > ul > li > a{ padding:0 .7em; font-size:.92em; white-space:nowrap; }
}
html,body{ overflow-x:hidden; max-width:100%; }
.eye-catch .cat-label{ display:none; }
.article h1.entry-title{ font-size:1.85em; line-height:1.55; margin-bottom:.7em; }
@media screen and (min-width:1000px){
  .article .entry-content{ max-width:760px; margin-left:auto; margin-right:auto; }
}

/* mn-author */
.mn-author{ max-width:760px; margin:2.5em auto 0; padding:1.3em 1.4em; background:#f4f8f5; border-left:5px solid var(--mn-green); border-radius:0 8px 8px 0; }
.mn-author-label{ font-size:.78em; letter-spacing:.12em; color:var(--mn-green); font-weight:700; margin:0 0 .6em; }
.mn-author-body{ font-size:.9em; line-height:1.9; margin:0 0 .8em; color:#3b453f; }
.mn-author-link{ font-size:.85em; margin:0; }
.mn-author-link a{ color:var(--mn-green); }

/* mn-sidebar-v2 */
.sidebar h3{
  background:none !important;
  color:#41504a !important;
  border:none;
  border-bottom:2px solid var(--mn-line);
  border-radius:0;
  padding:0 0 .5em !important;
  font-size:.88em !important;
  letter-spacing:.08em;
}
.mn-side-label{
  display:block;
  font-size:.88em;
  font-weight:700;
  letter-spacing:.08em;
  color:#41504a;
  padding-bottom:.5em;
  border-bottom:2px solid var(--mn-line);
  margin-bottom:.9em;
}
.mn-side-nav{ margin-bottom:2em; }
.mn-side-tool{
  display:block;
  background:var(--mn-green);
  border-radius:10px;
  padding:1.2em 1.2em 1.3em;
  margin-bottom:2em;
}
.mn-side-tool-label{
  display:block;
  font-size:.72em;
  letter-spacing:.14em;
  color:var(--mn-accent);
  margin-bottom:.5em;
}
.mn-side-tool-link{
  display:block;
  color:#fff !important;
  font-size:1.08em;
  font-weight:700;
  line-height:1.5;
  text-decoration:none;
  margin-bottom:.6em;
}
.mn-side-tool-link:hover{ text-decoration:underline; }
.mn-side-tool-sub{
  display:block;
  font-size:.76em;
  line-height:1.7;
  color:rgba(255,255,255,.78);
}

/* mn-appeal-v3 */
.appeal{ padding:1.9em 1em 1.7em !important; }
.appeal-title{ font-size:1.4em; margin-bottom:.45em; }
.mn-lead{ font-size:.9em; line-height:1.85; margin-bottom:1.4em; }
.mn-nav-block{ margin-bottom:1.3em; }
.mn-nav-label{ margin-bottom:.5em; }
.mn-chips a{ padding:.38em 1em; font-size:.86em; }
.mn-door{ padding:.95em 1em; }
@media screen and (max-width:834px){
  .appeal{ padding:1.4em .9em 1.3em !important; }
  .appeal-title{ font-size:1.18em; line-height:1.5; }
  .mn-lead{ font-size:.83em; line-height:1.75; margin-bottom:1.1em; }
  .mn-doors{ grid-template-columns:1fr; gap:.45em; }
  .mn-door{ padding:.65em .9em; display:flex; align-items:baseline; gap:.7em; flex-wrap:wrap; }
  .mn-door span{ margin-bottom:0; font-size:.68em; }
  .mn-door strong{ font-size:.95em; margin-bottom:0; }
  .mn-door small{ display:none; }
}

/* mn-sidebar-v3 */
.sidebar h2, .sidebar h3, .sidebar .wp-block-heading{
  background:none !important;
  color:#41504a !important;
  border:none !important;
  border-bottom:2px solid var(--mn-line) !important;
  border-radius:0 !important;
  padding:0 0 .5em !important;
  margin:0 0 .9em !important;
  font-size:.9em !important;
  font-weight:700;
  letter-spacing:.08em;
}
.sidebar .mn-side-tool *{ border:none !important; }
.sidebar .wp-block-latest-posts li{ margin-bottom:.9em; line-height:1.65; }
.sidebar .wp-block-latest-posts a{ font-size:.9em; color:#2c3833; text-decoration:none; }
.sidebar .wp-block-latest-posts a:hover{ color:var(--mn-green); text-decoration:underline; }
.sidebar .wp-block-group{ margin-bottom:2em; }
.sidebar .wp-block-search{ margin-bottom:2em; }

/* mn-header-v2 */
.header-container .header{ padding-top:1.1em !important; padding-bottom:1.1em !important; }
.header .tagline{ margin-bottom:.45em; }
@media screen and (max-width:834px){
  .header-container .header{ padding-top:.8em !important; padding-bottom:.8em !important; }
  .header .tagline{ font-size:.72em; line-height:1.5; }
}

/* mn-mobilenav-v2 */
@media screen and (max-width:1023px){
  .menu-mobile > li > a{ padding:.45em .3em !important; font-size:.8em !important; line-height:1.4 !important; min-height:0 !important; height:auto !important; }
  .menu-mobile > li{ min-height:0 !important; }
}

/* mn-header-v3 */
.header .tagline{ display:none; }
.header-container .header{ padding-top:1.5em !important; padding-bottom:1.5em !important; }
@media screen and (max-width:834px){
  .header-container .header{ padding-top:1em !important; padding-bottom:1em !important; }
}

/* mn-work-tool */
.mnc-warn{ padding:.9em 1em; border-radius:8px; background:#fdf6e6; border-left:5px solid #d08b13; line-height:1.8; font-size:.93em; }
.mw-t th{ width:44%; }
.mw-t td:last-child{ width:5.5em; text-align:center; font-weight:700; font-size:.88em; }
.mw-ok{ color:#2e8b52; }
.mw-warn{ color:#c07d0c; }
.mw-ng{ color:#c0392b; }
.mw-tip{ margin-top:1.2em; padding:1em 1.1em; background:#eef4f0; border-radius:8px; border-left:5px solid var(--mn-accent); line-height:1.85; font-size:.92em; }
.mw-tip-sub{ display:block; margin-top:.5em; font-size:.88em; color:#54615a; }

.mn-side-tool-2{ margin-top:1.1em; padding-top:1.1em; border-top:1px solid rgba(255,255,255,.22); }
