@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');
html{
	width: 100%;
	font-size: 100%;
	
}

body{
	margin: 0;
	padding: 0;
	width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

img {  
  max-width: 100%;
  height: auto;
  border: 0;

}

#wrapper {
	width:100%;
	margin: 0 auto;
	padding: 0;
	min-height: 100%;
	overflow: hidden;
}

#contents{
	width: 100%;
	margin: 0 auto;
	position: relative;
}

#contents_block{
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 100px;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
}

#header {
    height: 60px;
    position: fixed;
    width: 100%;
    padding: 8px 0 0 0;
	margin-top: 0;
  }

#hd_block{
	width: 100%;
	max-height: 400px;
	margin-top: 0;
	position: relative;
}

#hd_title{
	max-width: 1000px;
	height: auto;
	margin: 0 auto 0;
	position: absolute;
	left:0;
	right: 0;
	top:50%;
	z-index: 9;
}

#hd_title h1{
	font-weight: normal;
	text-align:center;
	font-size: 36px;
    font-size: clamp(28px, 2vw, 36px);
	margin: 0 auto;
	color:rgba(0,0,0,1.00);
	/*font-family: "M PLUS Rounded 1c", sans-serif;*/
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-weight: 400;
	line-height: 1.5em;
}

.br-pc {
	display: block;
}

.br-sp {
	display: none;
}

.hd_block_img{
	width: 100%;
	height: 400px;
	background-size:contain;
	background-position : 50% 50%;
	
}

.hd_block_img img{
	width: 100%;
	height: 400px;
	object-fit: cover;
}

.top_bg_ph{
	position: absolute !important;
	max-width: 350px;
	height: auto;
	right: 25px;
	margin-top: -105px;
	position: relative;
    background: none;
	border-bottom: none;
}


/*コンテンツ用*/

#hd_content_block{
	width: 100%;
	max-height: 240px;
	margin-top: 0;
	position: relative;
}

#hd_content_block_title{
	max-width: 1000px;
	height: auto;
	margin: 0 auto 0;
	position: absolute;
	left:0;
	right: 0;
	top:50%;
	z-index: 9;
}

#hd_content_block h1{
	font-weight: normal;
	text-align:center;
	font-size: 26px;
    font-size: clamp(20px, 2vw, 26px);
	margin: 0 auto;
	color:rgba(0,0,0,1.00);
	/*font-family: "M PLUS Rounded 1c", sans-serif;*/
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-weight: 500;
	line-height: 1.5em;
}

.hd_block_content_img{
	width: 100%;
	height: 240px;
	background-size:contain;
	background-position :50% 50%;
	
}

.hd_block_content_img img{
	width: 100%;
	height: 240px;
	object-fit: cover;
	object-position:50% 50%;
}

.content_block_area{
	width: 100vw;
	min-height: 615px;
	margin: 60px calc(50% - 50vw) 0;
	background:url("../../content/images/contentbg.png") ;
	background-repeat: no-repeat;
	padding: 100px 0;
}

/*コンテンツブロックインナー*/

.content_block_inn{
	max-width: 1000px;
	height: auto;
	margin: -20px auto 0;
	padding: 0 20px;
}

/*トップページコンテンツ*/
.top_content{
	width: 100vw;
	min-height: 615px;
	margin: 100px calc(50% - 50vw);
	background:url("../../content/images/top_contentbg.png");
	background-repeat: no-repeat;
}

.top_content_inn{
	max-width: 1000px;
	height: auto;
	margin: 0 auto;
	display:flex;
	display: -webkit-flex;
    display: -ms-flex;
	display: -moz-flex;
	display: -o-flex;
	flex-wrap:wrap;
	flex-wrap:-ms-wrap;
	flex-wrap:-webkit-wrap;
	flex-wrap:-moz-wrap;
	flex-wrap:-o-wrap;
	justify-content:space-between;
	flex-direction: row;
	padding: 100px 20px 0;
}

.top_content_box{
	width: calc(50% - 10px);
	min-height: 615px;
	margin: 10px 0;
	background: #FFF;
	border: #96C244 solid 1px;
	position: relative;
	box-shadow: 1px 1px 4px gray;
}

.top_content_box_icon{
	width: 70px;
	height: 70px;
	background: #FF9233;
	position: absolute;
	font-size: 16px;
	text-align: center;
	color: #FFFFFF;
	padding: 10px;
}

.top_content_box_icon > span{
	display: block;
	font-size: 30px;
}

.top_content_box_img{
	width: 100%;
	max-height: 184px;
	text-align: center;
}

.top_content_box_img img{
	width: 100%;
	min-height: 184px;
	object-fit: cover;
}

.top_content_box_title{
	width: 100%;
	min-height: 64px;
	background-color: rgba(255,255,255,0.6);
	text-align: center;
	position: absolute;
	top: 95px;
	left: 0;
    right: 0;
}

.top_content_box_title_text{
	font-size: 19px;
    font-size: clamp(15px, 1.8vw, 19px);
	font-weight: 900;
	line-height: 1.3em;
	padding: 8px;
	position: absolute;
	top: 50%;
	left:0;
	right: 0;
	transform: translate(0, -50%);
}

.top_content_box_title_text > span{
	display: block;
}

.top_content_box P{
	padding: 40px 20px 40px;
	flex-grow: 1;
	position: relative;
	margin-bottom: 2em;
}

.box_btt{
	width: 280px;
	height: 35px;
	position: absolute;
    bottom: 1em;
	left: auto;
    right: 20px;
    margin: 0 auto
}

a.btn_box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 280px;
  height: 35px;
  position: relative;
  background: #FF9233;
  border-radius: 15px;
  box-sizing: border-box;
  padding: 0;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn_box:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
}
a.btn_box:hover {
  background: #F9C496;
  color: #fff;
}


/*ニュース設定*/

.news {
	max-width:1000px;
	height:auto;
	position: relative;
	padding:0;
	margin:0;
	flex-wrap: nowrap;
	margin-bottom: 100px;
}

.news dl {
	width:100%;
	padding:0 0 0 0;
	color: rgba(0,0,0,1.00);
	margin-top: 40px;
}

.news dl dt {
  clear:left;
  float: left;
  width: 14em;
  padding: 20px 0px 12px 1em;
}

.news dl dd {
  padding: 14px 0 12px 14em;
  line-height: 1.7em;
  border-bottom: #000000 dotted 1px;
  margin-left: 10px;
  margin-right: 10px;
}

.news a {
	color: #000;
	text-decoration:none;	
}

.news a:hover {
	color:#2AAB77;
	transition: .4s;
}

/*枠付きリストボックス*/

.waku{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px auto;
	background: #FFFFFF;
	padding: 30px 10px;
}


.waku_title{
	width: 180px;
	height: 60px;
	background: #79C26D;
	margin: -30px 0 0 -10px;
	padding: 18px;
	text-align: center;
	color: #FFFFFF;
	font-size: 24px;
}

/*枠付きリストボックス研究番号付き*/

.waku_list{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px auto;
	background: #FFFFFF;
	padding: 30px 10px;
}


.waku_list_title{
	width: 180px;
	height: 60px;
	background: #79C26D;
	margin: -30px 0 0 -10px;
	padding: 18px;
	text-align: center;
	color: #FFFFFF;
	font-size: 24px;
}

.waku_list ol{
	list-style: none !important;
	position:relative !important;
	counter-increment: cnt !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 auto !important;
	padding: 30px 1em 0 4em !important;
}

.waku_list li{
	padding: 0.5em .5em !important;
	line-height: 1.2em !important;
	counter-increment: number !important;
	list-style-position:inside;
}

.waku_list ol li:before{
	position: absolute !important;
	content: "研究"counter(number)"." !important;
	left:10px;
	list-style: none !important;
}


/*リンクバナー*/

.bnn_block{
	max-width: 300px;
	height: auto;
	padding: 0;
	margin: 10px 0;
}

.bnn_block ul{
	width: 100%;
	height: auto;
	padding: 0;
	margin: 0;
	list-style: none;
}

.bnn_block li{
	width: 300px;
	height: auto;
	padding: 0;
	margin: 0;
}

/*枠付きボックス*/

.content_box_area{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px auto;
	background: #FFFFFF;
	padding: 30px 10px;
}

/*リンク*/
#link_block{
	width: 100%;
	height: auto;
	text-align: center;
	margin: 0 auto 80px;
	padding: 0;
}

#link_block img{
	max-width: 300px;
	height: auto;
}

#link_block ul{
	max-width: 300px;
	list-style: none;
	margin: 0 auto;
	text-align: center;
	padding-left: 0;
}

#link_block li {
	padding:0 0 5px 0;
	text-align: center;
	list-style: none;
}

#link_block li:hover {
	opacity: .7;
	transition: .4s;
}


/*フッター*/
#footer_block{
	width: 100%;
	height: auto;
	background: #96C244;
	clear: both;
}

#footer_block_inn{
	max-width: 1000px;
	height: 230px;
	margin: 0 auto;
	position: relative;
}

.add{
	padding: 5px 5px;
	font-weight: normal;
	font-size: 20px;
	line-height: 1.8em;
	padding-top: 50px;
	color: #FFF;
	text-align: center;
}

.add > span{
	display: block;
}

.copyright{
	text-align: center;
	color: #FFF;
	font-size: 16px;
	padding: 0 0 20px;
}

.ft_logo{
	width: 130px;
	height: 55px;
	position: absolute;
	top:50%;
	left:10px;
}

/*ページトップ*/
#fixedTop {
    right: 10px;
    bottom: 10px;
    width: 50px;
    height: 50px;
    line-height: 48px;
    color:#2A8F26;
    font-size: 20px;
    text-align: center;
    display: none;
	border: #2A8F26 solid 2px;
	background-color: rgba(255,255,255,1.00);
    position: fixed;
    z-index: 9999;
    border-radius: 50%;
    -webkit-transform: translateZ(0);
}
#fixedTop:hover {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.7;
}

/*ボタン設定*/

.more_link_bt {
	width: auto;
	height: 40px;
	display: block;
	margin-top: 1.5em;
}
.more_link_bt a{
	width: 250px;
	height: 40px;
	text-decoration: none;
	text-align: center;
	padding: 10px 0 0 0;
	color:#000000;
	border-radius: 4px;
	background-color:rgba(255,255,255,1.00);
	border: #53A3C9 solid 1px;
	font-size: 1.1rem;
	display: block;
	margin: 0 auto;
}

.more_link_bt a:hover{
	 -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
	background-color:#15AFE3;
	text-decoration: none;
	color:rgba(255,255,255,1.00);
}

/*リスト基本設定*/

.content_block_inn ol,ul{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 30px 1em 0 2em;
}

.content_block_inn li{
	padding: 0.5em .5em;
	line-height: 1.2em;
}

/*テーブル設定*/
table{
width: 100%;
border-collapse: collapse;
border: solid #CCC;
border-width: 1px;
table-layout: fixed;
}

table tr th{
padding: 20px 10px;
text-align: center;
vertical-align: middle;
border: solid #CCC;
border-width: 1px;
}

table tr td{
padding: 20px 10px;
text-align: left;
vertical-align: middle;
border: solid #CCC;
border-width: 1px;
}

table tr th{
background: #eee;
}

.clear{
	clear:both;
}

@media screen and (max-width : 720px ){
	
#contents_block{
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 40px;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
}

	
#header {
    height: 60px;
    position: fixed;
    width: 100%;
    padding: 8px 0 0 0;
	margin-top: 0;
  }

#hd_block{
	width: 100%;
	max-height: 700px;
	margin-top: 0;
	position: relative;
}

#hd_title{
	max-width: 1000px;
	height: auto;
	margin: -30px auto 0;
	position: absolute;
	left:0;
	right: 0;
	top:50%;
	z-index: 9;
}

#hd_title h1{
	font-weight: normal;
	text-align:center;
	font-size: 23px;
	margin: 0 auto;
	color:rgba(0,0,0,1.00);
	/*font-family: "M PLUS Rounded 1c", sans-serif;*/
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-weight: 400;
	line-height: 1.5em;
}
	
.br-sp {
	display:block;
}

.br-pc {
	display: none;
}

	
.hd_block_img{
	width: 100%;
	height: 450px;
	background-size:contain;
	background-position : 50% 50%;
	
}

.hd_block_img img{
	width: 100%;
	height: 450px;
	object-fit: cover;
}

.top_bg_ph{
	position: absolute;
	max-width: 350px;
	height: auto;
	right: 0;
	left: 0;
	margin: 0 auto;
	margin-top: 0px;
	border-bottom: none;
}

	/*コンテンツ用*/

#hd_content_block{
	width: 100%;
	max-height: 240px;
	margin-top: 0;
	position: relative;
}

#hd_content_block_title{
	max-width: 1000px;
	height: auto;
	margin: -20px auto 0;
	position: absolute;
	left:0;
	right: 0;
	top:50%;
	z-index: 9;
}

#hd_content_block h1{
	font-weight: normal;
	text-align:center;
	font-size: 18px;
    font-size: clamp(16px, 2vw, 18px);
	margin: 0 auto;
	color:rgba(0,0,0,1.00);
	/*font-family: "M PLUS Rounded 1c", sans-serif;*/
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-weight: 300;
	line-height: 1.7em;
}

.hd_block_content_img{
	width: 100%;
	height: 240px;
	background-size:contain;
	background-position :50% 50%;
	
}

.hd_block_content_img img{
	width: 100%;
	height: 240px;
	object-fit: cover;
	object-position:50% 50%;
}

.content_block_area{
	width: 100vw;
	min-height: 615px;
	margin: 60px calc(50% - 50vw) 0;
	background:url("../../content/images/contentbg.png") ;
	background-repeat: no-repeat;
	padding: 40px 0;
}
	
/*コンテンツブロックインナー*/

.content_block_inn{
	max-width: 1000px;
	height: auto;
	margin: -20px auto 0;
	padding: 0 20px;
}

	
/*トップページコンテンツ*/
.top_content{
	width: 100vw;
	min-height: 615px;
	margin: 40px calc(50% - 50vw);
	background:url("../../content/images/top_contentbg.png");
	background-repeat: no-repeat;
}

.top_content_inn{
	max-width: 1000px;
	height: auto;
	margin: 0 auto;
	display:flex;
	display: -webkit-flex;
    display: -ms-flex;
	display: -moz-flex;
	display: -o-flex;
	flex-wrap:wrap;
	flex-wrap:-ms-wrap;
	flex-wrap:-webkit-wrap;
	flex-wrap:-moz-wrap;
	flex-wrap:-o-wrap;
	justify-content:space-between;
	flex-direction: row;
	padding: 40px 20px;
}

.top_content_box{
	width: calc(100% - 10px);
	min-height: 500px;
	margin: 10px auto;
	background: #FFF;
	border: #96C244 solid 1px;
	position: relative;
	box-shadow: 1px 1px 4px gray;
}

.top_content_box_icon{
	width: 70px;
	height: 70px;
	background: #FF9233;
	position: absolute;
	font-size: 16px;
	text-align: center;
	color: #FFFFFF;
	padding: 10px;
}

.top_content_box_icon > span{
	display: block;
	font-size: 30px;
}

.top_content_box_img{
	width: 100%;
	max-height: 184px;
	text-align: center;
}

.top_content_box_img img{
	width: 100%;
	max-height: 184px;
	object-fit: cover;
}

.top_content_box_title{
	width: 100%;
	min-height: 64px;
	background-color: rgba(255,255,255,0.6);
	text-align: center;
	position: absolute;
	top: 95px;
	left: 0;
    right: 0;
}

.top_content_box_title_text{
	font-size: 15px;
    font-size: clamp(14px, 1vw, 16px);
	font-weight: 900;
	line-height: 1.3em;
	padding: 8px;
	position: absolute;
	top: 50%;
	left:0;
	right: 0;
	transform: translate(0, -50%);
}

.top_content_box_title_text > span{
	display: block;
}

.top_content_box P{
	padding: 40px 20px 90px;
	flex-grow: 1;
	position: relative;
	margin-bottom: 1em;
	font-size: 15px;
    font-size: clamp(14px, 2vw, 16px);
}

.box_btt{
	width: 280px;
	height: 35px;
	position: absolute;
    bottom: 1em;
	left: auto;
    right: 20px;
    margin: 0 auto
}

a.btn_box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 280px;
  height: 35px;
  position: relative;
  background: #FF9233;
  border-radius: 15px;
  box-sizing: border-box;
  padding: 0;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn_box:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
}
a.btn_box:hover {
  background: #F9C496;
  color: #fff;
}

	

/*ニュース設定*/

.news {
	max-width:1000px;
	height:auto;
	position: relative;
	padding:0;
	margin:0;
	flex-wrap: nowrap;
	margin-bottom: 100px;
}

.news dl {
	width:100%;
	padding:0 0 0 0;
	color: rgba(0,0,0,1.00);
	margin-top: 40px;
}

.news dl dt {
  clear:left;
  float: none;
  width: 100%;
  padding: 20px 0px 6px 0;
	font-weight: 700;
}

.news dl dd {
  padding: 0 0 12px 0;
  line-height: 1.7em;
  border-bottom: #000000 dotted 1px;
  margin-left: 0;
  margin-right: 0;
}

.news a {
	color: #000;
	text-decoration:none;	
}

.news a:hover {
	color:#2AAB77;
	transition: .4s;
}
	
/*枠付きリストボックス*/

.waku{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px auto;
	background: #FFFFFF;
	padding: 30px 10px;
}


.waku_title{
	width: 180px;
	height: 60px;
	background: #79C26D;
	margin: -30px 0 0 -10px;
	padding: 18px;
	text-align: center;
	color: #FFFFFF;
	font-size: 24px;	
}
	
/*枠付きリストボックス研究番号付き*/
	
.waku_list{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px auto;
	background: #FFFFFF;
	padding: 30px 10px;
}


.waku_list_title{
	width: 180px;
	height: 60px;
	background: #79C26D;
	margin: -30px 0 0 -10px;
	padding: 18px;
	text-align: center;
	color: #FFFFFF;
	font-size: 24px;	
}



.waku_list ol{
	list-style: none !important;
	position:relative !important;
	counter-increment: cnt !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 auto !important;
	padding: 30px 0em 0 3em !important;
}

.waku_list li{
	padding: 0.5em 0.5em !important;
	line-height: 1.2em !important;
	counter-increment: number !important;
	list-style-position:inside;
}

.waku_list ol li:before{
	position: absolute !important;
	content: "研究"counter(number)"." !important;
	left:0;
	list-style: none !important;
}
	
/*枠付きボックス*/

.content_box_area{
	max-width: 1000px;
	height: auto;
	border: #79C26D solid 2px;
	margin: 30px 0;
	background: #FFFFFF;
	padding: 30px 10px;
}
	
/*リスト基本設定*/

.content_block_inn ol,ul{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 30px 0em 30px 1.5em;
}

.content_block_inn li{
	padding: 0.5em .5em;
	line-height: 1.5em;
}
	
/*フッター*/
#footer_block{
	width: 100%;
	height: auto;
	background: #96C244;
	clear: both;
}

#footer_block_inn{
	max-width: 1000px;
	height: 230px;
	margin: 0 auto;
	position: relative;
}

.add{
	padding: 5px 5px;
	font-weight: normal;
	font-size: 16px;
	line-height: 1.8em;
	padding-top: 120px;
	color: #FFF;
	text-align: center;
}

.add > span{
	display: block;
}

.copyright{
	text-align: center;
	color: #FFF;
	font-size: 11px;
	padding: 0 0 20px;
}

	
.ft_logo{
	width: 130px;
	height: 55px;
	position: absolute;
	top:30px;
	left:0;
	right: 0;
	margin: 0 auto;
 }

}