:root{--ink:#433934;--muted:#827871;--cream:#fffaf5;--white:#fff;--peach:#fff0e7;--rose:#ffe1e2;--pink:#c65770;--pinkdark:#a83f57;--line:#eaded5;--mint:#e2f0e8;--yellow:#fff0bc;--focus:#2159a1;--radius:24px;--shadow:0 17px 50px rgba(110,70,50,.07)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'BIZ UDPGothic','Yu Gothic','Hiragino Kaku Gothic ProN','Noto Sans CJK JP',sans-serif;font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}a:hover{color:var(--pinkdark)}button{cursor:pointer}img{max-width:100%;height:auto}::selection{background:#ffd4dc;color:var(--ink)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.container{width:min(1140px,calc(100% - 54px));margin-inline:auto}.small{font-size:.79rem;color:var(--muted)}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--pinkdark);font-weight:800;font-size:.85rem;letter-spacing:.045em}.eyebrow::before{content:'';display:inline-block;background:#eda3ad;width:19px;height:3px;border-radius:4px}.muted{color:var(--muted)}.tag{font-size:.74rem;display:inline-flex;align-items:center;padding:4px 12px;border-radius:50px;background:#fff2f0;color:#9f5262;white-space:nowrap;font-weight:700}.tag.green{background:#e2f0e8;color:#526e62}.tag.yellow{background:#fff1cd;color:#866827}.tag.blue{background:#e7edf8;color:#4a6993}.site-header{height:90px;position:sticky;top:0;z-index:100;background:rgba(255,250,245,.91);backdrop-filter:blur(16px);border-bottom:1px solid rgba(233,218,207,.78)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-icon{width:58px;height:52px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #f3e6df;border-radius:45% 45% 43% 43%;overflow:hidden}.brand-icon img{display:block;width:53px;max-width:none;transform:translateY(2px)}.brand-name{display:block;font-weight:900;letter-spacing:-.035em;line-height:1.3;font-size:1.16rem}.brand-en{display:block;color:#9f8f82;font-size:.56rem;letter-spacing:.13em;font-weight:700}.nav{display:flex;align-items:center;gap:25px}.nav a{font-size:.85rem;font-weight:750;padding:7px 0;white-space:nowrap;transition:color .18s}.nav a.active{color:var(--pinkdark)}.nav a.active::after{content:'';display:block;height:3px;background:#efabb3;border-radius:3px;margin-top:-2px}.nav a.cta-nav{padding:10px 21px;background:#c65770;color:#fff;border-radius:30px}.nav a.cta-nav:hover{background:#a83f57;color:#fff}.menu-toggle{display:none;border:1px solid var(--line);border-radius:12px;padding:8px 11px;background:#fff;color:var(--ink);font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:none;background:var(--pink);color:#fff;border-radius:60px;padding:13px 25px;font-size:.89rem;font-weight:800;box-shadow:0 7px 0 rgba(180,78,102,.10);transition:transform .17s,background .17s,box-shadow .17s;min-height:48px}.btn:hover{background:var(--pinkdark);transform:translateY(-2px);box-shadow:0 9px 0 rgba(180,78,102,.1);color:#fff}.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid #e7d8cc;box-shadow:none}.btn.ghost:hover{background:#fff5f0}.btn.disabled,.btn:disabled{background:#e9d8d6;color:#927e7a;box-shadow:none;transform:none;cursor:not-allowed}.arrow{font-size:1.12rem;line-height:1}.hero{position:relative;padding:87px 0 96px;overflow:hidden;background:radial-gradient(circle at 82% 47%,#fff0dc 0 18%,transparent 38%),linear-gradient(165deg,#fffaf5 42%,#fff4ec 100%)}.hero::after{content:'';position:absolute;left:7%;bottom:1%;width:74px;height:74px;border:2px dashed rgba(227,172,166,.28);border-radius:50%;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:58px}.hero-copy{position:relative;z-index:2}.hello{display:inline-flex;align-items:center;gap:7px;border-radius:60px;padding:7px 14px;background:#fff;border:1px solid #f1dbd4;font-size:.82rem;font-weight:700;color:#986271}.hello i{display:inline-block;width:7px;height:7px;background:#e997a6;border-radius:50%;box-shadow:0 0 0 4px #ffe4e9}.hero h1{font-size:clamp(2.5rem,4.2vw,4.3rem);letter-spacing:-.075em;line-height:1.48;margin:20px 0 19px;font-weight:900}.hero h1 em{font-style:normal;color:var(--pinkdark);background:linear-gradient(transparent 75%,#ffe5a5 75%)}.hero-lead{max-width:490px;line-height:2.25;color:#685c55;font-size:.99rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-note{margin-top:25px;font-size:.78rem;color:#98877e;display:flex;gap:7px;align-items:center}.hero-scene{position:relative;min-height:425px;display:flex;align-items:center;justify-content:center}.mascot-plate{position:absolute;width:420px;height:375px;max-width:94%;border-radius:55% 48% 50% 53%;background:#ffe3da;transform:rotate(-5deg);box-shadow:inset 0 0 0 15px rgba(255,255,255,.28)}.mascot-plate:before{content:'';position:absolute;inset:20px;border:2px dashed rgba(197,130,130,.32);border-radius:48% 55% 47% 52%}.mascot-main{position:relative;width:min(100%,465px);filter:drop-shadow(0 19px 16px rgba(106,64,44,.10));animation:float 4.8s ease-in-out infinite}.speech{position:absolute;z-index:3;top:18px;right:4px;padding:11px 19px;background:#fff;border:2px solid #efc8cb;border-radius:22px 22px 22px 4px;transform:rotate(5deg);font-size:.92rem;font-weight:800;color:#966473;box-shadow:var(--shadow)}.star{position:absolute;font-size:2.4rem;color:#e7ab92;line-height:1}.star.s1{left:2%;top:25%;transform:rotate(15deg)}.star.s2{right:10%;bottom:12%;color:#e5b357;font-size:1.8rem}.doodle{position:absolute;left:3%;bottom:18%;font-size:1.35rem;color:#de9b92;transform:rotate(-10deg)}.section{padding:94px 0}.section.white{background:white}.section.peach{background:#fff2e9}.section-header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-title{font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:900;letter-spacing:-.06em;line-height:1.48;margin:8px 0 5px}.section-desc{font-size:.92rem;color:var(--muted);max-width:710px}.text-link{font-size:.84rem;font-weight:800;color:var(--pinkdark);border-bottom:1px solid #dfa7a9;padding-bottom:5px;white-space:nowrap}.features{display:grid;grid-template-columns:1.08fr 1fr 1fr;gap:18px}.feature{border-radius:26px;background:#fff;padding:27px;position:relative;min-height:225px;border:1px solid #f1e8df;transition:transform .16s,box-shadow .16s}.feature:hover,.topic-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.feature .number{font-size:.8rem;color:#bd928d;font-weight:800}.feature h3{font-size:1.21rem;font-weight:900;letter-spacing:-.055em;margin:13px 0 5px}.feature p{font-size:.84rem;color:var(--muted);margin:0;line-height:1.9}.feature .feature-ico{position:absolute;right:24px;top:24px;width:48px;height:48px;background:#ffe8dd;border-radius:17px;display:grid;place-items:center;font-size:1.5rem;color:#b45c68}.feature:nth-child(2) .feature-ico{background:#fff0c5;color:#987329}.feature:nth-child(3) .feature-ico{background:#e7f0e9;color:#477e63}.mini-arrow{display:inline-grid;place-items:center;width:29px;height:29px;border:1px solid #e8d8d2;border-radius:50%;margin-top:18px;font-size:1.12rem;color:var(--pinkdark)}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.topic-card{background:#fff;position:relative;border:1px solid #efe4dc;border-radius:25px;overflow:hidden;display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s}.topic-card-top{height:142px;padding:25px;display:flex;align-items:center;justify-content:space-between}.topic-card-top.industry{background:#fff0df}.topic-card-top.regional{background:#e6f0e9}.topic-card-top.digital{background:#e8edf8}.topic-card-top.energy{background:#fce8e8}.topic-art{width:110px;height:90px;display:grid;place-items:center;background:rgba(255,255,255,.5);border:1.5px dashed rgba(112,92,90,.21);border-radius:22px;transform:rotate(-7deg)}.topic-art svg{width:65px;height:65px;stroke-width:1.6}.topic-card-body{padding:23px 26px 27px;flex:1}.topic-card-body h3{font-size:1.12rem;letter-spacing:-.04em;margin:0 0 9px;font-weight:900}.topic-card-body p{font-size:.87rem;margin:0;color:var(--muted);line-height:1.9}.topic-card-foot{border-top:1px solid #f2e9e3;margin-top:22px;padding-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:.8rem;font-weight:800;color:var(--pinkdark)}.game-panel{background:#fff;border:1px solid #efded3;border-radius:35px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;min-height:422px;box-shadow:0 13px 54px rgba(111,71,49,.05)}.game-content{padding:53px 49px;align-self:center}.game-content h3{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.07em;line-height:1.4;margin:12px 0 20px}.game-content p{font-size:.92rem;color:var(--muted);line-height:2.1}.game-art{position:relative;background:linear-gradient(165deg,#e4f2e8 0%,#fff6e2 68%);display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:420px}.sun{position:absolute;top:32px;right:53px;border-radius:50%;background:#ffdd8e;width:80px;height:80px}.hills{position:absolute;bottom:-100px;width:120%;height:270px;background:#c7dfc9;border-radius:50% 55% 0 0;left:-10%;transform:rotate(-3deg)}.hills.two{background:#ddecce;left:27%;bottom:-135px;transform:rotate(14deg)}.city{position:relative;z-index:2;display:flex;align-items:flex-end;gap:8px;padding-bottom:22px;margin-top:90px}.building{width:59px;height:140px;background:#eea896;border:3px solid #9c756c;border-bottom-width:7px;border-radius:9px 9px 2px 2px;box-shadow:8px 8px 0 rgba(82,68,60,.08);position:relative}.building:before{content:'';position:absolute;inset:18px 10px 18px;background:repeating-linear-gradient(to bottom,transparent 0 12px,#fff7e0 12px 25px,transparent 25px 34px);opacity:.9}.building:nth-child(2){height:185px;width:82px;background:#f0c779}.building:nth-child(3){height:120px;background:#a8c7d4}.building:nth-child(4){height:170px;width:68px;background:#dcb1c7}.cityhall-roof{width:103px;height:0;border-left:52px solid transparent;border-right:52px solid transparent;border-bottom:32px solid #b68077;position:absolute;top:-29px;left:-13px}.city-tree{position:absolute;width:54px;height:54px;border-radius:50%;background:#8ebc9e;border:3px solid #5d967d;bottom:30px;left:35px;z-index:4}.city-tree:after{content:'';position:absolute;width:9px;height:37px;background:#7d6653;bottom:-31px;left:20px}.city-tree.two{left:auto;right:22px;bottom:44px;width:39px;height:39px}.city-tree.two:after{left:13px}.game-cat{position:absolute;width:153px;bottom:13px;right:15px;z-index:5;transform:rotate(8deg);filter:drop-shadow(0 6px 7px rgba(0,0,0,.1))}.game-label{position:absolute;top:27px;left:31px;z-index:3;border-radius:12px;background:#fff;padding:8px 14px;font-weight:800;font-size:.75rem;color:#66836d;border:1px solid #c9e1cc}.notes{display:grid;grid-template-columns:1fr 1fr;gap:28px}.note{padding:23px 0;border-top:1px solid #e6d9ce}.note-time{font-size:.76rem;color:var(--muted);font-weight:700}.note h3{font-size:1rem;line-height:1.65;margin:8px 0;font-weight:850}.note p{font-size:.83rem;color:var(--muted);line-height:1.9;margin:0}.about-strip{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:33px 46px;border-radius:28px;background:#fbe3e1;border:1px solid #f6d8d4}.about-strip h3{font-size:1.55rem;letter-spacing:-.06em;margin:0 0 5px}.about-strip p{font-size:.86rem;margin:0;color:#805f5e}.about-strip img{width:145px;transform:rotate(-7deg);filter:drop-shadow(0 8px 5px rgba(145,77,68,.11))}.site-footer{padding:56px 0 25px;background:#f8eee6;border-top:1px solid #ecded4}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-bottom:40px}.footer-grid p{font-size:.8rem;color:var(--muted);max-width:340px;line-height:2}.footer-title{font-size:.78rem;color:#947e71;font-weight:900;margin-bottom:14px}.footer-links{display:flex;flex-direction:column;gap:11px;font-size:.83rem;font-weight:700}.copyright{padding-top:22px;border-top:1px solid #e9dbd1;font-size:.72rem;color:#948178;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}.mascot-helper{position:fixed;z-index:90;bottom:22px;right:23px;display:flex;flex-direction:column;align-items:end;gap:1px}.helper-tip{max-width:230px;background:#fff;border:1.5px solid #f1c8ce;padding:9px 13px;border-radius:18px 18px 4px 18px;font-size:.76rem;color:#97616d;box-shadow:var(--shadow);text-align:center}.helper-btn{border:0;background:transparent;padding:0;line-height:0;filter:drop-shadow(0 7px 5px rgba(100,66,56,.12));transition:transform .2s}.helper-btn:hover{transform:rotate(7deg) translateY(-5px)}.helper-btn img{width:104px}.page-hero{padding:80px 0 75px;background:radial-gradient(circle at 82% 17%,#ffeae7,transparent 25%),linear-gradient(140deg,#fff9f2,#fff3e9);border-bottom:1px solid #f4e1d5}.page-hero h1{font-size:clamp(2.3rem,4vw,3.45rem);font-weight:900;letter-spacing:-.075em;line-height:1.5;margin:12px 0 15px}.page-hero p{max-width:735px;color:#70645d;line-height:2.15;margin:0}.breadcrumb{display:flex;gap:8px;align-items:center;color:#998b80;font-size:.75rem;margin-bottom:19px}.breadcrumb a{text-decoration:underline;text-decoration-color:#d5b7af}.filter-row{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:27px}.filter-button{border:1px solid #e9d8d0;background:white;padding:9px 17px;border-radius:40px;font-size:.83rem;font-weight:800;color:#796761}.filter-button[aria-pressed=true]{background:#c65770;border-color:#c65770;color:#fff}.topic-card[hidden]{display:none!important}.research-footnote{font-size:.81rem;line-height:2.1;color:#86786f;margin-top:32px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.principle{padding:25px 0;border-top:3px solid #eec6c4}.principle h3{font-size:1.07rem;font-weight:850;margin:9px 0 7px}.principle p{font-size:.85rem;color:var(--muted);margin:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.detail-grid h3{margin-top:0}.check-list{margin:0;padding-left:1.3em;font-size:.89rem;color:#655a54;line-height:2.3}.section-intro{max-width:760px;font-size:.92rem;color:#766963;line-height:2.05}.progress{display:flex;align-items:center;gap:14px;margin:15px 0}.progress-dot{width:14px;height:14px;border-radius:50%;background:#e0b5b7;border:4px solid #ffede9}.progress-text{font-size:.88rem}.faq-item{border-bottom:1px solid #eadbd1}.faq-item button{background:none;border:0;width:100%;text-align:left;color:var(--ink);padding:21px 0;font-size:.96rem;font-weight:800;display:flex;justify-content:space-between;gap:15px}.faq-item button span:last-child{color:var(--pinkdark)}.faq-answer{display:none;padding:0 0 20px;color:var(--muted);font-size:.86rem;line-height:2}.faq-item.open .faq-answer{display:block}.faq-item.open button span:last-child{transform:rotate(45deg)}.bio-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:center}.bio-layout h2{font-size:clamp(1.8rem,2.7vw,2.4rem);line-height:1.55;letter-spacing:-.055em}.bio-layout p{color:#6f625a;line-height:2.2}.bio-cat{background:#ffe9e1;padding:35px 28px 0;border-radius:48% 48% 28px 28px;align-self:stretch;display:flex;align-items:end;justify-content:center;min-height:260px}.bio-cat img{width:98%}.contact-panel{background:#fff;border:1px solid #eaddd3;border-radius:28px;padding:35px;max-width:760px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.field label{font-weight:800;font-size:.84rem}.field input,.field textarea{width:100%;padding:12px 15px;border:1px solid #e6d8cf;border-radius:12px;background:#fffefa;color:var(--ink)}.field textarea{min-height:150px;resize:vertical}.field small{font-size:.73rem;color:#92847a}.notice{background:#fff2d9;border:1px solid #f3e2ba;padding:15px 17px;border-radius:13px;font-size:.82rem;color:#775f42;line-height:1.9}.copy-status{margin-left:12px;font-size:.8rem;color:#6a7f65}.ads-note{display:flex;flex-wrap:wrap;align-items:center;gap:12px;border-top:1px solid #ebdfd6;padding:20px 0;color:#95867b;font-size:.73rem}.ads-note strong{font-size:.76rem;color:#877264}.lead-panel{padding:24px 26px;background:#fff;border:1px solid #eee2d9;border-radius:20px}.lead-panel p{margin:0}.team-state{border-left:4px solid #e9adad;padding:5px 0 5px 18px;margin-top:22px;color:#78675f;font-size:.87rem}.small-kicker{font-size:.76rem;font-weight:900;color:var(--pinkdark);letter-spacing:.05em}.related-links{display:flex;gap:10px;flex-wrap:wrap}.related-links a{background:#fff;border:1px solid #ecdcd5;border-radius:16px;padding:10px 15px;font-size:.83rem;font-weight:750}.screen-reader{position:absolute;left:-9999px}.only-mobile{display:none}@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(1deg)}}@media (max-width:1000px){.nav{gap:15px}.hero-grid{gap:26px}.mascot-plate{width:350px;height:315px}.hero-scene{min-height:345px}.hero h1{font-size:3.3rem}.features{grid-template-columns:repeat(3,1fr)}.feature{padding:21px}.game-content{padding:35px}}@media (max-width:760px){.container{width:min(100% - 36px,540px)}.site-header{height:73px}.brand-icon{width:46px;height:43px}.brand-icon img{width:45px}.brand-name{font-size:1rem}.brand-en{font-size:.49rem}.menu-toggle{display:block}.nav{position:absolute;top:73px;left:0;width:100%;background:#fffaf5;box-shadow:0 18px 30px rgba(80,55,45,.09);padding:16px 22px 24px;display:none;flex-direction:column;align-items:stretch;gap:10px;border-top:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:9px 6px}.nav a.active:after{width:33px}.nav a.cta-nav{text-align:center}.hero{padding:47px 0 69px}.hero-grid{display:flex;flex-direction:column;gap:12px}.hero h1{font-size:clamp(2.5rem,8vw,3.5rem);margin:17px 0}.hero-lead{font-size:.91rem;line-height:2.07}.hero-scene{order:-1;min-height:270px;width:100%;max-width:420px}.mascot-plate{width:315px;height:252px}.mascot-main{width:335px}.speech{top:3px;right:0;font-size:.75rem;padding:7px 12px}.star.s1{left:6%;top:15%}.hero-actions{margin-top:23px}.section{padding:65px 0}.section-header{align-items:start;flex-direction:column;margin-bottom:22px;gap:12px}.section-title{font-size:1.8rem}.features,.topic-grid,.notes,.principles,.detail-grid,.bio-layout{grid-template-columns:1fr;gap:13px}.feature{min-height:160px}.feature h3{margin-top:8px}.game-panel{grid-template-columns:1fr;border-radius:24px}.game-art{min-height:290px;order:-1}.game-content{padding:28px 25px 35px}.game-content h3{font-size:2rem}.city{transform:scale(.76);margin-top:60px}.game-cat{width:119px}.about-strip{padding:25px;gap:7px}.about-strip img{width:80px}.about-strip h3{font-size:1.2rem}.about-strip p{font-size:.79rem}.footer-grid{grid-template-columns:1fr 1fr;gap:21px}.footer-grid>div:first-child{grid-column:1/-1}.mascot-helper{right:7px;bottom:7px}.helper-btn img{width:79px}.helper-tip{max-width:174px;font-size:.7rem;padding:6px 9px}.page-hero{padding:47px 0 55px}.page-hero h1{font-size:2.3rem}.bio-cat{max-height:315px}.contact-panel{padding:22px}.only-mobile{display:inline}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.feature-ico svg{width:30px;height:30px;stroke-width:2}

@media(max-width:760px){.mascot-helper .helper-tip{display:none}.mascot-helper .helper-tip.visible{display:block}}
