/* CSS Document */

@charset "UTF-8";

/*----------------------------------------------------------------------
左右レイアウト
-----------------------------------------------------------------------*/
div.left img, div.left > a {
	order: -1;
}

div.left, div.right {
	display: grid;
	align-items: flex-start;
	gap: 80px;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
}

div.left {
	grid-template-columns: 2fr 3fr;
	direction: rtl;
	padding-right: calc((100vw - 100%) / 2);
}
div.left > div {
	direction: ltr;
}

div.right {
	grid-template-columns: 2fr 3fr;
	padding-left: calc((100vw - 100%) / 2);
}

div.left > div+img, div.right > div+img {
	display: block;
}

@media screen and (max-width: 1200px) {
	div.left, div.right {
		column-gap: 60px;
	}
}

div.left > picture, div.right > picture, div.left > img, div.right > img {
	align-self: end;
}

/*----------------------------------------------------------------------
Half Size
-----------------------------------------------------------------------*/
div.even-half {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px 60px;
}

/*----------------------------------------------------------------------
レスポンシブ
-----------------------------------------------------------------------*/
@media screen and (max-width: 960px) {
	div.left, div.right {
		grid-template-columns: 1fr;
		gap: 2rem 0;
		margin: 0;
		padding: 0;
	}

	div.even-half {
		grid-template-columns: 1fr;
		margin: 0;
		padding: 0;
	}

	div.left > div, div.right > div, div.even-half > div {
		padding-top: 0;
	}
}

/*----------------------------------------------------------------------
2024_1110追加
-----------------------------------------------------------------------*/
main article picture {
	display: block;
}