body{
  background-color: #DCDDDD;
}

#mainContentsContainer{
  width: 90vw;
  max-width: 1200px;
  min-height: 100vh;
  margin: 0 auto;
  background-color: #E8E8E8;
}

#bodyContainer{
  width: 90%;
  margin: 30px auto 0 auto;
}

#content{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 35px 15% 0 0;
}

#body_Menu{
  width: 215px;
}

#body_Contents{
  width: calc(100% - 230px);
  margin-top: -4px;
}

#body_Menu_CurrentlyDisplayed{
  font-size: 12pt;
  margin: 0;
  font-weight: 100;
}

#body_Menu > ul{
  list-style: none;
  padding: 5px 10px;
}

#body_Menu > ul > li{
  margin: 0 0 0 -10px;
  letter-spacing: -0.05em;
  font-size: 10pt;
  line-height: 1.6;
}

#body_Menu > ul > li.displayed{
  color: #9135CE;
}

#body_Menu > ul > li.displayed:before{
  content: "▶ ";
  font-size: 8pt;
  vertical-align: 1.1px;
 }

#body_Menu > ul > li:not(.displayed):before{
  content: "　 ";
  font-size: 8pt;
}

#body_Contents h1{
  font-size: 14pt;
}

#body_Contents h2{
  margin-left: 18px;
  margin-bottom: 5px;
  font-size: 11pt;
}

#body_Contents li{
  list-style: none;
  margin: 9px 0 9px -2em;
  font-size: 10pt;
  line-height: 1.4;
  text-align: justify;
  text-indent: -2.3em;
  padding-left: 2.5em;
}

#body_Contents ul.reducedLineHeight li{
  margin: 6px 0 6px -2em;
  padding-left: 5px;
  text-indent: 0;
}

#body_Contents p {
  letter-spacing: -0.05em;
  font-size: 10pt;
  line-height: 1.6;
  text-align: justify;
  text-indent: 1em;
}

#body_Contents p:last-child{
  margin: 0 0 60px 0;
}

#body_Contents iframe.youtubeMovie{
  margin-left: 18px;
  margin-bottom: 18px;
  width: calc(100% - 18px);
}

#body_Contents.professional-biography ul{
  display: flex;
  flex-direction: column-reverse;
}

div.tooltip{
  display: inline;
  cursor: pointer;
  position: relative;
}

div.tooltip > div{
  display: none;
  position: absolute;
  top: 25px;
  left: 0;
  background-color: #fff;
  border-radius:3px;
  z-index:2;
}

div.tooltip > div > img{
  max-width: 300px;
  max-height: 300px;
  width: auto;
  height: auto;
  margin: 5px;
  display: block;
}

div.tooltip:hover > div{
  display: block;
}
 
div.tooltip > div:before{
  content:''; 
  display:block; 
  position:absolute;
  height:0; 
  width:0; 
  top:-18px; 
  left:15px; /* overridden by profile.js#tooltip.set() */
  border:13px transparent solid; 
  border-right-width:0; 
  border-left-color:#fff; 
  -webkit-transform:rotate(270deg);
  -o-transform:rotate(270deg);
  transform:rotate(270deg);
}

p#abstract_en{
  text-indent: 0;
  padding-left: 18px;
}

#manuContainer hr{
  border: none;
  border-top: 1px solid #aaa;
  margin: 10px auto 10px 0;
  width: 85%;
}

@media screen and (max-width: 800px){
  body{
   background-image: none;
   background-color: #EFEFEF;
  }
  
  #mainContentsContainer{
    width: 100vw;
  }
  
  #bodyContainer{
    width: 94%;
    margin: 0 auto;
  }
  
  #content{
    margin: 0;
    display: block;
  }
  
  #body_Menu_CurrentlyDisplayed{
    margin: 15px auto;
  }
  
  #body_Menu{
    width: 100%;
  }
  
  #body_Menu > ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-right: 30px;
    width: 100%;
  }

  #body_Menu > ul > li{
    margin-right: 30px;
  }
  
  #body_Contents{
    width: 94%;
    margin: 0 auto;
  }
  
  #body_Contents, #body_Contents *{
    font-size: calc(6pt + 2vw);    
  }
  
  #body_Contents li{
    padding-left: 1.7em;
  }
}