@charset "utf-8";

@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");

/* 画像ロゴがあるときだけ、直後のテキスト版ロゴを隠す */
#logo + #logo-text { display: none; }

/* GoogleMap等のiframeの枠線を消す */
iframe { border: 0; }

/*contact_form.html*/
.contact-alert{
    background:#f0fff2;border:1px solid #bde5c8;color:#1c6b2a;
    padding:.8rem 1rem;border-radius:6px;margin:0 0 1rem;
}
.contact-alert.error{background: #fffbda;border: 1px solid #f3c4c4;color:#b00020;}

input[type=text], input[type=email], input[type=tel],textarea {
    width:100%;
    max-width:100%;
}
input, select, textarea, button[type=submit] {font-size: 1rem;}

/*著作部分（※意図的に見えなくしたりしないで下さい。規約違反になります。）*/
.pr a {
	text-decoration: none;display: block;
	background: rgba(0,0,0,0.8);
	color: #ccc;
	text-align: right;
	padding: 0.5rem 1rem;
	font-size: 0.8rem;
}
.pr a::before {
	font-family: "Font Awesome 6 Free";
	content: "\e2ca";
	font-weight: bold;
	margin-right: 0.5em;
}


/* 以下gallery2専用 */

/*headerロゴ
---------------------------------------------------------------------------*/
header #logo-text {
	margin: 3rem auto;
  text-align: center;
  font-family: "Allura", cursive;
}
.home header #logo,
.home header #logo-text {
	position: absolute;z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.home header #logo-text.hosoku {
	opacity: 1;
	width: auto;
	font-size: 5vw;
}

/*活動報告（お知らせ用）ブロック
---------------------------------------------------------------------------*/
.news {
  gap: 1rem;
}

/*フッター内にあるソーシャルメディアのアイコン
---------------------------------------------------------------------------*/
ul.icons {
	list-style: none;
	margin: 0;padding: 0;
	display: flex;
  justify-content: center;
	gap: 1rem;	/*アイコン同士のマージン的な要素。１文字分。*/
}
.icons i {
	font-size: 34px;	/*アイコンサイズ*/
}

/*メイン画像飲みにする場合
---------------------------------------------------------------------------*/
#mainimg.no {
  width: 100%;
  clip-path: none;
  height: 110%;
}

/*bg1背景色がついたブロック
---------------------------------------------------------------------------*/
.bg1.no::before, .bg1.no::after {
  position: static;
}

/*2カラムの設定
---------------------------------------------------------------------------*/
.c2 .small-box.small-box-large {
  width: 40vw;
}

	/*画面幅500px以下の追加指定*/
	@media screen and (max-width:500px) {
  
  .c2 {
    flex-direction: column;
  }
  .c2 .small-box,
  .c2 .small-box.small-box-large {
    width: auto;
  }

	}/*追加指定ここまで*/


/*テーブル（ta1）
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	font-weight: bold;		/*太字に*/
	padding: 0.5rem 1rem;	/*ボックス内の余白*/
	background: var(--primary-text-color);		/*背景色*/
	color: var(--primary-color);	/*文字色*/
	margin-bottom: 1rem;	/*下に空けるスペース*/
	border-radius: 5px;		/*角を丸くする指定*/
}

/*ta1テーブルブロック設定*/
.ta1 {
	table-layout: fixed;
	border-top: 1px solid var(--primary-text-color);	/*テーブルの一番上の線。幅、線種、色*/
	width: 100%;				/*幅*/
	margin-bottom: 5rem;		/*テーブルの下に空けるスペース。5文字分。*/
}

/*tr（１行分）タグ設定*/
.ta1 tr {
	border-bottom: 1px solid var(--primary-text-color);	/*テーブルの下線。幅、線種、色*/
}

/*th（左側）、td（右側）の共通設定*/
.ta1 th, .ta1 td {
	padding: 1rem;		/*ボックス内の余白*/
	word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
}

/*th（左側）のみの設定*/
.ta1 th {
	width: 30%;			/*幅*/
	text-align: left;	/*左よせにする*/
}

	/*画面幅900px以上の追加指定*/
	@media screen and (min-width:900px) {

		/*th（左側）のみの設定*/
		.ta1 th {
			width: 20%;		/*幅*/
		}

	}/*追加指定ここまで*/
