@charset "UTF-8";

/****************************

	main layout

*****************************/
body {
	font-size: 90%;
	width: 900px;
    display: flex;
    min-height: 100vh;
	margin: 0 auto;
}

address {
	font-style: normal;
}

/*
	[ナビエリア設定]
___________________	*/
#sideNavi {
    width: 220px;
    text-align: left;
    background-color: #192f60;/* プルシャンブルー */
    color: #fff;
	list-style: none;
}

/*
	[コンテンツエリア設定]
___________________	*/
#container {
    width: 650px;
    background-color: #fff;
    text-align: left;
    margin-left: 30px;
	margin: 0 auto;
}

/*
	[bxslider設定]
___________________	*/
ul.bxslider li{
	width: 620px;
	height: 445px;
	position: relative;
}

ul.bxslider li img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}

/*
	[装飾]
___________________	*/
.deco_f_red {
	color: #f00;/* フォントの色:red */
}

.deco_f_blue {
	color: #00f;/* フォントの色:blue */
}

.deco_f_large {
	font-size: large;/* フォントのサイズ:large(1.2倍) */
}

.deco_f_lt01 {
	letter-spacing: -0.1em;/* 字間 */
}

.indent {
	padding-left:1.0em;/* 左側に1文字分の余白 */
}

.indent_7em {
	padding-left:7.0em;/* 左側に6文字分の余白 */
}

.adjustment_container {
	margin-bottom: 8em; /* 8行分 */
}

.adjustment_container2 {
	margin-bottom: 32em; /* 32行分 */
}

.txtal_right {
	text-align: right;
}

.txtal_left {
	text-align: left;
}

.txtal_center {
	text-align: center;
}

.logo1 {
	border: 0;
	margin: 0 0 0 20px;
}

.reImage {
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
}

.reImage2 {
	height: 20px;
	vertical-align: bottom;
}

h2 {
	margin-top: 20px;
	padding: 0.25em 0.5em;
	color: #494949;
	border-left: solid 5px #192f60; /* 左線 */
	border-bottom: 5px solid; /* 下線 */
    border-image: linear-gradient(to right, #192f60 0%, #1872cc 100%); /* 下線 */
    border-image-slice: 1; /* 下線 */
}

/*
	[コンテンツエリア2分割設定]
___________________	*/
#box_in {
	width: 600px;
	margin: 0 auto;
}

#box_in .box_left {
	width: 320px;
	float: left;
	margin: 0 auto;
}

#box_in .box_right {
	width: 280px;
	float: right;
	margin: 0 auto;
	text-align: center;
}

.cf:before, .cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}

/*
	[写真用サムネイル]
___________________	*/
.thumbnail ul{
	overflow: hidden;
	letter-spacing: -.5em;
	margin-bottom: 50px;
}

.thumbnail li{
	display: inline-block;
	width: 250px;
	vertical-align: top;
	letter-spacing: 0;
	text-align: center;
}

/*
	[table]
___________________	*/
#tbl {
	width: 640px;
	margin-left: 10px;
}

#tbl table{
	table-layout: fixed;
	border-collapse:separate;
	border-spacing: 0;
}

#tbl table th:last-child{
	border-radius: 0 5px 0 0;
	border-right: 1px solid #3c6690;
}

#tbl table th{
	text-align: center;
	color:white;
	background: linear-gradient(#192f60,#1872cc);
	border-left: 1px solid #3c6690;
	border-top: 1px solid #3c6690;
	border-bottom: 1px solid #3c6690;
	box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
	padding: 0.5em;
}

#tbl table td{
	border-left: 1px solid #a8b7c5;
	border-bottom: 1px solid #a8b7c5;
	border-top:none;
	box-shadow: 0px -3px 5px 1px #eee inset;
	padding: 0.5em;
}

#tbl table td:last-child{
	border-right: 1px solid #a8b7c5;
}

#tbl table tr:last-child td:first-child {
	border-radius: 0 0 0 5px;
}

#tbl table tr:last-child td:last-child {
	border-radius: 0 0 5px 0;
}

/****************************

	Navigation

*****************************/
/*
	[panel button]
___________________	*/
.naviMenu {
	width: 200px;
	margin: 20px 0 0 10px;
 	padding: 0;
}

.naviMenu li {
	position: relative;
	width: 200px;
	height: 50px;
	z-index: 1000;
	list-style: none;
}

.naviMenu > li {
	border-bottom: none;
}

.naviMenu li:last-child {
	border-bottom: none;
}

.naviMenu li:hover > ul > li {
	border-bottom: none;
}

.naviMenu li > ul > li:last-child {
	border-bottom: none;
}

.naviMenu li a {
	display: inline-block;
	position: relative;
	text-decoration: none;
	color: #fff;
	width: 200px;
	height: 50px;
	line-height: 60px;
	border-radius: 5px;
	overflow: hidden;
	background: linear-gradient(#192f60, #1872cc);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
	padding-left: 5px;
}

.naviMenu > li:hover > a {/*layer-1*/
	color: orange;
	background: linear-gradient(#192f60, #1872cc);
}

.naviMenu > li li:hover > a {/*layer-2*/
	color: orange;
	background: linear-gradient(#192f60, #1872cc);
}

.naviMenu li:hover > ul > li {
	font-size: small;
	overflow: visible;
	top: -55px;
	left: 165px;
	height: 50px;
}

.naviMenu li ul li {
	overflow: hidden;
	height: 0;
	left: 165px;
	list-style: none;
}

.naviMenu li ul li a {
	width: 200px;
	background: linear-gradient(#192f60, #1872cc);
}

.naviMenu li ul:before {
	position: absolute;
	content: "";
	top: 14px;
	left: 165px;
	border: 5px solid transparent;
}

.naviMenu li:hover ul li ul li:hover > a {/*layer-3*/
	color: orange;
/*	left: 100px;*/
	background: linear-gradient(#192f60, #1872cc);
}

.naviMenu li ul li ul li a {
	width: 200px;
/*	left: 100px;*/
	background: linear-gradient(#192f60, #1872cc);
}

/*
	[logo]
___________________	*/
.naviLogo1 {
	padding: 30px 5px;
}

.naviLogo2 {
	font-size: 0.7rem;
	padding: 30px 0px 10px 10px;
}

/*
	[image]
___________________	*/
.naviImage1 {
	display: block;
	width: 200px;
	padding: 30px 5px;
	margin: 0 auto;
}

/*
	[update]
___________________	*/
.naviUpd {
	font-size: 8pt;
	color: red;
}


/****************************

	index Contents

*****************************/
/*
	[image]
___________________	*/
.contentImage1{
	padding-top: 30px;
}

.contentImage2{
	padding: 10px 10px 0px;
}

/*
	[information]
___________________	*/
#infoicon {
	clear: both;
	width: 650px;
	padding: 10px 0 0 10px;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 5px solid transparent;
}

#infobox {
	clear: both;
	width: 620px;
	height: 20em;
	padding: 10px 0 0 10px;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.0em;
	text-align: left;
	overflow: auto;
	border: gray 1px dashed;
	background-color: #fff;
}

.info-1 {
padding-left:1.0em;
}

.info-1b {
padding-left:1.0em;
}

.info-2 {
padding-left:2.0em;
}

.info-2b {
padding-left:2.0em;
}

.info-3 {
padding-left:3.0em;
}

.info-3b {
padding-left:3.0em;
}

.info-1:before, .info-2:before, .info-3:before {
content: '∟';
}

/*
	[about]
___________________	*/
#about {
	padding: 2px 10px;
	text-align: left;
	background: linear-gradient(#192f60, #1872cc);
	color: white;
}

/****************************

	規約

*****************************/
#kiyaku_header {
	margin: 30px 0;
	line-height: 0.5;
}

.ki_hl {
	margin: 0 10px;
}

.ki_cont1 {
	margin-left: 25px;
}

.ki_cont2 {
	margin-left: 60px;
}

#kiyaku_yakuin {
	border-collapse: separate;
	border-spacing: 15px 0;
	margin-left: 60px;
}

#kiyaku_yakuin td {
	border: none;
}

#kiyaku_yakuin .ki_cont3_1 {
	width: 90px;
}

#kiyaku_yakuin .ki_cont3_2 {
	width: 45px;
}

/****************************

	活動内容

*****************************/
h3.actv {
	position: relative;
	display: inline-block;
	padding: 0 55px;
}

h3.actv:before, h3.actv:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 1px;
	background-color: black;
}

h3.actv:before {
	left:0;
}
h3.actv:after {
	right: 0;
}

#secretariat {
	margin: 3em 0 0 2em;
}

#secretariat .indent {
	margin-left: 0.5em; 
}

#secretariat h3 {
	position: relative;/*相対位置*/
	padding-left: 1.2em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #ff5a5f;
}

#secretariat h3:before {
	font-family: "Font Awesome 5 Free";
	content: "\f075";/*アイコンのユニコード*/
	font-weight: 900;
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0;/*アイコンの位置*/
	top: 0;/*アイコンの位置*/
	color: #ff5a5f; /*アイコン色*/
}

/****************************

	お知らせ

*****************************/
.event_noti{
	width: 600px;
	margin-left: 30px;
	margin-bottom: 20px;
}

.event_noti dt, dd{
	padding: 0 0 0.5em;
}

.event_noti dt{
	float: left;
}

.event_noti dd {
	margin-left: 75px;
}

h3.comment{
	position: relative;/*相対位置*/
	padding-left: 1.2em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
}

h3.comment:before{
	font-family: "Font Awesome 5 Free";
	content: "\f075";/*アイコンのユニコード*/
	font-weight: 900;
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0;/*アイコンの位置*/
	top: 0;/*アイコンの位置*/
	color: #ff5a5f; /*アイコン色*/
}

h4.comment{
	position: relative;/*相対位置*/
	padding-left: 1.2em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
}

h4.noti:comment{
	font-family: "Font Awesome 5 Free";
	content: "\f111";/*アイコンのユニコード*/
	font-weight: 900;
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0;/*アイコンの位置*/
	top: 0;/*アイコンの位置*/
	color: #ff5a5f; /*アイコン色*/
}

h3.circle {
  position: relative;/*相対位置*/
  padding-left: 1.2em;/*アイコン分のスペース*/
  line-height: 1.4;/*行高*/
}

h3.circle:before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0;/*アイコンの位置*/
  color: #ff5a5f; /*アイコン色*/
}

/****************************

	会報

*****************************/
table.kaihou td {
	border: none;
	padding: 5px;
	font-size: 1.0em;
	vertical-align: top;
	text-align: left;
}

/****************************

	トンネル情報

*****************************/


/****************************

	論文

*****************************/
#paper_body{ 
/*	font-size:14pt; */
	width: 640px;
	margin: 0 0 0 10px;
	line-height:25px;
}

#paper_quote {
	border-style:solid;
	border-width:1px;
	padding:10px 10px 10px 10px;
	width:600px;
}

table.paper {
	border: 1px solid gray;
	width: 640px;
	margin: 0 0 0 10px;
	table-layout: fixed;
}

table.paper td, table.paper th{
	border: 1px solid gray;
}

table.tcardtable td {
	border: none;
	padding: 5px;
}

/* 論文検索画面のボタン@検索 */
.square_btn1{
    display: inline-block;
    padding: 0.8em 1.6em;
    text-decoration: none;
    background: #ff7f00;/*ボタン色*/
    color: #000;
    border-bottom: solid 4px #627295;
    border-radius: 3px;
}

/* 論文検索画面のボタン(押された時) */
.square_btn1:active {
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px); /*下に動く*/
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2); /*影を小さく*/
    border-bottom: none;
}

/* 論文検索画面のボタン@リセット */
.square_btn2{
    display: inline-block;
    padding: 0.8em 1.6em;
    text-decoration: none;
    background: #ffff7a;/*ボタン色*/
    color: #000;
    border-bottom: solid 4px #627295;
    border-radius: 3px;
}

/* 論文検索画面のボタン(押された時) */
.square_btn2:active {
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px); /*下に動く*/
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2); /*影を小さく*/
    border-bottom: none;
}

/****************************

	出版物

*****************************/
#publish {
	width: 640px;
	margin:10px auto;
	display: inline-block;
}

#publish h3{
	position: relative;
	border-top: solid 2px #192f60;
	border-bottom: solid 2px #192f60;
	background: #f0f8ff;
	line-height: 1.4;
	padding: 0.4em 0.5em;
	margin: 2em 0 0.5em;
}

#publish h3:after {
	position: absolute;
	font-family: "Font Awesome 5 Free",'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ','Meiryo',sans-serif;
	font-weight: 900;
	content: '\f02d\ 書名';
	background: linear-gradient(#192f60, #1872cc);
	color: #fff;
	left: 0px;
	bottom: 100%;
	border-radius: 5px 5px 0 0;
	padding: 5px 7px 3px;
	font-size: 0.9em;
	line-height: 1;
	letter-spacing: 0.05em;
}

#publish .box_left{
	width: 110px;
	float: left;
	margin: 0 auto;
}

#publish .box_right{
	width: 520px;
	float: right;
	margin: 0 auto;
	text-align: left;
}

#publish table{
	width: 520px;
	height: 200px;
	float: right;
	border-bottom: 1px solid #708090;
	border-collapse: collapse;
}

#publish table th{
	width: 22%;
	border-top: 1px solid #708090;
	padding: 0 5px;
	background: #f5f5f5;
}

#publish table td{
	border-top: 1px solid #708090;
	border-left: none;
	border-right: none;
	border-bottom: none;
}


/****************************

	Go To PageTop

*****************************/
#page_Top {
	width: 100px;
	height: 60px;
	position: fixed;
/*	right: 0;*/
	left: calc(50% + 900px/2);
	bottom: 0;
	background: #3f98ef;
	opacity: 0.6;
}

#page_Top a{
	position: relative;
	display: block;
	width: 100px;
	height: 60px;
	text-decoration: none;
}

#page_Top a::before {
	font-family: "Font Awesome 5 Free";
	content: "\f102";/*アイコンのユニコード*/
	font-weight: 900;
	position: absolute;/*絶対位置*/
	color: #fff; /*フォント色*/
	font-size: 25px;/*サイズ*/
	width: 25px;
	height: 25px;
	top: -25px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}

#page_Top a::after {
	content: "Page Top";
	font-size: 13px;
	color: #fff;
	position: absolute;
	top: 30px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}
/****************************

	イベントのお知らせカスタム

*****************************/

.event_noti_sub_title {
	margin-top: -15px;
}

.event_noti .indent2 {
	margin-left: 8em;
}

.event_noti .indent3 {
    margin-left: 6em;
    padding-left: 1em;
	text-indent: -1em;
}

.event_noti2 p{
    margin-left: 100px;
    margin-top: 0px;
    margin-bottom: 0px;
	}

.event_noti2 .txtal_right{
    margin-bottom: 10px;
	}
