ol,
ul {
  padding: 0;
}

.grid-custom img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 正方形維持用：Bootstrap ratioを利用 */
.square {
	aspect-ratio: 1 / 1;
	padding: 0px !important;
}
.tall {
	grid-row: span 2;
	aspect-ratio: 1 / 2; /* 縦長 */
}
.wide {
	grid-column: span 2;
	aspect-ratio: 2 / 1; /* 横長 */
}

@media (min-width: 768px) {
	.grid-custom {
		grid-template-columns: 2fr 1fr 2fr; /* md以上は 2/5,1/5,2/5 */
	}
}
@media (max-width: 770px) {
	#header_content .headline {
		font-size: 28px !important;
	}
	#header_content div.desc {
		font-size: 12px !important;
	}
	#index_project .catchphrase h3.headline, #index_blog .catchphrase h3.headline {
		font-size: 24px !important;
		text-align: left !important;
	}
	#index_project .desc {
		font-size: 12px !important;
	}
	#index_project .index_project_link {
        margin: 20px auto;
        position: relative;
        right: 0;
        top: 0;
    }
}