@charset "utf-8";
/*トップに戻るボタン*/
#top_btn {
  position: fixed; /* 常に画面上に表示される */
  bottom: 20px; /* 画面下から20pxの位置 */
  right: 20px; /* 画面右から20pxの位置 */
  padding: 10px 15px;
  background-color: #007bff; /* 青色の背景 */
  color: white;
  border: none;
  border-radius: 5px;
  opacity: 0; /* 初期状態は透明 */
  visibility: hidden; /* 初期状態は見えない */
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}
#top_btn:hover {
  background-color: #0056b3; /* ホバー時の色変更 */
}

/*リンク・マウスオーバー*/
a img.mouselink {
  background: none !important;
}
a:hover img.mouselink {
  opacity: 0.4;
  filter: alpha(opacity=40);
  -ms-filter: "alpha( opacity=40 )";
  background: none !important;
}

h1 {
  color: #252525;
  font-family: wire-one;
  font-style: normal;
  font-weight: 400;
  text-align: left;
  background-color: #ffffff;
  font-size: 90px;
}
h2 {
  color: #2e2e2e;
  font-size: 48px;
  text-align: center;
  font-weight: 600;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
h3 {
  color: #2e2e2e;
  font-size: 30px;
  background-color: #FFFFFF;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
}

h4 {
  color: #000000;
  font-size: 40px;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-style: normal;
  font-weight: bold;
  top: 0px;
  bottom: 0px;
}
h5 {
  color: #edaf4c;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 600;
  font-size: 30px;
  text-align: center;
}
h6 {
  text-align: center;
  font-size: 14px;
}
a {
  text-decoration: none;
}
.relative {
  position: relative;
}
.absolute {
  position: absolute;
  left: 474px;
  top: 0px;
}

/*フッターのCSS*/
.footer {
  /*background-color: #f4f4f4;*/
  color: #333;
  font-size: 0.95em;
  padding: 40px 20px 20px;
}
.footer-container {
  max-width: 1100px;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center; /* 中央寄せ */
  text-align: center;  /* テキストも中央揃え */
  gap: 40px;
}
.footer-title {
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 15px;
}
.sitemap-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.sitemap-group ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sitemap-group ul li {
  margin: 4px 0;
}
.sitemap-group ul li a {
  color: #333;
  text-decoration: none;
}
.sitemap-group ul li a:hover {
  text-decoration: underline;
}
.footer-info {
  flex: 1 1 400px; /* 幅を広げて折り返しを防止しやすく */
  min-width: 320px;
}
.co-url {
  color: #000;
}
.company-name2 {
  background-color: inherit; /* フッター背景と同じに */
  font-weight: bold;
  font-size: 1.1em;
  margin-bottom: 10px;
}
.sns-icons {
  display: flex;
  justify-content: center; /* 横並び中央揃え */
  gap: 16px;
  margin-top: 10px;
}
.sns-icons a img {
  height: 50px; /* Instagramと同じ高さに揃える */
  width: auto;  /* アスペクト比を保持 */
  display: block;
  gap: 40px;
}
.footer-bottom {
  text-align: center;
  margin-top: 30px;
  font-size: 0.85em;
  color: #777;
}

/**engageのバナー*/
.engage-banner {
  width: 500px;
  margin: auto;
  padding-top: 150px;
  padding-bottom: 30px;
}

/*見積自動計算のボタン*/
.btn1 {
  background:#0000ff; /* 背景色 */
  color: #ffffff; /* 文字色 */
  padding: 5px 10px; /* 上下の余白、左右の余白 */
  text-decoration: none; /* デフォルトで入るリンクの下線を消す */
  border-radius: 30px; /* 角を丸くする */
}
.btn2 {
  background: limegreen; /* 背景色 */
  color: #ffffff; /* 文字色 */
  padding: 5px 10px; /* 上下の余白、左右の余白 */
  text-decoration: none; /* デフォルトで入るリンクの下線を消す */
  border-radius: 30px; /* 角を丸くする */
}
.btn3 {
  background: #0000ff; /* 背景色 */
  color: #ffffff; /* 文字色 */
  padding: 5px 10px; /* 上下の余白、左右の余白 */
  text-decoration: none; /* デフォルトで入るリンクの下線を消す */
  border-radius: 30px; /* 角を丸くする */
}