/* Rakuyori's screen design: editorial hierarchy, useful feedback, quiet reading.
   Scoped to screen so the existing private, advertisement-free print views survive. */
@media screen {
 :root{--ink:#202c28;--green:#174f40;--muted:#59635e;--paper:#fbfaf7;--white:#fff;--line:#d8ddd7;--lime:#e7ecdb;--sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--serif:var(--sans);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:64px;--radius-control:8px;--radius-panel:12px}
 body.site-v2{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}
 .site-v2 .container{width:calc(100% - 80px);max-width:1200px}
 .site-v2 h1,.site-v2 h2,.site-v2 h3{font-family:var(--sans);letter-spacing:.015em;font-weight:700;text-wrap:pretty}
 .site-v2 h1{letter-spacing:-.035em}.site-v2 p{word-break:normal;overflow-wrap:break-word}
 .site-v2 a,.site-v2 button,.site-v2 input,.site-v2 summary{-webkit-tap-highlight-color:transparent}
 .site-v2 :is(a,button,input,textarea,select,summary):focus-visible,.site-v2 label:focus-within{outline:3px solid #2068c4;outline-offset:3px}
 .site-v2 :is(input,textarea,select){font-size:16px;border-radius:var(--radius-control);border-color:#75877b}.site-v2 :is(input,textarea)::placeholder{color:var(--muted);opacity:1}.site-v2 :is(.request-builder-concerns label){border-color:#75877b}
 
 .site-v2 :is(.eyebrow,.small){letter-spacing:.035em}.site-v2 .eyebrow{color:var(--green);font-size:12px;line-height:1.6;font-weight:700}
 .site-v2 .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.6;text-underline-offset:5px}
 .site-v2 .button{min-height:52px;border-radius:var(--radius-control);font-size:16px;font-weight:700;padding:13px 22px;gap:24px;line-height:1.6;box-shadow:none;letter-spacing:0}
 .site-v2 .button.secondary{background:#fff;border:1px solid #87968d;color:var(--green)}
 .site-v2 .site-header{position:relative;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
 .site-v2 .header-row{height:88px;gap:24px}
 .site-v2 .brand{gap:10px;font-size:26px;letter-spacing:.13em;font-weight:800;flex-shrink:0}
 .site-v2 .brand-symbol{width:35px;height:35px;border-radius:50%;font-size:31px;background:var(--green);color:#fff;letter-spacing:0}
 .site-v2 .brand-symbol>span{font-size:17px}.site-v2 .brand small{font-size:9px;letter-spacing:.27em;line-height:1.3;margin-top:5px;color:var(--muted)}
 .site-v2 .desktop-nav{gap:28px}.site-v2 .desktop-nav a{display:flex;align-items:center;min-height:48px;font-size:13px;letter-spacing:0;color:var(--ink);position:relative}
 .site-v2 .desktop-nav a[aria-current=page]{font-weight:700;color:var(--green)}
 .site-v2 .brand>span:last-child{min-width:0}
 .site-v2 .hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:80px;padding:72px 0 64px}
 .site-v2 .hero-copy{padding:0;min-width:0}.site-v2 .hero .eyebrow{margin:0 0 24px;font-size:12px;letter-spacing:.08em}
 .site-v2 .hero h1{font-size:clamp(42px,4.8vw,66px);line-height:1.3;margin:0 0 28px;letter-spacing:-.04em;color:var(--ink)}
 .site-v2 .hero-em{color:var(--green);background:none;position:relative;isolation:isolate}.site-v2 .hero-em::after{content:"";position:absolute;inset:auto 0 3px;height:9px;background:#e7dca8;z-index:-1;transform:none;border:0}
 .site-v2 .hero-description{font-size:16px;line-height:1.9;margin:0 0 28px;color:var(--muted)}
 
 
 
 .site-v2 .home-search-submit{min-height:46px;min-width:54px;border-radius:6px;font-size:14px}
 
 .site-v2 .home-search-popup{border-radius:10px;border-color:#75877b;background:#fff;box-shadow:0 12px 28px #20372c1c}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 .site-v2 .section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-direction:row;margin-bottom:28px}
 .site-v2 .section-heading h2{font-size:30px;line-height:1.5;margin:0}.site-v2 .section-heading .eyebrow{font-size:12px;margin-bottom:8px}
 
 
 
 .tool-number{font:12px/1.5 Arial,sans-serif;color:var(--muted);padding-top:6px}.tool-arrow{font-size:22px;color:var(--green)}
 
 
 
 
 .site-v2 .about-band{background:#174638;color:#fff}.site-v2 .about-band-inner{padding:56px 0;gap:64px;align-items:center}
 .site-v2 .about-band h2{font-size:32px;line-height:1.6;color:#fff}.site-v2 .about-band .eyebrow{color:#dce7d7;font-size:12px}.site-v2 .about-band p{font-size:15px;line-height:1.9}.site-v2 .about-band a{color:#fff;border-color:#b5cabc}
 .site-v2 .site-footer{background:#f4f4ee;border-top:0}.site-v2 .footer-top{padding:48px 0;gap:36px}.site-v2 .footer-top p{font-size:13px;line-height:1.9}
 .site-v2 .footer-link-group>a{font-size:13px;min-height:44px;display:flex;align-items:center;line-height:1.6}.site-v2 .footer-link-group>.eyebrow{font-size:11px;margin-bottom:8px}
 .site-v2 .amazon-disclosure{font-size:12px;color:var(--muted);line-height:1.8}.site-v2 .footer-bottom{font-size:12px;min-height:64px;gap:20px}.site-v2 .footer-bottom>a{min-height:44px;display:flex;align-items:center}
 .site-v2 .motion-toggle{min-height:44px;font-size:13px;border-radius:6px}
 .site-v2 .page-section{padding-top:48px;padding-bottom:72px}.site-v2 .page-intro{margin-bottom:40px}
 .site-v2 .page-intro h1{font-size:clamp(30px,3.5vw,44px);line-height:1.5;letter-spacing:-.02em}.site-v2 .page-intro>p:last-child{font-size:16px;line-height:1.9}
 
 
 .site-v2 .guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}
 .site-v2 .guide-card{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;padding:12px 0 0;transform:none}
 .site-v2 .guide-image{border-radius:8px;overflow:hidden}.site-v2 .guide-image img{aspect-ratio:1.85;object-fit:cover;transform:none}
 .site-v2 .image-tag{display:none}.site-v2 .image-note{font-size:10px;border-radius:3px;background:#ffffffed;color:#47574c}.site-v2 .image-arrow{border-radius:50%;background:#ffffffed;color:var(--green)}
 .site-v2 .guide-meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin:16px 0 10px;color:var(--muted)}.site-v2 .guide-meta span:first-child{display:block}
 .site-v2 .guide-card h3{font-size:20px;line-height:1.65;letter-spacing:0;margin:0 0 12px}.site-v2 .guide-card>p{font-size:16px;line-height:1.85;margin-bottom:16px;color:var(--muted)}
 .site-v2 .breadcrumb{font-size:12px;padding-top:24px;gap:10px;line-height:1.8}.site-v2 .breadcrumb a{min-height:32px;display:inline-flex;align-items:center}
 .site-v2 .article-header{max-width:900px;text-align:left;margin:40px auto 40px}.site-v2 .article-header>.eyebrow{font-size:12px;margin-bottom:16px}
 .site-v2 .article-header h1{font-size:clamp(29px,3.4vw,42px);line-height:1.5;font-weight:750;letter-spacing:-.025em;margin:0 0 24px}
 .site-v2 .article-meta{justify-content:flex-start;font-size:12px;line-height:1.6;gap:10px 16px}.site-v2 .pill{border-radius:4px;background:#f0f1eb;border-color:#cbd3cb;padding:4px 8px;color:#46544c}
 .site-v2 .article-journey{margin:24px 0 0;max-width:none;gap:12px}.site-v2 .article-journey a{border-radius:7px;box-shadow:none;font-size:14px;border-color:#75877b;background:#fff;min-height:48px}
 .site-v2 .article-journey a:last-child[href="#article-shopping"]{background:var(--green);color:#fff}
 .site-v2 .article-brief{max-width:none;margin:24px 0 0;padding:20px 24px;border-left:3px solid var(--green);background:#eef2ea;border-radius:0 8px 8px 0;text-align:left}
 .site-v2 .article-brief .eyebrow{font-size:12px;margin:0 0 8px}.site-v2 .brief-conclusion{font-size:17px;line-height:1.85;margin:0;font-weight:600}
 
 .site-v2 .article-grid{grid-template-columns:220px minmax(0,720px);gap:56px;justify-content:center}
 .site-v2 .article-toc{top:24px;padding:0;border:0;border-radius:0;background:transparent}.site-v2 .article-toc summary{font-size:15px;min-height:48px;color:var(--ink);font-weight:700}
 .site-v2 .article-toc nav a{font-size:13px;line-height:1.75;min-height:44px;padding:9px 0;color:var(--muted);border-bottom:1px solid var(--line)}
 .site-v2 .article-toc nav a span{font-size:11px;color:var(--green)}.site-v2 .toc-policy{font-size:12px;min-height:44px}
 .site-v2 .article-body p,.site-v2 .article-body li{font-size:17px;line-height:1.95}.site-v2 .article-body p{margin-bottom:24px}.site-v2 .article-body .article-lede{font-size:18px;line-height:1.9;margin-bottom:40px;color:var(--muted)}
 .site-v2 .article-body h2{font-size:28px;line-height:1.6;margin:56px 0 24px;padding:0;font-weight:700;letter-spacing:-.015em}
 .site-v2 .article-body>section>h2>span{display:block;font:12px/1.5 Arial,sans-serif;margin-bottom:12px;color:var(--green);letter-spacing:.08em}
 .site-v2 .article-body h3{font-size:21px;line-height:1.65}.site-v2 .article-body>section{scroll-margin-top:24px}
 .site-v2 .key-point{border-left:3px solid var(--green);background:#eef2ea;border-radius:0 8px 8px 0;padding:24px;margin:32px 0}.site-v2 .key-point p:last-child{font:600 18px/1.9 var(--sans)}
 .site-v2 .buy-check{background:transparent;border-radius:0;border:0;border-bottom:1px solid var(--line);box-shadow:none;margin:0}.site-v2 .buy-check summary{padding:20px 0;min-height:56px;font-size:16px}.site-v2 .buy-check>div{padding:0 0 20px}
 .site-v2 .article-checks{border-top:2px solid var(--green);padding-top:24px}.site-v2 .article-checks>h2{margin-top:0}
 .site-v2 .checks-toggle{min-height:44px;border-radius:7px;font-size:14px}
 .site-v2 .article-shopping-intro{border-radius:8px;background:#eef2ea;padding:24px}.site-v2 .article-shopping-intro>h2{font-size:25px;margin-top:0}.site-v2 .article-shopping-intro>p{font-size:16px}
 .site-v2 .product-panel{border-radius:10px;box-shadow:none;background:#fff}.site-v2 .merchant-offer{box-shadow:none;border-radius:8px}
 .site-v2 .source-box{background:#f2f3ed;border:0;border-top:1px solid var(--line);border-radius:0;padding:28px}.site-v2 .source-box h2{font-size:20px;margin:0 0 16px}.site-v2 .source-box p,.site-v2 .source-box li{font-size:14px;line-height:1.9}.site-v2 .source-box .small{font-size:12px}
 
 .site-v2 .related-section{padding:64px 0}.site-v2 .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px}
 .site-v2 .money-entry{margin:24px 0 0;max-width:none}.site-v2 .money-entry-label{font-size:14px;color:var(--muted)}
 .site-v2 .money-service-nav{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
 .site-v2 .money-service-nav>a{background:transparent;border:0;border-radius:0;box-shadow:none;padding:16px;min-height:76px}.site-v2 .money-service-nav>a+a{border-left:1px solid var(--line)}
 .site-v2 .money-entry-name{font-size:13px;color:var(--muted)}.site-v2 .money-entry-benefit{font-size:15px}
 .site-v2 .money-entry-more{margin-top:8px;gap:20px}.site-v2 .money-entry-more a{font-size:14px;background:transparent!important;color:var(--green)!important;border:0;min-height:44px;padding:8px 0}
 .site-v2 .money-role-cards{gap:12px}.site-v2 .money-role{box-shadow:none;border-radius:8px;background:#fff}
 .site-v2 .money-service-story{padding-top:36px;margin-top:36px;border-top:1px solid var(--line)}
 .site-v2 :is(.money-service-figure,.money-bridge-figure,.money-compound){background:#f0f3ec;border-radius:10px;border:1px solid var(--line);box-shadow:none}
 .site-v2 :is(.money-service-next,.money-service-choice,.money-bridge-product){border-radius:8px;box-shadow:none}
 .site-v2 .money-compound-amount{white-space:normal;overflow-wrap:anywhere}.site-v2 .money-compound-amount>span{display:inline-block}
 .site-v2 .money-service-steps>li{border-radius:6px;background:#fff}.site-v2 .money-service-next>a{border-radius:7px}
 .site-v2 .prose p,.site-v2 .prose li{font-size:17px;line-height:1.95}.site-v2 .prose h2{font-size:26px;line-height:1.6;margin-top:40px}.site-v2 .info-list{font-size:15px}
 .site-v2 .about-signature{background:#e8eddf;border-top:3px solid var(--green);padding:40px 28px;border-radius:0 0 12px 12px}.site-v2 .about-signature>p:not(.eyebrow){font-size:clamp(30px,3vw,42px);font-weight:700;line-height:1.6;margin:24px 0 36px}.site-v2 .about-signature>span{font-size:14px;color:var(--muted)}
 .site-v2 .about-image{border-radius:10px}.site-v2 .contact-help{background:#f0f2eb;border-radius:10px}.site-v2 .contact-help p{font-size:15px}
 .site-v2 :is(.request-panel){box-shadow:none;border-radius:10px}
 .site-v2 :is(.request-builder,.contact-send){border-radius:10px;box-shadow:none}
 @media(hover:hover) and (pointer:fine){
  
  
  .site-v2 .guide-card:hover img{transform:none}
  
 }
 @media(max-width:1100px){
  .site-v2 .container{width:calc(100% - 64px)}.site-v2 .desktop-nav{gap:18px}.site-v2 .desktop-nav a{font-size:12px}
  .site-v2 .hero{gap:48px}.site-v2 .guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-v2 .article-grid{grid-template-columns:190px minmax(0,680px);gap:36px}
 }
 @media(max-width:760px){
  .site-v2 .container{width:calc(100% - 40px)}.site-v2 .header-row{height:auto;min-height:72px;gap:8px;flex-wrap:wrap;padding-block:12px}.site-v2 .brand{font-size:23px;gap:9px}.site-v2 .brand-symbol{width:31px;height:31px;font-size:28px}.site-v2 .brand small{font-size:8px}
  .site-v2 .desktop-nav{display:none}
  .site-v2 .mobile-menu{display:block}.site-v2 .mobile-menu summary{font-size:12px;min-height:44px;padding:11px 0 11px 8px;display:flex;align-items:center;gap:8px}.site-v2 .mobile-menu summary span{margin:0;font-size:20px}
  .site-v2 .mobile-menu nav{top:100%;background:var(--paper);padding:8px 20px 20px;border-color:var(--line);box-shadow:0 12px 20px #20372c12}
  .site-v2 .mobile-menu nav a{min-height:52px;font-size:15px;padding:14px 0;border-bottom:1px solid var(--line)}
  .site-v2 .hero{display:block;padding:36px 0 36px}.site-v2 .hero .eyebrow{font-size:10px;letter-spacing:.05em;margin-bottom:20px}
  .site-v2 .hero h1{font-size:clamp(40px,11.5vw,54px);line-height:1.3;margin-bottom:20px;letter-spacing:-.04em}.site-v2 .hero-description{font-size:16px;line-height:1.9;margin-bottom:24px}
  
  
  
  
  
  
  
  
  .site-v2 .section-heading{gap:16px;flex-direction:column;align-items:flex-start;margin-bottom:24px}.site-v2 .section-heading h2{font-size:24px;line-height:1.6}.site-v2 .section-heading .eyebrow{font-size:11px}
  
  
  .site-v2 .about-band-inner{padding:36px 0;gap:24px}.site-v2 .about-band h2{font-size:27px}.site-v2 .about-band p{font-size:14px}
  .site-v2 .footer-top{grid-template-columns:1fr 1fr;gap:28px 20px;padding:36px 0}.site-v2 .footer-top>div:first-child{display:block;grid-column:1/-1}.site-v2 .footer-top>div:first-child>p{font-size:13px;margin-top:18px}
  .site-v2 .footer-link-group>a{font-size:12px}.site-v2 .footer-link-group>.eyebrow{font-size:11px}.site-v2 .footer-bottom{font-size:11px;gap:12px}.site-v2 .footer-bottom>span:nth-child(2){display:none}
  .site-v2 .page-section{padding:36px 0 48px}.site-v2 .page-intro{margin-bottom:28px}.site-v2 .page-intro h1{font-size:30px;line-height:1.5;margin-bottom:16px}.site-v2 .page-intro>p:last-child{font-size:15px;line-height:1.9}
  .site-v2 .guide-grid,.site-v2 .related-grid{grid-template-columns:1fr;gap:36px}.site-v2 .guide-image img{aspect-ratio:1.85}.site-v2 .guide-meta{font-size:12px}.site-v2 .guide-card h3{font-size:21px}.site-v2 .guide-card>p{font-size:16px}
  .site-v2 .breadcrumb{font-size:11px;padding-top:16px;align-items:center}.site-v2 .article-header{margin:28px 0 28px}.site-v2 .article-header>.eyebrow{font-size:11px;margin-bottom:12px}
  .site-v2 .article-header h1{font-size:29px;line-height:1.55;letter-spacing:-.025em;margin-bottom:20px}.site-v2 .article-meta{font-size:11px;gap:10px 12px}
  .site-v2 .article-journey{gap:8px;margin-top:20px}.site-v2 .article-journey a{font-size:13px;min-height:48px;padding:10px 6px;gap:6px}
  .site-v2 .article-brief{padding:18px;margin-top:20px}.site-v2 .article-brief .eyebrow{font-size:11px}.site-v2 .brief-conclusion{font-size:16px;line-height:1.9}
  .site-v2 .article-grid{display:flex;gap:28px;flex-direction:column}.site-v2 .article-toc{position:static;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0;width:100%}.site-v2 .article-toc summary{padding:12px 0}
  .site-v2 .article-toc nav a{font-size:14px;min-height:48px;padding:12px 0}.site-v2 .article-body p,.site-v2 .article-body li{font-size:16px;line-height:1.95}.site-v2 .article-body .article-lede{font-size:16px;line-height:1.95;margin-bottom:32px}
  .site-v2 .article-body h2{font-size:24px;line-height:1.65;margin:44px 0 24px}.site-v2 .article-body h3{font-size:20px;line-height:1.65}.site-v2 .article-body>section>h2>span{font-size:11px;margin-bottom:10px}
  .site-v2 .source-box{padding:24px 18px}.site-v2 .source-box h2{font-size:20px;margin-top:0}.site-v2 .source-box p,.site-v2 .source-box li{font-size:14px}.site-v2 .source-box .small{font-size:12px}
  .site-v2 .key-point{padding:20px}.site-v2 .key-point p:last-child{font-size:17px}.site-v2 .article-shopping-intro{padding:20px}.site-v2 .article-shopping-intro>h2{font-size:23px;margin-top:0}
  .site-v2 .money-entry{margin-top:24px}.site-v2 .money-service-nav{display:block}.site-v2 .money-service-nav>a{min-height:72px;padding:14px 0;grid-template-columns:76px minmax(0,1fr) auto;gap:12px}.site-v2 .money-service-nav>a+a{border-left:0;border-top:1px solid var(--line)}
  .site-v2 .money-entry-name{font-size:12px}.site-v2 .money-entry-benefit{font-size:14px;line-height:1.6}.site-v2 .money-entry-more{gap:12px}.site-v2 .money-entry-more a{font-size:13px}
  .site-v2 .reader-actions{left:0;right:0;bottom:0;border-radius:0;border:0;border-top:1px solid #c2ccc4;padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -4px 20px #20372c0a}
  .site-v2 .reader-actions>button,.site-v2 .reader-actions>a{min-height:48px;border-radius:7px;font-size:13px}
  .site-v2 .reader-actions>[data-reader-shopping]{background:var(--green);color:#fff}
  .site-v2 .prose p,.site-v2 .prose li{font-size:16px;line-height:1.95}.site-v2 .prose h2{font-size:24px}.site-v2 .info-list>div{font-size:14px}.site-v2 .contact-layout{gap:32px}
 }
 @media(max-width:360px){
  .site-v2 .container{width:calc(100% - 32px)}.site-v2 .brand{font-size:21px}.site-v2 .header-row{gap:5px}.site-v2 .mobile-menu summary{font-size:11px;gap:5px}
  .site-v2 .hero h1{font-size:39px}.site-v2 .hero-description{font-size:13px}
  .site-v2 .article-header h1{font-size:26px}.site-v2 .article-journey a{font-size:12px;gap:4px}.site-v2 .money-service-nav>a{grid-template-columns:68px minmax(0,1fr) auto;gap:8px}
  .site-v2 .reader-actions>button,.site-v2 .reader-actions>a{font-size:12px}
 }
}
