:root{--color-brand: #0d9e7a;--color-brand-dark: #0a7d61;--color-brand-light: #e8f5f0;--color-bg: #f5f5f0;--color-bg-white: #ffffff;--color-bg-dark: #1a1a1a;--color-text: #1a1a1a;--color-text-secondary: #666666;--color-text-muted: #999999;--color-border: #e0e0e0;--font-ja: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;--font-en: "Inter", sans-serif;--max-width: 1100px;--side-padding: 52px}@media(max-width:768px){:root{--side-padding: 24px}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-ja);font-size:15px;line-height:1.8;color:var(--color-text);background-color:var(--color-bg);letter-spacing:.02em;font-feature-settings:"palt"}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}button{background:none;border:none;cursor:pointer;font:inherit;color:inherit}input,textarea,select{font:inherit;color:inherit}.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#f5f5f0eb;backdrop-filter:blur(12px);height:80px;display:flex;align-items:center}.header__inner{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--side-padding);display:flex;align-items:center;justify-content:space-between}.header__logo{font-size:18px;font-weight:700;letter-spacing:.04em;color:var(--color-text)}.header__nav{display:flex;align-items:center;gap:36px}@media(max-width:768px){.header__nav{display:none}}.header__nav-item{font-size:12px;font-weight:500;letter-spacing:.06em;color:var(--color-text-secondary);transition:color .3s;position:relative}.header__nav-item:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--color-brand);transition:width .3s}.header__nav-item:hover{color:var(--color-text)}.header__nav-item:hover:after{width:100%}.header__nav-item.is-active{color:var(--color-text)}.header__nav-item.is-active:after{width:100%}.header__menu-btn{display:none;padding:8px}@media(max-width:768px){.header__menu-btn{display:flex;align-items:center;justify-content:center}}.header__menu-icon{display:block;width:20px;height:16px;position:relative;flex-shrink:0}.header__menu-icon span{display:block;position:absolute;left:0;width:100%;height:2px;background:var(--color-text);transition:all .3s ease}.header__menu-icon span:nth-child(1){top:0}.header__menu-icon span:nth-child(2){top:7px}.header__menu-icon span:nth-child(3){top:14px}.is-active .header__menu-icon span:nth-child(1){top:7px;transform:rotate(45deg)}.is-active .header__menu-icon span:nth-child(2){opacity:0}.is-active .header__menu-icon span:nth-child(3){top:7px;transform:rotate(-45deg)}.header__mobile-nav{position:absolute;top:80px;left:0;right:0;background:var(--color-bg);border-top:1px solid var(--color-border);padding:0 var(--side-padding);max-height:0;overflow:hidden;opacity:0;transition:max-height .4s ease,opacity .3s ease,padding .4s ease}.header__mobile-nav.is-open{max-height:300px;opacity:1;padding:32px var(--side-padding)}.header__mobile-nav ul{display:flex;flex-direction:column;gap:24px}.header__mobile-nav a{font-size:13px;color:var(--color-text-secondary);display:block;transform:translateY(-8px);opacity:0;transition:transform .3s ease,opacity .3s ease}.header__mobile-nav.is-open a{transform:translateY(0);opacity:1}.header__mobile-nav li:nth-child(1) a{transition-delay:.05s}.header__mobile-nav li:nth-child(2) a{transition-delay:.1s}.header__mobile-nav li:nth-child(3) a{transition-delay:.15s}.header__mobile-nav li:nth-child(4) a{transition-delay:.2s}.hero{padding:120px var(--side-padding) 60px;display:flex;align-items:flex-start}.hero__inner{max-width:var(--max-width);margin:0 auto;width:100%}.hero__label{font-family:var(--font-en);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--color-brand);text-transform:uppercase}.hero__title{margin-top:24px;font-size:clamp(32px,5vw,52px);font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--color-text)}.hero__lead{margin-top:32px;max-width:480px;font-size:14px;line-height:2.2;color:var(--color-text-secondary)}.hero__actions{margin-top:48px;display:flex;flex-wrap:wrap;gap:16px}.hero--sm-title .hero__title{font-size:clamp(24px,4vw,36px)}.hero--with-bg{min-height:calc(100vh - 80px);padding:160px var(--side-padding) 80px;align-items:flex-end}@media(max-width:768px){.hero--with-bg{min-height:auto;padding:120px var(--side-padding) 60px;align-items:flex-start}}.hero--with-bg{background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.hero--with-bg:before{content:"";position:absolute;inset:0;background:#00000073}.hero--with-bg .hero__inner{position:relative;z-index:1}.hero--with-bg .hero__label,.hero--with-bg .hero__title{color:#fff}.hero--with-bg .hero__lead{color:#ffffffd9}.section{padding:0 var(--side-padding)}.section__inner{max-width:var(--max-width);margin:0 auto}.content-section{padding:160px var(--side-padding)}@media(max-width:768px){.content-section{padding:100px var(--side-padding)}}.content-section__inner{max-width:var(--max-width);margin:0 auto}.content-section__inner--sm{max-width:600px}.content-section__inner--md{max-width:720px}.content-section__inner--lg{max-width:840px}.content-section--compact{padding:80px var(--side-padding) 120px}.content-section--alt{background:var(--color-bg-white)}.content-section--dark{background:var(--color-bg-dark);color:#fff}.section-label{font-family:var(--font-en);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--color-brand);text-transform:uppercase}.section-title{margin-top:12px;font-size:clamp(22px,3vw,28px);font-weight:700;line-height:1.6;letter-spacing:0}.section-lead{margin-top:28px;font-size:14px;line-height:2.2;color:var(--color-text-secondary);max-width:600px}.btn{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.06em;padding:14px 32px;border-radius:2px;transition:all .3s}.btn--primary{background:var(--color-brand);color:#fff}.btn--primary:hover{background:var(--color-brand-dark)}.btn--outline{border:1px solid var(--color-border);color:var(--color-text-secondary)}.btn--outline:hover{border-color:var(--color-brand);color:var(--color-brand)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--color-border);border-radius:4px;overflow:hidden}@media(max-width:960px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.grid-4{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:768px){.grid-3{grid-template-columns:1fr}}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:768px){.grid-2{grid-template-columns:1fr}}.card{background:var(--color-bg);padding:40px}.card--lg{padding:48px}.card--white{background:var(--color-bg-white)}.card--bordered{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:4px}.card--accent{background:var(--color-bg-white);border:2px solid var(--color-brand);border-radius:4px}.card__number{font-family:var(--font-en);font-size:12px;font-weight:500;color:var(--color-brand);letter-spacing:.04em}.card__label{font-family:var(--font-en);font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--color-text-muted);text-transform:uppercase}.card__label--brand{color:var(--color-brand)}.card__title{margin-top:12px;font-size:15px;font-weight:700;line-height:1.6}.card__title--md{font-size:17px}.card__text{margin-top:12px;font-size:13px;line-height:2;color:var(--color-text-secondary)}.two-col{display:flex;align-items:flex-start;gap:80px}@media(max-width:768px){.two-col{flex-direction:column;gap:32px}}.two-col__left{flex:0 0 45%}.two-col__right{flex:1}.steps{display:flex;flex-direction:column;gap:56px}.steps__item{display:flex;gap:24px;align-items:flex-start}.steps__number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--color-brand-light);color:var(--color-brand);font-family:var(--font-en);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}.steps__content{flex:1}.steps__title{font-size:15px;font-weight:700}.steps__text{margin-top:8px;font-size:14px;line-height:2.2;color:var(--color-text-secondary)}.divider{max-width:var(--max-width);margin:0 auto;padding:0 var(--side-padding)}.divider hr{border:none;border-top:1px solid var(--color-border)}.story{display:flex;flex-direction:column;gap:40px;font-size:15px;line-height:2.2;color:var(--color-text-secondary)}.story__emphasis{color:var(--color-text);font-weight:500;font-size:17px}.blockquote{border-left:2px solid var(--color-brand);padding-left:24px;font-weight:500;color:var(--color-text)}.info-table__row{display:flex;gap:32px;padding:28px 0;border-bottom:1px solid var(--color-border)}@media(max-width:520px){.info-table__row{flex-direction:column;gap:4px}}.info-table__label{flex:0 0 140px;font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--color-text-muted)}.info-table__value{font-size:15px}.form{max-width:520px}.form__group{margin-bottom:40px}.form__label{display:block;font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:8px}.form__label .required{color:var(--color-brand);margin-left:4px}.form__input,.form__textarea,.form__select{width:100%;border:none;border-bottom:1px solid var(--color-border);background:transparent;padding:12px 0;font-size:15px;transition:border-color .3s;outline:none}.form__input:focus,.form__textarea:focus,.form__select:focus{border-color:var(--color-brand)}.form__textarea{resize:none}.form__select{appearance:none;border-radius:0}.footer{background:var(--color-bg-dark);color:#ffffff80;padding:80px var(--side-padding)}.footer__inner{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:40px}@media(max-width:768px){.footer__inner{flex-direction:column}}.footer__brand{font-size:18px;font-weight:700;color:#fff}.footer__tagline{margin-top:12px;font-size:12px}.footer__nav{display:flex;gap:32px;font-size:12px}.footer__nav a{transition:color .3s}.footer__nav a:hover{color:#fffc}.footer__bottom{margin-top:60px;max-width:var(--max-width);margin-left:auto;margin-right:auto;display:flex;justify-content:space-between;align-items:center}@media(max-width:768px){.footer__bottom{flex-direction:column;gap:12px;align-items:flex-start}}.footer__privacy{font-size:11px;color:#fff6;transition:color .3s}.footer__privacy:hover{color:#ffffffb3}.footer__copyright{font-size:11px;color:#ffffff40}.text-center{text-align:center}.text-narrow{max-width:600px;margin-left:auto;margin-right:auto}.text-brand{color:var(--color-brand)}.text-muted{color:var(--color-text-secondary)}.text-white-muted{color:#fff9}.mx-auto{margin-left:auto;margin-right:auto}.mt-s{margin-top:16px}.mt-m{margin-top:32px}.mt-l{margin-top:48px}.mt-xl{margin-top:64px}.page-top{padding-top:80px}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
