/* CONTACT：暗い部屋に、小さくなったプリズム。主役は言葉と2つの窓口 */
body.contact{min-height:100svh}
.c-scene{position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--night) url(../media/room-pc.webp) center/cover no-repeat}
.c-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,8,11,.82) 0%,rgba(6,8,11,.55) 42%,rgba(6,8,11,.1) 75%)}
.c-prism,.c-edge{position:absolute;right:2vw;top:16vh;width:min(52vw,820px);height:auto;transform-origin:60% 50%;mix-blend-mode:screen}
.c-prism{opacity:.92;filter:brightness(.92);animation:c-float 9s ease-in-out infinite}
.c-edge{opacity:0;z-index:1;animation:c-float 9s ease-in-out infinite;
  -webkit-mask-image:linear-gradient(105deg,transparent 0%,#000 30%,#000 70%,transparent 100%);mask-image:linear-gradient(105deg,transparent 0%,#000 30%,#000 70%,transparent 100%);
  -webkit-mask-size:240% 100%;mask-size:240% 100%;-webkit-mask-position:120% 0;mask-position:120% 0;
  transition:opacity .9s var(--ease),-webkit-mask-position 1.4s var(--ease),mask-position 1.4s var(--ease)}
.c-scene.is-near .c-edge{opacity:.85;-webkit-mask-position:-20% 0;mask-position:-20% 0}
.c-scene.is-near .c-prism{filter:brightness(.7)}
.c-scene .c-prism{transition:filter .9s var(--ease)}
@keyframes c-float{0%,100%{translate:0 0}50%{translate:0 -8px}}

.c-main{position:relative;z-index:2;padding:clamp(130px,20vh,210px) var(--gut) 96px;max-width:760px}
.c-main .eyebrow{color:var(--white-2)}
.c-main h1{margin-top:22px;font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.2vw,50px);line-height:1.55;letter-spacing:.04em;text-shadow:0 1px 18px rgba(0,0,0,.5)}
.c-main h1 span{display:block}
.c-main .lead{margin-top:24px;max-width:30em;font-size:clamp(13.5px,1.05vw,15.5px);color:var(--white-2);letter-spacing:.06em}

.c-ways{margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:620px}
.c-way{position:relative;display:grid;gap:4px;padding:22px 52px 22px 24px;border:1px solid rgba(214,224,240,.24);border-radius:4px;background:linear-gradient(135deg,rgba(233,237,242,.07),rgba(233,237,242,.02));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .35s,background .35s,transform .35s var(--ease)}
.c-way::before{content:"";position:absolute;inset:-1px;border-radius:4px;padding:1px;background:linear-gradient(115deg,transparent 30%,rgba(232,238,248,.8) 50%,transparent 70%) 120% 0/240% 100% no-repeat;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s,background-position 1.2s var(--ease)}
.c-way:hover,.c-way:focus-visible{border-color:rgba(232,238,248,.5);background:linear-gradient(135deg,rgba(233,237,242,.11),rgba(233,237,242,.03));transform:translateY(-2px)}
.c-way:hover::before,.c-way:focus-visible::before{opacity:1;background-position:-20% 0}
.c-way .k{font-family:var(--latin);font-size:10.5px;letter-spacing:.26em;color:var(--white-3)}
.c-way .t{font-size:16px;letter-spacing:.08em}
.c-way .d{font-size:12px;color:var(--white-2);letter-spacing:.04em}
.c-way .ic{position:absolute;right:22px;top:24px;color:var(--white-2)}

.c-ask{margin-top:56px;padding-top:28px;border-top:1px solid rgba(214,224,240,.16);max-width:560px}
.c-ask h2{font-size:13px;letter-spacing:.14em;font-weight:500;color:var(--white)}
.c-ask p{margin-top:10px;font-size:13.5px;color:var(--white-2)}
.c-ask .note{font-size:12px;color:var(--white-3)}
.contact .site-footer{background:rgba(6,8,11,.7)}

@media (max-width:760px){
  .c-scene{background-image:url(../media/room-phone.webp);background-position:50% 30%}
  .c-scene::after{background:linear-gradient(180deg,rgba(6,8,11,.25) 0%,rgba(6,8,11,.6) 34%,rgba(6,8,11,.88) 60%)}
  .c-prism,.c-edge{right:-6vw;top:9vh;width:86vw}
  .c-main{padding:clamp(240px,40vh,330px) 20px 72px}
  .c-ways{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.c-prism,.c-edge{animation:none}}
