Okay, here is the code that displays the issue.
When the first column breaks to the next page, the second column does not follow and match its height. If the first column stays on one page, then the second column stretches to the correct height as expected.
<html xmlns="
http://www.w3.org/1999/xhtml">
<head>
<title>Flex test</title>
<link rel="stylesheet" type="text/css" />
<style>
.box {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
align-items: stretch;
overflow: hidden;
}
.column1 {
width: 50%;
border: 1px solid green;
width: 500px;
}
.column2 {
width: 50%;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
flex-direction: column;
align-items: flex-end;
justify-content: space-between;
border: 1px solid blue;
width: 300px;
}
.item1 {
border: 1px solid black;
width: 200px;
margin: 2em 0;
}
.item2 {
border: 1px solid red;
width: 200px;
}
</style>
</head>
<body>
<div class="box">
<div class="column1">
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
<div class="item1">Item</div>
</div>
<div class="column2">
<div class="item2">Item</div>
<div class="item2">Item</div>
<div class="item2">Item</div>
<div class="item2">Item</div>
<div class="item2">Item</div>
<div class="item2">Item</div>
<div class="item2">Item</div>
</div>
</div>
</body>
</html>