@layer otsukimi{:root{--otsukimi-color-bg-base:#faf8ff;--otsukimi-color-bg-surface:#fff;--otsukimi-color-brand-primary:#dca3ff;--otsukimi-color-brand-primary-soft:#efd6ff;--otsukimi-color-brand-primary-deep:#5560c9;--otsukimi-color-accent-default:#8edaf7;--otsukimi-color-accent-soft:#cdefff;--otsukimi-color-text-primary:#483354;--otsukimi-color-text-secondary:#6f6a86;--otsukimi-color-border-default:#e8dcf3;--otsukimi-color-highlight-default:#ffbc00;--otsukimi-color-highlight-soft:#fff3c7;--otsukimi-color-secondary:#ffe1ee;--otsukimi-radius-xs:8px;--otsukimi-radius-sm:16px;--otsukimi-radius-md:24px;--otsukimi-radius-lg:32px;--otsukimi-radius-full:9999px;--otsukimi-spacing-1:4px;--otsukimi-spacing-2:8px;--otsukimi-spacing-3:16px;--otsukimi-spacing-4:24px;--otsukimi-spacing-5:32px;--otsukimi-spacing-6:64px;--otsukimi-font-body-family:"LINE Seed JP", "Zen Maru Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif;--otsukimi-font-heading-family:"Zen Maru Gothic", "LINE Seed JP", "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif;--otsukimi-shadow-sm:0 4px 8px #ddb7f41a, 0 2px 4px #00000008;--otsukimi-shadow-md:0 8px 24px #ddb7f426, 0 2px 8px #0000000d;--otsukimi-shadow-lg:0 16px 48px #ddb7f433, 0 4px 16px #0000000f}.otsukimi-visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.otsukimi-field:focus-visible{border:2px solid var(--otsukimi-color-brand-primary-deep);box-shadow:var(--otsukimi-shadow-sm);outline:none}.otsukimi-button{box-sizing:border-box;border-radius:var(--otsukimi-radius-full);height:3em;font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);background:linear-gradient(90deg, var(--otsukimi-color-brand-primary-soft), var(--otsukimi-color-secondary), var(--otsukimi-color-accent-soft));box-shadow:var(--otsukimi-shadow-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.625em;padding:0 1.25em;font-size:1rem;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.otsukimi-button:hover:not(:disabled){box-shadow:var(--otsukimi-shadow-lg);transform:translateY(-1px)}.otsukimi-button:active:not(:disabled){transform:translateY(0)}.otsukimi-button:focus-visible{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:2px}.otsukimi-button:disabled{background:var(--otsukimi-color-border-default);color:var(--otsukimi-color-text-secondary);box-shadow:var(--otsukimi-shadow-sm);cursor:not-allowed}.otsukimi-button-transparent{border:2px solid var(--otsukimi-color-border-default);color:var(--otsukimi-color-text-primary);box-shadow:var(--otsukimi-shadow-sm);background:0 0}.otsukimi-button svg{width:24px;height:24px}.otsukimi-button-moon svg{color:var(--otsukimi-color-highlight-default)}.otsukimi-button-moon{gap:.3125em}@media (prefers-reduced-motion:reduce){.otsukimi-button{transition:none}}.otsukimi-input{box-sizing:border-box;border-radius:var(--otsukimi-radius-md);border:1px solid var(--otsukimi-color-border-default);background:var(--otsukimi-color-bg-surface);width:100%;height:3em;font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);padding:0 1em;font-size:1rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.otsukimi-input::placeholder{color:var(--otsukimi-color-text-secondary)}.otsukimi-input:disabled{background:var(--otsukimi-color-bg-base);border:1px solid var(--otsukimi-color-border-default);opacity:.8}@media (prefers-reduced-motion:reduce){.otsukimi-input{transition:none}}.otsukimi-card{box-sizing:border-box;border-radius:var(--otsukimi-radius-md);background:var(--otsukimi-color-bg-surface);box-shadow:var(--otsukimi-shadow-md);color:var(--otsukimi-color-text-primary);flex-direction:column;gap:.5em;padding:1.5em 1.75em;display:flex}.otsukimi-badge{border-radius:var(--otsukimi-radius-full);font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);justify-content:center;align-items:center;padding:6px 12px;font-size:.8125rem;font-weight:400;display:inline-flex}.otsukimi-badge-default{background:var(--otsukimi-color-secondary)}.otsukimi-badge-primary{background:var(--otsukimi-color-brand-primary-soft)}.otsukimi-badge-moonlight{background:var(--otsukimi-color-highlight-soft)}.otsukimi-badge-accent-soft{background:var(--otsukimi-color-accent-soft)}.otsukimi-checkbox{font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);cursor:pointer;align-items:center;gap:12px;font-size:1rem;font-weight:400;display:inline-flex;position:relative}.otsukimi-checkbox-box{box-sizing:border-box;border:2px solid var(--otsukimi-color-border-default);border-radius:var(--otsukimi-radius-xs);background:var(--otsukimi-color-bg-surface);justify-content:center;align-items:center;width:1.5em;height:1.5em;transition:background .15s,border-color .15s;display:flex}.otsukimi-checkbox-input:checked+.otsukimi-checkbox-box{background:var(--otsukimi-color-brand-primary-deep);border-color:var(--otsukimi-color-brand-primary-deep)}.otsukimi-checkbox-input:focus-visible+.otsukimi-checkbox-box{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:2px}.otsukimi-checkbox-input:disabled+.otsukimi-checkbox-box{opacity:.5}.otsukimi-checkbox:has(.otsukimi-checkbox-input:disabled){cursor:not-allowed}.otsukimi-checkbox-box svg{width:24px;height:24px;display:none}.otsukimi-checkbox-input:checked+.otsukimi-checkbox-box svg{color:var(--otsukimi-color-highlight-default);display:block}.otsukimi-checkbox-moon .otsukimi-checkbox-icon{width:1.375em;height:1.25em}.otsukimi-checkbox-label{cursor:pointer;line-height:1.5}@media (prefers-reduced-motion:reduce){.otsukimi-checkbox-box{transition:none}}.otsukimi-radio-button{font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);cursor:pointer;align-items:center;gap:13px;font-size:1rem;font-weight:400;display:inline-flex;position:relative}.otsukimi-radio-circle{box-sizing:border-box;background:var(--otsukimi-color-bg-surface);border:2px solid var(--otsukimi-color-border-default);border-radius:50%;justify-content:center;align-items:center;width:1.5em;height:1.5em;transition:border-color .15s;display:flex}.otsukimi-radio-input:checked+.otsukimi-radio-circle{border-color:var(--otsukimi-color-brand-primary-deep)}.otsukimi-radio-input:focus-visible+.otsukimi-radio-circle{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:2px}.otsukimi-radio-input:disabled+.otsukimi-radio-circle{opacity:.5}.otsukimi-radio-button:has(.otsukimi-radio-input:disabled){cursor:not-allowed}.otsukimi-radio-dot{background:var(--otsukimi-color-brand-primary-deep);border-radius:50%;width:1em;height:1em;display:none}.otsukimi-radio-input:checked+.otsukimi-radio-circle .otsukimi-radio-dot{display:block}.otsukimi-radio-label{cursor:pointer;line-height:1.5}@media (prefers-reduced-motion:reduce){.otsukimi-radio-circle{transition:none}}.otsukimi-accordion{width:100%}.otsukimi-accordion-header{box-sizing:border-box;border-radius:var(--otsukimi-radius-md);border:1px solid var(--otsukimi-color-border-default);background:var(--otsukimi-color-bg-surface);width:100%;min-height:2.4em;font-family:var(--otsukimi-font-heading-family);color:var(--otsukimi-color-text-primary);cursor:pointer;align-items:center;gap:.5em;padding:0 .8em;font-size:1.25rem;font-weight:500;transition:border-color .15s,box-shadow .15s;display:flex}.otsukimi-accordion-header:hover{box-shadow:var(--otsukimi-shadow-sm)}.otsukimi-accordion-header:focus-visible{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:2px}.otsukimi-accordion-open .otsukimi-accordion-header{border-color:var(--otsukimi-color-brand-primary-deep)}.otsukimi-accordion-header svg{width:24px;height:24px;color:var(--otsukimi-color-brand-primary-deep)}.otsukimi-accordion-content{font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);padding:1em 1.6875em;font-size:1rem;font-weight:400;line-height:1.5}.otsukimi-accordion-content[hidden]{display:none}@media (prefers-reduced-motion:reduce){.otsukimi-accordion-header{transition:none}}.otsukimi-divider{background:var(--otsukimi-color-border-default);border:0;width:100%;height:1px}.otsukimi-divider-dashed{background:repeating-linear-gradient(to right, var(--otsukimi-color-border-default) 0, var(--otsukimi-color-border-default) .125em, transparent .125em, transparent .25em);height:1px}.otsukimi-link{font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-brand-primary-deep);cursor:pointer;justify-content:center;align-items:center;gap:5px;font-size:1rem;font-weight:400;text-decoration:none;display:inline-flex}.otsukimi-link:focus-visible{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:2px}.otsukimi-link svg{width:24px;height:24px;color:var(--otsukimi-color-brand-primary-deep)}@media (prefers-reduced-motion:reduce){.otsukimi-link{transition:none}}.otsukimi-search-bar{align-items:center;gap:.3125em;width:100%;min-height:3em;display:flex}.otsukimi-search-bar-input{box-sizing:border-box;border:1px solid var(--otsukimi-color-border-default);border-radius:var(--otsukimi-radius-md);background:var(--otsukimi-color-bg-surface);min-width:0;min-height:3em;font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);flex:auto;padding:0 1em;font-size:1rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.otsukimi-search-bar-input::placeholder{color:var(--otsukimi-color-text-secondary)}.otsukimi-search-bar-button{flex:none;min-width:0;padding:.75em 1.25em}@media (prefers-reduced-motion:reduce){.otsukimi-search-bar-input{transition:none}}.otsukimi-list-item{min-height:1.5em;font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);align-items:center;gap:.625em;font-size:1rem;font-weight:400;display:flex}.otsukimi-list-item svg{width:24px;height:24px}.otsukimi-list-item-star svg{color:var(--otsukimi-color-highlight-default)}.otsukimi-list-item-dot svg{color:var(--otsukimi-color-brand-primary-deep)}}:root{font-family:var(--otsukimi-font-body-family);color:var(--otsukimi-color-text-primary);background:var(--otsukimi-color-bg-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{line-break:strict;min-width:320px;word-break:auto-phrase;margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--otsukimi-color-brand-primary-deep);outline-offset:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.site-shell{background:var(--otsukimi-color-bg-base);min-height:100vh;color:var(--otsukimi-color-text-primary)}.page-shell{width:min(1040px,100% - 64px);margin:auto;padding:16px 0 96px}.skip-link{z-index:100;border-radius:var(--otsukimi-radius-sm);background:var(--otsukimi-color-bg-surface);box-shadow:var(--otsukimi-shadow-md);padding:12px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:16px}.site-header{z-index:10;background:var(--otsukimi-color-bg-base);border-bottom:1px solid var(--otsukimi-color-border-default);position:sticky;top:0}.site-header-inner{justify-content:flex-end;align-items:center;gap:16px;width:min(1040px,100% - 64px);margin:auto;padding:20px 0;display:flex}.site-nav{color:var(--otsukimi-color-text-secondary);gap:20px;font-size:13px;display:flex}.site-nav a:hover{color:var(--otsukimi-color-brand-primary-deep)}.hero{padding:40px 0 48px}.hero h1{font-family:var(--otsukimi-font-heading-family);margin:0 0 20px;font-size:clamp(28px,4.5vw,44px);font-weight:700;line-height:1.35}.hero p{max-width:620px;color:var(--otsukimi-color-text-secondary);margin:0;font-size:15px;line-height:2}.section{margin-top:56px;scroll-margin-top:80px}.section-title{font-family:var(--otsukimi-font-heading-family);margin:0 0 20px;font-size:24px;font-weight:700}.section>p{color:var(--otsukimi-color-text-secondary);margin:0 0 12px;font-size:14px;line-height:2}.service-name{font-weight:700}.service-groups{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.service-card h3{font-family:var(--otsukimi-font-heading-family);margin:4px 0 12px;font-size:18px;font-weight:700}.service-list{color:var(--otsukimi-color-text-secondary);margin:0;padding:0;font-size:13px;line-height:1.9;list-style:none}.service-list li+li{margin-top:6px}.service-list li:before{content:"・";color:var(--otsukimi-color-brand-primary-deep)}.company-details{margin:0}.company-details div{grid-template-columns:160px 1fr;gap:16px;padding:12px 0;display:grid}.company-details div+div{border-top:1px dashed var(--otsukimi-color-border-default)}.company-details dt{color:var(--otsukimi-color-text-secondary);font-size:13px}.company-details dd{margin:0;font-size:14px;line-height:1.8}.section .otsukimi-card p{margin:0;line-height:2}.inline-link{color:var(--otsukimi-color-brand-primary-deep);text-underline-offset:3px;text-decoration:underline}@media (width<=760px){.page-shell,.site-header-inner{width:min(100% - 40px,580px)}.site-header-inner{flex-wrap:wrap;gap:8px}.site-nav{flex-wrap:wrap;gap:12px}.service-groups{grid-template-columns:1fr}.company-details div{grid-template-columns:1fr;gap:4px}}
