﻿@charset "UTF-8";

/**--------------------------------------------------
 * Reset
 **--------------------------------------------------*/
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
	border:0;
}
section, nav, article, aside, header, footer, figure, legend {
	display: block;
}

/**--------------------------------------------------
 * Block
 **--------------------------------------------------*/
html {
	height: 100%;
}
body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 92%;
	background-color: #f8f8f8;
	height: 100%;
	min-height: 100%;
	max-width: 1200px;
}
div#contents {
	overflow: auto;
	margin: 55px 0 33px;
	padding-bottom: 20px;
}
article {
	clear: both;
	margin: 10px 10px 40px;
}
section {
	clear: both;
	margin: 10px 20px 20px 10px;
}
h2 {
	font-size: 220%;
	color: #777;
	margin-bottom: 15px;
	padding-right: 38px;
	border-bottom: 3px solid #ffb05a;
	min-height: 30px;
	line-height: 100%;
	text-shadow: -1px 1px 0 rgba(255, 255, 255, 1);
	background: url('../img/alpaca_h2.png') no-repeat right bottom;
}
h3 {
	font-size: 170%;
	color: #555;
	border-bottom: 1px solid #ef7d00;
	margin-bottom: 10px;
	/*box-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);*/
	padding: 5px 21px 0 5px;
	min-height: 30px;
	background: url('../img/alpaca_h3.png') no-repeat right bottom;
	line-height: 100%;
}
h4 {
	font-size: 150%;
	color: #333;
	border-bottom: 1px solid #ef5e5a;
	margin: 5px;
	padding-left: 5px;
}
a {
	color: #ad5114;
}
a[name] {
	color: #000;
}
em {
	text-decoration: underline;
	font-weight: bold;
	color: #202020;
}
p {
	margin: 0 20px;
}

/**--------------------------------------------------
 * Header, Footer
 **--------------------------------------------------*/
header {
    width: 100%;
	max-width: 1200px;
	height: 50px;
	background-color: #222;
	margin-bottom: 30px;
}
footer {
    width: 100%;  
	max-width: 1200px;
	min-height: 18px;
	background-color: #222;
	padding: 5px 0 10px;
	color: #fff;
	text-align: center;
}
h1 {
	font-size: 30px;
	float: left;
	padding: 5px;
	margin-right: 30px;
	margin-left: 10px;
	text-shadow: 1px -1px 0 rgba(0, 0, 0, 1);
}
h1:first-letter {
	color: #ef7d00;
}
h1 a {
	text-decoration: none;
	color: #fff;
}
nav {
	float: right;
	margin-right: 70px;
}
nav ul {
	height: 45px;
	margin: 0;
	list-style: none;
	padding: 5px 0 0;
	text-align: center;
}
nav ul li{
	display: inline-block;
	margin: 0;
}
nav ul li a {
	color: #fff;
	text-decoration: none;
	font-size: 110%;
	height: 35px;
	display: inline-block;
	padding: 10px 15px 0;
	border-left: solid 1px #222;
	border-right: solid 1px #222;
	text-shadow: 1px -1px 0 rgba(0, 0, 0, 1);
}
nav ul li#navi_selected a {
	color: #ef7d00;
	background: url('../img/navi_selector.png') no-repeat center bottom;
	border-left: solid 1px #ffb05a;
	border-right: solid 1px #ffb05a;
}
nav ul li a:hover {
	color: #ef7d00;
	border-left: solid 1px #ffb05a;
	border-right: solid 1px #ffb05a;
}

/**--------------------------------------------------
 * 箇条書きリスト
 **--------------------------------------------------*/
ul {
	list-style: disc outside;
	margin-left: 30px;
	margin-right: 10px;
	position: relative;
}
ul li {
	margin: 3px;
}

/**--------------------------------------------------
 * 数字リスト
 **--------------------------------------------------*/
ol {
	counter-reset:li;
	padding:0;
	list-style:none;
}
ol li {/*本文の装飾*/
    position:relative;
	font-size: 90%;
    margin: 0 0 4px 50px;
    padding: 2px 8px;
    min-height: 36px;
    /*border-bottom: 1px solid #ffffff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15);*/
}
ol li:before {/*数字の装飾*/
    content:counter(li)".";
    counter-increment:li;
    position:absolute;
    top: -5px;
    left: -2em;
    width: 2em;
    padding: 4px 0;
    text-align: right;
    font-size: 180%;
	color: #aaa;
	font-style: italic;
}
ol li.list_selected {
	color: #ef7d00;
}
ol li.list_selected p {
	border: 1px solid #ffb05a;
	background-color: #fff0cf;
}

/**--------------------------------------------------
 * 定義リスト
 **--------------------------------------------------*/
dl {
	margin-left: 20px;
}
dt {
	padding-top: 5px;
	font-size: 120%;
	line-height: 130%;
	color: #333;
	text-decoration: underline;
}
dt:first-child {
	margin-top: 0;
}
dd {
	margin-left: 20px;
}
dd.sub {
	margin-left: 35px;
}
dl#whatsnew dt {
	text-decoration: none;
}
dl.awards dt {
	font-size: 100%;
}

dl.date dt, dl.dateRange dt {
	clear: left;
	float: left;
	font-size: 100%;
}
dl.date dd {
	margin-left: 6em;
}
dl.dateRange dd {
	margin-left: 11em;
}
dl.date dt + dd, dl.dateRange dt + dd {
	padding-top: 3px;
	padding-bottom: 2px;
}
dl.date dd.sub {
	margin-left: 10em;
	font-size: 92%;
}
dl.dateRange dd.sub {
	margin-left: 13em;
	font-size: 92%;
}


/**--------------------------------------------------
 * Home用
 **--------------------------------------------------*/
section#history {
	margin: 0px 10px 10px;
	text-align: right;
	font-size: 82%;
}
#profile {
	position: relative;
}
#profile dl {
	margin-right: 220px;
}
#profile figure {
	position: absolute;
	top: 60px;
	right: 0px;
	width: 200px;
	margin: 0;
}
#profile figure img {
	border-radius: 5px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

/**--------------------------------------------------
 * Publication用
 **--------------------------------------------------*/
a.pdf {
	background: url('../img/pdficon_small.gif') no-repeat right center;
	padding-right: 18px;
}
em.awards {
	text-decoration: none;
	font-weight: normal;
	color: #ef7d00;
	font-size: 92%;
	background: url('../img/star.gif') no-repeat left center;
	padding-left: 16px;
	margin-left: 3px;
}


/**--------------------------------------------------
 * Research 用
 **--------------------------------------------------*/
.research p {
	margin-bottom: 20px;
}

.intro dt {
	clear: left;
	float: left;
	margin: 0 5px 0 0;
	font-size: 170%;
	color: #666;
}
.intro dd {
	font-size: 130%;
	padding-top: 0.3077em;
	color: #222;
}

/**--------------------------------------------------
 * 画面サイズ769px以上
 **--------------------------------------------------*/
@media screen and (min-width: 769px){
header {
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 1;
}
footer {
    position: fixed !important;
    bottom: 0;
    left: 0;
}
footer br {
	display: none;
}
}

/**--------------------------------------------------
 * 画面サイズ768px以下
 **--------------------------------------------------*/
@media screen and (max-width: 768px){
div#contents {
	margin: 0;
	padding: 0;
}
article {
	margin: 10px 5px 20px;
}
section {
	margin: 10px 5px 15px;
}
header {
	height: 66px;
	margin-bottom: 10px;
	min-width: 290px;
}
footer {
	height: 32px;
	padding: 5px 0 10px;
	font-size: 92%;
}
h1 {
	font-size: 26px;
	float: none;
	margin: 0;
	padding: 0;
	text-align: center;
	height: 35px;
}
nav {
	border-top: solid 1px #ffb05a;
	float: none;
	margin-right: 0;
}
nav ul {
	height: 30px;
	padding: 0;
}
nav ul li a {
	color: #fff;
	text-decoration: none;
	font-size: 100%;
	height: 25px;
	display: inline-block;
	padding: 5px 10px 0;
}
nav ul li#navi_selected a {
	background-position: 50% 115%;
}
h2 {
	font-size: 190%;
	margin-bottom: 10px;
	border-bottom: 2px solid #ffb05a;
	min-height: 32px;
}
h3 {
	font-size: 140%;
	margin-bottom: 8px;
	min-height: 26px;
}
#history {
	margin: 2px 10px 10px;
}
ol li {
    margin-left: 40px;
}
}
/**--------------------------------------------------
 * 画面サイズ600px以下
 **--------------------------------------------------*/
@media screen and (max-width: 600px){

#profile figure {
	position: static;
	margin: 10px 30px;
}
#profile dl {
	margin-right: 0;
}
dl {
	margin-left: 5px;
}
dd, dl.date dd, dl.dateRange dd {
	margin-left: 10px;
}
dd.sub, dl.date dd.sub, dl.dateRange dd.sub {
	margin-left: 20px;
}
dl.date dt, dl.dateRange dt {
	float: none;
}
ul {
	margin-left: 20px;
}
}

/**--------------------------------------------------
 * 画面サイズ400px以下
 **--------------------------------------------------*/
@media screen and (max-width: 400px){
nav ul li a {
	font-size: 95%;
	padding: 5px 5px 0;
}

}