@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{color:#263b34;font-synthesis:none;--green:#285e4c;--muted:#69766d;--line:#dde2d9;--cream:#f2f3ed;background:#fafaf7;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:5px;outline:3px solid #c29042}p{line-height:1.95}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:.015em}h2{font-size:28px;line-height:1.6}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;max-width:1440px;margin:auto;padding:27px 5.6%;display:flex}.brand{letter-spacing:.07em;align-items:center;gap:12px;font-size:10px;line-height:1.8;display:flex}.brand strong{font-size:15px}.brand-mark{background:var(--green);color:#fff;text-align:center;letter-spacing:-3px;border-radius:13px;width:44px;height:44px;font-size:30px;font-weight:700;line-height:43px}.brand-mark span{color:#c9ddac}nav{gap:32px;font-size:12px;font-weight:500;display:flex}nav a:hover,.text-link:hover,.footer-links a:hover{color:var(--green);text-underline-offset:5px;text-decoration:underline}nav a[aria-current]{color:var(--green)}nav a span{margin-left:8px}.section{max-width:1280px;margin:auto;padding:76px 4.5%}.hero{background:radial-gradient(at 88% 40%,#eef2e8 0,#0000 52%);grid-template-columns:1.1fr 1fr;align-items:center;gap:50px;max-width:1440px;margin:auto;padding:76px 5.6% 65px;display:grid}.eyebrow{letter-spacing:.16em;color:var(--green);font-size:10px;font-weight:700;display:inline-block}.dot{background:#6b8961;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.hero h1{letter-spacing:.045em;white-space:nowrap;margin:26px 0 22px;font-size:clamp(34px,3.7vw,53px);font-weight:700;line-height:1.55}.hero h1 em{color:var(--green);font-style:normal}.hero-lead{color:#647066;margin-bottom:30px;font-size:15px;line-height:2.15}.button{background:var(--green);color:#fff;border:1px solid var(--green);border-radius:6px;align-items:center;gap:34px;padding:16px 24px;font-size:13px;font-weight:600;transition:transform .15s,background .15s;display:inline-flex}.button:hover{background:#173e31;transform:translateY(-2px)}.hero .text-link{margin-left:23px;font-size:12px}.hero-stats{align-items:center;gap:30px;margin-top:42px;display:flex}.hero-stats>div{align-items:baseline;gap:9px;display:flex}.hero-stats strong{font-family:Georgia,serif;font-size:36px;font-weight:500}.hero-stats span{color:var(--muted);font-size:11px}.hero-stats .stat-text{color:var(--muted);border-left:1px solid #d6ddd1;padding-left:25px;font-size:10px;line-height:1.8}.hero-visual{background:#f0f3ea88;border:1px solid #e0e5d8;border-radius:16px;padding:24px 25px 18px;position:relative;transform:rotate(-1deg);box-shadow:0 14px 50px #314a3010}.visual-label{letter-spacing:.18em;color:#60775d;justify-content:space-between;font-size:9px;display:flex}.visual-label span{letter-spacing:.03em;font-size:9px}.orbit{height:360px;position:relative}.orbit-ring{border:1px dashed #b8c7b0;border-radius:50%;position:absolute;inset:50px 47px;transform:rotate(-10deg)}.center-node{text-align:center;background:#fffef8;border:1px solid #dfe5d6;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:156px;height:156px;display:flex;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px 20px #314a3010}.spark{color:#6d8860;font-size:31px;line-height:1.2}.center-node strong{margin:9px 0;font-size:18px;line-height:1.55}.center-node small{letter-spacing:.1em;color:var(--muted);font-size:6px}.orbit-item{white-space:nowrap;background:#fffefa;border:1px solid #e4e7db;border-radius:9px;align-items:center;gap:9px;padding:12px 14px;font-size:11px;display:flex;position:absolute;transform:rotate(1deg);box-shadow:0 4px 14px #284b2510}.orbit-item>span{background:color-mix(in srgb,var(--category) 10%,white);width:29px;height:29px;color:var(--category);text-align:center;border-radius:8px;font-size:20px;line-height:29px}.orbit-0{top:20px;left:33%}.orbit-1{top:93px;right:-7px}.orbit-2{top:207px;right:0}.orbit-3{bottom:15px;right:20%}.orbit-4{bottom:29px;left:5%}.orbit-5{top:167px;left:-12px}.orbit-6{top:65px;left:0}.visual-caption{text-align:center;color:#69815c;letter-spacing:.1em;font-size:10px}.principle-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f3f4ee;justify-content:center;align-items:center;gap:28px;padding:24px 5.6%;display:flex}.principle-strip p{color:#667366;margin:0;font-size:12px}.principle-strip strong{color:#374e3c;font-weight:600}.principle-strip a{margin-left:20px;font-size:10px}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:32px;display:flex}.section-heading h2{margin:12px 0 0;font-size:27px}.section-heading>p{color:var(--muted);margin:0 0 7px;font-size:11px}.explore-layout{grid-template-columns:210px 1fr;gap:38px;display:grid}.filters{align-self:start;position:sticky;top:25px}.filter-heading{justify-content:space-between;align-items:center;padding:12px 0 17px;font-size:12px;font-weight:600;display:flex}.filter-heading button{color:#7a857c;background:0 0;border:0;padding:4px;font-size:10px}.category-filters{flex-direction:column;gap:5px;display:flex}.category-button{color:#627068;text-align:left;background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:center;gap:5px;padding:13px 11px;font-size:11px;display:flex}.category-button span{align-items:center;gap:8px;display:flex}.category-button i{text-align:center;width:19px;font-size:17px;font-style:normal}.category-button b{color:#81907e;font-size:10px;font-weight:400}.category-button.active{color:#2d543e;background:#e6ede1;font-weight:700}.category-button:hover{background:#edf0e8}.filter-note{border-top:1px solid var(--line);margin-top:24px;padding:26px 10px 10px;font-size:10px}.filter-note>span{font-weight:600}.filter-note p{color:var(--muted);margin:10px 0}.filter-note a{color:var(--green);font-weight:600}.search-box{background:#fff;border:1px solid #d8dfd2;border-radius:7px;align-items:center;gap:12px;padding:0 15px;display:flex}.search-box>span:first-child{color:#89917e;font-size:30px}.search-box input{color:#263b34;background:0 0;border:0;width:100%;min-width:0;padding:16px 0;font-size:12px}.search-box input:focus{outline:none}.search-box:focus-within{outline:2px solid var(--green);outline-offset:2px}.search-box kbd{color:#8d9587;white-space:nowrap;background:#f4f5f0;border:1px solid #e3e6dd;border-radius:3px;padding:3px 5px;font-size:9px}.selects{flex-wrap:wrap;gap:15px;margin:16px 0 22px;display:flex}.selects label{color:#6e7a6b;align-items:center;gap:7px;font-size:10px;display:flex}.selects select{color:#4d5d4e;background:#fafbf7;border:1px solid #dfe4d8;border-radius:4px;max-width:155px;padding:6px 19px 6px 8px;font-size:10px}.result-line{color:#89917f;justify-content:space-between;align-items:center;margin-bottom:17px;font-size:10px;display:flex}.result-line p{color:#62705f;margin:0}.result-line strong{color:#304c38;margin-right:4px;font-size:17px}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;display:grid}.case-wrapper[hidden]{display:none}.case-wrapper{min-width:0}.case-card{background:#fffefa;border:1px solid #e0e5d9;border-radius:9px;flex-direction:column;height:100%;padding:21px 22px 15px;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex}.case-card:hover{border-color:var(--category);transform:translateY(-3px);box-shadow:0 10px 20px #2e493a08}.card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-top .eyebrow{color:var(--category);letter-spacing:.06em;font-size:9px}.card-category{letter-spacing:0;font-size:9px}.status{white-space:nowrap;color:#526b49;background:#edf2e7;border-radius:3px;justify-content:center;align-items:center;padding:4px 7px;font-size:9px;font-weight:500;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;margin-right:5px}.status.concept{color:#91754c;background:#f2ede3}.mini-flow{background:color-mix(in srgb,var(--category) 5%,#fffefa);border-radius:4px;justify-content:center;align-items:center;gap:7px;margin:21px 0 19px;padding:17px 6px;display:flex}.mini-flow span{white-space:nowrap;background:#fffefa;border:1px solid #e1e5da;border-radius:4px;padding:8px 7px;font-size:9px}.mini-flow .ai-node{border-color:color-mix(in srgb,var(--category) 30%,white);color:var(--category);background:color-mix(in srgb,var(--category) 9%,white)}.mini-flow i{color:#93a18b;font-size:11px;font-style:normal}.case-card h3{letter-spacing:.025em;margin:0 0 9px;font-size:16px;line-height:1.75}.case-card>p{color:#7a8275;margin-bottom:20px;font-size:11px;line-height:1.85}.card-bottom{color:var(--category);border-top:1px solid #ebeee5;justify-content:space-between;align-items:center;margin-top:auto;padding-top:13px;font-size:9px;display:flex}.card-bottom>span>span{color:#858d7f;margin-left:7px;font-size:9px}.card-arrow{color:#4e6850;font-size:17px}.start-banner{background:#e9eee2;border-radius:12px;justify-content:space-between;align-items:center;gap:30px;max-width:1165px;margin-top:25px;margin-bottom:70px;padding:44px 50px;display:flex}.start-banner h2{margin:14px 0;font-size:30px}.start-banner p{color:#68755f;margin:0;font-size:13px}.light{color:var(--green);background:#fffefa;border-color:#fffefa}.light:hover{background:#f2f7eb}footer{border-top:1px solid var(--line);justify-content:space-between;max-width:1440px;margin:auto;padding:43px 6%;display:flex}.footer-brand{letter-spacing:.14em;font-size:11px;font-weight:600}footer p{color:#728069;margin-top:18px;font-size:12px}.footer-links{grid-template-columns:repeat(3,auto);align-content:start;gap:20px;font-size:10px;display:grid}.footer-links small{color:#929a89;text-align:right;grid-column:1/-1;font-size:9px;line-height:1.9}.page-intro{padding-bottom:0}.page-intro h1{margin:18px 0;font-size:36px}.page-intro p{color:var(--muted);font-size:13px}.detail{padding-top:32px}.breadcrumbs{color:#7b8874;flex-wrap:wrap;gap:14px;font-size:10px}.detail-heading{border-bottom:1px solid var(--line);padding:48px 0 38px}.detail-heading h1{max-width:850px;margin:20px 0 15px;font-size:38px;line-height:1.6}.detail-heading>p{color:var(--muted);font-size:14px}.tags{color:#6c7b61;flex-wrap:wrap;align-items:center;gap:13px;font-size:11px;display:flex}.detail-heading .source-note{margin:22px 0 0;font-size:11px;line-height:1.9}.detail-layout{grid-template-columns:minmax(0,1fr) 185px;gap:58px;display:grid}.detail-body>section{border-bottom:1px solid var(--line);padding:46px 0}.detail-body h2{margin:15px 0 22px;font-size:25px}.detail-body p{font-size:14px}.tip{background:#f0f3e9;border-left:3px solid #8da578;margin-top:22px;padding:19px 23px;font-size:12px}.tip p{margin:8px 0 0;font-size:12px}.roles{grid-template-columns:1fr 1fr;gap:18px;display:grid}.roles>div{border:1px solid var(--line);background:#f2f5ed;border-radius:8px;padding:25px}.roles>div+div{background:#f7f2e7}.role-label{color:var(--green);font-size:11px;font-weight:700}.roles h3{margin:16px 0;font-size:17px}.roles p{margin:0;font-size:12px}.toc{color:#748267;flex-direction:column;align-self:start;gap:21px;padding-top:50px;font-size:11px;display:flex;position:sticky;top:30px}.toc a:hover{color:var(--green)}.toc-back{border-top:1px solid var(--line);padding-top:23px;line-height:1.8}figure{margin:0 0 20px}.workflow{grid-template-columns:repeat(4,1fr);gap:17px;margin:0;padding:0;list-style:none;display:grid}.workflow li{background:#fffef9;border:1px solid #dce3d4;border-radius:6px;flex-direction:column;gap:10px;padding:17px 10px;display:flex;position:relative}.workflow li:not(:last-child):after{content:"→";color:#8a9c7e;font-size:13px;position:absolute;top:42%;right:-15px}.workflow small{color:#8a987d;font-size:9px}.workflow strong{font-size:12px}.workflow span{color:#7c8970;font-size:9px}.workflow .ai-step{background:#e9f0e1;border-color:#adbf9d}figcaption,.caption{color:#7b8771;margin-top:15px;line-height:1.9;font-size:10px!important}.text-link{color:var(--green);font-size:12px;font-weight:500}.sample-notice{background:#f0eee4;border-radius:4px;padding:14px 17px;font-size:11px!important}.sample-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.sample-grid>div{border:1px solid var(--line);background:#fffef9;border-radius:6px;overflow:hidden}.sample-header{border-bottom:1px solid var(--line);background:#f4f5ee;padding:15px;font-size:11px}.sample-header span{color:var(--green);letter-spacing:.1em;margin-bottom:6px;font-size:9px;font-weight:700;display:block}pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:20px;font:12px/2 Noto Sans JP,sans-serif}.prompt-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.copy-button{color:var(--green);white-space:nowrap;background:#f8faf3;border:1px solid #c7d4bc;border-radius:5px;padding:9px 13px;font-size:10px}.prompt{color:#e7efdf;background:#243e31;border-radius:8px;padding:27px;font-size:12px}.checklist{gap:17px;padding:0;font-size:13px;line-height:1.9;list-style:none;display:grid}.checklist li{padding-left:27px;position:relative}.checklist li:before{content:"✓";color:var(--green);position:absolute;left:0}.related{padding-top:55px}.related h2{margin-top:15px}.related .case-grid{grid-template-columns:repeat(3,1fr)}.guide{padding-top:65px;padding-bottom:90px}.guide h1{margin:24px 0;font-size:44px;line-height:1.6}.guide .lead{color:#6b7c61;font-size:17px;line-height:2}.guide>section{margin-top:52px}.guide>section>p{font-size:14px;line-height:2}.guide.narrow{max-width:900px}.learning-steps{gap:20px;margin:0;padding:0;list-style:none;display:flex}.learning-steps li{background:#f0f3e9;border-radius:8px;flex:1;padding:27px}.learning-steps b{color:#91a07f;font-family:Georgia,serif;font-size:28px}.learning-steps h3{margin:15px 0;font-size:17px;line-height:1.8}.learning-steps p{color:#718064;margin:0;font-size:12px}.guide .case-grid{grid-template-columns:repeat(3,1fr)}.level-guide{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.level-guide>div{border:1px solid var(--line);border-radius:6px;padding:20px}.level-guide strong{font-size:13px}.level-guide p{margin:12px 0 0;font-size:12px}.guide>.button{margin-top:30px}.definitions{grid-template-columns:70px 1fr;gap:24px 20px;font-size:13px;line-height:2;display:grid}.definitions dt{color:var(--green);font-weight:700}.definitions dd{margin:0}.mobile-only{display:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{background:var(--green);color:#fff;z-index:100;padding:15px;position:fixed;top:-100px}.skip:focus{top:5px}#empty{text-align:center;background:#f1f4eb;border-radius:8px;padding:50px 15px}#empty h3{font-size:17px}#empty p{font-size:12px}@media (width>=1441px){.hero h1{font-size:53px}}@media (width<=1050px){.hero{gap:25px;padding-top:50px}.hero h1{font-size:36px}.hero-visual{padding:18px}.orbit{height:330px}.orbit-item{padding:9px 8px;font-size:9px}.center-node{width:135px;height:135px}.hero .text-link{margin:18px 0 0;display:block}.hero-stats{gap:18px}.hero-stats .stat-text{padding-left:15px}.explore-layout{grid-template-columns:185px 1fr;gap:25px}.case-card{padding:16px}.card-category{display:none}.mini-flow{gap:5px}.mini-flow span{padding:7px 5px;font-size:8px}.section-heading>p{display:none}.selects{gap:9px}.start-banner{margin-left:4.5%;margin-right:4.5%}.principle-strip{gap:15px}.principle-strip a{margin-left:0}.detail-layout{grid-template-columns:minmax(0,1fr) 150px;gap:25px}.workflow{gap:12px}.workflow li:not(:last-child):after{right:-12px}.workflow li{padding:15px 7px}.related .case-grid,.guide .case-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){header{align-items:center;padding:18px 5%}.brand{gap:8px;font-size:8px}.brand strong{font-size:12px}.brand-mark{width:36px;height:36px;font-size:26px;line-height:35px}header nav{gap:15px;font-size:10px}header nav a:last-child{display:none}.hero{grid-template-columns:1fr;gap:34px;padding:43px 6% 37px}.hero h1{margin:20px 0;font-size:clamp(30px,7vw,47px)}.hero-lead{margin-bottom:24px;font-size:13px}.hero .text-link{margin-left:18px;font-size:11px;display:inline-block}.hero-stats{gap:25px;margin-top:28px}.hero-stats strong{font-size:32px}.hero-visual{width:100%;max-width:450px;margin:auto;padding:18px 22px;transform:none}.orbit{height:330px}.orbit-item{padding:10px;font-size:11px}.orbit-1{right:0}.orbit-5{left:0}.orbit-6{left:5px}.orbit-0{left:34%}.orbit-ring{inset:42px 35px}.principle-strip{padding:22px 6%;display:block}.principle-strip .eyebrow{font-size:8px}.principle-strip p{margin:10px 0;font-size:12px}.principle-strip a{font-size:10px}.section{padding:44px 5%}.section-heading{margin-bottom:23px}.section-heading h2{margin-top:12px;font-size:22px}.explore-layout{display:block}.filters{position:static}.filter-heading{padding-top:0}.category-filters{flex-flow:wrap;gap:7px;margin-bottom:23px}.category-button{border:1px solid #dfe5d6;gap:10px;padding:9px 10px;font-size:10px}.category-button i{width:15px;font-size:13px}.category-button.active{border-color:#a8bea0}.filter-note{display:none}.selects{gap:10px 15px}.selects label{flex:1;justify-content:space-between;min-width:130px}.selects select{width:100%;max-width:130px}.result-line>span{display:none}.case-grid{gap:12px}.case-card{padding:14px}.card-top .eyebrow{font-size:9px}.status{padding:3px 5px;font-size:8px}.mini-flow{gap:3px;margin:16px 0;padding:13px 3px}.mini-flow span{padding:6px 3px;font-size:7px}.mini-flow i{font-size:9px}.case-card h3{font-size:14px;line-height:1.8}.case-card>p{font-size:10px}.card-bottom>span>span{margin:5px 0 0;font-size:8px;display:block}.start-banner{margin-top:15px;margin-bottom:40px;padding:30px;display:block}.start-banner h2{font-size:25px}.start-banner .button{margin-top:24px}footer{padding:32px 6%;display:block}.footer-links{justify-content:start;gap:15px;margin-top:25px}.footer-links small{text-align:left}.page-intro{padding-bottom:0}.page-intro h1{font-size:28px}.page-intro p{font-size:12px}.detail{padding-top:25px}.detail-heading{padding:30px 0}.detail-heading h1{margin-top:17px;font-size:29px}.detail-heading>p{font-size:13px}.detail-layout{flex-direction:column;gap:0;display:flex}.toc{border-bottom:1px solid var(--line);flex-flow:wrap;order:-1;gap:15px;padding:22px 0;display:flex;position:static}.toc>.eyebrow,.toc-back{display:none}.toc a{font-size:10px}.detail-body>section{padding:33px 0}.detail-body h2{font-size:22px}.roles{gap:12px}.roles>div{padding:18px}.roles h3{font-size:15px}.roles p{font-size:11px}.workflow{grid-template-columns:1fr 1fr;gap:16px}.workflow li{padding:16px}.workflow li:nth-child(2):after{display:none}.workflow strong{font-size:13px}.workflow span{font-size:10px}.sample-grid{grid-template-columns:1fr}.prompt-title{display:block}.copy-button{margin-bottom:18px;font-size:12px}.prompt{padding:20px;font-size:12px}.related .case-grid,.guide .case-grid{grid-template-columns:1fr}.related .card-category,.guide .card-category{display:inline}.related .mini-flow span,.guide .mini-flow span{padding:10px 15px;font-size:11px}.guide h1{font-size:33px}.guide .lead{font-size:14px}.learning-steps,.level-guide{flex-direction:column;display:flex}.learning-steps li{gap:20px;padding:22px;display:flex}.learning-steps h3{margin:0 0 10px}.guide h2{font-size:23px}.mobile-only{display:block}.definitions{grid-template-columns:1fr;gap:8px}.definitions dd{margin-bottom:18px}.guide>section{margin-top:37px}}@media (width<=390px){.case-grid{grid-template-columns:1fr}.card-category{display:inline}.case-card h3{font-size:17px}.case-card>p{font-size:12px}.mini-flow span{padding:8px 12px;font-size:11px}.mini-flow{gap:10px}.card-bottom>span>span{margin-left:8px;display:inline}.hero h1{font-size:29px}.hero .text-link{margin:15px 0 0;display:block}.hero-stats{gap:17px}.hero-stats .stat-text{font-size:9px}.orbit-item{padding:8px;font-size:9px}.orbit-item>span{width:23px;height:23px;font-size:17px;line-height:23px}.center-node{width:125px;height:125px}.center-node strong{font-size:16px}.roles{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,footer,.toc,.copy-button{display:none}.section{padding:0}.detail-layout{display:block}.detail-body>section{break-inside:avoid}.prompt{color:#000;background:#fff;border:1px solid #aaa}.related{display:none}}
