@charset "UTF-8";
/* 全画面サイズ共通 */

#overview th{ min-width: 100px;}

#introduction > img{
  display: block;
  margin: auto;
}

  
@media all and (-ms-high-contrast:none){
  /* IE11対策 */ 
  #introduction .catchcopy p{ max-height: 50rem; }
}

@media screen and (min-width: 769px) { 
  /* PC・タブレット専用 */
  #introduction{
    width: 810px;
    margin: 0 auto 40px;
  }

  #introduction .flexbox-pc{
    justify-content: space-between;
    margin-top: 80px;
  }

  #introduction .catchcopy{ order: 2; }

  #introduction .catchcopy p{
    font-size: 2.68rem;
    margin: 0;
  }

  #introduction .main{
    order: 1;
    width: 620px;
  }
  
  #introduction .main p{ line-height: 3rem; }

  #overview .map{ margin: 50px auto 60px; }

  #files .file-list{
    display: flex;
    flex-wrap: wrap;
  }

  #files .file-list .rc-button{ width: 48%; }
}

@media screen and (min-width: 769px) and (max-width: 1150px) { 
  /* タブレット～PCの小さい画面 */  
  #introduction{ width: 74%; }

  #introduction .flexbox-pc{ justify-content: flex-start;}
  
  #introduction .main{ width: 72%; }

  #introduction .catchcopy{ width: 28%; }

  #introduction .catchcopy p{ width: 100%; }
  

}

@media screen and (max-width: 768px){
  /* スマホ専用 */  
  #introduction .catchcopy p{
    text-align: center;
    margin-top: 20px;
    font-size: 2.3rem;
  }

  #overview .map{ margin: 30px auto; }

}

#introduction > img { object-fit:cover; }
