@charset "UTF-8";
/* ==========================================================================
   MIRAIE 2026（リーフレット調）
   - 見本 mock/common.css・各ページの <style> を WordPress 用に移したもの
   - 部品はすべて mr- で始まるクラス名。SWELLのクラスは、ヘッダー・メニュー・本文の最低限だけ上書きする
   ========================================================================== */

:root{
  --mr-ink:#1e1b16;--mr-ink-2:#2a2620;--mr-mint:#8ad8d8;--mr-mint-deep:#2b7f7c;--mr-pink:#e1b2bb;--mr-sky:#98cbde;--mr-slate:#55707c;
  --mr-paper:#ffffff;--mr-paper-2:#f5f4f1;--mr-muted:#5d5852;--mr-muted-d:#bcb6ad;--mr-rule-d:rgba(138,216,216,.35);--mr-rule-l:#ddd9d2;
  --mr-en:"Jost",system-ui,sans-serif;
  --mr-ja:"Zen Kaku Gothic New","游ゴシック体","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",sans-serif;
  --mr-wrap:1200px;--mr-ease:cubic-bezier(.22,1,.36,1);
  --mr-head-h:72px;
}

/* ---------- 全体 ---------- */
body{background:var(--mr-paper);color:var(--mr-ink);font-family:var(--mr-ja);font-weight:400;letter-spacing:.03em;-webkit-text-size-adjust:100%}
.mr26-site{--swl-font_family:var(--mr-ja);font-family:var(--mr-ja);color:var(--mr-ink);background:var(--mr-paper)}
html{scroll-padding-top:calc(var(--mr-head-h) + 8px)}
.mr26-site #body_wrap,#body_wrap.mr26-site{overflow:clip}
.mr-main{font-size:16px;line-height:1.9;letter-spacing:.03em}
.mr-main h1,.mr-main h2,.mr-main h3{word-break:auto-phrase;text-wrap:balance}
.mr-main p,.mr-main li,.mr-main dd{word-break:auto-phrase;text-wrap:pretty}
.mr-main img{display:block;max-width:100%;height:auto}
.mr-main a{color:inherit;text-decoration:none}
.mr-main p{margin:0}
.mr-wrap{max-width:var(--mr-wrap);margin:0 auto;padding:0 32px}
.mr-en{font-family:var(--mr-en);letter-spacing:.14em;text-transform:uppercase}

/* 新デザインのページでは、SWELLの本文枠（余白・幅・ぱんくず・タイトル）を外して全幅で組む */
.mr26 .l-content,#body_wrap.mr26 #content{max-width:none;margin:0;padding:0}
.mr26 .l-content>.mr-main{width:100%}
.mr26 .p-breadcrumb,.mr26 .l-topTitleArea,.mr26 .c-pageTitle{display:none}

/* ---------- 丸印 ---------- */
.mr-stamp .mr-stamp__ring{transform-origin:100px 100px;animation:mr-spin 48s linear infinite}
.mr-stamp .mr-stamp__ring text{font-family:var(--mr-en);font-weight:600;font-size:15px;letter-spacing:.18em;fill:var(--mr-ink)}
.mr-stamp .mr-stamp__core{font-family:var(--mr-ja);font-weight:900;fill:var(--mr-ink)}
@keyframes mr-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.mr-stamp .mr-stamp__ring{animation:none}}

/* ---------- 矢印つきの文字リンク ---------- */
.mr-cta{display:inline-flex;align-items:center;gap:14px;font-weight:700;font-size:16px;padding:14px 0;border-bottom:2px solid currentColor;color:inherit;text-decoration:none}
.mr-cta__arr{position:relative;width:28px;height:2px;background:currentColor;transition:width .4s var(--mr-ease)}
.mr-cta__arr::after{content:"";position:absolute;right:0;top:-4px;width:10px;height:10px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg) translate(-1px,1px)}
.mr-cta:hover .mr-cta__arr{width:40px}

/* ---------- セクション見出し ---------- */
.mr-secttl{margin:0;font-size:clamp(28px,3.2vw,40px);font-weight:900;letter-spacing:.06em;line-height:1.45}
.mr-secttl .mr-en{display:block;font-size:14px;font-weight:600;margin-bottom:10px;color:var(--mr-mint-deep)}

/* ---------- 出現 ---------- */
.mr-js .mr-rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--mr-ease),transform .9s var(--mr-ease)}
.mr-js .mr-rv.-on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.mr-js .mr-rv{opacity:1;transform:none;transition:none}}


/* ==========================================================================
   ヘッダー（SWELLのヘッダーの見た目を差し替え）
   ========================================================================== */
#header.l-header{position:sticky;top:0;z-index:100;background:var(--mr-ink);color:#fff;box-shadow:none;border:0}
#header .l-header__inner{max-width:var(--mr-wrap);height:var(--mr-head-h);margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;color:#fff}
#header .l-header__logo{padding:0;margin:0}
#header .c-headLogo{margin:0;font-size:inherit;line-height:1}
#header .c-headLogo__link{font-family:var(--mr-en);font-weight:600;font-size:26px;letter-spacing:.16em;color:var(--mr-mint);padding:0}
#header .c-headLogo__img{max-height:40px}
.l-fixHeader{display:none!important}

/* グローバルナビ（PC） */
#gnav.c-gnavWrap{height:auto;margin:0;border:0;background:none;border-radius:0}
#gnav .c-gnav{display:flex;align-items:center;gap:22px;height:auto}
#gnav .c-gnav>li{position:relative;padding:0}
#gnav .c-gnav>li>a{display:inline-flex;flex-direction:row;align-items:center;gap:8px;height:auto;padding:24px 0;color:#fff;font-size:14px;font-weight:700;letter-spacing:.06em;line-height:1.9;transition:color .3s}
#gnav .c-gnav>li>a::after{display:none}
#gnav .c-gnav>li>a .ttl{color:inherit;background:none;padding:0;font-size:inherit;font-weight:inherit;border-radius:0}
#gnav .c-gnav>li>a .c-smallNavTitle{display:none}
#gnav .c-gnav>li>a:hover,#gnav .c-gnav>li.current-menu-item>a,#gnav .c-gnav>li.current-menu-ancestor>a,#gnav .c-gnav>li.current-menu-parent>a,#gnav .c-gnav>li:focus-within>a{color:var(--mr-mint)}
/* 子メニューを持つ項目（事業所一覧）：押せない見出し＋下向きの矢印 */
#gnav .c-gnav>li.menu-item-has-children>a::before{content:"";order:2;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .3s}
#gnav .c-gnav>li.menu-item-has-children:hover>a::before,#gnav .c-gnav>li.menu-item-has-children:focus-within>a::before{transform:translateY(1px) rotate(-135deg)}
#gnav .c-gnav>li.menu-item-has-children>a[href="#"]{cursor:default}
#gnav .c-gnav .sub-menu{position:absolute;top:100%;left:50%;min-width:232px;margin:0;padding:8px 0;list-style:none;background:var(--mr-ink);border-top:2px solid var(--mr-mint);box-shadow:0 12px 24px rgba(0,0,0,.25);color:#fff;opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .3s,transform .3s var(--mr-ease),visibility .3s;width:auto;z-index:2}
#gnav .c-gnav>li:hover>.sub-menu,#gnav .c-gnav>li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
#gnav .c-gnav .sub-menu li{border:0;background:none}
#gnav .c-gnav .sub-menu a{display:flex;align-items:center;gap:12px;padding:12px 22px;font-size:14px;font-weight:700;white-space:nowrap;color:#fff;background:none;transition:color .3s}
#gnav .c-gnav .sub-menu a::before{content:"";width:8px;height:8px;border-radius:50%;border:1.5px solid var(--mr-pink);flex:none;transition:background .3s;position:static;opacity:1;background:none;transform:none}
#gnav .c-gnav .sub-menu a:hover{color:var(--mr-mint);background:none}
#gnav .c-gnav .sub-menu a:hover::before{background:var(--mr-pink)}
#gnav .c-gnav .sub-menu .ttl{font-size:inherit;padding:0;color:inherit}
/* お問い合わせ（メニュー項目のCSSクラスに mr-contact を付ける） */
#gnav .c-gnav>li.mr-contact>a{padding:6px 0;margin:18px 0;border-bottom:2px solid var(--mr-pink);color:var(--mr-pink)}
#gnav .c-gnav>li.mr-contact>a::before{content:"";order:-1;width:10px;height:10px;border-radius:50%;background:var(--mr-pink);border:0;transform:none}
#gnav .c-gnav>li.mr-contact>a:hover{color:#fff}

/* スマホのメニューボタン */
#header .l-header__menuBtn{margin:0;order:3}
#header .l-header__customBtn{display:none}
#header .c-iconBtn.-menuBtn{width:auto;height:auto;padding:12px 0;color:var(--mr-mint);font:600 14px/1 var(--mr-en);letter-spacing:.2em}
#header .c-iconBtn.-menuBtn .c-iconBtn__icon{display:none}
#header .c-iconBtn.-menuBtn::after{content:"MENU"}

@media (max-width:1080px){
  #gnav .c-gnav{gap:16px}
  #gnav .c-gnav>li>a{font-size:13px}
}
@media (max-width:959px){
  #header .l-header__inner{padding:0 16px}
  #header .c-headLogo__link{font-size:24px}
}

/* スマホの開閉メニュー（SWELLの引き出しメニューを黒地に） */
.p-spMenu .p-spMenu__inner{background:var(--mr-ink);color:#fff;width:min(88vw,400px);box-shadow:none}
.p-spMenu .p-spMenu__inner::before{display:none}
.p-spMenu .p-spMenu__overlay{background:rgba(30,27,22,.6)}
.p-spMenu .p-spMenu__closeBtn{top:12px;right:12px;width:auto}
.p-spMenu .p-spMenu__closeBtn .c-iconBtn{width:auto;height:48px;padding:0;color:var(--mr-mint)}
.p-spMenu .p-spMenu__closeBtn .c-iconBtn__icon{display:none}
.p-spMenu .p-spMenu__closeBtn .c-iconBtn::after{content:"CLOSE";font:600 14px/1 var(--mr-en);letter-spacing:.2em}
.p-spMenu .p-spMenu__body{padding:8px 24px 40px}
.p-spMenu .c-widget__title.-spmenu{display:none}
.p-spMenu .c-spnav{border:0}
.p-spMenu .c-spnav>li{border-bottom:1px solid var(--mr-rule-d)}
.p-spMenu .c-spnav>li:last-child{border-bottom:0}
.p-spMenu .c-spnav a{display:block;padding:16px 0;font-size:17px;font-weight:700;letter-spacing:.06em;color:#fff;border:0;background:none}
.p-spMenu .c-spnav a::before{display:none}
.p-spMenu .c-spnav a:hover{color:var(--mr-mint);background:none}
.p-spMenu .c-spnav .sub-menu{padding:0 0 12px 8px;border:0}
.p-spMenu .c-spnav .sub-menu li{border:0}
.p-spMenu .c-spnav .sub-menu a{display:flex;align-items:center;gap:12px;font-size:15px;padding:10px 0}
.p-spMenu .c-spnav .sub-menu a::before{display:block;content:"";position:static;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--mr-pink);background:none;transform:none;opacity:1;flex:none}
.p-spMenu .c-submenuToggleBtn{color:var(--mr-mint);background:none}
.p-spMenu .c-submenuToggleBtn::after{display:none}
.p-spMenu .c-spnav>li.mr-contact>a{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:6px 0;border-bottom:2px solid var(--mr-pink);color:var(--mr-pink)}
.p-spMenu .c-spnav>li.mr-contact>a::before{display:block;content:"";position:static;width:10px;height:10px;border-radius:50%;background:var(--mr-pink);border:0;transform:none;opacity:1}

/* ページ上部へ戻るボタン（見本にないので出さない） */
#pagetop{display:none}


/* ==========================================================================
   フッター（parts/footer/footer_contents.php）
   ========================================================================== */
#footer.l-footer{background:var(--mr-ink);color:#fff;margin:0;padding:0;border:0;z-index:auto}
.mr-ft{padding:96px 0 40px;border-top:1px solid var(--mr-rule-d);font-size:16px;line-height:1.9;letter-spacing:.03em}
.mr-ft a{color:inherit;text-decoration:none}
.mr-ft__top{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;align-items:end;padding-bottom:56px;border-bottom:1px solid var(--mr-rule-d)}
.mr-ft__brand{grid-column:1/7}
.mr-ft .mr-ft__logo{display:block;font-family:var(--mr-en);font-weight:600;color:var(--mr-mint);font-size:clamp(64px,9vw,128px);line-height:.95;letter-spacing:.06em}
.mr-ft__brand p{margin:12px 0 0;font-weight:700;color:var(--mr-mint)}
.mr-ft__nav{grid-column:7/13;display:grid;grid-template-columns:repeat(2,1fr);gap:4px 32px;list-style:none;margin:0;padding:0}
.mr-ft .mr-ft__nav a{display:block;padding:8px 0;font-size:15px;font-weight:700;transition:color .3s}
.mr-ft .mr-ft__nav a:hover{color:var(--mr-mint)}
.mr-ft__bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px;font-size:13px;color:var(--mr-muted-d)}
.mr-ft__bottom .mr-cta{color:var(--mr-pink)}
.mr-ft__corp{font-family:var(--mr-en);letter-spacing:.14em;text-transform:uppercase;color:var(--mr-mint)!important;font-size:13px}
@media (max-width:767px){
  .mr-ft{padding:72px 0 32px}
  .mr-ft__top{grid-template-columns:1fr;gap:40px}
  .mr-ft__brand,.mr-ft__nav{grid-column:1/-1}
  .mr-ft__bottom{flex-direction:column;align-items:flex-start}
  .mr-ft__corp{display:inline-block;padding:10px 0}
}


/* ==========================================================================
   下層ページの最初の画面
   ========================================================================== */
.mr-pfv{background:var(--mr-ink);color:#fff;position:relative;z-index:2}
.mr-pfv .mr-wrap{position:relative;padding-top:40px;padding-bottom:72px}
.mr-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:0 12px;font-size:13px;color:var(--mr-muted-d);margin-bottom:48px}
.mr-crumb a:hover{color:var(--mr-mint)}
.mr-crumb span[aria-hidden]{color:var(--mr-mint)}
.mr-pfv__en{display:block;font-family:var(--mr-en);font-weight:600;color:var(--mr-mint);font-size:clamp(40px,8vw,112px);line-height:.95;letter-spacing:.06em;text-transform:uppercase;overflow-wrap:anywhere}
.mr-pfv__ttl{margin:20px 0 0;padding:0;border:0;background:none;color:#fff;font-size:clamp(24px,2.6vw,32px);font-weight:900;letter-spacing:.08em;line-height:1.5}
.mr-pfv__ttl::before,.mr-pfv__ttl::after{display:none}
.mr-pfv__stamp{position:absolute;right:32px;bottom:-72px;width:184px;height:184px;z-index:3}
.mr-pfv .mr-postmeta{display:flex;align-items:center;gap:16px;margin-top:24px}
.mr-postmeta time{font:500 16px/1 var(--mr-en);letter-spacing:.08em;color:var(--mr-muted-d)}
@media (max-width:959px){
  .mr-pfv__stamp{width:140px;height:140px;bottom:-56px}
}
@media (max-width:767px){
  .mr-wrap{padding:0 16px}
  .mr-crumb{margin-bottom:24px}
  .mr-crumb a{display:inline-block;padding:10px 0}
  .mr-pfv .mr-wrap{padding-bottom:64px}
  .mr-pfv__stamp{right:12px;width:96px;height:96px;bottom:-40px}
}


/* ==========================================================================
   記事の一覧（広報誌・お知らせ・ブログ）
   ========================================================================== */
.mr-archive{padding:96px 0 120px}
.mr-empty{color:var(--mr-muted)}

.mr-cattabs{display:flex;flex-wrap:wrap;gap:8px 28px;list-style:none;margin:0 0 48px;padding:0}
.mr-cattabs a{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:var(--mr-muted);transition:color .3s}
.mr-cattabs a::before{content:"";width:12px;height:12px;border-radius:50%;border:2px solid var(--mr-pink);transition:background .3s}
.mr-cattabs a[aria-current]{color:var(--mr-ink)}
.mr-cattabs a[aria-current]::before,.mr-cattabs a:hover::before{background:var(--mr-pink)}
.mr-cattabs__cnt{font:600 12px/1 var(--mr-en);color:var(--mr-muted);letter-spacing:.06em}

/* 広報誌：最新号 */
.mr-latest{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;align-items:center;margin-bottom:96px}
.mr-latest__cover{grid-column:1/6;position:relative;display:block;background:var(--mr-paper-2);padding:32px}
.mr-latest__cover img{width:100%;aspect-ratio:1/1.414;object-fit:cover;object-position:top;box-shadow:0 16px 40px rgba(30,27,22,.18);transition:transform .5s var(--mr-ease)}
.mr-latest__cover:hover img{transform:translateY(-6px)}
.mr-latest .mr-stamp{position:absolute;width:120px;height:120px;right:-28px;top:-28px}
.mr-latest .mr-stamp__core{font-size:20px}
.mr-latest__txt{grid-column:7/13}
.mr-latest__txt .mr-en{display:block;color:var(--mr-mint-deep);font-size:14px;font-weight:600;margin-bottom:12px}
.mr-latest__txt h2{margin:0;padding:0;border:0;background:none;font-family:var(--mr-en);font-weight:600;font-size:clamp(48px,6vw,84px);line-height:1;letter-spacing:.04em;color:var(--mr-ink)}
.mr-latest__txt h2::before,.mr-latest__txt h2::after{display:none}
.mr-latest__txt h2 small{display:block;font-family:var(--mr-ja);font-size:16px;font-weight:700;letter-spacing:.06em;margin-top:16px;color:var(--mr-muted)}
.mr-latest__txt time{display:block;margin-top:20px;font:500 16px/1 var(--mr-en);letter-spacing:.08em;color:var(--mr-muted)}
.mr-latest__txt .mr-cta{margin-top:40px;color:var(--mr-mint-deep)}

/* 広報誌：本棚 */
.mr-shelfhd{display:flex;align-items:center;gap:16px;font:600 14px/1 var(--mr-en);letter-spacing:.2em;color:var(--mr-mint-deep);margin:0 0 32px!important}
.mr-shelfhd::after{content:"";flex:1;height:1px;background:var(--mr-rule-l)}
.mr-shelf{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:48px 24px;align-items:stretch}
.mr-issue a{display:flex;flex-direction:column;height:100%}
.mr-issue__cv{position:relative;display:block;background:var(--mr-paper-2);padding:14px}
.mr-issue img{width:100%;aspect-ratio:1/1.414;object-fit:cover;object-position:top;box-shadow:0 8px 20px rgba(30,27,22,.14);transition:transform .4s var(--mr-ease)}
.mr-issue a:hover img{transform:translateY(-4px)}
.mr-issue__noimg{display:grid;place-items:center;aspect-ratio:1/1.414;background:#fff;font-weight:700;font-size:13px;padding:12px;text-align:center}
.mr-issue__vno{position:absolute;left:-10px;top:-10px;width:52px;height:52px;border-radius:50%;background:var(--mr-pink);display:grid;place-items:center;font:600 15px/1 var(--mr-en);letter-spacing:.02em;color:var(--mr-ink);z-index:1}
.mr-issue__vno small{display:block;font-size:12px;letter-spacing:.06em;text-align:center}
.mr-issue h3{margin:14px 0 4px;padding:0;border:0;background:none;font-size:15px;font-weight:900;letter-spacing:.04em;line-height:1.6;color:inherit}
.mr-issue h3::before,.mr-issue h3::after{display:none}
.mr-issue time{font:500 13px/1 var(--mr-en);letter-spacing:.08em;color:var(--mr-muted)}

/* お知らせ・ブログ：行 */
.mr-newslist{list-style:none;margin:0;padding:0;border-top:1px solid var(--mr-ink)}
.mr-newslist li{border-bottom:1px solid var(--mr-rule-l)}
.mr-newslist a{display:grid;grid-template-columns:240px 1fr 40px;gap:0 40px;align-items:center;padding:28px 0;transition:background .3s}
.mr-newslist a:hover{background:var(--mr-paper-2)}
.mr-newslist img,.mr-newslist__noimg{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid var(--mr-rule-l)}
.mr-newslist__noimg{display:grid;place-items:center;background:var(--mr-paper-2);font:600 18px/1 var(--mr-en);letter-spacing:.16em;color:var(--mr-mint-deep)}
.mr-newsmeta{display:flex;align-items:center;gap:16px;margin-bottom:10px!important}
.mr-newsmeta time{font:500 15px/1 var(--mr-en);letter-spacing:.06em;color:var(--mr-muted)}
.mr-newslist h2{margin:0;padding:0;border:0;background:none;font-size:20px;font-weight:900;letter-spacing:.04em;line-height:1.6;color:inherit}
.mr-newslist h2::before,.mr-newslist h2::after{display:none}
.mr-pill{font-size:12px;font-weight:700;line-height:1.6;padding:3px 10px;border-radius:999px;background:var(--mr-sky);color:var(--mr-ink)}
.mr-pill.-pr{background:var(--mr-pink)}
.mr-pill.-blog{background:var(--mr-mint)}
.mr-arrs{justify-self:end;width:24px;height:2px;background:var(--mr-ink);position:relative}
.mr-arrs::after{content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:2px solid var(--mr-ink);border-right:2px solid var(--mr-ink);transform:rotate(45deg) translate(-1px,1px)}

/* ページ送り */
.mr-pagination{margin-top:56px}
.mr-pagination .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.mr-pagination .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:1px solid var(--mr-rule-l);font:600 15px/1 var(--mr-en);color:var(--mr-ink)}
.mr-pagination .page-numbers.current{background:var(--mr-ink);border-color:var(--mr-ink);color:#fff}
.mr-pagination .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@media (max-width:1080px){
  .mr-shelf{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:767px){
  .mr-archive{padding:64px 0 88px}
  .mr-cattabs{gap:0 20px;margin-bottom:32px}
  .mr-cattabs a{padding:10px 0}
  .mr-latest{grid-template-columns:1fr;gap:0;margin-bottom:64px}
  .mr-latest__cover,.mr-latest__txt{grid-column:1/-1}
  .mr-latest__cover{padding:20px;max-width:320px}
  .mr-latest .mr-stamp{width:84px;height:84px;right:6px;top:-18px}
  .mr-latest__txt{margin-top:32px}
  .mr-shelf{grid-template-columns:repeat(2,1fr);gap:32px 16px}
  .mr-newslist a{grid-template-columns:88px minmax(0,1fr) 20px;gap:0 14px;padding:20px 0}
  .mr-newslist h2{font-size:16px}
  .mr-newsmeta{gap:4px 10px;margin-bottom:6px!important;flex-wrap:wrap}
  .mr-newsmeta time{font-size:13px}
}


/* ==========================================================================
   記事ページ
   ========================================================================== */
.mr-post{padding:96px 0 112px}
.mr-post .mr-wrap{max-width:1040px}
.mr-pages{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;background:var(--mr-paper-2);padding:40px}
.mr-pages figure{margin:0}
.mr-pages img{width:100%;box-shadow:0 12px 32px rgba(30,27,22,.16)}
.mr-pages figcaption{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font:600 12px/1 var(--mr-en);letter-spacing:.2em;color:var(--mr-mint-deep);text-align:left}
.mr-pages figcaption a{font-family:var(--mr-ja);font-weight:700;letter-spacing:.06em;font-size:13px;color:var(--mr-ink);text-decoration:underline;text-underline-offset:4px}
.mr-postbody{max-width:720px;margin:0 auto}
.mr-pages+.mr-postbody{margin-top:56px}
.mr-postbody.post_content{font-size:17px;line-height:2.1}
.mr-postbody.post_content p{margin:0 0 1.6em}
.mr-postbody.post_content img{width:100%;border:1px solid var(--mr-rule-l)}
.mr-postbody.post_content .wp-block-image{margin:0 0 40px}
.mr-pn{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:80px;border-top:1px solid var(--mr-ink)}
.mr-pn a,.mr-pn span{display:flex;flex-direction:column;gap:6px;padding:24px 0}
.mr-pn .-next{text-align:right;align-items:flex-end}
.mr-pn small{font:600 12px/1 var(--mr-en);letter-spacing:.2em;color:var(--mr-mint-deep)}
.mr-pn b{font-size:16px;font-weight:900}
.mr-pn span{color:var(--mr-muted)}
.mr-back{display:flex;justify-content:center;margin-top:40px}
.mr-back .mr-cta{color:var(--mr-mint-deep)}
.mr-related{background:var(--mr-ink);color:#fff;padding:96px 0}
.mr-related .mr-secttl{margin-bottom:40px;color:#fff}
.mr-related .mr-secttl .mr-en{color:var(--mr-mint)}
.mr-related .mr-shelf{grid-template-columns:repeat(3,1fr);max-width:840px}
.mr-related .mr-issue__cv{background:var(--mr-ink-2)}
.mr-related .mr-issue time{color:var(--mr-muted-d)}
@media (max-width:767px){
  .mr-post{padding:64px 0 80px}
  .mr-pages{grid-template-columns:1fr;padding:20px;gap:28px}
  .mr-pages figcaption a{display:inline-block;padding:12px 0}
  .mr-pn{grid-template-columns:1fr;gap:0}
  .mr-pn .-next{text-align:left;align-items:flex-start;border-top:1px solid var(--mr-rule-l)}
  .mr-related{padding:72px 0}
  .mr-related .mr-shelf{grid-template-columns:repeat(2,1fr)}
}


/* ==========================================================================
   お問い合わせフォーム（Contact Form 7・フォームID 8 の今の項目のまま、見本の見た目にする）
   フォームの中身（dl.contact7）は変えていないので、管理画面のフォーム設定はそのまま使える
   ========================================================================== */
.mr-p-contact .wpcf7 form{margin:0}
.mr-p-contact .contact7{display:grid;grid-template-columns:180px 1fr;column-gap:32px;margin:0}
.mr-p-contact .contact7 dt,.mr-p-contact .contact7 dd{margin:0;padding:22px 0;border-bottom:1px solid var(--rule-l)}
.mr-p-contact .contact7 dt:first-of-type,.mr-p-contact .contact7 dd:first-of-type{padding-top:0}
.mr-p-contact .contact7 p{margin:0}
.mr-p-contact .contact7 dt p{display:flex;align-items:center;gap:12px;padding-top:12px;font-weight:900;letter-spacing:.06em}
.mr-p-contact .contact7 dt p::after{content:"必須";font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;background:var(--pink);color:var(--ink);letter-spacing:.08em;line-height:1.6}
.mr-p-contact .contact7 .wpcf7-form-control-wrap{display:block}
.mr-p-contact .contact7 input[type=text],.mr-p-contact .contact7 input[type=tel],.mr-p-contact .contact7 input[type=email],.mr-p-contact .contact7 textarea{display:block;width:100%;max-width:none;font:400 16px/1.7 var(--ja);color:var(--ink);background:var(--paper-2);border:1px solid transparent;border-radius:0;box-shadow:none;padding:12px 16px;transition:border-color .3s,background .3s}
.mr-p-contact .contact7 textarea{min-height:200px;height:200px;resize:vertical}
.mr-p-contact .contact7 input:focus,.mr-p-contact .contact7 textarea:focus{outline:none;border-color:var(--mr-mint-deep);background:#fff}
.mr-p-contact .contact7 .btn_contact7{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:48px}
.mr-p-contact .contact7 .wpcf7-submit{min-width:300px;padding:20px 72px 20px 28px;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 14'%3E%3Cpath d='M0 7h28M21 1l7 6-7 6' fill='none' stroke='%23e1b2bb' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 28px center/30px 14px;color:#fff;border:0;border-radius:0;font:700 17px/1 var(--ja);letter-spacing:.1em;text-align:left;cursor:pointer;transition:background-color .3s,background-position .4s var(--mr-ease);-webkit-appearance:none;appearance:none}
.mr-p-contact .contact7 .wpcf7-submit:hover{background-color:#000;background-position:right 20px center}
.mr-p-contact .contact7 .wpcf7-submit:disabled{opacity:.6;cursor:default}
.mr-p-contact .wpcf7-not-valid-tip{display:block;margin-top:8px;font-size:14px;font-weight:700;color:#b3261e}
.mr-p-contact .wpcf7 form .wpcf7-response-output{margin:32px 0 0;padding:16px 20px;border:2px solid var(--mr-mint-deep);font-size:15px;line-height:1.7}
.mr-p-contact .wpcf7 form.invalid .wpcf7-response-output,.mr-p-contact .wpcf7 form.failed .wpcf7-response-output{border-color:#b3261e}
@media (max-width:767px){
  .mr-p-contact .contact7{grid-template-columns:1fr}
  .mr-p-contact .contact7 dt{padding:18px 0 8px;border-bottom:0}
  .mr-p-contact .contact7 dd{padding:0 0 18px}
  .mr-p-contact .contact7 dt:first-of-type{padding-top:0}
  .mr-p-contact .contact7 dt p{padding-top:0}
  .mr-p-contact .contact7 .wpcf7-submit{min-width:0;width:100%}
}
