@import url('/assets/fonts/fonts.css');
:root{--sand:#c6b584;--ink:#333;--body-font:'M PLUS 1p','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:linear-gradient(to bottom,#fff 0,#f5f2e8 24%,var(--sand) 100%);font-family:var(--body-font);font-size:16px;line-height:1.7;min-height:100vh}button,input,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}img,video{max-width:100%;height:auto}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #147d90;outline-offset:4px}p,h1,h2,h3,ul,figure{margin-top:0}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;top:8px;left:8px;background:#fff;padding:12px;z-index:100}.site-header{background:#fff}.brand-row{max-width:1200px;margin:0 auto;min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:block;line-height:0}.brand img{width:597px;display:block}.main-nav{max-width:1200px;margin:auto;display:flex;justify-content:center;gap:60px;min-height:36px;background:var(--sand)}.main-nav>a{min-width:120px;padding:7px 10px;font-size:15px;font-weight:700;line-height:1.4;text-align:center;display:flex;align-items:center;justify-content:center}.main-nav>a:hover,.main-nav>[aria-current=page]{background:#fff}.main-nav .training-link{font-size:12px;line-height:1.1;letter-spacing:1px}.member-menu{position:relative;margin-right:16px;font-size:12px;z-index:10}.member-menu>summary{list-style:none;white-space:nowrap;padding:8px 10px;color:#666}.member-menu>summary::-webkit-details-marker{display:none}.member-menu-panel{position:absolute;right:0;top:100%;min-width:250px;background:#fff;border:1px solid #e0d9c6;box-shadow:0 8px 24px #0001;padding:20px}.member-menu-panel p{overflow-wrap:anywhere;margin-bottom:10px}.member-menu-panel button{width:100%;background:#f5f2e8;color:#333;padding:10px;margin-top:8px;text-align:left}.hero{max-width:1200px;margin:auto;overflow:hidden;background:#ddd}.hero img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}.lesson-menu{max-width:1200px;margin:auto;padding:20px 0 40px}.step-grid{max-width:1010px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.step-accordion{min-width:0;background:white}.step-accordion>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 12px;font-family:Lato,'M PLUS 1p','Hiragino Kaku Gothic ProN',sans-serif;font-size:16px;font-weight:700;line-height:1.4;text-align:center}.step-accordion>summary::-webkit-details-marker{display:none}.step-accordion>summary:hover{background:#fbfaf7}.step-accordion b{white-space:nowrap}.triangle{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #333;flex:none;transition:transform .18s}.step-accordion[open] .triangle{transform:rotate(180deg)}.step-accordion ul{list-style:none;padding:0;margin:0}.step-accordion li:nth-child(odd){background:#ededed}.step-accordion li a{display:block;text-align:center;padding:7px 10px;font-size:15px;line-height:1.5}.step-accordion li a:hover{background:#e5ddc3}.series-grid{display:grid;grid-template-columns:repeat(2,300px);justify-content:center;gap:20px 24px;margin:20px auto 0}.series{display:flex;justify-content:center;align-items:center;min-height:44px;padding:8px 14px;border-radius:100px;font-size:17px;color:white;text-align:center;transition:filter .2s}.series:hover{filter:brightness(.95)}.useful{background:#fbfb79;color:#777}.caution{background:#548dba}.downloads{background:#51b7b2}.plugins{background:#ffaf6f}.section-band{background:#fff;text-align:center;padding:12px 16px}.section-band h1{font-size:24px;font-weight:400;margin:0;letter-spacing:.18em}.search-form{display:flex;justify-content:center;margin:50px auto 40px;max-width:500px;padding:0}.search-form input{border:0;background:#fff;min-width:0;flex:1;padding:18px 24px;font-size:15px;border-radius:0}.search-form input::placeholder{color:#aaa}.search-form button{background:#333;color:#fff;width:100px;flex:none;font-size:15px}.search-form button:hover{background:#555}.article-group{padding:40px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1200px;margin:auto}.article-card{display:block;border-radius:16px;overflow:hidden;background:#fff;align-self:start;transition:opacity .2s,transform .2s}.article-card:hover{opacity:.82;transform:translateY(-2px)}.article-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.search-card span{display:block;padding:14px 18px;font-size:14px}.site-footer{max-width:1200px;margin:40px auto 0;padding:38px 20px 24px;text-align:center}.footer-brand{display:inline-block}.footer-brand img{width:85px;height:85px;object-fit:contain}.site-footer nav{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:20px 0;font-size:12px}.site-footer nav a:hover{text-decoration:underline}.site-footer small{font-family:Lato,sans-serif;font-size:12px}.article-view{background:#fff}.article-view .brand-row{border-bottom:1px solid #f3efe4}.article-main{max-width:1000px;margin:40px auto 0;padding:0 20px 50px}.article-title,.page-title{font-size:28px;line-height:1.7;font-weight:700;margin:0 0 40px;overflow-wrap:anywhere}.article-title{background:#c6b584;padding:20px 30px}.article-body{font-family:Lato,'M PLUS 1p','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:18px;line-height:1.8;overflow-wrap:anywhere}.article-body p{margin:0 0 24px;min-height:1em}.article-body h1{font-size:28px;background:#eee9da;padding:16px 20px;margin:55px 0 28px}.article-body h2{font-size:24px;margin:42px 0 24px;line-height:1.6}.article-body h3{font-size:21px;margin:32px 0 20px}.article-body figure{margin:28px 0;text-align:center}.article-body img{vertical-align:middle;object-fit:contain;max-width:100%;cursor:zoom-in}.article-body a img{cursor:pointer}.article-body figcaption{font-size:14px;color:#777;margin-top:8px}.article-body a:not(:has(img)){color:#145aa0;text-decoration:underline;text-underline-offset:3px}.article-body ul,.article-body ol{padding-left:1.6em}.article-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.article-body th,.article-body td{border:1px solid #ddd;padding:10px}.article-body blockquote{margin:24px 0;padding:18px 24px;background:#f7f5ed;border-left:4px solid var(--sand)}.article-body pre{white-space:pre-wrap;background:#f4f4f4;padding:20px}.article-body iframe{max-width:100%;border:0}.article-close{position:fixed;right:24px;top:135px;width:42px;height:42px;display:grid;place-items:center;font-size:30px;background:white;border:1px solid #ddd;border-radius:50%;line-height:1;z-index:3}.article-navigation{display:flex;justify-content:space-between;align-items:stretch;gap:20px;border-top:1px solid #ddd;margin-top:70px;padding-top:24px;font-size:13px}.article-navigation a{flex:1;padding:12px;text-align:center;background:#f7f5ee}.article-navigation span{display:block;margin-bottom:10px;font-size:12px;color:#777}.article-navigation .back-to-list{flex:0 0 90px;align-content:center}.content-main{max-width:1200px;margin:60px auto;padding:0 30px 70px}.content-main>.article-body{max-width:950px;margin:auto}.content-main>.article-grid{margin-top:40px}.page-title{text-align:center}.search-count{text-align:center;margin-bottom:30px}.notice{max-width:900px;margin:20px auto;padding:15px;background:#fff8d9}.media-dialog{padding:20px;border:0;max-width:95vw;max-height:95vh;background:#fff}.media-dialog::backdrop{background:#000b}.media-dialog img{max-width:90vw;max-height:84vh;object-fit:contain;display:block}.media-dialog button{display:block;margin:0 0 12px auto;padding:6px 12px;background:#eee}
@media(max-width:1100px){.main-nav{gap:20px}.brand-row{padding:0 20px}.lesson-menu{padding:20px 30px 40px}.step-accordion>summary{font-size:14px;gap:8px}.article-close{top:auto;bottom:20px}.article-main{max-width:950px}.article-body{font-size:17px}}
@media(max-width:700px){.brand-row{min-height:86px;padding:12px 14px;gap:12px}.brand img{width:100%;max-width:440px}.member-menu{margin-right:0;font-size:10px}.member-menu>summary{padding:6px 0}.main-nav{gap:0}.main-nav>a{min-width:0;flex:1;padding:9px 4px;font-size:11px}.main-nav .training-link{font-size:9px;letter-spacing:0}.lesson-menu{padding:20px 16px 32px}.step-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.step-accordion>summary{font-size:12px;min-height:50px;padding:8px;gap:5px}.step-accordion li a{font-size:12px;padding:8px}.series-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.series{font-size:12px;min-height:38px;padding:8px 5px}.section-band h1{font-size:20px}.search-form{margin:30px 20px}.search-form input{padding:14px 16px}.search-form button{width:75px}.article-group{padding:20px 16px}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.article-card{border-radius:9px}.site-footer{margin-top:25px}.site-footer nav{gap:10px 18px;font-size:10px}.article-main{margin-top:24px;padding:0 16px 30px}.article-title{padding:16px;font-size:20px;margin-bottom:28px}.article-body{font-size:15px;line-height:1.85}.article-body h1{font-size:21px;padding:12px;margin-top:36px}.article-body h2{font-size:20px;margin-top:32px}.article-body h3{font-size:18px}.article-body figure{margin:20px 0}.article-body img{height:auto!important;max-width:100%!important}.article-navigation{gap:8px;font-size:11px;margin-top:40px}.article-navigation a{padding:8px}.article-navigation .back-to-list{flex-basis:64px}.content-main{margin:30px auto;padding:0 16px 40px}.page-title{font-size:22px}.search-card span{padding:10px;font-size:12px}}
@media(max-width:380px){.main-nav>a{font-size:10px}.step-grid{grid-template-columns:1fr}.step-accordion>summary{font-size:14px;min-height:44px}.article-grid{grid-template-columns:1fr}.brand-row{flex-wrap:wrap;justify-content:center}.member-menu{margin-left:auto}.brand{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Article typography and spacing measured from the owner's published pages. */
.article-view{background:linear-gradient(180deg,#fff 0%,#c6b584 100%)}
.article-view .brand-row{border-bottom:0}
.article-main{max-width:1480px;margin:0 auto;padding:50px 100px}
.article-title{font-family:Lato,'BIZ UDPGothic',sans-serif;font-size:48px;font-weight:900;line-height:1.5;background:none;padding:0;margin:62px 20px 70px;color:#333}
.article-body{font-family:Lato,'BIZ UDPGothic',sans-serif;font-size:16px;line-height:1.4;max-width:1280px}
.article-body p{font-family:'BIZ UDPGothic',sans-serif;font-size:18px;line-height:2;margin:0 0 24px}
.article-body h1{background:none;padding:0;font-size:32px;line-height:1.5}
.article-body h2{font-size:28px;line-height:1.5}
.article-body h3{font-size:24px;line-height:1.5}
.article-body figure{margin:24px 0}
.article-close{top:132px;bottom:auto}
@media(max-width:990px){.article-main{padding:40px}.article-title{font-size:40px;margin:40px 0 50px}.article-close{right:12px;top:auto;bottom:20px}}
@media(max-width:598px){.article-main{padding:20px}.article-title{font-size:24px;margin:25px 0 40px}.article-body p{font-size:16px;line-height:2}.article-body h1{font-size:26px}.article-body h2{font-size:23px}.article-body h3{font-size:20px}}
.auth-main{width:calc(100% - 32px);max-width:520px;margin:60px auto;padding:40px;background:#fff;box-shadow:0 8px 35px #5847160a;border:1px solid #eee8da;border-radius:8px;font-size:14px}
.auth-main h1{font-size:26px;line-height:1.5;margin-bottom:24px}.auth-main form{margin:28px 0}.auth-main label{display:block;margin:20px 0;font-size:14px}.auth-main input:not([type=hidden]){width:100%;display:block;margin-top:8px;padding:12px 14px;border:1px solid #c8c3b7;border-radius:3px;background:#fff;font-size:16px}.auth-main button{display:block;width:100%;padding:14px 12px;background:#333;color:#fff;font-size:15px;border-radius:3px}.auth-main a{text-decoration:underline;text-underline-offset:4px}.auth-main [role=alert]{padding:12px;background:#fff1ed;color:#912f1e}.auth-main [role=status]{padding:12px;background:#eef8ee}.auth-main .plan-price{padding:14px;background:#f8f5ec;text-align:center}.plan-price strong{font-size:32px;font-family:Lato,sans-serif}.auth-view .member-menu{display:none}
@media(max-width:598px){.auth-main{margin:30px auto;padding:28px 22px}.auth-main h1{font-size:23px}}
.media-dialog img{max-width:100%}
/* The introductory page is intentionally spacious and separate from article styling. */
body:has(.at-first-page){background:var(--sand)}.at-first-page{max-width:1440px;margin:0 auto;padding:66px 54px 120px;background:var(--sand)}.at-first-page .page-title{margin:0 0 100px;font-family:'BIZ UDPGothic','M PLUS 1p',sans-serif;font-size:78px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-align:center}.at-first-page>.article-body{max-width:1200px;margin:0 auto;text-align:center}.at-first-page .article-body>div{text-align:center}.at-first-page .article-body p{max-width:980px;margin:0 auto 56px;text-align:center;font-size:19px;line-height:2.45}.at-first-page .article-body img{display:block;width:min(100%,1200px);margin:0 auto 80px;cursor:default}
.page-BENRI>.page-title,.page-Attention>.page-title{display:none}.page-4-3>.page-title{font-size:52px;margin-bottom:52px}
@media(max-width:700px){.at-first-page{padding:46px 22px 72px}.at-first-page .page-title{font-size:46px;margin-bottom:56px}.at-first-page .article-body p{margin-bottom:40px;font-size:16px;line-height:2.15}.at-first-page .article-body img{margin-bottom:48px}}
/* Page-specific selectors also key off the active navigation, so cached PHP cannot affect the layout. */
body:has(a[href="/at_first"][aria-current="page"]) { background:linear-gradient(to bottom,#fff 0,#f5f2e8 24%,var(--sand) 100%) }
body:has(a[href="/at_first"][aria-current="page"]) .at-first-page { background:transparent }
body:has(a[href="/BENRI"][aria-current="page"]) .page-title,
body:has(a[href="/Attention"][aria-current="page"]) .page-title { display:none }
body:has(a[href="/BENRI"][aria-current="page"]) .article-body > img { display:block; margin-left:auto; margin-right:auto }
body:has(a[href="/Attention"][aria-current="page"]) .article-body > img { display:block; margin-left:auto; margin-right:auto }
body:has(a[href="/Attention"][aria-current="page"]) .article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:800px }
body:has(a[href="/4-3"][aria-current="page"]) .page-title { font-size:52px; margin-bottom:52px }
.member-menu>summary { padding:8px 16px; background:#f5f2e8; border-radius:999px }
@media(max-width:700px){.member-menu>summary{padding:6px 12px}}
/* Download archive: mirrors the original two-tab layout while keeping both routes linkable. */
.download-view .brand-row{border-bottom:1px solid #999}
/* Original desktop tabs are compact: about 265–285px wide, not half the page. */
.download-tab:first-child{width:278px}.download-tab:nth-child(2){width:285px}
.page-davinci_plugins .article-body>section:nth-child(2)>div>img{display:block;width:266px;max-width:100%;height:auto}
.page-davinci_plugins .article-body>section:nth-child(2)>div>img[data-no-zoom]{cursor:default}
/* The plugins archive changes from the pale title area into its orange content area. */
body:has(.page-davinci_plugins){background:linear-gradient(to bottom,#fff 0 490px,#ffaf6f 490px 100%)}
/* Plugins page: match the published composition, including its full-width orange content area. */
body:has(.page-davinci_plugins){background:#ffaf6f}
.page-davinci_plugins{max-width:none;margin:0;padding:0 0 70px;background:#faf9f5}
.page-davinci_plugins>.page-title{margin:0;padding:76px 24px 0;font-size:50px;font-weight:400;line-height:1.2;letter-spacing:.32em;text-align:center}
.page-davinci_plugins>.article-body{max-width:none;margin:0}
.page-davinci_plugins .article-body>section:nth-child(1){height:124px;padding-top:19px;text-align:center}
.page-davinci_plugins .article-body>section:nth-child(1) p{margin:0;font-size:19px;letter-spacing:.5em;line-height:1.5}
.page-davinci_plugins .article-body>section:nth-child(2){height:87px;display:flex;align-items:flex-end;padding:0 34px}
.page-davinci_plugins .article-body>section:nth-child(2)>div{width:100%}
.page-davinci_plugins .article-body>section:nth-child(3){background:#ffaf6f;padding:78px max(34px,calc((100% - 1200px)/2)) 0}
.page-davinci_plugins .article-body>section:nth-child(3) p{margin:0 0 40px;font-size:23px;line-height:1.5;letter-spacing:.06em}
.page-davinci_plugins .article-body>section:nth-child(3)>div>a{display:block;max-width:1200px;margin:0 auto;line-height:0}
.page-davinci_plugins .article-body>section:nth-child(3)>div>a img{display:block;width:100%;height:auto}
.download-page{min-height:100vh;background:linear-gradient(0deg,var(--sand),#fff);padding-top:90px}.download-heading{text-align:center;margin:0 auto 100px}.download-heading h1{margin:0;font-size:50px;font-weight:400;letter-spacing:.38em}.download-heading p{margin:16px 0 0;font-size:19px;letter-spacing:.48em}.download-tabs{display:flex;gap:12px;max-width:1200px;margin:0 auto;padding:0 22px;align-items:flex-end;justify-content:center}.download-tab{display:block;flex:0 1 auto;min-width:0;padding:0;background:transparent;border-radius:28px 28px 0 0;line-height:0;overflow:hidden}.download-tab img{display:block;width:100%;max-width:100%;height:auto}.download-tab:first-child{width:min(556px,calc((100vw - 72px)/2))}.download-tab:nth-child(2){width:min(570px,calc((100vw - 72px)/2))}.download-panel{display:none;background:#dfca98;padding:36px max(22px,calc((100% - 1020px)/2)) 100px}.download-panel.is-active{display:block}.download-copy{max-width:1020px;margin:auto;font-size:18px;line-height:1.7}.download-copy p{margin:0 0 34px}.download-file-link{display:block;width:max-content;max-width:100%;margin:36px 0 52px}.download-file-link img{display:block;max-width:100%;height:auto}.download-project-file{display:block;width:182px;height:auto;max-width:100%;margin:0 0 36px;object-fit:contain}.download-detail-image{display:block;max-width:100%;height:auto;margin:28px 0 24px}.download-keyboard-intro{max-width:1020px;margin:0 auto 46px;text-align:center;font-size:18px;line-height:1.7}.download-keyboard-intro .download-file-link{margin:26px auto 0}.download-panel[data-panel=keyboard]{background:#eee8d6;padding-bottom:0}.download-panel[data-panel=keyboard] h2{margin:0 calc(-1 * max(22px,calc((100% - 1020px)/2))) 0;padding:20px;background:#333;color:#fff;font-weight:400;font-size:27px;text-align:center}.keyboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;max-width:1120px;margin:0 auto;padding:42px 0 100px}.keyboard-grid figure{position:relative;margin:0;border:1px dotted #333;border-radius:12px;padding:32px 44px;background:#f7f3e8}.keyboard-grid figure span{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:25px}.keyboard-grid img{display:block;width:100%;height:auto}
@media(max-width:700px){.download-page{padding-top:50px}.download-heading{margin-bottom:56px}.download-heading h1{font-size:31px;letter-spacing:.2em}.download-heading p{font-size:14px;letter-spacing:.34em}.download-tabs{gap:5px;padding:0 12px}.download-tab:first-child,.download-tab:nth-child(2){width:calc((100vw - 29px)/2);border-radius:18px 18px 0 0}.page-davinci_plugins .article-body>section:nth-child(2)>div>img{width:min(266px,100%)}.download-panel{padding:28px 18px 60px}.download-copy,.download-keyboard-intro{font-size:15px}.download-copy p{margin-bottom:28px}.download-file-link{margin:24px 0 36px}.download-panel[data-panel=keyboard] h2{margin:0 -18px;padding:18px;font-size:19px}.keyboard-grid{grid-template-columns:1fr;gap:20px;padding:28px 0 60px}.keyboard-grid figure{padding:28px 28px 28px 42px}.keyboard-grid figure span{left:12px;font-size:19px}}
@media(min-width:701px){.download-tab:first-child{width:278px}.download-tab:nth-child(2){width:285px}}
.download-tabs{max-width:none;justify-content:flex-start;padding-left:34px;padding-right:34px}
/* Keep every number, including 10 and 11, in its own column beside the image. */
.keyboard-grid figure{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:0;padding:32px 34px 32px 18px}
.keyboard-grid figure span{position:static;grid-column:1;transform:none;font-size:25px;text-align:center}
.keyboard-grid img{grid-column:2}
@media(max-width:700px){.keyboard-grid figure{grid-template-columns:38px minmax(0,1fr);padding:28px 20px 28px 12px}.keyboard-grid figure span{font-size:19px}}
@media(max-width:700px){.page-davinci_plugins{padding-bottom:40px}.page-davinci_plugins>.page-title{padding-top:52px;font-size:31px;letter-spacing:.18em}.page-davinci_plugins .article-body>section:nth-child(1){height:90px;padding-top:15px}.page-davinci_plugins .article-body>section:nth-child(1) p{font-size:14px;letter-spacing:.35em}.page-davinci_plugins .article-body>section:nth-child(2){height:72px;padding:0 18px}.page-davinci_plugins .article-body>section:nth-child(3){padding:42px 18px 0}.page-davinci_plugins .article-body>section:nth-child(3) p{margin-bottom:28px;font-size:16px;line-height:1.7;letter-spacing:0}}
