@charset "utf-8";

/* ========BASIC======== */
html {
    overflow-y:scroll;
}

body {
    background:#efefef;
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.00, #efefef), color-stop(0.80, #fff));
    background:-webkit-linear-gradient(top, #efefef 0%, #fff 80%);
    background:-moz-linear-gradient(top, #efefef 0%, #fff 80%);
    background:-o-linear-gradient(top, #efefef 0%, #fff 80%);
    background:-ms-linear-gradient(top, #efefef 0%, #fff 80%);
    background:linear-gradient(to bottom, #efefef 0%, #fff 80%); /* ベンダープレフィックス無し（標準） */
    color:#000;
    font-family:"Meiryo", "Hiragino Kaku Gothic ProN W3", "Hiragino Kaku Gothic Pro W3", "Yu Gothic", verdana,sans-serif;
    font-size:14px;
    letter-spacing:1px;
    line-height:1.6em;
    margin:0;
    padding:0;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    text-align: justify;
    text-justify: inter-ideograph;
}

br {
    letter-spacing:normal;
}

a {
    color:#05507c;
    text-decoration:none;
}

a:hover {
    color:#05507c;
    text-decoration:underline;
}

h1 {
    margin:0;
}

h2 {
    background:#770000;
    background:-webkit-gradient(linear, left bottom, left top, color-stop(0.80, #9b0000), color-stop(0.00, #BF2E31));
    background:-webkit-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-moz-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-o-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-ms-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:linear-gradient(to top, #9b0000 0%, #BF2E31 80%); /* ベンダープレフィックス無し（標準） */
    clear:both;
    color:#fff;
    font-size:18px;
    font-weight:normal;
    line-height:2.0;
    margin:0 0 20px 0;
    padding:0 10px;
}

h3 {
    border-bottom:1px dotted #9B0000;
    clear:both;
    color:#9B0000;
    font-size:18px;
    font-weight:normal;
    line-height:1.8;
    margin:10px 0;
    padding:0 10px;
}

h4 {
    background:#ccc;
    background:-webkit-gradient(linear, left bottom, left top, color-stop(0.85, #ccc), color-stop(0.00, #f3f3f3));
    background:-webkit-linear-gradient(bottom, #f3f3f3 0%, #ccc 85%);
    background:-moz-linear-gradient(bottom, #f3f3f3 0%, #ccc 85%);
    background:-o-linear-gradient(bottom, #f3f3f3 0%, #ccc 85%);
    background:-ms-linear-gradient(bottom, #f3f3f3 0%, #ccc 85%);
    background:linear-gradient(to top, #f3f3f3 0%, #ccc 85%);
    clear:both;
    color:#000;
    font-size:15px;
    font-weight:normal;
    line-height:2.0;
    margin:0;
    padding:0 10px;
}

h5 {
    background:#f1f1f1;
    border:0;
    color:#000;
    font-size:14px;
    font-weight:normal;
    line-height:2.0;
    margin:0;
    padding:0 10px;
    position: relative;
}

h6 {
    border-left:5px solid #000;
    font-size:13px;
    font-weight:normal;
    line-height:2.0;
    margin:0;
    padding:0 10px;
}


p {
    margin:10px;
}

ul,ol,dl {
    margin:10px;
    padding:0;
}

li {
    margin:0 0 0 30px;
    padding:0;
}

dt {
    margin:0;
    padding:0;
}

dd {
    background:#f1f1f1;
    margin:0 0 1em 0;
    padding:10px;
}

table {
    font-size:12px;
}

table {
    border-collapse:collapse;
    border-color:#999;
    border-spacing:0;
    border-style:solid;
    line-height:1.8;
    margin:10px;
    width:600px;
}

table th {
    background:#EFEBEF;
    border:1px solid #999;
    border-width:0 0 1px 1px;
    font-weight:bold;
    padding:5px;
    text-align:left;
}

table td {
    border:1px solid #999;
    border-width:0 0 1px 1px;
    padding:5px;
    text-align:left;
}

table td ol {
    margin:0;
    padding:0 0 0 30px;
}

table td li {
    margin:0;
    padding:0;
}

/* ========TEMPLATE LAYOUT======== */
#container {
    background:#fff;
    border:1px solid #ddd;
    box-shadow:0 0 10px #bfbfbf;
    -moz-box-shadow:0 0 10px #bfbfbf; /* Firefox用 */
    -webkit-box-shadow:0 0 10px #bfbfbf; /* Safari,Google Chrome用 */
    margin:30px auto;
    padding:20px;
    width:1020px;
}

#header {
    margin-bottom:0;
    height: 60px;
    width:1020px;
}

#headMenu {
    height: 60px;
    position: relative;
}

#topContents {
    height:300px;
    overflow:hidden;
    position:relative;
    width:1020px;
}

#contents {
    background:#fff;
    float:left;
    padding:10px 0;
    width:1020px;
}

#footer {
    clear:both;
    width:1020px;
}

#footMenu {
    float:left;
    margin-top:10px;
    position: relative;
    width:1020px;
}

#copyright {
    clear:both;
    width:1020px;
}

/* ========TOP CONTENTS CUSTOMIZE======== */
.topContentsL{
    float:left;
    padding: 0 0 0 20px;
    width:360px;
}

.topContentsL1{
    font-size: 17px;
    font-weight: bold;
    height: 50px;
    line-height: 50px;
    text-align: center;
    width: 340px;
}

.topContentsL2{
    font-size: 14px;
    line-height: 1.6em;
    width: 340px;
}

.topContentsR{
    float:right;
    text-align:center;
    width:640px;
}

/* ========CONTENTS CUSTOMIZE======== */
/* TOPNAVI CUSTOMIZE */
.topNavi {
    margin-left:-10px;
    margin-top:10px;
    overflow:hidden;
    position:relative;
}

.topNavi {
    height:1em;
    overflow:visible;
}

.topNaviColumn {
    box-shadow: 0 5px 10px #cccccc;
    display:block;
    float:left;
    margin-left:20px;
    width:320px;
}

.topNaviColumn h4 {
    width:320px;
    background:-webkit-gradient(linear, left bottom, left top, color-stop(0.80, #9b0000), color-stop(0.00, #BF2E31));
    background:-webkit-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-moz-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-o-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:-ms-linear-gradient(bottom, #9b0000 0%, #BF2E31 80%);
    background:linear-gradient(to top, #9b0000 0%, #BF2E31 80%); /* ベンダープレフィックス無し（標準） */
    color:#fff;
    font-size:18px;
    padding:10px 0px;
    text-align: center;
}

.topNaviColumn h4 a {
    color:#fff;
}

.topNaviColumn h4 a:hover {
    border-bottom:2px solid #fff;
    text-decoration:none;
}

.topNaviCon {
    padding: 0 0 2em 0;
    position:relative;
}

.topNaviPhoto {
    overflow: hidden;
    margin: 10px auto;
    width: 250px;
    height: 50px;
}

.imgEff {
    position:relative;
    width: 250px;
    height: 50px;
    transition-duration: 0.3s;
}

.imgEff:hover {
    transform: scale(1.1);
}

.imgEff a:before {
    content: "Read More";
    position: absolute;
    width: 250px;
    height: 50px;
    background: -webkit-radial-gradient(rgba(0, 0, 0, 0.4), #000000);
    background: radial-gradient(rgba(0, 0, 0, 0.4), #000000);
    transition-duration: 0.3s;
    opacity: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 16px;
    text-shadow: 0 0 2px #000;
    filter: blur(4px);
}

.imgEff a:hover:before {
    opacity: 1;
    transform: scale(1.1);
    filter: blur(0);
}

.topNaviDetail {
    bottom:0;
    position:absolute;
    text-align:right;
    width:300px;
}

.topNaviDetail a {
    background:url("../images/bg_arrow.gif") no-repeat left 50%;
    padding:0 0 0 10px;
}

/* MAIN CONTENTS CUSTOMIZE */
.conMain {
    float:left;
    width:720px;
}

.conMain section {
    margin:0 0 20px 0;
}

.conMain .member li {
    list-style:none;
    padding:2px 0;
}

.conMain .otherOB li {
    list-style:none;
    padding:10px 0;
}

.projects h3 {
    font-size:15px;
}

.publications li {
    list-style:none;
    padding:0 0 2rem 0;
}

/* LEFT CONTENTS CUSTOMIZE */
.conL {
    float:left;
    width:640px;
}

/* RIGHT CONTENTS CUSTOMIZE */
.conR {
    border:none;
    float:right;
    width:360px;
}

.conR h1{
    font-size: 15px;
    margin:10px 0 0 0;
}

.conR h5{
    font-size: 15px;
    margin-bottom: 5px;
}

.conR ul {
    clear:both;
    color:#000;
    font-size:15px;
    font-weight:normal;
    line-height:2.0;
    margin:0;
    padding:0 10px;
}
.conR li {
    background:url("../images/bg_arrow.gif") no-repeat left 45%;
    line-height: 2em;
    list-style:none;
    margin:0;
    margin-left:10px;
    padding:0 0 0 10px;
}

/* INFORMATION CUSTOMIZE */
.information {
    float:left;
    margin-left:10px;
    width:620px;
}

.information dl {
    height:240px;
    margin:0;
    margin-left:10px;
    overflow-x: hidden;
    overflow-y: auto;
}
.information dt {
    float:left;
    padding-top:5px;
}
.information dd {
    background:none;
    border-bottom:1px solid #ddd;
    margin:0 0 5px 0;
    padding:5px 0 5px 9em;
}

/* SUBCONTENTS CUSTOMIZE */
.subcontents{
    float:left;
    margin:20px 0 0 20px;
    width: 540px;
}

.subcontents h1 a{
    font-size:18px;
    line-height: 2.0em;
}

/* subMenu CUSTOMIZE */
.subMenu {
    border:none;
    float:right;
    top: 20px;
    width: 290px;
    height: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 20px;
    overflow-y: auto;
    overflow: hidden; /* hide scroll bar */
}

#sideMenu {
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    padding-right: 17px; /* Increase/decrease this value for cross-browser compatibility */
    box-sizing: content-box; /* So the width will be 100% + 17px */
}

.subMenu h5{
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.20, #aaa), color-stop(0.00, #888));
    background:-webkit-linear-gradient(top, #aaa 0%, #888 20%);
    background:-moz-linear-gradient(top, #aaa 0%, #888 20%);
    background:-o-linear-gradient(top, #aaa 0%, #888 20%);
    background:-ms-linear-gradient(top, #aaa 0%, #888 20%);
    background:linear-gradient(to bottom, #aaa 0%, #888 20%);
    font-size: 14px;
    font-weight: bold;
    height: 28px;
    margin: 0 0 5px 0;
    padding: 4px 10px 1px 10px;
}

.subMenu h5:hover {
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0.20, #666), color-stop(0.00, #444));
    background:-webkit-linear-gradient(top, #666 0%, #444 20%);
    background:-moz-linear-gradient(top, #666 0%, #444 20%);
    background:-o-linear-gradient(top, #666 0%, #444 20%);
    background:-ms-linear-gradient(top, #666 0%, #444 20%);
    background:linear-gradient(to bottom, #666 0%, #444 20%);
}

.subMenu h5 a{
    color: #FFFFFF;
    display:block;
    width: 100%; /* 横幅 */
}

.subMenu h5 a:hover {
    color: #ffcccc;
    outline:none;
    text-decoration:none;
}

.subMenu ul {
    background: #efefef;
    margin: 0 0 2px 0;
    padding: 0;
}
.subMenu li {
    background:url("../images/bg_arrow.gif") no-repeat left 50%;
    color: #000;
    line-height: 2em;
    list-style:none;
    margin:0 10px;
    padding:0 10px;
}

.subMenu li a {
    color: #444;
}

/* Others */
/* インデントを揃え用 */
.col-1 {
    display: inline-block;
    width: 22em;
}
.col-2 {
    display: inline-block;
    width: 14em;
}

.employmentList {
    margin:10px;
}

/* ========IMAGE/VIDEO LAYOUT======== */
.imgCenter {
    display: block;
    margin:20px;
    text-align:center;
}

.videoCenter {
    display: block;
    margin:20px;
    text-align:center;
}

/* ========HEADER CUSTOMIZE======== */
#header h1 {
    color:#9B0000;
    float:left;
    font-size:20px;
    line-height:1.0;
    margin:0;
    padding:10px;
}

/* ========HEAD MENU CUSTOMIZE======== */
#headMenu ul {
    font-size: 12px;
    margin:0;
    padding:10px;
    position: relative;
    text-align: center;
}

#headMenu li {
    float:left;
    margin:0;
    overflow:hidden;
    padding:0 11.5px;
}

#headMenu li a {
    color:#000;
    display:block;
    font-weight:bold;
}

#headMenu li a:hover {
    /* border-bottom:3px solid #9B0000; */
    color:#888;
    outline:none;
    text-decoration:none;
}

/* ========FOOTMENU CUSTOMIZE======== */
#footMenu ul {
    border-top:1px solid #ddd;
    margin:5px 0;
    padding:20px 0;
    text-align:center;
}

#footMenu li {
    display:inline;
    list-style:none;
    margin:0;
    padding:0 12px;
}

#footMenu li a {
    color:#333;
    font-weight:bold;
}

#footMenu li a:hover {
/*    border-bottom:3px solid #9B0000;*/
    color:#888;
    outline:none;
    text-decoration:none;
}

/* ========FOOTER CUSTOMIZE======== */
#copyright p {
    color:#999;
    font-size:11px;
    font-style:normal;
    line-height:3.0;
    text-align:center;
}

/* ========PAGRTOP CUSTOMIZE========= */
#pageTop {
    bottom:20px;
    position:fixed;
    right:20px;
}

#pageTop a {
    background:#222 url("../images/bg_pagetop.gif") 30px 50% no-repeat;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
    color:#fff;
    display:block;
    font-size:13px;
    padding:10px 30px 10px 42px;
    text-decoration:none;
}
#pageTop a:hover {
    background:#444 url("../images/bg_pagetop.gif") 30px 50% no-repeat;
}


/* ========ACCORDION MENU CUSTOMIZE========= */
.accordion-child
{
    display: none ;
}

.menuIcon {
    background: url("../images/menu_sicon.png") #cccccc no-repeat;
    display:  block;
    height: 33px;
    position: absolute;
    right: 0;
    top: 0;
    width: 33px;
}

.menuIcon a {
    height: 100%;
    position: relative;
    width: auto;
}

.menuIcon:hover {
    background: url("../images/menu_sicon_hover.png") #cccccc no-repeat;
}

.externalLink {
    display: block ;
}

.internalLink {
    display: none ;
}

/* ========SLIDE UNDER LINE CUSTOMIZE========= */
.headSlideLine{
    background-color:#9B0000;
    bottom: 1.2rem;
    height: 3px;
    position: absolute;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.footSlideLine{
    background-color:#9B0000;
    bottom: 1.2rem;
    height: 3px;
    position: absolute;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

/* ========SCROLL BAR CUSTOMIZE========= */
::-webkit-scrollbar{
    width: 10px;
}
::-webkit-scrollbar-track{
    background: #fff;
    border-left: solid 1px #ececec;
    border-right: solid 1px #ececec;
}
::-webkit-scrollbar-thumb{
    background:#ccc;
    border-radius: 10px;
    box-shadow: inset 0 0 0 2px #fff;
}

marker_yellow { background:linear-gradient(transparent 60%, #ffff00 0%); }