/* TAKIO FX LAB — shared Cocoon child theme skin, V1. */
body.takio-renewal {
  --lab-navy:#0b1730; --lab-blue:#1d4ed8; --lab-ink:#17243a;
  --lab-muted:#56657b; --lab-line:#d8e1ec; --lab-bg:#f3f6fa;
  background:var(--lab-bg)!important; color:var(--lab-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
  font-size:17px; line-height:1.85; overflow-wrap:anywhere;
}
.takio-renewal *, .takio-renewal *::before, .takio-renewal *::after {box-sizing:border-box}
.takio-renewal a {color:var(--lab-blue)}
.takio-renewal a:focus-visible,.takio-renewal button:focus-visible,.takio-renewal input:focus-visible,.takio-renewal textarea:focus-visible,.takio-renewal summary:focus-visible {outline:3px solid #2563eb;outline-offset:4px}
.takio-renewal .skip-link:focus {background:#fff;color:var(--lab-navy);z-index:100000}
.takio-renewal #header-container,.takio-renewal #header-container-in,.takio-renewal #header,.takio-renewal #navi,.takio-renewal #footer {background:var(--lab-navy)!important;background-image:none!important;color:#fff!important}
.takio-renewal #header-container {border-bottom:1px solid #29405f;box-shadow:none}
.takio-renewal #header-in {min-height:0!important;max-width:1160px!important}
.takio-renewal #header .logo {margin:0!important;padding:22px 16px!important;line-height:1.4}
.takio-renewal #header .site-name-text {font-size:clamp(20px,2.5vw,27px)!important;font-weight:750;letter-spacing:.045em}
.takio-renewal #header a {color:#fff!important;text-decoration:none}
.takio-renewal #header .tagline {display:none!important}
.takio-renewal #navi .navi-in {max-width:1160px;margin:auto}
.takio-renewal #navi .navi-in>ul {justify-content:center;gap:4px;padding:0 12px;margin:0}
.takio-renewal #navi .navi-in>ul>li {width:auto;min-width:0;flex:0 1 auto;height:auto!important;line-height:normal!important}
.takio-renewal #navi .navi-in>ul>li>a {color:#fff!important;min-height:52px;height:auto!important;padding:12px 20px!important;font-size:15px!important;line-height:1.5!important;display:flex;align-items:center;justify-content:center}
.takio-renewal #navi a:hover,.takio-renewal #navi .current-menu-item>a,.takio-renewal #navi .current-menu-ancestor>a {background:#1b3152!important;box-shadow:inset 0 -3px #72a8ff}
.takio-renewal #navi .sub-menu {background:var(--lab-navy);border:1px solid #29405f}
.takio-renewal #navi .sub-menu a {color:#fff;font-size:15px;padding:12px}
.takio-renewal #content {margin-top:32px}
.takio-renewal #content-in {max-width:1160px!important;width:calc(100% - 48px)!important;gap:28px;align-items:flex-start}
.takio-renewal #main {min-width:0;width:calc(100% - 308px);padding:36px!important;background:#fff!important;border:1px solid var(--lab-line);border-radius:14px;box-shadow:none}
.takio-renewal #sidebar {width:280px;min-width:0;padding:0;background:transparent;color:var(--lab-ink)}
.takio-renewal .breadcrumb {max-width:1160px;margin:16px auto;padding:0 24px;font-size:14px;color:var(--lab-muted)}
.takio-renewal .breadcrumb a {color:var(--lab-muted);text-decoration:underline;text-underline-offset:3px}
.takio-renewal .article-header .entry-title,.takio-renewal .archive-title {font-size:clamp(26px,3vw,38px);line-height:1.5!important;letter-spacing:.015em;margin:0 0 24px!important;padding:24px!important;background:var(--lab-navy);color:#fff;border:0;border-left:5px solid #4b8df8;border-radius:8px}
.takio-renewal .sns-share a,.takio-renewal .sns-follow a {color:#fff;background:var(--lab-navy);border:1px solid var(--lab-line)}
.takio-renewal .archive-title .fa {color:#9abdfb}
body.takio-renewal:not(.takio-home) #main .article-header .entry-title {padding:24px!important;text-align:left!important}
.takio-renewal .entry-content {margin-top:24px;line-height:1.9;overflow-wrap:anywhere}
.takio-renewal .entry-content p {margin:0 0 1.7em}
.takio-renewal .entry-content a:not(.a-wrap):not(.lab-button):not(.lab-card):not(.lab-text-link) {text-decoration:underline;text-underline-offset:3px}
.takio-renewal .entry-content h2 {font-size:clamp(22px,2.2vw,28px);line-height:1.55;background:#eef3fc;color:var(--lab-navy);border:0;border-left:4px solid var(--lab-blue);border-radius:0 6px 6px 0;padding:18px 20px;margin:48px 0 24px}
.takio-renewal .entry-content h3 {font-size:21px;line-height:1.6;color:var(--lab-navy);background:transparent;border:0;border-bottom:2px solid var(--lab-line);padding:0 0 12px;margin:32px 0 20px}
.takio-renewal .entry-content h4 {font-size:18px;border:0;color:var(--lab-navy)}
.takio-renewal img,.takio-renewal video,.takio-renewal iframe {max-width:100%}
.takio-renewal img {height:auto}
.takio-renewal .entry-content pre {max-width:100%;overflow:auto}
.takio-renewal .entry-content blockquote {margin:24px 0;padding:20px 24px;background:var(--lab-bg);border-left:4px solid #94a9c8;color:var(--lab-muted)}
.takio-renewal .entry-content table {width:100%;border-collapse:collapse;font-size:15px}
.takio-renewal .entry-content th {background:#e8effa;color:var(--lab-navy)}
.takio-renewal .entry-content td,.takio-renewal .entry-content th {border:1px solid var(--lab-line);padding:12px}
.takio-renewal .lab-table-scroll,.takio-renewal .wp-block-table {max-width:100%;overflow-x:auto;margin:24px 0;overscroll-behavior-x:contain}
.takio-renewal .lab-table-scroll table {margin:0;min-width:560px}
.takio-renewal .toc {width:100%;max-width:100%;border:1px solid var(--lab-line);background:var(--lab-bg);border-radius:10px;padding:20px 24px;font-size:15px}
.takio-renewal .toc-title {color:var(--lab-navy);font-size:17px;font-weight:700}
.takio-renewal #sidebar .widget {background:#fff;border:1px solid var(--lab-line);border-radius:12px;padding:20px;margin:0 0 24px;font-size:15px}
.takio-renewal #sidebar h3 {background:transparent;color:var(--lab-navy);font-size:18px;border:0;border-bottom:2px solid var(--lab-line);padding:0 0 12px;margin:0 0 20px}
.takio-renewal .author-box {background:#fff;border:1px solid var(--lab-line);border-radius:12px;color:var(--lab-ink);font-size:15px}
.takio-renewal .author-box .author-name {color:var(--lab-navy)}
.takio-renewal .widget-entry-card-title {font-size:15px;line-height:1.6}
.takio-renewal .entry-card-wrap {background:#fff;color:var(--lab-ink);border:1px solid var(--lab-line);border-radius:12px;margin:0 0 20px;padding:20px;transition:box-shadow .15s ease,border-color .15s ease}
.takio-renewal .entry-card-wrap:hover {background:#fff;border-color:#7b9ed3;box-shadow:0 5px 18px #0b173010}
.takio-renewal .entry-card-title {font-size:20px!important;line-height:1.6!important;background:none;border:0;padding:0;color:var(--lab-navy)}
.takio-renewal .entry-card-snippet {font-size:15px;color:var(--lab-muted);line-height:1.75}
.takio-renewal .entry-card-meta {font-size:14px;color:var(--lab-muted)}
.takio-renewal .cat-label {background:#1d4ed8;color:#fff;border:0;font-size:12px;padding:3px 8px}
.takio-renewal .pagination {gap:8px;flex-wrap:wrap}
.takio-renewal .pagination a,.takio-renewal .pagination .current {min-width:44px;min-height:44px;border-radius:8px;border:1px solid var(--lab-line);padding:8px 14px}
.takio-renewal .pagination .current {background:var(--lab-blue);color:#fff}
.takio-renewal input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.takio-renewal textarea,.takio-renewal select {max-width:100%;background:#fff;border:1px solid #8b9bb1;border-radius:7px;padding:12px;font:inherit;color:var(--lab-ink);min-height:44px}
.takio-renewal textarea {width:100%;min-height:180px}
.takio-renewal input[type=submit],.takio-renewal .wpcf7-submit {background:var(--lab-blue);color:#fff;border:0;border-radius:8px;padding:14px 28px;font-size:16px;min-height:48px;cursor:pointer}
.takio-renewal .wpcf7-not-valid-tip {color:#b42318;font-size:15px}
.takio-renewal .wpcf7-response-output {padding:16px;border-radius:8px}
.takio-renewal .search-box {margin:0}
.takio-renewal .search-edit {padding-right:44px!important;width:100%}
.takio-renewal .search-submit {min-width:44px;min-height:44px;color:var(--lab-navy)}
.takio-renewal #footer {margin-top:64px;padding:32px 20px}
.takio-renewal #footer a {color:#e2ebfa;text-decoration:none}
.takio-renewal #footer .footer-in {max-width:1160px}
.takio-renewal #footer .copyright {color:#b9c9df;font-size:14px}
.takio-renewal .mobile-menu-buttons {background:var(--lab-navy)!important;color:#fff!important;border-top:1px solid #29405f}
.takio-renewal .mobile-menu-buttons a,.takio-renewal .mobile-menu-buttons .menu-button {color:#fff!important;min-height:48px}
.takio-renewal .mobile-menu-buttons .menu-caption {font-size:12px}
.takio-renewal .menu-content {background:#fff;color:var(--lab-ink)}
.takio-renewal .menu-content a {min-height:44px;padding:12px 16px;color:var(--lab-navy)}
.takio-renewal .mobile-menu-buttons .menu-content a {color:var(--lab-navy)!important}
.takio-renewal .navi-menu-content {overflow-x:hidden}
/* Home components are namespaced so previous page-specific CSS cannot leak in. */
.takio-renewal.takio-home #content {margin-top:0!important}
.takio-renewal.takio-home #content-in {width:100%!important;max-width:none!important;display:block!important}
.takio-renewal.takio-home #main {width:100%!important;max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;background:var(--lab-bg)!important}
.takio-renewal.takio-home #sidebar,.takio-renewal.takio-home .article-footer,.takio-renewal.takio-home .entry-content>.toc,.takio-renewal.takio-home .breadcrumb {display:none!important}
.takio-renewal.takio-home .article-header {display:block!important;position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.takio-renewal.takio-home .article-header>:not(.entry-title) {display:none!important}
.takio-renewal.takio-home .article-header .entry-title {display:block!important}
.takio-renewal.takio-home .entry-content {margin:0!important;padding:0!important}
.takio-renewal .lab-home {color:var(--lab-ink);font-size:17px}
.takio-renewal .lab-shell {max-width:1160px;margin:0 auto;padding:0 24px}
.takio-renewal .lab-hero {background:var(--lab-navy);color:#fff;padding:72px 0 64px;border-bottom:5px solid var(--lab-blue);position:relative}
.takio-renewal .lab-hero .lab-shell {position:relative}
.takio-renewal .lab-eyebrow {font-size:14px;font-weight:750;letter-spacing:.18em;color:var(--lab-blue);margin:0 0 16px!important}
.takio-renewal .lab-hero .lab-eyebrow {color:#9fc4ff}
.takio-renewal .lab-hero .lab-hero-title {font-size:clamp(32px,4.5vw,58px);font-weight:800;line-height:1.4;letter-spacing:.035em;color:#fff;margin:0 0 24px;padding:0;background:none;border:0}
.takio-renewal .lab-hero .lab-hero-title span {color:#82b5ff}
.takio-renewal .lab-lead {max-width:680px;font-size:18px;line-height:1.9;color:#d5e1f3;margin-bottom:28px!important}
.takio-renewal .lab-actions {display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.takio-renewal a.lab-button {display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:13px 24px;border-radius:8px;background:var(--lab-blue);color:#fff!important;font-size:16px;font-weight:700;text-decoration:none!important;border:1px solid var(--lab-blue);line-height:1.5}
.takio-renewal a.lab-button:hover {background:#153cad}
.takio-renewal a.lab-button-secondary {background:transparent;border-color:#8297b6;color:#fff!important}
.takio-renewal a.lab-button-secondary:hover {background:#213658}
.takio-renewal .lab-note {font-size:14px;color:var(--lab-muted);line-height:1.8}
.takio-renewal .lab-hero .lab-note {color:#b9cbe5;max-width:700px;margin:24px 0 0!important}
.takio-renewal .lab-section {padding:56px 0}
.takio-renewal .lab-section h2 {border:0;background:none;font-size:clamp(25px,2.8vw,34px);padding:0;margin:0 0 16px;line-height:1.5}
.takio-renewal .lab-section h3 {background:none;border:0;padding:0;margin:12px 0;font-size:21px;line-height:1.6}
.takio-renewal .lab-section p {margin-bottom:24px}
.takio-renewal .lab-principles,.takio-renewal .lab-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.takio-renewal .lab-principle {padding:24px;background:#fff;border:1px solid var(--lab-line);border-top:3px solid var(--lab-blue);border-radius:0 0 10px 10px}
.takio-renewal .lab-step {display:block;font-size:14px;letter-spacing:.08em;color:var(--lab-blue);font-weight:750}
.takio-renewal .lab-principle p {font-size:16px;line-height:1.85;margin-bottom:0}
.takio-renewal .lab-section-heading {display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:24px}
.takio-renewal .lab-section-heading h2 {margin:0}
.takio-renewal a.lab-text-link {font-size:16px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.takio-renewal .lab-card {display:block;color:var(--lab-ink);background:#fff;border:1px solid var(--lab-line);border-radius:12px;overflow:hidden;text-decoration:none!important;min-width:0}
.takio-renewal a.lab-card:hover {border-color:#7b9ed3;box-shadow:0 5px 18px #0b173010}
.takio-renewal .lab-card img {display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.takio-home .lab-section[aria-labelledby="lab-results-title"] .lab-card img,
.takio-home .lab-section[aria-labelledby="lab-columns-title"] .lab-card img {display:none}
.takio-renewal .lab-card-body {padding:24px}
.takio-renewal .lab-card h3 {font-size:20px;margin:12px 0 16px}
.takio-renewal .lab-card-meta {font-size:14px;color:var(--lab-muted)}
.takio-renewal .lab-card-label {font-size:14px;color:var(--lab-blue);font-weight:700}
.takio-renewal .lab-card-excerpt {font-size:15px;color:var(--lab-muted)}
.takio-renewal .lab-reading-guide,.takio-renewal .lab-related-guide {padding:28px;background:#eef3fc;border:1px solid var(--lab-line);border-radius:12px;margin:36px 0}
.takio-renewal .lab-reading-guide h2,.takio-renewal .lab-related-guide h2 {font-size:23px;border:0;background:none;margin:0 0 16px;padding:0}
.takio-renewal .lab-archive-intro {background:#eef3fc;padding:20px 24px;margin:0 0 24px;border-radius:8px;font-size:16px}
.takio-renewal.no-sidebar #main {width:100%!important}
.takio-renewal.no-sidebar #sidebar {display:none!important}
.takio-renewal .lab-hero>.lab-shell {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:48px;align-items:center}
.takio-renewal .lab-hero-panel {border:1px solid #355078;border-radius:14px;padding:28px;background:#12233e}
.takio-renewal .lab-panel-label {font-size:13px;letter-spacing:.1em;color:#9fc4ff}
.takio-renewal .lab-check-list {list-style:none;padding:0;margin:24px 0}
.takio-renewal .lab-check-list li {display:flex;gap:16px;padding:18px 0;border-top:1px solid #355078}
.takio-renewal .lab-check-list li>span {color:#9fc4ff;font-size:14px;font-weight:700}
.takio-renewal .lab-check-list strong {font-size:18px}
.takio-renewal .lab-check-list p {font-size:14px;color:#c7d5e9;margin:6px 0 0!important}
.takio-renewal .lab-panel-note {font-size:14px;color:#c7d5e9;margin:0!important}
.takio-renewal .lab-card-arrow {display:block;margin-top:16px;color:var(--lab-blue);font-size:15px;font-weight:700}
.takio-renewal .lab-card>.lab-card {border:0;border-radius:0;height:100%}
.takio-renewal .lab-contact-strip {background:var(--lab-navy);color:#fff;padding:36px 0}
.takio-renewal .lab-contact-strip>.lab-shell {display:flex;gap:24px;align-items:center;justify-content:space-between}
.takio-renewal .lab-contact-strip h2 {color:#fff;border:0;background:none;font-size:26px;margin:0 0 12px;padding:0}
.takio-renewal .lab-contact-strip p {color:#c7d5e9;margin:0}
.takio-renewal .lab-related-guide .lab-button-secondary {background:#fff;color:var(--lab-blue)!important;border-color:#7b9ed3}
@media(min-width:768px) {
  .takio-renewal #navi .navi-in>.menu-mobile {display:none!important}
  .takio-renewal #navi .navi-in>.menu-pc {display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;padding:0 8px!important}
  .takio-renewal #navi .navi-in>.menu-pc>li {width:auto!important;flex:0 1 auto!important}
}
@media(max-width:1023px) {
  .takio-renewal #content-in {display:block!important;width:calc(100% - 40px)!important}
  .takio-renewal #main,.takio-renewal #sidebar {width:100%!important;max-width:100%!important}
  .takio-renewal #sidebar {margin:32px 0 0;display:block}
  .takio-renewal #navi .navi-in>ul>li>a {padding:12px!important}
  .takio-renewal .lab-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .takio-renewal .lab-hero>.lab-shell {grid-template-columns:1fr;gap:28px}
}
@media(max-width:767px) {
  body.takio-renewal {font-size:16px}
  .takio-renewal #header .logo {padding:18px 16px!important}
  .takio-renewal #navi .navi-in>.menu-pc {display:none!important}
  .takio-renewal #navi .navi-in>.menu-mobile {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:4px 8px!important;width:100%!important;gap:0!important}
  .takio-renewal #navi .navi-in>.menu-mobile>li {width:100%!important;min-width:0}
  .takio-renewal #navi .navi-in>.menu-mobile>li>a {padding:10px 5px!important;font-size:14px!important;min-height:48px!important;height:auto!important;white-space:normal!important}
  .takio-renewal #content {margin-top:20px}
  .takio-renewal #content-in {width:calc(100% - 24px)!important}
  .takio-renewal #main {padding:22px 16px!important;border-radius:10px}
  .takio-renewal .article-header .entry-title,.takio-renewal .archive-title {padding:20px 16px!important;font-size:26px}
  body.takio-renewal:not(.takio-home) #main .article-header .entry-title {padding:20px 16px!important}
  .takio-renewal .entry-content h2 {padding:16px;margin-top:36px}
  .takio-renewal .entry-card-wrap {padding:16px}
  .takio-renewal .entry-card-title {font-size:18px!important}
  .takio-renewal .entry-card-thumb {width:100%!important;float:none!important;margin:0 0 16px!important}
  .takio-renewal .entry-card-thumb img {width:100%;aspect-ratio:16/9;object-fit:cover}
  .takio-renewal .entry-card-content {margin:0!important}
  .takio-renewal .lab-shell {padding:0 20px}
  .takio-renewal .lab-hero {padding:44px 0 40px}
  .takio-renewal .lab-lead {font-size:16px}
  .takio-renewal .lab-section {padding:36px 0}
  .takio-renewal .lab-principles,.takio-renewal .lab-grid {grid-template-columns:1fr;gap:16px}
  .takio-renewal .lab-section-heading {display:block}
  .takio-renewal .lab-section-heading h2 {margin-bottom:12px}
  .takio-renewal .lab-actions {flex-direction:column}
  .takio-renewal .lab-actions .lab-button {width:100%}
  .takio-renewal .lab-reading-guide,.takio-renewal .lab-related-guide {padding:20px}
  .takio-renewal .lab-contact-strip>.lab-shell {display:block}
  .takio-renewal .lab-contact-strip .lab-button {margin-top:20px;width:100%}
  .takio-renewal #footer {margin-top:40px;padding-bottom:80px}
}
@media(prefers-reduced-motion:reduce) {.takio-renewal * {scroll-behavior:auto!important;transition:none!important}}

/* Homepage purpose update: keep the existing navy / blue palette. */
.takio-home .lab-hero .lab-hero-title {font-size:clamp(30px,3.4vw,44px);line-height:1.55;letter-spacing:.015em}
.takio-home .lab-hero .lab-lead strong {display:inline-block;margin-top:12px;color:#e1ebfa}
.takio-home .lab-hero-panel .lab-panel-label {font-size:19px;font-weight:750;letter-spacing:.04em;margin-bottom:16px}
.takio-home .lab-check-list {margin:0 0 20px}
.takio-home .lab-check-list li {padding:14px 0}
.takio-home .lab-purpose,.takio-home .lab-categories,.takio-home .lab-about {background:#fff}
.takio-home .lab-prose {max-width:900px}
.takio-home .lab-prose p:last-child {margin-bottom:0}
.takio-home .lab-process-list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:28px 0 0}
.takio-home .lab-process-list li {min-width:0;margin:0}
.takio-home .lab-process-list h3 {font-size:20px}
.takio-home .lab-process-list .lab-step {font-size:22px}
.takio-home .lab-categories .lab-card {display:flex;flex-direction:column}
.takio-home .lab-categories .lab-card h3 {font-size:19px;margin-top:0}
.takio-home .lab-categories .lab-card p {font-size:16px}
.takio-home .lab-category-status {align-self:flex-start;margin-top:auto;padding:3px 10px;border-radius:4px;background:#eef3fc;color:var(--lab-muted);font-size:13px}
.takio-home .lab-category-help {margin:24px 0 0;font-size:15px;color:var(--lab-muted)}
.takio-home .lab-metrics {display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:24px 0}
.takio-home .lab-metrics li {margin:0;padding:8px 15px;background:#fff;border:1px solid var(--lab-line);border-radius:6px;font-size:15px}
.takio-home .lab-policy-key {font-size:19px;line-height:1.9}
.takio-home .lab-disclaimer {margin-top:32px;padding-top:24px;border-top:1px solid var(--lab-line)}
.takio-home .lab-disclaimer h3 {font-size:16px;margin:0 0 8px}
.takio-home .lab-disclaimer p {margin-bottom:0}
.takio-home #lab-about {scroll-margin-top:24px}
.takio-home .lab-about .lab-actions {gap:28px;margin-bottom:0}
.takio-home .lab-contact-strip .lab-button {flex-shrink:0}
.takio-home .lab-contact-strip h2 {font-size:clamp(23px,2.3vw,28px);line-height:1.6}
.takio-home .lab-contact-strip p {max-width:780px}
/* Cocoon can insert its automatic TOC inside the HTML fragment. */
.takio-home .lab-home .toc {display:none!important}
@media(max-width:1023px) {
 .takio-home .lab-process-list {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px) {
 .takio-home .lab-process-list {grid-template-columns:1fr;gap:16px}
 .takio-home .lab-home .lab-section h2 {padding:0;margin:0 0 20px}
 .takio-home .lab-hero-panel {padding:22px}
 .takio-home .lab-policy-key {font-size:17px}
}
.takio-home .lab-hero .lab-hero-title .lab-title-topic {color:#fff;white-space:nowrap}
