@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,600&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@500;600;700&display=swap";:root{--color-primary: #8a7cff;--color-secondary: #ff8db8;--color-accent: #7fd3ff;--color-base: #f7f7fb;--color-lavender-mist: #dccbff;--color-shell-pink: #ffd6e7;--color-aqua-sky: #b8f0ff;--color-periwinkle: #b6b8ff;--color-star-glow: #ffe9a8;--color-text-heading: #3f356e;--color-text-body: #34343d;--color-text-muted: #6f6f7d;--color-border: #e7e3f3;--color-white: #ffffff;--color-deep-night: #17152b;--color-night-purple: #27213f;--gradient-purple-pink: linear-gradient(135deg, #8a7cff 0%, #ff8db8 100%);--gradient-purple-blue: linear-gradient(135deg, #8a7cff 0%, #7fd3ff 100%);--gradient-pink-gold: linear-gradient(135deg, #ff8db8 0%, #ffe9a8 100%);--gradient-night: linear-gradient(160deg, #17152b 0%, #27213f 100%);--gradient-cta: var(--gradient-purple-pink);--color-accent-line: var(--color-secondary);--font-jp: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", "Meiryo", system-ui, sans-serif;--font-jp-serif: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--font-en-serif: Georgia, "Times New Roman", serif;--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--fs-2xs: .75rem;--fs-xs: .875rem;--fs-sm: .9375rem;--fs-base: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--fs-3xl: 2.25rem;--fs-4xl: 2.75rem;--lh-tight: 1.3;--lh-normal: 1.7;--lh-relaxed: 1.9;--content-max-width: 1160px;--content-padding-inline: clamp(1.25rem, 4vw, 2.5rem);--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 8rem;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 24px;--radius-full: 999px;--shadow-soft: 0 8px 30px rgba(63, 53, 110, .08);--shadow-hover: 0 12px 36px rgba(63, 53, 110, .14);--transition-base: .2s ease;--header-height: 72px}body.lp-theme{--color-base: #eef0fb;--gradient-cta: var(--gradient-purple-blue);--color-accent-line: var(--color-accent)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{margin:0;min-width:320px;overflow-x:hidden;background-color:var(--color-base);color:var(--color-text-body);font-family:var(--font-jp);font-size:var(--fs-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none;margin:0;padding:0}h1,h2,h3,h4,p,figure{margin:0}button{font:inherit;color:inherit;cursor:pointer}h1,h2,h3,h4{font-family:var(--font-jp-serif);color:var(--color-text-heading);line-height:var(--lh-tight);font-weight:600}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background-color:var(--color-lavender-mist);color:var(--color-text-heading)}.container{width:100%;max-width:var(--content-max-width);margin-inline:auto;padding-inline:var(--content-padding-inline)}.section{padding-block:var(--space-2xl)}.section-inner{width:100%;max-width:var(--content-max-width);margin-inline:auto;padding-inline:var(--content-padding-inline)}.section-heading{text-align:center;max-width:720px;margin-inline:auto;margin-bottom:var(--space-xl)}.section-eyebrow{display:inline-block;font-family:var(--font-en-serif);font-style:italic;font-size:var(--fs-sm);letter-spacing:.08em;color:var(--color-primary);margin-bottom:var(--space-xs)}.section-title{font-size:var(--fs-3xl)}.section-lead{margin-top:var(--space-sm);color:var(--color-text-muted);font-size:var(--fs-lg);line-height:var(--lh-relaxed)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:var(--space-sm);z-index:1000;background:var(--color-white);color:var(--color-text-heading);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);transition:top var(--transition-base)}.skip-link:focus{top:var(--space-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);padding:.9rem 1.75rem;border-radius:var(--radius-full);font-weight:700;font-size:var(--fs-sm);border:1px solid transparent;transition:transform var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.btn-primary{background:var(--gradient-purple-pink);color:var(--color-white);box-shadow:var(--shadow-soft)}.btn-primary:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.btn-secondary{background:var(--color-white);color:var(--color-text-heading);border-color:var(--color-border)}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media (max-width: 640px){:root{--fs-3xl: 1.75rem;--fs-4xl: 2rem;--space-2xl: 4rem;--space-3xl: 5rem}}
