:root{--bg:#fbf7ef;--bg-warm:#f4edde;--ink:#2d2a26;--ink-soft:#57524a;--ink-mute:#8a847a;--line:#e6dfd0;--marker:#ffe066;--marker-soft:#fff3b0;--accent:#d97757;--pink:#f4b8b0;--yellow:#f5d36a;--green:#a8c89a;--blue:#8ab8c8;--orange:#e9a878;--shadow:0 1px 2px #2d2a260d, 0 6px 20px #2d2a2612}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);letter-spacing:.03em;font-family:Zen Kaku Gothic New,sans-serif;font-size:16px;line-height:1.9}a{color:inherit}.serif{font-family:Shippori Mincho,serif}.mk{background:linear-gradient(transparent 62%, var(--marker) 62%, var(--marker) 92%, transparent 92%);padding:0 2px}.inner{max-width:1000px;margin:0 auto;padding:0 24px}.section-label{letter-spacing:.3em;color:var(--ink-mute);margin-bottom:14px;font-family:Klee One,sans-serif;font-size:13px}.section-title{letter-spacing:.06em;font-family:Shippori Mincho,serif;font-size:clamp(24px,4vw,32px);font-weight:600;line-height:1.6}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(18px)}.reveal.on{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.hero{padding:72px 24px 80px;overflow:hidden}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;max-width:1000px;margin:0 auto;display:grid}.bubbles{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:34px;display:flex}.bubble{border:1.5px solid var(--ink);box-shadow:var(--shadow);background:#fff;border-radius:18px 18px 18px 4px;padding:9px 18px;font-family:Klee One,sans-serif;font-size:15px}.bubble:first-child{transform:rotate(-1.2deg)}.bubble:nth-child(2){margin-left:22px;transform:rotate(.8deg)}.bubble:nth-child(3){margin-left:8px;transform:rotate(-.6deg)}.hero-title{letter-spacing:.05em;margin-bottom:26px;font-family:Shippori Mincho,serif;font-size:clamp(30px,4.6vw,44px);font-weight:600;line-height:1.55}.hero-sub{letter-spacing:.04em;margin-bottom:20px;font-family:Shippori Mincho,serif;font-size:clamp(17px,2.2vw,20px);line-height:1.9}.hero-lead{color:var(--ink-soft);max-width:34em;margin-bottom:34px;font-size:15.5px}.hero-ctas{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn-main{background:var(--ink);color:var(--bg);letter-spacing:.08em;box-shadow:var(--shadow);border-radius:999px;padding:16px 36px;font-size:15px;text-decoration:none;transition:all .25s;display:inline-block}.btn-main:hover{background:var(--accent);transform:translateY(-2px)}.btn-sub{letter-spacing:.05em;border:1.5px solid var(--ink);background:0 0;border-radius:999px;padding:15px 28px;font-size:14px;text-decoration:none;transition:all .25s;display:inline-block}.btn-sub:hover{background:var(--marker)}.hero-visual{position:relative}.hero-photo{aspect-ratio:3/4;background:linear-gradient(150deg, #f6ead3, var(--green) 140%);color:var(--ink-mute);text-align:center;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1.8;display:flex;overflow:hidden}.hero-photo img{object-fit:cover;width:100%;height:100%}.hero-tag{background:var(--marker);box-shadow:var(--shadow);border-radius:999px;padding:7px 20px;font-family:Klee One,sans-serif;font-size:14px;position:absolute;bottom:-14px;left:8px;transform:rotate(-2deg)}@media (width<=860px){.hero{padding:44px 24px 70px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-visual{max-width:320px;margin:0 auto}}.ph{object-fit:cover;width:100%;height:100%;display:block}.photo-card{box-shadow:var(--shadow);background:var(--bg-warm);border-radius:18px;overflow:hidden}.news-sec{--navy:#435c94;border-top:1px solid var(--line);text-align:center;background:#fff;padding:48px 24px 63px;scroll-margin-top:40px}.news-wrap{max-width:908px;margin:0 auto}.news-sec .section-title{margin-bottom:2px}.news-list{text-align:left;min-height:288px;list-style:none}.news-list li{border-bottom:1px solid var(--ink)}.news-list a{grid-template-columns:94px 1fr 28px;align-items:center;gap:0 16px;min-height:95px;padding:27px 0 14px;font-weight:500;text-decoration:none;display:grid}.news-list time{letter-spacing:0;font-size:15px}.news-title{font-size:16px;line-height:1.7}.news-arrow{background:var(--navy);border-radius:50%;width:28px;height:28px;transition:transform .25s;position:relative}.news-arrow:before{content:"";border-top:1px solid #fff;border-right:1px solid #fff;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-70%,-50%)rotate(45deg)}.news-list a:hover .news-title{color:var(--navy)}.news-list a:hover .news-arrow{transform:translate(4px)}.news-btn{letter-spacing:0;border:1px solid var(--navy);width:fit-content;color:var(--navy);border-radius:999px;margin:56px auto 0;padding:15px 35px;font-size:15px;font-weight:500;line-height:1;text-decoration:none;transition:all .25s;display:block}.news-btn:hover{background:var(--navy);color:#fff}@media (width<=600px){.news-sec{padding:44px 24px 52px}.news-list{min-height:0}.news-list a{grid-template-columns:1fr 28px;padding:16px 0}.news-list time{grid-column:1;font-size:13.5px}.news-title{grid-area:2/1;font-size:15px}.news-arrow{grid-area:1/2/3}.news-btn{margin-top:40px}}.about-strip{background:var(--bg-warm);border-block:1px solid var(--line);padding:56px 24px}.about-strip .inner{grid-template-columns:1.1fr .9fr;align-items:center;gap:44px;max-width:1000px;display:grid}.about-photo{aspect-ratio:4/3;box-shadow:var(--shadow);border-radius:18px;overflow:hidden;transform:rotate(1.2deg)}@media (width<=860px){.about-strip .inner{grid-template-columns:1fr}.about-photo{max-width:520px;margin:0 auto}}.about-strip p{color:var(--ink-soft);font-size:15.5px}.about-strip strong{color:var(--ink)}.greeting{padding:96px 24px}.greeting-quote{text-align:center;letter-spacing:.08em;margin:24px 0 56px;font-family:Shippori Mincho,serif;font-size:clamp(28px,4.4vw,40px);font-weight:600;line-height:1.7}.greeting-quote .em{color:var(--accent)}.greeting-blocks{gap:44px;max-width:760px;margin:0 auto;display:grid}.gblock h3{letter-spacing:.04em;margin-bottom:14px;padding-left:18px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600;line-height:1.6;position:relative}.gblock h3:before{content:"";background:var(--accent);border-radius:4px;width:6px;height:24px;position:absolute;top:8px;left:0}.gblock p{color:var(--ink-soft);margin-bottom:12px;font-size:15px;line-height:2.1}.gblock p strong{color:var(--ink);background:linear-gradient(transparent 65%, var(--marker-soft) 65%);padding:0 3px;font-weight:600}.greeting-sign{text-align:center;margin-top:56px}.greeting-sign .name{font-family:Shippori Mincho,serif;font-size:18px;font-weight:600}.greeting-sign .title{color:var(--ink-mute);letter-spacing:.1em;font-size:12px}.greeting-photos{grid-template-columns:1fr 1fr;gap:16px;max-width:760px;margin:0 auto 44px;display:grid}.greeting-photos .greeting-photo{margin:0}@media (width<=760px){.greeting-photos{grid-template-columns:1fr}}.greeting-photo{aspect-ratio:3/2;max-width:760px;box-shadow:var(--shadow);border-radius:22px;margin:0 auto 44px;position:relative;overflow:hidden}.greeting-photo .cap{background:#fbf7efeb;border-radius:999px;padding:6px 16px;font-family:Klee One,sans-serif;font-size:13px;position:absolute;bottom:14px;left:16px}.ibasho{background:var(--bg-warm);padding:96px 24px}.ibasho-grid{grid-template-columns:1fr 1fr;align-items:center;gap:48px;max-width:1000px;margin:0 auto;display:grid}.ibasho p{color:var(--ink-soft);margin-bottom:14px;font-size:15px}.ibasho-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:30px 32px}.ibasho-card h4{margin-bottom:10px;font-family:Shippori Mincho,serif;font-size:17px;font-weight:600}.ibasho-card li{color:var(--ink-soft);margin-bottom:4px;margin-left:1.2em;font-size:14px}.ibasho-photos{grid-template-columns:1.5fr 1fr 1fr;gap:18px;max-width:1000px;margin:0 auto 44px;display:grid}.ibasho-photos .photo-card{aspect-ratio:3/2}.ibasho-photos .photo-card:nth-child(n+2){aspect-ratio:auto}@media (width<=800px){.ibasho-grid{grid-template-columns:1fr}.ibasho-photos{grid-template-columns:1fr 1fr}.ibasho-photos .photo-card:first-child{grid-column:1/-1}.ibasho-photos .photo-card:nth-child(n+2){aspect-ratio:3/2}}.entrance{text-align:center;padding:100px 24px}.entrance-lead{max-width:36em;color:var(--ink-soft);margin:18px auto 44px;font-size:15.5px}.doors{text-align:left;grid-template-columns:repeat(3,1fr);gap:18px;max-width:960px;margin:0 auto 36px;display:grid}.door{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:26px 24px;position:relative;overflow:hidden}.door-more{border-bottom:2px solid var(--marker);margin-top:12px;padding-bottom:1px;font-size:13.5px;text-decoration:none;display:inline-block}.door-more:hover{color:var(--accent)}.door-photo{aspect-ratio:3/2;border-radius:12px;margin:10px 0 16px;overflow:hidden}.door:before{content:"";border-radius:0 0 7px 7px;height:7px;position:absolute;top:0;left:24px;right:24px}.door.d1:before{background:var(--yellow)}.door.d2:before{background:var(--green)}.door.d3:before{background:var(--blue)}.door .step{letter-spacing:.25em;color:var(--ink-mute);margin-top:6px;font-family:Klee One,sans-serif;font-size:12px}.door h3{margin:4px 0 8px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600}.door .prog{color:var(--ink-soft);font-size:14px}.door .prog b{color:var(--ink)}.mendan{background:var(--ink);max-width:960px;color:var(--bg);text-align:left;border-radius:18px;grid-template-columns:auto 1fr;align-items:center;gap:24px;margin:0 auto 40px;padding:26px 32px;display:grid}.mendan .k{letter-spacing:.25em;opacity:.7;font-family:Klee One,sans-serif;font-size:12px}.mendan .n{font-family:Shippori Mincho,serif;font-size:26px;font-weight:600}.mendan p{opacity:.9;font-size:14px}.tool-cta{background:var(--marker-soft);border:2px solid var(--ink);max-width:760px;box-shadow:var(--shadow);border-radius:22px;margin:90px auto 0;padding:38px 28px}.tool-ill{width:150px;height:150px;box-shadow:var(--shadow);background:#fff;border:4px solid #fff;border-radius:50%;margin:-70px auto 14px;overflow:hidden}.tool-ill img{object-fit:cover;width:100%;height:100%}.tool-k{letter-spacing:.2em;color:var(--ink-soft);margin-bottom:6px;font-family:Klee One,sans-serif;font-size:13px}.btn-big{padding:18px 44px;font-size:17px}.tool-alt{margin-top:16px!important;font-size:13.5px!important}.tool-alt a{border-bottom:2px solid var(--ink);padding-bottom:1px;text-decoration:none}.tool-cta .t{margin-bottom:8px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600}.tool-cta p{color:var(--ink-soft);margin-bottom:18px;font-size:14px}.next-path{max-width:760px;color:var(--ink-soft);margin:28px auto 0;font-size:13.5px}.next-path b{border:1px solid var(--line);color:var(--ink);white-space:nowrap;background:#fff;border-radius:6px;padding:2px 8px}.stepup-sec{text-align:center;padding:90px 24px 0}.stepup-wrap{max-width:980px;margin:0 auto}.stepup-lead{max-width:36em;color:var(--ink-soft);margin:12px auto 26px;font-size:14.5px}.stepup-svg,.stepup-svg-m{margin:44px auto 0}.stepup-svg{max-width:980px}.stepup-svg-m{max-width:400px;display:none}.stepup-wrap svg{width:100%;height:auto;font-family:Zen Kaku Gothic New,sans-serif;display:block}@media (width<=860px){.stepup-sec{padding-top:64px}.stepup-svg{display:none}.stepup-svg-m{margin-top:32px;display:block}.doors{grid-template-columns:1fr;max-width:440px}.mendan{grid-template-columns:1fr}}.digimono{border-block:1px solid var(--line);background:#fff;padding:100px 24px}.dm-head{text-align:center;max-width:760px;margin:0 auto}.dm-pos{background:var(--marker);border-radius:999px;margin:18px 0 14px;padding:6px 18px;font-family:Klee One,sans-serif;font-size:14px;display:inline-block;transform:rotate(-1deg)}.dm-lead{color:var(--ink-soft);font-size:15.5px}.dm-cards{grid-template-columns:repeat(3,1fr);gap:18px;max-width:960px;margin:44px auto 0;display:grid}.dm-card{background:var(--bg);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;overflow:hidden}.dm-card .ph-wrap{aspect-ratio:3/2}.dm-card .body{padding:20px 22px 24px}.dm-card h3{margin-bottom:6px;font-family:Shippori Mincho,serif;font-size:19px;font-weight:600}.dm-card p{color:var(--ink-soft);font-size:13.5px}.dm-gain{background:var(--bg-warm);text-align:center;border-radius:18px;max-width:760px;margin:40px auto 0;padding:26px 32px}.dm-gain .k{letter-spacing:.25em;color:var(--ink-mute);margin-bottom:8px;font-family:Klee One,sans-serif;font-size:12px}.dm-gain p{font-family:Shippori Mincho,serif;font-size:17px;line-height:1.9}.dm-history{grid-template-columns:1fr 1.3fr;align-items:center;gap:28px;max-width:960px;margin:40px auto 0;display:grid}.dm-messe{box-shadow:var(--shadow);aspect-ratio:4/3;border-radius:18px;position:relative;overflow:hidden}.dm-messe img{object-fit:cover;width:100%;height:100%;display:block}.dm-messe span{background:#fbf7efeb;border-radius:999px;padding:4px 12px;font-family:Klee One,sans-serif;font-size:12.5px;position:absolute;bottom:10px;left:12px}.dm-timeline{grid-template-columns:64px 1fr;row-gap:10px;font-size:14px;display:grid}@media (width<=860px){.dm-history{grid-template-columns:1fr}}.dm-timeline .y{color:var(--accent);font-family:Klee One,sans-serif;font-weight:600}.dm-timeline .t{color:var(--ink-soft);border-left:2px solid var(--marker);padding-left:14px}.dm-next{border:1px solid var(--line);max-width:900px;box-shadow:var(--shadow);background:#fff;border-radius:22px;grid-template-columns:260px 1fr;align-items:center;gap:32px;margin:44px auto 0;padding:26px;display:grid}.dm-next-ill{aspect-ratio:2/3;border-radius:16px;position:relative;overflow:hidden}.dm-next-ill img{object-fit:cover;width:100%;height:100%;display:block}.dm-next-ill span{background:#fbf7efeb;border-radius:999px;padding:4px 10px;font-family:Klee One,sans-serif;font-size:12px;position:absolute;bottom:10px;left:10px}.dm-next-body .k{letter-spacing:.2em;color:var(--accent);margin-bottom:8px;font-family:Klee One,sans-serif;font-size:12.5px}.dm-next-body h3{margin-bottom:12px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600;line-height:1.5}.dm-next-body p{color:var(--ink-soft);font-size:14.5px}.dm-next-body p.s{color:var(--ink-mute);margin-top:12px;font-size:13px}.dm-next-body b{color:var(--ink);background:linear-gradient(transparent 65%, var(--marker-soft) 65%);padding:0 3px;font-weight:600}@media (width<=760px){.dm-next{grid-template-columns:1fr;padding:18px}.dm-next-ill{max-width:280px;margin:0 auto}}.dm-note{text-align:center;max-width:760px;color:var(--ink-soft);margin:36px auto 0;font-size:14.5px}.dm-note b{color:var(--ink);background:linear-gradient(transparent 65%, var(--marker-soft) 65%);padding:0 3px;font-weight:600}@media (width<=860px){.dm-cards{grid-template-columns:1fr;max-width:440px}.dm-timeline{grid-template-columns:56px 1fr}}.numbers{text-align:center;padding:90px 24px 84px}.numbers-grid{grid-template-columns:repeat(3,1fr);gap:22px;max-width:940px;margin:44px auto 0;display:grid}.num-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:36px 20px 28px;position:relative}.num-card:before{content:"";border-radius:0 0 7px 7px;height:7px;position:absolute;top:0;left:26px;right:26px}.num-card:first-child:before{background:var(--pink)}.num-card:nth-child(2):before{background:var(--green)}.num-card:nth-child(3):before{background:var(--blue)}.num-value{font-family:Shippori Mincho,serif;font-size:52px;font-weight:600;line-height:1.15}.num-value small{font-size:22px}.num-name{margin-top:8px;font-size:15px;font-weight:700}.num-note{color:var(--ink-mute);margin-top:10px;font-size:12px;line-height:1.75}.numbers-foot{color:var(--ink-soft);margin-top:30px;font-size:15px}.numbers-foot strong{font-family:Shippori Mincho,serif;font-size:20px}@media (width<=760px){.numbers-grid{grid-template-columns:1fr;max-width:380px}}.voices{background:var(--bg-warm);padding:96px 24px}.voices-ill{max-width:760px;box-shadow:var(--shadow);aspect-ratio:16/8;border-radius:18px;margin:36px auto 0;position:relative;overflow:hidden}.voices-ill img{object-fit:cover;width:100%;height:100%;display:block}.voices-ill span{background:#fbf7efeb;border-radius:999px;padding:4px 12px;font-family:Klee One,sans-serif;font-size:12.5px;position:absolute;bottom:10px;left:12px}.voice-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:28px auto 0;display:grid}.voice-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:26px 24px;position:relative}.voice-card:before{content:"";border-radius:0 0 7px 7px;height:7px;position:absolute;top:0;left:24px;right:24px}.voice-card.v1:before{background:var(--pink)}.voice-card.v2:before{background:var(--yellow)}.voice-card.v3:before{background:var(--green)}.voice-head{align-items:center;gap:12px;margin-top:6px;display:flex}.voice-av{border-radius:50%;flex-shrink:0;width:52px;height:52px;box-shadow:0 2px 6px #00000014}.voice-who{color:var(--ink-mute);font-family:Klee One,sans-serif;font-size:12.5px}.voice-q{margin:8px 0 12px;font-family:Shippori Mincho,serif;font-size:17px;font-weight:600;line-height:1.7}.voice-card p{color:var(--ink-soft);font-size:14px}@media (width<=860px){.voice-grid{grid-template-columns:1fr;max-width:440px}}.faq{padding:96px 24px}.faq-list{gap:14px;max-width:800px;margin:40px auto 0;display:grid}.faq-item{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:22px 26px}.faq-q{align-items:flex-start;gap:14px;margin-bottom:10px;font-size:15.5px;font-weight:700;display:flex}.faq-a{color:var(--ink-soft);align-items:flex-start;gap:14px;font-size:14.5px;display:flex}.faq-mark{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-family:Shippori Mincho,serif;font-size:14px;font-weight:600;display:flex}.faq-q .faq-mark{border:2px solid var(--accent);color:var(--accent)}.faq-a .faq-mark{background:var(--accent);color:#fff}.family-msg{background:var(--bg-warm);text-align:center;border-radius:18px;max-width:760px;margin:40px auto 0;padding:30px 32px}.family-msg h3{margin-bottom:10px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600}.family-msg p{color:var(--ink-soft);font-size:15px}.flow-ill{max-width:760px;box-shadow:var(--shadow);aspect-ratio:16/8;border-radius:18px;margin:28px auto 0;position:relative;overflow:hidden}.flow-ill img{object-fit:cover;width:100%;height:100%;display:block}.flow-ill span{background:#fbf7efeb;border-radius:999px;padding:4px 12px;font-family:Klee One,sans-serif;font-size:12.5px;position:absolute;bottom:10px;left:12px}.hist-logo{color:var(--ink-mute);align-items:center;gap:14px;margin-top:14px;font-size:12.5px;display:flex}.hist-logo img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:12px;width:84px;height:84px;padding:8px}.hist-ill{aspect-ratio:3/2;object-fit:cover;width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:14px;margin-top:14px;display:block}.flow{text-align:left;max-width:760px;margin:28px auto 0;position:relative}.flow:before{content:"";border-left:2px dashed var(--ink-mute);opacity:.5;position:absolute;top:26px;bottom:26px;left:27px}.flow-item{grid-template-columns:56px 1fr;align-items:center;gap:18px;margin-bottom:14px;display:grid;position:relative}.flow-num{border:2px solid var(--ink);z-index:1;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600;display:flex}.flow-body{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:16px 22px}.flow-body h4{margin-bottom:2px;font-size:16px;font-weight:700}.flow-body p{color:var(--ink-soft);font-size:14px}.firstday{text-align:left;grid-template-columns:1fr 1fr;gap:12px;max-width:760px;margin:28px auto 0;display:grid}.firstday div{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:14px;padding:16px 20px;font-size:14px}.firstday div b{color:var(--ink);margin-bottom:4px;font-size:14.5px;display:block}@media (width<=760px){.firstday{grid-template-columns:1fr}}.flow-title{text-align:center;margin-top:56px;font-family:Shippori Mincho,serif;font-size:20px;font-weight:600}.sub-title{text-align:center;letter-spacing:.04em;margin:64px 0 24px;font-family:Shippori Mincho,serif;font-size:22px;font-weight:600}.history{grid-template-columns:96px 1fr;row-gap:12px;max-width:760px;margin:0 auto;display:grid}.history .y{color:var(--accent);padding-top:2px;font-family:Shippori Mincho,serif;font-size:16px;font-weight:600}.history .t{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:12px;padding:12px 18px;font-size:14px}.history .t b{color:var(--ink);margin-bottom:2px;font-family:Shippori Mincho,serif;font-size:15px;font-weight:600;display:block}.logo-story{border:1px solid var(--line);text-align:center;max-width:800px;box-shadow:var(--shadow);background:#fff;border-radius:18px;grid-template-columns:180px 1fr;align-items:center;gap:24px;margin:0 auto;padding:28px 32px;display:grid}.logo-story img{width:100%;height:auto}.logo-story p{color:var(--ink-soft);text-align:left;font-size:14.5px}.logo-story p b{color:var(--ink)}.route{grid-template-columns:repeat(2,1fr);gap:14px;max-width:860px;margin:0 auto;display:grid}.route div{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:14px;padding:16px 20px;font-size:14px}.route div b{color:var(--ink);margin-bottom:2px;display:block}.map-frame{border:1px solid var(--line);max-width:860px;box-shadow:var(--shadow);aspect-ratio:16/8;border-radius:18px;margin:16px auto 0;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%;display:block}@media (width<=760px){.history{grid-template-columns:76px 1fr}.logo-story{grid-template-columns:1fr}.logo-story img{max-width:220px;margin:0 auto}.route{grid-template-columns:1fr}}.support{text-align:center;padding:96px 24px}.support-lead{max-width:36em;color:var(--ink-soft);margin:18px auto 0;font-size:15.5px}.support-intro{text-align:left;grid-template-columns:340px 1fr;align-items:center;gap:36px;max-width:860px;margin:36px auto 0;display:grid}.support-intro .support-lead{margin:0}.support-ill{box-shadow:var(--shadow);aspect-ratio:16/9;border-radius:18px;position:relative;overflow:hidden}.support-ill img{object-fit:cover;width:100%;height:100%;display:block}.support-ill span{background:#fbf7efeb;border-radius:999px;padding:4px 12px;font-family:Klee One,sans-serif;font-size:12.5px;position:absolute;bottom:10px;left:12px}.support-ill-tall{aspect-ratio:3/4}@media (width<=860px){.support-intro{text-align:center;grid-template-columns:1fr;max-width:400px}}.donate-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:900px;margin:40px auto 0;display:grid}.donate-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:28px 22px}.donate-card h3{margin-bottom:8px;font-family:Shippori Mincho,serif;font-size:19px;font-weight:600}.donate-card p{color:var(--ink-soft);font-size:14px}.donate-cta{margin-top:36px}.donate-cta p{max-width:36em;color:var(--ink-soft);margin:16px auto 0;font-size:14px}.donate-cta p a{color:var(--accent);font-weight:700;text-decoration:none}.partner-note{background:var(--bg-warm);max-width:720px;color:var(--ink-soft);border-radius:16px;margin:44px auto 0;padding:22px 28px;font-size:14.5px}.partner-note b{color:var(--ink)}@media (width<=860px){.donate-grid{grid-template-columns:1fr;max-width:420px}}.fee{background:var(--bg-warm);padding:96px 24px}.fee-inner{max-width:760px;margin:0 auto}.campaign{background:var(--marker);text-align:center;border-radius:16px;margin:28px 0 22px;padding:22px 28px}.campaign .c1{font-family:Klee One,sans-serif;font-size:14px}.campaign .c2{letter-spacing:.04em;font-family:Shippori Mincho,serif;font-size:clamp(18px,3vw,24px);font-weight:600}.fee-table{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;overflow:hidden}.fee-row{border-bottom:1px dashed var(--line);grid-template-columns:1.4fr 1fr;align-items:center;padding:16px 28px;display:grid}.fee-row:last-child{border-bottom:none}.fee-row .l{font-family:Shippori Mincho,serif;font-size:15px;font-weight:600}.fee-row .v{text-align:right;font-size:15px}.fee-row .v strong{color:var(--accent);font-family:Shippori Mincho,serif;font-size:18px}.fee-note{color:var(--ink-mute);margin-top:14px;font-size:12.5px;line-height:1.9}.contact{text-align:center;padding:100px 24px}.contact-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:960px;margin:40px auto 0;display:grid}.ccard{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:30px 22px}.ccard .k{letter-spacing:.25em;color:var(--ink-mute);margin-bottom:8px;font-family:Klee One,sans-serif;font-size:12px}.ccard .big{font-family:Shippori Mincho,serif;font-size:22px;font-weight:600;text-decoration:none;display:block}.ccard p{color:var(--ink-soft);margin-top:8px;font-size:13px}.contact-note{max-width:36em;color:var(--ink-soft);margin:30px auto 0;font-size:14px}.contact-photo{aspect-ratio:16/9;max-width:760px;box-shadow:var(--shadow);border-radius:22px;margin:36px auto 0;position:relative;overflow:hidden}.contact-photo .cap{background:var(--marker);box-shadow:var(--shadow);border-radius:999px;padding:6px 16px;font-family:Klee One,sans-serif;font-size:13px;position:absolute;bottom:14px;right:16px;transform:rotate(-2deg)}@media (width<=860px){.contact-grid{grid-template-columns:1fr;max-width:420px}}.org{background:var(--bg-warm);padding:96px 24px}.org-card{border:1px solid var(--line);max-width:860px;box-shadow:var(--shadow);background:#fff;border-radius:18px;margin:32px auto 0;padding:24px 36px}.org-row{border-bottom:1px dashed var(--line);grid-template-columns:160px 1fr;gap:20px;padding:14px 0;font-size:14.5px;display:grid}.org-row:last-child{border-bottom:none}.org-row .k{letter-spacing:.1em;color:var(--accent);font-family:Klee One,sans-serif;font-size:13px;font-weight:600}.docs{grid-template-columns:repeat(3,1fr);gap:16px;max-width:860px;margin:22px auto 0;display:grid}.docs div{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px 22px}.docs h4{border-bottom:2px solid var(--marker);margin-bottom:10px;padding-bottom:8px;font-family:Shippori Mincho,serif;font-size:15px;font-weight:600}.docs a{color:var(--ink-soft);padding:4px 0;font-size:13px;text-decoration:none;display:block}.docs a:hover{color:var(--accent)}.access-photos{grid-template-columns:1fr 1.6fr;gap:16px;max-width:860px;margin:22px auto 0;display:grid}.access-photos .photo-card{aspect-ratio:3/2;position:relative}.access-photos .cap{background:#fbf7efeb;border-radius:999px;padding:4px 12px;font-family:Klee One,sans-serif;font-size:12.5px;position:absolute;bottom:10px;left:12px}@media (width<=760px){.access-photos{grid-template-columns:1fr}.org-row{grid-template-columns:1fr;gap:2px}.docs{grid-template-columns:1fr}}
