@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Inter:wght@400;500;600;700&display=swap";:root{--color-white: #FFFFFF;--color-bg-light: #F5F7F9;--color-bg-gray: #E8ECF0;--color-primary: #3A8B5C;--color-primary-dark: #2A6B47;--color-primary-light: #4DAD72;--color-accent: #1A3A5C;--color-accent-dark: #122840;--color-accent-light: #2A5080;--color-text: #1F2937;--color-text-muted: #6B7280;--color-text-light: #9CA3AF;--color-border: #D1D5DB;--color-border-light: #E5E7EB;--font-jp: "Noto Sans JP", sans-serif;--font-en: "Inter", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--max-width: 1200px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.08), 0 4px 6px rgba(0,0,0,.05);--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-jp);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-white);line-height:1.75;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-6)}@media (min-width: 768px){.container{padding-inline:var(--space-8)}}.section{padding-block:var(--space-16)}@media (min-width: 768px){.section{padding-block:var(--space-24)}}.section--gray{background-color:var(--color-bg-light)}.section--dark{background-color:var(--color-primary);color:var(--color-white)}.section--accent{background-color:var(--color-accent);color:var(--color-white)}.section__header{text-align:center;margin-bottom:var(--space-12)}.section__label{display:inline-block;font-family:var(--font-en);font-size:var(--text-xs);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-3)}.section--dark .section__label,.section--accent .section__label{color:#ffffffb3}.section__title{font-size:var(--text-2xl);font-weight:700;color:var(--color-text);line-height:1.4}@media (min-width: 768px){.section__title{font-size:var(--text-3xl)}}.section--dark .section__title,.section--accent .section__title{color:var(--color-white)}.section__desc{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-base);max-width:640px;margin-inline:auto}.section--dark .section__desc,.section--accent .section__desc{color:#fffc}.page-header{background-color:var(--color-primary);padding-block:var(--space-12) var(--space-16)}.page-header__label{font-family:var(--font-en);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffff8c;margin-bottom:var(--space-3)}.page-header__title{font-size:var(--text-3xl);font-weight:700;color:var(--color-white);line-height:1.3}@media (min-width: 768px){.page-header__title{font-size:var(--text-4xl)}}.page-header__desc{margin-top:var(--space-4);font-size:var(--text-lg);color:#ffffffbf;max-width:600px}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);border-radius:var(--radius-sm);font-weight:700;font-size:var(--text-base);transition:var(--transition);cursor:pointer;border:2px solid transparent;white-space:nowrap}.btn--primary{background-color:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.btn--primary:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark)}.btn--navy{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn--navy:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn--outline{background-color:transparent;color:var(--color-white);border-color:#fff9}.btn--outline:hover{background-color:var(--color-white);color:var(--color-primary);border-color:var(--color-white)}.btn--outline-dark{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--outline-dark:hover{background-color:var(--color-primary);color:var(--color-white)}.text-link{color:var(--color-accent);font-weight:700;transition:color var(--transition)}.text-link:hover{color:var(--color-accent-dark)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.table-clean{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table-clean th,.table-clean td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);text-align:left;vertical-align:top}.table-clean th{font-weight:700;width:30%;color:var(--color-text-muted);background-color:var(--color-bg-light);white-space:nowrap}@media (max-width: 640px){.table-clean th,.table-clean td{display:block;width:100%}.table-clean th{padding-bottom:var(--space-1);border-bottom:none}}.card{background-color:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.grid-2,.grid-3,.grid-4{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 640px){.grid-2,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.grid-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.grid-4{grid-template-columns:repeat(4,1fr)}}.form-group{margin-bottom:var(--space-6)}.form-label{display:block;font-size:var(--text-sm);font-weight:700;color:var(--color-text);margin-bottom:var(--space-2)}.form-label .required{color:#dc2626;margin-left:var(--space-1);font-size:var(--text-xs)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-jp);color:var(--color-text);background-color:var(--color-white);transition:border-color var(--transition)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #3a8b5c26}.form-textarea{min-height:160px;resize:vertical}.header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;background-color:var(--color-white);border-bottom:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.header__inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-6);height:64px}.header__logo[data-astro-cid-3ef6ksr2]{display:flex;align-items:baseline;gap:4px;flex-shrink:0}.header__logo-mark[data-astro-cid-3ef6ksr2]{font-family:var(--font-en);font-size:1.5rem;font-weight:700;color:var(--color-primary);letter-spacing:.05em}.header__logo-text[data-astro-cid-3ef6ksr2]{font-size:var(--text-sm);font-weight:700;color:var(--color-text)}.header__nav[data-astro-cid-3ef6ksr2]{display:none;flex:1}@media (min-width: 1024px){.header__nav[data-astro-cid-3ef6ksr2]{display:block}}.header__nav-list[data-astro-cid-3ef6ksr2]{display:flex;align-items:center}.header__nav-link[data-astro-cid-3ef6ksr2]{display:block;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:500;color:var(--color-text);white-space:nowrap;transition:color var(--transition);position:relative}.header__nav-link[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;bottom:0;left:var(--space-3);right:var(--space-3);height:2px;background-color:var(--color-accent);transform:scaleX(0);transition:transform var(--transition)}.header__nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--color-accent)}.header__nav-link[data-astro-cid-3ef6ksr2]:hover:after,.header__nav-link[data-astro-cid-3ef6ksr2].is-active:after{transform:scaleX(1)}.header__nav-link[data-astro-cid-3ef6ksr2].is-active{color:var(--color-accent);font-weight:700}.header__cta[data-astro-cid-3ef6ksr2]{display:none;flex-shrink:0;font-size:var(--text-sm);padding:var(--space-2) var(--space-6)}@media (min-width: 1024px){.header__cta[data-astro-cid-3ef6ksr2]{display:inline-flex}}.header__hamburger[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;width:36px;height:36px;background:none;border:none;cursor:pointer;padding:4px}@media (min-width: 1024px){.header__hamburger[data-astro-cid-3ef6ksr2]{display:none}}.header__hamburger-bar[data-astro-cid-3ef6ksr2]{display:block;height:2px;background-color:var(--color-text);border-radius:2px;transition:var(--transition)}.mobile-menu[data-astro-cid-3ef6ksr2]{display:none;background-color:var(--color-white);border-top:1px solid var(--color-border-light)}.mobile-menu[data-astro-cid-3ef6ksr2].is-open{display:block}.mobile-menu__list[data-astro-cid-3ef6ksr2]{padding:var(--space-4) 0}.mobile-menu__link[data-astro-cid-3ef6ksr2],.mobile-menu__cta[data-astro-cid-3ef6ksr2]{display:block;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:500;color:var(--color-text);border-bottom:1px solid var(--color-border-light);transition:background-color var(--transition)}.mobile-menu__link[data-astro-cid-3ef6ksr2]:hover{background-color:var(--color-bg-light);color:var(--color-accent)}.mobile-menu__cta[data-astro-cid-3ef6ksr2]{margin:var(--space-4) var(--space-6);border-radius:var(--radius-sm);background-color:var(--color-accent);color:var(--color-white);text-align:center;border-bottom:none}.mobile-menu__cta[data-astro-cid-3ef6ksr2]:hover{background-color:var(--color-accent-dark)}.footer[data-astro-cid-sz7xmlte]{background-color:var(--color-primary-dark);color:#ffffffd9;padding-top:var(--space-16)}.footer__grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1fr;gap:var(--space-10)}@media (min-width: 768px){.footer__grid[data-astro-cid-sz7xmlte]{grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-8)}}.footer__logo[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:baseline;gap:4px;margin-bottom:var(--space-3)}.footer__logo-mark[data-astro-cid-sz7xmlte]{font-family:var(--font-en);font-size:1.5rem;font-weight:700;color:var(--color-white);letter-spacing:.05em}.footer__logo-text[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);font-weight:700;color:#ffffffe6}.footer__tagline[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:#fff9;margin-bottom:var(--space-4)}.footer__address[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);line-height:1.8;font-style:normal;color:#ffffffb3}.footer__address[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:#ffffffd9;transition:color var(--transition)}.footer__address[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-white)}.footer__nav-heading[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;margin-bottom:var(--space-4)}.footer__nav-list[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-3)}.footer__nav-list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:#ffffffbf;transition:color var(--transition)}.footer__nav-list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-white)}.footer__tel[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-family:var(--font-en);font-size:var(--text-xl);font-weight:700;color:var(--color-white);display:block;margin-bottom:var(--space-1)}.footer__hours[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);color:#ffffff8c;margin-bottom:var(--space-4)}.footer__contact-btn[data-astro-cid-sz7xmlte]{display:inline-block;font-size:var(--text-sm);font-weight:700;color:var(--color-white);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);transition:background-color var(--transition)}.footer__contact-btn[data-astro-cid-sz7xmlte]:hover{background-color:#ffffff1a}.footer__bottom[data-astro-cid-sz7xmlte]{margin-top:var(--space-12);padding-block:var(--space-6);border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer__copy[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);color:#fff6}
