@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-700-normal-DajfzrDU.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-latin-700-normal-O25Qpphb.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-400-normal-DD2KOZkl.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-400-normal-CVFrM67f.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-500-normal-CyAY5ZLS.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-500-normal-DkJXBcIH.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-600-normal-C2atO-64.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-600-normal-FNmA3REe.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-700-normal-SLG_-a_c.woff2) format("woff2"),url(/assets/fonts/cormorant-garamond/cormorant-garamond-cyrillic-700-normal-D3uyJ5DH.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/inter-tight/inter-tight-latin-400-normal-iW8qmuJY.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-latin-400-normal-BLrFJfvD.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/inter-tight/inter-tight-latin-500-normal-BFXNXuvF.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-latin-500-normal-pobXraBK.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/inter-tight/inter-tight-latin-600-normal-BgSTtRxb.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-latin-600-normal-D7bG6gX1.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/inter-tight/inter-tight-latin-700-normal-BZKd_v_8.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-latin-700-normal-DvYAVZQd.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/inter-tight/inter-tight-cyrillic-400-normal-G7BuwYWK.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-cyrillic-400-normal-DPRou3KO.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/inter-tight/inter-tight-cyrillic-500-normal-5ykfyGeh.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-cyrillic-500-normal-CRXauZSq.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/inter-tight/inter-tight-cyrillic-600-normal-BERwQ0yl.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-cyrillic-600-normal-BeTasGgk.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/inter-tight/inter-tight-cyrillic-700-normal-DtWWjp29.woff2) format("woff2"),url(/assets/fonts/inter-tight/inter-tight-cyrillic-700-normal-DDZiLR3d.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(/assets/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal-D3wTyLJW.woff) format("woff")}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-400-normal-CU6-FyG8.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-400-normal-DOSxJtYw.woff) format("woff");unicode-range:U+2103,U+5049,U+52b1,U+5320,U+5553,U+572d,U+58c7,U+5b5d,U+5bc2,U+5de3,U+5e61,U+5f80,U+61a9,U+67d0,U+67f4,U+6c88,U+6ca1,U+6ce5,U+6d78,U+6e9c,U+6f54,U+731b,U+73b2,U+74a7,U+74f6,U+75e9,U+7b20,U+7c8b,U+7f72,U+809d,U+8108,U+82b3,U+82bd,U+84b8,U+84c4,U+88c2,U+8ae6,U+8ef8,U+902e,U+9065,U+9326,U+935b,U+938c,U+9676,U+9694,U+96f7,U+9ed9,U+ff48,U+ff4c,U+ff81}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-400-normal-D-oAfKKM.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-400-normal-DAE2jvF6.woff) format("woff");unicode-range:U+4e03,U+4f38,U+50b7,U+5264,U+5348,U+5371,U+585a,U+58ca,U+5951,U+59b9,U+59d4,U+5b98,U+5f8b,U+6388,U+64cd,U+65e7,U+6803,U+6b6f,U+6d66,U+6e0b,U+6ecb,U+6fc3,U+72ac,U+773c,U+77e2,U+7968,U+7a74,U+7dba,U+7dd1,U+7e3e,U+808c,U+811a,U+8179,U+8239,U+8584,U+8a0e,U+8a72,U+8b66,U+8c46,U+8f29,U+90a3,U+9234,U+96f0,U+9769,U+9774,U+9aa8,U+ff26,U+ff28,U+ff9e-ff9f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-400-normal-Cct-G0aG.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-400-normal-w4gF65PE.woff) format("woff");unicode-range:U+4e08,U+4f9d,U+5012,U+514d,U+51b7,U+5275,U+53ca,U+53f8,U+5584,U+57fc,U+5b9d,U+5bfa,U+5c3e,U+5f01,U+5fb4,U+5fd7,U+606f,U+62e1,U+6563,U+6674,U+6cb3,U+6d3e,U+6d74,U+6e1b,U+6e2f,U+718a,U+7247,U+79d8,U+7d14,U+7d66,U+7d71,U+7df4,U+7e41,U+80cc,U+8155,U+83d3,U+8a95,U+8ab2,U+8ad6,U+8ca1,U+9000,U+9006,U+9678,U+97d3,U+9808,U+98ef,U+9a5a,U+9b45,U+ff23,U+ff30}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-400-normal-By9D8JAT.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-400-normal-ChKENMdu.woff) format("woff");unicode-range:U+500d,U+5074,U+50cd,U+5175,U+52e2,U+5352,U+5354,U+53f2,U+5409,U+56fa,U+5a18,U+5b88,U+5bdd,U+5ca9,U+5f92,U+5fa9,U+60a9,U+623f,U+6483,U+653f,U+666f,U+66ae,U+66f2,U+6a21,U+6b66,U+6bcd,U+6d5c,U+796d,U+7a4d,U+7aef,U+7b56,U+7b97,U+7c4d,U+7e04,U+7fa9,U+8377,U+83dc,U+83ef,U+8535,U+8863,U+88cf,U+88dc,U+8907,U+8acb,U+90ce,U+91dd,U+ff0b,U+ff0d,U+ff19,U+ff65}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-400-normal-CeHwduxc.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-400-normal-7MdnoojC.woff) format("woff");unicode-range:U+30f6,U+50ac,U+5178,U+51e6,U+5224,U+52dd,U+5883,U+5897,U+590f,U+5a5a,U+5bb3,U+5c65,U+5e03,U+5e2b,U+5e30,U+5eb7,U+6271,U+63f4,U+64ae,U+6574,U+672b,U+679a,U+6a29-6a2a,U+6ca2,U+6cc1,U+6d0b,U+713c,U+74b0,U+7981,U+7a0b,U+7bc0,U+7d1a,U+7d61,U+7fd2,U+822c,U+8996,U+89aa,U+8cac,U+8cbb,U+8d77,U+8def,U+9020,U+9152,U+9244,U+9662,U+967a,U+96e3,U+9759,U+ff16}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-400-normal-7K3dzz3-.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-400-normal-BIERoL-V.woff) format("woff");unicode-range:U+266a,U+4f11,U+533a,U+5343,U+534a,U+53cd,U+5404,U+56f3,U+5b57-5b58,U+5bae,U+5c4a,U+5e0c,U+5e2f,U+5eab,U+5f35,U+5f79,U+614b,U+6226,U+629e,U+65c5,U+6625,U+6751,U+6821,U+6b69,U+6b8b,U+6bce,U+6c42,U+706b,U+7c21,U+7cfb,U+805e,U+80b2,U+82b8,U+843d,U+8853,U+88c5,U+8a3c,U+8a66,U+8d8a,U+8fba,U+9069,U+91cf,U+9752,U+975e,U+9999,U+ff0f-ff10,U+ff14-ff15}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-400-normal-DgIqK4xk.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-400-normal-B_1QN5UH.woff) format("woff");unicode-range:U+4e16,U+4e3b,U+4ea4,U+4ee4,U+4f4d,U+4f4f,U+4f55,U+4f9b,U+5317,U+5358,U+53c2,U+53e4,U+548c,U+571f,U+59cb,U+5cf6,U+5e38,U+63a2,U+63b2,U+6559,U+662d,U+679c,U+6c7a,U+72b6,U+7523,U+767d,U+770c,U+7a2e,U+7a3f,U+7a7a,U+7b2c,U+7b49,U+7d20,U+7d42,U+8003,U+8272,U+8a08,U+8aac,U+8cb7,U+8eab,U+8ee2,U+9054-9055,U+90fd,U+914d,U+91cd,U+969b,U+97f3,U+984c,U+ff06}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-400-normal-CkHNY6lI.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-400-normal-DG7PUsYy.woff) format("woff");unicode-range:U+3e,U+3005,U+4e0d,U+4e88,U+4ecb,U+4ee3,U+4ef6,U+4fdd,U+4fe1,U+500b,U+50cf,U+5186,U+5316,U+53d7,U+540c,U+544a,U+54e1,U+5728,U+58f2,U+5973,U+5b89,U+5c71,U+5e02,U+5e97,U+5f15,U+5fc3,U+5fdc,U+601d,U+611b,U+611f,U+671f,U+6728,U+6765,U+683c,U+6b21,U+6ce8,U+6d3b,U+6d77,U+7530,U+7740,U+7acb,U+7d50,U+826f,U+8f09,U+8fbc,U+9001,U+9053,U+91ce,U+9762,U+98df}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-400-normal-CDgpe-7q.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-400-normal-eqRXJLdO.woff) format("woff");unicode-range:U+a9,U+3010-3011,U+30e2,U+4e0b,U+4eca,U+4ed6,U+4ed8,U+4f53,U+4f5c,U+4f7f,U+53d6,U+540d,U+54c1,U+5730,U+5916,U+5b50,U+5c0f,U+5f8c,U+624b,U+6570,U+6587,U+6599,U+691c,U+696d,U+6cd5,U+7269,U+7279,U+7406,U+767a-767b,U+77e5,U+7d04,U+7d22,U+8005,U+80fd,U+81ea,U+8868,U+8981,U+89a7,U+901a,U+9023,U+90e8,U+91d1,U+9332,U+958b,U+96c6,U+9ad8,U+ff1a,U+ff1f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-400-normal-042xiPpk.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-400-normal-Dh-EwzbT.woff) format("woff");unicode-range:U+4e,U+a0,U+3000,U+300c-300d,U+4e00,U+4e0a,U+4e2d,U+4e8b,U+4eba,U+4f1a,U+5165,U+5168,U+5185,U+51fa,U+5206,U+5229,U+524d,U+52d5,U+5408,U+554f,U+5831,U+5834,U+5927,U+5b9a,U+5e74,U+5f0f,U+60c5,U+65b0,U+65b9,U+6642,U+6700,U+672c,U+682a,U+6b63,U+6c17,U+7121,U+751f,U+7528,U+753b,U+76ee,U+793e,U+884c,U+898b,U+8a18,U+9593,U+95a2,U+ff01,U+ff08-ff09}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-500-normal-DXOgOZ9l.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-500-normal-CYAHErgo.woff) format("woff");unicode-range:U+2103,U+5049,U+52b1,U+5320,U+5553,U+572d,U+58c7,U+5b5d,U+5bc2,U+5de3,U+5e61,U+5f80,U+61a9,U+67d0,U+67f4,U+6c88,U+6ca1,U+6ce5,U+6d78,U+6e9c,U+6f54,U+731b,U+73b2,U+74a7,U+74f6,U+75e9,U+7b20,U+7c8b,U+7f72,U+809d,U+8108,U+82b3,U+82bd,U+84b8,U+84c4,U+88c2,U+8ae6,U+8ef8,U+902e,U+9065,U+9326,U+935b,U+938c,U+9676,U+9694,U+96f7,U+9ed9,U+ff48,U+ff4c,U+ff81}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-500-normal-DeiW7mkZ.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-500-normal-BWR2irjX.woff) format("woff");unicode-range:U+4e03,U+4f38,U+50b7,U+5264,U+5348,U+5371,U+585a,U+58ca,U+5951,U+59b9,U+59d4,U+5b98,U+5f8b,U+6388,U+64cd,U+65e7,U+6803,U+6b6f,U+6d66,U+6e0b,U+6ecb,U+6fc3,U+72ac,U+773c,U+77e2,U+7968,U+7a74,U+7dba,U+7dd1,U+7e3e,U+808c,U+811a,U+8179,U+8239,U+8584,U+8a0e,U+8a72,U+8b66,U+8c46,U+8f29,U+90a3,U+9234,U+96f0,U+9769,U+9774,U+9aa8,U+ff26,U+ff28,U+ff9e-ff9f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-500-normal-BZw5tbAv.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-500-normal-B8-LHw-U.woff) format("woff");unicode-range:U+4e08,U+4f9d,U+5012,U+514d,U+51b7,U+5275,U+53ca,U+53f8,U+5584,U+57fc,U+5b9d,U+5bfa,U+5c3e,U+5f01,U+5fb4,U+5fd7,U+606f,U+62e1,U+6563,U+6674,U+6cb3,U+6d3e,U+6d74,U+6e1b,U+6e2f,U+718a,U+7247,U+79d8,U+7d14,U+7d66,U+7d71,U+7df4,U+7e41,U+80cc,U+8155,U+83d3,U+8a95,U+8ab2,U+8ad6,U+8ca1,U+9000,U+9006,U+9678,U+97d3,U+9808,U+98ef,U+9a5a,U+9b45,U+ff23,U+ff30}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-500-normal-BoDD7tOy.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-500-normal-BtY0MIhN.woff) format("woff");unicode-range:U+500d,U+5074,U+50cd,U+5175,U+52e2,U+5352,U+5354,U+53f2,U+5409,U+56fa,U+5a18,U+5b88,U+5bdd,U+5ca9,U+5f92,U+5fa9,U+60a9,U+623f,U+6483,U+653f,U+666f,U+66ae,U+66f2,U+6a21,U+6b66,U+6bcd,U+6d5c,U+796d,U+7a4d,U+7aef,U+7b56,U+7b97,U+7c4d,U+7e04,U+7fa9,U+8377,U+83dc,U+83ef,U+8535,U+8863,U+88cf,U+88dc,U+8907,U+8acb,U+90ce,U+91dd,U+ff0b,U+ff0d,U+ff19,U+ff65}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-500-normal-B8yYF03Q.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-500-normal-BEdIPty1.woff) format("woff");unicode-range:U+30f6,U+50ac,U+5178,U+51e6,U+5224,U+52dd,U+5883,U+5897,U+590f,U+5a5a,U+5bb3,U+5c65,U+5e03,U+5e2b,U+5e30,U+5eb7,U+6271,U+63f4,U+64ae,U+6574,U+672b,U+679a,U+6a29-6a2a,U+6ca2,U+6cc1,U+6d0b,U+713c,U+74b0,U+7981,U+7a0b,U+7bc0,U+7d1a,U+7d61,U+7fd2,U+822c,U+8996,U+89aa,U+8cac,U+8cbb,U+8d77,U+8def,U+9020,U+9152,U+9244,U+9662,U+967a,U+96e3,U+9759,U+ff16}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-500-normal-DB1U4Reh.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-500-normal-D3aX6AXf.woff) format("woff");unicode-range:U+266a,U+4f11,U+533a,U+5343,U+534a,U+53cd,U+5404,U+56f3,U+5b57-5b58,U+5bae,U+5c4a,U+5e0c,U+5e2f,U+5eab,U+5f35,U+5f79,U+614b,U+6226,U+629e,U+65c5,U+6625,U+6751,U+6821,U+6b69,U+6b8b,U+6bce,U+6c42,U+706b,U+7c21,U+7cfb,U+805e,U+80b2,U+82b8,U+843d,U+8853,U+88c5,U+8a3c,U+8a66,U+8d8a,U+8fba,U+9069,U+91cf,U+9752,U+975e,U+9999,U+ff0f-ff10,U+ff14-ff15}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-500-normal-DgRo8EgK.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-500-normal-Cc4i3oN3.woff) format("woff");unicode-range:U+4e16,U+4e3b,U+4ea4,U+4ee4,U+4f4d,U+4f4f,U+4f55,U+4f9b,U+5317,U+5358,U+53c2,U+53e4,U+548c,U+571f,U+59cb,U+5cf6,U+5e38,U+63a2,U+63b2,U+6559,U+662d,U+679c,U+6c7a,U+72b6,U+7523,U+767d,U+770c,U+7a2e,U+7a3f,U+7a7a,U+7b2c,U+7b49,U+7d20,U+7d42,U+8003,U+8272,U+8a08,U+8aac,U+8cb7,U+8eab,U+8ee2,U+9054-9055,U+90fd,U+914d,U+91cd,U+969b,U+97f3,U+984c,U+ff06}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-500-normal-aFs-YYaR.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-500-normal-B-zw5kRR.woff) format("woff");unicode-range:U+3e,U+3005,U+4e0d,U+4e88,U+4ecb,U+4ee3,U+4ef6,U+4fdd,U+4fe1,U+500b,U+50cf,U+5186,U+5316,U+53d7,U+540c,U+544a,U+54e1,U+5728,U+58f2,U+5973,U+5b89,U+5c71,U+5e02,U+5e97,U+5f15,U+5fc3,U+5fdc,U+601d,U+611b,U+611f,U+671f,U+6728,U+6765,U+683c,U+6b21,U+6ce8,U+6d3b,U+6d77,U+7530,U+7740,U+7acb,U+7d50,U+826f,U+8f09,U+8fbc,U+9001,U+9053,U+91ce,U+9762,U+98df}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-500-normal-BEtF19jx.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-500-normal-gAYeAZmN.woff) format("woff");unicode-range:U+a9,U+3010-3011,U+30e2,U+4e0b,U+4eca,U+4ed6,U+4ed8,U+4f53,U+4f5c,U+4f7f,U+53d6,U+540d,U+54c1,U+5730,U+5916,U+5b50,U+5c0f,U+5f8c,U+624b,U+6570,U+6587,U+6599,U+691c,U+696d,U+6cd5,U+7269,U+7279,U+7406,U+767a-767b,U+77e5,U+7d04,U+7d22,U+8005,U+80fd,U+81ea,U+8868,U+8981,U+89a7,U+901a,U+9023,U+90e8,U+91d1,U+9332,U+958b,U+96c6,U+9ad8,U+ff1a,U+ff1f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-500-normal-DBOMaoDe.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-500-normal-Brfz6_iu.woff) format("woff");unicode-range:U+4e,U+a0,U+3000,U+300c-300d,U+4e00,U+4e0a,U+4e2d,U+4e8b,U+4eba,U+4f1a,U+5165,U+5168,U+5185,U+51fa,U+5206,U+5229,U+524d,U+52d5,U+5408,U+554f,U+5831,U+5834,U+5927,U+5b9a,U+5e74,U+5f0f,U+60c5,U+65b0,U+65b9,U+6642,U+6700,U+672c,U+682a,U+6b63,U+6c17,U+7121,U+751f,U+7528,U+753b,U+76ee,U+793e,U+884c,U+898b,U+8a18,U+9593,U+95a2,U+ff01,U+ff08-ff09}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-700-normal-DXps0MMI.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-82-700-normal-BL4pFgK-.woff) format("woff");unicode-range:U+2103,U+5049,U+52b1,U+5320,U+5553,U+572d,U+58c7,U+5b5d,U+5bc2,U+5de3,U+5e61,U+5f80,U+61a9,U+67d0,U+67f4,U+6c88,U+6ca1,U+6ce5,U+6d78,U+6e9c,U+6f54,U+731b,U+73b2,U+74a7,U+74f6,U+75e9,U+7b20,U+7c8b,U+7f72,U+809d,U+8108,U+82b3,U+82bd,U+84b8,U+84c4,U+88c2,U+8ae6,U+8ef8,U+902e,U+9065,U+9326,U+935b,U+938c,U+9676,U+9694,U+96f7,U+9ed9,U+ff48,U+ff4c,U+ff81}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-700-normal-BxxvdEfh.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-96-700-normal-DBEZPAB2.woff) format("woff");unicode-range:U+4e03,U+4f38,U+50b7,U+5264,U+5348,U+5371,U+585a,U+58ca,U+5951,U+59b9,U+59d4,U+5b98,U+5f8b,U+6388,U+64cd,U+65e7,U+6803,U+6b6f,U+6d66,U+6e0b,U+6ecb,U+6fc3,U+72ac,U+773c,U+77e2,U+7968,U+7a74,U+7dba,U+7dd1,U+7e3e,U+808c,U+811a,U+8179,U+8239,U+8584,U+8a0e,U+8a72,U+8b66,U+8c46,U+8f29,U+90a3,U+9234,U+96f0,U+9769,U+9774,U+9aa8,U+ff26,U+ff28,U+ff9e-ff9f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-700-normal-Ci2KK30d.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-100-700-normal-Bgc0rwhs.woff) format("woff");unicode-range:U+4e08,U+4f9d,U+5012,U+514d,U+51b7,U+5275,U+53ca,U+53f8,U+5584,U+57fc,U+5b9d,U+5bfa,U+5c3e,U+5f01,U+5fb4,U+5fd7,U+606f,U+62e1,U+6563,U+6674,U+6cb3,U+6d3e,U+6d74,U+6e1b,U+6e2f,U+718a,U+7247,U+79d8,U+7d14,U+7d66,U+7d71,U+7df4,U+7e41,U+80cc,U+8155,U+83d3,U+8a95,U+8ab2,U+8ad6,U+8ca1,U+9000,U+9006,U+9678,U+97d3,U+9808,U+98ef,U+9a5a,U+9b45,U+ff23,U+ff30}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-700-normal-C6EmPlCh.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-103-700-normal-DP1-31YT.woff) format("woff");unicode-range:U+500d,U+5074,U+50cd,U+5175,U+52e2,U+5352,U+5354,U+53f2,U+5409,U+56fa,U+5a18,U+5b88,U+5bdd,U+5ca9,U+5f92,U+5fa9,U+60a9,U+623f,U+6483,U+653f,U+666f,U+66ae,U+66f2,U+6a21,U+6b66,U+6bcd,U+6d5c,U+796d,U+7a4d,U+7aef,U+7b56,U+7b97,U+7c4d,U+7e04,U+7fa9,U+8377,U+83dc,U+83ef,U+8535,U+8863,U+88cf,U+88dc,U+8907,U+8acb,U+90ce,U+91dd,U+ff0b,U+ff0d,U+ff19,U+ff65}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-700-normal-BOlfpWJk.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-106-700-normal-CsiJwGPh.woff) format("woff");unicode-range:U+30f6,U+50ac,U+5178,U+51e6,U+5224,U+52dd,U+5883,U+5897,U+590f,U+5a5a,U+5bb3,U+5c65,U+5e03,U+5e2b,U+5e30,U+5eb7,U+6271,U+63f4,U+64ae,U+6574,U+672b,U+679a,U+6a29-6a2a,U+6ca2,U+6cc1,U+6d0b,U+713c,U+74b0,U+7981,U+7a0b,U+7bc0,U+7d1a,U+7d61,U+7fd2,U+822c,U+8996,U+89aa,U+8cac,U+8cbb,U+8d77,U+8def,U+9020,U+9152,U+9244,U+9662,U+967a,U+96e3,U+9759,U+ff16}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-700-normal-DljhrnCs.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-109-700-normal-B4vCbbcJ.woff) format("woff");unicode-range:U+266a,U+4f11,U+533a,U+5343,U+534a,U+53cd,U+5404,U+56f3,U+5b57-5b58,U+5bae,U+5c4a,U+5e0c,U+5e2f,U+5eab,U+5f35,U+5f79,U+614b,U+6226,U+629e,U+65c5,U+6625,U+6751,U+6821,U+6b69,U+6b8b,U+6bce,U+6c42,U+706b,U+7c21,U+7cfb,U+805e,U+80b2,U+82b8,U+843d,U+8853,U+88c5,U+8a3c,U+8a66,U+8d8a,U+8fba,U+9069,U+91cf,U+9752,U+975e,U+9999,U+ff0f-ff10,U+ff14-ff15}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-700-normal-CTHiSTyk.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-112-700-normal-Wo0B1ORF.woff) format("woff");unicode-range:U+4e16,U+4e3b,U+4ea4,U+4ee4,U+4f4d,U+4f4f,U+4f55,U+4f9b,U+5317,U+5358,U+53c2,U+53e4,U+548c,U+571f,U+59cb,U+5cf6,U+5e38,U+63a2,U+63b2,U+6559,U+662d,U+679c,U+6c7a,U+72b6,U+7523,U+767d,U+770c,U+7a2e,U+7a3f,U+7a7a,U+7b2c,U+7b49,U+7d20,U+7d42,U+8003,U+8272,U+8a08,U+8aac,U+8cb7,U+8eab,U+8ee2,U+9054-9055,U+90fd,U+914d,U+91cd,U+969b,U+97f3,U+984c,U+ff06}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-700-normal-lu_RsSsA.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-114-700-normal-DkDuoZnq.woff) format("woff");unicode-range:U+3e,U+3005,U+4e0d,U+4e88,U+4ecb,U+4ee3,U+4ef6,U+4fdd,U+4fe1,U+500b,U+50cf,U+5186,U+5316,U+53d7,U+540c,U+544a,U+54e1,U+5728,U+58f2,U+5973,U+5b89,U+5c71,U+5e02,U+5e97,U+5f15,U+5fc3,U+5fdc,U+601d,U+611b,U+611f,U+671f,U+6728,U+6765,U+683c,U+6b21,U+6ce8,U+6d3b,U+6d77,U+7530,U+7740,U+7acb,U+7d50,U+826f,U+8f09,U+8fbc,U+9001,U+9053,U+91ce,U+9762,U+98df}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-700-normal-SBlZycdH.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-116-700-normal-CHlKjgkP.woff) format("woff");unicode-range:U+a9,U+3010-3011,U+30e2,U+4e0b,U+4eca,U+4ed6,U+4ed8,U+4f53,U+4f5c,U+4f7f,U+53d6,U+540d,U+54c1,U+5730,U+5916,U+5b50,U+5c0f,U+5f8c,U+624b,U+6570,U+6587,U+6599,U+691c,U+696d,U+6cd5,U+7269,U+7279,U+7406,U+767a-767b,U+77e5,U+7d04,U+7d22,U+8005,U+80fd,U+81ea,U+8868,U+8981,U+89a7,U+901a,U+9023,U+90e8,U+91d1,U+9332,U+958b,U+96c6,U+9ad8,U+ff1a,U+ff1f}@font-face{font-family:"Noto Serif JP";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-700-normal-BffUQFqG.woff2) format("woff2"),url(/assets/fonts/noto-serif-jp/noto-serif-jp-117-700-normal-D1RD1T-F.woff) format("woff");unicode-range:U+4e,U+a0,U+3000,U+300c-300d,U+4e00,U+4e0a,U+4e2d,U+4e8b,U+4eba,U+4f1a,U+5165,U+5168,U+5185,U+51fa,U+5206,U+5229,U+524d,U+52d5,U+5408,U+554f,U+5831,U+5834,U+5927,U+5b9a,U+5e74,U+5f0f,U+60c5,U+65b0,U+65b9,U+6642,U+6700,U+672c,U+682a,U+6b63,U+6c17,U+7121,U+751f,U+7528,U+753b,U+76ee,U+793e,U+884c,U+898b,U+8a18,U+9593,U+95a2,U+ff01,U+ff08-ff09}.sn-page{padding-top:88px;min-height:100vh}.sn-page-hero{padding:96px 0 64px;border-bottom:1px solid var(--line-1)}.sn-page-hero.tight{padding:80px 0 36px}@media(max-width:640px){.sn-page{padding-top:64px}.sn-page-hero{padding:48px 0 40px}.sn-page-hero.tight{padding:40px 0 28px}}.sn-page-hero h1{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);font-weight:500;line-height:1.05;letter-spacing:-.02em;color:var(--fg-1);margin:0 0 16px;max-width:22ch}.sn-page-hero .sn-lead{max-width:60ch}.sn-crumbs{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13px;color:var(--fg-3);margin-bottom:24px}.sn-crumbs a{color:var(--fg-3);text-decoration:none}.sn-crumbs a:hover{color:var(--sensei-crimson)}.sn-crumbs .sep{color:var(--fg-4)}.sn-crumbs .here{color:var(--fg-1)}.sn-prose{max-width:720px;font-family:var(--font-body);font-size:17px;line-height:1.7;color:var(--fg-2)}.sn-prose>*+*{margin-top:24px}.sn-prose h2{font-family:var(--font-display);font-size:32px;font-weight:500;letter-spacing:-.015em;line-height:1.2;color:var(--fg-1);margin:56px 0 0}.sn-prose h2:first-child{margin-top:0}.sn-prose h3{font-family:var(--font-body);font-size:20px;font-weight:600;color:var(--fg-1);margin:36px 0 0}.sn-prose p{margin:16px 0 0}.sn-prose ul,.sn-prose ol{padding-left:1.4em;margin:16px 0 0}.sn-prose li{margin-bottom:8px}.sn-prose a{color:var(--sensei-crimson);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#9d1b1f59}.sn-prose a:hover{text-decoration-color:var(--sensei-crimson)}.sn-prose blockquote{margin:24px 0 0;padding:4px 0 4px 20px;border-left:2px solid var(--sensei-crimson);color:var(--fg-1);font-family:var(--font-display);font-size:22px;line-height:1.4;font-style:italic}.sn-prose code{font-family:var(--font-mono);font-size:.9em;background:var(--paper-2);padding:2px 6px;border-radius:4px;color:var(--ink-1)}[data-theme=dark] .sn-prose code{color:var(--fg-1);background:var(--paper-2)}.sn-prose pre{font-family:var(--font-mono);font-size:13px;background:var(--paper-2);padding:20px;border-radius:12px;overflow-x:auto;line-height:1.6;border:1px solid var(--line-1)}.sn-prose hr{border:none;height:1px;background:var(--line-1);margin:48px 0}.sn-prose-figure{margin:32px 0 0}.sn-prose-figure img,.sn-prose-figure .sn-prose-img{width:100%;border-radius:14px;border:1px solid var(--line-1);background:var(--paper-2);aspect-ratio:16 / 9;display:block}.sn-prose-figcap{margin-top:10px;font-size:13px;color:var(--fg-3);text-align:center}.sn-content-grid{display:grid;grid-template-columns:minmax(0,720px) 280px;gap:80px;align-items:start}@media(max-width:980px){.sn-content-grid{grid-template-columns:1fr;gap:48px}}.sn-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:32px;font-size:14px}.sn-aside h4{font-family:var(--font-body);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--fg-3);margin:0 0 12px}.sn-toc{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.sn-toc a{color:var(--fg-2);text-decoration:none;font-size:14px;line-height:1.5;border-left:2px solid var(--line-1);padding-left:12px;display:block}.sn-toc a:hover,.sn-toc a.active{color:var(--sensei-crimson);border-left-color:var(--sensei-crimson)}.sn-share{display:flex;flex-direction:column;gap:6px}.sn-share a{display:inline-flex;align-items:center;gap:8px;padding:8px 0;color:var(--fg-2);text-decoration:none;font-size:14px}.sn-share a:hover{color:var(--sensei-crimson)}.sn-share svg{width:14px;height:14px;flex:none}.sn-author{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:12px}.sn-author .ava{width:40px;height:40px;border-radius:999px;background:linear-gradient(135deg,var(--sensei-crimson-light),var(--sensei-crimson-dark));color:#fff;display:flex;align-items:center;justify-content:center;font:600 14px/1 var(--font-body)}.sn-author .name{font:600 14px/1.3 var(--font-body);color:var(--fg-1)}.sn-author .role{font-size:12px;color:var(--fg-3);margin-top:2px}.sn-article-meta{display:flex;gap:16px;align-items:center;font-size:13px;color:var(--fg-3);margin:24px 0}.sn-article-meta .dot{width:3px;height:3px;border-radius:999px;background:var(--fg-4)}.sn-user-menu{position:relative;display:inline-block}.sn-user-trigger{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);font:500 13px/1 var(--font-body);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.sn-user-trigger:hover{border-color:var(--sensei-crimson)}.sn-user-trigger .ava{width:28px;height:28px;border-radius:999px;background:var(--sensei-crimson);color:var(--fg-on-crimson);display:inline-flex;align-items:center;justify-content:center;font:600 12px/1 var(--font-body)}.sn-user-trigger .chev{width:10px;height:10px;color:var(--fg-3);transition:transform var(--dur-fast)}.sn-user-menu.open .sn-user-trigger .chev{transform:rotate(180deg)}.sn-user-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:260px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;box-shadow:var(--shadow-3);padding:6px;animation:sn-fade-in .14s var(--ease-out)}.sn-user-popover.hidden{display:none}.sn-user-popover-head{border-bottom:1px solid var(--line-1);margin:0 -6px 6px;padding:14px 18px 12px}.sn-user-popover-name{font:600 14px/1.2 var(--font-body);color:var(--fg-1)}.sn-user-popover-email{font:500 12px/1.3 var(--font-body);color:var(--fg-3);margin-top:3px}.sn-user-popover-plan{display:inline-block;margin-top:8px;font:600 10px/1 var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:var(--sensei-crimson);background:var(--accent-soft);padding:4px 8px;border-radius:999px}.sn-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:transparent;border-radius:8px;font:500 13px/1 var(--font-body);color:var(--fg-1);cursor:pointer;text-align:left;text-decoration:none}.sn-menu-item:hover{background:var(--paper-2)}.sn-menu-item svg{width:14px;height:14px;color:var(--fg-3);flex:none}.sn-menu-item:hover svg{color:var(--sensei-crimson)}.sn-menu-item .meta{margin-left:auto;font-size:11px;font-family:var(--font-mono);color:var(--fg-3);letter-spacing:.04em}.sn-menu-item.danger{color:var(--status-danger)}.sn-menu-item.danger svg{color:var(--status-danger)}.sn-menu-divider{height:1px;background:var(--line-1);margin:6px -6px}.sn-demo-modal{background:var(--bg-0);border-radius:20px;padding:0;max-width:720px;width:100%;box-shadow:var(--shadow-3);position:relative;color:var(--fg-1);display:grid;grid-template-columns:1.1fr 1fr;overflow:hidden}@media(max-width:720px){.sn-demo-modal{grid-template-columns:1fr}.sn-demo-side{display:none}}.sn-demo-side{background:var(--sensei-ink);color:#fbf8f5;padding:36px 32px;display:flex;flex-direction:column;gap:20px;position:relative}.sn-demo-side h3{font-family:var(--font-display);font-size:28px;font-weight:500;letter-spacing:-.015em;line-height:1.15;margin:0}.sn-demo-side .kana{font-family:var(--font-jp);font-size:96px;line-height:1;color:var(--sensei-crimson-light);opacity:.25;position:absolute;right:20px;bottom:20px;pointer-events:none}.sn-demo-side p{font-size:14px;line-height:1.6;color:#d3c9bd;margin:0}.sn-demo-side ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.sn-demo-side li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#f6f1ea}.sn-demo-side li svg{flex:none;color:var(--sensei-crimson-light);margin-top:2px}.sn-demo-body{padding:36px 32px}.sn-demo-eyebrow{font:600 11px/1 var(--font-body);text-transform:uppercase;letter-spacing:.14em;color:var(--sensei-crimson);margin-bottom:8px}.sn-demo-body h2{font-family:var(--font-display);font-size:24px;font-weight:500;letter-spacing:-.015em;line-height:1.2;margin:0 0 24px;color:var(--fg-1)}.sn-demo-form{display:flex;flex-direction:column;gap:14px}.sn-demo-form label{font:600 11px/1 var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-3);display:flex;flex-direction:column;gap:6px}.sn-demo-form input,.sn-demo-form select,.sn-demo-form textarea{font-family:var(--font-body);font-size:14px;padding:11px 14px;border-radius:8px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);outline:none;transition:border-color var(--dur-fast)}.sn-demo-form input:focus,.sn-demo-form select:focus,.sn-demo-form textarea:focus{border-color:var(--sensei-crimson);box-shadow:0 0 0 3px #9d1b1f1f}.sn-demo-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sn-demo-form textarea{resize:vertical;min-height:80px;font-family:var(--font-body)}.sn-demo-foot{margin-top:18px;display:flex;align-items:center;gap:12px}.sn-demo-foot .hint{font-size:11px;color:var(--fg-3);line-height:1.5}.sn-regions{display:flex;gap:4px;padding:4px;background:var(--paper-2);border-radius:999px;width:max-content;margin-bottom:32px}.sn-region-btn{padding:8px 16px;border-radius:999px;border:none;background:transparent;font:500 13px/1 var(--font-body);color:var(--fg-2);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all var(--dur-fast)}.sn-region-btn:hover{color:var(--fg-1)}.sn-region-btn.active{background:var(--bg-0);color:var(--fg-1);box-shadow:var(--shadow-1)}.sn-region-flag{font-size:14px}.sn-region-panel{display:none}.sn-region-panel.active{display:block;animation:sn-fade-in .2s var(--ease-out)}.sn-kv{background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;overflow:hidden}.sn-kv .row{display:grid;grid-template-columns:220px 1fr auto;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line-1);align-items:baseline}.sn-kv .row:last-child{border-bottom:none}.sn-kv .k{font:600 11px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-3)}.sn-kv .v{font:500 15px/1.5 var(--font-body);color:var(--fg-1);font-feature-settings:"tnum"}.sn-kv .v code{font-family:var(--font-mono);font-size:13px;background:var(--paper-2);padding:2px 6px;border-radius:4px}.sn-kv .copy{background:transparent;border:1px solid var(--line-2);border-radius:6px;font:500 11px/1 var(--font-body);color:var(--fg-2);padding:6px 10px;cursor:pointer;transition:all var(--dur-fast)}.sn-kv .copy:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-kv .copy.copied{background:var(--accent-soft);border-color:var(--sensei-crimson);color:var(--sensei-crimson)}@media(max-width:640px){.sn-kv .row{grid-template-columns:1fr;gap:4px}.sn-kv .copy{justify-self:flex-start;margin-top:8px}}.sn-jobs{display:flex;flex-direction:column;background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;overflow:hidden}.sn-job{display:grid;grid-template-columns:1fr auto auto auto;gap:24px;align-items:center;padding:24px 28px;border-bottom:1px solid var(--line-1);text-decoration:none;color:inherit;transition:background var(--dur-fast)}.sn-job:last-child{border-bottom:none}.sn-job:hover{background:var(--paper-1)}.sn-job-title{font:600 18px/1.3 var(--font-body);color:var(--fg-1);letter-spacing:-.005em}.sn-job-team{font-size:13px;color:var(--fg-3);margin-top:4px}.sn-job-meta{font-size:13px;color:var(--fg-2)}.sn-job-arrow{color:var(--sensei-crimson);font-size:18px;transition:transform var(--dur-fast)}.sn-job:hover .sn-job-arrow{transform:translate(4px)}@media(max-width:720px){.sn-job{grid-template-columns:1fr;gap:8px;padding:20px}.sn-job-arrow{display:none}}.sn-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:840px){.sn-benefits-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.sn-benefits-grid{grid-template-columns:1fr}}.sn-hiring-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media(max-width:840px){.sn-hiring-steps{grid-template-columns:repeat(2,1fr);gap:32px 24px}}@media(max-width:480px){.sn-hiring-steps{grid-template-columns:1fr}}.sn-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}@media(max-width:980px){.sn-posts{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.sn-posts{grid-template-columns:1fr}}.sn-post{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;transition:transform var(--dur-med)}.sn-post:hover{transform:translateY(-2px)}.sn-post-thumb{aspect-ratio:16 / 10;border-radius:14px;background:var(--paper-2);border:1px solid var(--line-1);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.sn-post-thumb .kana{font-family:var(--font-jp);font-size:80px;line-height:1;color:var(--sensei-crimson);opacity:.5}.sn-post-thumb.tone-1{background:linear-gradient(135deg,var(--blossom-pink),var(--blossom-petal))}.sn-post-thumb.tone-2{background:linear-gradient(135deg,var(--sky-lavender),var(--water-mist))}.sn-post-thumb.tone-3{background:linear-gradient(135deg,var(--paper-2),var(--paper-3))}.sn-post-thumb.tone-4{background:linear-gradient(135deg,var(--blossom-rose),var(--sensei-crimson-light))}.sn-post-thumb.tone-4 .kana{color:#fff;opacity:.4}.sn-post-thumb.tone-5{background:linear-gradient(135deg,var(--sensei-ink),var(--ink-2))}.sn-post-thumb.tone-5 .kana{color:var(--blossom-pink);opacity:.45}.sn-post-thumb.tone-6{background:linear-gradient(135deg,var(--accent-soft),var(--blossom-pink))}.sn-post-cat{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sensei-crimson)}.sn-post-title{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.01em;line-height:1.25;color:var(--fg-1)}.sn-post-meta{font-size:13px;color:var(--fg-3);display:flex;align-items:center;gap:12px}.sn-post-meta .dot{width:3px;height:3px;border-radius:999px;background:var(--fg-4)}.sn-cat-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}.sn-cat{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-2);font:500 13px/1 var(--font-body);text-decoration:none;cursor:pointer;transition:all var(--dur-fast)}.sn-cat:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-cat.active{background:var(--sensei-crimson);border-color:var(--sensei-crimson);color:var(--fg-on-crimson)}.sn-cat .count{font-family:var(--font-mono);font-size:11px;opacity:.7}.sn-featured{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;margin-bottom:72px}@media(max-width:840px){.sn-featured{grid-template-columns:1fr}}.sn-featured .sn-post-thumb{aspect-ratio:16/10}.sn-featured-side{display:flex;flex-direction:column;gap:24px}.sn-featured-side .sn-post{flex-direction:row;gap:16px}.sn-featured-side .sn-post-thumb{aspect-ratio:1;width:120px;flex:none;border-radius:10px}.sn-featured-side .sn-post-thumb .kana{font-size:40px}.sn-featured-side .sn-post-title{font-size:17px}.sn-body-content{max-width:680px}.sn-body-content h2{font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:-.015em;line-height:1.25;color:var(--fg-1);margin:48px 0 12px}.sn-body-content h2:first-child{margin-top:0}.sn-body-content h3{font-family:var(--font-body);font-size:18px;font-weight:600;color:var(--fg-1);margin:32px 0 8px}.sn-body-content p{font-size:16px;line-height:1.75;color:var(--fg-2);margin:0 0 16px}.sn-body-content ul,.sn-body-content ol{padding-left:1.4em;margin:0 0 16px;font-size:16px;line-height:1.7;color:var(--fg-2)}.sn-body-content li{margin-bottom:8px}.sn-body-content strong{color:var(--fg-1);font-weight:600}.sn-body-content a{color:var(--sensei-crimson);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#9d1b1f4d}.sn-body-content a:hover{text-decoration-color:var(--sensei-crimson)}.sn-body-note{display:inline-block;font-size:12px;font-family:var(--font-mono);color:#b06000;background:#fff8e6;border:1px dashed #e0a040;border-radius:4px;padding:2px 8px;line-height:1.6}.sn-faq-block{max-width:680px}.sn-faq-list{display:flex;flex-direction:column;gap:2px}.sn-faq-item{background:var(--bg-0);border:1px solid var(--line-1);border-radius:10px;overflow:hidden}.sn-faq-item[open]{border-color:var(--line-2)}.sn-faq-q{padding:16px 20px;font:600 15px/1.4 var(--font-body);color:var(--fg-1);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.sn-faq-q::-webkit-details-marker{display:none}.sn-faq-q:after{content:"+";flex:none;font-size:20px;font-weight:300;color:var(--sensei-crimson);line-height:1;transition:transform var(--dur-fast)}.sn-faq-item[open] .sn-faq-q:after{transform:rotate(45deg)}.sn-faq-a{padding:0 20px 16px;font-size:14px;line-height:1.7;color:var(--fg-2);margin:0}.sn-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:980px){.sn-services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.sn-services-grid{grid-template-columns:1fr}}.sn-service-card{display:flex;flex-direction:column;gap:10px;padding:28px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:16px;border-top:3px solid var(--svc-accent, var(--line-2));text-decoration:none;color:inherit;transition:transform var(--dur-fast),box-shadow var(--dur-fast)}.sn-service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.sn-service-card-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sensei-crimson)}.sn-service-card-title{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.01em;line-height:1.2;color:var(--fg-1);margin:0}.sn-service-card-desc{font-size:14px;line-height:1.55;color:var(--fg-2);margin:0;flex:1}.sn-service-card-children{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.sn-service-card-children li{font-size:12px;color:var(--fg-3);padding-left:12px;position:relative}.sn-service-card-children li:before{content:"—";position:absolute;left:0;color:var(--fg-4)}.sn-service-card-cta{margin-top:4px;font:500 13px/1 var(--font-body);color:var(--sensei-crimson)}.sn-sub-services{display:flex;flex-direction:column;gap:1px;border:1px solid var(--line-1);border-radius:12px;overflow:hidden}.sn-sub-service-card{display:flex;align-items:center;gap:16px;padding:18px 24px;background:var(--bg-0);border-bottom:1px solid var(--line-1);text-decoration:none;color:inherit;transition:background var(--dur-fast)}.sn-sub-service-card:last-child{border-bottom:none}.sn-sub-service-card:hover{background:var(--paper-1)}.sn-sub-service-title{font:600 16px/1.3 var(--font-body);color:var(--fg-1)}.sn-sub-service-desc{font-size:13px;color:var(--fg-3);margin-top:3px;line-height:1.45}.sn-sub-service-arrow{margin-left:auto;flex:none;color:var(--sensei-crimson);font-size:16px;transition:transform var(--dur-fast)}.sn-sub-service-card:hover .sn-sub-service-arrow{transform:translate(4px)}.sn-related-links{display:flex;flex-wrap:wrap;gap:10px}.sn-related-link{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:8px;text-decoration:none;font:500 14px/1 var(--font-body);color:var(--fg-1);transition:all var(--dur-fast)}.sn-related-link:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-related-link .arrow{color:var(--sensei-crimson)}.sn-detail-grid{display:grid;grid-template-columns:1fr 380px;gap:72px;align-items:start}@media(max-width:980px){.sn-detail-grid{grid-template-columns:1fr}}.sn-side-card{position:sticky;top:96px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:16px;padding:24px;box-shadow:var(--shadow-1)}.sn-side-card h4{font:600 12px/1 var(--font-body);text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3);margin:0 0 16px}.sn-side-card .price-row{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}.sn-side-card .price{font-family:var(--font-display);font-size:38px;font-weight:500;color:var(--fg-1);letter-spacing:-.02em;line-height:1}.sn-side-card .price-unit{font-size:14px;color:var(--fg-3)}.sn-side-card .price-note{font-size:13px;color:var(--fg-3);margin-bottom:20px}.sn-side-card .sn-btn{width:100%;justify-content:center}.sn-side-card .meta{margin-top:20px;padding-top:20px;border-top:1px solid var(--line-1);display:flex;flex-direction:column;gap:12px;font-size:13px}.sn-side-card .meta .row{display:flex;justify-content:space-between;gap:12px}.sn-side-card .meta .k{color:var(--fg-3)}.sn-side-card .meta .v{color:var(--fg-1);font-weight:500;text-align:right}.sn-included{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}@media(max-width:640px){.sn-included{grid-template-columns:1fr}}.sn-incl-row{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.5;color:var(--fg-1)}.sn-incl-row svg{flex:none;width:16px;height:16px;color:var(--sensei-crimson);margin-top:4px}.sn-product-hero{background:linear-gradient(135deg,var(--sky-lavender),var(--blossom-pink));border-radius:16px;padding:56px;min-height:360px;display:flex;align-items:center;justify-content:center;margin-bottom:32px;border:1px solid var(--line-1)}[data-theme=dark] .sn-product-hero{background:linear-gradient(135deg,#2c2530,#3a2528)}.sn-product-hero-mock{width:100%;max-width:480px;aspect-ratio:16 / 10;background:var(--bg-0);border:1px solid var(--line-1);border-radius:12px;box-shadow:var(--shadow-3);padding:16px;display:flex;flex-direction:column;gap:8px}.sn-product-hero-mock .bar{height:8px;background:var(--paper-2);border-radius:4px}.sn-product-hero-mock .bar.acc{background:var(--sensei-crimson);width:30%}.sn-product-hero-mock .bar.wide{width:80%}.sn-product-hero-mock .panel{flex:1;background:var(--paper-2);border-radius:8px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:8px}.sn-product-hero-mock .panel>*{background:var(--bg-0);border-radius:6px}.sn-error-stage{min-height:calc(100vh - 88px);display:flex;align-items:center;justify-content:center;padding:64px 24px;position:relative;overflow:hidden}@media(max-width:640px){.sn-error-stage{min-height:calc(100vh - 64px);padding:40px 20px}}.sn-error-inner{max-width:640px;position:relative;z-index:2;text-align:center}.sn-error-code{font-family:var(--font-display);font-size:clamp(120px,18vw,220px);font-weight:500;line-height:.95;letter-spacing:-.04em;color:var(--sensei-crimson);margin:0 0 8px}.sn-error-h1{font-family:var(--font-display);font-size:clamp(32px,4vw,44px);font-weight:500;line-height:1.15;letter-spacing:-.02em;color:var(--fg-1);margin:0 0 16px}.sn-error-lead{font-size:17px;line-height:1.6;color:var(--fg-2);max-width:50ch;margin:0 auto 32px}.sn-error-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.sn-error-bg-kana{position:absolute;font-family:var(--font-jp);font-size:clamp(280px,36vw,480px);color:var(--sensei-crimson);opacity:.06;z-index:1;pointer-events:none;line-height:1;-webkit-user-select:none;user-select:none}[data-theme=dark] .sn-error-bg-kana{opacity:.08}.sn-error-suggestions{margin-top:56px;padding-top:32px;border-top:1px solid var(--line-1)}.sn-error-suggestions h4{font:600 11px/1 var(--font-body);text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3);margin:0 0 16px}.sn-error-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;font-size:14px}.sn-error-links a{color:var(--fg-1);text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:2px}.sn-error-links a:hover{color:var(--sensei-crimson);border-color:var(--sensei-crimson)}.sn-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:40px 0;border-bottom:1px solid var(--line-1)}@media(max-width:720px){.sn-stat-row{grid-template-columns:1fr 1fr;gap:24px}}.sn-stat-row>div{display:flex;flex-direction:column;gap:6px}.sn-stat-row strong{font-family:var(--font-display);font-size:44px;font-weight:500;letter-spacing:-.025em;line-height:1;color:var(--sensei-crimson)}.sn-stat-row span{font-size:13px;color:var(--fg-3);line-height:1.4}.sn-team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media(max-width:980px){.sn-team{grid-template-columns:repeat(2,1fr)}}.sn-person{display:flex;flex-direction:column;gap:12px}.sn-person-photo{aspect-ratio:4 / 5;border-radius:14px;background:linear-gradient(135deg,var(--blossom-pink),var(--sky-lavender));border:1px solid var(--line-1);position:relative;overflow:hidden}.sn-person-photo .initials{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:56px;font-weight:500;color:var(--sensei-crimson);opacity:.8}.sn-person-name{font:600 16px/1.3 var(--font-body);color:var(--fg-1)}.sn-person-role{font-size:13px;color:var(--fg-3)}.sn-values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:840px){.sn-values{grid-template-columns:1fr}}.sn-value{padding:24px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;position:relative}.sn-value-jp{font-family:var(--font-jp);font-size:36px;line-height:1;color:var(--sensei-crimson);opacity:.4;position:absolute;top:20px;right:24px}.sn-value h3{font-family:var(--font-display);font-size:24px;font-weight:500;letter-spacing:-.01em;color:var(--fg-1);margin:0 0 8px}.sn-value p{font-size:15px;line-height:1.6;color:var(--fg-2);margin:0}.sn-contact-block{background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:18px}.sn-contact-block h3{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.01em;margin:0;color:var(--fg-1)}.sn-contact-block .flag{font-size:22px;margin-right:8px;display:inline-block;vertical-align:middle}.sn-contact-row{display:flex;flex-direction:column;gap:4px}.sn-contact-row .label{font:600 11px/1 var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3)}.sn-contact-row .val{font:500 15px/1.4 var(--font-body);color:var(--fg-1)}.sn-contact-row .val a{color:var(--sensei-crimson);text-decoration:none;border-bottom:1px solid rgba(157,27,31,.2)}.sn-contact-row .val a:hover{border-color:var(--sensei-crimson)}.sn-offices-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}@media(max-width:640px){.sn-offices-grid{grid-template-columns:1fr}}.sn-contacts-layout{margin-top:56px;display:grid;grid-template-columns:1fr 360px;gap:56px;align-items:start}.sn-contacts-sidebar{background:var(--sensei-ink);color:#fbf8f5;border-radius:16px;padding:28px;position:sticky;top:96px}@media(max-width:840px){.sn-contacts-layout{grid-template-columns:1fr;gap:32px}.sn-contacts-sidebar{position:static}}.sn-form-row-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:540px){.sn-form-row-2col{grid-template-columns:1fr}}.sn-kit-index{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:980px){.sn-kit-index{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.sn-kit-index{grid-template-columns:1fr}}.sn-kit-card{display:flex;flex-direction:column;gap:12px;padding:24px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;text-decoration:none;color:inherit;transition:all var(--dur-fast)}.sn-kit-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:var(--line-2)}.sn-kit-card .num{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--sensei-crimson);text-transform:uppercase}.sn-kit-card h3{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.01em;margin:0;color:var(--fg-1)}.sn-kit-card p{font-size:14px;line-height:1.55;color:var(--fg-2);margin:0}.sn-kit-card .arrow{margin-top:auto;font:500 13px/1 var(--font-body);color:var(--sensei-crimson)}.sn-tags{display:flex;gap:6px;flex-wrap:wrap}.sn-nav-burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--line-2);border-radius:8px;cursor:pointer;color:var(--fg-1);flex-shrink:0}.sn-nav-burger span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .22s var(--ease-out),opacity .18s}.sn-nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.sn-nav-burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.sn-nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sn-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in oklab,var(--bg-1) 70%,transparent);z-index:90;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out)}.sn-nav-overlay.open{opacity:1;pointer-events:auto}.sn-nav-drawer{position:fixed;top:0;right:0;bottom:0;width:300px;max-width:85vw;background:var(--bg-0);border-left:1px solid var(--line-1);box-shadow:-8px 0 32px color-mix(in oklab,var(--fg-1) 8%,transparent);z-index:95;transform:translate(100%);transition:transform .3s var(--ease-out);overflow-y:auto;display:flex;flex-direction:column;padding-top:72px}.sn-nav-drawer.open{transform:translate(0)}.sn-nav-drawer-links{display:flex;flex-direction:column;padding:8px 0;flex:1}.sn-nav-drawer-links a{color:var(--fg-1);font-family:var(--font-body);font-size:16px;font-weight:500;text-decoration:none;padding:14px 24px;border-bottom:1px solid var(--line-1);transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.sn-nav-drawer-links a:last-child{border-bottom:0}.sn-nav-drawer-links a:hover{color:var(--sensei-crimson);background:var(--paper-2)}.sn-nav-drawer-controls{display:flex;align-items:center;gap:8px;padding:16px 24px;border-top:1px solid var(--line-1)}.sn-nav-drawer-actions{display:flex;flex-direction:column;gap:8px;padding:12px 24px 32px;border-top:1px solid var(--line-1)}.sn-nav-drawer-actions .sn-btn{width:100%;text-align:center;justify-content:center}.sn-nav-drawer-actions>*{width:100%}.sn-nav-drawer .sn-user-trigger{width:100%;padding:10px 14px 10px 10px;border-radius:12px;gap:10px;box-sizing:border-box}.sn-nav-drawer .sn-user-trigger span:not(.ava){display:block;max-width:none}.sn-consent-banner{position:fixed;bottom:0;left:0;right:0;z-index:150;background:color-mix(in oklab,var(--bg-0) 96%,transparent);border-top:1px solid var(--line-1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:sn-slide-up .26s var(--ease-out)}.sn-consent-banner-inner{max-width:1280px;margin:0 auto;padding:14px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.sn-consent-banner-text{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--fg-2);margin:0;flex:1;min-width:260px}.sn-consent-banner-text a{color:var(--sensei-crimson);text-decoration:none;white-space:nowrap}.sn-consent-banner-text a:hover{text-decoration:underline}.sn-consent-banner-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@keyframes sn-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.sn-consent-modal{max-width:480px}.sn-consent-categories{display:flex;flex-direction:column;gap:0;margin:20px 0 16px;border:1px solid var(--line-1);border-radius:12px;overflow:hidden}.sn-consent-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:var(--bg-0);border-bottom:1px solid var(--line-1)}.sn-consent-row:last-child{border-bottom:none}.sn-consent-row-info{flex:1}.sn-consent-row-title{display:block;font-size:14px;font-weight:500;color:var(--fg-1);margin-bottom:2px}.sn-consent-row-desc{display:block;font-size:12px;color:var(--fg-3);line-height:1.4}.sn-consent-always-on{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap}.sn-consent-toggle{position:relative;width:40px;min-width:40px;height:22px;border-radius:11px;background:var(--line-2, #ccc);border:none;cursor:pointer;transition:background .18s var(--ease-out);padding:0}.sn-consent-toggle:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .18s var(--ease-out)}.sn-consent-toggle.on{background:var(--sensei-crimson)}.sn-consent-toggle.on:after{transform:translate(18px)}.sn-consent-toggle.disabled{opacity:.4;cursor:default}.sn-consent-privacy-note{font-size:12px;color:var(--fg-3);margin:0 0 20px}.sn-consent-privacy-note a{color:var(--sensei-crimson);text-decoration:none}.sn-consent-privacy-note a:hover{text-decoration:underline}.sn-consent-modal-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.sn-post-upcoming-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:var(--sensei-crimson);color:#fff;vertical-align:middle}.sn-post-announcement{cursor:pointer}.sn-post-announcement:hover{transform:translateY(-2px)}.sn-products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:900px){.sn-products-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.sn-products-grid{grid-template-columns:1fr}}.sn-consent-footer-btn{background:none;border:none;padding:0;font-size:12px;color:var(--fg-3);cursor:pointer;text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.sn-consent-footer-btn:hover{color:var(--sensei-crimson)}@media(max-width:640px){.sn-consent-banner-inner{padding:12px 20px;flex-direction:column;align-items:flex-start;gap:12px}.sn-consent-banner-actions{width:100%}.sn-consent-banner-actions .sn-btn{flex:1;text-align:center;justify-content:center}}mark.sn-editorial-placeholder{display:block;background:#fff9c4;border-left:3px solid #f0c040;color:#7a5c00;font-size:12px;font-family:var(--font-mono);padding:6px 10px;margin:12px 0;border-radius:0 4px 4px 0;white-space:pre-wrap}@font-face{font-family:Gismonda;src:url(/fonts/Gismonda-Regular.woff2) format("woff2"),url(/fonts/Gismonda-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--sensei-crimson: #9d1b1f;--sensei-crimson-deep: #8b151a;--sensei-crimson-dark: #6e1014;--sensei-crimson-light: #c43238;--sensei-ink: #1a1513;--blossom-pink: #f5d6dc;--blossom-rose: #e9b3bd;--blossom-petal: #f2dce3;--sky-lavender: #e4ddea;--water-mist: #eef0f4;--fuji-slate: #9aa4b2;--paper-0: #ffffff;--paper-1: #fbf8f5;--paper-2: #f4efe9;--paper-3: #e8e0d6;--paper-4: #d3c9bd;--ink-1: #2a2320;--ink-2: #4b4340;--ink-3: #6e6561;--ink-4: #968c87;--fg-1: var(--ink-1);--fg-2: var(--ink-2);--fg-3: var(--ink-3);--fg-4: var(--ink-4);--fg-on-crimson: #fbf8f5;--fg-on-dark: #fbf8f5;--fg-link: var(--sensei-crimson);--fg-link-hover: var(--sensei-crimson-dark);--bg-0: var(--paper-0);--bg-1: var(--paper-1);--bg-2: var(--paper-2);--bg-3: var(--paper-3);--bg-ink: var(--sensei-ink);--accent: var(--sensei-crimson);--accent-soft: #f7e4e5;--accent-hover: var(--sensei-crimson-light);--accent-press: var(--sensei-crimson-dark);--line-1: #e8e0d6;--line-2: #d3c9bd;--line-strong: #2a2320;--font-brand: "Gismonda", "Cormorant Garamond", Georgia, serif;--font-display: "Cormorant Garamond", "Noto Serif JP", Georgia, serif;--font-body: "Inter Tight", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-jp: "Noto Serif JP", "Hiragino Serif", "Yu Mincho", "MS Mincho", "Noto Serif CJK JP", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-xl: 20px;--radius-pill: 999px;--shadow-1: 0 1px 2px rgba(26,21,19,.06), 0 1px 1px rgba(26,21,19,.04);--shadow-2: 0 4px 12px rgba(26,21,19,.08), 0 2px 4px rgba(26,21,19,.04);--shadow-3: 0 12px 32px rgba(26,21,19,.12), 0 4px 8px rgba(26,21,19,.06);--shadow-crimson: 0 8px 24px rgba(157,27,31,.24);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .14s;--dur-med: .26s;--dur-panel: .36s;--dur-slow: .48s}[data-theme=dark]{--fg-1: #f6f1ea;--fg-2: #c9bfb6;--fg-3: #968c87;--fg-4: #6e6561;--fg-link: #e9b3bd;--fg-link-hover: #f5d6dc;--bg-0: #1a1513;--bg-1: #211b18;--bg-2: #2a2320;--bg-3: #34302d;--bg-ink: #0d0a09;--paper-0: #1a1513;--paper-1: #211b18;--paper-2: #2a2320;--paper-3: #34302d;--paper-4: #4b4340;--accent: #c43238;--accent-soft: #3a1f20;--accent-hover: #d6464c;--accent-press: #9d1b1f;--line-1: #34302d;--line-2: #4b4340;--line-strong: #968c87;--shadow-1: 0 1px 2px rgba(0,0,0,.35);--shadow-2: 0 4px 12px rgba(0,0,0,.45), 0 2px 4px rgba(0,0,0,.3);--shadow-3: 0 12px 32px rgba(0,0,0,.55), 0 4px 8px rgba(0,0,0,.35);--shadow-crimson: 0 8px 24px rgba(196,50,56,.32)}.wordmark{font-family:var(--font-brand);font-weight:400;text-transform:uppercase;letter-spacing:.08em;color:var(--sensei-crimson)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg-1);color:var(--fg-1);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--fg-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--fg-link-hover);text-decoration:underline}body{background:var(--bg-1)}.sn-nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:all .26s var(--ease-out)}.sn-nav.scrolled{background:color-mix(in oklab,var(--bg-1) 82%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-1)}.sn-nav-inner{max-width:1280px;margin:0 auto;padding:16px 48px;display:flex;align-items:center;justify-content:space-between}.sn-brand{display:flex;align-items:center;gap:10px;text-decoration:none}.sn-brand img{height:28px}.sn-brand-name{font-family:var(--font-brand);font-weight:400;font-size:26px;letter-spacing:.12em;color:var(--sensei-crimson)}.sn-nav-links{display:flex;gap:32px;align-items:center}.sn-nav-links a{color:var(--fg-2);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer}.sn-nav-links a:hover{color:var(--sensei-crimson);text-decoration:none}.sn-nav-right{display:flex;align-items:center;gap:12px}.sn-theme-toggle{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 12px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.sn-theme-toggle:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-theme-toggle.compact{padding:8px;gap:0;width:36px;height:36px;justify-content:center}.sn-theme-toggle.is-auto{border-style:dashed}.sn-lang-menu{position:relative}.sn-lang-trigger{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 12px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.sn-lang-trigger:hover{border-color:var(--sensei-crimson)}.sn-lang-trigger.is-auto{border-style:dashed}.sn-lang-current{font-weight:600}.sn-lang-menu.compact .sn-lang-current{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em}.sn-lang-list{position:absolute;top:calc(100% + 8px);right:0;z-index:60;list-style:none;padding:6px;margin:0;min-width:200px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:12px;box-shadow:var(--shadow-3);animation:sn-fade-in .14s var(--ease-out)}@keyframes sn-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.sn-lang-option{display:flex;align-items:center;gap:10px;width:100%;font-family:var(--font-body);font-size:14px;color:var(--fg-1);padding:8px 10px;border-radius:8px;border:0;background:transparent;cursor:pointer;text-align:left}.sn-lang-option:hover{background:var(--paper-2)}.sn-lang-option.active{background:var(--accent-soft);color:var(--sensei-crimson)}[data-theme=dark] .sn-lang-option.active{color:#e9b3bd}.sn-lang-flag{font-size:16px;display:inline-flex;align-items:center}.sn-lang-name{flex:1}.sn-lang-short{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);letter-spacing:.08em}.sn-lang-divider{height:1px;background:var(--line-1);margin:4px 6px}.sn-socials{list-style:none;padding:0;margin:0;display:flex}.sn-socials li{display:flex}.sn-socials-row{gap:8px;flex-wrap:wrap}.sn-socials-stack{flex-direction:column;gap:4px}.sn-socials a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;color:var(--fg-2);background:var(--bg-0);border:1px solid var(--line-1);transition:all var(--dur-fast) var(--ease-out);box-sizing:border-box}.sn-socials a svg{display:block;flex-shrink:0}.sn-social-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.sn-social-icon svg{width:100%;height:100%}.sn-socials a:hover{color:var(--sensei-crimson);border-color:var(--sensei-crimson);transform:translateY(-2px)}.sn-socials-sm a{width:32px;height:32px}.sn-socials-sm .sn-social-icon{width:15px;height:15px}.sn-socials-lg a{width:46px;height:46px}.sn-socials-lg .sn-social-icon{width:22px;height:22px}.sn-socials-stack a{width:auto;height:auto;padding:8px 12px;border-radius:8px;gap:10px;justify-content:flex-start;font-size:14px;font-weight:500}.sn-socials-stack .sn-social-label{color:var(--fg-1)}.sn-socials-stack a:hover .sn-social-label{color:var(--sensei-crimson)}.sn-socials.on-dark a{background:#fbf8f50f;border-color:#fbf8f52e;color:#d3c9bd}.sn-socials.on-dark a:hover{background:#fbf8f51f;border-color:#f5d6dc;color:#fbf8f5}.sn-btn{font-family:var(--font-body);font-weight:500;font-size:15px;padding:12px 22px;border-radius:8px;border:1px solid transparent;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all var(--dur-fast) var(--ease-out)}.sn-btn-sm{padding:9px 16px;font-size:14px}.sn-btn-primary{background:var(--sensei-crimson);color:var(--fg-on-crimson);box-shadow:var(--shadow-crimson)}.sn-btn-primary:hover{background:var(--sensei-crimson-light);transform:translateY(-1px);text-decoration:none;color:var(--fg-on-crimson)}.sn-btn-secondary{background:var(--bg-0);color:var(--fg-1);border-color:var(--line-2)}.sn-btn-secondary:hover{border-color:var(--ink-1);text-decoration:none;color:var(--fg-1)}.sn-btn-ghost-light{background:transparent;color:#fbf8f5;border:1px solid rgba(251,248,245,.4)}.sn-btn-ghost-light:hover{border-color:#fbf8f5;background:#fbf8f514;text-decoration:none;color:#fbf8f5}.sn-display{font-family:var(--font-display);font-weight:500;font-size:80px;line-height:1.02;letter-spacing:-.025em;margin:0}.sn-h1{font-family:var(--font-display);font-weight:500;font-size:52px;line-height:1.05;letter-spacing:-.02em;margin:0;color:var(--fg-1)}.sn-h2{font-family:var(--font-display);font-weight:500;font-size:38px;line-height:1.15;letter-spacing:-.02em;margin:0;color:var(--fg-1)}.sn-h3{font-family:var(--font-body);font-weight:600;font-size:22px;line-height:1.25;margin:0;color:var(--fg-1)}.sn-h4{font-family:var(--font-body);font-weight:600;font-size:18px;line-height:1.3;margin:0;color:var(--fg-1)}.sn-lead{font-family:var(--font-body);font-size:19px;line-height:1.55;color:var(--fg-2);margin:16px 0 0}.sn-eyebrow{font-family:var(--font-body);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.sn-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}.sn-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0}.sn-hero-bg img{width:100%;height:100%;object-fit:cover;display:block}.sn-hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(170deg,#1a151333,#1a15138c)}.sn-hero[data-bg=enso-washi] .sn-hero-veil{background:linear-gradient(170deg,#1a15130d,#1a151340)}.sn-hero-bg-picker{position:absolute;right:32px;bottom:32px;display:flex;gap:8px;z-index:4}.sn-hero-bg-picker button{width:36px;height:36px;border-radius:999px;border:2px solid rgba(251,248,245,.4);padding:0;cursor:pointer;overflow:hidden;transition:transform .14s}.sn-hero-bg-picker button:hover{transform:scale(1.1)}.sn-hero-bg-picker button.active{border-color:#fbf8f5;box-shadow:0 0 0 2px #9d1b1f80}.sn-hero-bg-picker img{width:100%;height:100%;object-fit:cover;display:block}.sn-hero-inner{position:relative;max-width:1280px;margin:0 auto;padding:140px 48px 80px;width:100%;z-index:2}.sn-hero-kana{position:absolute;right:48px;top:130px;font-family:var(--font-jp);font-size:200px;color:#fbf8f5;opacity:.1;line-height:1}.sn-hero-ctas{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap}.sn-hero-proof{display:flex;gap:48px;margin-top:72px;padding-top:32px;border-top:1px solid rgba(251,248,245,.18);max-width:720px;flex-wrap:wrap}.sn-hero-proof div{display:flex;flex-direction:column;gap:4px;min-width:160px}.sn-hero-proof strong{font-family:var(--font-display);font-size:32px;font-weight:500;color:#fbf8f5;letter-spacing:-.02em}.sn-hero-proof span{font-size:13px;color:#e9b3bd}.sn-hero-socials{margin-top:32px}.sn-hero-socials .sn-socials a{background:#fbf8f50f;border-color:#fbf8f52e;color:#d3c9bd}.sn-hero-socials .sn-socials a:hover{background:#fbf8f524;border-color:#f5d6dc;color:#fbf8f5}.sn-section{padding:120px 0}.sn-section-paper{background:var(--paper-2)}.sn-section-ink{background:var(--sensei-ink);color:#fbf8f5}.sn-container{max-width:1280px;margin:0 auto;padding:0 48px}.sn-section-head{margin-bottom:72px}.sn-section-head .sn-h2{max-width:28ch}.sn-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.sn-services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.sn-service-card{background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;padding:32px;box-shadow:var(--shadow-1);transition:all var(--dur-med) var(--ease-out);display:flex;flex-direction:column;gap:12px;min-height:240px}.sn-service-card:hover{box-shadow:var(--shadow-2);transform:translateY(-3px)}.sn-service-num{font-family:var(--font-mono);font-size:12px;color:var(--sensei-crimson);letter-spacing:.1em}.sn-service-card p{color:var(--fg-2);font-size:15px;line-height:1.55;flex:1}.sn-arrow-link{color:var(--sensei-crimson);font-weight:500;font-size:14px;text-decoration:none;display:inline-flex;gap:6px;align-items:center;cursor:pointer}.sn-arrow-link:hover{text-decoration:none;color:var(--sensei-crimson-dark)}.sn-arrow-link:hover span{transform:translate(4px)}.sn-arrow-link span{transition:transform var(--dur-fast) var(--ease-out);display:inline-block}.sn-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.sn-step{background:var(--bg-0);padding:28px;border-radius:14px;border:1px solid var(--line-1);position:relative}.sn-step-kana{font-family:var(--font-jp);font-size:56px;color:var(--sensei-crimson);opacity:.15;position:absolute;right:20px;top:16px;line-height:1}.sn-step-num{font-family:var(--font-mono);font-size:12px;color:var(--sensei-crimson);letter-spacing:.1em;margin-bottom:12px}.sn-step h3{margin-bottom:8px}.sn-step p{font-size:14px;color:var(--fg-2);line-height:1.55}.sn-pager{display:flex;gap:8px}.sn-pager button{width:44px;height:44px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);font-size:20px;cursor:pointer;transition:all var(--dur-fast);color:var(--fg-1);display:flex;align-items:center;justify-content:center;line-height:1}.sn-pager button svg{width:14px;height:9px}.sn-pager button:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-pager button:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.sn-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.sn-pager-mobile-only{display:none}@keyframes sn-panel-in{0%{opacity:.15;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.sn-case{cursor:pointer;transition:all var(--dur-med) var(--ease-out)}.sn-case:hover{transform:translateY(-4px)}.sn-case-thumb{height:240px;border-radius:14px;overflow:hidden;display:flex;align-items:flex-end;padding:24px}.sn-case-metric strong{display:block;font-family:var(--font-display);font-size:44px;font-weight:500;color:var(--sensei-crimson-deep);letter-spacing:-.02em;line-height:1}.sn-case-metric span{font-size:13px;color:var(--ink-2)}.sn-case-meta{padding:20px 4px 0}.sn-tag{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--sensei-crimson);text-transform:uppercase;padding:4px 10px;background:var(--accent-soft);border-radius:999px;margin-bottom:10px}.sn-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a151380;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.sn-modal{background:var(--bg-0);border-radius:20px;padding:40px;max-width:560px;width:100%;box-shadow:var(--shadow-3)}.sn-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:flex-start}.sn-contact-meta{margin-top:48px;display:flex;flex-direction:column;gap:18px}.sn-contact-meta>div{display:flex;flex-direction:column;gap:2px}.sn-contact-meta span{font-size:12px;color:#9aa4b2;letter-spacing:.14em;text-transform:uppercase}.sn-contact-meta strong{font-weight:500;color:#fbf8f5;font-size:17px}.sn-form{background:var(--bg-0);border-radius:20px;padding:36px;display:flex;flex-direction:column;gap:18px;color:var(--fg-1)}.sn-form label{font-size:12px;font-weight:600;color:var(--fg-2);display:flex;flex-direction:column;gap:6px}.sn-form input,.sn-form select,.sn-form textarea{font-family:var(--font-body);font-size:15px;padding:12px 14px;border-radius:8px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);outline:none;transition:border-color var(--dur-fast)}.sn-form input:focus,.sn-form select:focus,.sn-form textarea:focus{border-color:var(--sensei-crimson);box-shadow:0 0 0 3px #9d1b1f1f}.sn-form textarea{resize:vertical;font-family:var(--font-body)}.sn-form-sent{align-items:center;text-align:center;padding:56px 36px}.sn-kana-big{font-family:var(--font-jp);font-size:80px;color:var(--sensei-crimson);margin-bottom:16px;line-height:1}.sn-form-sent p{color:var(--fg-2);margin:8px 0 20px}.sn-consent-label{flex-direction:row!important;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;color:var(--fg-2);cursor:pointer}.sn-consent-label input[type=checkbox]{width:16px;height:16px;min-width:16px;margin-top:2px;accent-color:var(--sensei-crimson);cursor:pointer}.sn-consent-label a{color:var(--sensei-crimson)}.sn-consent-law{opacity:.7}.sn-form button[type=submit]:disabled{opacity:.45;cursor:not-allowed}.sn-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a15138c;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sn-modal{background:var(--bg-0);border-radius:20px;padding:32px 36px 36px;max-width:520px;width:100%;box-shadow:var(--shadow-3);position:relative;max-height:90vh;overflow-y:auto}.sn-modal .sn-form{padding:0;box-shadow:none;border-radius:0}.sn-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.sn-modal-close{width:32px;height:32px;border-radius:999px;border:0;background:var(--bg-1);color:var(--fg-2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sn-modal-close:hover{background:var(--bg-2)}.sn-products-slider{position:relative;margin:0 -48px}.sn-products{display:flex;gap:24px;padding:8px 48px 32px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;-webkit-overflow-scrolling:touch}.sn-products::-webkit-scrollbar{height:6px}.sn-products::-webkit-scrollbar-track{background:transparent}.sn-products::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}.sn-product{flex:0 0 380px;max-width:380px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-1);transition:all var(--dur-med) var(--ease-out);display:flex;flex-direction:column;scroll-snap-align:start}.sn-product:hover{box-shadow:var(--shadow-2);transform:translateY(-4px)}.sn-product-preview{height:200px;display:flex;align-items:center;justify-content:center;padding:24px}.sn-product-meta{padding:22px 26px 26px;display:flex;flex-direction:column;flex:1}.sn-product-meta-row{display:flex;align-items:center;gap:10px}.sn-product-cat{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--fg-3);text-transform:uppercase}.sn-product-meta p{font-size:14px;line-height:1.55;color:var(--fg-2);flex:1;margin:0}.sn-product-more{background:transparent;border:1px dashed var(--line-2);box-shadow:none}.sn-product-more:hover{box-shadow:none;border-color:var(--sensei-crimson)}.sn-product-preview-more{background:var(--paper-1);flex-direction:column;gap:14px}.sn-product-more-kana{font-family:var(--font-jp);font-size:80px;color:var(--sensei-crimson);opacity:.18;line-height:1}.sn-product-more-dots{display:flex;gap:6px}.sn-product-more-dots span{width:6px;height:6px;border-radius:999px;background:var(--sensei-crimson);opacity:.4}.sn-product-more-dots span:nth-child(2){opacity:.6}.sn-product-more-dots span:nth-child(3){opacity:.8}.sn-status{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.04em;padding:3px 9px;border-radius:999px;line-height:1}.sn-status-dot{width:6px;height:6px;border-radius:999px;background:currentColor}.sn-status-success{background:#3e7a5624;color:#2c5a3e}.sn-status-warning{background:#c08a2e2e;color:#8a6019}.sn-status-info{background:#4c6b8a29;color:#355168}.sn-status-neutral{background:var(--paper-2);color:var(--fg-2)}.sn-status-muted{background:var(--paper-2);color:var(--fg-3)}.sn-status-soft{background:var(--accent-soft);color:var(--sensei-crimson-deep)}[data-theme=dark] .sn-status-success{background:#3e7a5638;color:#8ec5a0}[data-theme=dark] .sn-status-warning{background:#c08a2e38;color:#e4b76b}[data-theme=dark] .sn-status-info{background:#78a0c838;color:#b4cce4}[data-theme=dark] .sn-status-soft{background:#c4323833;color:#f2c8cc}.sn-video{margin:0}.sn-video-frame{position:relative;background:var(--sensei-ink);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-2);aspect-ratio:16/9}.sn-video-frame video,.sn-video-frame img{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer}.sn-video-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#1a1513,#2a2320);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.sn-video-kana{font-family:var(--font-jp);font-size:96px;color:var(--sensei-crimson);opacity:.35;line-height:1}.sn-video-placeholder-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#968c87}.sn-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:999px;background:var(--sensei-crimson);color:var(--fg-on-crimson);border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-crimson);transition:all var(--dur-fast) var(--ease-out);padding-left:4px}.sn-video-play:hover{background:var(--sensei-crimson-light);transform:translate(-50%,-50%) scale(1.06)}.sn-video-play svg{width:26px;height:26px}.sn-video-overlay{position:absolute;left:24px;bottom:24px;right:24px;color:#fbf8f5;pointer-events:none}.sn-video-title{font-family:var(--font-display);font-size:26px;font-weight:500;line-height:1.15;letter-spacing:-.01em}.sn-video-caption{margin-top:4px;font-size:13px;color:#d3c9bd}.sn-video-controls{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:center;gap:12px;padding:8px 12px;background:#1a15138c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;opacity:0;transform:translateY(6px);transition:opacity var(--dur-fast),transform var(--dur-fast);pointer-events:none}.sn-video.playing .sn-video-controls,.sn-video-frame:hover .sn-video-controls{opacity:1;transform:none;pointer-events:auto}.sn-video-ctrl{background:transparent;border:0;color:#fbf8f5;cursor:pointer;padding:4px;display:inline-flex;align-items:center}.sn-video-time{font-family:var(--font-mono);font-size:11px;color:#d3c9bd;min-width:32px;text-align:center}.sn-video-track{flex:1;height:4px;background:#fbf8f52e;border-radius:999px;position:relative;cursor:pointer}.sn-video-fill{height:100%;background:var(--sensei-crimson-light);border-radius:999px}.sn-video-knob{position:absolute;top:50%;width:10px;height:10px;background:#fbf8f5;border-radius:999px;transform:translate(-50%,-50%)}.sn-video-figcap{margin-top:12px;font-size:14px;color:var(--fg-2)}.sn-auth-scrim{z-index:200}.sn-auth-modal{background:var(--bg-0);border-radius:20px;padding:36px;max-width:460px;width:100%;box-shadow:var(--shadow-3);position:relative;color:var(--fg-1);max-height:calc(100dvh - 48px);overflow-y:auto}.sn-modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:999px;border:0;background:transparent;color:var(--fg-3);font-size:22px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1}.sn-modal-close:hover{color:var(--fg-1);background:var(--paper-2)}.sn-auth-head{text-align:center;margin-bottom:24px}.sn-auth-mark{height:40px;margin-bottom:14px}.sn-auth-sub{color:var(--fg-2);font-size:14px;margin-top:8px}.sn-auth-providers-label{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-bottom:10px;text-align:center}.sn-auth-providers-row{display:flex;gap:8px}.sn-auth-provider{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 12px;border-radius:8px;background:var(--bg-0);border:1px solid var(--line-2);color:var(--fg-1);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--dur-fast)}.sn-auth-provider:hover{border-color:var(--fg-1)}.sn-auth-divider{display:flex;align-items:center;gap:10px;margin:18px 0 14px}.sn-auth-divider:before,.sn-auth-divider:after{content:"";flex:1;height:1px;background:var(--line-1)}.sn-auth-divider span{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.sn-auth-form{display:flex;flex-direction:column;gap:14px}.sn-auth-form label{font-size:12px;font-weight:600;color:var(--fg-2);display:flex;flex-direction:column;gap:6px}.sn-auth-form input{font-family:var(--font-body);font-size:14px;padding:11px 12px;border-radius:8px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);outline:none;transition:border-color var(--dur-fast)}.sn-auth-form input:focus{border-color:var(--sensei-crimson);box-shadow:0 0 0 3px #9d1b1f1f}.sn-auth-pwd-row{display:flex;justify-content:space-between;align-items:center}.sn-auth-forgot{font-size:11px;font-weight:500;color:var(--sensei-crimson);cursor:pointer}.sn-auth-foot{margin-top:18px;font-size:13px;color:var(--fg-3);text-align:center}.sn-auth-foot a{color:var(--sensei-crimson);font-weight:500;cursor:pointer}.sn-signin-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 12px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.sn-signin-btn:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-user-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0)}.sn-user-avatar{width:28px;height:28px;border-radius:999px;background:var(--sensei-crimson);color:var(--fg-on-crimson);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:13px}.sn-user-name{font-size:13px;font-weight:500;color:var(--fg-1)}.sn-user-out{width:22px;height:22px;border-radius:999px;border:0;background:transparent;color:var(--fg-3);font-size:16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1}.sn-user-out:hover{background:var(--paper-2);color:var(--fg-1)}.sn-user-menu{position:relative}.sn-user-trigger{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-0);color:var(--fg-1);cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:all var(--dur-fast) var(--ease-out);min-width:0}.sn-user-trigger:hover{border-color:var(--sensei-crimson);color:var(--sensei-crimson)}.sn-user-trigger .ava{width:26px;height:26px;border-radius:999px;background:var(--sensei-crimson);color:var(--fg-on-crimson);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;flex-shrink:0}.sn-user-trigger span:not(.ava){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.sn-user-trigger .chev{flex-shrink:0;width:14px;height:14px;transition:transform var(--dur-fast)}.sn-user-menu.open .chev{transform:rotate(180deg)}.sn-user-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:150;min-width:220px;background:var(--bg-0);border:1px solid var(--line-1);border-radius:14px;box-shadow:var(--shadow-3);padding:6px;animation:sn-fade-in .14s var(--ease-out)}.sn-user-popover-head{padding:10px 12px 12px;border-bottom:1px solid var(--line-1);margin-bottom:4px}.sn-user-popover-name{font-size:14px;font-weight:600;color:var(--fg-1)}.sn-user-popover-email{font-size:12px;color:var(--fg-3);margin-top:2px}.sn-menu-item{display:flex;align-items:center;gap:10px;width:100%;font-family:var(--font-body);font-size:14px;color:var(--fg-1);padding:9px 12px;border-radius:8px;border:0;background:transparent;cursor:pointer;text-align:left;text-decoration:none;transition:background var(--dur-fast)}.sn-menu-item svg{width:16px;height:16px;flex-shrink:0;color:var(--fg-3)}.sn-menu-item:hover{background:var(--paper-2);text-decoration:none}.sn-menu-item.danger{color:var(--sensei-crimson)}.sn-menu-item.danger svg{color:var(--sensei-crimson)}.sn-menu-item.danger:hover{background:var(--accent-soft)}.sn-menu-divider{height:1px;background:var(--line-1);margin:4px 0}.sn-footer{background:var(--bg-2);border-top:1px solid var(--line-1);padding:72px 0 28px;color:var(--fg-2);font-size:14px}.sn-footer-top{display:flex;gap:56px;align-items:flex-start;padding-bottom:48px;border-bottom:1px solid var(--line-1)}.sn-footer-logo-full img{height:56px;width:auto;display:block}.sn-footer-tagline{max-width:420px;font-size:15px;line-height:1.55;color:var(--fg-2);margin:0}.sn-footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;padding:48px 0}.sn-footer-col h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-1);margin:0 0 18px}.sn-footer-col ul{list-style:none;padding:0;margin:0}.sn-footer-col li{margin-bottom:10px}.sn-footer-col a{color:var(--fg-2);text-decoration:none;font-size:14px;cursor:pointer;transition:color var(--dur-fast)}.sn-footer-col a:hover{color:var(--sensei-crimson);text-decoration:none}.sn-footer-base{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line-1);font-size:13px;color:var(--fg-3);gap:24px;flex-wrap:wrap}.sn-footer-base-left{display:flex;gap:24px;align-items:center}.sn-footer-prefs{display:flex;gap:10px;align-items:center}.sn-jp{font-family:var(--font-jp)}@media(max-width:900px){.sn-nav-inner{padding:14px 24px}.sn-nav-links{display:none}.sn-nav-burger{display:flex}.sn-nav-right .sn-btn,.sn-nav-right .sn-lang-menu{display:none}.sn-nav-burger{flex-shrink:0}.sn-user-trigger span:not(.ava){display:none}.sn-user-trigger{padding:4px;gap:4px}.sn-hero-inner{padding:120px 24px 60px}.sn-hero-kana,.sn-hero-bg-picker{display:none}.sn-container{padding:0 24px}.sn-section{padding:72px 0}.sn-services{grid-template-columns:1fr}.sn-steps{grid-template-columns:1fr 1fr}.sn-cases-track{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sn-cases-track::-webkit-scrollbar{display:none}.sn-cases{display:flex;gap:0;flex-wrap:nowrap}.sn-case{flex:0 0 100%;scroll-snap-align:start}.sn-pager-mobile-only{display:flex}.sn-pager button svg{width:18px;height:12px}.sn-contact-grid{grid-template-columns:1fr;gap:40px}.sn-footer-grid{grid-template-columns:1fr 1fr}.sn-footer-top{flex-direction:column;gap:20px}.sn-footer-tagline{max-width:100%}.sn-products-slider{margin:0 -24px}.sn-products{padding:8px 24px 24px}.sn-section-head.sn-row{flex-direction:column;align-items:flex-start;gap:16px}.sn-section-head.sn-row .sn-pager{align-self:flex-end}.sn-section-head{margin-bottom:40px}.sn-display{font-size:48px}.sn-h1{font-size:36px}}@media(max-width:600px){.sn-steps{grid-template-columns:1fr}.sn-footer{padding:40px 0 20px}.sn-footer-top{padding-bottom:24px}.sn-footer-grid{grid-template-columns:1fr 1fr;gap:20px 16px;padding:28px 0}.sn-footer-base-left{flex-direction:column;gap:6px}.sn-hero-proof{gap:28px}.sn-display{font-size:38px}}@media(max-width:400px){.sn-footer-grid{grid-template-columns:1fr 1fr}.sn-footer-col:nth-child(n+3){grid-column:1 / -1}.sn-footer-base{flex-direction:column;align-items:center;gap:12px}.sn-footer-base-left{align-items:center;text-align:center}.sn-footer-prefs{justify-content:center}}@media(max-width:480px){.sn-modal-scrim{padding:12px}.sn-auth-modal{padding:28px 20px;border-radius:16px;max-height:calc(100dvh - 24px)}.sn-auth-providers-row{flex-direction:column}.sn-auth-provider{justify-content:flex-start;padding:12px 16px}.sn-hero-proof{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 16px;margin-top:48px}.sn-hero-proof div{min-width:0}.sn-hero{min-height:100svh}.sn-hero-inner{padding:88px 20px 36px}.sn-hero-ctas{margin-top:24px;gap:10px}.sn-hero-socials{margin-top:20px}.sn-hero-socials .sn-socials a{width:40px;height:40px}}
