.contact-page{min-height:100svh;color:var(--hero-ink);background:#fff;flex-direction:column;display:flex}.contact-page .contact-main h1{color:var(--theme-ink);text-align:center}.contact-page{--contact-title-offset:80px;--contact-heading-inset:32px}.contact-page main.contact-main{padding-top:calc(var(--fixed-header-height) + var(--contact-title-offset));background:var(--white);font:400 16px/1.8 var(--font-body);flex:1;padding-bottom:0}.contact-page .contact-page-heading{padding-block:var(--contact-heading-inset) 64px;margin-bottom:32px}.contact-page .contact-page-heading h1{font:800 clamp(32px, 4vw, 44px)/1.5 var(--font-display);letter-spacing:normal;margin-bottom:0}.contact-page .contact-page-heading .page-title-ja{font:500 16px/1.8 var(--font-body);color:oklch(from var(--theme-ink) l c h / .75);justify-content:center;align-items:center;gap:12px;margin-top:0;display:flex}.contact-page .contact-page-heading .page-title-ja:before,.contact-page .contact-page-heading .page-title-ja:after{content:"";background:currentColor;flex:none;width:40px;height:1px}.contact-page .contact-layout{width:calc(100% + -1*max(70.4px,110% - 1232px));margin:0 auto calc(var(--contact-title-offset) + var(--contact-heading-inset));color:var(--hero-ink);background:#f7f6f4;padding:32px}.contact-page .contact-introduction{text-align:center;text-wrap:wrap;margin-bottom:32px;font-size:16px}.contact-page .contact-lead{font:800 28px/1.5 var(--font-body);margin-bottom:8px}.contact-page .contact-lead>span{color:#c72c68}.contact-page .contact-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.contact-page .contact-method{border:0;border-bottom:3px solid var(--theme-ink);background:var(--white);min-width:0;min-height:184px;color:var(--theme-ink);grid-template-columns:minmax(0,1fr) 56px;align-content:center;column-gap:16px;padding:32px 24px;text-decoration:none;display:grid}.contact-page .contact-method h2{min-width:0;color:var(--hero-ink);font:800 16px/1.5 var(--font-body);letter-spacing:0;grid-area:1/1;align-items:center;gap:6px;margin:0 0 8px;display:flex}.contact-page .contact-method h2 img{object-fit:contain;flex:none;width:22px;height:22px;display:block}.contact-page .contact-method-arrow{background:var(--theme-ink);width:56px;height:56px;color:var(--white);pointer-events:none;border-radius:50%;grid-area:1/2/span 3;align-self:center;place-items:center;display:grid}.contact-page .contact-address{min-width:0;font:700 24px/1.4 var(--font-display);color:var(--theme-ink);overflow-wrap:normal;grid-area:2/1}.contact-page .contact-address.numeric{font-size:32px}.contact-page .contact-address>span{max-width:100%;display:inline-block}.contact-page .contact-hours{color:var(--hero-ink);grid-area:3/1;margin-top:8px;font-size:14px}.contact-page .contact-privacy{text-align:center;margin-top:24px;font-size:14px}.contact-page .contact-privacy a{max-width:100%;min-height:44px;color:var(--theme-ink);text-underline-offset:4px;align-items:center;padding:8px 12px;text-decoration:underline 1px;display:inline-flex}.contact-page .contact-method:hover,.contact-page .contact-method:active{background:var(--yellow);color:var(--theme-ink);text-decoration:none}.contact-page .contact-privacy a:hover,.contact-page .contact-privacy a:active{text-decoration-thickness:2px}.contact-page .contact-method:hover h2,.contact-page .contact-method:active h2,.contact-page .contact-method:hover .contact-hours,.contact-page .contact-method:active .contact-hours{color:var(--theme-ink)}.contact-page .contact-method:focus-visible,.contact-page .contact-privacy a:focus-visible{outline:3px solid var(--theme-ink);outline-offset:4px}.contact-page .contact-method-arrow img{object-fit:contain;filter:brightness(0)invert();width:24px;height:24px;display:block}@media (width<=960px){.contact-page .contact-methods{grid-template-columns:minmax(0,1fr)}}@media (width<=800px){.contact-page{--contact-title-offset:48px}.contact-page main.contact-main{font-size:15px}.contact-page .contact-page-heading{padding-bottom:40px}.contact-page .contact-layout{width:calc(100% - 40px);padding:32px 16px}.contact-page .contact-lead{font-size:clamp(22px,6vw,24px)}.contact-page .contact-methods{gap:20px}.contact-page .contact-method{grid-template-columns:minmax(0,1fr) 44px;column-gap:8px;min-height:164px;padding:24px 12px}.contact-page .contact-method h2{grid-column:1/-1}.contact-page .contact-method-arrow{grid-row:2/span 2;width:44px;height:44px}.contact-page .contact-address{font-size:clamp(18px,5vw,20px)}.contact-page .contact-address.numeric{font-size:clamp(26px,7.2vw,30px)}}@media (width<=360px){.contact-page .contact-address{grid-column:1/-1}.contact-page .contact-method-arrow{grid-row:3;margin-top:8px}}
