/* Scoped to lower-level WordPress pages; the approved homepage stays untouched. */
body.mt-subpage {
  --mt-ink:#183d35; --mt-soft:#4f6962; --mt-paper:#fffdf7; --mt-cream:#f8f2e3;
  --mt-line:#d8e4dc; --mt-yellow:#ffd95a; --mt-pink:#ef91b5;
  min-width:0; margin:0; padding:0; color:var(--mt-ink); background:var(--mt-paper);
  font-family:YakuHanJP,"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  font-feature-settings:normal; font-size:16px; font-weight:500; letter-spacing:.025em; line-height:1.85;
}
.mt-subpage a { color:inherit; }
.mt-subpage a:hover { opacity:1; }
.mt-subpage button,.mt-subpage input,.mt-subpage textarea,.mt-subpage select { font:inherit; }
.mt-subpage a:focus-visible,.mt-subpage button:focus-visible,.mt-subpage summary:focus-visible,.mt-subpage input:focus-visible,.mt-subpage textarea:focus-visible { outline:3px solid #ad6500; outline-offset:4px; }
.mt-subpage [id] { scroll-margin-top:108px; }
.mt-skip { position:fixed; z-index:10000; top:8px; left:8px; padding:10px 20px; background:var(--mt-yellow); transform:translateY(-160%); }
.mt-skip:focus { transform:none; }
.mt-header { position:sticky; z-index:1000; top:0; background:rgba(255,253,247,.98); border-bottom:1px solid var(--mt-line); }
.admin-bar .mt-header { top:32px; }
.mt-header-inner { width:min(calc(100% - 40px),1180px); min-height:78px; margin:auto; display:flex; align-items:center; gap:40px; }
.mt-brand { flex:0 0 195px; }
.mt-brand img { display:block; width:195px; height:auto; }
.mt-navigation { display:flex; flex:1; align-items:center; justify-content:space-between; gap:16px; font-size:13px; font-weight:700; }
.mt-navigation a { padding:10px 0; white-space:nowrap; }
.mt-navigation a:hover,.mt-navigation a[aria-current] { text-decoration:underline; text-decoration-color:var(--mt-pink); text-decoration-thickness:3px; text-underline-offset:8px; }
.mt-navigation .mt-parents-link { border:2px solid var(--mt-ink); border-radius:8px; padding:9px 14px; }
.mt-menu-toggle { display:none; color:var(--mt-ink); border:0; background:transparent; font-size:13px; font-weight:700; cursor:pointer; }
.mt-menu-toggle span { margin-left:8px; font-size:24px; }
.mt-main { min-height:55vh; }
.mt-subpage .breadcrumb { width:min(calc(100% - 40px),1180px); max-width:none; margin:0 auto; padding:24px 0 0; background:none; }
.mt-subpage .breadcrumb ol { padding:0; flex-wrap:wrap; font-size:12px; color:var(--mt-soft); }
.mt-subpage .breadcrumb ol li { overflow-wrap:anywhere; }
.mt-subpage .page__wrapper { padding:48px 0 88px; }
.mt-subpage .page__contents { width:min(calc(100% - 40px),1180px); max-width:none; margin-inline:auto; }
.mt-subpage .page__main { min-width:0; }
.mt-subpage .page__head { margin-bottom:40px; }
.mt-subpage .page__head__title,.mt-page-intro h1,.mt-subpage .policy__head__title,.mt-subpage .contact__head__title,.mt-subpage .about__block__title,.mt-subpage .section__head__main {
  color:var(--mt-ink); font-size:clamp(28px,3vw,40px); font-weight:800; text-align:left; line-height:1.55; letter-spacing:.035em;
}
.mt-kicker { margin:0 0 12px; color:var(--mt-soft); font-size:13px; font-weight:700; letter-spacing:.12em; }
.mt-page-intro { margin-bottom:36px; }
.mt-page-intro h1 { display:table; margin:0 0 22px; background:linear-gradient(transparent 76%,#f6cada 76%,#f6cada 92%,transparent 92%); }
.mt-page-intro>p:last-child { color:var(--mt-soft); line-height:1.9; }
.mt-category-nav { display:flex; flex-wrap:wrap; gap:10px; padding:0 0 24px; border-bottom:1px solid var(--mt-line); }
.mt-category-nav a { padding:10px 16px; border-radius:8px; border:1px solid var(--mt-line); background:#fff; font-size:14px; font-weight:700; }
.mt-category-nav a[aria-current],.mt-category-nav a:hover { color:#fff; background:var(--mt-ink); border-color:var(--mt-ink); }
.mt-theme-index { border-bottom:1px solid var(--mt-line); padding:18px 0; }
.mt-theme-index summary { cursor:pointer; font-weight:700; }
.mt-theme-index summary span { padding-left:18px; font-size:13px; font-weight:500; color:var(--mt-soft); }
.mt-theme-index nav { display:flex; flex-wrap:wrap; gap:12px 22px; padding-top:20px; }
.mt-theme-index a { display:flex; align-items:center; gap:8px; border-bottom:1px solid transparent; font-size:14px; }
.mt-theme-index a:hover,.mt-theme-index a[aria-current] { border-color:var(--mt-ink); }
.mt-theme-index a[aria-current] { font-weight:800; }
.mt-theme-index small { color:var(--mt-soft); background:var(--mt-cream); border-radius:4px; padding:0 7px; }
.mt-results-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin:36px 0 20px; }
.mt-results-heading h2 { font-size:20px; font-weight:800; }
.mt-results-heading p { font-size:13px; color:var(--mt-soft); }
.mt-article-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 26px; }
.mt-article-card { min-width:0; background:#fff; border:1px solid var(--mt-line); border-radius:16px; overflow:hidden; }
.mt-card-image { display:block; overflow:hidden; background:var(--mt-cream); }
.mt-card-image img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; }
.mt-card-copy { padding:20px 22px 26px; }
.mt-card-meta { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; justify-content:space-between; margin-bottom:14px; }
.mt-card-meta time { color:var(--mt-soft); font-size:12px; }
.mt-card-copy h2 { font-size:19px; line-height:1.7; font-weight:800; }
.mt-card-copy h2 a:hover { text-decoration:underline; text-underline-offset:5px; }
.mt-badge,.mt-subpage .article__category,.mt-subpage .articleListItem__category { display:inline-block; width:auto; padding:3px 10px; background:#e7f5ee; color:var(--mt-ink); border-radius:5px; font-size:12px; font-weight:700; }
.mt-news-money,.mt-subpage .article__category--news-money,.mt-subpage .articleListItem__category--news-money { background:#fde8d8; }
.mt-money-terms,.mt-subpage .article__category--money-terms,.mt-subpage .articleListItem__category--money-terms { background:#fbe2ec; }
.mt-money-system,.mt-subpage .article__category--money-system,.mt-subpage .articleListItem__category--money-system { background:#e9f5fb; }
.mt-spend-save-protect,.mt-subpage .article__category--spend-save-protect,.mt-subpage .articleListItem__category--spend-save-protect { background:#fff3b8; }
.mt-society-tax-work,.mt-subpage .article__category--society-tax-work,.mt-subpage .articleListItem__category--society-tax-work { background:#eeebfa; }
.mt-archive .pagination { margin-top:48px; }
.mt-archive .nav-links { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.mt-archive .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:6px 12px; border:1px solid var(--mt-line); border-radius:6px; background:#fff; }
.mt-archive .page-numbers.current { background:var(--mt-ink); color:#fff; }
.mt-subpage .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.mt-empty { padding:48px 28px; background:var(--mt-cream); border-radius:14px; }
.mt-empty h2 { font-size:22px; margin-bottom:12px; }
.mt-empty a { display:inline-block; margin-top:24px; font-weight:700; text-decoration:underline; }
/* Reading pages retain the existing character dialogue markup and quiz widgets. */
.mt-subpage .page__contents--article { max-width:980px; }
.mt-subpage .article { border-radius:20px; border:1px solid var(--mt-line); background:#fff; box-shadow:none; }
.mt-subpage .article__head { padding:48px 64px 0; }
.mt-subpage .article__title { font-size:clamp(27px,3vw,36px); line-height:1.65; color:var(--mt-ink); margin-bottom:24px; }
.mt-subpage .article__info { align-items:center; gap:10px 16px; margin-bottom:28px; }
.mt-subpage .article__category { margin-right:0; }
.mt-subpage .article__date { font-size:13px; color:var(--mt-soft); }
.mt-subpage .article__info__writer { margin-top:6px; }
.mt-subpage .article__info__writer__text { font-size:13px; color:var(--mt-soft); }
.mt-subpage .article__body { padding:32px 64px 56px; }
.mt-subpage .article__thumbnail { margin-bottom:48px; overflow:hidden; border-radius:12px; }
.mt-subpage .article__thumbnail img { height:auto; }
.mt-subpage .article__content { font-weight:500; overflow-wrap:break-word; }
.mt-subpage .article__content a { color:#17666b; text-decoration:underline; text-underline-offset:3px; }
.mt-subpage .socialList__item__icon { color:#fff; }
.mt-subpage .article__content h2 { font-size:28px; line-height:1.6; padding-bottom:14px; border-bottom:3px solid var(--mt-yellow); margin-bottom:28px; }
.mt-subpage .article__content h3 { font-size:22px; line-height:1.7; }
.mt-subpage .article__content p,.mt-subpage .article__content dl { font-size:17px; line-height:2; letter-spacing:.035em; }
.mt-subpage .talk__bubble { border-radius:14px; }
.mt-subpage .talk__character__thumbnail { border-width:3px; }
.mt-subpage .article__content .table__wrapper { max-width:100%; overflow-x:auto; }
.mt-subpage .article__writer { padding:28px; background:#e9f5fb; border-radius:16px; }
.mt-subpage .writer__head { gap:24px; align-items:flex-start; }
.mt-subpage .writer__thumbnail { width:112px; height:112px; flex:0 0 112px; border:2px solid var(--mt-ink); }
.mt-subpage .writer__profile { width:auto; flex:1; min-width:0; }
.mt-subpage .writer__name { font-size:21px; }
.mt-subpage .writer__introduction { font-size:14px; line-height:1.9; }
.mt-subpage .dots { border-top:1px solid var(--mt-line); margin:40px 0; }
.mt-subpage .articleTag__head,.mt-subpage .articleCurrent__head { font-size:21px; }
.mt-subpage .articleTag__list { flex-wrap:wrap; gap:10px; }
.mt-subpage .articleTag__list__item { background:var(--mt-ink); color:#fff; border-radius:6px; font-size:14px; }
.mt-subpage .articleCurrentListItem__thumbnail { width:34%; flex-shrink:0; }
.mt-subpage .articleCurrentListItem__thumbnail img { border-radius:8px; aspect-ratio:16/9; object-fit:contain; }
.mt-subpage .articleCurrentListItem__info { width:calc(66% - 20px); }
.mt-subpage .articleCurrentListItem__info__top { flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.mt-subpage .articleCurrentListItem__title { font-size:17px; line-height:1.75; }
.mt-subpage .link__btn--more,.mt-subpage .link__btn--contact { width:auto; max-width:100%; min-width:200px; height:auto; min-height:50px; padding:12px 28px; border:2px solid var(--mt-ink); border-radius:9px; color:var(--mt-ink); background:var(--mt-yellow); box-shadow:none; font-size:16px; }
.mt-subpage .link__btn--more::before,.mt-subpage .link__btn--more::after,.mt-subpage .link__btn--contact::before,.mt-subpage .link__btn--contact::after { display:none; }
/* Information pages are documents or profiles, not additional card grids. */
.mt-subpage .page__contents--policy,.mt-subpage .page__contents--contact,.mt-subpage .page__contents--company { max-width:980px; }
.mt-subpage .policy,.mt-subpage .contact,.mt-subpage .company { padding:48px 64px; border:1px solid var(--mt-line); border-radius:18px; background:#fff; box-shadow:none; }
.mt-subpage .contact__head__desc { text-align:left; }
.mt-subpage .policy__item__head { font-size:22px; line-height:1.65; }
.mt-subpage .policy__item,.mt-subpage .companyProfile { font-size:16px; }
.mt-subpage .companyProfile th,.mt-subpage .companyProfile td { padding:22px 18px; border-color:var(--mt-line); }
.mt-subpage .form__item__content input,.mt-subpage .form__item__content textarea { border:1px solid #90a79d; border-radius:7px; padding:12px; }
.mt-subpage .form__item__content input { height:48px; }
.mt-subpage .required::after { background:var(--mt-ink); }
.mt-subpage .form__button { flex-wrap:wrap; gap:18px; }
.mt-subpage .form__button .link__btn { cursor:pointer; }
.mt-subpage .about__block { border-radius:18px; border:1px solid var(--mt-line); padding:48px 64px; min-height:0; margin:0 0 40px; }
.mt-subpage .about__block::before,.mt-subpage .about__block::after { display:none; }
.mt-subpage .about__block__title { position:static; height:auto; writing-mode:horizontal-tb; margin-bottom:32px; }
.mt-subpage .about__block__desc { max-width:760px; }
.mt-subpage .about__block__text { font-size:17px; font-weight:500; line-height:2; }
.mt-subpage .about__block__text br { display:none; }
.mt-subpage .forParents--page { padding:48px 0; background:none; }
.mt-subpage .forParents__contents { width:min(calc(100% - 40px),980px); margin:auto; padding:48px 64px; background:var(--mt-cream); border-radius:18px; }
.mt-subpage .forParents .section__head { margin-bottom:32px; }
.mt-subpage .forParents .section__head__sub { color:var(--mt-soft); font-size:12px; letter-spacing:.15em; }
.mt-subpage .forParents__text { font-size:17px; color:var(--mt-ink); text-align:left; line-height:2; }
.mt-subpage .forParents__text br.br--sp { display:none; }
.mt-subpage .character__block { padding:48px; border-radius:18px; border:1px solid var(--mt-line); box-shadow:none; gap:48px; }
.mt-subpage .character__thumbnail { width:28%; }
.mt-subpage .character__profile { width:auto; flex:1; min-width:0; }
.mt-subpage .character__name { font-size:30px; margin-bottom:20px; }
.mt-subpage .character__desc { font-size:16px; line-height:1.9; }
.mt-subpage .basics__archive__item { display:grid; grid-template-columns:56px minmax(0,1fr) 240px; align-items:center; gap:28px; border:1px solid var(--mt-line); border-radius:16px; box-shadow:none; padding:28px; }
.mt-subpage .basics__archive__item:not(:last-of-type) { margin-bottom:24px; }
.mt-subpage .basicsArchiveItem__number { position:static; width:48px; height:48px; padding:0; border-radius:50%; background:var(--mt-ink); color:#fff; font-size:20px; }
.mt-subpage .basicsArchiveItem__textArea { width:auto; min-width:0; padding:0; order:0; }
.mt-subpage .basicsArchiveItem__title { font-size:24px; border:0; margin-bottom:8px; }
.mt-subpage .basicsArchiveItem__desc { font-size:15px; }
.mt-subpage .basicsArchiveItem__imgArea { width:100%; height:auto; padding:0; order:0; clip-path:none; border-radius:10px; }
.mt-subpage .basicsArchiveItem__imgArea img { position:static; object-fit:contain; height:auto; }
.mt-footer { background:var(--mt-cream); border-top:1px solid var(--mt-line); margin-top:0; }
.mt-footer-inner { width:min(calc(100% - 40px),1180px); margin:auto; padding:56px 0 40px; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px; }
.mt-footer-brand img { display:block; width:195px; height:auto; margin-bottom:20px; }
.mt-footer-brand p { font-size:15px; font-weight:700; }
.mt-footer-brand small { display:block; margin-top:8px; font-size:12px; color:var(--mt-soft); }
.mt-footer nav { display:flex; flex-direction:column; align-items:flex-start; gap:9px; font-size:13px; }
.mt-footer nav strong { font-size:14px; margin-bottom:8px; }
.mt-footer a:hover { text-decoration:underline; text-underline-offset:5px; }
.mt-social { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:20px; }
.mt-social a { display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:8px; }
.mt-social a:hover { background:#e8dfc9; }
.mt-social img { display:block; width:26px; height:26px; margin:0; max-width:none; object-fit:contain; }
.mt-social a[title="YouTube"] img { width:30px; height:28px; }
.mt-social a[title="X"] img { width:24px; height:24px; }
.mt-footer-bottom { width:min(calc(100% - 40px),1180px); margin:auto; padding:24px 0 28px; border-top:1px solid var(--mt-line); display:flex; align-items:center; justify-content:space-between; gap:24px; font-size:11px; color:var(--mt-soft); }
.mt-footer-bottom small { white-space:nowrap; }
@media(max-width:1000px) {
  .mt-header-inner { flex-wrap:wrap; justify-content:space-between; gap:0; padding:14px 0; min-height:72px; }
  .mt-navigation { width:100%; flex:none; flex-wrap:wrap; justify-content:flex-start; margin-top:18px; gap:12px 24px; }
  .mt-enhanced .mt-navigation { display:none; }
  .mt-menu-toggle:not([hidden]) { display:flex; align-items:center; }
  .mt-menu-open .mt-navigation { display:flex; }
  .mt-article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mt-footer-inner { grid-template-columns:repeat(3,1fr); gap:32px; }
  .mt-footer-brand { grid-column:1/-1; }
  .mt-subpage .article__head { padding:36px 32px 0; }
  .mt-subpage .article__body { padding:28px 32px 40px; }
  .mt-subpage .basics__archive__item { grid-template-columns:48px minmax(0,1fr) 180px; gap:20px; }
  .mt-subpage .character__block { padding:32px; gap:30px; }
}
@media(max-width:782px) { .admin-bar .mt-header { top:46px; } }
@media(max-width:600px) {
  .mt-header-inner,.mt-subpage .breadcrumb,.mt-subpage .page__contents,.mt-footer-inner,.mt-footer-bottom { width:calc(100% - 32px); }
  .mt-brand { flex-basis:165px; }.mt-brand img { width:165px; }
  .mt-navigation { flex-direction:column; align-items:stretch; max-height:70vh; overflow-y:auto; gap:0; padding-bottom:12px; }
  .mt-navigation a { padding:12px 6px; }
  .mt-navigation .mt-parents-link { margin-top:10px; text-align:center; }
  .mt-subpage .page__wrapper { padding:32px 0 56px; }
  .mt-page-intro>p:last-child { font-size:14px; }
  .mt-desktop-break { display:none; }
  .mt-category-nav { gap:8px; }
  .mt-category-nav a { padding:9px 12px; font-size:12px; }
  .mt-theme-index summary span { display:block; padding-left:0; font-size:12px; margin-top:4px; }
  .mt-results-heading { margin-top:28px; }
  .mt-results-heading h2 { font-size:18px; }
  .mt-article-grid { grid-template-columns:1fr; gap:24px; }
  .mt-card-copy { padding:18px 20px 24px; }
  .mt-card-copy h2 { font-size:19px; }
  .mt-subpage .page__contents--article { width:100%; }
  .mt-subpage .article { border-radius:0; border-left:0; border-right:0; }
  .mt-subpage .article__head { padding:28px 20px 0; }
  .mt-subpage .article__title { font-size:26px; }
  .mt-subpage .article__body { padding:24px 20px 40px; }
  .mt-subpage .article__content h2 { font-size:23px; }
  .mt-subpage .article__content h3 { font-size:20px; }
  .mt-subpage .article__content p,.mt-subpage .article__content dl { font-size:16px; line-height:1.95; }
  .mt-subpage .talk__character,.mt-subpage .talk__character__thumbnail { width:56px; }
  .mt-subpage .talk__character { flex:0 0 56px; flex-direction:column; gap:6px; align-items:center; }
  .mt-subpage .talk__character__thumbnail { height:56px; flex:0 0 56px; }
  .mt-subpage .talk__character__thumbnail img { width:100%; height:100%; }
  .mt-subpage .article__content .talk__character__name { width:100%; margin:0; font-size:12px; line-height:1.5; text-align:center; white-space:nowrap; }
  .mt-subpage .talk__bubble { width:calc(100% - 76px); padding:14px; }
  .mt-subpage .article__writer { padding:20px; }
  .mt-subpage .writer__head { flex-direction:column; gap:16px; }
  .mt-subpage .writer__thumbnail { width:88px; height:88px; flex-basis:88px; }
  .mt-subpage .articleTag__head,.mt-subpage .articleCurrent__head { font-size:19px; }
  .mt-subpage .articleCurrentListItem__title { font-size:15px; }
  .mt-subpage .articleCurrentListItem__info__top { font-size:11px; }
  .mt-subpage .article__content .summary__block { padding:24px 18px; }
  .mt-subpage .article__content .summary__block__title { font-size:20px; }
  .mt-subpage .policy,.mt-subpage .contact,.mt-subpage .company,.mt-subpage .about__block { padding:28px 20px; border-radius:14px; }
  .mt-subpage .policy__item__head { font-size:20px; }
  .mt-subpage .companyProfile th,.mt-subpage .companyProfile td { display:block; width:100%; padding:14px 0; }
  .mt-subpage .companyProfile th { padding-bottom:0; border-bottom:0; }
  .mt-subpage .forParents--page { padding:0; }
  .mt-subpage .forParents__contents { width:calc(100% - 32px); padding:28px 20px; }
  .mt-subpage .forParents__text { font-size:16px; }
  .mt-subpage .forParents__text br { display:none; }
  .mt-subpage .character__block { flex-direction:column; padding:28px 20px; gap:24px; }
  .mt-subpage .character__thumbnail { width:60%; max-width:240px; margin:auto; order:0 !important; }
  .mt-subpage .character__profile { width:100%; }
  .mt-subpage .character__status dt,.mt-subpage .character__status dd { font-size:14px; }
  .mt-subpage .basics__archive__item { grid-template-columns:40px minmax(0,1fr); padding:20px; gap:16px; }
  .mt-subpage .basicsArchiveItem__number { width:36px; height:36px; font-size:16px; }
  .mt-subpage .basicsArchiveItem__title { font-size:21px; }
  .mt-subpage .basicsArchiveItem__imgArea { grid-column:2; max-width:240px; }
  .mt-subpage .basicsArchiveItem__buttonArea { grid-column:1/-1; }
  .mt-subpage .form__button .link__btn { width:100%; min-width:0; }
  .mt-footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 20px; padding-top:40px; }
  .mt-footer-bottom { flex-direction:column; align-items:flex-start; gap:14px; }
}
@media(prefers-reduced-motion:reduce) { .mt-subpage *, .mt-subpage *::before,.mt-subpage *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }
