@charset "utf-8";


/*スライドショー
---------------------------------------------------------------------------*/
.slide * {margin: 0;padding: 0;}
.mainimg .slide picture {display: block;width: 100%;height: 100%;}

/*スライドショー全体を囲むブロック*/
.mainimg {
	width: 100%;position: relative;
	margin-top: var(--headerH);	/*ヘッダーの高さ分、上にスペースをとる*/
}

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

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

/*動画*/
.mainimg .slide video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
	pointer-events: none;
}


/*スライドショー上のテキスト
---------------------------------------------------------------------------*/
/*テキストブロックの基本設定（中央配置がデフォルト）*/
.mainimg .slide .text {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin: 0 3vw;
	color: #fff;	/*文字色*/
	text-shadow: 1px 1px rgba(0,0,0,0.5);	/*テキストの影。右へ、下へ。rgbaは影の色。*/
}

/*テキストブロックを左に配置させたい場合*/
.mainimg .slide .text.left {
	align-items: flex-start;
	text-align: left;
}

/*テキストブロックを右に配置させたい場合*/
.mainimg .slide .text.right {
	align-items: flex-end;
	text-align: right;
}

/*テキストブロックをインラインにする為のブロック*/
.mainimg .slide .text .text-bg {
	display: inline-block;
	padding: 2vw 3vw;	/*上下、左右へのブロック内の余白。*/
	background: rgba(0,0,0,0.5);	/*背景色。0,0,0は黒の事で0.5は色が50%出た状態。*/
	border-radius: 5px;				/*角を少し丸くする*/
	max-width: 60vw;	/*最大幅。画面幅100% = 100vwです。*/
}

/*h2（大きな文字）*/
.mainimg .slide .text h2 {
	line-height: 1.5;
	font-weight: 500;	/*テキストの太さ。200〜900まで指定可能。*/
	font-size: 4vw;		/*文字サイズ。１文字あたり画面幅の約4%。*/
	margin-bottom: 1rem;	/*下に１文字分のスペースを空ける*/
}

/*p（説明テキスト部分）*/
.mainimg .slide .text p {
	font-size: 0.9rem;	/*文字サイズ90%*/
}


/*2つ並んだボタン
---------------------------------------------------------------------------*/
.mainimg .btn {
	display: flex;	/*ボタンが２個以上ある場合に横並びに*/
	justify-content: center;
	gap: 2rem;	/*ボタン同士の間に空けるスペース*/
	font-size: 1.2rem !important;	/*文字サイズ1.2倍*/
	margin-top: 2rem;
}
.mainimg .btn a {
	display: block;text-decoration: none;
	background: var(--accent-color);	/*ボタンの背景色。style.css冒頭のaccent-colorを読み込みます*/
	color: var(--accent-inverse-color);	/*ボタンの文字色。style.css冒頭のaccent-inverse-colorを読み込みます*/
	padding: 0.8rem 2rem;	/*上下に0.8文字分、左右に2文字分の余白。*/
}

/*マウスオン時に少しだけ明るく*/
.mainimg .btn a:hover {
	filter: brightness(1.2);
}

/*テキストブロックを左よせで使う場合、ボタンも左に*/
.mainimg .slide .text.left .btn {
	justify-content: flex-start;
}

/*テキストブロックを右よせで使う場合、ボタンも右に*/
.mainimg .slide .text.right .btn {
	justify-content: flex-end;
}
