@charset "utf-8";
/* 親要素：3つを絶対に1行で横並びにする */
#c41.section_contact_link {
  display: flex !important;
  flex-wrap: nowrap !important; /* 折り返し禁止 */
  justify-content: space-between;
  gap: 10px;                   /* ボタン間の隙間 */
  width: 100%;
  margin: 20px 0;
  box-sizing: border-box;
}

/* 各ボックスを均等な幅にする */
#c41 .box {
  flex: 1;
  min-width: 0;                /* はみ出し防止 */
}

/* ボタン共通の基本デザイン */
#c41 .box a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;            /* ボタンの高さ */
  width: 100%;
  text-decoration: none;
  border-radius: 8px;          /* 角丸 */
  font-weight: bold;
  font-size: 15px;             /* 文字サイズ */
  box-sizing: border-box;
  padding: 5px;
  transition: opacity 0.3s;    /* ホバー時の動きを滑らかに */
}

/* マウスを乗せた時に少し透明にする（共通） */
#c41 .box a:hover {
  opacity: 0.8;
}

/* 各ボタンの色設定 */
.button-tel {
  background-color: #007bff;   /* 電話：青 */
  color: #ffffff !important;
}

.button-mail {
  background-color: #f0f0f0;   /* メール：薄いグレー */
  color: #333333 !important;
  border: 1px solid #ccc;
}

.button-green {
  background-color: #06c755 !important; /* LINE：公式の緑色に近い色 */
  color: #ffffff !important;
}
#c1 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c1 h1,
#c1 div {
	text-align: left;
}
#c2 {
	clear: both;
	margin: 50px 0  ;
	padding:    ;
}
#c35 {
	clear: both;
	background-image: url(../images/top/contct_bg.jpg);
	margin: 0 0 -120px ;
	padding: 140px 0  ;
}
#c36 {
	clear: both;
	margin: 0 0 60px ;
	padding:    ;
}
#c36 h3,
#c36 div {
	text-align: center;
}
#c37 {
	clear: both;
	margin: 0 0 60px ;
	padding:    ;
}
#c37 h3,
#c37 div {
	text-align: center;
}
#c41 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c41 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
#c41 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c40 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c8 {
	clear: both;
	margin: 150px 0 48px ;
	padding:    ;
}
#c8 h3,
#c8 div {
	text-align: left;
}
#c42 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c33 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c33 dl dt {
	width: 20%;
}
#c33 dl dd {
	width: 80%;
}
#c34 {
	display: none;
	float: ;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
#c1 {
}
#c2 {
}
#c35 {
	margin: 0 0 -120px;
	padding: 140px 0;
}
#c36 {
}
#c37 {
}
#c41 {
}
#c41 {
}
#c40 {
}
#c8 {
}
#c42 {
}
#c33 {
}
#c34 {
	display: none;
}
}
@media screen and (max-width: 640px) {
#c1 {
}
#c2 {
}
#c35 {
	margin: 0 0 -80px;
	padding: 80px 0;
}
#c36 {
}
#c37 {
}
#c41 {
}
#c41 {
}
#c40 {
}
#c8 {
}
#c42 {
}
#c33 {
}
#c34 {
	display: none;
	float: none;
}
}
