:root{--ink:#24483e;--green:#32684f;--muted:#57665f;--line:#dce3dc;--paper:#fffefa;--tint:#f0f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.95}a{color:inherit}img{max-width:100%;height:auto}p{margin:0 0 1.25em}h1,h2,h3{line-height:1.55;margin:0 0 22px;font-weight:600}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif}h1{font-size:clamp(2.3rem,4.5vw,3.9rem)}h2{font-size:clamp(1.8rem,3vw,2.6rem)}h3{font-size:1.25rem}a:focus-visible,summary:focus-visible{outline:3px solid #a37527;outline-offset:5px}.wrap{width:min(1120px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:0}header{background:var(--paper);border-bottom:1px solid var(--line)}.header{display:flex;justify-content:space-between;align-items:center;gap:28px;min-height:108px}.brand{text-decoration:none;flex-shrink:0}.brand strong{font-family:"Yu Mincho",serif;font-size:1.7rem;letter-spacing:.1em;line-height:1.4;display:block}.brand span{display:block;font-family:Arial,sans-serif;font-size:.8rem;letter-spacing:.12em;font-weight:400;margin-top:5px}nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap}nav a{font-size:.875rem;text-decoration:none;padding:7px 0}nav a:hover,nav a[aria-current]{text-decoration:underline;text-underline-offset:7px}.nav-contact{border:1px solid var(--green);padding:8px 16px}.eyebrow{font-size:.875rem;font-weight:600;color:var(--green);letter-spacing:.1em;margin-bottom:20px}.home-hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:45px;padding-top:54px;padding-bottom:54px}.home-hero h1{letter-spacing:.04em;margin-bottom:25px}.home-hero img{width:100%;height:490px;object-fit:cover;object-position:65% center;border-radius:3px 3px 90px 3px}.home-hero p{line-height:2.2}.text-link{font-size:.9375rem;font-weight:600;text-decoration:none;border-bottom:1px solid #79958a;padding-bottom:6px;display:inline-block}.text-link span{margin-left:25px}.announcement{display:flex;align-items:center;gap:26px;border-block:1px solid var(--line);padding-block:19px;font-size:.9375rem}.announcement>span:first-child{font-size:.875rem;white-space:nowrap}.announcement a{text-decoration:none;flex:1}.section{padding:76px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head p{max-width:480px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service-card{text-decoration:none;border-top:2px solid #5f806a;padding:30px 8px;display:flex;flex-direction:column;align-items:start}.service-card:hover{background:var(--tint)}.service-card p{color:var(--muted);flex:1}.num,.step-no{font-size:.875rem;letter-spacing:.07em;color:var(--green)}.service-card h3{margin-top:18px;font-size:1.35rem}.tinted,.promise,.deliver{background:var(--tint)}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:35px 0}.result{padding:10px 25px;border-left:1px solid #b9cabc}.result strong{display:block;font-family:"Yu Mincho",serif;font-size:2.5rem}.result span{display:block;font-size:.9375rem}.home-about,.about,.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.home-about>img{width:100%;border-radius:3px}.inquiry{background:#e8efe6;padding:44px 0}.inquiry>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.inquiry h2{font-size:1.65rem;margin-bottom:10px}.inquiry p{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--green);color:white;text-decoration:none;padding:11px 26px;font-size:.9375rem;border:1px solid var(--green)}.btn:hover{background:#234a39}.btn.sub{background:transparent;color:var(--green)}footer{padding:52px 0 22px;background:#fcfcf8}.footer-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:25px}.footer-grid p{font-size:.875rem;color:var(--muted)}footer nav{grid-column:1/-1}.copyright{border-top:1px solid var(--line);padding-top:20px;margin-top:32px;font-size:.8rem;color:var(--muted)}.page-heading{padding:28px 0 58px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:.875rem;margin-bottom:42px;color:var(--muted)}.page-heading .eyebrow{margin-bottom:10px}.page-heading h1{font-size:clamp(2.2rem,4vw,3rem)}.page-heading p{max-width:750px;margin-bottom:0}.lead{max-width:780px;font-size:1.0625rem}.card{padding:28px;background:white;border:1px solid var(--line)}.card p{color:var(--muted);margin-bottom:0}.card h3{margin:12px 0 18px}.deliver-grid,.work-list{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}.worries{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0}.quote{border-left:3px solid #8ca27f;padding:20px 28px}.quote p{margin-bottom:0}.tag-row,.front-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.tag,.front-meta span{font-size:.875rem;border:1px solid var(--line);padding:4px 10px}.front-offer{padding:70px 0}.front-card{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-block:1px solid var(--line);padding:40px 0}.front-badge,.ribbon{font-size:.875rem;display:inline-block;background:#f3ecd7;padding:5px 12px;margin-bottom:16px}.front-price{font-size:2.4rem;font-family:"Yu Mincho",serif}.front-points{padding-left:22px;margin:22px 0}.flow{margin-top:32px}.step{display:grid;grid-template-columns:95px 1fr;gap:24px;padding:25px 0;border-top:1px solid var(--line)}.step p{margin:0;color:var(--muted)}.icon{font-size:1.4rem}.optional{background:transparent}.monitor{background:#f8f4e9}.monitor .split{align-items:start}.book-cover{display:block;width:149px;height:auto;margin:20px auto 30px;box-shadow:0 7px 15px #24483e20}.work-item{padding:18px;border-top:1px solid var(--line)}.work-item strong{display:block}.profile-photo{margin:0}.profile-photo img{width:100%;display:block}.profile-photo figcaption{padding:22px 0}.profile-photo strong{display:block;font-size:1.6rem}.profile-photo small{font-size:.875rem}.stats{display:none}.overview{display:grid;grid-template-columns:160px 1fr;max-width:850px}.overview dt,.overview dd{padding:19px 0;margin:0;border-bottom:1px solid var(--line)}.overview dt{font-weight:600}.faq{max-width:850px}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{cursor:pointer;font-weight:600;padding-right:25px}.faq details p{margin:18px 0 0;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-panel{padding:32px;background:var(--tint)}.contact-panel h2{font-size:1.5rem}.contact-panel p:last-child{font-size:.875rem;margin-top:28px}li{margin:8px 0}
@media(max-width:1000px){.header{flex-direction:column;align-items:start;padding-block:20px;gap:16px}nav{gap:18px}.home-hero{gap:26px}.home-hero img{height:450px}.home-about,.about,.split{gap:32px}.service-grid{gap:18px}.section-head{align-items:start;flex-direction:column;gap:20px}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}body{line-height:1.9}nav{gap:8px 18px}nav a{min-height:40px;display:inline-flex;align-items:center;font-size:.875rem}.nav-contact{padding:5px 10px}.brand strong{font-size:1.5rem}.home-hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:30px;gap:32px}.home-hero img{height:290px;object-position:65% center;border-radius:3px 3px 55px 3px}.home-hero h1{font-size:2.5rem}.home-hero p{line-height:2}.announcement{gap:14px;align-items:start}.section{padding:52px 0}.service-grid,.results-grid,.home-about,.about,.split,.front-card,.deliver-grid,.work-list,.worries,.contact-layout{grid-template-columns:1fr}.service-card{padding:24px 0}.service-card p{margin-bottom:16px}.results-grid{gap:20px}.result{display:flex;align-items:center;gap:22px;padding:3px 16px}.result strong{font-size:2rem;white-space:nowrap}.inquiry>.wrap{align-items:start;flex-direction:column;gap:23px}.inquiry h2{font-size:1.5rem}.footer-grid{grid-template-columns:1fr}.page-heading{padding-bottom:35px}.breadcrumb{margin-bottom:30px}.front-card{gap:22px}.step{grid-template-columns:1fr;gap:9px}.overview{grid-template-columns:95px 1fr;gap:0 16px}.overview dt,.overview dd{font-size:.9375rem}.quote{padding:16px 22px}.contact-panel{padding:25px}.eyebrow{letter-spacing:.06em}.front-offer{padding:48px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.monitor-feature{background:#fae59b;border-block:1px solid #dac16c}.monitor-feature .eyebrow{font-weight:700;color:#5e501e}.monitor-feature h2{font-size:clamp(1.85rem,3.1vw,2.65rem)}.monitor-note{background:#fffdf3;padding:34px;border-top:4px solid #688052}.monitor-note h3{font-family:"Yu Mincho",serif;font-size:1.8rem}.small-note{font-size:.875rem;color:#62614e;margin:22px 0 0}.character-home{background:#f1f5ec}.character-home .card{display:grid;grid-template-columns:150px 1fr;column-gap:26px;align-items:start}.character-home .card>.num{grid-column:1/-1}.character-home .card>a{grid-column:1;grid-row:2/5}.character-home .card h3,.character-home .card p{grid-column:2}.character-home .book-cover{margin-top:8px}.character-home .card .btn{padding:9px 14px}.character-home .deliver-grid{gap:25px}@media(max-width:650px){.monitor-note{padding:25px}.character-home .card{grid-template-columns:105px 1fr;column-gap:18px;padding:20px}.character-home .card h3{font-size:1.125rem}}

.profile-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.profile-link-card{display:block;padding:28px;border:1px solid var(--line);text-decoration:none;background:white}.profile-link-card:hover{background:var(--tint)}.profile-link-card h3{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px}.profile-link-card p{margin:0;color:var(--muted)}.profile-links{border-top:1px solid var(--line)}@media(max-width:650px){.profile-link-grid{grid-template-columns:1fr}.profile-link-card{padding:24px}}

/* Compact cover gallery */
.portfolio{background:#f5f6f0;padding:44px 0}.portfolio h2{font-size:1.8rem;margin-bottom:12px}.portfolio .eyebrow{margin-bottom:12px}.portfolio .lead{font-size:1rem}.portfolio-grid{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 12px;margin-top:24px}.portfolio-book{position:relative;margin:0;flex:0 0 auto;min-width:0}.portfolio-cover{height:150px;display:flex;align-items:flex-end;padding:0;border:0}.portfolio-cover img{display:block;width:auto;height:150px;max-width:220px;object-fit:contain;box-shadow:1px 3px 6px #24483e15}.portfolio-book figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.portfolio-more{margin:20px 0 0}@media(max-width:650px){.portfolio{padding:32px 0}.portfolio-grid{gap:10px 8px;margin-top:20px}.portfolio-cover{height:108px}.portfolio-cover img{height:108px;max-width:160px}.portfolio h2{font-size:1.6rem}}


.author-book-section{background:var(--tint)}.author-book{display:grid;grid-template-columns:220px minmax(0,1fr);gap:60px;align-items:center;max-width:900px}.author-book figure{margin:0;text-align:center}.author-book img{display:block;width:149px;max-width:100%;height:auto;margin:auto;box-shadow:3px 7px 15px #24483e20}.author-book h2{font-size:clamp(1.65rem,3vw,2.3rem)}.author-name{font-weight:600}@media(max-width:650px){.author-book{grid-template-columns:1fr;gap:30px}.author-book img{margin:0}.author-book h2{overflow-wrap:anywhere}}

.partner-socials{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:14px}.partner-socials a{min-height:44px;display:inline-flex;align-items:center}

.brand span{font-family:inherit;letter-spacing:.1em}.header nav{gap:18px}@media(min-width:1001px) and (max-width:1120px){.header nav{gap:12px}.header{gap:18px}}

.news-section{padding:40px 0;border-bottom:1px solid var(--line)}.news-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:35px;align-items:center}.news-layout .eyebrow{margin-bottom:5px}.news-layout h2{font-size:1.65rem;margin:0}.news-list{list-style:none;padding:0;margin:0}.news-list li{margin:0}.news-list a{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 0;text-decoration:none}.news-list a:hover .news-subject{text-decoration:underline;text-underline-offset:4px}.news-list time{font-size:.875rem;color:var(--muted);white-space:nowrap}.news-category{font-size:.875rem;background:var(--tint);padding:2px 10px;white-space:nowrap}.news-subject{font-size:1rem;line-height:1.8}@media(max-width:650px){.news-section{padding:28px 0}.news-layout{grid-template-columns:1fr;gap:8px}.news-list a{grid-template-columns:auto 1fr auto;gap:10px 12px;padding:16px 0}.news-category{justify-self:start}.news-subject{grid-row:2;grid-column:1/3}.news-list a>span:last-child{grid-row:2;grid-column:3}}

.character-guide{display:flex;align-items:center;gap:28px;margin:10px 0 30px}.character-guide>img{width:170px;height:170px;object-fit:contain;flex-shrink:0;border-radius:18px}.character-guide>div{border-left:3px solid #73cfc5;padding:12px 24px}.character-guide p{margin:0}.character-guide .guide-name{font-size:.875rem;color:var(--green);margin-bottom:8px;font-weight:600}.character-example{margin:36px 0 44px;background:white;padding:30px;border:1px solid var(--line)}.character-to-book{display:flex;align-items:center;justify-content:center;gap:36px}.character-to-book>div{display:flex;flex-direction:column;align-items:center;gap:15px}.character-to-book img{object-fit:contain;width:210px;height:210px}.character-to-book>div:last-child img{width:131px}.character-to-book span{font-size:.875rem}.character-to-book .example-arrow{font-size:2rem;color:var(--green)}.character-example figcaption{text-align:center;margin-top:25px;font-size:1rem}.illustrated-quote>img{display:block;width:165px;height:165px;object-fit:contain;margin:0 auto 20px;border-radius:16px}.illustrated-inquiry>.wrap>img{width:120px;height:120px;object-fit:contain;border-radius:16px;flex-shrink:0}.profile-character{display:flex;align-items:center;gap:18px;margin-bottom:24px}.profile-character img{width:110px;height:110px;object-fit:contain}.profile-character span{font-size:.9375rem;color:var(--green)}@media(max-width:650px){.character-guide{gap:14px;align-items:center}.character-guide>img{width:105px;height:105px}.character-guide>div{padding:8px 0 8px 14px}.character-guide p{font-size:1rem}.character-guide br{display:none}.character-example{padding:22px 14px}.character-to-book{gap:12px}.character-to-book>div{flex:1;min-width:0}.character-to-book img{width:100%;height:145px}.character-to-book>div:last-child img{width:90px}.character-to-book span{text-align:center}.character-to-book .example-arrow{flex:0;font-size:1.3rem}.character-example figcaption{text-align:left}.illustrated-inquiry>.wrap>img{width:100px;height:100px}}

.partner-identity{display:flex;align-items:center;gap:20px}.partner-identity img{display:block;width:96px;height:auto;flex-shrink:0}@media(max-width:650px){.partner-identity{flex-direction:column;align-items:flex-start;gap:12px}.partner-identity img{width:84px}}

.mini-scene{display:block;width:110px;height:110px;object-fit:contain;flex-shrink:0}.service-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:110px}.illustrated-service-card h3{margin-top:14px}.illustrated-step{grid-template-columns:120px minmax(0,1fr);align-items:center}.step-marker{display:flex;flex-direction:column;gap:8px;align-items:center}.step-marker .mini-scene{width:94px;height:94px}.step-marker .step-no{align-self:center}@media(max-width:650px){.service-card-top{min-height:90px}.service-card-top .mini-scene{width:90px;height:90px}.illustrated-step{grid-template-columns:82px minmax(0,1fr);gap:16px}.step-marker .mini-scene{width:76px;height:76px}.illustrated-step h3{font-size:1.2rem}}

.recruit-badge{display:inline-block;background:#a63d27;color:white;font-weight:700;font-size:1rem;padding:7px 18px;margin-bottom:18px;border-radius:4px}.monitor-price-message{display:block;font-size:1.4rem;color:#783119;margin-bottom:12px}.monitor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px}.monitor-instruction{font-size:.875rem;margin-top:14px;margin-bottom:0}.monitor-feature .monitor-actions .btn,.monitor .btn{background:#a63d27;border-color:#a63d27;color:white}.monitor-feature .monitor-actions .btn:hover,.monitor .btn:hover{background:#87301e}.format-intro{max-width:850px;margin-bottom:22px}.book-formats{background:#f0f5ef}.format-note{font-size:.9375rem;margin-top:24px;margin-bottom:0}@media(max-width:650px){.monitor-price-message{font-size:1.25rem}.monitor-actions{align-items:flex-start;flex-direction:column}.monitor-actions .btn{padding-inline:18px}}
