@import url(https://fonts.googleapis.com/css?family=Lato:400,700);

/* CSS Document */

@media print {

.drawer-toggle,
.drawer-hamburger,
.drawer-nav {
	display: none;
	visibility: hidden;
}

}

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

html, body{
	margin: 0;
	padding: 0;
	width:100%;
	height:100%;
}

p,hr,h1,h2,h3,h4,h5,h6,ul,ol,li,table,tr,td,form,dl {
	margin: 0;
	padding: 0;
}

img { margin: 0; border: 0;}
img [class*="wp-image-"],
img [class*="attachment-"],
img.size-full {
	max-width: 100%;
	height: auto;
	margin: 0 auto 10px auto;
}

br { margin: 0; padding: 0;}

body {
	background: url(/includes/images/bg_body.png) repeat-y top left #fff;
	margin: 0;
	line-height: 1.8;
	font-size: 100%;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #000;
	text-align: center;
	letter-spacing: 0.5px;
}

.left { float: left; }
.right { float: right; }
.image_left { float: left; margin-right: 30px; }
.image_right { float: right; margin-left: 30px; }

.text_left { text-align: left; }
.text_center { text-align: center; }
.text_right { text-align: right; }

small { font-size: 80%; }

.mt5 { margin-top: 5px; }
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt35 { margin-top: 35px; }
.mt40 { margin-top: 40px; }
.mt50 { margin-top: 50px; }
.mt60 { margin-top: 60px; }
.mt70 { margin-top: 70px; }
.mt80 { margin-top: 80px; }
.mt90 { margin-top: 90px; }
.mt100 { margin-top: 100px; }

.italic {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: italic;
}

.clear { clear: both;}

.clearfix { min-height: 1px; }
* html .clearfix { height: 1px; }

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.fa { color: #000;}

a { color: #a80; text-decoration: none; }
a:hover { text-decoration: underline; }
a:active { color: #da0046; }

a.button:hover img {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

a[target="_blank"] {
	background: url(/includes/images/icon_window_black.png) no-repeat center right;
	background-size: 12px;
	padding-right: 19px;
	margin-right: 7px;
}

a.pdf:after,
a.docx:after,
a.xlsx:after,
a.mail:after,
a.code:after {
	font-family: FontAwesome;
	font-weight: normal;
	padding-left: 9px;
	margin-right: 8px;
}

a.pdf:after {content: "\f1c1";}
a.docx:after {content: "\f1c2";}
a.xlsx:after {content: "\f1c3";}
a.mail:after {content: "\f003";}
a.code:after {content: "\f1c9";}

ul, dl { list-style: none; }

.red { color: #e70000; }

.sp, .sp2 { display: none; }

i { speak: none; }

.underline { text-decoration: underline; }

/***** Drawer *****/

.drawer-toggle,
.drawer-hamburger,
.drawer-nav {
	display: none;
	visibility: hidden;
}

#drawer h1 {
	height: 77px;
	text-align: center;
}

#drawer h1 img {
	height: 45px;
	margin-top: 15px;
}

#drawer div { 
	overflow: hidden;
	padding: 15px 0 30px;
	background: #444;
}

#drawer dl {
	float: left;
	width: 45%;
	margin-top: 10px;
	margin-left: 3%;
	text-align: left;
	color: #fff;
}

#drawer dl dd {
	margin: 0;
	font-size: 80%;
}

#drawer dl dd a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 5px;
	border-bottom: 1px solid #595959;
}

#drawer dl dd:first-child a {
	border-top: 1px solid #595959;
}

#drawer dl dd a[target="_blank"] {
	background: url(/includes/images/icon_window_white.png) no-repeat center right;
	background-size: 14px;
}

#drawer p {
	margin-top: 25px;
	text-align: center;
	font-size: 80%;
}

#drawer address {
	font-size: 70%;
	font-style: normal;
	margin: 15px 0 25px;
}


/***** Header *****/

#header {
	width: 100%;
	height: 100px;
	background: #fff;
	overflow: hidden;
}

#header h1 {
	float: left;
	width: 460px;
	margin-top: 15px;
	text-align: left;
}

#header h1 img {
	height: 70px;
	margin-left: 20px;
}

#global_menu {
	float: right;
	margin-right: 20px;
}

#global_menu p {
	margin-top: 5px;
	text-align: right;
	color: #555;
	font-size: 80%;
}

#global_menu p .boxbutton {
	width: 70px;
	min-width: 70px;
	margin-left: 15px;
	padding: 7px 15px;
}

#global_menu ul li img {
	width: 31px;
	vertical-align: middle;
}

#global_menu ul {
	float: right;
	font-size: 0;
	margin-top: 12px;
}

#global_menu ul li {
	display: inline;
	line-height: 20px;
	font-size: 10.5pt;
	padding: 0 37px 0 0;
}

#global_menu ul li:nth-last-of-type(3) { padding-right: 44px; }
#global_menu ul li:nth-last-of-type(2) { padding-right: 34px; }
#global_menu ul li:last-child { padding-right: 0; }

#global_menu ul li a { color: #000; }
#global_menu ul a:hover { text-decoration: underline; }

/***** Menu *****/

#menu {
	width: 240px;
	border-top: 1px solid #ddd;
}

#menu ul li {
	position: relative;
	letter-spacing: 1px;
}

#menu ul li a.arrow {
	display: block;
	width: 240px;
	height: 75px;
	background: url(/includes/images/bg_menu.png) no-repeat center right #fff;
	border-bottom: 1px solid #ddd;
	font-size: 110%;
	color: #000;
}

#menu ul li a.arrow:hover {background: url(/includes/images/bg_menu_on.png) no-repeat center right #fff; }
#menu form { border-bottom: 1px solid #ddd; }

#menu ul li a.arrow span {
	position: relative;
	top: 13px;
	left: 15px;
}

#menu ul li a.arrow:hover {
	text-decoration: none;
}

#menu ul li a.arrow small {
	position: absolute;
	top: 28px;
	left: 0;
	font-size: 60%;
	color: #9b8d6f;
}

#menu p img { width:100%; }

.nav li ul {
    display: none;
    position: absolute;
    top: -1px;
    left: 240px;
    width: 220px;
    -webkit-box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.15);
    -moz-box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.15);
    box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.15);
    z-index: 300;
    overflow: hidden;
    font-size: 80%;
    line-height: 1.3;
}

.nav ul li {
	width: 220px;
    height: 50px;
    border-top: 1px solid #555;
}

.nav ul li a {
    display:table-cell;
    vertical-align: middle;
	width: 220px;
	height: 50px;
    background: #333;
	color: #fff;
    overflow: hidden;
    padding-left: 12px;
}

.nav ul li a:hover {
    background: #444;
    text-decoration: none;
}

/***** Search-box *****/

#cse-search-box {
	padding: 7px 0 10px;
	overflow: hidden;
}

#cse-search-box p {
	font-size: 8pt;
	color: #b8b7b7;
	background: url('https://www.google.com/cse/static/images/1x/googlelogo_lightgrey_46x16dp.png') 7px 0px no-repeat;
	text-indent: 56px;
}

#cse-search-box input[type="text"] {
	margin-top: 5px;
	width: 180px;
	background: #f1f0ed;
	border: none;
	outline: none;
	padding: 0 10px;
	-webkit-box-shadow: 0 0 0px 1000px #f1f0ed inset;
}

#cse-search-box input:placeholder-shown { color: #b8b7b7; font-size: 85%; }
#cse-search-box input::-webkit-input-placeholder { color: #b8b7b7; font-size: 85%; }
#cse-search-box input:-moz-placeholder { color: #b8b7b7; opacity: 1; font-size: 85%; }
#cse-search-box input::-moz-placeholder { color: #b8b7b7; opacity: 1; font-size: 85%; }
#cse-search-box input:-ms-input-placeholder { color: #b8b7b7; font-size: 85%; }

#search_button {
    width: 22px;
    height: 22px;
    background: url(/includes/images/icon_search.png) no-repeat;
    float: right;
	background-size: 22px;
	margin-right: 10px;
	border: none;
	outline: none;
	cursor: pointer;
}

#drawer #cse-search-box { padding: 0 0 10px; }

#drawer #cse-search-box p {
	margin: 0 auto;
	width: 190px;
	background: url('https://www.google.com/cse/static/images/1x/googlelogo_lightgrey_46x16dp.png') 15px 0px no-repeat;
	text-indent: 35px;
}

#drawer #cse-search-box input[type="text"] {
	margin-top: 0;
	width: 220px;
	background: #666;
	padding: 7px;
	-webkit-box-shadow: 0 0 0px 1000px #666 inset;
	color: #fff;
}

#drawer #search_button {
    background: url(/includes/images/icon_search_white.png) no-repeat;
	background-size: 22px;
    float: none;
	vertical-align: middle;
	margin: 0 0 0 5px;
}

/***** Paid-publicity *****/

#contents_right #paid-publicity {
	display: none;
	visibility: hidden;
}

#paid-publicity h4 {
	background: #fdd000;
	padding: 5px 10px;
	margin-top: 30px;
	font-size: 90%;
}

#paid-publicity dl {
	position: relative;
	background: #faf9f7;
	border-bottom: 1px solid #ddd;
	padding: 18px 0;
	line-height: 1.5;
}

#paid-publicity dd {
	font-size: 80%;
	padding: 0 5px 0 15px;
	margin: 0;
}

#paid-publicity dd.source { font-size: 70%; }

#paid-publicity dt {
	font-size: 95%;
	padding: 2px 5px 5px 15px;
}

#paid-publicity dt a {
	color: #000;
	width: 100%;
	height: 100%;
	display: block;
}

#paid-publicity ion-icon {
	position: absolute;
	bottom: 8px;
	right: 7px;
	color: #f39800;
	font-size: 18px;
}

/***** Body *****/

#body {
	width: 100%;
	overflow: hidden;
	letter-spacing: 0;
}

#contents_left {
	float: left;
	width: 240px;
	padding-bottom: 70px;
	text-align: left;
}

#contents_right {
	float: right;
	width: 100%;
	margin-right: -240px;
	text-align: left;
	overflow: hidden;
}

.contents {
	margin-right: 240px;
	overflow: hidden;
}

/***** Main visual *****/

#main-visual {
	width: 100%;
	height: 195px;
    border-bottom: 1px solid #fff;
	background: url(/includes/images/main-visual.jpg) no-repeat top left #000;
	background-size: cover;
	overflow: hidden;
	text-align: left;
}

#main-visual h1 {
	text-align: right;
	margin-top: 85px;
}

#main-visual h1 img {
	width: 482px;
	margin-right: 20px;
}

#main-visual_lower {
	width: 100%;
	height: 120px;
	background: url(/includes/images/main-visual_lower.jpg) no-repeat top left #000;
	background-size: cover;
	overflow: hidden;
	text-align: left;
}

#main-visual_lower h1 {
	margin-top: 34px;
	padding-left: 30px;
	font-size: 180%;
	font-weight: normal;
	color: #fff;
}

/***** Supporter *****/

#supporter {
	padding: 13px 0;
	overflow: hidden;
}

#supporter ul {
	width: 98%;
	margin-left: auto;
	margin-right: auto;
	font-size: 0;
	text-align: center;
}

#supporter ul li {
	display: inline-block;
	margin: 7px 20px;
}

#supporter ul li:first-child { margin: 0 20px 0 0; }
#supporter ul li:last-child { margin: 0 0 0 20px; }

/***** Contents *****/

.graybox {
	background: #efedea;
	overflow: hidden;
}

.bluebox {
	background: #c8e2e8;
	overflow: hidden;
}

.skybox {
	background: #e1f1f6;
	overflow: hidden;
}

.seibutsu-butsuri {
    width: 40%;
    float: left;
	text-align: center;
    padding-bottom: 40px;
}

.seibutsu-butsuri img { width: 78%; }

.seibutsu-butsuri_old {
    width: 60%;
    float: right;
    margin-top: 40px;
    font-size: 0;
    text-align: center;
    padding-bottom: 18px;
}

.seibutsu-butsuri_old li {
	display: inline-block;
    text-align: center;
    font-size: 10pt;
    margin: 0 11px 22px;
}

.seibutsu-butsuri_old li img { width: 140px; }

.paperbox {
	background: url(/includes/images/bg_category.jpg) no-repeat center center #fff;
	background-size: cover;
	overflow: hidden;
	padding-bottom: 100px;
}

.contents_inner {
	width: 90%;
	max-width: 950px;
	margin: 0 auto;
	overflow: hidden;
}

.contents_inner p:first-child { margin-top: 40px; }

.contents p,
.contents table {
	font-size: 95%;
}

.contents p.date {
	text-align: right;
	margin-bottom: 40px;
}

.contents h2 {
	position: relative;
	display: inline-block;
	margin-top: 45px;
	margin-bottom: 55px;
	padding-bottom: 20px;
	font-size: 180%;
	font-weight: normal;
	line-height: 1.5;
}

.contents h2:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 30%;
	height: 4px;
	left: 0;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #fdd000;
	border-radius: 1px;
}

.contents h2 span {
	font-size: 11pt;
	font-weight: normal;
	margin-left: 20px;
}

.contents hr {
	clear: both;
	width: 90%;
	max-width: 950px;
	height: 1px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
	padding: 0;
	border: none;
	border-top: 1px solid #ddd;
	overflow: hidden;
}

.contents_inner h3 {
	background: #f3f2ed;
	border-radius: 3px;
	position: relative;
	padding: 7px 10px 7px 20px;
	margin-top: 45px;
	margin-bottom: 20px;
	font-weight: normal;
	font-size: 120%;
}

.contents_inner h3:after {
	position: absolute;
	top: .5em;
	left: 0;
	content: '';
	width: 4px;
	height: -webkit-calc(100% - 1em);
	height: calc(100% - 1em);
	background-color: #fdd000;
}

.contents_inner h4 {
	padding-bottom: 3px;
	border-bottom: 1px solid #ddd;
	margin-top: 30px;
	margin-bottom: 20px;
	font-size: 100%;
	font-weight: bold;
}

.contents_inner h4 span {
	font-size: 90%;
	font-weight: normal;
	margin-left: 10px;
}

.contents_inner h4.normal { font-weight: normal; }
.contents_inner h4.normal ion-icon { vertical-align: middle; }

.contents ul.items li {
	margin: 0 0 0 20px;
	list-style-type: disc;
	font-size: 95%;
}

.contents ol.upper-roman li {
	margin: 0 0 5px 35px;
	font-size: 95%;
	list-style-type: upper-roman;
}

.contents ol.numbers li {
	margin: 0 0 5px 30px;
	font-size: 95%;
	list-style-type: decimal;
}

.contents ol.alphabet li {
	margin: 0 0 5px 20px;
	font-size: 95%;
	list-style-type: upper-latin;
}


/***** Topic pass *****/

#topicpass {
	margin: 20px 0 0 30px;
	font-size: 80%;
	overflow: hidden;
}

#topicpass li {
	display: inline-block;
	background: url(/includes/images/bg_topicpass.png) no-repeat right 6px;
	padding-right: 16px;
	margin-left: 5px;
	color: #000;
	line-height: 1.5;
}

#topicpass li ion-icon {
	margin: 0 3px 3px 0;
	font-size: 130%;
	vertical-align: middle;
}

#topicpass li:first-child { margin-left: 0; }
#topicpass li:last-child { background: none; padding-right: 0; }

#topicpass li a { color: #000; text-decoration: none; }
#topicpass li a:hover { text-decoration: underline; }

/***** Teaser *****/

#teaser {
	float: left;
	width: 630px;
	overflow: hidden;
}

#teaser div {
	position: relative;
	width: 630px;
	height: 140px;
	border-bottom: 1px solid #fff;
	overflow: hidden;
}

#teaser div:last-child { border-bottom: none; }

#teaser div span {
	position: absolute;
	top: 40px;
	text-shadow: 0px 0px 5px #000;
}

#teaser div:nth-child(odd) span { left: 30px; }
#teaser div:nth-child(even) span { right: 30px; text-align: right; }

#teaser div span large {
	font-size: 180%;
	font-weight: normal;
	line-height: 1.3;
	padding-right: 26px;
	background: url(/includes/images/icon_window_white.png) no-repeat right center;
	background-size: 16px;
}

#teaser div a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
}

#teaser div a:hover { text-decoration: none; }

#teaser div:nth-child(odd) a {
	background: url(/includes/images/t_arrow.png) no-repeat right center rgba(8,53,79,0.5);
	background-size: 58px;
}

#teaser div:nth-child(odd) a:hover {
	background: url(/includes/images/t_arrow.png) no-repeat right center rgba(8,53,79,0.3);
	background-size: 58px;
}

#teaser div:nth-child(even) a {
	background: url(/includes/images/t_arrow.png) no-repeat left center rgba(8,53,79,0.5);
	background-size: 58px;
}

#teaser div:nth-child(even) a:hover {
	background: url(/includes/images/t_arrow.png) no-repeat left center rgba(8,53,79,0.3);
	background-size: 58px;
}

#teaser_01 { 
	background: url(/includes/images/t_01.jpg) no-repeat center center;
	background-size: 630px;
}

#teaser_02 { 
	background: url(/includes/images/t_02.jpg) no-repeat center center;
	background-size: 630px;
}

#teaser_03 { 
	background: url(/includes/images/t_03.jpg) no-repeat center center;
	background-size: 630px;
}

/***** Publication *****/

#publication {
    position: relative;
	text-align: center;
	overflow: hidden;
}

#publication ul {
	margin-top: 40px;
	font-size: 0;
}

#publication ul li {
	display: inline-block;
	width: 42%;
	text-align: center;
	vertical-align: top;
	font-size: 10.5pt;
}

#publication ul li:first-child { margin-right: 20px; }
#publication ul li img { height: 350px; }

#publication div {
    position: absolute;
    top: 0;
    left: 0;
	width: 90px;
    height: 40px;
    background: #2ad;
    text-align: center;
    font-size: 10pt;
    color: #fff;
	overflow: hidden;
    z-index: 40;
}

#publication div p {
    padding-top: 10px;
}

/***** Information *****/

#info {
	margin-top: 30px;
	overflow: hidden;
}

#info h3 {
	font-size: 150%;
	font-family: lato, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 6px;
	margin-left: 4%;
}

#info table {
	width: 92%;
	border-collapse: collapse;
	margin: 35px auto 0;
	font-size: 90%;
}

#info th,
#info td {
	vertical-align: top;
	text-align: left;
	font-weight: normal;
	border-bottom: 1px solid #ddd;
}

#info th {
	width: 200px;
	padding: 10px 10px 10px 0;
}

#info td { padding: 10px 0 10px 10px; }

#info td a {
	text-decoration: none;
	color: #000;
}

#info td a:hover { text-decoration: underline; }

#info div.right {
	margin: 10px 4% 0 0;
}

#info div.right a {
	color: #000;
	font-size: 90%;
}

#info div.right a ion-icon {
	margin-right: 5px;
	color: #f39800;
	vertical-align: middle;
	margin-bottom: 2px;
	font-size: 18px;
}

.icon {
	width: 70px;
	padding: 2px 5px;
	font-size: 11px;
	color: #fff;
	display: inline-block;
	margin-left: 15px;
	text-align: center;
}

.icon_meeting { background-color: #5fb2c6; }
.icon_award { background-color: #c62e20; }
.icon_publication { background-color: #c89d47; }
.icon_other { background-color: #a5c847; }
.icon_important { background-color: #fff; border: 1px solid #e70000; color: #e70000; padding: 1px 4px; }
.icon_new { background-color: #ffe700; color: #000; width: 45px; }

/***** Tabs *****/

.tabs {
	margin-top: 25px;
	overflow: hidden;
	font-size: 0;
	text-align: center;
}

.tabs li {
	position: relative;
	background: #f7f5f4;
	display: inline-block;
	font-size: 10pt;
	line-height: 50px;
}

.tabs li a {
	position: relative;
	width: 145px;
	height: 50px;
	display: block;
	text-decoration: none;
	color: #000;
	border-right: 1px solid #ddd;
	border-top: 2px solid #efedea;
}

.tabs li a ion-icon {
	position: absolute;
	right: 0px;
	top: 0px;
	font-size: 150%;
	color: #fdd000;
}

.tabs li a.is_active {
	background: #fff;
	border-top: 2px solid #fdd000;
	text-decoration: none;
}

.tab_content {
	display: none;
	background: #fff;
	border-left: 1px solid #e5e5e5;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.tab_content.is_show {
	display: block;
	overflow: hidden;
	min-height: 300px;
}

/***** Articles *****/

.articles {
	width: 100%;
	border-spacing: 0
}

.articles th,
.articles td {
	padding: 0;
	vertical-align: top;
}

.articles th {
	text-align: left;
	font-weight: normal;
}

.articles thead th {
	font-weight: bold;
	padding: 25px 0 5px;
}

.articles tbody th.article { width: 100px; }
.articles tbody th.number { width: 35px; }

/***** List *****/

.list {
	width: 100%;
	border-spacing: 0;
	border-top: 1px solid #e4e4e4;
}

.list thead th {
	font-size: 85%;
	font-weight: normal;
}

.list th,
.list td {
	border-bottom: 1px solid #e4e4e4;
	padding: 5px;
	vertical-align: top;
}

.group_first tr.group_1 :nth-child(1) { color: #2a73a4; }
.group_first tr.group_2 :nth-child(1) { color: #a42a7e; }
.group_first tr.group_3 :nth-child(1) { color: #2aa490; }
.group_first tr.group_4 :nth-child(1) { color: #372aa4; }
.group_first tr.group_5 :nth-child(1) { color: #69a42a; }

.list2 {
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

.list2 thead th {
	font-size: 85%;
	font-weight: normal;
	text-align: center;
	border: 1px solid #e4e4e4;
	padding: 5px 7px;
}

.list2 tbody th,
.list2 tbody td {
	border: 1px solid #e4e4e4;
	padding: 5px 7px;
	font-weight: normal;
}

.list2 .nowrap { white-space: nowrap; }

.list2 tbody .group_8 {
    background: #faf9f7;
}

.school01,.school02,.school03,.school04,.school05 {
	text-align: center;
	vertical-align: middle;
}

.school01 { color: #ff007d;}
.school02 { color: #f60;}
.school03 { color: #008000;}
.school04 { color: #00f;}
.school05 { color: #80009b;}

/***** Anchor  *****/

.anchor {
	overflow: hidden;
	margin: 30px 0;
	font-size: 95%;
}

.anchor a {
	color: #000;
}

.anchor li a:after {
	font-family: FontAwesome;
	padding-left: 9px;
}

.anchor li.down a:after { content: "\f107 "; }
.anchor li.forward a:after { content: "\f105"; }

.side li {
	display: inline-block;
	margin-right: 25px;
}

.side li:last-child { margin-right: 0; }

/***** Page Button  *****/

.pagebutton {
	overflow: hidden;
	margin-top: 40px;
	text-align: center;
}

.pagebutton li {
	display: inline-block;
	margin: 5px;
	position: relative;
	width: 190px;
	height: 135px;
	font-size: 140%;
}

.pagebutton li a {
	display: block;
	width: 190px;
	height: 135px;
	background: #faf9f7;
	border-top: 3px solid #fdd000;
	color: #000;
	text-decoration: none;
	line-height: 1.3;
}

.pagebutton li a:hover {
	background: #fdd000;
	border-top: 2px solid #fdd000;
	text-decoration: none;
}

.pagebutton li a ion-icon {
	font-size: 120%;
	margin-bottom: 12px;
}

.pagebutton li a span {
	position: absolute;
	top: 19px;
	left: 0;
	right: 0;
}

.pagebutton li a small {
	font-size: 90%;
}

/***** Box Button  *****/

.boxbutton {
	min-width: 100px;
	background: #fff;
	padding: 10px 17px;
	display: inline-block;
	text-decoration: none;
	line-height: 1.3;
	color: #000;
	border: 1px solid #ddd;
	text-align: center;
	cursor: pointer;
	margin: 5px 7px;
}

.boxbutton:hover {
	color: #000;
	text-decoration: none;
	border: 1px solid #fdd000;
	background: #fdd000;
}

.boxbutton:hover span {
	color: #000;
}

.boxbutton ion-icon {
	color: #000;
	font-size: 14pt;
	margin-top: -1px;
}

.boxbutton .left { margin-right: 5px; }
.boxbutton .right { margin-left: 5px; }

.boxbutton2 {
    width: 266px;
	background: #fff;
	border: 2px solid #fdd000;
	padding: 17px;
	display: inline-block;
	text-decoration: none;
	line-height: 1.3;
	color: #000;
    font-weight: bold;
    font-size: 12pt;
	text-align: center;
	cursor: pointer;
	margin: 5px 7px;
}

.boxbutton2:hover {
	color: #000;
	text-decoration: none;
	background: #fdd000;
    border: 2px solid #fdd000;
}

.boxbutton2 ion-icon,
.boxbutton2 i {
	color: #000;
	font-size: 14pt;
	margin-top: -1px;
    margin-right: 5px;
}

.boxbutton .left { margin-right: 5px; }
.boxbutton .right { margin-left: 5px; }

.w100 { width: 100px; }
.w250 { width: 250px; }
.w400 { width: 400px; }

.button_wrapper {
    text-align: center;
}

.button_wrapper li {
    display: inline-block;
    text-align: center;
    margin: 0 15px;
}

/***** Form *****/

#contents_right .mfp_phase {
	clear: both;
	width: 770px;
	margin: 60px auto 0 auto;
}

#contents_right select {
	padding: 5px;
	border: 1px solid #ddd;
	background: #fff;
	font-size: 95%;
}

#contents_right input {
	padding: 5px;
	border: 1px solid #ddd;
	background: #fff;
	font-size: 95%;
    margin: 4px 0;
}

#contents_right textarea {
	padding: 5px;
	border: 1px solid #ddd;
	background: #fff;
	width: 460px;
	height: 150px;
	font-size: 95%;
    margin: 4px 0;
}

#contents_right :placeholder-shown { color: #bbb }
#contents_right ::-webkit-input-placeholder { color: #bbb; }
#contents_right :-moz-placeholder { color: #bbb; opacity: 1; }
#contents_right ::-moz-placeholder { color: #bbb; opacity: 1; }
#contents_right :-ms-input-placeholder { color: #bbb; }

/***** Footer *****/

#footer {
	width: 100%;
	height: 310px;
	margin: 70px auto 0;
	overflow: hidden;
}

#pagetop {
	width: 100%;
	border-bottom: 1px solid #ddd;
	text-align: right;
}

#pagetop img {
    position: fixed;
    right: 20px;
    bottom: 290px;
    border: 1px solid #f1f1f1;
	width: 60px;
    -webkit-box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
	box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
}

#footer a { color: #000; }

#footer_left {
	float: left;
	width: 50%;
	margin-top: 45px;
}

#footer_left h4,
#footer_left p { margin-left: 30px; }

#footer_left h4 img { width: 340px; }

#footer_left p {
	font-size: 80%;
	margin-top: 20px;
}

#footer_right {
	float: right;
	width: 50%;
	margin-top: 45px;
	text-align: right;
}

#footer_right ul li {
	display: inline;
	margin-right: 30px;
	font-size: 80%;
}

#footer_right ul li img {
	width: 31px;
	margin-top: 25px;
    vertical-align: middle;
}

#footer_right address {
	margin: 60px 30px 0 0;
	font-size: 70%;
	font-style: normal;
}


/* =Small PC3 Styles
-------------------------------------------------------------- */

@media screen and (max-width: 1439px) {

#supporter ul li { margin: 7px 15px; }
#supporter ul li:first-child { margin: 0 15px 0 0; }
#supporter ul li:last-child { margin: 0 0 0 15px; }
#supporter ul li img { height:50px; }

#publication ul li img { margin-top: 20px; height: 290px; }

#teaser { width: 550px; }
#teaser div { width: 550px; height: 130px; }
#teaser div span { top: 35px; }
#teaser div span large { font-size: 160%; }
#teaser div:nth-child(odd) span { left: 20px; }
#teaser div:nth-child(even) span { right: 20px; text-align: right; }

}/*end of 1439px*/


/* =Small PC2 Styles
-------------------------------------------------------------- */

@media screen and (max-width: 1279px) {

body { background-position: -20px; }

#header h1 { width: 400px; margin-top: 18px; }
#header h1 img { height: 63px; margin-left: 15px; }

#global_menu { margin-right: 15px; }
#global_menu ul li { padding: 0 28px 0 0; }
#global_menu ul li:nth-last-of-type(3) { padding-right: 25px; }
#global_menu ul li:nth-last-of-type(2) { padding-right: 25px; }

#contents_left { width: 220px; }
#contents_right { margin-right: -220px; }
.contents { margin-right: 220px; }

#cse-search-box input[type="text"] { width: 160px; }

#menu { width: 220px; }
#menu ul li a.arrow { width: 220px; height: 70px; font-size: 105%; }
#menu ul li a.arrow span { top: 12px; left: 12px; }
#menu ul li a.arrow small { top: 24px; font-size: 55%; }
.nav li ul { left: 220px; }

.tabs li a { width: 125px; font-size: 9.5pt; }

#supporter ul li { margin: 7px 13px; }
#supporter ul li:first-child { margin: 0 13px 0 0; }
#supporter ul li:last-child { margin: 0 0 0 13px; }
#supporter ul li img { height:45px; }

#publication ul li { width: 47%; }
#publication ul li img { height: 280px; }

#teaser { width: 430px; }
#teaser div { width: 430px; height: 120px; }
#teaser div span { top: 33px; }
#teaser div span large { font-size: 150%; }

.seibutsu-butsuri_old li { margin: 0 9px 18px; }
.seibutsu-butsuri_old li img { width: 130px; }

#footer_left h4, #footer_left p { margin-left: 20px; }
#footer_right ul li { margin-right: 20px; }
#footer_right ul li:last-child { margin-right: 15px; }
#footer_right address { margin: 60px 15px 0 0; }

}/*end of 1279px*/


/* =Small PC1 Styles
-------------------------------------------------------------- */

@media screen and (max-width: 1175px) {

.tabs li a { width: 112px; font-size: 9pt; }

#info h3 { margin-left: 3%; }
#info div.right { margin: 10px 3% 0 0; }

#publication ul li:first-child { margin-right: 10px; }
#publication ul li img { height: 240px; }

.seibutsu-butsuri_old li { margin: 0 5px 10px; }
.seibutsu-butsuri_old li img { width: 105px; }

}/*end of 1175px*/


/* =Tablet Styles2
-------------------------------------------------------------- */

@media screen and (max-width: 1023px) {

#global_menu ul li { font-size: 10pt; }

.tabs li a { width: 104px; font-size: 8.5pt; }

#publication ul li img { height: 230px; }
#publication div {
	width: 80px;
    height: 30px;
    font-size: 9.5pt;
}
#publication div p { padding-top: 5px; }

#paid-publicity dd { padding: 0 5px 0 12px; }
#paid-publicity dt { padding: 2px 5px 5px 12px; }

#teaser { width: 410px; }
#teaser div { width: 410px; height: 115px; }
#teaser div span { top: 30px; }
#teaser div span large { font-size: 140%; }

.seibutsu-butsuri { float: none; width: 100%; padding-bottom: 0; }
.seibutsu-butsuri img { width: 300px; }
.seibutsu-butsuri_old { float: none; width: 100%; }
.seibutsu-butsuri_old li { margin: 0 10px 20px; }
.seibutsu-butsuri_old li img { width: 150px; }

#main-visual_lower h1 { padding-left: 25px; font-size: 170%; }

#pagetop img { right: 0; width: 50px; }
#footer_left { width: 350px; }
#footer_left h4 img { width: 320px; }
#footer_right ul li { margin-right: 10px; }

}/*end of 1023px*/


/* =Tablet Styles1
-------------------------------------------------------------- */

@media screen and (max-width: 970px) {

.drawer-box,
.drawer-toggle,
.drawer-hamburger,
.drawer-nav {
	display: block;
	visibility: visible;
}

.sp { display: block; }
.pc, .sp2 { display: none; }

#header {
	height: 77px;
	position: fixed;
	top: 0;
	z-index: 50;
	-webkit-box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
	box-shadow: 0px 7px 25px -7px rgba(0,0,0,0.1);
}

#header h1 { margin-top: 17px; margin-left: -20px; }
#header h1 img { height: 40px; }

#body { margin-top: 77px; }

#contents_right #paid-publicity {
	display: block;
	visibility: visible;
	margin-top: 30px;
	overflow: hidden;
}

#contents_right #paid-publicity dl {
	float: left;
    width: 50%;
	height: 90px;
	margin: 0;
}

#contents_right #paid-publicity dl dt,
#contents_right #paid-publicity dl dd {
	width: 90%;
	text-align: center;
}

#contents_right #paid-publicity dl { height: 100px; }
#contents_right #paid-publicity dl dt { font-size: 90%; }
#contents_right #paid-publicity ion-icon { display: none; }

body { background-image: none; }

#header h1 { width: 100%; text-align: center; }
#header h1 img { margin: 0; }

#global_menu { display: none; }

#supporter ul li { margin: 5px 10px;}

#info th { width: 80px; }
#info th .icon { margin-left: 0; }
#info th, #info td { font-size: 90%; }

#contents_left { display: none; }
#contents_right { margin-right: 0; }
.contents { margin-right: 0; }
.contents_inner {
    width: 94%;
    max-width: 950px;
}

.contents_inner h2 { font-size: 125%; margin-bottom: 40px; }
.contents_inner h2:before { bottom: -7px; }
.contents_inner h2 span { font-size: 10pt; }
.contents_inner h3 { font-size: 110%; line-height: 1.5; }
.contents_inner h4 { font-size: 90%; }
.contents_inner p { font-size: 85%; }
.contents_inner p.text_center img { width: 94%; margin: 0 auto; }

.contents ul.items li,
.contents ol.numbers li { font-size: 85%; }

.anchor { font-size: 90%; }

.articles th,
.articles td,
.list tbody th,
.list tbody td,
.list2 tbody th,
.list2 tbody td { font-size: 85%; }

.list2 tbody th,
.list2 tbody td { line-height: 1.5; }

.pagebutton li { width: 180px; height: 110px; font-size: 105%; }
.pagebutton li a { width: 180px; height: 110px; }
.pagebutton li a ion-icon { font-size: 130%; }

#main-visual_lower {
    height: 110px;
    background: url(/includes/images/main-visual_lower.jpg) no-repeat top center #000;
    background-size: cover;
    text-align: center;
}

#main-visual_lower h1 {
    padding-left: 0;
    font-size: 140%;
}

#topicpass { margin: 20px 15px 0; font-size: 75%; }

.boxbutton { padding: 10px; font-size: 10pt; }
.w400 { width: 360px; margin: 5px 0; }

.seibutsu-butsuri img { width: 250px; }
.seibutsu-butsuri_old li { margin: 0 10px 20px; }
.seibutsu-butsuri_old li img { width: 165px; }

#footer_left { float: none; width: 100%; text-align: center; }
#footer_left h4, #footer_left p { width: 94%; margin-left: 3%; }
#footer_right { display: none; }


}/*end of 970px*/


/* =iPhone5 Landscape Styles
-------------------------------------------------------------- */

@media screen and (max-width: 666px) {

#drawer dl dd a[target="_blank"] {
    background: url(/includes/images/icon_window_white.png) no-repeat center right;
    background-size: 10px;
}

#drawer dl dd a {
    padding: 5px 13px 5px 5px;
}

#main-visual { height: 160px; }
#main-visual h1 { margin-top: 70px; }
#main-visual h1 img {
    width: 96%;
    margin-right: 2%;
}

#publication { float: none; width: 100%; padding-bottom: 30px; }
#publication ul li { width: 47%; font-size: 10pt; line-height: 1.5; }
#publication ul li img { margin-top: 0; height: 200px; }

#teaser {
	float: none;
    width: 100%;
}

#teaser div { width: 100%; height: 105px; }
#teaser div span { top: 25px; }
#teaser div span large {
	font-size: 120%;
	padding-right: 18px;
	background: url(/includes/images/icon_window_white.png) no-repeat right center;
    background-size: 12px;
}
#teaser div:nth-child(even) a {
    background-size: 44px;
}

.seibutsu-butsuri_old li img { width: 140px; }

.tabs li a { width: 145px; }

.list2 tbody th, .list2 tbody td {
    padding: 5px;
    font-weight: normal;
}

}/*end of 666px*/


/* =Smartphone Styles
-------------------------------------------------------------- */

@media screen and (max-width: 567px) {

.tabs { margin-bottom: 30px; }

#info h3 {
    font-size: 130%;
    letter-spacing: 4px;
    margin-left: 3%;
}

#info div.right a {
    font-size: 80%;
}

.pagebutton li { width: 160px; height: 120px; font-size: 105%; }
.pagebutton li a { width: 160px; height: 120px; }
.pagebutton li a ion-icon { font-size: 130%; }

.boxbutton { padding: 10px 5px; }
.w400 { width: 340px; margin: 5px 0; }

.seibutsu-butsuri img { width: 220px; }

#contents_right input[type="text"] { margin-top: 5px; }

#contents_right input,
#contents_right textarea { max-width: 96%; }

.list2 .nowrap a[target="_blank"] {
    background: none;
    padding-right: 0;
    margin-right: 0;
}

.list2 .nowrap a.pdf:after {
    content: "";
    padding-left: 0;
    margin-right: 0;
}

}/*end of 567px*/


/* =Small Smartphone Styles
-------------------------------------------------------------- */

@media screen and (max-width: 320px) {

.sp2 { display: block; }

#header h1 { margin-top: 18px; }
#header h1 img { height: 35px; }

#contents_right #paid-publicity dl { width: 100%; height: 70px; }
#contents_right #paid-publicity dl dd { font-size: 70%; }
#contents_right #paid-publicity dl dt { font-size: 85%; }

.contents_inner h2 { font-size: 115%; }
.contents_inner h3 { font-size: 105%; }
.contents_inner h4 { font-size: 90%; }
.contents_inner p { font-size: 80%; }

.anchor { font-size: 80%; }

.articles th,
.articles td,
.list tbody th,
.list tbody td,
.list2 tbody th,
.list2 tbody td { font-size: 80%; }

.boxbutton { padding: 10px; font-size: 10pt; }
.w400 { width: 270px; margin: 5px 0; }

.boxbutton2 {
    width: 266px;
	padding: 15px;
    font-size: 12pt;
	margin: 5px 0;
}

.button_wrapper li { margin: 0; }

.seibutsu-butsuri_old li img { width: 115px; }

#footer_left h4 img { width: 280px; }
#footer_left p { font-size: 75%; }

}/*end of 320px*/
