I used Affinity Designer to create this.
The pattern appears in several places in Fontaine and during 4.X:
References
In the blue accent of the background in Furina's reveal https://www.hoyolab.com/article/21858342
As filler texture on the left side: https://www.hoyolab.com/article/23288932
In the Opera curtains in the "La vaguelette" thumbnail
https://www.hoyolab.com/article/23288932
Same curtains in-game in the Opera Epiclese
At the Café Lutece, both on the umbrellas and on the banner in the background:
Used in various props during 4.2's Fontinalia Film Festival ("Roses and Muskets" event):
1. Shape > Ellipse. Create 5 concentric circles centered on the same spot.
Diameters: 1.5+0.25 (0.75 in), 2 in, 2.5 in, 3 in, 3.5 in. The additional 0.25 inches for the innermost circle is to give a bit of a visual gap when repeating the pattern in the final step.
Line width: 6.7 in
2. Group the circles into one group, make a copy of the entire group, and hide the copy to preserve the ellipses in case you need them later.
3. Convert the group to Curves.
4. Cut the curves in half, at the half-circle mark. (Node Tool > Click to select curve > Click node to select node > Right click > Break Curve)
5. Duplicate the group of cut circles. Offset the copied group. (X+2.5+0.25)
6. Cut the upper two curves where they meet, by creating a new node in the middle of the curve (click with Node Tool), then cut the curve. Take one of the new nodes and align it until it snaps over the other one. Join the curves where they meet in order to get a sharp corner. (Node Tool > Select first curve > Shift + select second curve > Look at top bar for "Node" tool > Actions: Join Curves)
Note: merge curves doesn't combine overlapping nodes. (Node Tool > Select first curve > Shift + select second curve > Right click > Geometry > Merge Curves) Node Tool > (top bar) click Stroke > Join: Miter Join. If the corner is cut off or look strange, change the Miter size to 2.
7. Create vertical lines with the Pen Tool. Each line is 0.5 in offset from the next (X+0.5).
8. Duplicate and continue to fill in vertical lines. The distance between groups of lines is X+2.5+0.25 in.
9. Duplicate the entire thing and offset it: (X-1.25-0.125 (X-1.375), Y+4)
11. After that, copy/paste it a couple times to get a full repeat, which I marked in blue (2.75 in x 8 in). This area will become the final pattern after it's cut out.
12. Cut the curves. If the cut line sticks out after being cut, change the Cap: Round Cap.
13. Crop the pattern to the blue rectangle.
Group the finished pattern together.
Copy it.
Select the blue rectangle in the Layers panel. Edit > Paste Inside.
Turn the blue rectangle's Fill to Transparent.
14. (Optional) Turn the vector into an Affinity pattern.
Open Affinity Photo
Copy in the cropped pattern (the Rectangle layer)
Right click the pasted Rectangle layer > Merge visible Layer > New Pattern Layer From Selection
Hide the other layers to preview the pattern.
Open asset menu: Window > Assets
Drag the pattern into the Assets panel
15. Save the file as .png - File > Export
Area: Selection Only (to get a transparent background)
Then the lines and fill color can be altered. After tiling, it looks something like this:
Note: Originally I started with an innermost circle of size 1.5 in. But the reference image shows that there's a bit of a "gap" between one set of 5 lines and the next. This means the smallest circle should be larger than 1.5 in by a little bit, so I redid the entire thing, increasing the smallest circle by 0.25 in. See the following image for what the first version looked like without the gaps.