/* チェキ用フォント（Yusei Magic・手書きマーカー風）をサイト内に同梱 */
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-59-400-normal.woff2) format("woff2"); unicode-range: U+a1-a4,U+a6-a7,U+aa,U+ac-ad,U+b5-b6,U+b8-ba,U+bc-c8,U+ca-cc,U+ce-d5,U+d9-db,U+dd-df,U+e6,U+ee,U+f0,U+f5,U+f7,U+f9,U+fb,U+fe-102,U+110-113,U+11a-11b,U+128-12b,U+143-144,U+147-148,U+14c,U+14e-14f,U+152-153,U+168-16d,U+192,U+1a0-1a1,U+1af,U+1cd-1dc,U+1f8-1f9,U+251,U+261,U+2bb,U+2c7,U+2c9,U+2ea-2eb,U+304,U+307,U+30c,U+1e3e-1e3f,U+1ea0-1ebe,U+1ec0-1ec6,U+1ec8-1ef9,U+2011-2012,U+2016,U+2018-201a,U+201e,U+2021,U+2030,U+2033,U+2035,U+2042,U+2047,U+2051,U+2074,U+20a9,U+20ab-20ac,U+20dd-20de,U+2100; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-73-400-normal.woff2) format("woff2"); unicode-range: U+221e,U+2514,U+51f9,U+5270,U+5449,U+5824,U+59a5,U+5a29,U+5d07,U+5e16,U+60e3,U+614c,U+6276,U+643e,U+64ab,U+6562,U+6681,U+670b,U+6734,U+67af,U+6a3d,U+6b05,U+6dc0,U+6e4a,U+7259,U+732a,U+7409,U+78a7,U+7a6b,U+8015,U+809b,U+817a,U+830e,U+837b,U+85ab,U+8a23,U+8a93,U+8b00,U+8b19,U+8b21,U+8cbf,U+8fb0,U+901d,U+91b8,U+9320,U+932c,U+9688,U+96f6,U+9df2,U+ff6a; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-80-400-normal.woff2) format("woff2"); unicode-range: U+2463,U+25a1,U+4ef0,U+5076,U+5098,U+51fd,U+5302,U+5448,U+54c9,U+570b,U+583a,U+5893,U+58a8,U+58ee,U+5949,U+5bdb,U+5f26,U+5f81,U+6052,U+6170,U+61c7,U+631f,U+635c,U+664b,U+69fb,U+6f01,U+7070,U+722a,U+745e,U+755c,U+76c6,U+78c1,U+79e4,U+7bb8,U+7d0b,U+81a8,U+82d7,U+8b5c,U+8f14,U+8fb1,U+8fbb,U+9283,U+9298,U+9a30,U+ff03,U+ff50,U+ff59,U+ff7b,U+ff8e-ff8f; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-83-400-normal.woff2) format("woff2"); unicode-range: U+2500,U+3008-3009,U+4ead,U+4f0f,U+4fca,U+53eb,U+543e,U+57a2,U+5cf0,U+5e8f,U+5fe0,U+61b2,U+62d8,U+6442,U+64b2,U+6589,U+659c,U+67f1,U+68c4,U+6cb8,U+6d12,U+6de1,U+6fe1,U+70c8,U+723d,U+73e0,U+7656,U+773a,U+7948,U+7b87,U+7c92,U+7d3a,U+7e1b,U+7e4a,U+819a,U+8358,U+83c5,U+84bc,U+864e,U+8912,U+8c9e,U+8d05,U+92fc,U+9396,U+98fd,U+99d2,U+ff64,U+ff7a,U+ff83; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-89-400-normal.woff2) format("woff2"); unicode-range: U+a5,U+4e80,U+4f34,U+4f73,U+4f75,U+511f,U+5192,U+52aa,U+53c8,U+570f,U+57cb,U+596e,U+5d8b,U+5f66,U+5fd9,U+62db,U+62f6,U+6328,U+633f,U+63a7,U+6469,U+6bbf,U+6c41,U+6c57,U+6d44,U+6dbc,U+706f,U+72c2,U+72ed,U+7551,U+75f4,U+7949,U+7e26,U+7fd4,U+8150,U+8af8,U+8b0e,U+8b72,U+8ca7,U+934b,U+9a0e,U+9a12,U+9b42,U+ff41,U+ff43,U+ff45,U+ff49,U+ff4f,U+ff62-ff63; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-90-400-normal.woff2) format("woff2"); unicode-range: U+4e18,U+4fb5,U+5104,U+52c7,U+5353,U+5374,U+53e5,U+587e,U+594f,U+5a20,U+5de1,U+5f18,U+5fcd,U+6291,U+62ab,U+6355,U+6392,U+63da,U+63e1,U+656c,U+6687,U+68b0-68b1,U+68d2,U+68da,U+6b27,U+6cbc,U+7159,U+7344,U+73cd,U+76df,U+790e,U+7cf8,U+8102,U+88c1,U+8aa0,U+8e0f,U+9178,U+92ad,U+9670,U+96c5,U+9cf4,U+9db4,U+ff3e,U+ff6f,U+ff72,U+ff78,U+ff7d,U+ff84,U+ff8c; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-91-400-normal.woff2) format("woff2"); unicode-range: U+60,U+2200,U+226b,U+2461,U+517c,U+526f,U+5800,U+5b97,U+5bf8,U+5c01,U+5d29,U+5e4c,U+5e81,U+6065,U+61d0,U+667a,U+6696,U+6843,U+6c99,U+6d99,U+6ec5,U+6f22,U+6f6e,U+6fa4,U+6fef,U+71c3,U+72d9,U+7384,U+78e8,U+7a1a,U+7a32,U+7a3c,U+7adc,U+7ca7,U+7d2b,U+7dad,U+7e4b,U+80a9,U+8170,U+81ed,U+820e,U+8a17,U+8afe,U+90aa,U+914e,U+963f,U+99c4,U+9eba,U+9f3b,U+ff38; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-92-400-normal.woff2) format("woff2"); unicode-range: U+2460,U+4e5f,U+4e7e,U+4ed9,U+501f,U+502b,U+5968,U+5974,U+5ac1,U+5b99,U+5ba3,U+5be7,U+5be9,U+5c64,U+5cb8,U+5ec3,U+5f1f,U+616e,U+6297,U+62e0,U+62ec,U+6368,U+642d,U+65e6,U+6717,U+676f,U+6b04,U+732e,U+7652,U+76ca,U+76d7,U+7802,U+7e70,U+7f6a,U+8133,U+81e8,U+866b,U+878d,U+88f8,U+8a5e,U+8cdb,U+8d08,U+907a,U+90e1,U+96f2,U+9f8d,U+ff35,U+ff37,U+ff40,U+ff9d; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-94-400-normal.woff2) format("woff2"); unicode-range: U+2015,U+2190,U+4e43,U+5019,U+5247,U+52e7,U+5438,U+54b2,U+55ab,U+57f7,U+5bd2,U+5e8a,U+5ef6,U+6016,U+60b2,U+6162,U+6319,U+6551,U+6607,U+66b4,U+675f,U+67d4,U+6b20,U+6b53,U+6ce3,U+719f,U+75b2,U+770b,U+7720,U+77ac,U+79d2,U+7af9,U+7d05,U+7dca,U+8056,U+80f8,U+81f3,U+8352,U+885d,U+8a70,U+8aa4,U+8cbc,U+900f,U+9084,U+91e3,U+9451,U+96c4,U+99c6,U+9ad4,U+ff70; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-95-400-normal.woff2) format("woff2"); unicode-range: U+2193,U+25b2,U+4e4b,U+516d,U+51c4,U+529f,U+52c9,U+5360,U+5442,U+5857,U+5915,U+59eb,U+5a9b,U+5c3b,U+6012,U+61b6,U+62b1,U+6311,U+6577,U+65e2,U+65ec,U+6613,U+6790,U+6cb9,U+7372,U+76ae,U+7d5e,U+7fcc,U+88ab,U+88d5,U+8caf,U+8ddd,U+8ecd,U+8f38,U+8f9e,U+8feb,U+9063,U+90f5,U+93e1,U+968a,U+968f,U+98fe,U+9ec4,U+ff1d,U+ff27,U+ff2a,U+ff36,U+ff3b,U+ff3d,U+ffe5; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-96-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-97-400-normal.woff2) format("woff2"); unicode-range: U+7e,U+b4,U+25c6,U+2661,U+4e92,U+4eee,U+4ffa,U+5144,U+5237,U+5287,U+52b4,U+58c1,U+5bff,U+5c04,U+5c06,U+5e95,U+5f31,U+5f93,U+63c3,U+640d,U+6557,U+6614,U+662f,U+67d3,U+690d,U+6bba,U+6e6f,U+72af,U+732b,U+7518,U+7ae0,U+7ae5,U+7af6,U+822a,U+89e6,U+8a3a,U+8a98,U+8cb8,U+8de1,U+8e8d,U+95d8,U+961c,U+96a3,U+96ea,U+9bae,U+ff20,U+ff22,U+ff29,U+ff2b-ff2c; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-98-400-normal.woff2) format("woff2"); unicode-range: U+25cb,U+4e71,U+4f59,U+50d5,U+520a,U+5217,U+5230,U+523a-523b,U+541b,U+5439,U+5747,U+59c9,U+5bdf,U+5c31,U+5de8,U+5e7c,U+5f69,U+6050,U+60d1,U+63cf,U+663c,U+67c4,U+6885,U+6c38,U+6d6e,U+6db2,U+6df7,U+6e2c,U+6f5f,U+7532,U+76e3-76e4,U+7701,U+793c,U+79f0,U+7a93,U+7d00,U+7de0,U+7e54,U+8328,U+8840,U+969c,U+96e8,U+9811,U+9aea,U+9b5a,U+ff24,U+ff2e,U+ff57; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-99-400-normal.woff2) format("woff2"); unicode-range: U+2191,U+505c,U+52e4,U+5305,U+535a,U+56e0,U+59bb,U+5acc,U+5b09,U+5b87,U+5c90,U+5df1,U+5e2d,U+5e33,U+5f3e,U+6298,U+6383,U+653b,U+6697,U+6804,U+6a39,U+6cca,U+6e90,U+6f2b,U+702c,U+7206,U+7236,U+7559,U+7565,U+7591,U+75c7,U+75db,U+7b4b,U+7bb1,U+7d99,U+7fbd,U+8131,U+885b,U+8b1d,U+8ff7,U+9003,U+9045,U+96a0,U+9732,U+990a,U+99d0,U+9e97,U+9f62,U+ff25,U+ff2d; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-100-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-101-400-normal.woff2) format("woff2"); unicode-range: U+25bc,U+3012,U+4ef2,U+4f0a,U+516b,U+5373,U+539a,U+53b3,U+559c,U+56f0,U+5727,U+5742,U+5965,U+59ff,U+5bc6,U+5dfb,U+5e45,U+5ead,U+5fb3,U+6211,U+6253,U+639b,U+63a8,U+6545,U+6575,U+6628,U+672d,U+68a8,U+6bdb,U+6d25,U+707d,U+767e,U+7834,U+7b46,U+7bc9,U+8074,U+82e6,U+8349,U+8a2a,U+8d70,U+8da3,U+8fce,U+91cc,U+967d,U+97ff,U+9996,U+ff1c,U+ff2f,U+ff32,U+ff34; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-102-400-normal.woff2) format("woff2"); unicode-range: U+3d,U+5e,U+25cf,U+4e0e,U+4e5d,U+4e73,U+4e94,U+4f3c,U+5009,U+5145,U+51ac,U+5238,U+524a,U+53f3,U+547c,U+5802,U+5922,U+5a66,U+5c0e,U+5de6,U+5fd8,U+5feb,U+6797,U+685c,U+6b7b,U+6c5f-6c60,U+6cc9,U+6ce2,U+6d17,U+6e21,U+7167,U+7642,U+76db,U+8001,U+821e,U+8857,U+89d2,U+8b1b,U+8b70,U+8cb4,U+8cde,U+8f03,U+8f2a,U+968e,U+9b54,U+9e7f,U+9ebb,U+ff05,U+ff33; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-103-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-104-400-normal.woff2) format("woff2"); unicode-range: U+4e01,U+4e21,U+4e38,U+52a9,U+547d,U+592e,U+5931,U+5b63,U+5c40,U+5dde,U+5e78,U+5efa,U+5fa1,U+604b,U+6075,U+62c5,U+632f,U+6a19,U+6c0f,U+6c11,U+6c96,U+6e05,U+70ba,U+71b1,U+7387,U+7403,U+75c5,U+77ed,U+795d,U+7b54,U+7cbe,U+7d19,U+7fa4,U+8089,U+81f4,U+8208,U+8336,U+8457,U+8a33,U+8c4a,U+8ca0,U+8ca8,U+8cc0,U+9014,U+964d,U+9803,U+983c,U+98db,U+ff17,U+ff21; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-105-400-normal.woff2) format("woff2"); unicode-range: U+25,U+25a0,U+4e26,U+4f4e,U+5341,U+56f2,U+5bbf,U+5c45,U+5c55,U+5c5e,U+5dee,U+5e9c,U+5f7c,U+6255,U+627f,U+62bc,U+65cf,U+661f,U+666e,U+66dc,U+67fb,U+6975,U+6a4b,U+6b32,U+6df1,U+6e29,U+6fc0,U+738b,U+7686,U+7a76,U+7a81,U+7c73,U+7d75,U+7dd2,U+82e5,U+82f1,U+85ac,U+888b,U+899a,U+8a31,U+8a8c,U+8ab0,U+8b58,U+904a,U+9060,U+9280,U+95b2,U+984d,U+9ce5,U+ff18; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-106-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-107-400-normal.woff2) format("woff2"); unicode-range: U+23,U+3c,U+2192,U+4e45,U+4efb,U+4f50,U+4f8b,U+4fc2,U+5024,U+5150,U+5272,U+5370,U+53bb,U+542b,U+56db,U+56e3,U+57ce,U+5bc4,U+5bcc,U+5f71,U+60aa,U+6238,U+6280,U+629c,U+6539,U+66ff,U+670d,U+677e-677f,U+6839,U+69cb,U+6b4c,U+6bb5,U+6e96,U+6f14,U+72ec,U+7389,U+7814,U+79cb,U+79d1,U+79fb,U+7a0e,U+7d0d,U+85e4,U+8d64,U+9632,U+96e2,U+9805,U+99ac,U+ff1e; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-108-400-normal.woff2) format("woff2"); unicode-range: U+2605-2606,U+301c,U+4e57,U+4fee,U+5065,U+52df,U+533b,U+5357,U+57df,U+58eb,U+58f0,U+591c,U+592a-592b,U+5948,U+5b85,U+5d0e,U+5ea7,U+5ff5,U+6025,U+63a1,U+63a5,U+63db,U+643a,U+65bd,U+671d,U+68ee,U+6982,U+6b73,U+6bd4,U+6d88,U+7570,U+7b11,U+7d76,U+8077,U+8217,U+8c37,U+8c61,U+8cc7,U+8d85,U+901f,U+962a,U+9802,U+9806,U+9854,U+98f2,U+9928,U+99c5,U+9ed2; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-109-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-110-400-normal.woff2) format("woff2"); unicode-range: U+40,U+4e86,U+4e95,U+4f01,U+4f1d,U+4fbf,U+5099,U+5171,U+5177,U+53cb,U+53ce,U+53f0,U+5668,U+5712,U+5ba4,U+5ca1,U+5f85,U+60f3,U+653e,U+65ad,U+65e9,U+6620,U+6750,U+6761,U+6b62,U+6b74,U+6e08,U+6e80,U+7248,U+7531,U+7533,U+753a,U+77f3,U+798f,U+7f6e,U+8449,U+88fd,U+89b3,U+8a55,U+8ac7,U+8b77,U+8db3,U+8efd,U+8fd4,U+9031-9032,U+9580,U+9589,U+96d1,U+985e; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-111-400-normal.woff2) format("woff2"); unicode-range: U+2b,U+d7,U+300e-300f,U+4e07,U+4e8c,U+512a,U+5149,U+518d,U+5236,U+52b9,U+52d9,U+5468,U+578b,U+57fa,U+5b8c,U+5ba2,U+5c02,U+5de5,U+5f37,U+5f62,U+623b,U+63d0,U+652f,U+672a,U+6848,U+6d41,U+7136,U+7537,U+754c,U+76f4,U+79c1,U+7ba1,U+7d44,U+7d4c,U+7dcf,U+7dda,U+7de8,U+82b1,U+897f,U+8ca9,U+8cfc,U+904e,U+9664,U+982d,U+9858,U+98a8,U+9a13,U+ff13,U+ff5c; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-112-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-113-400-normal.woff2) format("woff2"); unicode-range: U+26,U+5f,U+2026,U+203b,U+4e09,U+4eac,U+4ed5,U+4fa1,U+5143,U+5199,U+5207,U+539f,U+53e3,U+53f7,U+5411,U+5473,U+5546,U+55b6,U+5929,U+597d,U+5bb9,U+5c11,U+5c4b,U+5ddd,U+5f97,U+5fc5,U+6295,U+6301,U+6307,U+671b,U+76f8,U+78ba,U+795e,U+7d30,U+7d39,U+7d9a,U+89e3,U+8a00,U+8a73,U+8a8d,U+8a9e,U+8aad,U+8abf,U+8cea,U+8eca,U+8ffd,U+904b,U+9650,U+ff11-ff12; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-114-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-115-400-normal.woff2) format("woff2"); unicode-range: U+7c,U+3080,U+4ee5,U+5148,U+516c,U+521d,U+5225,U+529b,U+52a0,U+53ef,U+56de,U+56fd,U+5909,U+591a,U+5b66,U+5b9f,U+5bb6,U+5bfe,U+5e73,U+5e83,U+5ea6,U+5f53,U+6027,U+610f,U+6210,U+6240,U+660e,U+66f4,U+66f8,U+6709,U+6771,U+697d,U+69d8,U+6a5f,U+6c34,U+6cbb,U+73fe,U+756a,U+7684,U+771f,U+793a,U+7f8e,U+898f,U+8a2d,U+8a71,U+8fd1,U+9078,U+9577,U+96fb,U+ff5e; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-116-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-117-400-normal.woff2) format("woff2"); 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:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-118-400-normal.woff2) format("woff2"); unicode-range: U+21-22,U+27-2a,U+2c-3b,U+3f,U+41-4d,U+4f-5d,U+61-7b,U+7d,U+ab,U+ae,U+b2-b3,U+b7,U+bb,U+c9,U+cd,U+d6,U+d8,U+dc,U+e0-e5,U+e7-ed,U+ef,U+f1-f4,U+f6,U+f8,U+fa,U+fc-fd,U+103,U+14d,U+1b0,U+300-301,U+1ebf,U+1ec7,U+2013-2014,U+201c-201d,U+2039-203a,U+203c,U+2048-2049,U+2113,U+2122,U+65e5,U+6708,U+70b9; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-119-400-normal.woff2) format("woff2"); unicode-range: U+20,U+2027,U+3001-3002,U+3041-307f,U+3081-308f,U+3091-3093,U+3099-309a,U+309d-309e,U+30a1-30e1,U+30e3-30ed,U+30ef-30f0,U+30f2-30f4,U+30fb-30fe,U+ff0c,U+ff0e; }
@font-face { font-family:'Yusei Local'; font-style: normal; font-display: swap; font-weight: 400; src:url(/fonts/yusei-magic-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
/* 基調色：黒。アクセントは #e0ffff（ライトシアン） */
:root{
  --night:#0c0c0d;      /* 地色（黒） */
  --wood-dark:#050607;
  --night-2:#16181c;
  --line:#2c3136;
  --snow:#ffffff;       /* 文字（白） */
  --mist:#e6e6e6;       /* 補足の文字（やや控えめな白） */
  --lamp:#e0ffff;       /* アクセント（塗り） */
  --ink:#ffffff;        /* 小見出し・項目名・線 */
  --lamp-soft:#e0ffff14;
  --ice:#ffffff;
  --heading:#ffffff;    /* 見出し */
  /* 木目 */
  --grain:repeating-linear-gradient(177deg,#00000000 0 7px,#0000001a 7px 8px,#00000000 8px 19px,#ffffff08 19px 20px),repeating-linear-gradient(183deg,#00000000 0 31px,#00000024 31px 33px,#00000000 33px 57px);
  --mincho:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
  --gothic:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",sans-serif;
  --latin:"Cormorant Garamond","Times New Roman",serif;
  /* 無地マットブラック */
  --wall:none;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--wall);background-color:var(--night);color:var(--snow);font-family:var(--gothic);font-size:15px;line-height:1.8;margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.wrap{max-width:960px;margin:0 auto;padding-inline:20px}

/* ---- ヘッダー（3ジャンル） ---- */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:radial-gradient(120% 140% at 50% -40%,#6b472f4d 0%,#6b472f00 60%),linear-gradient(180deg,#3b2519 0%,#2b1a12 35%,#1f120b 65%,#0f0805 100%);border-top:1px solid #a87c4f;border-bottom:2px solid #a87c4f;box-shadow:0 1px 0 #4a3122 inset,0 6px 18px #000a}
.subnav{border-top:1px solid #a87c4f40}
.genres{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.genres a{flex:1 0 auto;text-align:center;text-decoration:none;padding:14px 12px 12px;font-size:13px;font-weight:500;color:#fff;opacity:.72;border-bottom:3px solid transparent;white-space:nowrap}
.genres a small{display:block;font-family:var(--latin);font-size:12px;letter-spacing:.14em;color:#fff;line-height:1.2}
.genres a[aria-current="true"]{color:#fff;opacity:1;font-weight:700;border-color:#c9a06e;background:linear-gradient(180deg,#a87c4f00,#a87c4f26)}
.genres a:hover{opacity:1}
.subnav{display:flex;gap:8px;padding-block:10px;overflow-x:auto}
.subnav a{text-decoration:none;font-size:13px;padding:5px 14px;border:1px solid #a87c4f80;border-radius:999px;color:#fff;background:#00000026;white-space:nowrap}
.subnav a[aria-current="true"]{background:linear-gradient(180deg,#8f6639,#6a4724);border-color:#c9a06e;color:#fff;font-weight:700}
/* スマホ：ヘッダーを画面幅に収めて横に動かないように固定 */
@media (max-width:720px){
  .genres{overflow:hidden;gap:0;padding-inline:8px}
  .genres a{flex:1 1 0;min-width:0;white-space:normal;padding:10px 3px 8px;font-size:11.5px;line-height:1.3}
  .genres a small{font-size:10px;letter-spacing:.06em;margin-bottom:2px}
  .genres a span{display:block;font-size:9.5px!important;white-space:nowrap}
  .subnav{overflow:hidden;gap:6px;padding-block:8px;padding-inline:12px}
  .subnav a{flex:1 1 0;min-width:0;text-align:center;padding:5px 4px;font-size:12px}
}

/* ---- 共通 ---- */
section.page{padding-block:32px 72px}
.eyebrow{font-family:var(--latin);font-style:italic;color:var(--ink);letter-spacing:.12em;font-size:15px}
h1,h2,h3{color:var(--heading);font-family:var(--mincho);text-wrap:balance;margin:0;line-height:1.35}
h2{font-size:26px;margin-bottom:18px}
.eyebrow,h2,.photo-hero .eyebrow{color:#e0ffff} /* セクションの英字ラベルと見出し */
h3{font-size:18px}
p{margin:0}
.lead{color:var(--mist);max-width:36em}
.lead b{color:var(--snow);font-weight:700}
.stack{display:flex;flex-direction:column;gap:14px}
.photo{position:relative;background:
  radial-gradient(120% 90% at 50% 110%,#e0ffff22,transparent 60%),
  repeating-linear-gradient(135deg,#15181c 0 10px,#1a1e23 10px 20px);
  background-color:var(--night-2);border:1px dashed #3a4148;border-radius:6px;display:grid;place-items:center;color:var(--mist);font-size:12px;text-align:center;aspect-ratio:4/3;max-width:100%;padding:8px}
.photo b{display:block;color:var(--snow);font-weight:500;font-size:13px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--lamp);color:#0b0c0e;font-weight:700;text-decoration:none;border:0;border-radius:4px;padding:12px 22px;font-family:var(--gothic);font-size:15px;cursor:pointer}
.btn.ghost{background:transparent;color:var(--snow);box-shadow:inset 0 0 0 1px var(--line)}
.btns{display:flex;flex-wrap:wrap;gap:10px}
.note{font-size:12px;color:var(--mist)}
.tag{display:inline-block;font-size:11px;letter-spacing:.06em;border:1px solid var(--ice);color:var(--ice);border-radius:3px;padding:0 6px;vertical-align:middle}

/* ---- ヒーロー ---- */
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding-block:28px 8px}
.hero h1{font-size:clamp(40px,8vw,68px);font-weight:800;letter-spacing:.02em;line-height:1.05}
.hero h1 span{display:block;font-family:var(--latin);font-weight:500;font-size:.42em;letter-spacing:.3em;color:var(--ink);margin-bottom:10px}
.hero .catch{font-family:var(--mincho);font-size:19px;margin-top:14px}
.hero .photo{aspect-ratio:1/1;border-radius:50% 50% 8px 8px / 60% 60% 8px 8px} /* かまくらの形 */

/* 写真背景のヒーロー（トップ・English） */
body{overflow-x:clip}
section.page:has(> .photo-hero){padding-top:0}
.photo-hero{grid-template-columns:1fr;align-content:end;min-height:clamp(480px,78vh,760px);margin-inline:calc(50% - 50vw);padding:clamp(72px,14vw,150px) max(20px,calc(50vw - 460px)) clamp(48px,7vw,80px);
  background:linear-gradient(90deg,#1a0e06b3 0%,#1a0e0659 32%,#1a0e0600 58%),linear-gradient(0deg,#0b0c0e 0%,#0b0c0e00 22%),url("/assets/hero-bar.jpg") center/cover no-repeat #0b0f16;color:#fff}
.photo-hero .stack{max-width:34em}
.photo-hero h1{color:#e0ffff;text-shadow:3px 4px 0 #2b1a12,5px 7px 14px #000000e6,0 0 30px #000a}
.photo-hero h1 span{text-shadow:0 2px 18px #000c}
.photo-hero .lead,.photo-hero .catch{text-shadow:0 1px 10px #000}
.photo-hero h1 span{color:#fff}
.photo-hero .eyebrow{color:#e0ffff}
#home .photo-hero h1 span,#en .photo-hero h1 span{color:#e0ffff} /* KOBE・KITANOZAKA */
.photo-hero .lead,.photo-hero .note{color:#fff}
.photo-hero .tag{color:#fff;border-color:#fff}
.photo-hero .btn{color:#0b0c0e}
.photo-hero .btn.ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px #ffffffb3}
@media (max-width:720px){.photo-hero{background:linear-gradient(0deg,#0b0c0e 0%,#0b0c0ecc 38%,#0b0c0e00 72%),url("/assets/hero-bar.jpg") 72% center/cover no-repeat #0b0f16}}

/* ---- 天井のスポットライト3灯（貸切・飲み放題ページ）：ヒーローを過ぎたら現れ、ギャラリーで暖かい灯りがつく ---- */
.lamps{position:fixed;left:0;right:0;top:var(--hdr,100px);height:0;z-index:6;pointer-events:none;opacity:0;transition:opacity .5s}
.lamps.show{opacity:1}
.lamps .track{position:absolute;left:5%;top:4px;width:90%;height:9px;border-top:1.3px solid #ffffffcc;border-bottom:1.3px solid #ffffff99;background:#ffffff0d}
@media (max-width:720px){.lamps .track{height:7px}}
.spot{position:absolute;left:var(--x);top:8px;transform:translateX(-50%) rotate(var(--a));transform-origin:50% 0}
.spot svg{display:block;width:46px;height:auto;position:relative;z-index:1}
.spot .sketch{fill:none;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.spot .sketch .s2{stroke-width:.8;opacity:.55}
.spot .lens{fill:#3a3a3c;transition:fill .4s}
.lamps.on .spot .lens{fill:#ffd27a;filter:drop-shadow(0 0 5px #ffb347) drop-shadow(0 3px 14px #f7a534)}
.beam{--btop:46px;position:absolute;left:50%;top:var(--btop);width:min(1100px,130vw);height:max(120px,calc(80vh - var(--hdr,100px) - var(--btop)));transform:translateX(-50%);
  background:radial-gradient(80% 100% at 50% 0%,#f7a5343d 0%,#f7a5341f 45%,#f7a5340d 80%,#f7a53400 100%);
  -webkit-mask-image:conic-gradient(from 0deg at 50% 0%,#0000 0deg 110deg,#000 144deg 216deg,#0000 250deg 360deg),linear-gradient(180deg,#000 0%,#0009 45%,#0000 100%);
  -webkit-mask-composite:source-in;
  mask-image:conic-gradient(from 0deg at 50% 0%,#0000 0deg 110deg,#000 144deg 216deg,#0000 250deg 360deg),linear-gradient(180deg,#000 0%,#0009 45%,#0000 100%);
  mask-composite:intersect;
  mix-blend-mode:screen;opacity:0;transition:opacity .6s}
.lamps.on .beam,.pendants.on .beam{opacity:1}
@media (prefers-reduced-motion:no-preference){.lamps.on .spot.s2 .lens{animation:flick 6s infinite}@keyframes flick{0%,100%{opacity:1}4%{opacity:.7}6%{opacity:1}}}
@media (max-width:720px){.spot svg{width:32px}.beam{--btop:32px}.spot.s1{--x:14%!important}.spot.s3{--x:86%!important}}

/* ---- トップ・English：高さ違いのペンダントライト5灯 ---- */
.pendants{position:fixed;left:0;right:0;top:var(--hdr,100px);height:0;z-index:6;pointer-events:none;opacity:0;transition:opacity .5s}
.pendants.show{opacity:1}
.pend{--len:var(--l);position:absolute;left:var(--x);top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}
.pend .cord{width:1.2px;height:var(--len);background:#ffffffcc}
.pend svg{display:block;width:50px;height:auto;margin-top:-1px;position:relative;z-index:1}
.pend .sketch{fill:none;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pend .sketch .s2{stroke-width:.8;opacity:.55}
.pend .lens{fill:#3a3a3c;transition:fill .4s}
.pendants.on .pend .lens{fill:#ffd27a;filter:drop-shadow(0 0 5px #ffb347) drop-shadow(0 3px 12px #f7a534)}
.pend .beam{--btop:calc(var(--len) + 27px);width:min(560px,90vw)}
@media (prefers-reduced-motion:no-preference){.pendants.on .pend:nth-of-type(4) .lens{animation:flick 7s infinite}}
@media (max-width:720px){.pend svg{width:34px}.pend .beam{--btop:calc(var(--len) + 18px)}.pend{--len:calc(var(--l) * .7)}}

/* 貸切・飲み放題ページ：背景にうっすら雪の結晶 */
section#party{position:relative}
section#party::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);opacity:.45;z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='480'%3E%3Cg fill='none' stroke='%23e0ffff' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg opacity='0.23'%3E%3Cpath d='M50.0 60.0L64.1 65.1M57.0 62.6L59.4 67.1M57.0 62.6L61.8 60.7M61.0 64.0L62.5 66.9M61.0 64.0L64.1 62.8M50.0 60.0L52.6 74.8M51.3 67.4L48.6 71.7M51.3 67.4L55.3 70.5M52.0 71.5L50.3 74.3M52.0 71.5L54.6 73.6M50.0 60.0L38.5 69.6M44.3 64.8L39.2 64.6M44.3 64.8L43.5 69.9M41.0 67.5L37.7 67.4M41.0 67.5L40.6 70.8M50.0 60.0L35.9 54.9M43.0 57.4L40.6 52.9M43.0 57.4L38.2 59.3M39.0 56.0L37.5 53.1M39.0 56.0L35.9 57.2M50.0 60.0L47.4 45.2M48.7 52.6L51.4 48.3M48.7 52.6L44.7 49.5M48.0 48.5L49.7 45.7M48.0 48.5L45.4 46.4M50.0 60.0L61.5 50.4M55.7 55.2L60.8 55.4M55.7 55.2L56.5 50.1M59.0 52.5L62.3 52.6M59.0 52.5L59.4 49.2' stroke-width='1.36'/%3E%3C/g%3E%3Cg opacity='0.2'%3E%3Cpath d='M200.0 40.0L206.9 43.2M204.1 41.9L205.0 44.4M204.1 41.9L206.6 41.0M200.0 40.0L200.7 47.6M200.4 44.5L198.7 46.6M200.4 44.5L202.5 46.2M200.0 40.0L193.7 44.4M196.3 42.6L193.7 42.1M196.3 42.6L195.8 45.2M200.0 40.0L193.1 36.8M195.9 38.1L195.0 35.6M195.9 38.1L193.4 39.0M200.0 40.0L199.3 32.4M199.6 35.5L201.3 33.4M199.6 35.5L197.5 33.8M200.0 40.0L206.3 35.6M203.7 37.4L206.3 37.9M203.7 37.4L204.2 34.8' stroke-width='0.82'/%3E%3Ccircle cx='207.3' cy='43.4' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='200.7' cy='48.1' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='193.4' cy='44.6' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='192.7' cy='36.6' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='199.3' cy='31.9' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='206.6' cy='35.4' r='0.9' fill='%23e0ffff' stroke='none'/%3E%3C/g%3E%3Cg opacity='0.22'%3E%3Cpath d='M340.0 90.0L360.0 91.4M349.5 95.2L352.4 90.9M350.1 86.2L352.4 90.9M340.0 90.0L348.8 108.0M340.2 100.8L345.4 101.1M348.3 96.8L345.4 101.1M340.0 90.0L328.8 106.6M330.8 95.6L333.1 100.3M338.3 100.6L333.1 100.3M340.0 90.0L320.0 88.6M330.5 84.8L327.6 89.1M329.9 93.8L327.6 89.1M340.0 90.0L331.2 72.0M339.8 79.2L334.6 78.9M331.7 83.2L334.6 78.9M340.0 90.0L351.2 73.4M349.2 84.4L346.9 79.7M341.7 79.4L346.9 79.7' stroke-width='1.82'/%3E%3C/g%3E%3Cg opacity='0.16'%3E%3Cpath d='M440.0 30.0L448.0 30.8M444.6 32.1L444.9 28.9M440.0 30.0L443.3 37.3M440.5 35.0L443.4 33.7M440.0 30.0L435.3 36.5M435.9 32.9L438.5 34.8M440.0 30.0L432.0 29.2M435.4 27.9L435.1 31.1M440.0 30.0L436.7 22.7M439.5 25.0L436.6 26.3M440.0 30.0L444.7 23.5M444.1 27.1L441.5 25.2' stroke-width='1.28'/%3E%3C/g%3E%3Cg opacity='0.23'%3E%3Cpath d='M120.0 180.0L131.0 180.6M123.8 180.2L124.8 181.7M123.8 180.2L124.9 178.8M126.0 180.3L127.0 181.8M126.0 180.3L127.1 178.9M128.2 180.4L129.2 181.9M128.2 180.4L129.3 179.0M120.0 180.0L125.0 189.8M121.7 183.4L120.9 185.0M121.7 183.4L123.5 183.7M122.7 185.4L121.9 186.9M122.7 185.4L124.5 185.6M123.7 187.4L122.9 188.9M123.7 187.4L125.5 187.6M120.0 180.0L114.0 189.2M117.9 183.2L116.1 183.3M117.9 183.2L118.6 184.9M116.7 185.1L114.9 185.1M116.7 185.1L117.4 186.7M115.5 186.9L113.7 187.0M115.5 186.9L116.2 188.6M120.0 180.0L109.0 179.4M116.2 179.8L115.2 178.3M116.2 179.8L115.1 181.2M114.0 179.7L113.0 178.2M114.0 179.7L112.9 181.1M111.8 179.6L110.8 178.1M111.8 179.6L110.7 181.0M120.0 180.0L115.0 170.2M118.3 176.6L119.1 175.0M118.3 176.6L116.5 176.3M117.3 174.6L118.1 173.1M117.3 174.6L115.5 174.4M116.3 172.6L117.1 171.1M116.3 172.6L114.5 172.4M120.0 180.0L126.0 170.8M122.1 176.8L123.9 176.7M122.1 176.8L121.4 175.1M123.3 174.9L125.1 174.9M123.3 174.9L122.6 173.3M124.5 173.1L126.3 173.0M124.5 173.1L123.8 171.4' stroke-width='1.00'/%3E%3C/g%3E%3Cg opacity='0.12'%3E%3Cpath d='M280.0 210.0L290.9 212.5M284.8 213.7L286.8 211.6M285.9 208.8L286.8 211.6M280.0 210.0L283.3 220.7M279.2 216.0L282.0 216.6M284.0 214.5L282.0 216.6M280.0 210.0L272.4 218.2M274.4 212.3L275.3 215.1M278.1 215.7L275.3 215.1M280.0 210.0L269.1 207.5M275.2 206.3L273.2 208.4M274.1 211.2L273.2 208.4M280.0 210.0L276.7 199.3M280.8 204.0L278.0 203.4M276.0 205.5L278.0 203.4M280.0 210.0L287.6 201.8M285.6 207.7L284.7 204.9M281.9 204.3L284.7 204.9' stroke-width='1.27'/%3E%3Ccircle cx='290.2' cy='219.5' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='276.9' cy='223.6' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='266.6' cy='214.1' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='269.8' cy='200.5' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='283.1' cy='196.4' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='293.4' cy='205.9' r='1.0' fill='%23e0ffff' stroke='none'/%3E%3C/g%3E%3Cg opacity='0.17'%3E%3Cpath d='M420.0 220.0L428.9 224.5M420.0 220.0L420.5 230.0M420.0 220.0L411.6 225.4M420.0 220.0L411.1 215.5M420.0 220.0L419.5 210.0M420.0 220.0L428.4 214.6M422.1 223.2L418.3 223.4L416.2 220.2L417.9 216.8L421.7 216.6L423.8 219.8ZM426.4 223.3L426.9 225.2M426.4 223.3L428.3 222.5M420.4 227.2L418.9 228.6M420.4 227.2L422.0 228.4M414.0 223.9L412.0 223.3M414.0 223.9L413.7 225.9M413.6 216.7L413.1 214.8M413.6 216.7L411.7 217.5M419.6 212.8L421.1 211.4M419.6 212.8L418.0 211.6M426.0 216.1L428.0 216.7M426.0 216.1L426.3 214.1' stroke-width='0.91'/%3E%3C/g%3E%3Cg opacity='0.13'%3E%3Cpath d='M60.0 320.0L77.4 324.7M68.7 322.3L72.0 327.5M68.7 322.3L74.1 319.6M73.6 323.6L75.7 327.0M73.6 323.6L77.1 321.8M60.0 320.0L64.7 337.4M62.3 328.7L59.6 334.1M62.3 328.7L67.5 332.0M63.6 333.6L61.8 337.1M63.6 333.6L67.0 335.7M60.0 320.0L47.3 332.7M53.6 326.4L47.5 326.7M53.6 326.4L53.3 332.5M50.1 329.9L46.1 330.1M50.1 329.9L49.9 333.9M60.0 320.0L42.6 315.3M51.3 317.7L48.0 312.5M51.3 317.7L45.9 320.4M46.4 316.4L44.3 313.0M46.4 316.4L42.9 318.2M60.0 320.0L55.3 302.6M57.7 311.3L60.4 305.9M57.7 311.3L52.5 308.0M56.4 306.4L58.2 302.9M56.4 306.4L53.0 304.3M60.0 320.0L72.7 307.3M66.4 313.6L72.5 313.3M66.4 313.6L66.7 307.5M69.9 310.1L73.9 309.9M69.9 310.1L70.1 306.1' stroke-width='1.64'/%3E%3C/g%3E%3Cg opacity='0.13'%3E%3Cpath d='M200.0 300.0L206.1 303.1M203.6 301.8L204.3 304.1M203.6 301.8L205.8 301.1M200.0 300.0L200.4 306.8M200.2 304.0L198.6 305.8M200.2 304.0L202.0 305.6M200.0 300.0L194.3 303.7M196.6 302.2L194.3 301.7M196.6 302.2L196.1 304.5M200.0 300.0L193.9 296.9M196.4 298.2L195.7 295.9M196.4 298.2L194.2 298.9M200.0 300.0L199.6 293.2M199.8 296.0L201.4 294.2M199.8 296.0L198.0 294.4M200.0 300.0L205.7 296.3M203.4 297.8L205.7 298.3M203.4 297.8L203.9 295.5' stroke-width='0.80'/%3E%3Ccircle cx='206.4' cy='303.3' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='200.4' cy='307.2' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='194.0' cy='303.9' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='193.6' cy='296.7' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='199.6' cy='292.8' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='206.0' cy='296.1' r='0.8' fill='%23e0ffff' stroke='none'/%3E%3C/g%3E%3Cg opacity='0.13'%3E%3Cpath d='M330.0 360.0L339.7 367.1M333.2 365.6L336.0 364.4M336.3 361.3L336.0 364.4M330.0 360.0L328.7 371.9M326.7 365.6L329.2 367.4M332.1 366.1L329.2 367.4M330.0 360.0L319.0 364.9M323.5 359.9L323.2 363.0M325.7 364.9L323.2 363.0M330.0 360.0L320.3 352.9M326.8 354.4L324.0 355.6M323.7 358.7L324.0 355.6M330.0 360.0L331.3 348.1M333.3 354.4L330.8 352.6M327.9 353.9L330.8 352.6M330.0 360.0L341.0 355.1M336.5 360.1L336.8 357.0M334.3 355.1L336.8 357.0' stroke-width='1.09'/%3E%3C/g%3E%3Cg opacity='0.2'%3E%3Cpath d='M450.0 380.0L465.5 383.9M458.5 385.4L460.1 379.2M450.0 380.0L454.4 395.4M449.6 390.1L455.7 388.3M450.0 380.0L438.9 391.5M441.0 384.7L445.6 389.1M450.0 380.0L434.5 376.1M441.5 374.6L439.9 380.8M450.0 380.0L445.6 364.6M450.4 369.9L444.3 371.7M450.0 380.0L461.1 368.5M459.0 375.3L454.4 370.9' stroke-width='2.33'/%3E%3C/g%3E%3Cg opacity='0.23'%3E%3Cpath d='M150.0 430.0L158.0 436.0M152.8 432.1L152.7 433.7M152.8 432.1L154.3 431.6M154.4 433.3L154.3 434.9M154.4 433.3L155.9 432.8M156.0 434.5L155.9 436.1M156.0 434.5L157.5 434.0M150.0 430.0L148.8 439.9M149.6 433.5L148.2 434.2M149.6 433.5L150.8 434.5M149.3 435.5L147.9 436.2M149.3 435.5L150.5 436.5M149.1 437.4L147.7 438.2M149.1 437.4L150.3 438.5M150.0 430.0L140.8 433.9M146.8 431.4L145.4 430.5M146.8 431.4L146.4 432.9M144.9 432.1L143.6 431.3M144.9 432.1L144.6 433.7M143.1 432.9L141.7 432.1M143.1 432.9L142.8 434.5M150.0 430.0L142.0 424.0M147.2 427.9L147.3 426.3M147.2 427.9L145.7 428.4M145.6 426.7L145.7 425.1M145.6 426.7L144.1 427.2M144.0 425.5L144.1 423.9M144.0 425.5L142.5 426.0M150.0 430.0L151.2 420.1M150.4 426.5L151.8 425.8M150.4 426.5L149.2 425.5M150.7 424.5L152.1 423.8M150.7 424.5L149.5 423.5M150.9 422.6L152.3 421.8M150.9 422.6L149.7 421.5M150.0 430.0L159.2 426.1M153.2 428.6L154.6 429.5M153.2 428.6L153.6 427.1M155.1 427.9L156.4 428.7M155.1 427.9L155.4 426.3M156.9 427.1L158.3 427.9M156.9 427.1L157.2 425.5' stroke-width='0.91'/%3E%3C/g%3E%3Cg opacity='0.19'%3E%3Cpath d='M260.0 450.0L264.5 453.3M261.5 452.6L262.8 452.0M263.0 450.6L262.8 452.0M260.0 450.0L259.4 455.6M258.5 452.6L259.6 453.5M261.0 452.9L259.6 453.5M260.0 450.0L254.9 452.3M257.0 450.0L256.8 451.4M258.0 452.3L256.8 451.4M260.0 450.0L255.5 446.7M258.5 447.4L257.2 448.0M257.0 449.4L257.2 448.0M260.0 450.0L260.6 444.4M261.5 447.4L260.4 446.5M259.0 447.1L260.4 446.5M260.0 450.0L265.1 447.7M263.0 450.0L263.2 448.6M262.0 447.7L263.2 448.6' stroke-width='0.80'/%3E%3Ccircle cx='262.8' cy='456.4' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='255.9' cy='455.7' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='253.0' cy='449.3' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='257.2' cy='443.6' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='264.1' cy='444.3' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3Ccircle cx='267.0' cy='450.7' r='0.5' fill='%23e0ffff' stroke='none'/%3E%3C/g%3E%3Cg opacity='0.24'%3E%3Cpath d='M30.0 450.0L39.0 450.5M30.0 450.0L34.1 458.0M30.0 450.0L25.1 457.5M30.0 450.0L21.0 449.5M30.0 450.0L25.9 442.0M30.0 450.0L34.9 442.5M32.9 451.9L29.8 453.4L27.0 451.6L27.1 448.1L30.2 446.6L33.0 448.4ZM36.5 450.3L37.6 451.8M36.5 450.3L37.7 449.0M32.9 455.8L32.2 457.4M32.9 455.8L34.7 456.2M26.5 455.4L24.7 455.7M26.5 455.4L27.0 457.2M23.5 449.7L22.4 448.2M23.5 449.7L22.3 451.0M27.1 444.2L27.8 442.6M27.1 444.2L25.3 443.8M33.5 444.6L35.3 444.3M33.5 444.6L33.0 442.8' stroke-width='0.82'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 0 0/480px 480px repeat}
@media (max-width:720px){section#party::before{background-size:340px 340px}}
/* 貸切・飲み放題ページ：ご利用シーンのチェキ（裏返しなし） */
.scenes{display:flex;flex-direction:column;gap:clamp(36px,6vw,56px);padding:20px 0 8px}
.scenes .cheki{width:min(330px,80%);margin:0 4%;align-self:flex-start}
.scenes .cheki:nth-of-type(even){align-self:flex-end}
.scenes .cheki .front{padding:12px 12px 0}
.scenes .cheki img{aspect-ratio:5/4}
@media (max-width:720px){.scenes{gap:34px}.scenes .cheki{width:84%;margin-inline:2%}.scenes .cheki .front{padding:9px 9px 0}}
/* 貸切・飲み放題ページ：ペンダントライトをつなぐ黄色のイルミネーション */
.garland{position:absolute;left:0;top:0;width:100%;height:150px;overflow:visible}
.garland .wire{fill:none;stroke:#ffffff80;stroke-width:1}
.garland .tie{stroke:#ffffff66;stroke-width:.8}
.garland .led{opacity:.3;transition:opacity .5s}
.pendants.on .garland .led{opacity:1;filter:drop-shadow(0 0 3px currentColor) drop-shadow(0 0 7px currentColor)}
@media (prefers-reduced-motion:no-preference){.pendants.on .garland .led{animation:twinkle 2.4s ease-in-out infinite;animation-delay:var(--d)}@keyframes twinkle{0%,100%{opacity:1}50%{opacity:.35}}}
#party .party-hero{background:linear-gradient(90deg,#08090bb3 0%,#08090b59 32%,#08090b00 58%),linear-gradient(0deg,#0b0c0e 0%,#0b0c0e00 22%),url("/assets/party-hero5.jpg") 50% 60%/cover no-repeat #0b0f16}
@media (max-width:720px){#party .party-hero{background:linear-gradient(0deg,#0b0c0e 0%,#0b0c0ecc 38%,#0b0c0e00 72%),url("/assets/party-hero5.jpg") 40% 60%/cover no-repeat #0b0f16}}
/* 飲み放題メニュー：ボタンとポップアップ（メニュー表と同じ配色） */
.menu-btn{display:block;margin:6px auto 0;text-align:center;line-height:1.5;padding:14px 26px}
.menu-dialog{width:min(920px,94vw);max-height:88vh;overflow:auto;border:0;border-radius:10px;background:linear-gradient(180deg,#eaf4fb,#ffffff 22%);color:#3a3a3a;padding:26px 24px 30px;font-family:var(--gothic)}
.menu-dialog::backdrop{background:#000000cc}
.md-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:2px solid #b98a4b;padding-bottom:10px;margin-bottom:16px}
.md-brand{font-family:var(--mincho);font-size:22px;color:#2f5f86;margin:0}
.md-brand b{font-weight:800;letter-spacing:.02em}
.md-sub{font-family:var(--mincho);font-size:13px;letter-spacing:.24em;color:#5c86a8;margin:4px 0 0}
.md-close{font:inherit;font-size:13px;background:#fff;color:#2f5f86;border:1px solid #9cbfd8;border-radius:999px;padding:6px 16px;cursor:pointer}
.md-notes{list-style:none;margin:0;padding:0;font-size:12.5px;line-height:1.9;color:#6b7783}
.md-notes li{padding-left:1em;text-indent:-1em}
.md-notes li::before{content:"・"}
.md-foot{margin:18px 0 0;border-top:1px dotted #9cbfd8;padding-top:14px}
.md-price{font-size:15px;font-variant-numeric:tabular-nums;color:#2f3a44;text-align:center;margin-bottom:20px}
.md-price .note{color:#6b7783;font-size:12px}
.mcats{columns:3 210px;column-gap:28px}
.mcat{break-inside:avoid;margin-bottom:20px}
.mcat h3{font-size:15px;color:#2f6f9f;border-bottom:1px solid #b9d4e6;padding-bottom:4px;margin-bottom:6px}
.mcat ul{margin:0;padding:0;list-style:none;font-size:13.5px;line-height:1.8;color:#444}
.mmix{margin-top:6px;border-top:1px dotted #9cbfd8;padding-top:14px}
.mmix h3{font-size:15px;color:#2f5f86;letter-spacing:.3em;text-align:center;margin:0}
.mmix p{font-size:13px;color:#555;text-align:center;margin-top:8px;line-height:1.9}
.mcat ul.prices li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;border-bottom:1px dotted #d3e2ec;padding-block:2px}
.mcat ul.prices b{font-weight:600;color:#2f5f86;font-variant-numeric:tabular-nums;white-space:nowrap}
.mcats{columns:2 260px}
@media (max-width:720px){.menu-dialog{padding:18px 14px 22px}.mcats{columns:2 130px;column-gap:16px}.mcat ul{font-size:12.5px}.md-brand{font-size:19px}}
/* チェキのイルミネーション（貸切・飲み放題ページ） */
#homeForm,#partyForm,#enForm{scroll-margin-top:96px}
.wrap-lights{position:absolute;inset:-14px;z-index:2;pointer-events:none}
.wrap-lights i{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:var(--c);box-shadow:0 0 4px var(--c),0 0 10px var(--c)}
.wrap-lights i::before{content:"";position:absolute;left:50%;top:50%;width:17px;height:1px;background:#ffffffc4;transform:translate(-50%,-50%) rotate(var(--a));z-index:-1}
@media (prefers-reduced-motion:no-preference){.wrap-lights i{animation:twinkle 2.6s ease-in-out infinite;animation-delay:var(--d)}}
@media (max-width:720px){.wrap-lights{inset:-9px}.wrap-lights i{width:6px;height:6px;margin:-3px 0 0 -3px}.wrap-lights i::before{width:14px}}
/* ---- 店舗情報 ---- */
.info{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px;margin-top:8px}
.info dl{margin:0;display:grid;grid-template-columns:7.5em 1fr;padding-block:12px;border-bottom:1px solid var(--line);gap:12px}
.info dt{font-family:var(--mincho);color:var(--ink);font-size:14px}
.info dd{margin:0}
.price{font-variant-numeric:tabular-nums}
/* ギャラリー：チェキ風 */
.gallery{display:flex;flex-direction:column;gap:clamp(36px,6vw,56px);padding-block:18px 8px}
.cheki{margin:0;width:min(330px,80%);align-self:flex-start;margin-inline:4%;transform:rotate(var(--r,-2deg));position:relative;perspective:1400px;cursor:pointer;transition:transform .25s ease;-webkit-tap-highlight-color:transparent}
.cheki:nth-child(even){align-self:flex-end;--r:2.2deg}.cheki:nth-child(3n){--r:-1.2deg}.cheki:nth-child(4n){--r:1.4deg}
.cheki::after{content:"";position:absolute;z-index:3;top:-12px;left:50%;width:96px;height:28px;transform:translateX(-50%) rotate(-3deg);background:#e0ffffb0;box-shadow:0 1px 2px #0003;pointer-events:none}
/* チェキから少し離した囲み線 */
.cheki::before{content:"";position:absolute;inset:-14px;z-index:-1;pointer-events:none;border:1px solid #ffffff99}
@media (max-width:720px){.cheki::before{inset:-9px}}
.cheki-inner{display:grid;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.3,.7,.3,1)}
.cheki.is-flipped .cheki-inner{transform:rotateY(180deg)}
.face{grid-area:1/1;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fbfaf6;box-shadow:0 10px 22px #000c,0 2px 4px #0008}
.front{padding:16px 16px 0;position:relative}
.back{transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;gap:16px;padding:32px 26px;background:repeating-linear-gradient(0deg,#fbfaf6 0 31px,#e6e1d4 31px 32px) #fbfaf6}
.back p{font-family:"Yusei Local","Yusei Magic",cursive;color:#3c2415;font-size:clamp(14.5px,2.1vw,16px);line-height:1.95}
.back .soon,.cheki figcaption .soon{color:#8a7a68}
.back.dense{padding:24px 20px}.back.dense p{font-size:clamp(13px,1.85vw,14px);line-height:1.8}.back p b{font-weight:400;color:#3c2415;text-decoration:underline;text-decoration-color:#3c241566;text-underline-offset:3px}
.back-note{font-size:11px;color:#8a7a68;text-align:right}
.flip-hint{position:absolute;top:24px;right:24px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#0b0c0eb3;color:#fff;font-size:16px;line-height:1}
.cheki img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#222}
.cheki figcaption{font-family:"Yusei Local","Yusei Magic",cursive;color:#3c2415;font-size:clamp(15px,2.3vw,18px);line-height:1.6;padding:14px 6px 20px;text-align:center}
/* 1枚目の横の「タップしてみて！」 */
.tap-hint{position:absolute;left:calc(100% + 18px);top:34%;width:170px;color:#fff;pointer-events:none;display:flex;flex-direction:column;align-items:flex-start;gap:2px;transform:rotate(calc(var(--r,-2deg) * -1));transition:opacity .3s}
.tap-text{font-family:"Yusei Local","Yusei Magic",cursive;font-size:22px;line-height:1.2;padding-left:44px;white-space:nowrap;text-shadow:0 2px 8px #000}
.tap-hint svg{display:block;filter:drop-shadow(0 2px 4px #000)}
.cheki.is-flipped .tap-hint{opacity:0}
@media (prefers-reduced-motion:no-preference){.tap-hint svg{animation:nudge 1.6s ease-in-out infinite}@keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(-8px)}}}
@media (max-width:720px){.tap-hint{left:auto;top:auto;right:4%;bottom:calc(100% + 14px);width:auto;flex-direction:row;align-items:flex-end;gap:0}.tap-text{font-size:17px;padding-left:0;padding-bottom:18px}.tap-hint svg{width:72px;height:40px;transform:rotate(-55deg)}.cheki:has(.tap-hint){margin-top:84px}@media (prefers-reduced-motion:no-preference){.tap-hint svg{animation:none}}}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.cheki:hover{transform:rotate(0) scale(1.04);z-index:2}}
@media (prefers-reduced-motion:reduce){.cheki-inner{transition:none}}
@media (max-width:720px){.cheki{width:84%;margin-inline:2%}.front{padding:10px 10px 0}.flip-hint{top:16px;right:16px}}
.access{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.access-side{display:flex;flex-direction:column;align-items:center;gap:18px}.access-side .photo{width:100%}
.party-mark{margin-top:40px}
section#party,section#home,section#en{padding-bottom:20px}
.kamakura-mark{width:195px;max-width:60%;height:auto;color:#e0ffff}
.sns{display:flex;flex-wrap:wrap;gap:8px}

/* アクセスの案内地図 */
.accessmap{margin:0;width:100%;position:relative;z-index:7}
.accessmap a{display:block;text-decoration:none;border:0}
.accessmap svg{display:block;width:100%;height:auto;border:1px solid #3a4046;border-radius:4px}
.accessmap .rd{fill:#ffffff26}
.accessmap .edge path{fill:none;stroke:#ffffff8f;stroke-width:1.1}
.accessmap .rail path{fill:none;stroke:#ffffff99;stroke-width:1.6}
.accessmap .rail .ties{stroke:#ffffff5c;stroke-width:1.1}
.accessmap .sta{fill:#ffffff2e;stroke:#ffffffb8;stroke-width:1.2}
.accessmap .route{fill:none;stroke:var(--ice);stroke-width:3;stroke-dasharray:8 6;stroke-linecap:round}
.accessmap .arrow{fill:none;stroke:var(--ice);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.accessmap .pin path{fill:var(--ice);stroke:#0c0c0d;stroke-width:1.2}
.accessmap .pinhole{fill:#12151a}
.accessmap text{font-family:var(--gothic);fill:#f2f4f5}
.accessmap .s1{font-size:13px;fill:#f2f4f5}
.accessmap .s2{font-size:15px;fill:#fff}
.accessmap .shop{font-size:17px;font-weight:700;fill:#fff;font-family:var(--latin)}
.accessmap .addr{font-size:12.5px;fill:#dfe3e5}
.accessmap .st{font-size:14px;fill:#d3d7da}
.accessmap .dir{font-size:13px;fill:#b3b8bb}
.accessmap .walk{font-size:15px;fill:var(--ice)}
.accessmap .compass path{fill:none;stroke:#a9aeb1;stroke-width:1.5;stroke-linecap:round}
.accessmap .compass text{font-size:12px;fill:#a9aeb1}
.accessmap figcaption{margin-top:10px;font-size:12.5px;line-height:1.75;color:#cfd3d6}
.info dd a{color:var(--ice);text-decoration:none;border-bottom:1px solid #e0ffff59}
.info dd a.mail{font-size:13.5px;word-break:break-all;letter-spacing:0}
/* ---- 予約 ---- */
form{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;background:var(--night-2);border:1px solid var(--line);border-radius:8px;padding:24px}
form .full{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--mist)}
label em{font-style:normal;color:var(--ink);font-size:11px;margin-left:2px}
label .lb{display:block}
input,select,textarea{font:inherit;color:var(--snow);background:var(--night);border:1px solid var(--line);border-radius:4px;padding:10px 12px;width:100%}
textarea{min-height:90px;resize:vertical}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{flex-direction:row;align-items:center;gap:6px;border:1px solid var(--line);border-radius:4px;padding:8px 12px;color:var(--snow);cursor:pointer}
.seg input{width:auto;accent-color:var(--ink)}
#pstatus{color:var(--mist)}
#pstatus.done-ok{color:#e0ffff;font-weight:700}
.pdone-body{white-space:pre-wrap;font-family:var(--gothic);font-size:13.5px;line-height:1.9;margin:10px 0 0;color:var(--snow)}
.done{background:var(--lamp-soft);border:1px solid var(--ink);border-radius:8px;padding:20px}

/* ---- 思い出 ---- */
.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters button{font:inherit;font-size:13px;background:transparent;color:var(--mist);border:1px solid var(--line);border-radius:999px;padding:4px 14px;cursor:pointer}
.filters button[aria-pressed="true"]{color:#0b0c0e;background:var(--lamp);border-color:var(--ink)}
.memories{columns:3 220px;column-gap:14px}
.memory{break-inside:avoid;margin-bottom:14px;background:var(--night-2);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.memory .photo{border:0;border-radius:0}
.memory .cap{padding:10px 12px 12px}
.memory time{font-family:var(--latin);color:var(--ink);font-size:14px;letter-spacing:.05em}

/* ---- 二次会 ---- */
.plans{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.plan{border:1px solid #ffffffb3;border-radius:8px;padding:22px;display:flex;flex-direction:column;gap:10px;background:var(--night-2)}
.plan.main{border-color:#ffffffb3}
.plan .yen{font-family:var(--mincho);font-size:40px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.plan .yen small{font-size:14px;font-weight:500;color:var(--mist);margin-left:4px}
.plan ul{margin:0;padding-left:1.2em;color:var(--mist)}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;counter-reset:f;list-style:none;padding:0;margin:0}
.flow li{counter-increment:f;border-top:3px solid var(--ink);padding-top:10px;font-size:14px}
.flow li::before{content:"STEP " counter(f);display:block;font-family:var(--latin);color:var(--ink);letter-spacing:.1em;font-size:13px}
.faq details{border-bottom:1px solid var(--line);padding-block:12px}
.faq summary{cursor:pointer;font-weight:500}
.faq p{color:var(--mist);margin-top:6px}


footer{border-top:1px solid var(--line);padding-block:24px;color:var(--mist);font-size:12px}
.proto{background:#e0ffff;color:#0b0c0e;font-size:12px;text-align:center;padding:4px 16px}

@media (max-width:720px){
  .hero,.access,.info,.plans,form{grid-template-columns:1fr}
  .hero .photo{max-width:320px;justify-self:center;width:100%}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .flow{grid-template-columns:1fr 1fr}
  .info dl{grid-template-columns:6.5em 1fr}
  .genres a{font-size:12px;padding-inline:8px}
}
@media (prefers-reduced-motion:no-preference){
  .page{animation:rise .4s ease-out}
  @keyframes rise{from{transform:translateY(6px)}to{transform:none}}
}
