@charset "utf-8";

.sp{ display: none !important; }

@media screen and (max-width: 810px) {
  #MainArea{ background: none; font-size: 2.6vw; }
  #content{ width: 100%; font-size: 2.6vw; padding-top:0; }
}
@media screen and (max-width: 550px) {
  #MainArea{ font-size: 3.2vw; }
  #content{ font-size: 3.2vw; }
}

@media screen and (max-width: 810px) {
  #content:after{ display:none; }
  #MainArea img{ max-width: 100%; height: auto; }
  #ContentsArea:before{ display:none; }
  .pc{ display: none !important; }
  .sp{ display: block !important; }
  body { background: none; min-width: auto; }
  body:before{ background: #d6e2e7; }
  .nbo_header,.nxt_header{ display: none; }
  #sp_header{ background: #fff; text-align: center; padding: 5px; }
  #sp_header img{ width: 210px; margin: 0 auto; padding: 5px 0; }
  .social_buttons{ width: 95%; margin: 0 auto;  }
  .social_buttons li { margin-right: 5px; }
  .bnr a.pagetop{ padding-right: 0; width: 15%; }
  .bnr a.img{ max-width: 100%; width: 82%; border: 2px solid #4186fd; }
  .bnr.on{ right: 0; }

  
  #MainImgArea { height:auto; }
  #MainImgArea h1 { height:auto; position:static; }
  #MainImgArea h1 img{ max-width:100%; height:auto; position:static; transform:translateX(0); }

  .top-list{ position: relative; z-index:20; max-width:900px; width: 90%; margin: 5em auto; padding:0; }
  .top-list li{ margin:3em auto; background-color:#fff; }
  .top-list li a{ display:block; }
  .top-list li a:before{ top:calc(50% + 3em); }

  .top-cs{ margin-bottom:2em; }
  .top-cs2{ margin:2em auto; display:block; }
  .top-cs2 .logo{ text-align:center; margin-bottom:1em; }




  
  a.linkBtn { width: 90%; margin-top: 0;  }
  a.linkBtn:before{ left: 3px; top: 3px; width: calc(100% - 8px); height: calc(100% - 8px); border-radius: 6px; }
  
  #content-inner{ padding-top: 0; }
  #leftArea{ float: none; width: 100%; }
  #rightArea{ float: none; width: 100%; margin-top: 0; }
  #index{ display: none; }
  .Account{  width: 100%; min-width: auto;  margin: 0 auto 0;}

  .Account h2 { font-size:140%; }
  .Account h2:after{ top:-10px; width: 20px; height: 20px; background-size: cover;}


.Account .acc > h3 { margin:1em auto; font-size:110%; }

.Account.type2 { width:86%; }
.Account.type2 h3 { font-size:110%; }


  .acc { padding:2% 6%; box-sizing:border-box; }
  .acc > p { width: 100%; }
  .acc .st { margin-top:.5em; }
  
  .flex2 { display:block; }
  .flex2 > div{ margin-top:1.3em; width:100%; }
  
  .new:after{ right: -10px; top: -10px; width: 40px; height: 40px; }
  
  ul.logolist{ width: 90%; margin: 0 auto; padding: 0 0; justify-content: space-between; text-align: center; }
  ul.logolist li{ padding: 3% 0; width: 48%; }
  ul.logolist li a{ max-width: 230px; margin:  auto; }
  ul.logolist li a.movlink:before{ width: 80%; left: 10%;  }

  .link-box{  }
  .link-box > li{ padding: 5%; }
  .link-box > li a{ display: block; font-size: 140%;}
  .link-box > li a span{ display: block; text-align: left; margin-top: .5em; }

  .fig{ margin: 0 0 20px; width: 100%; margin-left: 0; }
  .fig .figimg,.fig .figtxt{  }
  .fig h3 {  font-size:100%;  }
  .fig .figtxt h3{ text-align: left; padding: .5em .8em; }
  .fig > p{ font-size: 90%;}
  
  .photo{ width: 100%; }
  .photo.R, .photo.L { float: none; transform: translateX(0); margin: 5px 0 15px 0; }
  .photo.R { text-align: right;}
  .photo.R > p,.photo.L > p { padding: 0; }

  .photoW{
  margin: 2em 0;
}
.photoW:before{ display:none; }
.photoW > div{ display: block; }
.photoW .ph{ width: 100%; transform: translateX(0); text-align: center; }
.photoW .txt{ width: 100%;  }
.photoW .txt:before{ display:none; }
.photoW .txt:after{ width:100%; left:0; }
.photoW.R { background-color:none; }
.photoW.R > div{ transform: translateX(0); }
.photoW.R .ph{ transform: translateX(0); }
.photoW.R .txt{ transform: translateX(0); }


.ph-wid { margin: 3em auto; }
  
  .menu.type2 h2{ background-color: #003571; font-size: 100%; text-align: center; }
  .menu.type2 ul{ background-color: #e1ecf3; }
  .menu.type2 ul li a{ font-size: 110%; }
  #footArea { margin: 30px auto 0; padding: 5% 0; }
  #footArea > div{ padding: 0 5% 15px; }
  #footArea h2{ font-size: 90%; text-align: center; margin-top: 15px; }
  
  .link-area{ margin: 2em auto;  }
  .link-area h3{}
  
  .sp_contact{ border: 2px solid #ddd; padding: 0 15px 20px; }
  .sp_contact h2{ font-size: 100%;
  background-color: #000;
  color: #fff;
  position: relative;
  padding: 7px 15px;
  margin: 20px 0 15px;
  letter-spacing: 0.3em; }

  dl { width: 100%; }
  
  
  
  .footArea dl{ width: 100%; display: block; }
.footArea dl dt{  padding-bottom: 1em; }
.footArea dl dd{ padding: 1em 0 0; border-width: 1px 0 0 0; margin: 0; }
.footArea dl dd p{  }
.footArea .logo{ margin: 20px 0; }
  

}

@media screen and (max-width: 615px) {
  .top-list li a:before{ top:calc(50% + 2em); }
}

@media screen and (max-width: 480px) {
  h1{ top:7em; }
}





