@charset "utf-8";

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

body {
	width: 100%;
	height: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: normal;
}

#wrap {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

/* reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup,  menu, nav, output, ruby, section, summary, time, mark, audio, video {  
   margin: 0;  
   padding: 0;  
   border: 0;
   font-size: 100%;
   box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

span.caption {
	display: block;
	font-size: 14px;
	padding-top: 5px;
	text-align: center;
}

a.arw:after {
	content: "\f105" !important;
	display: inline-block;
	padding-left: 8px;
	font-weight: 900;
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	vertical-align: baseline;
	line-height: 1;
}

ul {
	list-style-type: none;
}

ul li {
	list-style-type: none;
}

ul.disc {
	list-style-type: disc;
	margin-left: 1.5em;
}

ul.disc li {
	list-style-type: disc;
	line-height: 1.8;
}

ul.arw {
	display: block;
}

ul.arw li {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

ul.arw li:last-child {
	margin-right: 0;
}

ul.arw li a:before {
	content: "\f138";
	display: inline-block;
	margin-right: 8px;
	font-weight: 900;
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	vertical-align: middle;
	line-height: 1;
	background-color: #fff;
	color: #08215c;
	border-radius: 50%;
}

ul.arw2 li {
	width: 100%;
}

ul.arw2 li a {
	display: block;
	padding: 5px 0;
	font-size: 16px;
	line-height: 1;
}

ul.arw2 a:before {
	content: "\f105" !important;
	display: inline-block;
	padding-right: 8px;
	font-weight: 900;
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	vertical-align: baseline;
	line-height: 1;
}

ul.arw3 li {
	width: 100%;
}

ul.arw3 li:before {
	content: "\f0da" !important;
	display: inline-block;
	padding-right: 8px;
	font-weight: 900;
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	vertical-align: baseline;
	line-height: 1;
}

ul.arw3 li a {
	padding: 5px 0;
	font-size: 16px;
	line-height: 1;
}

#news .news_detail a {
	text-decoration: none;
	color: #000;
}

#news .news_detail a:hover {
	color: #1A0DAB;
	transition: 0.4s;
}

.news_box .news_box_col a {
	text-decoration: none;
	color: #000;
}

.news_box .news_box_col a:hover {
	color: #1A0DAB;
	transition: 0.4s;
}

.research_box .research_box_col a {
	text-decoration: none;
	color: #000;
}

.research_box .research_box_col a:hover {
	color: #1A0DAB;
	transition: 0.4s;
}


.event_box_col a {
	text-decoration: none;
	color: #000;
}

.event_box_col a:hover {
	color: #1A0DAB;
	transition: 0.4s;
}

a {
	text-decoration: none;
}

img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
}

table.data {
	border-collapse: collapse;
    border: #ddd solid 1px;
    color: #000;
    font-size: 100%;
/*    font-family: "ＭＳ Ｐ ゴシック","MS PGothic",sans-serif;*/
    line-height: 1.4;
    margin: 0 0 1.5em 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
    word-break: break-all;
}

table.data tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}

table.data tr {
    display: table-row;
    vertical-align: inherit;
    border-color: inherit;
}

table.data caption {
    border: #ddd solid 1px;
        border-bottom-color: rgb(221, 221, 221);
        border-bottom-style: solid;
        border-bottom-width: 1px;
    border-bottom: none;
    background-color: #ddd;
    font-weight: bold;
    padding: 10px 5px;
    text-align: left;
}

table.data th, table.data td {
    border-bottom: #ddd solid 1px;
    border-left: #ddd solid 1px;
    padding: 10px 5px;
}
table.data th {
    background-color: #f5f5f5;
    font-weight: bold;
}

span.underline {
	text-decoration: underline;
}

.float_right {
	float: right;
	padding: 5px;
}

table td {
	font-size: 100%;
}

table th {
	font-size: 100%;
}

p {
	line-height: 1.8;
	font-size: 100%;
}

p.large {
	font-size: 21px;
}

a.pdf:hover {
	text-decoration: underline;
}

a.pdf:after {
	content: url("/images/common/pdf.png");
	display: inline-block;
	padding-left: 10px;
	vertical-align: middle;
	line-height: 1;
}

p.center {
	display: block;
	text-align: center;
}

p.right {
	display: block;
	text-align: right;
}

.color01 {
	color: #ff0000;
}

.mt1em {
  margin-top: 1em !important;
}

.mt2em {
  margin-top: 2em !important;
}

.ml1em {
	margin-left: 1.5em;
}

.ml2em {
	margin-left: 2em;
}

.indent01 {
	margin-left: 1em;
}

.indent02 {
	margin-left: 2em;
}

.indent03 {
	margin-left: 3em;
}

p.btn01 a {
	width: auto;
	padding: 10px 60px 10px 20px;
	font-size: 18px;
	color: #fff;
	border-radius: 10px;
	position: relative;
	background: #08215c;
	text-align: left;
	line-height: 1;
}

p.btn01 a:after {
	content: "\f105";
	font-weight: 900;
	font-size: 16px;
	font-family: "Font Awesome 5 Free";
	position: absolute;
	right: 15px;
	top: 15px;
}

p.btn01 i {
	color: #fff !important;
}

/******************************************************

						見出し

*******************************************************/

h1 {
	display: block;
	font-weight: normal;
}

h2 {
	display: block;
	font-weight: normal;
}

h2 {
	display: block;
	margin: 0 auto;
	margin-bottom: 2em;
	text-align: center;
	position: relative;
}

h2.top_title {
  display: block;
  font-size: 38px;
  font-weight: normal;
  color: #000000;
  letter-spacing: 0.1em;
  text-align: center;
  position: relative;
  line-height: 1;
  font-family: 'arial', sans-serif;
  font-weight:bold;
}


h2.top_title span {
  font-weight: bold;
  color: #0c4ca8;
}

#next_main h2 {
	display: block;
	width: 100%;
	margin-bottom: 10px !important;
	padding: 15px 10px;
	font-size: 20px;
	font-weight: normal;
	border-top: 7px solid #08215C;
	background-color: #DBDBDB;
	position: relative;
	line-height: 1;
	text-align: left;
}

h2.next_title4 {
	position: relative;
	width: 100%;
	height: auto;
	margin-bottom: 1em;
	padding: 10px;
	color: #000;
	border-top: none !important;
	border-bottom: 5px solid #afafaf;
	background: none !important;
}

h2.next_title4:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 20%;
  height: inherit;
  border-bottom: 5px solid #0271c3;
}

h3 {
	display: block;
	font-weight: normal;
}

#next_main h3 {
  display: block;
  width: 100%;
  margin-bottom: .5em;
  font-size: 18px;
  font-weight: normal;
  color: #000;
  border-top: 8px solid #0170c4;
  background-color: #eaeaea;
  padding: 15px 10px;
  line-height: 1;
}

h3.title a {
	display: block;
	position: relative;
}

h3.title a.outlink:after {
	content: url("/images/common/outlink4.svg");
	position: absolute;
	right: 5px;
}

h4 {
	display: block;
	font-weight: normal;
}

h4.title {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	padding: 5px;
	background-color: #eee;
	font-size: 16px;
	font-weight: normal;
	text-align: left;
}

h5 {
	display: block;
	font-weight: normal;
}

@media screen and (max-width: 640px) {
.ml1em {
	margin-left: 0;
}

.ml2em {
	margin-left: 0;
}


.table_scroll {
	display: block;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}

.table_scroll table {
	table-layout: initial;
}

table.table_block td,
table.table_block th {
	display:block;
	width:100%;
}



}