:root{--cream:#f5f2ff;--warm-white:#fdfbf8;--ink:#1a1612;--ink-soft:#3d3830;--muted:#81776d;--accent:#7c6fcd;--accent-light:#b8aeed;--accent-pale:#ede9ff;--border:#ddd8f5;--surface:#f0ecff;--green:#4a7c59;--shadow:0 20px 70px #1a161217}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--warm-white);color:var(--ink);font-family:var(--font-body), var(--font-jp), sans-serif;margin:0;font-weight:300;line-height:1.7;overflow-x:hidden}a{color:inherit}strong{font-weight:600}.site-nav{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fdfbf8e0;border-bottom:1px solid #ddd8f5d9;justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,48px);display:flex;position:fixed;inset:0 0 auto}.nav-logo,.footer-brand{color:var(--ink);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.nav-logo img{width:34px;height:34px}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .18s,background .18s}.nav-links a:hover{color:var(--ink)}.nav-links .nav-cta{background:var(--ink);color:var(--warm-white);border-radius:6px;padding:9px 18px}.nav-links .nav-cta:hover{background:var(--accent);color:var(--warm-white)}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:132px clamp(22px,6vw,72px) 72px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(circle,#7c6fcd1f,#0000 60%);border-radius:50%;width:min(80vw,800px);height:min(80vw,800px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-content{z-index:1;flex-direction:column;align-items:center;max-width:800px;display:flex;position:relative}.eyebrow{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;justify-content:center;align-items:center;gap:12px;margin:0 0 18px;font-size:.76rem;font-weight:600;display:flex}.eyebrow:before{display:none}.section-label{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;justify-content:flex-start;align-items:center;gap:12px;margin:0 0 18px;font-size:.76rem;font-weight:600;display:flex}.section-label:before{content:"";background:currentColor;width:32px;height:1px}h1,h2{color:var(--ink);font-family:var(--font-display), var(--font-jp), serif;margin:0;font-weight:500;line-height:1.14}h1{max-width:760px;font-size:clamp(3rem,7vw,5.8rem)}h1 span{color:var(--accent);margin:0 .12em;font-style:italic}h2{font-size:clamp(2.1rem,4vw,3.3rem)}.hero-copy{max-width:610px;color:var(--ink-soft);margin:26px auto 0;font-size:clamp(1rem,1.5vw,1.12rem)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:36px;display:flex}.button{letter-spacing:.04em;border-radius:7px;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:13px 24px;font-size:.93rem;font-weight:600;text-decoration:none;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--warm-white)}.button-dark:hover{background:var(--accent)}.button-ghost{border:1px solid var(--border);color:var(--ink);background:#fdfbf8a8}.button-light{background:var(--warm-white);color:var(--ink)}.button-light:hover{background:var(--accent);color:var(--warm-white)}section{padding:92px clamp(22px,6vw,72px)}.section-inner{width:min(1120px,100%);margin:0 auto}.section-band{border-block:1px solid var(--border);background:var(--cream)}.about-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:center;gap:clamp(34px,8vw,88px);display:grid}.divider{background:var(--border);width:48px;height:1px;margin:28px 0}.body-copy p{color:var(--ink-soft);margin:0 0 20px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.stat-box{text-align:center;background:var(--warm-white);border:none;border-radius:12px;flex-direction:column;gap:4px;padding:36px 24px;transition:transform .3s;display:flex;box-shadow:0 4px 20px #1a16120a}.stat-box:hover{transform:translateY(-4px)}.stat-box p{color:var(--accent);margin:0;font-size:clamp(1.8rem,4vw,2.2rem);font-weight:700;line-height:1.2}.stat-box span{color:var(--muted);letter-spacing:.05em;font-size:.85rem;font-weight:600}.forwho-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:48px;display:grid}.forwho-item{border:1px solid var(--border);background:var(--warm-white);z-index:1;border-radius:12px;padding:32px 28px;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden}.forwho-item:hover{border-color:var(--accent-light);transform:translateY(-4px);box-shadow:0 16px 40px #7c6fcd14}.forwho-item span{color:var(--accent-pale);opacity:.5;z-index:-1;font-size:7rem;font-weight:800;font-family:var(--font-display), serif;line-height:1;position:absolute;top:-15px;right:4px}.forwho-item h3{color:var(--ink);margin:0 0 12px;font-size:1.15rem;font-weight:700;line-height:1.5}.forwho-item p{color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.6}.section-split{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:flex-end;gap:48px;margin-bottom:60px;display:grid}.section-split p{color:var(--ink-soft);margin:0;font-size:1.05rem;line-height:1.7}.activity-list{flex-direction:column;gap:24px;display:flex}.activity-item{border:1px solid var(--border);background:var(--warm-white);border-radius:16px;align-items:flex-start;gap:24px;padding:32px;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 4px 20px #1a161208}.activity-item:hover{transform:translateY(-4px);box-shadow:0 12px 30px #7c6fcd14}.activity-item>span{background:var(--accent-pale);width:54px;height:54px;color:var(--accent);font-family:var(--font-display), serif;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;line-height:1;display:flex}.activity-item h3{color:var(--ink);margin:0 0 10px;font-size:1.2rem;font-weight:700}.activity-item p{color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.6}.topics-grid{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.topics-grid span{border:1px solid var(--border);background:var(--warm-white);color:var(--ink-soft);cursor:default;border-radius:999px;padding:12px 24px;font-size:.95rem;font-weight:500;transition:all .3s}.topics-grid span:hover{background:var(--accent);color:var(--warm-white);border-color:var(--accent);transform:translateY(-3px);box-shadow:0 8px 20px #7c6fcd33}.join{text-align:center}.join .section-inner{flex-direction:column;align-items:center;display:flex}.join .section-label{justify-content:center;margin-top:24px}.join .section-label:before{display:none}.join p{color:var(--ink-soft);margin-bottom:32px}.instagram-link{color:var(--muted);text-underline-offset:4px;margin-top:24px;font-weight:500;text-decoration:underline;transition:color .3s}.instagram-link:hover{color:var(--accent)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:1s ease-out forwards fadeIn}.animate-slide-up{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards slideUp}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.concept-header{text-align:center;background:var(--cream);padding:180px clamp(22px,6vw,72px) 80px;position:relative;overflow:hidden}.concept-header:before{content:"";z-index:0;background:radial-gradient(circle,#7c6fcd14 0%,#0000 60%);border-radius:50%;width:80vw;height:80vw;position:absolute;top:-50%;left:50%;transform:translate(-50%)}.concept-header>*{z-index:1;position:relative}.concept-container{max-width:860px;margin:0 auto;padding:60px clamp(22px,6vw,72px) 120px}.concept-block{border-bottom:1px solid var(--border);opacity:0;margin-bottom:80px;padding-bottom:80px}.concept-block:last-child{border-bottom:none}.concept-stat-highlight{font-family:var(--font-display), serif;color:var(--accent);margin-bottom:24px;font-size:clamp(3.5rem,8vw,6rem);line-height:1.1;display:block}.concept-block p{color:var(--ink-soft);margin-bottom:24px;font-size:1.25rem;line-height:1.8}.concept-block strong{color:var(--ink);box-shadow:inset 0 -10px 0 var(--accent-pale)}footer{text-align:center;border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:12px;padding:48px clamp(22px,6vw,72px);display:flex}footer p{color:var(--muted);margin:0;font-size:.9rem}.footer-brand{font-size:1rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:24px;margin-top:8px;display:flex}.footer-links a{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}.faq-list{flex-direction:column;gap:0;display:flex}.faq-item{border-bottom:1px solid var(--border);padding:40px 0}.faq-item:first-child{border-top:1px solid var(--border)}.faq-q,.faq-a{align-items:flex-start;gap:20px;display:flex}.faq-a{margin-top:20px}.faq-mark{background:var(--accent);color:#fff;width:36px;height:36px;font-size:.9rem;font-weight:700;font-family:var(--font-display), serif;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.faq-mark-a{background:var(--surface);color:var(--accent);border:1px solid var(--border)}.faq-q h2{color:var(--ink);margin:0;font-size:1.1rem;font-weight:700;line-height:1.6}.faq-a p{color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.8}.guidelines-list{flex-direction:column;gap:0;display:flex}.guideline-item{padding:48px 0!important}.guideline-header{align-items:center;gap:20px;margin-bottom:20px;display:flex}.guideline-num{color:var(--accent);font-size:.85rem;font-weight:700;font-family:var(--font-display), serif;letter-spacing:.05em;background:var(--accent-pale);border-radius:999px;flex-shrink:0;padding:6px 14px}.guideline-header h2{color:var(--ink);margin:0;font-size:1.5rem;font-weight:700;line-height:1.4}.guideline-sub{border-left:3px solid var(--accent-light);background:var(--accent-pale);border-radius:0 8px 8px 0;padding:12px 16px;font-style:italic;color:var(--muted)!important;margin-top:16px!important;font-size:.95rem!important}@media (max-width:768px){.site-nav{padding:14px 20px}.nav-links{gap:16px}.hero{gap:24px;padding:120px 24px 60px}h1{font-size:clamp(2.4rem,10vw,3.5rem)}.hero-copy{margin-top:16px;font-size:1rem}section{padding:72px 24px}.about-grid,.section-split{grid-template-columns:1fr;align-items:flex-start;gap:32px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-box{padding:24px 16px}.stat-box p{font-size:clamp(1.4rem,6vw,1.8rem)}.forwho-list{grid-template-columns:1fr;gap:16px}.forwho-item{padding:24px}.forwho-item span{font-size:5rem;top:-10px}.activity-item{flex-direction:column;gap:16px;padding:24px}.topics-grid{gap:8px}.topics-grid span{padding:10px 16px;font-size:.85rem}.concept-header{padding:120px 24px 60px}.concept-container{padding:40px 24px 80px}.concept-block{margin-bottom:60px;padding-bottom:60px}.concept-stat-highlight{font-size:clamp(2.2rem,8vw,3rem)}.concept-block p{font-size:1.05rem}.faq-item{padding:28px 0}.faq-q h2{font-size:1rem}.guideline-header{flex-direction:column;align-items:flex-start;gap:12px}.guideline-header h2{font-size:1.2rem}.footer-links{gap:16px}}.contact-sns-card{background:var(--warm-white);border:1px solid var(--border);color:var(--ink);border-radius:16px;align-items:center;gap:16px;padding:24px 28px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex}.contact-sns-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #7c6fcd1a}.contact-sns-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}
