{"format":"murdoku-puzzle/1","id":"night-train","version":4,"difficulty":"hard","level":7,"size":{"rows":12,"cols":12},"languages":["en","hu","de","fr","es","it","pt","ca","nl","pl","cs","ro","fi","tr","el","ru","uk","vi","ar","ko","ja","zh-Hans","zh-Hant"],"defaultLanguage":"en","title":"夜行列車","tagline":"23:40 · 夜行急行 · 3番ホーム","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-14","story":"夜行急行が3番ホームで発車を待っている。発車の20分前、車掌のVictorが死体で発見された。列車と駅には11人がいて、そのうちの1人が犯人だ。各容疑者の証言を読み、犯行現場での全員の正確な位置を突き止めろ。犯人は被害者と同じエリアで2人きりだった。","rules":{"standard":["どの<b>行</b>にもどの<b>列</b>にも、ちょうど<b>1人</b>がいる。誰かを配置したら、すぐにその行と列全体に×を付けよう。","<b>「隣」</b>＝真左・真右・真上・真下のいずれかで、かつ<b>同じエリア</b>内。","方角は行と列に関するもので、同じ列である必要はない：<i>「〜より北にいた」</i>＝より上の行；<i>「彼のちょうど1行北に誰かがいた」</i>＝真上の行にいる人（列は問わない）。<i>「立っていた」</i>＝椅子にもベッドにもいない。"],"special":["<b>HugoからVictorまで</b>は全員<b>スタッフ</b>で、それ以外は<b>乗客</b>だ。<b>荷物車</b>と<b>切符売り場</b>にいられるのはスタッフだけだった。","<b>駅舎</b>のどのエリアにも<b>少なくとも1人</b>がいた。"]},"roleNames":{"passenger":"乗客","staff":"スタッフ","victim":"被害者"},"personGroups":[{"id":"passengers","name":"乗客","persons":["A","B","C","D","E","F","G"]},{"id":"staff","name":"スタッフ","persons":["H","I","J","K","V"]}],"map":{"groups":[{"id":"train","name":"列車","style":"train"},{"id":"platform","name":"ホーム","style":"platform"},{"id":"building","name":"駅舎","style":"building"}],"gaps":[{"afterRow":4,"px":22,"style":"rails"},{"afterRow":6,"px":12,"style":"wall"}],"areas":[{"id":"Sleeper A","cells":[[1,1],[1,2],[2,1],[2,2],[3,1],[3,2],[4,1],[4,2]],"fill":"#cdd8ea","group":"train","name":"寝台個室A"},{"id":"Sleeper B","cells":[[1,3],[1,4],[2,3],[2,4],[3,3],[3,4],[4,3],[4,4]],"fill":"#b9cae3","group":"train","name":"寝台個室B"},{"id":"Dining Car","cells":[[1,5],[1,6],[1,7],[1,8],[2,5],[2,6],[2,7],[2,8],[3,5],[3,6],[3,7],[3,8],[4,5],[4,6],[4,7],[4,8]],"fill":"#f0dfbf","pattern":"planks","group":"train","name":"食堂車"},{"id":"Bar Car","cells":[[1,9],[1,10],[2,9],[2,10],[3,9],[3,10],[4,9],[4,10]],"fill":"#e6cc9c","pattern":"planks","group":"train","name":"バー車"},{"id":"Luggage Car","cells":[[1,11],[1,12],[2,11],[2,12],[3,11],[3,12],[4,11],[4,12]],"fill":"#d3cfc4","group":"train","name":"荷物車"},{"id":"Platform","cells":[[5,1],[5,2],[5,3],[5,4],[5,5],[5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[6,1],[6,2],[6,3],[6,4],[6,5],[6,6],[6,7],[6,8],[6,9],[6,10],[6,11],[6,12]],"fill":"#dddcd6","group":"platform","labelAt":[6,6.5],"name":"ホーム"},{"id":"Ticket Office","cells":[[7,1],[7,2],[7,3],[8,1],[8,2],[8,3],[9,1],[9,2],[9,3]],"fill":"#ead1ca","group":"building","name":"切符売り場"},{"id":"Waiting Room","cells":[[7,4],[7,5],[7,6],[7,7],[7,8],[8,4],[8,5],[8,6],[8,7],[8,8],[9,4],[9,5],[9,6],[9,7],[9,8]],"fill":"#dfe7cd","pattern":"marble","group":"building","name":"待合室"},{"id":"Newsstand","cells":[[7,9],[7,10],[7,11],[7,12],[8,9],[8,10],[8,11],[8,12]],"fill":"#f6e5b2","group":"building","name":"売店"},{"id":"Cafe","cells":[[9,9],[9,10],[9,11],[9,12],[10,9],[10,10],[10,11],[10,12],[11,9],[11,10],[11,11],[11,12],[12,9],[12,10],[12,11],[12,12],[10,8],[11,8],[12,8]],"fill":"#f1d3c0","group":"building","labelAt":[12,10.5],"name":"カフェ"},{"id":"Restrooms","cells":[[10,1],[10,2],[10,3],[11,1],[11,2],[11,3],[12,1],[12,2],[12,3]],"fill":"#cfe4e8","pattern":"tiles","group":"building","name":"トイレ"},{"id":"Entrance Hall","cells":[[10,4],[10,5],[10,6],[10,7],[11,4],[11,5],[11,6],[11,7],[12,4],[12,5],[12,6],[12,7]],"fill":"#e8e4d9","pattern":"marble","group":"building","name":"入口ホール"}],"objectTypes":{"bed":{"occupiable":true,"name":"ベッド","icon":"<rect x=\"7\" y=\"1\" width=\"32\" height=\"44\" rx=\"6\" fill=\"#f7f4ee\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"5\" width=\"24\" height=\"10\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#8c8a82\"/><rect x=\"9\" y=\"19\" width=\"28\" height=\"22\" rx=\"4\" fill=\"#9fb3d6\"/>","iconTall":"<rect x=\"7\" y=\"3\" width=\"32\" height=\"86\" rx=\"7\" fill=\"#f7f4ee\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"7\" width=\"24\" height=\"12\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#8c8a82\"/><rect x=\"9\" y=\"24\" width=\"28\" height=\"61\" rx=\"4\" fill=\"#9fb3d6\"/>"},"chair":{"occupiable":true,"legendIcons":["chair","bench"],"name":"椅子／ベンチ","icon":"<rect x=\"9\" y=\"7\" width=\"28\" height=\"32\" rx=\"6\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"7\" width=\"28\" height=\"9\" rx=\"4\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/>"},"stool":{"occupiable":true,"solverType":"chair","legendGroup":"chair","name":"スツール","icon":"<circle cx=\"23\" cy=\"23\" r=\"11\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><circle cx=\"23\" cy=\"23\" r=\"5\" fill=\"#d9d5cc\"/>"},"bench":{"occupiable":true,"solverType":"chair","legendGroup":"chair","name":"ベンチ","icon":"<rect x=\"7\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"35.8\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"4\" y=\"8\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.3\"/><rect x=\"4\" y=\"17.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"32.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/>"},"table":{"occupiable":false,"name":"テーブル","icon":"<rect x=\"7\" y=\"7\" width=\"32\" height=\"32\" rx=\"5\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"12\" width=\"22\" height=\"22\" rx=\"3\" fill=\"#d1a675\"/>"},"counter":{"occupiable":false,"name":"カウンター","icon":"<rect x=\"0\" y=\"10\" width=\"46\" height=\"26\" fill=\"#a97c50\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"0\" y=\"10\" width=\"46\" height=\"7\" fill=\"#c9a06f\"/>"},"shelf":{"occupiable":false,"name":"棚","icon":"<rect x=\"8\" y=\"5\" width=\"30\" height=\"36\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"9\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/><rect x=\"11\" y=\"20\" width=\"24\" height=\"8\" fill=\"#d4b98f\"/><rect x=\"11\" y=\"31\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/>"},"luggage":{"occupiable":false,"name":"荷物","icon":"<rect x=\"8\" y=\"22\" width=\"30\" height=\"16\" rx=\"3\" fill=\"#6f5238\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><rect x=\"12\" y=\"9\" width=\"22\" height=\"12\" rx=\"3\" fill=\"#a15c3e\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><rect x=\"19\" y=\"5\" width=\"8\" height=\"4\" rx=\"2\" fill=\"#3f2d1d\"/>"},"trolley":{"occupiable":false,"name":"カート","icon":"<rect x=\"7\" y=\"12\" width=\"32\" height=\"18\" rx=\"3\" fill=\"#9aa1a8\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"6\" width=\"24\" height=\"10\" rx=\"2\" fill=\"#a15c3e\" stroke=\"#3f2d1d\"/><circle cx=\"13\" cy=\"35\" r=\"4\" fill=\"#2b2f33\"/><circle cx=\"33\" cy=\"35\" r=\"4\" fill=\"#2b2f33\"/><line x1=\"39\" y1=\"12\" x2=\"42\" y2=\"4\" stroke=\"#3d444b\" stroke-width=\"2\"/>"},"pillar":{"occupiable":false,"name":"柱","icon":"<circle cx=\"23\" cy=\"23\" r=\"12\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"2\"/><circle cx=\"23\" cy=\"23\" r=\"6\" fill=\"#9a968d\"/>"},"vending":{"occupiable":false,"name":"自動販売機","icon":"<rect x=\"9\" y=\"4\" width=\"28\" height=\"38\" rx=\"3\" fill=\"#2f3b4c\" stroke=\"#161c25\" stroke-width=\"1.5\"/><rect x=\"13\" y=\"8\" width=\"16\" height=\"18\" fill=\"#7fc4d8\"/><rect x=\"13\" y=\"29\" width=\"20\" height=\"4\" fill=\"#f0b429\"/><rect x=\"13\" y=\"35\" width=\"20\" height=\"3\" fill=\"#8a94a0\"/>"},"tv":{"occupiable":false,"name":"案内表示","icon":"<rect x=\"6\" y=\"10\" width=\"34\" height=\"24\" rx=\"2\" fill=\"#1c232c\" stroke=\"#0b0e12\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"14\" width=\"22\" height=\"3\" fill=\"#f0b429\"/><rect x=\"9\" y=\"20\" width=\"26\" height=\"3\" fill=\"#f0b429\"/><rect x=\"9\" y=\"26\" width=\"18\" height=\"3\" fill=\"#7fc4d8\"/><rect x=\"18\" y=\"34\" width=\"10\" height=\"4\" fill=\"#0b0e12\"/>"},"plant":{"occupiable":false,"name":"観葉植物","icon":"<path d=\"M15 28 h16 l-2 12 h-12 z\" fill=\"#c2643a\" stroke=\"#7a3d20\" stroke-width=\"1.2\"/><ellipse cx=\"15\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(-30 15 17)\"/><ellipse cx=\"31\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(30 31 17)\"/><ellipse cx=\"23\" cy=\"13\" rx=\"6\" ry=\"11\" fill=\"#57a35e\"/>"},"sink":{"occupiable":false,"name":"洗面台","icon":"<rect x=\"7\" y=\"9\" width=\"32\" height=\"28\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"24\" rx=\"11\" ry=\"7\" fill=\"#ffffff\" stroke=\"#8a949c\"/><circle cx=\"23\" cy=\"24\" r=\"2\" fill=\"#8a949c\"/><rect x=\"21\" y=\"10\" width=\"4\" height=\"6\" fill=\"#8a949c\"/>"},"toilet":{"occupiable":false,"name":"便器","icon":"<rect x=\"14\" y=\"6\" width=\"18\" height=\"10\" rx=\"2\" fill=\"#dfe6ea\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"30\" rx=\"11\" ry=\"12\" fill=\"#ffffff\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"30\" rx=\"6\" ry=\"7\" fill=\"#c9d6dd\"/>"}},"wallTypes":{"window":{"name":"窓","icon":"<rect x=\"4\" y=\"18\" width=\"38\" height=\"8\" rx=\"2\" fill=\"#bfe3f2\" stroke=\"#4a7c95\"/>"},"door":{"name":"ドア","icon":"<rect x=\"8\" y=\"17\" width=\"30\" height=\"10\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\"/><circle cx=\"34\" cy=\"22\" r=\"1.6\" fill=\"#f0b429\"/>"}},"objects":[{"cell":[1,1],"type":"bed","span":[2,1]},{"cell":[3,1],"type":"table"},{"cell":[4,1],"type":"shelf"},{"cell":[1,4],"type":"bed","span":[2,1]},{"cell":[3,4],"type":"table"},{"cell":[4,4],"type":"shelf"},{"cell":[2,5],"type":"table"},{"cell":[2,8],"type":"table"},{"cell":[1,5],"type":"chair"},{"cell":[3,5],"type":"chair"},{"cell":[1,8],"type":"chair"},{"cell":[3,8],"type":"chair"},{"cell":[4,8],"type":"plant"},{"cell":[2,9],"type":"counter"},{"cell":[3,9],"type":"counter"},{"cell":[2,10],"type":"stool"},{"cell":[3,10],"type":"stool"},{"cell":[1,11],"type":"luggage"},{"cell":[1,12],"type":"luggage"},{"cell":[2,12],"type":"luggage"},{"cell":[4,11],"type":"luggage"},{"cell":[3,12],"type":"luggage"},{"cell":[6,3],"type":"bench"},{"cell":[6,8],"type":"bench"},{"cell":[5,5],"type":"pillar"},{"cell":[5,10],"type":"pillar"},{"cell":[5,12],"type":"trolley"},{"cell":[6,1],"type":"vending"},{"cell":[7,1],"type":"counter"},{"cell":[7,2],"type":"counter"},{"cell":[7,3],"type":"counter"},{"cell":[8,2],"type":"chair"},{"cell":[8,1],"type":"shelf"},{"cell":[9,3],"type":"shelf"},{"cell":[7,6],"type":"tv"},{"cell":[8,4],"type":"chair"},{"cell":[8,5],"type":"chair"},{"cell":[8,7],"type":"chair"},{"cell":[8,8],"type":"chair"},{"cell":[9,7],"type":"plant"},{"cell":[7,11],"type":"shelf"},{"cell":[7,12],"type":"shelf"},{"cell":[8,12],"type":"counter"},{"cell":[9,10],"type":"counter"},{"cell":[9,11],"type":"counter"},{"cell":[9,12],"type":"shelf"},{"cell":[11,9],"type":"table"},{"cell":[11,11],"type":"table"},{"cell":[10,9],"type":"chair"},{"cell":[12,9],"type":"chair"},{"cell":[10,11],"type":"chair"},{"cell":[12,11],"type":"chair"},{"cell":[10,1],"type":"sink"},{"cell":[12,1],"type":"toilet"},{"cell":[10,4],"type":"plant"}],"wallFeatures":[{"cell":[1,1],"side":"N","type":"window"},{"cell":[1,2],"side":"N","type":"window"},{"cell":[1,3],"side":"N","type":"window"},{"cell":[1,4],"side":"N","type":"window"},{"cell":[1,5],"side":"N","type":"window"},{"cell":[1,6],"side":"N","type":"window"},{"cell":[1,7],"side":"N","type":"window"},{"cell":[1,8],"side":"N","type":"window"},{"cell":[1,9],"side":"N","type":"window"},{"cell":[1,10],"side":"N","type":"window"},{"cell":[12,5],"side":"S","type":"door"},{"cell":[12,6],"side":"S","type":"door"}],"extras":[{"type":"safetyLine","row":5}],"cellSize":46},"persons":[{"id":"A","name":"Anna","gender":"F","role":"passenger","color":"#c62828","avatar":{"bg":"#c96a4a","skin":"#f1c8a5","hair":"#3b2418","style":"long","shirt":"#3d8a8a"},"clue":"<b>観葉植物</b>の隣にいた。<b>座っていなかった</b>。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Anna\"><rect width=\"80\" height=\"80\" fill=\"#c96a4a\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#3b2418\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3d8a8a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1c8a5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1c8a5\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#3b2418\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"passenger","constraints":[{"type":"beside","obj":"plant"},{"type":"not_on","obj":"chair"}]},{"id":"B","name":"Bruno","gender":"M","role":"passenger","color":"#2e7d32","avatar":{"bg":"#4b6d4e","skin":"#e7b98f","hair":"#5a3a22","style":"short","shirt":"#6b7a3a","beard":true},"clue":"彼のちょうど<b>1列西</b>に<b>女性</b>がいた。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Bruno\"><rect width=\"80\" height=\"80\" fill=\"#4b6d4e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#6b7a3a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#5a3a22\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#5a3a22\"/></svg>","solverRole":"passenger","constraints":[{"type":"rel_any","dir":"W","exact":1,"gender":"F"}]},{"id":"C","name":"Clara","gender":"F","role":"passenger","color":"#1565c0","avatar":{"bg":"#6a4d8a","skin":"#f4d3b6","hair":"#d9b464","style":"bob","shirt":"#8a4d7a","glasses":true},"clue":"<b>棚</b>の隣にいた。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Clara\"><rect width=\"80\" height=\"80\" fill=\"#6a4d8a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#d9b464\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8a4d7a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f4d3b6\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d3b6\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#d9b464\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/></svg>","solverRole":"passenger","constraints":[{"type":"beside","obj":"shelf"}]},{"id":"D","name":"Dominic","gender":"M","role":"passenger","color":"#6a1b9a","avatar":{"bg":"#33526e","skin":"#d9a57a","hair":"#1c1a1a","style":"short","shirt":"#6f6f73","headphones":true},"clue":"<b>椅子に座っていた</b>。彼のちょうど<b>1行北</b>に<b>スタッフ</b>の1人がいた。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dominic\"><rect width=\"80\" height=\"80\" fill=\"#33526e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#6f6f73\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#d9a57a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#d9a57a\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M25 34 Q25 12 40 12 Q55 12 55 34\" fill=\"none\" stroke=\"#111\" stroke-width=\"3\"/><rect x=\"21\" y=\"30\" width=\"7\" height=\"12\" rx=\"3\" fill=\"#111\"/><rect x=\"52\" y=\"30\" width=\"7\" height=\"12\" rx=\"3\" fill=\"#111\"/></svg>","solverRole":"passenger","constraints":[{"type":"on","obj":"chair"},{"type":"rel_any","dir":"N","exact":1,"role":"staff"}]},{"id":"E","name":"Esther","gender":"F","role":"passenger","color":"#e65100","avatar":{"bg":"#8c3a3a","skin":"#f6d8c0","hair":"#b7482c","style":"curly","shirt":"#3d7a4b"},"clue":"<b>テーブル</b>の隣の<b>椅子に座っていた</b>。<b>1人</b>だった。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Esther\"><rect width=\"80\" height=\"80\" fill=\"#8c3a3a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3d7a4b\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><path d=\"M25 34 q-3 -8 4 -10 q0 -8 8 -7 q3 -4 8 -1 q6 -3 9 3 q7 0 5 8 q4 4 -1 9 q-6 -14 -16 -12 q-9 -1 -17 10 Z\" fill=\"#b7482c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"passenger","constraints":[{"type":"on","obj":"chair"},{"type":"beside","obj":"table"},{"type":"alone"}]},{"id":"F","name":"Felix","gender":"M","role":"passenger","color":"#00838f","avatar":{"bg":"#7a6a3c","skin":"#e9c6a4","hair":"#c9c3b8","style":"bald","shirt":"#5a3f2a","glasses":true,"mustache":true},"clue":"<b>1列目</b>にいた。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Felix\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#5a3f2a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 30 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#c9c3b8\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#c9c3b8\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"passenger","constraints":[{"type":"col","cols":[1]}]},{"id":"G","name":"Greta","gender":"F","role":"passenger","color":"#ad1457","avatar":{"bg":"#3a5a6e","skin":"#f0cdb0","hair":"#cfcfd2","style":"bun","shirt":"#2b3d66","necklace":true},"clue":"<b>テーブル</b>の隣に<b>立っていた</b>。","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Greta\"><rect width=\"80\" height=\"80\" fill=\"#3a5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2b3d66\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#cfcfd2\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#cfcfd2\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"passenger","constraints":[{"type":"beside","obj":"table"},{"type":"not_on","obj":"chair"},{"type":"not_on","obj":"bed"}]},{"id":"H","name":"Hugo","gender":"M","role":"staff","color":"#5d4037","avatar":{"bg":"#2c3e58","skin":"#8a5a3c","hair":"#1a1210","style":"short","shirt":"#22406f","cap":true},"clue":"<b>カート</b>の隣にいた。","job":"ポーター","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Hugo\"><rect width=\"80\" height=\"80\" fill=\"#2c3e58\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#8a5a3c\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#8a5a3c\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#1a1210\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M24 24 Q24 11 40 11 Q56 11 56 24 Z\" fill=\"#22406f\"/><rect x=\"22\" y=\"22\" width=\"36\" height=\"5\" rx=\"2\" fill=\"#12213a\"/><circle cx=\"40\" cy=\"18\" r=\"2.6\" fill=\"#f0b429\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"trolley"}]},{"id":"I","name":"Iris","gender":"F","role":"staff","color":"#827717","avatar":{"bg":"#5b4a6e","skin":"#f1cfb2","hair":"#2b1c14","style":"ponytail","shirt":"#22406f","glasses":true},"clue":"<b>椅子に座っていた</b>。彼女のちょうど<b>2行南</b>に<b>男性</b>がいた。","job":"切符係","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Iris\"><rect width=\"80\" height=\"80\" fill=\"#5b4a6e\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#2b1c14\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1cfb2\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1cfb2\"/><path d=\"M26 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 Z\" fill=\"#2b1c14\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/></svg>","solverRole":"staff","constraints":[{"type":"on","obj":"chair"},{"type":"rel_any","dir":"S","exact":2,"gender":"M"}]},{"id":"J","name":"Jonas","gender":"M","role":"staff","color":"#283593","avatar":{"bg":"#3f3f3f","skin":"#e8bf9a","hair":"#2a1d16","style":"slick","shirt":"#1f2530","bow":true},"clue":"<b>カウンター</b>の隣にいた。<b>Hugo</b>より<b>北</b>にいた。","job":"バーテンダー","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Jonas\"><rect width=\"80\" height=\"80\" fill=\"#3f3f3f\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1f2530\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e8bf9a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e8bf9a\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#2a1d16\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"counter"},{"type":"rel","q":"H","dir":"N"}]},{"id":"K","name":"Kate","gender":"F","role":"staff","color":"#33691e","avatar":{"bg":"#8a5a2a","skin":"#f4d5bb","hair":"#6b3f22","style":"bob","shirt":"#22406f","apron":true},"clue":"<b>一番下の行</b>にいた。","job":"カフェ店員","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Kate\"><rect width=\"80\" height=\"80\" fill=\"#8a5a2a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#6b3f22\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f4d5bb\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d5bb\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#6b3f22\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"staff","constraints":[{"type":"row","rows":[12]}]},{"id":"V","name":"Victor","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#8a8a8a","style":"short","shirt":"#22406f","cap":true,"mustache":true,"mustacheColor":"#777"},"clue":"<b>被害者。</b>犯人と2人きりだった。","job":"車掌","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Victor\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#8a8a8a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#777\"/><path d=\"M24 24 Q24 11 40 11 Q56 11 56 24 Z\" fill=\"#22406f\"/><rect x=\"22\" y=\"22\" width=\"36\" height=\"5\" rx=\"2\" fill=\"#12213a\"/><circle cx=\"40\" cy=\"18\" r=\"2.6\" fill=\"#f0b429\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"staff","constraints":[]}],"victim":"V","murderer":"G","solution":{"E":[1,5],"V":[2,4],"G":[3,3],"J":[4,9],"H":[5,11],"D":[6,8],"C":[7,10],"I":[8,2],"A":[9,6],"B":[10,7],"F":[11,1],"K":[12,12]},"walkthrough":[{"focus":{"group":"building"},"text":"<b>駅舎</b>は7〜12行目、つまり6行にまたがるので、中にはちょうど<b>6人</b>がいた。6つのエリアのそれぞれに誰かがいたので（特別ルール2）、<b>駅舎の各エリアにはちょうど1人</b>がいる。駅舎の中では誰も他の人と一緒ではなく、（犯人と一緒だった）Vはそこにいられない。同様に、ホームの2行にはちょうど<b>2人</b>、列車にはちょうど<b>4人</b>がいる。"},{"cand":{"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"Hは<b>カート</b>の隣にいた。唯一のカートはホームにあるので、Hは5行目か6行目（R5C11かR6C12）だ。JはHより<b>北</b>なので、遅くとも5行目。そこまで北にある唯一のカウンターは<b>バー車</b>だ。よってJはバー車にいる。"},{"place":["I"],"cand":{"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"<b>切符売り場</b>（スタッフ専用）にはちょうど1人がいる。Hはホーム、Jはバー車、Kは一番下の行にいて、Vは1人ではいられないので、そこにいられるのは<b>I</b>だけで、唯一の椅子に座っている：Iは<b>R8C2</b>だ。8行目と2列目に×を付けよう。"},{"cand":{"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,9],[10,10],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"Iのちょうど2行南、<b>10行目に男性</b>がいた。Dは座っていたが、10行目の椅子（カフェ）の上の9行目にスタッフはいられない。Fは1列目（R10C1は洗面台）、HとJはホームと列車、Vは駅舎にいられない。残るのは<b>B：10行目にいる</b>。他の全員について10行目に×を付けよう。"},{"place":["C"],"cand":{"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9]]},"text":"<b>売店</b>にも誰かがいる。そこには観葉植物もテーブルも椅子もカートもない。Bは10行目、Kは12行目、Fは1列目、スタッフは別の場所だ。当てはまるのは<b>C</b>だけ（棚の隣）で、8行目は埋まっているのでCは<b>R7C10</b>に立っている。7行目と10列目に×を付けよう。これでバーのスツールも除外され、Jは9列目だ。"},{"cand":{"E":[[1,5],[3,5],[1,8],[3,8]],"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9]]},"text":"Kは一番下の行にいるので、<b>12行目</b>には他に誰もいない。Eはテーブルの隣の椅子に座っていた。そのような椅子は食堂車とカフェにあるが、カフェの椅子は10行目と12行目（BとKの行）にある。よってEは<b>食堂車</b>に<b>1人</b>でいて、他の誰もそこにはいられない。"},{"place":["H"],"cand":{"D":[[6,3],[6,8]],"E":[[1,5],[3,5],[1,8],[3,8]],"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"Dは椅子に座っていた。食堂車の椅子は除外（Eが1人）、バーのスツールは10列目（C）、待合室の椅子は8行目（I）、カフェの椅子は10行目と12行目（B、K）、そして乗客は切符売り場に入れない。残るのはホームの2つのベンチだけ：<b>Dは6行目</b>だ。するとHは<b>R5C11</b>にしかいられず、ホームは満員だ（DとH）。"},{"place":["G"],"cand":{"V":[[1,4],[2,4]],"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"Vは列車の1つの車両に<b>犯人と2人きり</b>でいなければならない。食堂車ではEが1人だ。バー車でJの隣の空きマスは10列目（C）だ。荷物車にはスタッフしか入れないが、H、I、J、Kは別の場所にいる。寝台個室Aではベッドが1列目、床が2列目（I）なので、2人は入れない。残るのは<b>寝台個室B</b>で、そこでVと一緒にいられるのは<b>G</b>だけ（テーブルの隣に立っていた）：Gは<b>R3C3</b>だ。犯人はGretaだ！3行目と3列目に×を付けよう。"},{"place":["F"],"cand":{"V":[[1,4],[2,4]],"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"列車には4人（E、J、V、G）が揃った。したがってF（1列目）は寝台個室Aのベッドにはいられず、ホームも満員だ：Fは<b>トイレ</b>の<b>R11C1</b>にいる。11行目に×を付けよう。"},{"place":["J","V"],"cand":{"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]]},"text":"Eは食堂車の1行目か3行目に座れるが、3行目はGのものなので<b>Eは1行目</b>だ。するとJは<b>R4C9</b>にしかいられず、Vは寝台個室Bのベッド<b>R2C4</b>に横たわっている。"},{"place":["D","E","A"],"cand":{"B":[[10,7],[10,12]]},"text":"6行目のD：R6C3は3列目（G）なので、Dは<b>R6C8</b>に座っている。これで8列目が埋まり、Eは<b>R1C5</b>、待合室で観葉植物の隣にいるAは<b>R9C6</b>にしか立てない。"},{"place":["B","K"],"text":"10行目のB：空いているのはR10C7とR10C12だけだ。彼の1列西には<b>女性</b>がいたが、R10C12の場合は11列目にH（男性）が立っているので除外。Bは入口ホールの<b>R10C7</b>だ（6列目には確かに女性Aがいる）。最後に12列目にいられるのはKだけ：Kはカフェの<b>R12C12</b>だ。"},{"final":true,"text":"全員が配置された。Victorは寝台個室Bで<b>Greta</b>と2人きりだった——<b>犯人はGretaだ！</b>"}],"solver":{"rules":[{"type":"role_only","areas":["Luggage Car","Ticket Office"],"roles":["staff"]},{"type":"areas_nonempty","areas":["Ticket Office","Waiting Room","Newsstand","Cafe","Restrooms","Entrance Hall"]}],"groups":{"Train":["Sleeper A","Sleeper B","Dining Car","Bar Car","Luggage Car"],"Building":["Ticket Office","Waiting Room","Newsstand","Cafe","Restrooms","Entrance Hall"]},"occupiable":["bed","chair"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-14"}}