:root{--cream:#fbf8f2;--paper:#fffdf9;--pink:#a34f67;--pink-light:#f3e5e7;--sage:#e7ece3;--green:#536450;--ink:#433b36;--muted:#766a63;--line:#ded6cd;--radius:18px;--space:clamp(72px,8vw,112px);--body:1rem;--heading:clamp(2rem,3.2vw,2.8rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:var(--body);line-height:1.95;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;line-height:1.55;letter-spacing:.055em}h2{font-size:var(--heading);margin-bottom:24px}h3{font-size:1.18rem}a{color:inherit;text-decoration:none}img{max-width:100%;display:block;height:auto}button,input,select,textarea{font:inherit}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pink);outline-offset:5px}button,a{touch-action:manipulation}button{cursor:pointer}.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.section{padding-block:var(--space)}.eyebrow{font-family:Arial,sans-serif;letter-spacing:.19em;font-size:.75rem;font-weight:700;color:var(--green);margin-bottom:24px}.site-header{position:sticky;top:0;z-index:10;background:rgba(251,248,242,.97);border-bottom:1px solid var(--line)}.header-inner{max-width:1320px;padding:23px 48px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:800;font-size:1.16rem;letter-spacing:.06em;white-space:nowrap}.brand-symbol{color:var(--pink);font-size:1.45rem;margin-right:10px}.site-nav{display:flex;align-items:center;gap:28px;font-size:.875rem;font-weight:600}.site-nav a:hover,.text-link:hover{color:var(--pink)}.site-nav .nav-youtube{border:1px solid var(--pink);color:var(--pink);border-radius:40px;padding:8px 18px}.menu-toggle{display:none}.hero{position:relative;padding-top:70px;display:grid;grid-template-columns:1fr 1fr;gap:24px 65px;align-items:center}.hero__name{font-size:1.12rem;font-weight:700;letter-spacing:.09em;margin-bottom:15px}.hero h1{font-size:clamp(2.8rem,4.9vw,4.2rem);line-height:1.45;letter-spacing:.035em;margin-bottom:23px}.pink-word{color:var(--pink)}.hero__lead{font-size:.95rem;line-height:2.15;color:var(--muted);margin-bottom:30px}.tiny-line{width:24px;height:1px;background:var(--green);display:inline-block;vertical-align:middle;margin-right:8px}.hero__actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:1px solid transparent;border-radius:50px;padding:15px 25px;font-size:.9rem;font-weight:700;line-height:1.7;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--pink);color:white}.button--primary:hover{background:#874057}.button--dark{background:var(--ink);color:white}.text-link{font-size:.85rem;border-bottom:1px solid var(--line);padding:10px 0}.hero__visual{position:relative;padding:10px 12px 0 0}.photo-frame{background:var(--pink-light);border-radius:180px 180px 20px 20px;padding:10px;transform:rotate(3deg)}.photo-frame img{width:100%;height:450px;object-fit:cover;object-position:29% center;border-radius:170px 170px 14px 14px}.photo-note{display:block;text-align:center;font-size:.8rem;letter-spacing:.07em;margin-top:24px;color:var(--muted)}.photo-stamp{position:absolute;bottom:35px;right:-14px;border:1px solid var(--line);border-radius:50%;width:98px;height:98px;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;font:11px Arial;letter-spacing:2px;transform:rotate(10deg)}.photo-stamp span{font-size:34px;line-height:1.4}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:35px 0 24px;margin-top:20px;font:10px Arial;letter-spacing:.17em;color:var(--muted)}.hero-bottom a{padding:10px 0}.profile-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.profile-picture{padding:14px;background:var(--paper);border:1px solid var(--line);transform:rotate(-3deg)}.profile-picture img{aspect-ratio:1.2;object-fit:cover;object-position:55% center}.picture-caption{display:block;text-align:center;font:11px Arial;letter-spacing:.2em;padding:22px 0 8px}.profile-copy p:not(.eyebrow){color:var(--muted);font-size:.94rem}.profile-copy .intro{font-weight:700;color:var(--ink)!important}.activity-list{list-style:none;padding:0;margin:27px 0 0}.activity-list li{border-top:1px solid var(--line);padding:12px 0;font-size:.9rem}.activity-list span{font:12px Arial;color:var(--pink);margin-right:24px}.game-section{background:var(--sage)}.game-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.game-title{display:flex;gap:16px;align-items:center;margin:28px 0 18px}.game-title img{border-radius:14px;width:60px}.game-title h3{margin:0}.game-layout p:not(.eyebrow){font-size:.9rem}.game-art{background:var(--paper);padding:30px 22px 12px;border-radius:var(--radius);transform:rotate(2deg);box-shadow:0 18px 40px #43513e0c}.game-art>.eyebrow{display:block;text-align:center;margin-bottom:24px}.game-art img{border-radius:8px}.game-art p{text-align:center;margin-top:20px;color:var(--muted)}.store-links{display:flex;gap:12px;flex-wrap:wrap}.store-link{display:grid;grid-template-columns:1fr auto;gap:0 16px;border:1px solid #a1ad9b;border-radius:10px;padding:9px 18px;font-size:1rem;font-weight:700;min-width:154px}.store-link small{grid-column:1/-1;font-size:.75rem;font-weight:400}.store-link:hover{background:white}.membership-section{background:var(--pink-light)}.membership-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.membership-heading p:not(.eyebrow){font-size:.94rem;color:var(--muted)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px}.benefit{border-top:1px solid #cbb7bc;padding-top:24px}.benefit-icon{font-size:1.5rem;color:var(--pink);display:block;margin-bottom:17px}.benefit h3{font-size:1.1rem;margin-bottom:12px}.benefit p{font-size:.875rem;color:var(--muted);line-height:1.9}.contact-section{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.contact-section>div>p:not(.eyebrow){font-size:.94rem;color:var(--muted)}.contact-mail{font-size:.95rem;border-bottom:1px solid var(--pink);display:inline-block;padding-bottom:5px;overflow-wrap:anywhere}.form-note{font-size:.8rem!important;color:var(--muted);line-height:1.85;margin-top:24px}.contact-form label{display:block;font-size:.875rem;font-weight:600;margin-bottom:20px}.contact-form label>span{font-size:.7rem;color:var(--pink);font-weight:400;margin-left:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{display:block;border:1px solid var(--line);background:var(--paper);border-radius:8px;width:100%;padding:12px 14px;margin-top:8px;color:var(--ink);font-size:1rem;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#8a7e78;font-size:.875rem}.contact-form .form-note{margin-top:12px;margin-bottom:0}.cta-band{text-align:center;padding:66px 24px;background-color:#eee9df;background-image:linear-gradient(#dcd5c433 1px,transparent 1px),linear-gradient(90deg,#dcd5c433 1px,transparent 1px);background-size:44px 44px}.cta-band h2{font-size:clamp(1.6rem,3vw,2.3rem)}.cta-band>p:not(.eyebrow){font-size:.875rem}.site-footer{padding:45px 48px 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;max-width:1120px;margin:auto}.footer-top nav{display:flex;gap:24px;font-size:.8rem;flex-wrap:wrap}.footer-bottom{max-width:1120px;margin:26px auto 0;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem}.skip-link{position:fixed;top:-100px;left:10px;z-index:30;background:white;padding:12px}.skip-link:focus{top:10px}.page-hero,.prose{width:min(800px,calc(100% - 48px));margin:auto}.page-hero{padding-top:70px}.page-hero h1{font-size:clamp(1.7rem,4vw,3rem)}.prose h2{font-size:1.5rem;margin-top:30px}
@media(min-width:1500px){.hero{padding-top:85px}.photo-frame img{height:490px}}
@media(max-width:1050px){.header-inner{padding:18px 28px}.site-nav{gap:17px;font-size:.8rem}.nav-youtube{display:none}.wrap{width:calc(100% - 64px)}.hero{gap:30px}.hero__actions{gap:12px}.profile-section{gap:50px}.contact-section{gap:40px}.game-layout{gap:35px}.photo-frame img{height:420px}}
@media(max-width:760px){html{scroll-padding-top:90px}.header-inner{padding:17px 22px}.brand{font-size:1rem}.brand-symbol{margin-right:5px}.menu-toggle{display:block;border:1px solid var(--line);border-radius:30px;padding:8px 13px;background:transparent;font-size:.8rem}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px 24px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{padding:12px}.site-nav .nav-youtube{display:block;margin-top:8px;text-align:center}.wrap{width:calc(100% - 44px)}.hero{padding-top:38px;grid-template-columns:1fr;gap:30px}.hero .eyebrow{margin-bottom:17px}.hero__name{font-size:1rem}.hero h1{font-size:clamp(2.7rem,10vw,4rem);margin-bottom:15px}.hero__lead{margin-bottom:20px}.hero__actions{gap:18px}.button{font-size:.85rem;padding:13px 20px}.hero__visual{width:min(440px,94%);margin:auto}.photo-frame img{height:340px;object-position:28% center}.photo-frame{border-radius:140px 140px 18px 18px;transform:rotate(2deg)}.photo-frame img{border-radius:132px 132px 12px 12px}.photo-stamp{width:77px;height:77px;right:-8px;font-size:9px}.photo-stamp span{font-size:28px}.photo-note{font-size:.7rem}.hero-bottom{margin:0;padding-top:10px;font-size:8px;letter-spacing:.08em}.profile-section{grid-template-columns:1fr;gap:40px}.profile-picture{max-width:430px;width:95%;margin:auto;order:2}.profile-picture img{aspect-ratio:1.4}.profile-copy{order:1}.game-layout{grid-template-columns:1fr;gap:45px}.game-art{padding:24px 14px 8px}.membership-heading{grid-template-columns:1fr;gap:0}.membership-heading br{display:none}.benefit-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.benefit h3{font-size:1rem;letter-spacing:0}.benefit p{font-size:.85rem}.contact-section{grid-template-columns:1fr;gap:36px}.form-row{grid-template-columns:1fr;gap:0}.contact-section h2{font-size:1.9rem}.contact-form .button{width:100%;gap:8px}.site-footer{padding:35px 22px 22px}.footer-top{align-items:flex-start;flex-direction:column}.footer-top nav{gap:14px}.cta-band h2{letter-spacing:0}.cta-band>p:not(.eyebrow){max-width:280px;margin:0 auto 24px}.photo-frame img{max-height:100vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover{transform:none}}
