
.rp,.rp-entry{--rp-ink:#173f3a;--rp-paper:#fffdf8;--rp-tint:#f3ecdf;--rp-accent:#965023;color:var(--rp-ink);font-family:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.85;word-break:normal;line-break:strict;overflow-wrap:normal}
.rp--lab{--rp-ink:#233c4b;--rp-tint:#edf3f3;--rp-accent:#856021}
.rp *,.rp-entry *{box-sizing:border-box}.rp{background:var(--rp-paper)}
.rp h1,.rp h2,.rp h3,.rp-entry h2{color:var(--rp-ink);font-family:inherit;letter-spacing:.02em;line-height:1.5;text-wrap:balance;margin:0 0 20px;font-weight:700}
.rp h1{font-family:"Shippori Mincho","Yu Mincho",serif;font-size:clamp(32px,4.4vw,62px);line-height:1.5}.rp h2{font-size:clamp(26px,3vw,40px)}.rp h3{font-size:23px;margin-bottom:12px}.rp p{margin:0 0 18px}.rp .jp-phrase,.rp-entry .jp-phrase{display:inline-block}
.rp-wrap{width:min(1120px,calc(100% - 48px));margin:auto}.rp-section{padding:88px 0;scroll-margin-top:105px}.rp-tint{background:var(--rp-tint)}
.rp-kicker{font-family:inherit;font-size:14px;font-weight:700;letter-spacing:.12em;color:var(--rp-accent);margin:0 0 20px!important}.rp-lead{font-size:18px;max-width:760px}
.rp-hero{padding:150px 0 70px}.rp-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}.rp-hero figure{margin:0}.rp-hero img{width:100%;height:auto;display:block;border-radius:4px}.rp-hero figcaption{font-size:14px;line-height:1.7;margin-top:12px;color:var(--rp-ink)}
.rp-btn,.rp-btn:visited{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:2px solid var(--rp-ink);border-radius:4px;background:var(--rp-ink);color:#fff!important;font-size:16px;font-weight:700;line-height:1.6;text-decoration:none;box-shadow:none;transition:background .2s}.rp-btn:hover{background:#315b52;color:#fff}.rp-btn:focus-visible,.rp a:focus-visible,.rp summary:focus-visible,.rp-entry a:focus-visible{outline:3px solid #ad651c;outline-offset:5px}.rp-btn--light,.rp-btn--light:visited{background:transparent;color:var(--rp-ink)!important}.rp-btn--light:hover{background:#e1e8e0}.rp-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:28px 0 14px}.rp a:not(.rp-btn){color:var(--rp-ink);text-underline-offset:4px}.rp-note{font-size:14px;line-height:1.8;max-width:760px}
.rp-two{display:grid;grid-template-columns:1fr 1fr;gap:48px}.rp-lines{margin:0;padding:0;list-style:none}.rp-lines li{padding:16px 0;border-bottom:1px solid #c4cec6}.rp-lines li:first-child{border-top:1px solid #c4cec6}.rp-statement{font-size:clamp(23px,2.6vw,34px);font-weight:700;line-height:1.65;max-width:920px;margin:30px 0!important}
.rp-flow{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:24px;margin-top:40px;align-items:stretch}.rp-flow>div{padding:28px;border-top:3px solid var(--rp-ink)}.rp-flow .rp-flow-hub{background:var(--rp-ink);color:#fff;border-radius:4px}.rp-flow-hub h3,.rp-flow-hub .rp-kicker{color:#fff}.rp-flow p:last-child{margin-bottom:0}.rp-tags{display:flex;flex-wrap:wrap;gap:8px}.rp-tags span{border:1px solid #a7b5ae;padding:5px 12px;font-size:16px;border-radius:3px;background:#fff;color:var(--rp-ink)}
.rp-list{margin-top:40px}.rp-row{display:grid;grid-template-columns:90px .8fr 1.5fr;gap:24px;padding:32px 0;border-top:1px solid #bfcac1;align-items:start}.rp-row:last-child{border-bottom:1px solid #bfcac1}.rp-num{font-size:30px;font-family:Georgia,serif;color:var(--rp-accent);line-height:1.4}.rp-row h3{margin:0}.rp-row p{margin:0}.rp-example{border-left:4px solid #ae7326;padding:24px 28px;background:var(--rp-tint);margin-top:32px}
.rp-demo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:36px}.rp-demo{border:1px solid #bdc9c0;border-radius:4px;overflow:hidden}.rp-demo img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;display:block}.rp-demo div{padding:24px}.rp-demo p{margin-bottom:12px}.rp-price{padding:32px;border:1px solid #b8c6bd;border-radius:4px}.rp-price strong{font-size:28px;display:block;line-height:1.5;margin:14px 0}.rp-price ul{padding-left:1.2em}.rp-price small{font-size:15px}.rp-faq details{border-bottom:1px solid #bdc9c0;padding:20px 0}.rp-faq summary{font-weight:700;font-size:18px;cursor:pointer;min-height:44px;padding-right:15px}.rp-faq details p{padding:16px 0 0;margin:0}.rp-contact{background:var(--rp-ink);color:#fff}.rp-contact h2,.rp-contact .rp-kicker{color:#fff}.rp-contact .rp-btn,.rp-contact .rp-btn:visited{background:#fffdf8;color:var(--rp-ink)!important;border-color:#fffdf8}.rp-contact .rp-btn:hover{background:#e6e1d5}.rp-consult-list{padding-left:1.2em}.rp-entry{padding:60px 24px;background:#e5eee7}.rp-entry-inner{max-width:1120px;margin:auto;display:flex;gap:36px;justify-content:space-between;align-items:center}.rp-entry h2{font-size:clamp(25px,2.6vw,36px);margin:0 0 12px}.rp-entry p{margin:0;max-width:720px}.rp-entry .rp-btn{flex-shrink:0}
@media(max-width:900px){.rp-hero-grid{grid-template-columns:1fr;gap:32px}.rp-hero figure{max-width:720px}.rp-two{gap:28px}.rp-flow{grid-template-columns:1fr}.rp-flow>div{padding:24px}.rp-row{grid-template-columns:55px 1fr}.rp-row p{grid-column:2}.rp-entry-inner{display:block}.rp-entry .rp-btn{margin-top:24px}.rp-hero{padding-top:125px}}
@media(max-width:600px){.rp-wrap{width:calc(100% - 40px)}.rp-section{padding:56px 0}.rp-hero{padding-top:120px}.rp-two,.rp-demo-grid{grid-template-columns:1fr}.rp-hero-grid{gap:28px}.rp h1{font-size:32px}.rp h2{font-size:27px}.rp h3{font-size:22px}.rp-lead{font-size:17px}.rp-actions{display:grid;justify-items:start}.rp-btn{max-width:100%;padding:13px 18px}.rp-row{gap:12px;padding:26px 0}.rp-price{padding:24px}.rp-example{padding:20px}.rp-entry{padding:44px 20px}.rp-flow{gap:12px}.rp-hero figure{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.rp-btn{transition:none}}

/* Two equally weighted consultation themes on the existing pages. */
.rp-entry-inner{display:block}.rp-entry-options{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:32px}.rp-entry-option{display:flex;flex-direction:column;align-items:flex-start;border-top:2px solid var(--rp-ink);padding-top:28px}.rp-entry-option h3{font-size:clamp(23px,2.1vw,28px);line-height:1.55;letter-spacing:.02em;margin:0 0 18px;color:var(--rp-ink);font-weight:700;text-wrap:balance}.rp-entry-option>p:not(.rp-kicker){flex:1;margin-bottom:24px}.rp-entry-option .rp-btn{margin-top:0}.rp-entry .rp-kicker{line-height:1.8}
@media(max-width:700px){.rp-entry-options{grid-template-columns:1fr;gap:36px}.rp-entry-option h3{font-size:24px}}
