@charset "UTF-8";@charset "UTF-8";*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth;width:100%;max-width:100%;overflow-x:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;line-height:1.6;color:#1f2937;background-color:#ffffff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed;width:100%;max-width:100%;overflow-x:hidden;margin:0;padding:0}@media (max-width:768px){body{padding-bottom:80px!important}}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.25;color:inherit}p{margin:0}ul,ol{list-style:none;margin:0;padding:0}a{color:inherit;text-decoration:none;background-color:transparent}a:hover,a:focus{text-decoration:underline}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #2563eb;outline-offset:2px}button{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background-color:transparent;border:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}button:disabled{cursor:not-allowed;opacity:0.6}input,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}img,svg,video,canvas,audio,iframe,embed,object{display:block;max-width:100%;height:auto}img{border-style:none}table{border-collapse:collapse;border-spacing:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast:high){body{background-color:#ffffff;color:#000000}}.focus-visible:focus{outline:3px solid #2563eb;outline-offset:2px}::selection{background-color:#bfdbfe;color:#1e40af}::-moz-selection{background-color:#bfdbfe;color:#1e40af}@charset "UTF-8";.nav{position:fixed;top:0;left:0;right:0;background-color:#ffffff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);z-index:1020;height:4rem}@media (max-width:767px){.nav{display:none}}.nav__container{max-width:1280px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;height:100%}@media (min-width:1024px){.nav__container{padding:0 1.5rem}}.nav__brand{flex-shrink:0}.nav__logo{display:flex;align-items:center;font-size:1.25rem;font-weight:700;color:#2563eb;text-decoration:none;transition:color 150ms ease-in-out}.nav__logo:focus{outline:2px solid #2563eb;outline-offset:2px}.nav__logo:focus:not(:focus-visible){outline:none}.nav__logo:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.nav__logo:hover{color:#1d4ed8;text-decoration:none}.nav__logo-text{margin-left:0.5rem}.nav__menu{display:flex;align-items:center;gap:2rem;margin:0;padding:0;list-style:none}.nav__item{position:relative}.nav__link{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;font-size:1rem;font-weight:500;color:#4b5563;text-decoration:none;border-radius:0.375rem;transition:all 150ms ease-in-out}.nav__link:focus{outline:2px solid #2563eb;outline-offset:2px}.nav__link:focus:not(:focus-visible){outline:none}.nav__link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.nav__link:hover{color:#2563eb;background-color:#eff6ff;text-decoration:none}.nav__link--active{color:#2563eb;background-color:#eff6ff}.nav__link-icon{font-size:1.125rem}.nav__link-text{font-size:0.875rem;font-weight:500}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background-color:#ffffff;border-top:1px solid #e2e8f0;box-shadow:0 -1px 3px 0 rgba(0,0,0,0.1);z-index:1020;height:4rem}@media (min-width:768px){.bottom-nav{display:none}}.bottom-nav__menu{display:flex;align-items:center;justify-content:space-around;height:100%;margin:0;padding:0 0.5rem;list-style:none;width:calc(100vw - 1px)}.bottom-nav__item{flex:1;display:flex;justify-content:center;max-width:25%}.bottom-nav__link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.25rem;width:100%;padding:0.5rem;color:#6b7280;text-decoration:none;border-radius:0.5rem;transition:all 150ms ease-in-out;min-height:3rem;position:relative}.bottom-nav__link:focus{outline:2px solid #2563eb;outline-offset:2px}.bottom-nav__link:focus:not(:focus-visible){outline:none}.bottom-nav__link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.bottom-nav__link:hover{color:#2563eb;background-color:#eff6ff;text-decoration:none}.bottom-nav__link--active{color:#2563eb}.bottom-nav__link--active::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:2rem;height:2px;background-color:#2563eb;border-radius:9999px}.bottom-nav__icon{font-size:1.25rem;line-height:1}.bottom-nav__label{font-size:0.75rem;font-weight:500;line-height:1.25;text-align:center}@media (min-width:768px){.main{margin-top:4rem}}@media (max-width:767px){.main{margin-bottom:4rem}}.skip-link{position:absolute;top:-40px;left:6px;background:#2563eb;color:#ffffff;padding:0.5rem 1rem;border-radius:0.375rem;text-decoration:none;font-weight:500;z-index:1050;transition:top 150ms ease-in-out}.skip-link:focus{top:6px}@media (prefers-contrast:high){.nav{border-bottom-width:2px;border-bottom-color:#1f2937}.bottom-nav{border-top-width:2px;border-top-color:#1f2937}.nav__link--active,.bottom-nav__link--active{background-color:#1f2937;color:#ffffff}}@media (prefers-reduced-motion:reduce){.nav__link,.bottom-nav__link,.nav__logo{transition:none}.bottom-nav__link--active::before{transition:none}}.nav--loading .nav__link,.nav--loading .bottom-nav__link{pointer-events:none;opacity:0.6}.nav--offline::after{content:'オフライン';position:absolute;top:100%;left:0;right:0;background-color:#fef3c7;color:#92400e;text-align:center;padding:0.25rem;font-size:0.875rem;font-weight:500}@media (min-width:768px) and (max-width:1023px){.nav__menu{gap:1rem}.nav__link{padding:0.5rem 0.75rem;font-size:0.875rem}.nav__link-text{display:none}}@media (min-width:1280px){.nav__container{padding:0 2rem}.nav__menu{gap:3rem}.nav__link{padding:1rem 1.5rem;font-size:1.125rem}.nav__link-text{font-size:1rem}}@media (max-width:360px){.bottom-nav__label{font-size:10px}.bottom-nav__icon{font-size:1.125rem}}.footer{background-color:var(--color-bg-secondary,#f8f9fa);padding:2rem 1rem 5rem;text-align:center;border-top:1px solid var(--color-border,#e0e0e0)}@media (min-width:768px){.footer{padding:2rem 1rem}}.footer__nav{margin-bottom:1rem;font-size:0.875rem}@media (min-width:768px){.footer__nav{font-size:1rem}}.footer__link{color:var(--color-text-secondary,#666);text-decoration:none;transition:color 0.2s ease}.footer__link:hover,.footer__link:focus{color:var(--color-primary,#007bff);text-decoration:underline}.footer__link:focus-visible{outline:2px solid var(--color-primary,#007bff);outline-offset:2px;border-radius:2px}.footer__separator{margin:0 0.5rem;color:var(--color-text-tertiary,#999)}@media (min-width:768px){.footer__separator{margin:0 1rem}}.footer__copyright{margin:0;font-size:0.75rem;color:var(--color-text-tertiary,#999)}@media (min-width:768px){.footer__copyright{font-size:0.875rem}}html,body{height:100%;margin:0;background:#fff;color:#222;font-family:Meiryo,"Hiragino Kaku Gothic ProN",-apple-system,Arial,sans-serif;line-height:1.7}.legal-page{max-width:980px;margin:28px auto;padding:20px}.legal-page__title{font-size:1.8rem;margin-bottom:12px;font-weight:700;color:#222}.legal-page__updated{font-size:0.9rem;color:#6b6b6b;margin-bottom:24px}.legal-page__important{background:#fff3cd;border-left:4px solid #ff9800;padding:16px;margin:24px 0;border-radius:4px}.legal-page__important p{margin:0;line-height:1.7}.legal-page__important-title{font-weight:700;color:#ff6f00;margin-bottom:8px;font-size:1.1rem}.legal-page__content{border-top:1px solid #eee;padding-top:20px}.legal-page__section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #eee}.legal-page__section:last-child{border-bottom:none}.legal-page__section--important{background:#fff7dc;padding:20px;border-radius:4px;border:1px solid #eee;border-bottom:1px solid #eee}.legal-page__term{font-weight:700;margin-top:16px;margin-bottom:8px;font-size:1.05rem;color:#222}.legal-page__desc{margin:8px 0 16px 0;line-height:1.8;color:#222}.legal-page__desc ul{margin:8px 0;padding-left:24px}.legal-page__desc ul li{margin:6px 0;line-height:1.7}.legal-page__subtitle{font-size:1.4rem;font-weight:700;margin-bottom:12px;color:#222;border-bottom:2px solid #0b67c2;padding-bottom:8px}.legal-page__subheading{font-size:1.1rem;font-weight:700;margin-top:20px;margin-bottom:10px;color:#222}.legal-page__note{font-size:0.9rem;color:#6b6b6b;display:block;margin-top:6px;line-height:1.6}.legal-page__small{font-size:0.95rem;color:#222}.legal-page__highlight{background:#e3f2fd;padding:16px;border-radius:4px;margin:16px 0;border-left:3px solid #0b67c2}.legal-page__highlight ul{margin:8px 0;padding-left:20px}.legal-page__highlight ul li{margin:4px 0}.legal-page__footer{margin-top:40px;padding-top:24px;border-top:2px solid #eee;font-size:0.9rem;color:#6b6b6b;line-height:1.7}.legal-page__footer p{margin:8px 0}a{color:#0b67c2;text-decoration:none;transition:all 0.2s ease}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid #0b67c2;outline-offset:2px;border-radius:2px}strong{color:#d32f2f;font-weight:700}@media (max-width:768px){.legal-page{margin:18px 12px;padding:12px}.legal-page__title{font-size:1.5rem}.legal-page__subtitle{font-size:1.2rem}.legal-page__subheading{font-size:1rem}.legal-page__important{padding:12px}.legal-page__highlight{padding:12px}.legal-page__section--important{padding:16px}}@media print{.legal-page{max-width:none;margin:0;padding:20px}.legal-page__important{border:2px solid #ff9800;background:#fff}.legal-page__highlight{border:1px solid #eee;background:#fff}a{color:#222;text-decoration:underline}a:after{content:" (" attr(href) ")";font-size:0.8em;color:#6b6b6b}}