@charset "UTF-8";

/****************************************************************************
Reset Style
***************************************************************************/

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

html {
	overflow-y: scroll;
}




/****************************************************************************
Base
***************************************************************************/
html {
	font-size: 62.5%;
	/*10px*/
	overflow-y: scroll;
}

body {
	line-height: 1.5;
	font-size: 14px;
	background: #fff;
	color: #707070;
	font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	-webkit-text-size-adjust: 100%;
}

a:link {
	color: #707070;
	text-decoration: none;
}

a:visited {
	color: inherit;
}

a:hover {
	color: inherit;
}

a:active {
	color: inherit;
}

img,
video {
	max-width: 100%;
	height: auto;
}

ul {
	list-style: none;
}

.clearfix:after {
	content: " ";
	display: block;
	clear: both;
}

/****************************************************************************
Common
***************************************************************************/

/* Header ------- */
.Header {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 15px auto;
	border-top: 2px solid #bf1c1b;
}

.Header__head {
	margin-top: 10px;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	font-size: 12px;
}

.Header__hnav {
	overflow: hidden;
}

.Header__hnav li {
	display: inline-block;
	margin-left: 3px;
}

a.btn_sponsor {
	width: 105px;
	display: block;
	background-color: #707070;
	color: #fff;
	text-align: center;
	border: 1px solid #707070;
}

a.btn_member {
	width: 105px;
	display: block;
	background-color: #707070;
	color: #fff;
	text-align: center;
	border: 1px solid #707070;
}

a.btn_english {
	width: 105px;
	display: block;
	background-color: #fff;
	border: 1px solid #33475c;
	text-align: center;
	color: #33475c;
}

.Header__search {
	position: relative;
	margin-right: 7px;
}

.Header__search input {
	width: 170px;
	border: 1px solid #505050;
	padding: 3.7px 3px;
	display: inline-block;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.Header__search .search-btn {
	position: absolute;
	top: 1px;
	right: 1px;
	width: 30px;
	background: #ffffff;
	border: none;
}

.Header__body {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
}

.siteid {
	width: 13.95%;
	min-width: 134px;
}

.Menu--global {
	width: 86.04%;
	display: table;
	table-layout: fixed;
	margin-top: 30px;
	position: relative;
	z-index: 3;
}

.Menu--global li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 164px;
	height: 50px;
	border-left: 1px solid #bf1c1b;
	line-height: 1.2;
	box-sizing: border-box;
}

.Menu--global li:last-child {
	border-right: 1px solid #bf1c1b;
}

.Menu--global li a {
	display: table-cell;
	display: block;
	/*height:100%;*/
	box-sizing: border-box;
}

.Menu--global li a:hover {
	background-color: #505050;
	color: #fff;
}

.Menu--global li a.active {
	background-color: #505050;
	color: #fff;
}

.nav_about {
	padding-top: 7px;
}

.amp::before,
.amp::after {
	content: "\A";
	white-space: pre;
}

.newline::before {
	content: "\A";
	white-space: pre;
}

.togglemenu a {
	padding: 3px 0px
}

.togglemenu a.nav_about {
	padding: 13px 0px 9px 0px;
}

@media (max-width:1000px) {
	.Menu--global {
		display: none;
	}

	.Header {
		width: 100%;
		max-width: 100%;
		height: 120px;
		margin-bottom: 0px;
	}

	.Header__head {
		margin-top: 0;
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}

	.Header__body {
		-webkit-flex-direction: column;
		flex-direction: column;
	}

	.Header__hnav {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		position: absolute;
		top: 30px;
		right: 19px;
	}

	.Header__hnav li {
		margin-left: 0px;
	}

	a.btn_sponsor {
		width: 105px;
		display: block;
		text-align: center;
		background-color: #fff;
		color: #707070;
		border: none;
		/*border-left:1px solid #707070;*/
		padding: 3px 0px;
	}

	a.btn_member {
		width: 105px;
		display: block;
		background-color: #fff;
		color: #707070;
		border: none;
		border-left: 1px solid #707070;
		padding: 3px 0px;
	}

	a.btn_english {
		width: 105px;
		display: block;
		background-color: #33475c;
		border: 1px solid #fff;
		text-align: center;
		color: #fff;
		padding: 3px 0px;
	}

	.siteid {
		width: auto;
		min-width: auto;
	}

	.siteid img {
		position: absolute;
		top: 30px;
		left: 3%;
		width: 105px;
	}

	.Menu--global {
		width: 100%;
		margin-top: 0px;
		position: absolute;
		top: 120px;
		display: block;
		table-layout: auto;
		border-top: 1px solid #ddd;
	}

	.Menu--global li {
		display: block;
		vertical-align: middle;
		text-align: center;
		width: 100%;
		height: auto;
		border-left: none;
		line-height: 1.2;
		background-color: #fff;
		border-bottom: 1px solid #ddd;
	}

	.Menu--global li:last-child {
		border-right: none;
	}

	.Menu--global a {
		display: block;
		vertical-align: middle;
		text-align: center;
		width: 100%;
		height: auto;
		padding: 15px 0px;
		border-left: none;
		line-height: 1.2;
	}

	.Menu--global a.nav_about {
		padding: 18px 0px 15px 0px;
	}

	.Menu--global li a.active {
		background-color: #333;
	}

	.amp::before,
	.amp::after {
		content: "";
	}

	.newline::before {
		content: "";
	}

	.nav_about {
		padding-top: 0px;
	}

	.Header__search {
		position: absolute;
		top: 72px;
		width: 100%;
		text-align: right;
	}

	.Header__search input {
		width: 250px;
		margin-right: 80px;
		font-size: 16px;
	}

	.Header__search input::-webkit-input-placeholder {
		text-align: right;
	}
}

@media (max-width:480px) {
	.Header__search input {
		width: 160px;
	}

	a.btn_sponsor,
	a.btn_member,
	a.btn_english {
		width: 75px;
		padding: 1px 0px;
	}
}

@media (max-width:320px) {
	.Header__search input {
		width: 110px;
	}

	a.btn_sponsor,
	a.btn_member,
	a.btn_english {
		width: 60px;
		padding: 1px 0px;
	}
}


.togglemenu {
	position: relative;
}

.Menu--global-second {
	display: none;
	/*  ドロップメニューが一瞬開くのを防ぐため追加 display:none;にする。  */
	position: absolute;
	width: 100%;
	top: 54px;
	border-top: 1px solid #fff;
}

.Menu--global-second li {
	display: block;
	background-color: #505050;
	color: #fff;
	border: none;
	width: 100%;
	height: auto;
}

.Menu--global-second li:last-child {
	border: none;
}

.Menu--global-second li a {
	display: block;
	background-color: #505050;
	color: #fff;
	border-bottom: 1px solid #fff;
	padding: 15px 0px;
	box-sizing: border-box;
}

.Menu--global-second li ul {
	position: absolute;
	top: 0px;
	left: 165px;
}

.item-arrow:after {
	content: "";
	position: absolute;
	border-top: 1px solid;
	border-right: 1px solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 7px;
	height: 7px;
	top: 50%;
	right: 10px;
	margin-top: -4px;
	border-color: #fff;
}


@media (max-width:1000px) {
	.Menu--global {
		display: none;
	}

	.togglemenu {
		position: relative;
	}

	.Menu--global .Menu--global-second {
		position: relative;
		top: 0px;
		background-color: #ddd;
		width: 100%;
	}

	.Menu--global-second {
		border-top: none;
	}

	.Menu--global .Menu--global-second li a {
		padding: 10px 0px;
		margin-bottom: 0;
		border-bottom: 1px solid #888;
	}

	.Menu--global .Menu--global-second li a.active {
		background-color: #ddd;
		color: #505050;
	}

	.Menu--global .Menu--global-third li {
		border-top: 1px solid #fff;
	}

	.Menu--global .Menu--global-third li a {
		background-color: #ddd;
		color: #707070;
	}

	.Menu--global-second li ul {
		position: relative;
		left: 0;
	}

	.Menu--global-third {
		position: relative;
		top: 0px;
	}

	.item-arrow {
		position: relative;
	}

	.item-arrow:after {
		content: "";
		position: absolute;
		border-top: 1px solid;
		border-right: 1px solid;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		width: 7px;
		height: 7px;
		top: 50%;
		right: 10px;
		margin-top: -4px;
		border-color: #fff;
		color: #ff0000;
	}
}


/***  Hamburger  Menu  ***/
.ham-menu {
	display: none;
}

@media (max-width:1000px) {
	.ham-menu {
		width: 68px;
		height: 68px;
		display: block;
		position: absolute;
		top: 55px;
		right: 10px;
		z-index: 4;
		border: none;
	}

	.ham-menu span {
		width: 30px;
		height: 3px;
		display: block;
		background: #333;
		position: absolute;
		left: 19px;
		top: 40%;
	}

	.ham-menu span {
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	.ham-menu .top {
		-webkit-transform: translateY(-10px);
		-ms-transform: translateY(-10px);
		transform: translateY(-10px);
	}

	.ham-menu .bottom {
		-webkit-transform: translateY(10px);
		-ms-transform: translateY(10px);
		transform: translateY(10px);
	}

	.ham-menu.is-open .top {
		-webkit-transform: rotate(-45deg) translateY(0px);
		-ms-transform: rotate(-45deg) translateY(0px);
		transform: rotate(-45deg) translateY(0px);
	}

	.ham-menu.is-open .bottom {
		-webkit-transform: rotate(45deg) translateY(0px);
		-ms-transform: rotate(45deg) translateY(0px);
		transform: rotate(45deg) translateY(0px);
	}

	.ham-menu.is-open .middle {
		background: none;
	}
}

/* スライダーとコンテンツの区切り線（追加） -------
.border{display:block;width:100%;height:1px;margin:40px 0;background:#eeefef;}
*/

/* Footer ------- */
.Footer {
	width: 100%;
	background-color: #eeefef;
	margin-top: 10px;
	font-size: 12px;
}

.Footer__column-wrapper {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.Footer__column ul {
	margin-bottom: 20px;
}

.Footer__column__head {
	margin-top: 20px;
	margin-bottom: 8px;
	padding-bottom: 2px;
	border-bottom: 2px solid #fff;
}

.Footer__column__body {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.wg__inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.fbox {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.wg {
	width: 55%;
}

.pj {
	width: 38%;
}

.col1 {
	-webkit-flex-grow: 1;
	flex-grow: 1;
}

.col3 {
	-webkit-flex-grow: 3;
	flex-grow: 3;
	margin: 0 2%;
}

.copyright {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	text-align: center;
	border-top: 2px solid #fff;
	padding: 7px 0px;
}

@media (max-width:1000px) {
	.Footer__column-wrapper {
		width: 96%;
		margin: 0 auto;
	}
}

@media (max-width:600px) {

	.Footer__column-wrapper,
	.wg__inner {
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-bottom: 10px;
	}

	.wg__inner ul {
		margin-bottom: 0;
	}

	.fbox {
		flex-direction: row;
		justify-content: space-between;
	}

	.Footer__column__inner {
		width: 48%;
	}

	.Footer__column__box {
		display: -webkit-flex;
		display: flex;
	}

	.Footer__column__box ul {
		width: 50%;
	}

	.col1 {
		margin: 0 2%;
	}

	.wg {
		width: 50%;
	}

	.pj {
		width: 50%;
	}

	.od1 {
		order: 1;
	}

	.od2 {
		order: 2;
	}

	.od3 {
		order: 3;
	}

	.od4 {
		order: 4;
	}
}

/* Layout ------- */
.Container {
	width: 100%;
	max-width: 720px;
	margin: 0px auto;
	margin-bottom: 100px;
}

@media (max-width:720px) {
	.Container {
		width: 96%;
		margin: 0 auto;
		margin-bottom: 70px;
	}
}

.Container--top {
	width: 100%;
	max-width: 1000px;
	margin: 0px auto;
	position: relative;
	z-index: 1;
}

.Main--top {
	display: -webkit-flex;
	display: flex;
	margin-bottom: 60px;
}

@media (max-width:480px) {
	.Main--top {
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-bottom: 30px;
	}
}

.Crumb {
	width: 100%;
	max-width: 940px;
	margin: 35px auto 55px auto;
}

.Crumb__body li {
	display: inline-block;
	position: relative;
	margin-right: 20px;
}

.Crumb__body li + li:before {
	content: ">";
	position: absolute;
	left: -16px;
}

@media (max-width:1000px) {
	.Crumb {
		max-width: 96%;
	}
}



/****************************************************************************
Module
***************************************************************************/

.Main section {
	margin-bottom: 60px;
}

.Main p {
	margin-bottom: 20px;
	line-height: 1.7;
}

.Main h1 {
	font-size: 20px;
	color: #505050;
	position: relative;
	margin-bottom: 80px;
}

.Main h1:before {
	content: "";
	display: block;
	width: 90px;
	border-bottom: 4px solid #bf1c1b;
	position: absolute;
	bottom: 0;
	margin-bottom: -15px;
}

.Main h2 {
	font-size: 18px;
	color: #505050;
	text-align: center;
	margin-bottom: 20px;
}

.Main h2:before {
	content: "[";
	padding-right: 5px;
}

.Main h2:after {
	content: "]";
	padding-left: 5px;
}

.Main h3 {
	font-size: 16px;
	color: #505050;
	border-top: 1px dotted #dbdbdb;
	border-bottom: 1px dotted #dbdbdb;
	text-align: center;
	padding: 5px 0px;
	margin-bottom: 20px;
}

.Main h4 {
	font-size: 16px;
	color: #505050;
	border-bottom: 1px dotted #c6c6c6;
	margin-bottom: 30px;
}

.Main .ttl-styleA,
.Main .ttl-styleB,
.Main .ttl-styleC,
.Main .ttl-styleD {
	font-size: 16px;
	color: #505050;
	position: relative;
	font-weight: bold;
	border-top: 1px solid #c6c6c6;
	padding-top: 7px;
	margin-bottom: 20px;
}

.Main .ttl-styleA:before,
.Main .ttl-styleB:before,
.Main .ttl-styleC:before,
.Main .ttl-styleD:before {
	content: "";
	display: block;
	width: 40px;
	position: absolute;
	top: 0;
	margin-top: -1px;
}

.Main .ttl-styleA:before {
	border-top: 1px solid #1265CD;
}

.Main .ttl-styleB:before {
	border-top: 1px solid #ffb31e;
}

.Main .ttl-styleC:before {
	border-top: 1px solid #0a974e;
}

.Main .ttl-styleD:before {
	border-top: 1px solid #bf1c1b;
}

.Main ul.ul-styleA,
.Main ul.ul-styleB,
.Main ul.ul-styleC,
.Main ul.ul-styleD,
.Main ul.ul-styleE,
.Main ul.ul-styleF {
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 30px;
}

.Main ul.ul-styleG {
	list-style: none;
}

.Main ul.ul-styleA > li,
.Main ul.ul-styleB > li,
.Main ul.ul-styleC > li,
.Main ul.ul-styleD > li,
.Main ul.ul-styleE > li,
.Main ul.ul-styleF > li {
	margin-bottom: 5px;
}

.Main ul.ul-styleA > li:before {
	content: '\f0c8';
	font-family: FontAwesome;
	margin-right: 2px;
}

.Main ul.ul-styleB > li:before {
	content: '\f096';
	font-family: FontAwesome;
	margin-right: 2px;
}

.Main ul.ul-styleC > li:before {
	content: '\f111';
	font-family: FontAwesome;
	margin-right: 2px;
}

.Main ul.ul-styleD > li:before {
	content: '\f192';
	font-family: FontAwesome;
	margin-right: 2px;
}

.Main ul.ul-styleE > li:before {
	content: '\f10c';
	font-family: FontAwesome;
	margin-right: 2px;
}

.Main ul.ul-styleF > li:before {
	content: "- ";
}

.Main ul.ul-styleA ul,
.Main ul.ul-styleB ul,
.Main ul.ul-styleC ul,
.Main ul.ul-styleD ul,
.Main ul.ul-styleE ul {
	margin-top: 7px;
	margin-left: 15px;
	margin-bottom: 10px;
}

@media (max-width:480px) {
	.Main ul.ul-styleF {
		overflow: hidden;
	}

	.Main ul.ul-styleF li {
		float: left;
		width: 50%;
	}
}

.Main .color-styleA {
	color: #1265cd;
}

.Main .color-styleB {
	color: #ffb31e;
}

.Main .color-styleC {
	color: #0a974e;
}

.Main .color-styleD {
	color: #bf1c1b;
}

.Main .color-styleE {
	color: #a37440;
}

.Main a {
	text-decoration: underline;
}

.Main--top a {
	text-decoration: none;
}

.Main .img-single {
	text-align: center;
	margin-bottom: 50px;
}

.Main .img-triple {
	display: flex;
	justify-content: space-between;
	margin-bottom:30px;
}

.Main .img-triple p{
	width:32.5%;
}
	@media (max-width:480px) {
		.Main .img-triple {
			flex-wrap: wrap;
			margin-bottom:30px;
		}
		.Main .img-triple p{
			width:48%;
		}
	}

.Main .card {
	margin-bottom: 	30px;
}

.Main .card__item {
	display:flex;
	justify-content: space-between;
	width:100%;
}

.Main .card__item__txt{
	width:60%
}

.Main .card__item__photo{
	width:38%;
}

.Main .card:nth-child(even) .card__item{
	flex-direction: row-reverse;
}


/****************************************************************************
Pages
***************************************************************************/


/*** トップ Keyvisual  ***/
.Keyvisual {
	width: 100%;
	height: 250px;
	max-width: 1000px;
	margin: 40px auto 20px auto;
	/*  Keyvisual のボックス位置はここで変更 */
}

@media (max-width:600px) {
	.Keyvisual {
		width: 100%;
		height: auto;
		min-height: 150px;
		margin:0 auto 0 auto;
	}	
}

@media (max-width:480px) {
	.Keyvisual {
		width: 100%;
		height: auto;
		min-height: 130px;
		margin:0 auto 0 auto;
	}	
}


/***  Project, News/Event  ***/
.event,
.network,
.security,
.service {
	width: 210px;
	padding: 20px;
}

.event {
	background-color: #eeefef;
}

@media (max-width:480px) {
	.event,
	.network,
	.security,
	.service {
		width: 96%;
		margin: 0 auto;
		padding: 20px 0px;
		border-bottom: 1px dotted #c6c6c6;
	}
	.event {
		background-color: #fff;
	}
}

.event__head,
.network__head,
.security__head,
.service__head {
	font-size: 18px;
	font-weight: bold;
	position: relative;
	text-align: center;
	padding-bottom: 17px;
	margin-bottom: 30px;
}

.event__head {
	color: #707070;
}

.network__head {
	color: #1265cd;
}

.service__head {
	color: #ffb31e;
}

.security__head {
	color: #0a974e;
}

.event__head:before,
.network__head:before,
.security__head:before,
.service__head:before {
	content: "";
	display: block;
	width: 90px;
	margin-bottom: -4px;
	position: absolute;
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	margin: auto auto;
}

.event__head:before {
	border-bottom: 4px solid #fff;
}

.network__head:before {
	border-bottom: 4px solid #1265cd;
}

.service__head:before {
	border-bottom: 4px solid #ffb31e;
}

.security__head:before {
	border-bottom: 4px solid #0a974e;
}

@media (max-width:480px) {
	.event__head:before {
		border-bottom: 4px solid #707070;
	}
}

.event__body,
.network__body p,
.security__body p,
.service__body p {
	margin-bottom: 30px;
	min-height: 300px;
	line-height: 1.8;
}

.event__body {
	/*--  Ajax のために追加  --*/
	width: 95%;
	height: 567px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	/*--  Ajax のために追加 ここまで --*/
	margin-bottom: 0;
}

@media (max-width:480px) {
	.event__body,
	.network__body p,
	.security__body p,
	.service__body p {
		min-height: 0;
	}
}

.event__foot,
.event__foot a {
	color: #707070;
}

.network__foot,
.network__foot a {
	color: #1265cd;
}

.service__foot,
.service__foot a {
	color: #ffb31e;
}

.security__foot,
.security__foot a {
	color: #0a974e;
}

.event__entrybox {
	margin-bottom: 20px;
}

/*-- トップページに追加 ここから --*/
.Line_up {
	display: block;
	width: 100%;
	height: auto;
	padding-bottom: 5px;
	border-bottom: 2px dotted;
}
.Line_dawn {
	display: block;
	width: 100%;
	height: auto;
	padding-top: 15px;
}
/*-- トップページに追加 ここまで --*/
/*-- 20181012トップページに追加 ここから --*/
.Top_sub-contents {
	width: 100%;
	text-align: center;
	margin-bottom: 50px;
}
.Top_sub-contents span {
	margin: 0px 10px;
}
.Top_sub-contents img {
	width:100%;
	max-width:420px;
}
	@media (max-width:600px) {
	.Top_sub-contents span {
		margin: 0px;
	}		
		.Top_sub-contents img {
			width:100%;
			max-width: auto;
		}	
	}

/*-- 20181012トップページに追加 ここまで --*/


@media (max-width:480px) {
	.event__entrybox {
		display: --webkit-flex;
		display: flex;
		align-items: center;
	}
}

.event__entry__date {
	color: #bf1c1b;
	font-size: 12px;
	margin-bottom: 5px;
}

.event__entry__txt {
	margin-bottom: 7px;
	margin-right: 7px;
}

/***  Banner  ***/
.Banner {
	width: 100%;
	max-width: 760px;
	margin: 0 auto;
}

.Banner__inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.Banner__inner li {
	margin: 0px 10px 10px 10px;
}

@media (max-width:480px) {
	.Banner__inner {
		-webkit-justify-content: center;
		justify-content: center;
	}

	.Banner__inner li {
		margin: 0px 5px 10px 5px;
	}
}


/***  Greeting  ***/
.Greeting {
	margin-bottom: 30px;
	-webkit-display: flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.Greeting__name {
	margin-right: 20px;
	text-align: right;
}

/***  History  ***/
.History__box {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	box-sizing: border-box;
}

.History__box:nth-child(odd) {
	background-color: #eeefef;
}

.History__head {
	width: 10%;
	min-width: 80px;
	font-size: 20px;
	padding: 20px 10px 20px 20px;
}

.History__body {
	width: 90%;
	padding: 23px 15px 20px 15px;
	border-left: 2px solid #bf1c1b;
}

.History__list .list__item {
	margin-bottom: 20px;
}

.History__list .list__item:last-child {
	margin-bottom: 0px;
}

/***  Member  ***/
.Member__nav {
	width: 100%;
	-webkit-display: flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.Member__nav li {
	margin-bottom: 7px;
}

.Member__nav li:last-child {
	border-right: 1px solid #707070;
}

.Member__nav li a {
	border-left: 1px solid #707070;
	text-align: center;
	padding: 2px 17px;
}

.Member__list {
	width: 100%;
	-webkit-display: flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 45px;
}

.Member__list li {
	width: 33.3%;
	margin-bottom: 7px;
}

/***  Wgroup  ***/
.Wgroup {
	width: 100%;
	margin-bottom: 60px;
}

.Wgroup__box {
	-webkit-display: flex;
	display: flex;
	margin-bottom: 10px;
}

.Wgroup__title {
	width: 15%;
	min-width: 120px;
}

.Wgroup__title:before {
	content: "-";
	margin-right: 5px;
}

.Wgroup__txt {
	width: 85%;
}

/***  News  ***/


.News__year {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.News__year li {
	margin-bottom: 7px;
	font-size: 16px;
}

.News__year li:last-child {
	border-right: 1px solid #c6c6c6;
}

.News__year li a {
	border-left: 1px solid #c6c6c6;
	text-align: center;
	padding: 2px 23px;
	text-decoration: none;
}

@media (max-width:960px) {
	.News__year {
		-webkit-justify-content: center;
		justify-content: center;
	}
	.News__year li a {
		padding: 2px 20px;
	}
}

.News__box {
	/*display: table;*/
	border-top: 1px solid #c6c6c6;
	padding: 15px 0px;
}

.News__box:last-child {
	border-bottom: 1px solid #c6c6c6;
}

.News__head {
	width: 100px;
	padding: 0px 0px 10px 0px;
}

.News__body {
	width: 100%;
	height: auto;
}

.News__title-box {
	font-weight: bold;
	/*display: flex;*/
	margin-bottom: 5px;
}

.News__date {
	font-weight: bold;
}

.News__txt {
	margin-bottom: 7px;
}

.News__more a:before {
	content: ">>";
	margin-right: 7px;
}

.News__more a {
	color: #a37440;
	text-decoration: none;
}

.News__cat-news {
	color: #be629b;
	border: 1px solid #be629b;
	display: block;
	text-align: center;
}

.News__cat-events {
	color: #33475c;
	border: 1px solid #33475c;
	display: block;
	text-align: center;
}

.News__cat-pr {
	color: #b49829;
	border: 1px solid #b49829;
	display: block;
	text-align: center;
}

@media (max-width:480px) {
	.News__title-box {
		display: block;
	}
}
.News__txt p {
	text-align: justify;
}
.news_flex {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	margin: -15px 0 0 0;
}
.news_left {
	width: 40%;
	height: auto;
}
.news_right {
	width: 60%;
	height: auto;
}

@media (max-width:768px) {
	.news_flex {
		display: block;
	}
	.news_left,
	.news_right {
		width: 100%;
	}
	.news_right {
		margin: 15px 0 0 0;
	}
}



/****************************************************************************
add to
***************************************************************************/


.two_box {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
	width: 100%;
	height: auto;
	margin: 15px 0px 0px 0px;
	padding: 0;
}

.box_left,
.box_right {
	width: 48%;
	height: auto;
	margin: 0;
	padding: 0;
	/*background: red;*/
}

.box_right {
	/*background: blue;*/
}

/*  汎用 縦型ボックス  */
.vertical_box {
	width: 100%;
	height: auto;
	margin: 5px 0px 10px 0px;
	padding: 10px 10px 10px 10px;
}

.image_box {
	text-align: center;
	margin: 5px auto 5px auto;
	padding: 0;
}

/*  汎用 縦型ボックス ここまで */
@media (max-width: 750px) {
	.two_box {
		display: block;
		width: 98%;
		margin: 0 auto;
	}

	.box_left,
	.box_right {
		width: 98%;
	}

	.vertical_box {
		width: 98%;
		margin: 5px auto 10px auto;
		padding: 0px 0px 10px 0px;
	}
}

/*  About/award.html  */
.award th {
	width: 90px;
	font-weight: 400;
	text-align: left;
}

/*  About/various_members.html  */
.list_namber {
	margin: 0px 0px 0px 28px;
}

/*  About/research_report.html  */
.about_research {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

.about_research li {
	display: inline-block;
	width: 80px;
	height: auto;
	margin: 0;
	padding: 7px 5px;
}

/*  About/paper.html  */
.li-styleA {
	font-weight: bold;
}

/*  About/report/index.html  */
.research_book {
	display: block;
	width: 382px;
	height: 337px;
	margin: 0 auto;
}

.research_book_s {
	display: none;
	width: 300px;
	height: 266px;
	margin: 0 auto;
}

@media(max-width: 375px) {
	.research_book {
		display: none;
	}

	.research_book_s {
		display: block;
	}
}

/*  About/report/workGroup  */
/*  表の年度リスト用  */
.wkg_year_list {
	margin: 0px 0px 15px 0px;
	list-style: none;
}

.wkg_year_list li {
	display: inline-block;
	width: 100px;
	height: auto;
	margin: 0px 0px 2px 0px;
	padding: 0;
	border-left: 1px solid;
}

.wkg_year_list li:first-child {
	margin-left: -1px;
}

.wkg_year_list li:last-child {
	border-right: 1px solid;
}

.wkg_year_list_here {
	color: #ff4500;
}

/*  表の年度リスト用 ここまで */
/*  wkg_table2 はセル数が少ない用  */
.wkg_table,
.wkg_table2 {
	font-size: 0.8em;
	background-color: #d3d3d3;
	border-collapse: separate;
	border-spacing: 1px;
}

.wkg_table2 {
	table-layout: fixed;
	width: 100%;
}

.number {
	width: 8%;
	height: 10px;
	text-align: center;
	background-color: #fffacd;
}

.wkg_title {
	width: 20%;
	height: 10px;
	text-align: center;
	background-color: #fffacd;
}

.wkg_topics {
	width: 23%;
	height: 10px;
	text-align: left;
	vertical-align: left;
	background-color: #fffacd;
}

.wkg_table2 tr td {
	width: 5%;
	background-color: #fff;
}

.wkg_table tr td {
	background-color: #fff;
}

.wkg_img,
.wkg_year {
	text-align: center;
	vertical-align: middle;
	background-color: #fff;
}

/*  著作権、E-mail */
.center {
	display: block;
	text-align: center;
}

.center_hide {
	display: none;
	text-align: center;
}

@media(max-width: 375px) {
	.center_hide {
		display: block;
	}

	.center {
		display: none;
	}
}

/*  News&Event /〜  */
.signature {
	text-align: right;
}

.news_image {
	text-align: center;
}

/*  Sponsor/〜  */
.sponsor_data {
	font-size: 1em;
	font-weight: bold;
	text-align: center;
}

.video {
	position: relative;
	padding-bottom: 10%;
	/* ここで幅、高さを調整 */
	padding-top: 0px;
	height: auto;
	margin-bottom: 30px;
	overflow: hidden;
}

.video-archive {
	position: relative;
	padding-bottom: 10%;
	/* ここで幅、高さを調整 アーカイブのスポンサーページの設定 */
	padding-top: 0px;
	height: auto;
	margin-bottom: 10px;
	overflow: hidden;
}

.video_widebito {
	position: relative;
	padding-bottom: 35%;
	/* ここで幅、高さを調整 */
	padding-top: 0px;
	height: 100%;
	margin-bottom: 60px;
	overflow: hidden;
}

.video object,
.video embed,
.video_widebito object,
.video_widebito embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.archive {
	text-align: right;
}

.day {
	display: block;
	width: auto;
	margin: 0 10px 0 0;
	padding: 0;
	float: left;
}

.archive_box {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	width: 100%;
	margin: 20px 0 40px 0;
}

.archive_box-image {
	display: block width: 20%;
	height: auto;
	margin: 0 1% 15px 0;
	background: none;
}

.archive_box-txt {
	display: block width: 79%;
	height: auto;
	margin: 0 0 15px 0;
	background: none;
}

@media(max-width: 1024px) {
	.day {
		margin: 0 0 0 0;
		float: none;
	}

	.archive_contents {
		display: block;
		width: auto;
		margin: -20px 0 0 0
	}
}
/*-- 20181012 30th Anniversary追加 ここから --*/
.anniv_textbox{
	display: inline-block;
}
.anniv_imagebox{
	float: right;
}
/*-- 20181012 30th Anniversary追加 ここまで --*/



/***  Research Top ***/
.research_top{
	display: flex;
	justify-content: space-between;
	margin-bottom:5em;
}
.research_top span{
	max-width:350px;
}


/***  Sprouting Research  ***/

.sr__memberlist {
	margin:0 auto;
}

.sr__member {
	font-size:0.8em;
	margin:0 0.7%;
	text-align: center;	
}

.sr__memberlist a{
	text-decoration: none;
	outline:none;
}

.sr__member__photo img {
	border-radius: 50%;
	margin: 0 auto;
	filter: brightness(92%);
	transform: scale(1);
}

.sr__memberlist a:hover img{
	filter: brightness(98%);
	transition: 0.3s;
}

.sr__member__number{
	font-size:24px;
	margin-bottom:17px;
	color:#505050;
}

.sr__member__number span{
	border-bottom: 4px solid #bf1c1b;
	padding:0px 5px 5px 5px;
}

	@media (max-width:480px) {
		.sr__member__number{
			font-size:18px;
			margin-bottom:15px;
			color:#505050;
		}
		.sr__member{
			width:25%;
		}
	}

.sr__leadtxt{
	background-color:#f4f4f4;
	padding:20px;
}
.sr__profile__photo {
	text-align: center;
}

.sr__profile__photo img {
	width:41.66%;
	border-radius: 50%;
}

.sr__profile__name {
	text-align: center;
}

.sr_memebr_body {
	display: none;
}

#sr_member09 {
	display: block;
}
.sr__new{
	background-color:#bf1c1b;
	color:#fff;
	font-weight: bold;
	display: block;
	width:45px;
	margin:5px auto;
	padding:2px;

}

/***  Recent Themes ***/

.rt__title{
	font-size: 18px;
	color: #505050;
	text-align: center;
	margin-bottom: 20px;
	font-weight:bold;
}
.rt__subtitle{
	font-size: 18px;
	color: #505050;
	text-align: center;
	margin-bottom: 20px;
	font-weight:bold;
}
.rt_nav{
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
	.rt_nav:after{
		content:"｜";
	}
.rt_nav li span{
	padding:0 1em;
}
	.rt_nav li:before{
		content:"｜";
	}



