html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 4;
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

body {
  background-image: url("../img/bg-pattern.png");
  background-repeat: repeat;
}

.header {
  background: #fff;
  text-align: center;
}

.header img {
  width: 100%;
  height: auto;
  display: block;
}

.contents-col {
  padding: 0 15px;
}

.section {
  text-align: center;
  padding-top: 60px;
}

.section img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: auto;
}

.copy {
  text-align: center;
  margin-bottom: 50px;
  font-size: 0.9rem;
}

.pt-60 {
  padding-top: 60px;
}

/* ------------------------------------------- */
/* 1. PC: 最大幅設定と中央揃え */
/* ------------------------------------------- */
.grid-container {
  /* グリッドレイアウトを有効化 */
  display: grid;
  /* PCでの最大幅を971pxに設定 */
  max-width: 971px;
  /* ブロック要素の中央揃えを実現 */
  margin-left: auto;
  margin-right: auto;
  /* 3列のレイアウトを設定 */
  grid-template-columns: repeat(2, 1fr);
  /* 列間の隙間を設定 */
  gap: 16px;
  /* 外側の余白と干渉しないよう、内側の余白を設定すると良い場合もあります */
  padding: 60px 0 50px;
}

/* ------------------------------------------- */
/* 2. 画像設定: 枠一杯表示（変更なし） */
/* ------------------------------------------- */
/* 画像を常に親要素 (grid-item) の幅100%に広げる */
.grid-item img {
  width: 100%;
  height: auto;
  display: block;
  transition: 0.5s;
}

.grid-item img:hover {
  opacity: 0.8;
}

/* ------------------------------------------- */
/* 3. スマートフォン: 幅100%と1列表示 */
/* ------------------------------------------- */
@media (max-width: 600px) {
  .grid-container {
    /* max-widthを上書きして、画面幅いっぱいに広げる */
    max-width: 100%;
    /* 左右のmarginをautoから0に戻す（念のため） */
    margin-left: 0;
    margin-right: 0;
    /* 左右のpaddingを0に戻す（幅100%で表示したい場合） */
    padding: 50px 0;
    /* グリッド列を1列に変更 */
    grid-template-columns: 1fr;
    /* スマートフォンでの列間の隙間 */
    gap: 10px;
  }

  .section {
    padding-top: 40px;
  }
}
