/* 基本のレイアウト */
body {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  background-color: #f5f5f5;
  align-items: center;
  font-family: Arial, sans-serif;
  padding: 10px;
}

main {
  width: min(800px,calc(100% - 20px));
}

h1 {
  font-size: min(24px, 5.7vw);
  font-weight: bold;
  margin-bottom: 20px;
}

/* 説明文のスタイル */
.description {
  font-size: min(16px, 4.2vw);
  line-height: 1.5;
  margin: 10px 0;
}

/* 太字の文字の色 */
b {
  color: #279b46;
}

/* リンクカードのスタイル */
.link-card {
  display: flex;
  align-items: center;
  background: #ffffff;
  color: #000000;
  text-decoration: none;
  border-radius: 10px;
  padding: 10px;
  width: min(800px,calc(100% - 20px));
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  transition: 0.3s;
}

.link-card:hover {
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.3);
}

.link-card img {
  width: min(100px, 18%);
  border-radius: 5px;
  margin-right: 10px;
}

.link-card .text {
  display: flex;
  flex-direction: column;
}

.link-card .text .title {
  font-size: min(18px, 4vw);
  font-weight: bold;
}

.link-card .text .subtitle {
  font-size: min(15.75px, 3.5vw);
  color: gray;
}
