/*
Theme Name: toshi v1.0
Version: 1.0
*/

@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600&display=swap&subset=japanese');
/*
font-family: 'Noto Serif JP', serif;
*/
/*=================================
	common
================================ */

html {
	font-size: 62.5%;
	height: 100%;
}
body {
word-wrap: break-word;
overflow-wrap: break-word;
}

#wrapper {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.6rem;
  color: #333;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-weight: 500;
}
.bold{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.inner{
max-width:1200px;
margin:0 auto;
}

a:link, a:visited, a:hover, a:active {
color:#005334;
}
/*--------------------  START Media Queries  --------------------*/
@media (max-width: 1200px) {
.inner{
max-width:100%;
padding:0 3%;
}
}
/*=================================
	header
================================ */

#header {
background:#8DC131;
}
.hd_wrapper{
display: flex;
align-items: center;
}
.hd_ttl {
width: 28%;
padding: 79px 3%;
background:#FFF;
  align-items: center;
}
.hd_nav {
width: calc(100% - 28%);
}


#header .logo{
max-width:326px;
}
#header .logo a{
display: block;
}
.hd_ttl .hlogo {
}
#spbtn {
display: none;
}

/*--------------------  START Media Queries  --------------------*/

@media (max-width: 1200px) {
.hd_wrapper{
flex-direction: column;
}

.hd_ttl {
width:100%;
display: flex;
justify-content: space-between;
align-items: flex-start;
padding: 0 0 0 3%;
}

#header .logo{
width:250px;
}

.hd_ttl .hlogo {
padding-top:10px;
}

/*---------- toggle ----------*/
	#spbtn {
		display: block;
		position: relative;
		width: 64px;
		height: 64px;
		margin: 0;
		z-index: 3;
	background:#8DC131;
	}
	#spbtn span {
			position: absolute;
	display: block;
		background: #005435;
		width: 24px;
		height: 2px;
		left: 20px;
		transition: all 0.4s;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
	}
	#spbtn span:first-child {
		top: 23px;
	}
	#spbtn span:nth-child(2) {
		margin-top: -1px;
		top: 50%;
	}
	#spbtn span:last-child {
		bottom: 23px;
	}
	#spbtn.gnavon span:first-child {
		-webkit-transform: translateY(8px) rotate(45deg);
		-moz-transform: translateY(8px) rotate(45deg);
		-ms-transform: translateY(8px) rotate(45deg);
		transform: translateY(8px) rotate(45deg);
	}
	#spbtn.gnavon span:nth-child(2) {
		opacity: 0;
	}
	#spbtn.gnavon span:last-child {
		-webkit-transform: translateY(-8px) rotate(-45deg);
		-moz-transform: translateY(-8px) rotate(-45deg);
		-ms-transform: translateY(-8px) rotate(-45deg);
		transform: translateY(-8px) rotate(-45deg);
	}
	

	
}

@media (max-width: 480px) {
#header .logo{
width:200px;
}
.hd_ttl .hlogo {
padding-top:10px;
}

}
/*=================================
	navigation
================================ */

.gnavbox {
  width: 100%;
}

.recruit_nav .gnavbox{
  padding-top:0;
}



.hnav{
  position:absolute;
  top:50px;
  right:0;
  display:flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
}
.hnav li a{
  color:#00280B;
  padding:0px 20px;
}
#gnav {
  display: flex;
  font-size: 1.6rem;
  justify-content: space-around;
  z-index:30;
}
#gnav>li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 55px;
  width: 19%;
  width: auto;
padding:0 10px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
  letter-spacing: 0.1em;
}
#gnav>li>a{
  display: block;
  position: relative;
  width: 100%;
  align-self: center;
  text-align: center;
  color:#00280B;
}

#gnav>li:hover>a{
}

.subnav{
  position:absolute;
  width:250px;
  top:55px;
  z-index:101;
}
.subnav02{
  position:absolute;
  width:100%;
  top:0;
  right:-100%;
  z-index:102;
}
.subnav a,
.subnav02 a{
  display:block;
  font-size:12px;
  line-height:1.5;
  text-align:center;
  padding:12px 5px;
  background:rgba(255,255,255,0.9);
}
.subnav li:last-child a{
  border-bottom:none;
}
#gnav ul {
  visibility: hidden;
  opacity: 0;
  transition: .2s ease-in-out;
}
#gnav>li:hover > ul{
  visibility: visible;
  opacity: 1;
}
#gnav>li li:hover > ul{
  visibility: visible;
  opacity: 1;
}

#gnav>li li{
position:relative;
}

/*--------------------  START Media Queries  --------------------*/

@media (max-width: 1200px) {
.gnavbox {
  display: none;
  position: absolute;
  width: 100%;
  padding: 0;
  background: #f8f8f8;
  z-index: 9999;
}
.hd_nav{
  width:100%;
}
.hnav{
  position:relative;
  display:flex;
  width:100%;
  top:auto;
  right:auto;
}
.hnav li{
  text-align:center;
  width:100%;
}
.hnav li a{
  display:block;
  padding: 10px;
}

#gnav {
  flex-direction: column;
}
#gnav>li {
  display:block;
  height: auto;
  letter-spacing: 0.1em;
}
#gnav>li>a{
  padding: 10px;
}
#gnav>li+li{
  border-top:1px solid #eee;
}

#gnav>li::after {
    content: none;
}

.subnav{
  position:relative;
  width:100%;
  top:auto;
}
.subnav a{
  display:block;
  font-size:12px;
  color:#000;
  line-height:1.5;
  text-align:center;
  padding:12px 5px;
  background:#eee;
}
.subnav a:hover{
  color: #27B1F4;
  opacity:1;
}
#gnav ul {
  visibility: visible;
  opacity:1;
}
.subnav02{
display:none;
}

}/*1300px*/

/*=================================
	footer
================================ */
.pagetop {
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 100;
}
.pagetop a {
	display: block;
	width: 54px;
	height: 54px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url("images/cmn_pagetop.png") 0 0 no-repeat;
}


#footer {
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
background:#8DC131;
padding-top:80px;
}
#footer a{
font-size:2.4rem;
  color:#00280B;
}

#footer .inner{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#footer .inner>div{
width:49%;
}
#footer .inner li{
margin-bottom:16px;
}
#footer .inner .contact{
margin-bottom:40px;
}
#footer .inner .search{
margin-bottom:30px;
}
#footer .inner .search p{
font-size:2.2rem;
color:#FFF;
padding-left:30px;
margin-bottom:10px;
background: url("images/icon_search.png") 0 6px no-repeat;
}

#footer input[type=text] {
	-webkit-appearance: none;
	display: inline-block;
	margin-right: -8px;
	padding: 10px;
	width: calc(100% - 80px);
	height: 60px;
	font-size: 100%;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	border-right: none;
}
#footer input[type=submit] {
	-webkit-appearance: none;
	display: inline-block;
	padding: 0 10px;
	color: #fff;
	width: 80px;
	height: 60px;
	font-size: 100%;
	vertical-align: top;
	border: none;
	background:#CCC;
}
#footer .logo{
width:100%;
margin-top:270px;
text-align:right;
}
#footer .logo a{
display:inline-block;
padding:74px 72px;
background:#FFF;
}

/*--------------------  START Media Queries  --------------------*/

@media screen and (max-width:1300px) {
.pagetop {
  right: 3%;
}
}/*1300px*/
	
	
@media screen and (max-width:768px) {
#footer .inner>div {
    width: 100%;
}
#footer a,
#footer .inner .search p{
font-size:1.8rem;
}
#footer .logo{
margin-top:100px;
}

#footer .logo a{
display:block;
padding:10px 0;
text-align:center;
}
#footer .logo a img{
width:200px;
}
.pagetop {
	bottom: 70px;
}

}/*480px*/

/*=================================

	contents common

================================ */
.content{
padding:150px 0;
}
.topcontent{
padding:0 0 150px;
}

/*--------------------
breadclumb
--------------------*/

.bread{
padding:15px 0;
background:#EEE;
}
#breadcrumb{
max-width:1200px;
margin:0 auto;
font-size:1.4rem;
line-height:1.4;
}
#breadcrumb ul {
width: 100%;
font-size: 1.2rem;
text-align: left;
}
#breadcrumb ul li{
display:inline-block;
margin-left:10px;
vertical-align: top;
}
#breadcrumb ul li:first-child{
margin-left:0;
}
#breadcrumb ul li::before{
content:">";
margin-right:10px;
}
#breadcrumb ul li:first-child::before{
content:none;
}
.breadcrumbs a{
color:#005334;
}
/*--------------------  START Media Queries  --------------------*/
@media screen and (max-width:1200px) {
#breadcrumb{
padding:0 3%;
}
}



.cttl{
position:relative;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:3rem;
font-weight: bold;
letter-spacing: 0.1em;
line-height:1.4;
text-align:center;
padding-bottom:60px;
margin-bottom:110px;
}
.cttl::before{
position:absolute;
bottom:0;
left:50%;
margin-left:-30px;
content:"";
width:60px;
height:4px;
background:#005334;
}
.cttl::after{
position:absolute;
bottom:0;
left:50%;
margin-left:-5px;
content:"";
width:10px;
height:4px;
background:#8DC131;
}
.pttl{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:2.6rem;
font-weight: bold;
letter-spacing: 0.1em;
line-height:1.4;
padding:0 0 60px;
margin-bottom:2em;
background: url("images/shadow01.png") 0 bottom repeat-x;
}
.main-frm .pttl+h2{
margin-top:2em;
}
.contsec{
padding:0 4.5%;
margin-bottom:80px;
}

.contsec *{
}
.main-frm h2,
.contsec h2{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:2rem;
font-weight: bold;
line-height:1.4;
padding:6px 0 6px 20px;
margin:4em 0 2em;
border-left:2px #005234 solid;
}
.main-frm h2:first-child{
margin:1em 0 2em;
}

.main-frm h3,
.contsec h3{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:1.8rem;
color:#005234;
font-weight: bold;
line-height:1.4;
margin:2em 0 1.5em;
}
.main-frm h4,
.contsec h4{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
line-height:1.4;
margin:2em 0 1.5em;
}

.main-frm h2.bn-mds{
color:#FFF;
background:#005234;
border:none;
}

.main-frm p,
.contsec p{
margin:0 0 1em;
}

.post-list li {
margin-bottom:2px;
}

.post-list li a,
.post-list li span{
display:block;
padding:10px 10px 10px 35px;
background-position: 10px center;
background-image: url("images/icon_post.png");
background-repeat: no-repeat;
background-size:18px 18px;
background-color:#f8f8f8;
}

.data-list li a,
.data-list li span{
background-image: url("images/icon_data.png");
}
.staff-list li a,
.staff-list li span{
background-image: url("images/icon_staff.png");
}
.meeting-list li a,
.meeting-list li span{
background-image: url("images/icon_meeting.png");
}
.research-list li a,
.research-list li span{
background-image: url("images/icon_research.png");
}
.event-list li a,
.event-list li span{
background-image: url("images/icon_event.png");
}
.pub-list li a,
.pub-list li span{
background-image: url("images/icon_pub.png");
}
.grandprix-list li a,
.grandprix-list li span{
background-image: url("images/icon_grandprix.png");
}
.mail-list li a,
.mail-list li span{
background-image: url("images/icon_mail.png");
}
.post-list li span{
background-image: url("images/icon_nodata.png");
}
.wp-pagenavi{
    text-align:center;
    margin-top:50px;
}
.wp-pagenavi span,
.wp-pagenavi a{
    display:inline-block;
    padding:5px 13px;
    background:#f8f8f8;
    border:none;
}
.wp-pagenavi span.current,
.wp-pagenavi a:hover{
    color: #fff;
    background: #005334;
}

/*--------------------
table
--------------------*/
.main-frm table{
width: 100%;
border-top: 1px #ddd solid;
border-left: 1px #ddd solid;
}
.main-frm th,
.main-frm td{
padding:10px;
border-bottom: 1px #ddd solid;
border-right: 1px #ddd solid;
}

old.TableY{
width: 100%;
padding: 1px 1px 1px 20px;
border: 1px #acacac solid;
}

old.Ytab
{padding: 5px 5px 5px 10px;
border: 1px #acacac solid;
text-align: left;

}
old.Yhtab
{padding: 3px 3px 3px 10px;
text-align: left;
border: 1px #acacac solid;
background-color: #f9f9f9;
}
.scrtbltxt{
  font-size:13px;
  margin-top:10px;
  display:none;
}

/*--------------------  START Media Queries  --------------------*/
@media screen and (max-width:640px) {
.scrtbl{
  position:relative;
  overflow: auto;
  white-space: nowrap;
}
.scrtbl::before{
display:inline-block;
content:"※スクロールしてご覧ください→";
  font-size:13px;
  margin-bottom:10px;
}
.scrtbl table{
width:700px;
}
}
@media (max-width: 640px) {
table.rsptbl thead{
display:none;
}
table.rsptbl tbody tr,
table.rsptbl tbody th,
table.rsptbl tbody td{
display:block;
}
table.rsptbl tbody td::before{
content:attr(data-title);
display:block;
}
}

/*=================================
	contents top
================================ */
.bnr-list01,
.bnr-list02{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
align-items:center;
}
.bnr-list01 li{
width:47%;
margin-bottom:6%;
}
.bnr-list02 li{
width:30%;
margin-bottom:5%;
}
.bnr-list02::after{
content:"";
width:30%;
}

.bnr-list01 li a,
.bnr-list02 li a{
position:relative;
display:flex;
vertical-align:middle;
height:200px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:2rem;
color:#005233;
font-weight: bold;
letter-spacing: 0.1em;
line-height:1.4;
text-align:center;
padding:10px;
-moz-box-shadow: 5px 5px 12px 5px rgba(0, 0, 0, 0.05);
-webkit-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.05);
-ms-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.05);
box-shadow: 2px 2px 12px 5px rgba(0, 0, 0, 0.05);
}
.bnr-list01 li a span,
.bnr-list02 li a span{
align-self:center;
text-align:center;
width:100%;
}

.bnr-list01 li a:after,
.bnr-list02 li a:after{
position:absolute;
right:0;
bottom:0;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 20px 20px;
border-color: transparent transparent #005233 transparent;
}

/*--------------------  START Media Queries  --------------------*/
@media screen and (max-width:768px) {
.bnr-list01 li,
.bnr-list02 li{
width:100%;
}

}
/*=================================
	one column
================================ */
.column1{
background:#FFF;
}
.column1 .inner{
max-width:976px;
margin:0 auto;
}
.column1 .main-frm{
padding:0 4.5% 4.5%;
background:#FFF;
}

/*--------------------  START Media Queries  --------------------*/
@media (max-width: 976px) {
.column1 .inner{
max-width:100%;
padding:0 3%;
}
}

/*=================================
	two column
================================ */
.column2{
background:#F2F7F1;
}
.column-frm{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.column-frm .main{
width:calc(100% - 340px);
}

.column2 .main-frm{
position:relative;
padding:4.5%;
background:#FFF;
border-top:2px #005234 solid;
}
.main-frm::before{
position:absolute;
top:-2px;
left:-1px;
content:"";
width:4.5%;
height:2px;
background:#8DC131;
}
.column-frm .sub{
width:260px;
}
.sub-frm{
background:#FFF;
}
.main-frm a{
}
.sub-frm a{
color:#333;
}

.widgettitle,
.sub-mds{
position:relative;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-size:1.8rem;
font-weight: bold;
line-height:1.4;
padding:20px;
}
.widgettitle::after,
.sub-mds::after{
position:absolute;
top:50%;
left:-1px;
margin-top:-15px;
content:"";
width:2px;
height:30px;
background:#005334;
}

.sub .widget li,
.sub-link-list li{
border-top:1px solid #F2F7F1;
}
.sub-link-list02 li{
}
.sub .widget li a,
.sub-link-list>li>a{
display:block;
padding:10px 10px 10px 20px;
background: url("images/arrow01.png") 7px 17px no-repeat;
background-size:6px 9px;
}
.sub-link-list02{
padding:0 0 0 20px;
}
.sub-link-list02>li>a{
display:block;
font-size:1.4rem;
padding:8px 10px 8px 10px;
}

/*--------------------  START Media Queries  --------------------*/
@media (max-width: 1200px) {
.column-frm .main{
width:calc(100% - 280px - 2%);
}
}
@media (max-width: 976px) {
.column-frm .main,
.column-frm .sub{
width:100%;
}
.column-frm .main{
margin-bottom:80px;
}

}



/*=================================

	top

================================ */
.tmain{
position:relative;
background: url("images/tmain.jpg") 60% 0 no-repeat;
background-size:cover;
}
.tmain-inner{
position:relative;
max-width:1440px;
height:500px;
}
.tinfo{
position:absolute;
bottom:50px;
left:3%;
width:calc(50% - 40px);
padding:40px 30px;
background:rgba(255,255,255,0.8);
}
.tinfo::before{
position:absolute;
top:0;
left:0;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 26px 44px 0 0;
border-color: #005435 transparent transparent transparent;
}

.tinfottl{
font-size:22px;
color:#00280B;
font-weight:700;
letter-spacing: 0.1em;
line-height:1;
margin-bottom:20px;
}
.tinfo dl{
width: 100%;
height: 100px;
padding-right:10px;
overflow-y: scroll;
}
.tinfo dt{
width:110px;
color:#0B2F15;
float:left;
}
.tinfo dd{
padding-left:110px;
margin-bottom:0.5em;
}
.tinfo dd.important a{
color:red;
}

.tmcatch{
position:absolute;
top:-75px;
left:60%;
}

.tsearch{
display: flex;
justify-content: space-between;
flex-wrap:wrap;
align-items:center;
}
.tsearch .mds{
width:21%;
font-size:2.2rem;
color:#fff;
letter-spacing: 0.1em;
text-align:center;
padding:72px 0;
background:#005435;
}
.tsearch .mds span{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
padding-left:30px;
background: url("images/icon_search.png") 0 4px no-repeat;
}
.tsearch .btn{
width:29%;
text-align:center;
}
.tsearch .search{
width:50%;
text-align:left;
}

.tsearch  #___gcse_0{
width:90%;
margin:0 auto;
}

.gsc-input-box {
    padding-top: 6px;
    padding-bottom: 5px;
    border-top-left-radius: 0!important;
    border-bottom-left-radius: 0!important;
}
#___gcse_0 input[type=text],
#___gcse_1 input[type=text]{
	padding: 10px!important;
}
#___gcse_0 .gsc-search-button-v2,
#___gcse_1 .gsc-search-button-v2{
	padding: 22px 27px 23px!important;
}

#footer .gsc-control-cse{
background:#8DC131;
border:1px #8DC131 solid;
}


.tsearch input[type=text] {
	-webkit-appearance: none;
	display: inline-block;
	margin-right: -8px;
	padding: 10px;
	width: 70%;
	height: 60px;
	font-size: 100%;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	border-right: none;
}
.tsearch input[type=submit] {
	-webkit-appearance: none;
	display: inline-block;
	padding: 0 10px;
	color: #fff;
	width: 80px;
	height: 60px;
	font-size: 100%;
	vertical-align: top;
	border: none;
	background:#CCC;
}

.tnews{
padding:90px 0;
background: url("images/tnews_bg.png") 0 0 repeat;
}

h2.tmds01{
position:relative;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:3rem;
color:#008553;
letter-spacing: 0.1em;
text-align:center;
padding-bottom:30px;
margin-bottom:70px;
}
.tnews h2.tmds01{
color:#005335;
}

h2.tmds01::before{
position:absolute;
bottom:0;
left:50%;
margin-left:-40px;
content:"";
width:144px;
height:3px;
background:#005335;
}
h2.tmds01::after{
position:absolute;
bottom:0;
left:50%;
margin-left:84px;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 20px 20px;
border-color: transparent transparent #005335 transparent;
}


/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 50px;
  margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
  position:relative;
  width: 32.5%;
  line-height: 1.4;
  text-align: center;
  font-size:2.2rem;
  color: #FFF;
  display: block;
  float: left;
  text-align: center;
  transition: all 0.4s ease;
  padding:20px 0;
  margin:0 1.25% 0 0;
  cursor:pointer;
}
.tab_item:nth-child(2),
.tab_item:nth-child(2):hover,
.tabs input:checked + .tab_item:nth-child(2) {
  background-color: #04724D;
}
.tab_item:nth-child(4),
.tab_item:nth-child(4):hover,
.tabs input:checked + .tab_item:nth-child(4) {
  background-color:  #8DC031;
}
.tab_item:nth-child(6),
.tab_item:nth-child(6):hover,
.tabs input:checked + .tab_item:nth-child(6) {
  margin:0 0 10px 0;
  background-color: #45ACBF;
}
.tab_item::after {
position:absolute;
bottom:-24px;
left:50%;
margin-left:-26px;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 24px 26px 0 26px;
  opacity: 0;
z-index:10;
  transition: all 0.4s ease;
}
.tab_item:nth-child(2)::after {
  border-color: #04724D transparent transparent transparent;
}
.tab_item:nth-child(4)::after {
  border-color: #8DC031 transparent transparent transparent;
}
.tab_item:nth-child(6)::after {
  border-color: #45ACBF transparent transparent transparent;
}

.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px;
  clear: both;
  overflow: hidden;
  background-color: #fff;
}


/*選択されているタブのコンテンツのみを表示*/
#research:checked ~ #research_content,
#event:checked ~ #event_content,
#book:checked ~ #book_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tab_item:hover::after,
.tabs input:checked + .tab_item::after {
  opacity: 1;
}

.tab_content dl{
font-size:2.4rem;
}

.tab_content dt{
width:180px;
float:left;
}
.tab_content dd{
padding-left:180px;
margin-bottom:0.5em;
}
#event_content dd,
#book_content dd{
position:relative;
padding-left:330px;
}
#event_content dd span,
#book_content dd span{
position:absolute;
top:10px;
left:170px;
font-size:12px;
color:#FFF;
line-height:1;
padding:5px;
text-align:center;
background:#ddd;
vertical-align:middle;
}
#event_content dd span{
width:140px;
}
#book_content dd span{
width:140px;
}


#event_content dd.urban_issues_conference::before,
#event_content dd.urban_issues_conference_report::before{
}
#event_content ddurban_management_seminar::after,
#event_content ddurban_management_seminar_report::before{
}

#event_content ddurban_policy_interest_groups::before,
#event_content ddurban_policy_interest_groups_report::before{
}

#event_content ddurban_research_exchange_groups::before,
#event_content ddurban_research_exchange_groups_report::before{
}

#event_content ddurban_policy_forum::before,
#event_content ddurban_policy_forum_report::before{
}

#event_content ddmayor_forum::before,
#event_content ddmayor_forum_report::before{
}



.tab_content .btn{
text-align:right;
margin-top:30px;
}

.tabout{
height:860px;
padding-top:160px;
background: url("images/tabout.jpg") center bottom no-repeat;
background-size:cover;
}
.tabout .catch{
font-family: 'Noto Serif JP', serif;
font-size:4.2rem;
color:#008553;
font-weight:600;
background: linear-gradient(#FFF 95%, #008553 0%);
display: inline;
padding: 0 2px 4px;
}
.tabout p{
width:50%;
font-family: 'Noto Serif JP', serif;
font-size:2rem;
font-weight:500;
line-height:1.75;
margin:30px 0;
}

.tresearchevent{
padding:90px 0;
}

.tcfrm{
display:flex;
justify-content:space-between;
flex-wrap:wrap;
padding:5% 2.5%;
background:#F1F7F1;
}
.tresearch{
margin-bottom:70px;
}
.tcfrm .img{
width:32.5%;
text-align:center;
}
.tcfrm .detail{
width:65%;
}
.tcfrm .detail .mds{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:2.8rem;
color:#005335;
padding-bottom:10px;
margin-bottom:20px;
border-bottom:2px #005335 solid;
}
.tcfrm .detail p{
margin-bottom:20px;
}
a.btn-detail{
position:relative;
display:inline-block;
width:245px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:1.6rem;
color:#FFF;
line-height:1;
text-align:center;
padding:21px;
margin-right:5px;
background:#005435;
}
a.btn-detail::before{
position:absolute;
top:0;
left:0;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 15px 15px 0 0;
border-color: #F1F7F1 transparent transparent transparent;
}
a.btn-detail::after{
position:absolute;
top:28px;
right:0;
content:"";
width: 75px;
height: 2px;
background:#FFF;
}
.tcfrm .btn a{
margin:0 0 20px;
}

a.cmnbtn01{
display:inline-block;
width:245px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:1.6rem;
color:#005435;
line-height:1;
text-align:center;
padding:19px;
border:2px #005435 solid;
}

a.cmnbtn02{
display:inline-block;
width:100%;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:1.8rem;
color:#005435;
line-height:1;
text-align:center;
padding:30px;
margin-top:80px;
border:2px #005435 solid;
}

a.btn-back{
  display:block;
  max-width:200px;
  color:#FFF;
  font-weight:700;
  line-height:1.4;
  text-align:center;
  padding:20px;
  margin:80px auto 0;
  background:#005435;
}

.tevent{
padding:2% 2.5% 5%;
background:#F1F7F1;
}
h2.tmds02,
h3.tmds02{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:3rem;
color:#008553;
letter-spacing: 0.1em;
text-align:center;
margin-bottom:30px;
padding-top:50px;
background: url("images/tear.png") center 0 no-repeat;
}
h3.tmds02 span{
font-size:2.2rem;
}
.tevent .txt{
font-size:1.6rem;
text-align:center;
margin-bottom:50px;
}

.announcement-box table{
width:100%;
margin-bottom:60px;
}
.announcement-box tbody td{
padding:30px;
}
.tevent .announcement-box thead th{
color:#FFF;
padding:20px;
background:#53AC87;
}
.tevent .announcement-box thead tr th:first-child,
.tevent .announcement-box tbody tr td:first-child{
border-right:4px #F1F7F1 solid;
}

.tevent .announcement-box tbody td{
background:#FFF;
}
.tevent .btn{
text-align:center;
}
.filtered-img{
position:relative;
display:inline-block;
}
.filtered-img::after{
position:absolute;
top:0;
left:0;
bottom:0;
right:0;
content:"";
background:rgba(0,62,39,0.5);
}

.tresultbooks{
margin-bottom:100px;
}

.tresultbooks ul{
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}
.tresultbooks ul li{
width:48.33%;
}
.tresultbooks ul li .box{
position:relative;
display:block;
width:94%;
background:#FFF;
padding:30px 20px 20px 40px;
margin-top:-90px;
margin-left:-15px;
-moz-box-shadow: 5px 5px 12px 5px rgba(0, 0, 0, 0.15);
-webkit-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.15);
-ms-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.15);
box-shadow: 2px 2px 12px 5px rgba(0, 0, 0, 0.15);
}
.tresultbooks ul li .box::after{
position:absolute;
top:0;
left:0;
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 46px 46px 0 0;
border-color: #005435 transparent transparent transparent;
}

.tresultbooks ul li a h3{
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
font-size:2.2rem;
color:#005335;
margin-bottom:10px;
}
.tresultbooks ul li a .txt{
font-size:1.6rem;
}
.tresultbooks ul li a .tolist{
text-align:right;
}

.tgrandprix{
margin-bottom:100px;
}

.tgrandprix .txt{
max-width:750px;
margin:0 auto 60px;
}

.tgrandprix .announcement-box h3{
color:#FFF;
font-weight:bold;
text-align:center;
padding:20px;
background:#53AC87;
}
.tgrandprix .announcement-box .detail{
padding:30px;
margin-bottom:60px;
background:#F3F9F6;
}

.tgrandprix .announcement-box thead th{
color:#FFF;
padding:20px;
background:#53AC87;
}
.tgrandprix .announcement-box thead tr th:first-child,
.tgrandprix .announcement-box tbody tr td:first-child{
border-right:4px #FFF solid;
}

.tgrandprix .announcement-box tbody td{
background:#F3F9F6;
}
.tgrandprix .btn{
text-align:center;
}

.tmailmagazine{
margin-bottom:100px;
}
.tbtmlist{
display:flex;
justify-content:space-between;
flex-wrap:wrap;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
font-weight: bold;
}
.tbtmlist>li{
width:49%;
margin-bottom:40px;
}
.tbtmlist .menu {
margin: 0 auto;
padding: 0;
}

.tbtmlist .menu a {
  display: block;
  padding: 10px;
  text-decoration: none;
  color: #000;
  line-height: 1;
}

.tbtmlist label {
position:relative;
display: block;
font-size:2.2rem;
color :#fff;
line-height: 1;
text-align:center;
padding :40px 0;
background :#003E27;
cursor :pointer;
}
.tbtmlist label::after{
position:absolute;
top:50%;
right:10px;
margin-top:-18px;
display:block;
content:"";
width:36px;
height:36px;
background: url("images/taccordion01.png") 0 0 no-repeat;
background-size:contain;
}
.tbtmlist input {
display: none;
}

.tbtmlist .menu ul {
margin: 0;
padding: 0;
list-style: none;
}

.tbtmlist .menu li {
width:100%;
max-height: 0;
overflow-y: hidden;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
-ms-transition: all 0.5s;
-o-transition: all 0.5s;
transition: all 0.5s;
}
.tbtmlist .menu li a{
display:block;
font-size:2.2rem;
color :#005335;
line-height: 1;
text-align:center;
padding :38px;
border-left:2px #329164 solid;
border-right:2px #329164 solid;
border-bottom:2px #329164 solid;
}
.tbtmlist #menu_bar01:checked ~ #links01 li,
.tbtmlist #menu_bar02:checked ~ #links02 li {
max-height: 100px;
opacity: 1;
}

.tbtmlist #menu_bar01:checked+label::after,
.tbtmlist #menu_bar02:checked+label::after{
background: url("images/taccordion02.png") 0 0 no-repeat;
background-size:contain;
}


/*--------------------  START Media Queries  --------------------*/
@media (max-width: 1300px) {
.tmcatch{
position:absolute;
top:20px;
left:60%;
width:160px;
}
}


@media (max-width: 976px) {
.tinfo dt{
width:auto;
float:none;
}
.tinfo dd{
padding-left:0;
}

}

@media (max-width: 768px) {
.tmain-inner{
height:580px;
}
.tmcatch{
top:20px;
left:50%;
width:100px;
margin-left:-50px;
}
.tinfo{
bottom:20px;
left:3%;
width:94%;
}
.tsearch .mds{
width:100%;
font-size:2.2rem;
color:#fff;
letter-spacing: 0.1em;
text-align:center;
padding:10px;
margin-bottom:20px;
}
.tsearch .btn{
width:100%;
margin-bottom:20px;
}
.tsearch .search{
width:100%;
margin-bottom:20px;
}

.tab_item {
  width: 100%;
  float: none;
}
.tab_item:nth-child(2),
.tab_item:nth-child(4),
.tab_item:nth-child(6){
background:#ccc;
}
.tab_item:nth-child(2),
.tab_item:nth-child(4){
margin: 0 0 1px 0;
}

.tab_item::after{
content:none;
}
.tab_content{
padding: 20px;
}
.tab_content dl {
    font-size: 1.8rem;
}
.tab_content dt{
width:100%;
float:none;
}
.tab_content dd{
padding-left:0;
}
#event_content dd,
#book_content dd{
padding-left:0;
padding-top:26px;
}
#event_content dd span,
#book_content dd span{
width:auto;
top:0;
left:0;
}
.tab_content .btn{
text-align:center;
}
#research_content,
#event_content,
#result_content {
border-top:3px solid;
}
#research_content{border-color:#04724D;}
#event_content{border-color:#8DC031;}
#result_content{border-color:#45ACBF;}

.tabout{
padding-top:60px;
}

.tabout .catch {
font-size: 3rem;
}
.tabout .catch br{
display:none;
}
.tabout p{
width:100%;
font-size: 1.8rem;
}
.tabout .btn{
text-align:center;
}
.tcfrm .img{
width:100%;
margin-bottom:20px;
}
.tcfrm .detail{
width:100%;
}
.tcfrm .btn{
text-align:center;
}

.tresultbooks ul li{
width:100%;
text-align:center;
}
.tresultbooks ul li:first-child{
margin-bottom:40px;
}
.tresultbooks ul li .box{
text-align:left;
}
}


@media (max-width: 640px) {
.announcement-box thead{
display:none;
}
.announcement-box tr,
.announcement-box th,
.announcement-box td{
display:block;
}

.tevent .announcement-box tbody tr td:first-child,
.tgrandprix .announcement-box tbody tr td:first-child{
border-right:none;
}

.announcement-box tbody td{
padding:10px;
}
.announcement-box tbody td::before{
content: attr(data-title);
display:block;
color:#FFF;
padding:10px;
margin-bottom:10px;
background:#53AC87;
}
.tgrandprix .announcement-box h3{
color:#FFF;
font-weight:normal;
text-align:left;
padding:10px;
}
.tgrandprix .announcement-box .detail{
padding:10px;
}

.tbtmlist li{
width:100%;
}
.tbtmlist label {
font-size:1.8rem;
}
.tbtmlist .menu li a{
font-size:1.8rem;
}
}
@media (max-width: 480px) {
h2.tmds01{
font-size:2.4rem;
}
h2.tmds02,
h3.tmds02{
font-size:2.4rem;
}
.tcfrm .detail .mds{
font-size:2.4rem;
}
}
/*=================================

	404

================================ */
.error404 .box{
	text-align:center;
}

/*=================================

	お知らせ

================================ */
.info-list{
width: 100%;
margin-bottom:80px;
border-top:1px #ddd solid;
}
.info-list dt{
width:120px;
color:#0B2F15;
padding:1em 0;
float:left;
}
.info-list dd{
padding:1em 0 1em 120px;
border-bottom:1px #ddd solid;
}
.info-list dd.important a{
color:red;
}
h2,h3,h4,h5{
	clear:both;
}

.post-info ul,
.post-info ol,
.post-info dl{
margin:1.5em 0;
}
.post-info ul li{
text-indent:-1em;
padding-left:1em;
margin:0 0 0.5em 0.5em;
}

.post-info ul li::before{
content:"・";
}

.post-info ol li{
list-style-type:decimal;
margin:0 0 0.5em 2em;
}

.post-info dl dt{
color:#005234;
margin:0 0 0 0;
}
.post-info dl dd{
margin:0 0 0.5em 1em;
}

.post-info table th{
background: #FCFCFC;
}

.alignnone {
  margin: 0 20px 20px 0;
}
.aligncenter {
display: block;
margin: 0 auto 20px;
}
.alignright {
margin: 0 0 20px 20px;
float: right;
}
.alignleft {
margin: 0 20px 20px 0;
float: left;
}
.wp-caption {
background: #fff;
border: 1px solid #f0f0f0;
max-width: 96%;
padding: 5px 3px;
text-align: center;
}
.wp-caption p{
font-size:1.3rem;
margin:5px 0 0;
}

em {
font-style: italic;
}
blockquote{
margin:20px 0 20px 20px;
padding-left:10px;
border-left:3px #ddd solid;
}
/*--------------------  START Media Queries  --------------------*/


@media (max-width: 480px) {
.alignright,
.alignleft{
float:none;
margin: 0 auto 20px;
}
}

/*=================================

	日本都市センターについて

================================ */
/*--------------------
アクセス
--------------------*/

.gmap {
position: relative;
padding-bottom: 56.25%;
margin-bottom:60px;
height: 0;
overflow: hidden;
}
 
.gmap iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/*--------------------
沿革
--------------------*/
.history-tbl th{
background:#FCFCFC;
}
.history-tbl tbody th{
white-space:nowrap;
}
.history-tbl tbody td{
}
/*--------------------  START Media Queries  --------------------*/
@media (max-width: 480px) {
.history-tbl thead{
display:none;
}
.history-tbl tr,
.history-tbl th,
.history-tbl td{
display:block;
}
.history-tbl tbody td:nth-child(2)::before{
content:"■沿革\A";
color:#005334;
white-space: pre;
}
.history-tbl tbody td:nth-child(3)::before{
content:"■研究実績\A";
color:#8DC131;
white-space: pre;
}

.history-tbl tbody td:empty{
display:none;
}
}
/*--------------------
理事長挨拶
--------------------*/
.chairman-img{
margin:0 20px 20px 0;
float:left;
}
.signature{
text-align:right;
}
/*--------------------  START Media Queries  --------------------*/
@media (max-width: 640px) {
.chairman-img{
display:block;
margin:0 auto 20px;
float:none;
}

}

/*--------------------
役員一覧
--------------------*/
.officers-tbl thead th{
background:#FCFCFC;
}
.officers-tbl tbody th{
font-weight:normal;
width:150px;
}
.officers-tbl tbody td:nth-child(3){
width:150px;
}
/*--------------------  START Media Queries  --------------------*/
@media (max-width: 640px) {
.officers-tbl thead{
display:none;
}
.officers-tbl tr,
.officers-tbl th,
.officers-tbl td{
display:block;
}
.officers-tbl tbody th,
.officers-tbl tbody td:nth-child(3){
width:100%;
}
.officers-tbl tbody th{
font-weight:bold;
text-align:left;
border-bottom:none;
background:#FCFCFC;
}
.officers-tbl tbody td:nth-child(2){
border-top:none;
border-bottom:none;
padding:10px 10px 0;
}
.officers-tbl tbody td:nth-child(3){
border-top:none;
}
}

/*--------------------
スタッフ
--------------------*/
.staff h4{
color:#005234;
}

/*=================================

	調査・研究

================================ */
/*=================================

	研修

================================ */
/*=================================

	研究成果・機関紙

================================ */
.book-cover-list{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding:3% 3% 0;
  margin:0 0 60px;
  background:#F8F8F8;
}
.book-cover-list li{
width:30%;
padding:0;
margin-bottom:3%;
}
.book-cover-list li a{
display:block;
text-align:center;
}
.book-cover-list li a img{
margin-bottom:10px;
}
.book-cover-list li a p{
margin-bottom:0;
}

.book-cover-list::after{
content:"";
width:30%;
}

/*=================================

	都市自治体の調査研究活動

================================ */
/*=================================
	都市調査研究グランプリ
================================ */
.grandprix-date{
font-size:18px;
font-size:1.8rem;
color:#005334;
font-weight:bold;
}
.grandprix-data{
padding:10px;
border:1px #DDD solid;
}
.grandprix-linkbox{
margin-bottom:10px;
}
.grandprix-linkbox a,
.grandprix-linkbox span{
display:inline-block;
font-size:15px;
font-size:1.5rem;
color:#666;
line-height:1;
padding:10px;
margin:0 5px 10px 0;
background:#EEEEEE;
}
.grandprix-linkbox a{
color:#FFF;
background:#005334;
}
.grandprix-notes li{
text-indent:-1em;
padding-left:1em;
}
.grandprix-notes li::before{
content:"※";
}
.main-frm h2.grandprix-bn-mds{
color:#FFF;
background:#005234;
border:none;
}
.main-frm p.grandprix-bn-lead{
margin-bottom:40px;
}
.postid-16959 .grandprix-data-box{
display:none;
}
.post-type-archive-grandprix .post-list li:first-child{
}

/*=================================

	メールマガジン

================================ */
.mm-frm{
padding:30px;
margin-bottom:60px;
border:1px #DDD solid;
}
.main-frm .mm-frm h2:first-child{
margin:0 0 30px;
}
.mm-frm  input[type=text] {
width:100%;
	padding:10px;
margin:10px 0;
	background:#FCFCFC;
	border:1px #D7D7D7 solid;
}
.mm-frm .form_button{
	width:200px;
	font-size:16px;
	font-size:1.6rem;
	padding:10px;
	margin:30px 0 0;
	border:none;
	color:#FFF;
	font-weight:bold;
	background:#005234;
}

/*=================================

	研究報告・機関誌論文検索

================================ */
.search-frm{
padding:30px;
margin-bottom:60px;
background:#FFF;
-moz-box-shadow: 5px 5px 12px 5px rgba(0, 0, 0, 0.05);
-webkit-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.05);
-ms-box-shadow: 5px 5px 12px 0px rgba(0, 0, 0, 0.05);
box-shadow: 2px 2px 12px 5px rgba(0, 0, 0, 0.05);
}

.search-frm .gsc-control-cse{
background:#FFF;
border:1px #FFF solid;
}

.search-frm h2{
margin:0 0 30px;
}

/*=================================

	お問い合わせ

================================ */
.contact .lead{
	margin:40px 0;
}

table.contact-tbl{
	width:100%;
	margin-bottom:40px;
	border-top:1px #DDD solid;
	border-left:none;
}
.contact-tbl th,
.contact-tbl td{
	padding:20px;
	border:none;
	border-bottom:1px #DDD solid
}
.contact-tbl th{
	width:230px;
	text-align:left;
	white-space:nowrap;
	background:#F1F7F1;
}
.contact-tbl input,
.contact-tbl textarea,
.contact-tbl select{
	padding:10px;
	background:#FCFCFC;
	border:1px #D7D7D7 solid;
}
.contact-tbl textarea{
	width:100%;
}
.contact-tbl .required{
	color:#E40011;
}
.contact-tbl input{
	width:350px;
}

.contact-tbl .phone-frm input{
	width:70px;
	margin-right:3px;
}
.contactnote{
	text-align:center;
}
.contact-btn{
	text-align:center;
}
.contact-btn .submitbtn,
.contact-btn .resetbtn,
.contact-btn .backbtn{
	font-size:16px;
	font-size:1.6rem;
	padding:10px;
	margin:40px 5px 0;
	border:none;
}
.contact-btn .submitbtn{
	color:#FFF;
	font-weight:bold;
	background:#005234;
}
.contact-btn .resetbtn,
.contact-btn .backbtn{
	background:#DDD;
}


/*----------------------------------
	confirm
----------------------------------*/
.contactform .contacttxt{
	margin-bottom:40px;
}
	
/*----------------------------------
	error
----------------------------------*/

.contactform h4{
	font-size:20px;
	font-size:2rem;
	color:#E40011;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px;
}
.contactform .errorbox{
	text-align:center;
	padding:30px;
	background:#FCFCFC;
	border:1px #DDD solid;
	border-radius:3px;
}
.contactform .errorbox p{
	margin-bottom:10px;
}

/*----------------------------------
	thanks
----------------------------------*/


.thanks-box{
text-align:center;
padding:30px;
background:#FCFCFC;
border:1px #D7D7D7 solid;
}
.thanks-box p{
	margin-bottom:30px;
}
/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 768px) {
.contact-tbl tr,
.contact-tbl th,
.contact-tbl td{
	display:block;
	width:100%;
}
.contact-tbl th{
	padding:10px;
}
.contact-tbl td{
	padding:20px 0;
	border-bottom:none;
}
.contact-tbl .address-frm02 th{
	background:none;
padding:0;
}
.contact-tbl input{
	width:100%;
}
.contact-tbl .name label{
	margin-bottom:10px;
}
}
/* end 768px */


/*=================================

	Japan Municipal Research Center -English Page-

================================ */

