@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* ジブカク(myrevo.jp)子テーマ. CSSの正は tools/css_*.css — ここを直接編集しない.
   ro-japan / holocard へ複製するときは css_root.css の変数だけ差し替える. */
:root{
  --mr-main:#2f6f4f;        /* メイン: 深緑. ホフィットのティール #0E7C7B, ボディメクの青 #004aab と被らせない */
  --mr-main-dark:#1c5a3d;   /* リンク・数値の強調 */
  --mr-accent:#8a5a1a;      /* アクセント: 注記・ハイライトの文字 */
  --mr-accent-bg:#fdf7ec;   /* 同 背景 */
  --mr-bg:#f3f7f4;          /* 見出し・パネルの淡い地 */
  --mr-line:#d5e4da;        /* 罫線 */
}

/* ===== SWELLテーマ側の調整(.mr-*スコープの外) ===== */
.mr-nodate .c-postTimes{display:none}
.home.page .c-pageTitle,.home .p-mainVisual,.home .p-postSlider,.home #post_slider{display:none}
.home.page .l-mainContent__inner>.post_content>.mr-hero{margin-top:0}

/* ===== エリアページ ===== */
.mr-body{line-height:1.9;color:#222}
.mr-body h2{font-size:1.35em;margin:2.2em 0 .8em;padding:.5em .7em;border-left:5px solid var(--mr-main);background:var(--mr-bg)}
.mr-body h3{font-size:1.12em;margin:1.8em 0 .6em}
.mr-body .mr-updated{font-size:.85em;color:#777;margin:0 0 1em}
.mr-body .mr-lead{margin:0 0 1em}
.mr-body .mr-pr{font-size:.8em;color:#888;margin:.5em 0 1.5em}
.mr-body .mr-sortrow{display:flex;flex-wrap:wrap;align-items:center;gap:.4em;margin:1em 0 .4em}
.mr-body .mr-sortlabel{font-size:.85em;color:#666}
.mr-body .mr-sortbtn{font-size:.82em;padding:.35em .8em;border:1px solid #cfe0d5;border-radius:999px;
 background:#fff;color:var(--mr-main);cursor:pointer}
.mr-body .mr-sortbtn.is-on{background:var(--mr-main);color:#fff;border-color:var(--mr-main)}
.mr-body .mr-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.4em 0 1em}
.mr-body .mr-table{border-collapse:collapse;width:100%;min-width:880px;font-size:.9em}
.mr-body .mr-table th,.mr-body .mr-table td{border:1px solid #dde3df;padding:.55em .6em;text-align:center;vertical-align:middle;white-space:nowrap}
.mr-body .mr-table thead th{background:var(--mr-main);color:#fff;font-weight:600;white-space:nowrap}
.mr-body .mr-table tbody th{text-align:left;background:#fafbfa;font-weight:600;white-space:nowrap}
.mr-body .mr-table tbody th a{color:var(--mr-main-dark);text-decoration:none;border-bottom:1px dotted var(--mr-main-dark)}
.mr-body .mr-sub{font-size:.82em;color:#777}
.mr-body .mr-note{font-size:.85em;color:#666;margin:.6em 0 0}
.mr-body .mr-souba{border:1px solid #cfe0d5;border-radius:10px;padding:1.1em 1.2em;margin:2em 0;background:#f7fbf8}
.mr-body .mr-souba h3{margin:0 0 .2em;font-size:1.05em}
.mr-body .mr-soubanote{font-size:.8em;color:#777;margin:0 0 .8em}
.mr-body .mr-soubalist{list-style:none;padding:0;margin:0}
.mr-body .mr-soubalist li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5em;padding:.5em 0;border-top:1px dashed #d5e4da}
.mr-body .mr-soubalist li:first-child{border-top:0}
.mr-body .mr-k{min-width:8.5em;font-size:.9em;color:#555}
.mr-body .mr-v{font-weight:700;font-size:1.05em;color:var(--mr-main-dark)}
.mr-body .mr-s{font-size:.82em;color:#777}
.mr-body .mr-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9em;margin:1.2em 0}
.mr-body .mr-pick{border:1px solid #e2e6e3;border-radius:10px;padding:.9em 1em}
.mr-body .mr-pick h3{margin:0 0 .5em;font-size:.98em;color:var(--mr-main-dark)}
.mr-body .mr-pick ul{list-style:none;padding:0;margin:0}
.mr-body .mr-pick li{padding:.45em 0;border-top:1px dashed #eceeed;font-size:.9em}
.mr-body .mr-pick li:first-child{border-top:0}
.mr-body .mr-pick a{color:var(--mr-main-dark);text-decoration:none}
.mr-body .mr-pickwhy{display:block;font-size:.88em;color:#666;margin-top:.15em}
.mr-body .mr-card{border:1px solid #e2e6e3;border-radius:12px;padding:1.2em 1.3em;margin:1.4em 0;background:#fff}
.mr-body .mr-cardhead{display:flex;align-items:center;gap:.6em}
.mr-body .mr-rank{flex:none;width:1.9em;height:1.9em;border-radius:50%;background:var(--mr-main);color:#fff;
 display:flex;align-items:center;justify-content:center;font-size:.85em;font-weight:700}
.mr-body .mr-name{margin:0;font-size:1.1em}
.mr-body .mr-meta{font-size:.87em;color:#666;margin:.4em 0 .6em}
.mr-body .mr-tags{display:flex;flex-wrap:wrap;gap:.35em;margin-bottom:.9em}
.mr-body .mr-tag{font-size:.76em;background:#eef4f0;color:var(--mr-main);border-radius:4px;padding:.2em .55em}
.mr-body .mr-price{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8em;margin:.6em 0}
.mr-body .mr-pricebox{background:#f7f9f8;border-radius:8px;padding:.75em .9em}
.mr-body .mr-plabel{display:block;font-size:.8em;color:#666}
.mr-body .mr-pval{display:block;font-size:1.25em;font-weight:700;color:var(--mr-main-dark);margin:.1em 0 .3em}
.mr-body .mr-bd{list-style:none;padding:0;margin:0;font-size:.83em;color:#555}
.mr-body .mr-bd li{display:flex;justify-content:space-between;gap:1em;padding:.12em 0}
.mr-body .mr-basis{font-size:.8em;color:#666;margin:0}
.mr-body .mr-pricenote{font-size:.83em;color:var(--mr-accent);background:var(--mr-accent-bg);border-radius:6px;padding:.5em .7em;margin:.5em 0}
.mr-body .mr-monthly{font-size:.88em;margin:.4em 0}
.mr-body .mr-intro p{margin:.6em 0}
.mr-body .mr-review{border-left:3px solid #cfe0d5;padding-left:.9em;margin:1em 0}
.mr-body .mr-rsum{margin:0 0 .5em}
.mr-body .mr-quote{margin:0;font-size:.9em;color:#555;background:#fafbfa;border-radius:6px;padding:.7em .9em}
.mr-body .mr-quote cite{display:block;font-size:.85em;color:#888;font-style:normal;margin-top:.4em}
.mr-body .mr-disc{font-size:.78em;color:#999;margin:.4em 0 0}
.mr-body .mr-details{margin:.9em 0;border-top:1px solid #eee;padding-top:.6em}
.mr-body .mr-details summary{cursor:pointer;font-size:.92em;color:var(--mr-main-dark);font-weight:600}
.mr-body .mr-dbody h4{font-size:.95em;margin:1em 0 .35em}
.mr-body .mr-dbody ul{margin:.2em 0 .2em 1.2em;padding:0;font-size:.9em}
.mr-body .mr-dbody li{margin:.25em 0}
.mr-body .mr-spec{border-collapse:collapse;width:100%;font-size:.87em}
.mr-body .mr-spec th,.mr-body .mr-spec td{border:1px solid #e6eae8;padding:.4em .6em;text-align:left}
.mr-body .mr-spec th{background:#f7f9f8;width:8em;white-space:nowrap}
.mr-body .mr-shot{margin:.2em 0 .8em}
.mr-body .mr-shot img{width:100%;height:auto;border:1px solid #e6eae8;border-radius:8px;display:block}
.mr-body .mr-cta{margin:1em 0 .3em}
.mr-body .mr-cta a{display:inline-block;background:var(--mr-main);color:#fff;text-decoration:none;border-radius:8px;
 padding:.7em 1.4em;font-weight:600;font-size:.95em}
.mr-body .mr-src{font-size:.78em;color:#999;margin:.3em 0 0}
.mr-body .mr-src a{color:#999}
.mr-body .mr-faq{margin:1.1em 0}
.mr-body .mr-faq h3{margin:0 0 .3em;font-size:1em;color:var(--mr-main-dark)}
.mr-body .mr-faq p{margin:0}
.mr-body .mr-policy{border:1px solid #e2e6e3;border-radius:10px;padding:1em 1.2em;margin:2em 0;font-size:.88em;color:#555}
.mr-body .mr-policy h2{margin-top:0}
.mr-body .mr-policy ul{margin:.4em 0 .6em 1.1em;padding:0}
.mr-body .mr-policy li{margin:.4em 0}
.mr-body .mr-owner{font-size:.85em;color:#777;margin:.8em 0 0}
@media(max-width:600px){.mr-body h2{font-size:1.2em}.mr-body .mr-price{grid-template-columns:1fr}}

/* ===== 詳細記事 ===== */
.mr-detail{line-height:1.9;font-size:16px}
.mr-detail h2{margin:2.2em 0 .8em;padding:.5em .7em;border-left:5px solid var(--mr-main);background:var(--mr-bg);font-size:1.25em}
.mr-detail h3{margin:1.8em 0 .6em;font-size:1.08em;border-bottom:2px solid var(--mr-line);padding-bottom:.3em}
.mr-detail p{margin:0 0 1em}
.mr-detail .mr-note{font-size:.88em;color:#666}
.mr-detail .mr-lede{background:#fafbfa;border:1px solid var(--mr-line);border-radius:8px;padding:1em 1.1em;margin:0 0 1.4em}
.mr-detail .mr-hub{background:var(--mr-bg);border-radius:8px;padding:.9em 1.1em;margin:1.6em 0}
.mr-detail .mr-hub a{font-weight:700}
.mr-detail .mr-tablewrap{overflow-x:auto;margin:0 0 1.2em}
.mr-detail table{border-collapse:collapse;width:100%;min-width:520px;font-size:.94em}
.mr-detail th,.mr-detail td{border:1px solid var(--mr-line);padding:.6em .7em;text-align:left;vertical-align:top}
.mr-detail .mr-spec th{width:32%;background:#f7f9f8;font-weight:600;white-space:nowrap}
.mr-detail .mr-cmp thead th{background:#eef4f0;white-space:nowrap}
.mr-detail .mr-cmp .mr-me{background:var(--mr-accent-bg)}
.mr-detail .mr-rev{margin:0 0 1em;padding:.9em 1.1em;background:#f7f9f8;border-left:4px solid #cfe0d5;border-radius:0 6px 6px 0}
.mr-detail .mr-rev p{margin:0 0 .5em}
.mr-detail .mr-rev cite{font-size:.85em;color:#666;font-style:normal}
.mr-detail .mr-fit{display:grid;gap:1em;grid-template-columns:1fr 1fr;margin:0 0 1.2em}
@media(max-width:640px){.mr-detail .mr-fit{grid-template-columns:1fr}}
.mr-detail .mr-fit>div{border:1px solid var(--mr-line);border-radius:8px;padding:.9em 1em}
.mr-detail .mr-fit h4{margin:0 0 .5em;font-size:1em}
.mr-detail .mr-fit ul{margin:0;padding-left:1.2em}
.mr-detail .mr-fit li{margin:0 0 .5em}
.mr-detail .mr-yes{background:#f6fbf7;border-color:#c8e3d0!important}
.mr-detail .mr-no{background:#fdf8f6;border-color:#eed7cf!important}
.mr-detail .mr-faq h3{border:0;background:var(--mr-bg);padding:.5em .7em;border-radius:6px}
.mr-detail .mr-cta{display:block;text-align:center;margin:1.6em 0;padding:1em;background:var(--mr-main);color:#fff!important;
 border-radius:8px;font-weight:700;text-decoration:none}
.mr-detail .mr-map{position:relative;width:100%;padding-top:56%;margin:0 0 1em}
.mr-detail .mr-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ===== ガイド記事 ===== */
.mr-guide{line-height:1.9;color:#222}
.mr-guide h2{font-size:1.3em;margin:2.2em 0 .8em;padding:.5em .7em;border-left:5px solid var(--mr-main);background:var(--mr-bg)}
.mr-guide h3{font-size:1.1em;margin:1.8em 0 .6em;border-bottom:2px solid var(--mr-line);padding-bottom:.3em}
.mr-guide p{margin:0 0 1em}
.mr-guide ul,.mr-guide ol{margin:0 0 1.2em 1.3em;padding:0}
.mr-guide li{margin:.4em 0}
.mr-guide .mr-pr{font-size:.8em;color:#888;margin:0 0 1.2em}
.mr-guide .mr-conc{border:1px solid var(--mr-line);border-radius:10px;padding:1.1em 1.3em;margin:0 0 1.6em;background:var(--mr-bg)}
.mr-guide .mr-conc-h{margin:0 0 .5em;font-weight:700;color:var(--mr-main-dark)}
.mr-guide .mr-conc-list{margin:0 0 0 1.2em}
.mr-guide .mr-conc-list li{margin:.5em 0}
.mr-guide .mr-lead{margin:0 0 1.6em}
.mr-guide .mr-q{margin:1.6em 0 .5em;font-weight:700;color:var(--mr-main-dark)}
.mr-guide .mr-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.4em 0 1.4em}
.mr-guide .mr-gt{border-collapse:collapse;width:100%;min-width:420px;font-size:.92em}
.mr-guide .mr-gt th,.mr-guide .mr-gt td{border:1px solid var(--mr-line);padding:.55em .7em;text-align:left;vertical-align:top}
.mr-guide .mr-gt thead th{background:var(--mr-main);color:#fff;font-weight:600;white-space:nowrap}
.mr-guide .mr-gt tbody th{background:#f7f9f8;font-weight:600}
.mr-guide .mr-link{margin:.2em 0 1.4em;padding:.7em 1em;background:var(--mr-bg);border-radius:8px;font-size:.94em}
.mr-guide .mr-link a{color:var(--mr-main-dark);font-weight:700}
.mr-guide .mr-policy{border:1px solid var(--mr-line);border-radius:10px;padding:1em 1.2em;margin:2.4em 0 0;font-size:.87em;color:#555;background:#fafbfa}
.mr-guide .mr-policy h3{margin:0 0 .5em;border:0;padding:0;font-size:1em}
.mr-guide .mr-policy p{margin:0}
@media(max-width:600px){.mr-guide h2{font-size:1.16em}}

/* ===== トップページ ===== */
/* トップページ(ホフィット準拠の構成。class名mr-・配色深緑はジブカク固有=8/23指紋分散) */
.mr-hero{background:linear-gradient(135deg,var(--mr-bg),#fff 70%);border-bottom:1px solid var(--mr-line);margin:0 0 1.8em;padding:2.6em 1.2em 2.2em;text-align:left}
.mr-hero-in{max-width:860px;margin:0 auto}
.mr-hero-eyebrow{display:inline-block;font-size:.82em;font-weight:600;color:var(--mr-main-dark);border:1px solid var(--mr-line);background:#fff;border-radius:999px;padding:.3em 1em;margin:0 0 1em}
.mr-hero h1{font-size:1.9em;font-weight:900;line-height:1.4;margin:0 0 .5em;color:#1a1a1a}
.mr-hero h1 em{font-style:normal;color:var(--mr-main)}
.mr-hero-sub{font-size:1em;font-weight:700;color:var(--mr-main-dark);margin:0 0 .8em}
.mr-hero-lead{font-size:.95em;line-height:1.95;color:#555;margin:0 0 1.1em}
.mr-hero-chips{display:flex;flex-wrap:wrap;gap:.5em;margin:0}
.mr-hero-chips span{font-size:.8em;font-weight:600;color:var(--mr-main-dark);background:#fff;border:1px solid var(--mr-line);border-radius:6px;padding:.35em .8em}
.mr-top{line-height:1.9;color:#222}
.mr-top h2{font-size:1.3em;margin:2.2em 0 .8em;padding:.5em .7em;border-left:5px solid var(--mr-main);background:var(--mr-bg)}
.mr-top .mr-policy{border:1px solid var(--mr-line);background:#fafbfa;border-radius:10px;padding:1.1em 1.3em;margin:0 0 1.6em;font-size:.92em;color:#555}
.mr-top .mr-policy b{display:block;color:#1a1a1a;font-size:1em;margin:0 0 .5em}
.mr-top .mr-policy p{margin:0 0 .6em}
.mr-top .mr-policy p:last-child{margin:0}
.mr-top .mr-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8em;margin:0 0 .5em}
.mr-top .mr-stat{border:1px solid var(--mr-line);border-radius:10px;background:#fff;padding:1em .6em;text-align:center}
.mr-top .mr-stat-n{font-size:1.7em;font-weight:900;color:var(--mr-main-dark);line-height:1.2}
.mr-top .mr-stat-n small{font-size:.55em;font-weight:700}
.mr-top .mr-stat-l{font-size:.78em;color:#666;margin-top:.3em}
.mr-top .mr-statnote{font-size:.8em;color:#888;margin:0 0 1.5em}
.mr-top .mr-genres{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.9em;margin:0 0 1.6em}
.mr-top .mr-genre{display:block;border:1px solid var(--mr-line);border-radius:10px;background:#fff;padding:1.1em 1.2em;text-decoration:none;color:inherit}
.mr-top a.mr-genre:hover{border-color:var(--mr-main);box-shadow:0 6px 18px rgba(47,111,79,.12)}
.mr-top .mr-genre b{display:block;font-size:1.05em;font-weight:900;color:#1a1a1a;margin:0 0 .5em}
.mr-top .mr-genre b span{display:inline-block;background:var(--mr-main);color:#fff;font-size:.7em;font-weight:700;border-radius:4px;padding:.15em .6em;margin-left:.5em;vertical-align:middle}
.mr-top .mr-genre.is-soon{background:#fafbfa;color:#888}
.mr-top .mr-genre.is-soon b{color:#888}
.mr-top .mr-genre.is-soon b span{background:#aaa}
.mr-top .mr-genre p{margin:0;font-size:.85em;line-height:1.8;color:#666}
.mr-top .mr-prefs{margin:0 0 1.6em}
.mr-top .mr-pref{border:1px solid var(--mr-line);border-radius:10px;background:#fff;padding:1em 1.2em;margin:0 0 .8em}
.mr-top .mr-pref-name{font-size:1em;font-weight:800;color:#1a1a1a;margin:0 0 .6em}
.mr-top .mr-cities{display:flex;flex-wrap:wrap;gap:.5em}
.mr-top .mr-cities a{display:inline-flex;align-items:center;gap:.5em;border:1px solid var(--mr-line);border-radius:6px;background:#fafbfa;padding:.5em .9em;text-decoration:none;color:#1a1a1a;font-size:.9em}
.mr-top .mr-cities a:hover{border-color:var(--mr-main);background:var(--mr-bg)}
.mr-top .mr-cities .mr-cnt{font-size:.82em;font-weight:800;color:var(--mr-main-dark)}
.mr-top .mr-guides{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.9em;margin:0 0 1.6em}
.mr-top .mr-guide-card{display:block;border:1px solid var(--mr-line);border-radius:10px;background:#fff;padding:1em 1.1em;text-decoration:none;color:inherit}
.mr-top .mr-guide-card:hover{border-color:var(--mr-main);box-shadow:0 6px 18px rgba(47,111,79,.12)}
.mr-top .mr-guide-card b{display:block;font-size:.95em;font-weight:800;color:var(--mr-main-dark);margin:0 0 .4em;line-height:1.5}
.mr-top .mr-guide-card p{margin:0;font-size:.82em;line-height:1.75;color:#666}
@media(max-width:600px){.mr-hero h1{font-size:1.45em}.mr-hero{padding:1.8em 1em 1.6em}}

