#article{
	width: 980px;
	padding: 0 22px 1100px;
	margin: 0 auto;
}

img {
  max-width: 100%;
}

#article {
	padding-top: 20px;
	background: url(../img/top-bg.jpg) 22px 306px no-repeat;
}

#article h1 {
	margin-bottom: 0;
	padding: 18px 0 20px 0;
	border-top: 2px solid #535353;
	border-bottom: 2px solid #535353;
	text-align: center;
}
.mt60 {
  margin-top: 60px;
}

.mb50 {
  margin-bottom: 50px;
}

.grid {
  display: grid;
  gap: 50px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin-top: 6%;
  margin-bottom: 50px;

}
.wrapper {
  max-width: 1100px;
  padding: 0 5%;
}
.wrapper h2 {
  text-align: left;
}

.movieLayout{
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 24px;
  align-items: start;
  margin-top: 40px;
}

.movieLayout__right{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.menu {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.menu a {
  display: block;
  aspect-ratio: 1 / 1; /* ここで高さの基準を決める。必要なら 3 / 2 とかに */
  overflow: hidden;
}

.menu img {
  width: 100%;
  height: 100%;
  object-fit: cover;   /* 重要：比率違いを吸収 */
  display: block;
}
