@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&display=swap');

/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	font-size: 14px;	/*文字サイズ*/
	line-height: 1.7;		/*行間*/
}
body.en {
	font-size: 17px;	/*文字サイズ*/
}
h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,form,figure,form,input,select,textarea {margin: 0px;padding: 0px;font-size: 100%;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 15px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
iframe {width: 100%;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a:link, a:visited, a:hover, a:active {
	color: #fff;
	transition: 0.5s;	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
}
a:hover {
	text-decoration: none;	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
/*	color: inherit;	/*リンクテキストの色*/
}


/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	position: relative;
	height: 150px;
	background-color: #323232;
}
header h1 {
	position: absolute;
	bottom: 40px;
	padding-left: 30px;
}
header.hd-sub h1 {
	bottom: 20px;
}
header a {
	color: #fff;	/*リンクテキストの文字色*/
	text-decoration: none;
}
.hd-sub {
	height: 100px;
}

.list-header img {
	width: 100%;
}
/*ロゴ画像*/
.logo1 img {
	height: 50px;
/*	position: absolute;
	left:30px;
	bottom: 30px;*/
	margin-right: 20px;
}
.logo2 img {
	width: 120px;	/*画像幅*/
	position: absolute;
	right:30px;	/*ヘッダーに対して右からの場所*/
	bottom: 100px;	/*ヘッダーに対して下からの場所*/
}
.hd-sub .logo1 img {
	height: 50px;	/*画像高さ*/
	left:35px;	/*ヘッダーに対して左からの場所*/
	bottom: 20px;	/*ヘッダーに対して上からの場所*/
}
.hd-sub .logo2 img {
	width: 100px;	/*画像幅*/
	right:35px;	/*ヘッダーに対して右からの場所*/
	bottom: 20px;	/*ヘッダーに対して上からの場所*/
}

/*メニューバー*/
ul#menu {
	left:360px;	/*ヘッダーに対して左からの場所*/
	bottom: 40px;	/*ヘッダーに対して下からの場所*/
	position: absolute;
}
ul#menu-sub {
	right:50px;	/*ヘッダーに対して右からの場所*/
/*	right:150px;	/*ヘッダーに対して左からの場所*/
	bottom: 17px;	/*ヘッダーに対して下からの場所*/
	position: absolute;
}
ul#menu li,ul#menu-sub li{
	float:left;
}
ul#menu a{
	height:30px;
	font-size:13px;
	line-height: 1.2;	/*行間*/
	text-decoration: none;
	display:block;
	padding:0 0 0 8px;
	margin-right:25px;
	color:#fff;
	border-left:4px solid #fff;
}
ul#menu li.active a,ul#menu a:hover{border-color:black;}
ul#menu-sub a{
	text-decoration: none;
	display:block;
	margin-right:25px;
	color:#fff;
}


/*SNSメニュー*/
ul#menu-sns {
	right:30px;	/*ヘッダーに対して左からの場所*/
	bottom: 40px;	/*ヘッダーに対して下からの場所*/
	position: absolute;
}

ul#menu-sns li{
	float:left;
}

ul#menu-sns a{
	display:block;
	margin-left:15px;
}
ul#menu-sns img{
	height:30px;
}

/*スマホ用メニューを表示させない*/
#menubar-s {display: none;}
/*３本バーアイコンを表示させない*/
#menubar_hdr {display: none;}


/*スリックスライダー
------------------------------------------*/
.slick-slide{
	height:auto!important;
}
/*矢印表示*/
.slick-next{
	right:1%!important;
}
.slick-prev{
	left:1%!important;
}
.slick-arrow{
	width: initial!important;
	height: initial!important;
	z-index:2!important;
}
.slick-arrow:before{
	font-size: 30px!important;
}

/*トップページブロックコンテンツ*/
.wrap {
	display: inline-flex;
	margin: 0 35px 0 35px;
}
.block1 {
	width:45%;
	flex-grow: 1;
	margin-right: 10px;
	position: relative;
}
.block1:after {
	margin: 0 1rem;
	content: "";
	width: 4px;
	height: 100%;
	background-color: #000;
	position: absolute;
	left: 100%;
}
.block2 {
	width:45%;
	flex-grow: 1;
	margin-left: 25px;
}
h2 figure {
	width:100%;
}

/*NEWS枠*/
.news1 {
	background-color: #323232;
	padding: 5px 15px;
	margin-top:12px;
}
.news {
	width:auto;
	line-height: 1.5;
	color: white;
}

.news dt {
	float:left;
	width:3.5rem;
}
.news dd {
	margin-left:3.5rem;
	border-left:3px solid #fff;
	padding-left:13px;
	padding-bottom: 2px;
}
.en .news dt {
	padding-top: 4px;
}
.en .news dd {
	padding-bottom: 6px;
}

/*コンテンツ*/
.wrap-cont {
	display: flex;
	flex-wrap:wrap;
	margin-top:40px
}
.content1 {
	flex-basis: 47%;
	margin-right: 6%;
}
.content2 {
	flex-basis: 47%;
}
.content1 a,.content2 a {
	color:#000;
}
h3 {
	margin-top:7px;
	line-height: 1.2;
}

/*ブロック内の文章*/
.block-sentence {
	height:auto;
	line-height: 1.3;
	margin-top:5px;
}

/*文章をスクロールする場合*/
.scroll {
	height: 4.7em;
	line-height: 1.3;
	margin-top:5px;
	overflow: auto;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
	scrollbar-width: none;       /* Firefox 対応 */
}
.scroll::-webkit-scrollbar {  /* Chrome, Safari 対応 */
  display:none;
}

/*.content1:after,.content2:after {
	position: absolute;
	bottom: 0;
	right: 0;
	width:100%;
	height: 0.8em;
	content: "";
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
}*/

.bt-cont {
	border-top:2px solid;padding-top:20px;
	margin-top:20px;
}

/*ブロック２*/
#secst h2 {
	padding:15px 15px;
	letter-spacing: 0.1em;	/*文字間隔*/
	font-size:18px;
	background: #FFD8A1;	/*背景色*/
	border-top: 4px solid;
}

.caution {
	font-size:7px;
}
.en .caution {
	font-size:11px;
}
.block2-archive {
	width:100%;
}
.block2-archive a {
	color:#000;
}

/*サブページブロック*/
.wrap-sub {
	margin: 35px 35px 20px 35px;
}
.content-sub {
	clear:both;
	display:flex;
}
.content-sub-i {
	width:20%;
	float:left;
}
.content-sub-detail {
	float:right;
	width:78%;
	margin-top:-5px;
	margin-left: 2%;
}
.content-sub a {
	color:#000;
	text-decoration:none;
}
.content-sub-sentence {
	line-height: 1.3;
	margin-top:5px;
}

/*フッター*/
footer {
	clear:both;
	position: relative;
	margin-top:20px;
	height: 80px;
	background-color: #323232;
}
ul#footermenu {
	left:35px;	/*ヘッダーに対して左からの場所*/
	top: 20px;	/*ヘッダーに対して下からの場所*/
	position: absolute;
}
ul#footermenu li{
	float:left;
}
ul#footermenu a{
	font-size:13px;
	line-height: 1.2;	/*行間*/
	text-decoration: none;
	display:block;
	margin-right:40px;
	color:#fff;
}
ul#footermenu a:after{
	margin-left:1em;
	content: "／";
	position: absolute;
	color:#fff;
}
footer p{
	top:40px;
	left:35px;
	position: absolute;
	color:#fff;
}
.logo-ft{
	top:20px;
	right:35px;
	width:250px;
	position: absolute;
}
.logo-ft img {
	height: 36px;
	margin-left: 20px;
}
/*その他
---------------------------------------------------------------------------*/
.bt-2 {border-top:2px solid #000;padding-top:20px;}
.mt-20 {margin-top:20px;}
.fl-l {float:left}
.clear {clear: both;}
.mt-block {margin-top:40px;}
.td-n {text-decoration: none;}
.br-resp960 {display:none;}
.br-resp768 {display:none;}


/*画面幅960px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:960px){

body {
	font-size:12px;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	height: 100px;
}

/*ロゴ画像*/
.logo1 img {
	height: 60px;	/*画像高さ*/
	left:25px;	/*ヘッダーに対して左からの場所*/
	bottom: 20px;	/*ヘッダーに対して下からの場所*/
}
.logo2 img {
	width: 70px;	/*画像幅*/
	right:25px;	/*ヘッダーに対して右からの場所*/
	bottom: 55px;	/*ヘッダーに対して下からの場所*/
}
.hd-sub .logo1 img {
	left:25px;	/*ヘッダーに対して左からの場所*/
}
.hd-sub .logo2 img {
	width: 70px;	/*画像幅*/
	right:25px;	/*ヘッダーに対して右からの場所*/
	bottom: 55px;	/*ヘッダーに対して下からの場所*/
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*アニメーションのフレーム設定。全100コマアニメーションだと思って下さい。透明度(opacity)0%から透明度100%にする指定。*/
@keyframes menu1 {
0% {opacity: 0;}
100% {opacity: 1;}
}
/*スマホ用メニューを非表示から表示に切り替える*/
#menubar-s {
	display: block;
	overflow: hidden;
	position: absolute;
	top:100px;
	border-top: 1px solid #fff;
	width: 100%;
	z-index: 10;
	animation-name: menu1;		/*上のkeyframesの名前*/
	animation-duration: 0.5S;	/*アニメーションの実行時間。0.5秒。*/
	animation-fill-mode: both;	/*アニメーションの完了後、最後のキーフレームを維持する*/
}
/*メニュー１個あたりの設定*/
#menubar-s li a {
	display: block;
	text-decoration: none;
	padding: 10px 5%;
	border-bottom: 1px solid #fff;
	background: #000;
	background: rgba(0,0,0,0.8);
	color: #fff;
}
/*PC用メニューを非表示にする*/
#menubar {
	display: none;
}

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: absolute;
	top: 45px;	/*上からの場所*/
	right: 25px;	/*右から25pxの場所に配置*/
	border: 1px solid #000;	/*枠線の幅、線種、色*/
}
/*アイコン共通設定*/
#menubar_hdr.close,
#menubar_hdr.open {
	width: 35px;	/*幅*/
	height: 35px;	/*高さ*/
}
/*三本バーアイコン*/
#menubar_hdr.close {
	background: #fff url(../images/icon_menu2.png) no-repeat center top/35px;
}
/*閉じるアイコン*/
#menubar_hdr.open {
	background: #fff url(../images/icon_menu2.png) no-repeat center bottom/35px;
}

/*メインコンテンツ*/
.wrap {
	margin: 25px 25px 0;
}


/*NEWS枠*/
.news1 {
	padding: 5px 10px;
}
.news dt {
	width:3rem;
}
.news dd {
	margin-left:3rem;
	border-left:2.5px solid #fff;
	padding-left:10px;
}

.wrap-cont {
	margin-top:20px
}

#secst h2 {
	padding:10px 10px;
	letter-spacing: 0.1em;	/*文字間隔*/
	font-size:14px;
	border-top: 3px solid;
}

/*フッター*/
footer {
	height: 60px;
}
ul#footermenu {
	top: 13px;	/*ヘッダーに対して下からの場所*/
	left:20px;	/*ヘッダーに対して左からの場所*/
}
ul#footermenu a{
	font-size:12px;
}
footer p{
	top:28px;
	left:20px;
}
.logo-ft{
	top:13px;
	right:20px;
	width:80px;
}

/*その他*/
.br-resp960 {display:inline;}

}
/*画面幅960px以下ここまで
------------------------------------------------------------------------------------------------------------------------------------------------------*/


/*画面幅768px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:768px){

body {
	font-size:11px;
}

/*ヘッダーとロゴ画像*/
header h1 {
	bottom: 20px;
	padding-left: 20px;
}
.logo1 img {
	height: 36px;
	left:20px;	/*ヘッダーに対して左からの場所*/
}
.logo2 img {
	right:20px;	/*ヘッダーに対して右からの場所*/
}
.hd-sub .logo1 img {
	left:20px;	/*ヘッダーに対して左からの場所*/
}
.hd-sub .logo2 img {
	right:20px;	/*ヘッダーに対して右からの場所*/
}

/*３本バーブロック*/
#menubar_hdr {
	right: 20px;	/*右から25pxの場所に配置*/
}

/*メインコンテンツ*/
.wrap {
	flex-direction:column;
	margin: 10px 20px 0 20px;
}
.block1 {
	width:100%;
	margin-right: 0px;
}
.block1:after {
	display:none;
}
.block2 {
	margin-top:40px;
	width:100%;
	margin-left: 0px;
}

/*NEWS枠*/
.news dd {
	margin-left:2.5rem;
	border-left:2px solid #fff;
}

/*コンテンツ*/
.content1 {
	flex-basis: 48%;
	margin-right: 4%;
}
.content2 {
	flex-basis: 48%;
}
.scroll {
	height: 70px;
}

/*ブロック２*/
	#secst {
	margin-top:40px;
}

/*サブページブロック*/
.wrap-sub {
	margin: 20px 20px 20px 20px;
}

/*フッター*/
footer {
	height: 70px;
}
ul#footermenu {
	top: 13px;	/*ヘッダーに対して下からの場所*/
	left:20px;	/*ヘッダーに対して左からの場所*/
}
ul#footermenu a{
	font-size:10px;
	margin-right:20px;
}
ul#footermenu a:after{
	margin-left:0.5em;
}
footer p{
	top:28px;
	left:20px;
	font-size:10px;
}
.logo-ft{
	width:90px;
}

/*その他*/
.br-resp768 {display:inline;}

}
/*画面幅768px以下ここまで
------------------------------------------------------------------------------------------------------------------------------------------------------*/


/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){

#secst h2 {
	font-size:12px;
	border-top: 2px solid;
}

/*フッター*/
.logo-ft{
	display:none;
}

}
/*画面幅480px以下ここまで
------------------------------------------------------------------------------------------------------------------------------------------------------*/


/*--------------------------------------------------------------
 2023.11追加
 ---------------------------------------------------------------*/
.title_symposium {
	background-color: black;
	color: white;
	padding: 1em 1em 1em 2em;
	margin-top: 3em;
	font-size: 121%;
}
