@charset "UTF-8";
@import url("grid.css");

* {
	color: #666;
}
img {
	max-width:100%;
	height: auto;
}
a {
	display: block;
	text-decoration-line: none;
}
.center {
	text-align: center;
}

/*ヘッダー
-------------------------------------*/
.head {
	display: flex;
	flex-direction: row;
	padding: 2rem 0 0 0;
}

.head h1 { 
	padding: 1rem 0 0 0;
	margin-bottom: 0.5rem;
	max-width: 50%;
}
.telbox {
	margin-left: auto;
	font-size: 3.0rem;
	padding: 1rem 0 0 0;
}
@media screen and (max-width: 768px){
	.telbox {
		display: none !important;
	}
}

.menu {
	background-color: #fff;
	padding: 10px 0;
}

/* グローバルナビゲーター */
nav ul {
	display: flex;
	list-style: none;
	flex-direction: row;
	justify-content: space-around;
	margin-bottom: 0;
}
nav li {
/* LIGHTFORCE */
/*    flex: 1 0 auto;*/
	flex: 1;/* 各メニュー幅を均等に */
	margin-bottom: 0;
}
nav li+ li {
	border-left: 1px solid #fff;
}
nav li a {
	background-color: #0052b4;    
	text-decoration: none;
	text-align: center;
	color: #fff;
}
nav a {
  	display: block;
  	padding: 1rem 1rem;
	position: relative;
	text-decoration: none;
}
nav a:hover {
	background-color: #00aaff;
	color: #fff;
	transition: 0.09s;
}
nav a.current {
	background-color: #00aaff;
	color: #fff;
/*    pointer-events: none;   リンクのhoverを無効に */
    }
@media screen and (min-width: 768px){
/* PC時はMENUボタンを非表示 */
	#open,#close {
		display: none !important;
	}
	#navi {
		display: block !important;
	}
}
/* ジャンルバナー */
.ban {
	margin-bottom: 2rem;	
}
.banU {
	margin-top: 4rem;	
}
.ban2 {
	margin: 0 auto 2rem;
	width: 50%;
}
.ban2:first-of-type {
	margin-bottom: 5rem;
}
@media screen and (max-width: 768px){
	.ban2 {
		width: 80%;
	}
}
/* その他バナー */
.banOther {
	text-align: center;
	margin: 4rem 0;
}

/* お知らせ（トップページ）装飾 */
.topicsWrapper {
	background-color: #f7f7f7;
	padding: 2rem;
	margin: 1rem auto;
}
.topicsWrapper h3 {
	text-align: center;
	font-size: 2rem;
}
.topicsButton {
	text-align: center;
	margin: 0 auto;
	width:  200px;
	padding: 0.5rem;
	margin-top: 2rem;
	background-color: #0099ff;
  	border-radius: 5px;
}
.topicsButton a {
	color: #fff;
}
.topicsButton a::before {
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #fff;
	}

@media screen and (max-width: 768px){
	nav li+ li {
		border-left: none;
	}
	.head {
		flex-direction: column;
		text-align: left;
		margin-bottom: 20px;
	}
	.head h1 { 
		max-width: 80%;
	}
	.telbox {
		margin-left: 0;
		text-align: center;
	}
	.head #open,#close  {
		position: absolute;
		top: 20px;
		right: 12px;
	}
	nav ul {
		flex-direction: column;
	}
	
	nav li {
		padding-top: 0;
		border-bottom: 1px solid #ccc;
		margin-bottom: 0;
	}
	/* スマホ時はMENUボタンを表示 */
	#open {
		display: block;
		background: url(../img/button.png);
		background-repeat: no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		border: none;
		position: absolute;
		top: 20px;
		right: 12px;
	}
	#close  {
		display: block;
		background: url(../img/button2.png);
		background-repeat: no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		border: none;
		position: absolute;
		top: 20px;
		right: 12px;
	}
	/* スマホ時はPCナビゲーションバーを非表示 */
	#navi {
		display: none;
	}
	.pc { display: none !important; }
	.sp { display: block !important; }
 }

/*メイン画像
-------------------------------------*/
.mainimg img {
/*LIGHTFORCE*/
/* モニター枠一杯でなくレイアウト幅一杯に変更 */
/*width: 100vw;*/
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

/* TOPページ内容 */

/*メインコンテンツ
-------------------------------------*/
main {
	margin: 3rem 0;
}

/*フッター
-------------------------------------*/
footer {
	background-color: #f5f5f5;
	padding-top: 3rem;
	padding-bottom: 5rem;
	color: #666;
}
footer a {
	color: #666;
}
footer a:hover {
	color: #000;
}
footer ul {
	list-style: none;
}
footer ul li {
	margin: 1.5rem 0 1.5rem 2rem;
}
footer ul li a {
	padding: 0 10px;
}
footer ul li ul li{
	margin-left: 10px;
	display: block;
}
.footerLogo  img {
	width: 50%;
}
@media screen and (max-width: 768px){
	.footerLogo img {
		width:60%;
	}
}

.footerLogo2 {
	padding-left: 3rem;
	padding-top: 4rem;
}
@media screen and (min-width: 768px){
	.footerLogo2 {
		display: none !important;
	}
}

.sitemap {
	padding-top: 3rem;
	padding-bottom: 5rem;
	color: #666;
}
.sitemap a {
	color: #666;
}
.sitemap  a:hover {
	color: #000;
}
.sitemap ul {
	list-style: none;
}
.sitemap  ul li {
	margin: 1.5rem 0 1.5rem 2rem;
}
.sitemap  ul li a {
	padding: 0 10px;
}
.sitemap ul li ul li{
	margin-left: 10px;
	display: block;
}


/* フッター部　サイトマップの飾り罫線 */
.sitemap ul li ul {
	margin-top: .5em;
	margin-bottom: .75em;
	margin-left: 30px;/* 縦線の開始位置 */
  }
   
  .sitemap ul li ul li {
	margin-bottom: .25em;
	position: relative;
  }
   
  .sitemap ul li ul li::before {
	content: "";
	position: absolute;
	top: -0.5em;
	left: -16px;
	width: 10px;
	height: calc(100% + .75em);
	border-left: 1px solid #666;
  }
   
  .sitemap ul li ul li:last-child::before {
	height: calc(1em + .25em);
  }
   
  .sitemap ul li ul li::after {
	content: "";
	position: absolute;
	top: .75em;
	left: -16px;
	width: 20px;/* 横線の長さ */
	border-bottom: 1px solid #666;
  }


/*ページトップへ戻るボタン
-------------------------------------*/
/* ボタンを右下に表示する */
#pagetop {
	width: 50px;
	height: 50px;
	position: fixed;
	right: 20px;
	bottom: 10px;
	background: #003399;
	opacity: 0.6;
	border-radius: 10%;
}
#pagetop a {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
}
#pagetop a::before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f062';
	font-size: 25px;
	color: #fff;
	position: absolute;
	width: 25px;
	height: 25px;
	top: -15px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}
#pagetop a:hover {
	border-radius: 10%;
	background-color: #3f98ef;
}

/*パンくずリスト
-----------------------------------*/
.breadcrumb {
	padding: 0;
	font-size: 1.4rem;
}
.breadcrumb li {
	list-style-type: none;
}
.breadcrumb li a {
	display: inline-block;
	color: #003399;
}
.breadcrumb li a:hover {
	color: #0099ff;
}
@media screen and (max-width: 768px){
	.breadcrumb {
		margin-top: -3rem;;
	}
}	

/* 見出し装飾 */
.heading {
	margin: 0 0 5rem 0;
	color: #666;
}
.border {
	border-bottom: 2px solid #666;
	padding-bottom: 4px;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px){
	.border {
		font-size: 2rem;
	}
}	

/* 小見出し装飾 */

.shikaku {
    padding-bottom: 15px;
    position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 0rem;
	text-align: center;
}

.komi {
    padding-bottom: 15px;
    position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 0rem;
}

.secondHeading ol {
	list-style-position: inside;
	margin-bottom: 3rem;
	padding-left: 4rem;
}
.secondHeading li {
		text-indent: -2rem;
}
.secondInner {
	width: 96%;
	margin: 0 auto;
}
.secondInner p {
	margin-bottom: 0rem;
}
.secondInner p.last {
	margin-bottom: 4rem;
}
.space {
	margin-bottom: 3rem;
}
p.indent {
	padding-left: 138px;
	text-indent:-122px;
}
.secondInner h4 {
	margin-bottom: 0;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: -.05rem;
}
.secondInner h5 {
	font-weight: bold;
	margin: 3rem 0 1rem 0;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: -.05rem;
}
.mapPositionL {
	align-content: center;
	align-items: center;
	padding-left: 2rem;
}
.mapPositionR {
	align-content: center;
	align-items: center;
	padding-right: 2rem;
	margin-top: 1rem;
}
@media screen and (max-width: 768px){
	.mapPositionL {
		padding-left: 0;
	}
	.mapPositionR {
		padding-right: 0;
		margin-top: 2rem;
	}
}

.titCons {
	font-size: 2.5rem;
	text-align: center;
}
@media screen and (max-width: 768px){
	.titCons {
		font-size: 1.8rem;
	}
}


.gMap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
  margin-top: 1rem;
}
/* Google Mapのiframe */
.gMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* サブメニュー（ふきだしタブ型） */
.submenu {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	margin-bottom: 6rem;
	margin-top: 1rem;
}
.submenu ul {
	display: flex;
	flex-flow: row;
	justify-content: center;
	list-style-type: none;
	color: #fff;
	
}
.submenu ul li {
	color: #fff;
	background-color: #999;
	margin: 0 5px;/* ナビ間隔 */
	flex: 1;/* 均等幅 */
	position: relative;
	line-height: 35px;/* ナビ高さ */
}
.submenu ul li:first-child {
	margin-left: 0;
}
.submenu ul li:last-child {
	margin-right: 0;
}
.submenu ul li a {
	color: #fff;
}
.submenu ul li.current:before {
  position: absolute;/*絶対配置*/
  content: '';/*空に*/
  border-top: 8px solid #00aaff;/*三角を作る*/
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
  top: 100%;/*下にフィット*/
  left: 50%;/*中央配置*/
  transform: translateX(-50%);/*一応ズレを補正*/
}
.submenu ul li.current {
	font-weight: bold;
	color: #fff;
	background-color: #00aaff;
/*   pointer-events: none;   リンクのhoverを無効に */
}

/* プライバシーポリシー */
.ppInner {
	width: 90%;
	margin: 0 auto;
}
.ppTitle {
	text-align: center;
	font-size: 2rem;

}
.list1 {
	padding-bottom: 10px;
  }
  
  .list1 ul li {
	padding: 10px 0;
	list-style-type: none;
	margin-left: 28px;
	text-indent: -27px;
}
.indentSeitei {
	padding-left: 52px;
	text-indent: -52px;
}

.outset h2 {
	text-align: center;
	margin: 0 0 2rem 0;
}
.outset p {
	text-align: center;
	margin: 0 auto;
}

.tTitle {
	margin-left: 6rem;
	margin-bottom: -2rem;
}
.tTitle2 {
	text-align: right;
	margin-right: 5rem;
	margin-bottom: -2rem;
}


/* お知らせ詳細 */
.informationText p {
	margin-bottom: 1rem;
}
.informationText p:last-child {
	margin-bottom: 5rem;
}
.informationImg {
	max-width: 90%;
	margin: 0 auto;
	margin-bottom: 3rem;
}
.backButton {
	text-align: center;
	margin: 0 auto;
	width: 100px;
	padding: 0.5rem;
	margin-top: 2rem;
	background-color: #0099ff;
  	border-radius: 5px;
}
.backButton a {
	color: #fff;
}

.backButton a::before {
	content: '\f104';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #fff;
}

/* 全分野共通 各ページ 装飾 */
.mar {
	margin-bottom: 1rem;
}
.exhibition:first-child {
	border-bottom: 1px solid #999;
	padding-top: 0rem;
	padding-bottom: 3rem;
}
.exhibition:last-child {
	border-bottom: 0px solid #999;
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.exhibition {
	border-bottom: 1px solid #999;
	padding-top: 2rem;
	padding-bottom: 3rem;
}


.booklet {
	width: 40%;
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.booklet {
		width: 90%;
	}
}

/* 関連事業　各ページ　装飾 */
.study {
	width: 70%;
	border: 2px solid red;
	border-radius: 10px;
	padding: 10px 20px;
	margin: 0 auto;
	margin-bottom: 3rem;
	display: block;
	color: #666;
/*	line-height: 1.5;*/
}

.study .br_sp{
display: none;
}

@media screen and (max-width: 768px){
	.study {
		width: 100%;
	}
    
.study .br_sp{
display:block;
}

}

.study::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		background-image: url(../img/ico_pdf.png);
		background-size: contain;
		vertical-align: middle;
		margin-right: 10px;
}

.indentPdf {
	padding-left: 160px;
	text-indent: -140px;
}
.indentPdf br {
	display: block;
	content: "";
	margin-bottom: -10px;
}
.indentPdfOnly {
	padding-left: 70px;
	text-indent: -50px;
}
.indentPdfOnly br {
	display: block;
	content: "";
	margin-bottom: -10px;
}

/* デジタルブックリンク　装飾 */
.study2 {
	width: 70%;
	border: 2px solid #26d93b;
	border-radius: 10px;
	padding: 10px 20px;
	margin: 0 auto;
	margin-bottom: 3rem;
	display: block;
	color: #666;
/*	line-height: 1.5;*/
}
@media screen and (max-width: 768px){
	.study2 {
		width: 100%;
	}
}
.study2::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		background-image: url(../img/ico_book.png);
		background-size: contain;
		vertical-align: middle;
		margin-right: 10px;
}

.indentPdf2 {
	padding-left: 160px;
	text-indent: -140px;
}
.indentPdf2 br {
	display: block;
	content: "";
	margin-bottom: -10px;
}
.indentPdfOnly2 {
	padding-left: 70px;
	text-indent: -50px;
}
.indentPdfOnly2 br {
	display: block;
	content: "";
	margin-bottom: -10px;
}


/* "構成"ページ共通 */
.compInner {
	width: 90%;
	margin: 0 auto 5rem;
}
.compTitle {
	border-bottom: 1px solid #666;
	padding-bottom: 8px;
}             
.compContents {
	padding-top: 8px;
}
.indent2 {
	padding-left: 145px;
	text-indent: -128px;
}
.indent3 {
	padding-left: 112px;
	text-indent: -96px;
}

.underLink {
	margin-top: 4rem;
	margin-bottom: 5rem;
	text-align: center;
}
@media screen and (max-width: 768px){
	.underLink {
		margin-top: 0rem;
		margin-bottom: 5rem;
	}
}
.underLink a {
	color: #003399;
}
.underLink a:hover {
	color: #0099ff;
}


/* 環境・水素等新エネルギー分野 */
.envBorder {
	border-bottom: 2px solid #6fb920;
	padding-bottom: 4px;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px){
	.envBorder {
		font-size: 2rem;
	}
}	

.envLeft {
	border-left: 10px solid #6fb920;
	font-size: 2rem;
	padding: 0.5rem 0 0.5rem 2rem;
	margin-bottom: 2rem;
}
/* 健康・医療分野 */
.heaBorder {
	border-bottom: 2px solid #e75297;
	padding-bottom: 4px;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px){
	.heaBorder {
		font-size: 2rem;
	}
}	

.heaLeft {
	border-left: 10px solid #e75297;
	font-size: 2rem;
	padding: 0.5rem 0 0.5rem 2rem;
	margin-bottom: 2rem;
}

/* 航空・宇宙分野 */
.airBorder {
	border-bottom: 2px solid #009fe8;
	padding-bottom: 4px;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px){
	.airBorder {
		font-size: 2rem;
	}
}	

.airLeft {
	border-left: 10px solid #009fe8;
	font-size: 2rem;
	padding: 0.5rem 0 0.5rem 2rem;
	margin-bottom: 4rem;

}/* ロボット・AI・IoT分野 */
.robBorder {
	border-bottom: 2px solid #f5aa00;
	padding-bottom: 4px;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px){
	.robBorder {
		font-size: 2rem;
	}
}	

.robLeft {
	border-left: 10px solid #f5aa00;
	font-size: 2rem;
	padding: 0.5rem 0 0.5rem 2rem;
	margin-bottom: 2rem;
}
.robTitle {
	padding-bottom: 15px;
	text-align: center;
	font-weight: bold;
}             
.robContents {
	background-color: #f5aa00;
	border-radius: 10px;
	padding: 10px 20px;
	color: #ffffff;
	margin: 0 auto;
}
.robContents p {
	color: #ffffff;
	font-weight: bold;
}

/* テーブル */
.row-head {
	border-collapse: collapse;
	vertical-align: middle;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 3rem;
  }
  .row-head tr {
	background-color: #fddb5d;
  }
  .row-head tr:nth-child(even) {
	background-color: #fff697;
  }
  .row-head th,
  .row-head td {
	border: 1px solid #fff;  
	padding: 4px 8px;
 }
  
  .row-head th {
  /*   background: #f9fafc;*/
	  background: #f5aa00;
	  color: #fff;
	  text-align: center;
  }
  
  .row-head label {
	line-height: 34px;
	margin: 0;
  }
  .tTitle {
	  margin-left: 6rem;
	  margin-bottom: -2rem;
  }
  .tTitle2 {
	  text-align: right;
	  margin-right: 5rem;
	  margin-bottom: -2rem;
  }
  .firstTd {
	text-align: center;
	background: #f5aa00;
	color: #fff;
	font-weight: bold;	
  }
  .secondTd {
	text-align: center;
  }
  .thirdTd {
	padding-left: 9rem;
  }
  @media only screen and (max-width: 800px) {
	.row-head thead {
	  display: none;
	}
	
	.row-head tr,
	.row-head td {
	  display: block;
	  width: auto;
	}
	
	.row-head tr {
	  border: 1px solid #dbe1e8;
	  /*border-radius: 5px;*/
	  /*box-shadow: 3px 3px rgba(0, 0, 0, .1);*/
	  margin-bottom: 20px;
	  padding: 8px 8px 0;
	}
	
	.row-head td {
	  border: none;
	  border-bottom: 1px solid #dbe1e8;
	  display: flex;
	  justify-content: space-between;
	  text-align: right;
	}
	.row-head td:last-child {
	  border-bottom: none;
	}
	.row-head td::before {
	  content: attr(aria-label);
	  display: inline-block;
	  font-weight: bold;
	  float: left;
	  text-align: left;
	  padding-right: 20px;
	  white-space: nowrap;
	}
	
	.row-head td.bt-area::before {
	  display: none;
	}
	.row-head td.bt-area a {
	  background: #007aff;
	  border-radius: 5px;
	  color: #fff;
	  display: inline-block;
	  flex: 1;
	  height: 40px;
	  margin: 0 2px;
	  overflow: hidden;
	  width: auto;
	}
	.row-head td.bt-area a::before {
	  align-items: center;
	  content: attr(aria-label);
	  display: flex;
	  font-size: 14px;
	  height: 100%;
	  justify-content: center;
	  line-height: 40px;
	  width: 100%;
	}
	
	.row-head.header-check tr {
	  padding-left: 40px;
	  position: relative;
	}
	.row-head.header-check td:first-child {
	  align-items: center;
	  background: #fff;
	  border-right: 1px solid #dbe1e8;
	  border-bottom: none;
	  bottom: 0;
	  display: flex;
	  justify-content: center;
	  left: 0;
	  padding: 0;
	  position: absolute;
	  text-align: center;
	  top: 0;
	  width: 40px;
	}
	.row-head.header-check td:first-child::before {
	  display: none;
	}
	  .tTitle {
		  text-align: center;
		  margin-left: 0;
		  margin-bottom: -2rem;
	  }
	  .tTitle2 {
		  text-align: right;
		  margin-left: 0;
		  margin-bottom: -2rem;
	  }
  } 
  
  /* TOPIMAGE 右ナビ調整 */
  .main {
	margin-top: 2rem;
  }
  .rButton {
	margin-top: 2rem;
  }