@charset "UTF-8";


/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");



/*-----------------------------------------------------------------------------
 テンプレート専用CSS
-----------------------------------------------------------------------------*/


/* シンプルタイプ1
-----------------------------------------------------------------------------*/
.tpcms-list-simple1 {
	margin-bottom: 5rem;
}
.tpcms-list-simple1 .tpcms-list {
	margin-bottom: 2rem;
}


/* 横長タイプ1
-----------------------------------------------------------------------------*/
.tpcms-list-row1 {
	margin-bottom: 5rem;
}
.tpcms-list-row1 .tpcms-list {
	display: flex;
	gap: 1.5rem;
	margin-bottom: 2rem;
}
.tpcms-list-row1 .tpcms-list figure {
	margin-bottom: 0;
	width: 30%;
}
.tpcms-list-row1 .tpcms-list .tpcms-text {
	flex: 1;
}


/*横長交互
---------------------------------------------------------------------------*/
.tpcms-list-row2 {
	margin-bottom: 5rem;
}
.tpcms-list-row2 .tpcms-list {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	margin-bottom: 2rem;
}
.tpcms-list-row2 .tpcms-list:nth-child(even) {
	flex-direction: row-reverse;
}
.tpcms-list-row2 .tpcms-list figure {
	margin-bottom: 0;
	width: 50%;
	box-shadow: 3rem 3rem rgba(0,0,0,0.05);
}
.tpcms-list-row2 .tpcms-list:nth-child(even) figure {
	box-shadow: -3rem 3rem rgba(0,0,0,0.05);
}
.tpcms-list-row2 .tpcms-list .tpcms-text {
	flex: 1;
}


/* グリッドタイプ1
-----------------------------------------------------------------------------*/
.tpcms-list-grid1 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	margin-bottom: 5rem;
}


/* テーブル1
-----------------------------------------------------------------------------*/
.tpcms-table1 figure {display: none;}

/*テーブルブロック設定*/
.tpcms-table1 {
	table-layout: fixed;
	border-top: 1px solid #ccc;
	width: 100%;
	margin-bottom: 5rem;
}

/*tr（１行分）タグ設定*/
.tpcms-table1 tr {
	border-bottom: 1px solid #ccc;
}

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

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


/* オーバーレイ：UP1
-----------------------------------------------------------------------------*/
.tpcms-overlay-up1 {
	margin-bottom: 2rem;
	display: flex;
	gap: 5px;
}
.tpcms-overlay-up1 a {
	display: block;text-decoration: none;
}
.tpcms-overlay-up1 a:hover {
	opacity: 1;
}
.tpcms-overlay-up1 .tpcms-list {
	flex: 1;
	position: relative;
	overflow: hidden;
}
.tpcms-overlay-up1 .tpcms-list figure {
	position: absolute;
	inset: 0;
	margin: 0;
	z-index: 0;
}
.tpcms-overlay-up1 .tpcms-list figure > img,
.tpcms-overlay-up1 .tpcms-list figure > a > img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
	display:block;
	}
.tpcms-overlay-up1 .tpcms-list figure > a{
	display:block;
	width:100%;
	height:100%;
}
.tpcms-overlay-up1 .tpcms-text {
	position: relative;
	z-index: 2;
	padding: 5vw 2rem;
	color: #fff;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	text-align: center;
	pointer-events:none;
}
.tpcms-overlay-up1 h4 {
	margin: 0;
	font-size: 3rem;
}
.tpcms-overlay-up1 .tpcms-list::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.6);
	transform: translateY(0);
	transition: transform 0.3s 0.1s;
	z-index: 1;
	pointer-events: none;
}
.tpcms-overlay-up1 .tpcms-list:hover::after {
	transform:translateY(100%);
}


/*開閉ブロック
---------------------------------------------------------------------------*/
/*質問*/
.tpcms-openclose1 dt {
	display: flex;
	align-items: flex-start;
	border-radius: 3px;		/*角を少しだけ丸く*/
	margin-bottom: 1rem;	/*下に空けるスペース。質問ブロック同士の余白です。*/
	background: #fff;		/*背景色*/
	color: #555;			/*文字色*/
	border: 1px solid #ccc;	/*枠線の幅、線種、色*/
	padding: 1rem;		/*ブロック内の余白。１文字分。*/
	cursor: pointer;	/*カーソルの形状。リンクと同じスタイルにしてクリックできると認識してもらう。*/
}

/*アイコン（閉じている場合）*/
.tpcms-openclose1 dt::before {
	font-family: "Font Awesome 6 Free";
	content: "\f13a";	/*アイコン画像の指定*/
	font-weight: bold;
	margin-right: 1rem;	/*右側に空けるスペース*/
	flex-shrink: 0;
	color: #999;			/*アイコンの色*/
	transform: scale(1.5);	/*アイコンのサイズ1.4倍*/
}

/*アイコン（開いている場合）*/
.tpcms-openclose1 dt.active::before {
	content: "\f057";	/*開いている時のアイコン画像*/
	color: #ff0000;		/*アイコンの色*/
}

/*回答*/
.tpcms-openclose1 dt + * {
	padding: 0 1rem 1rem 3rem;	/*ボックス内の余白。上、右、下、左への順番。*/
}


/* その他
-----------------------------------------------------------------------------*/
/*リッチエディタでのyoutubeなどのiframeアスペクト比を保つ*/
.note-video-clip{width:100%;aspect-ratio:16/9;height:auto}



