@charset "utf-8";


/* 画像ロゴがあるときだけ、直後のテキスト版ロゴを隠す */
#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.2rem 1rem;
	font-size: 0.8rem;
}
.pr a::before {
	font-family: "Font Awesome 6 Free";
	content: "\e2ca";
	font-weight: bold;
	margin-right: 0.5em;
}


/*以下biz61専用*/

/*ロゴ（テキストの場合）*/
#logo-text{
  font-size: 1rem;
}

/*お知らせ*/
.new dt {
	width: 8em !important;
}

/*スライドショー
---------------------------------------------------------------------------*/
.slide3-parts {
	width: 100%;position: relative;
	margin-bottom: 50px;	/*ボックスの下に空けるスペース*/
}

/*３枚の画像の共通設定*/
.slide3-parts .slide-parts {
	position: absolute;right: 0px;top: 0px;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 1s;	/*ここの1s（＝1秒）を変更すると、フェードのスピードを変更できます。１枚が表示される時間はjsで指定できます。*/
}

/*１枚目画像（変更不要）*/
.slide3-parts .img1-parts {
	position: relative;width: 100%;height: auto;
}

/*画像全般（変更不要）*/
.slide3-parts .slide-parts img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 画像をコンテナのサイズに合わせてクリップ */
    object-position: center; /* 画像の中心を基準に調整 */
}

/*現在表示されているスライドのみをクリック可能にする設定（変更不要）
---------------------------------------------------------------------------*/
.slide3-parts .slide-parts {
	pointer-events: none; /* デフォルトでクリックを無効にする */
}

.slide3-parts .slide-parts.active {
    pointer-events: auto; /* 表示中のスライドのみクリックを有効にする */
}

/*現在表示中のボタン
---------------------------------------------------------------------------*/
/*全体*/
.slide3-parts .slide-indicators {
    text-align: center;
	position: absolute;
	width: 100%;
	bottom: -40px;	/*ボタンの配置場所。0以上の数値にすれば画像の上に重なります。*/
	left: 0px;
}
/*１個あたり*/
.slide3-parts .indicator {
    display: inline-block;
    width: 10px;
    height: 10px;
    background: #ccc;	/*未アクティブ時のボタン色*/
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;
}
.slide3-parts .indicator.active {
    background: #000;	/*アクティブ時のボタン色*/
}

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

/*メニューブロック設定
---------------------------------------------------------------------------*/
#menubar li a > span:last-of-type {
  display: none;
}
.submenu li a > span:first-of-type,
#footermenu li a > span:first-of-type {
  display: none;
}

/*詳細ページのサムネイル切り替えブロック
---------------------------------------------------------------------------*/
/*大きな画像が表示されるブロック*/
.thumbnail-view-parts {
	max-width: 1000px;
	margin: 0 auto 1rem;
	text-align: center;
}

/*サムネイル全体を囲むブロック*/
.thumbnail-parts {
	display: flex;
  flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 2rem;
}

/*サムネイル画像*/
.thumbnail-parts img {
	width: 100px;
	margin: 2px;
	cursor: pointer;
	transition: 0.3s;
}
.thumbnail-parts img:hover {
	opacity: 0.8;
}
/* 大きな表示の中身（画像/動画） */
.thumbnail-view-parts img,
.thumbnail-view-parts video {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
/* サムネイル動画 */
.thumbnail-parts video {
  width: 100px;
  margin: 2px;
  cursor: pointer;
  transition: 0.3s;
}
.thumbnail-parts video:hover {
  opacity: 0.8;
}
/* 動画サムネ用ラッパ＆アイコン */
.thumbnail-parts .thumb-wrap {
  position: relative;
  display: inline-block;
  width: 100px;      /* 既存サムネ幅と合わせる */
  margin: 2px;       /* 既存サムネ間隔と合わせる */
}
.thumbnail-parts .thumb-wrap > video {
  width: 100%;
  height: auto;
  display: block;
  margin: 0;         /* 二重余白を防止 */
}
.thumbnail-parts .thumb-play {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none;      /* クリックは下のvideoに通す */
  opacity: 0.9;
  text-shadow: 0 1px 2px rgba(0,0,0,.35);
}
.thumbnail-parts .thumb-play i {
  background: #ff0000;
  color: #fff;
  border-radius: 9999px;
  padding: 6px 8px;
  font-size: 12px;
  line-height: 1;
}