
@media screen and (max-width:680px) and (orientation:landscape){

}
@media screen and (max-width:1024px){
  #keyvisual {
    height: 100vh;
    min-height: auto;
  }
  #keyvisual .content{
    padding:4%;
    top:5vh;
    transform: translate(-50%,0%);
  }
  #keyvisual .inner{
    display: block;
  }
  #keyvisual h2 .logo{
    width:19vw;
  }
  #keyvisual h2 {
    font-size:5vw;
  }
#careers.layoutB .textarea .btn a{
  margin-left:0;
  margin-right:auto;
}
  #key
  .inner{
    max-width: 100%;
    margin:auto;
  }
  #archive .lineup .inner,
  div[class^="layout"] .inner{
  padding: 4%;
  }
  div[class^="layout"] .textarea{
    padding:0 3%;
  }
  div[class^="layout"] .textarea p br{
    display: none;
  }

}



@media screen and (max-width:769px){
  html{
    font-size:2.7vw;
    }
  .sp{
    display: block;
  }
  .pc{
    display: none;
  }
  .brsp,
  .brsp768{
    display: inline;
  }
  p{
    font-size:1rem;
  }


  #header .header{
    right:0;
  }
  #company .inner{
    padding:20px;
  }

/*/----------------contents -------------*/

/*/----------------------------/*/
.visible768{
  display: block;
}
.hidden768{
  display: none;
}



  #header .header{
    width:15vw;
    height: 15vw;
    padding:0;
    top:auto;
    bottom:20px;
    right:20px;
  }
  #globalmenu .menu {
    position: static;
    padding:20px;
  }
  #nav-drawer {
    width: 15vw;
    height: 15vw;
    border-radius: 8vw;
  }
  #nav-drawer,
  #nav-drawer.home {
    background:#323232;
  }
  .hanbargar,
  .hanbargar::before,
  .hanbargar::after,
  #nav-drawer.home .hanbargar,
  #nav-drawer.home .hanbargar:before,
  #nav-drawer.home .hanbargar:after{
    background-color:white;
  }
  /* keyvisual */

  /*/----------------contents -------------*/


  #archive .lineup ul {
    display: block;
  }
  #archive .lineup ul li{
    width:auto;
    padding:4%;
  }
  #archive .lineup ul li a{
    width:100%;
  }
  div[class^="layout"] .inner{
    flex-wrap: wrap;
    padding: 4% 0 10%;
  }
  div[class^="layout"] .textarea p, div[class^="layout"] .textarea .btn a{
    font-size:1.1rem !important;
  }
  div[class^="layout"] .textarea p br{
    display: inline;
  }
  div[class^="layout"] .title h3{
    font-size:2rem;
  }
  .layoutA .textarea,
  .layoutA .photoarea,
  .layoutB .textarea,
  .layoutB .photoarea{
    width:100%;
    margin:auto;
  }
  .layoutA .textarea,
  .layoutB .textarea,
  .layoutN .textarea{
    order:1;
    padding:4%;
    font-size:1rem;
    max-width: 640px;
    margin:auto;
  }
  .layoutA .photoarea,
  .layoutB .photoarea,
  .layoutN .photoarea{
    order:2;
    text-align: center;
  }
  .photoarea .btn a{
    margin:auto;
  }
  .home .layoutA .textarea,
  .home .layoutB .textarea{
    width:100%;
  }
  #archive .lineup ul li{
    padding-left:7vw;
    padding-right:7vw;
  }
  /* #dtpdesign.layoutB .photoarea{
    margin-top:-20%;
  } */

.pan p{
  margin-left:1rem;
}
#example .example{
  display: block;
}
#example .example h4,
#example .example ul{
  width:100%;
  text-align: center;
  margin:4% auto;
}
#private p {
  font-size:1rem !important;
}
#contact .formarea{
  width:100%;
  margin:0;
}
#contact .formarea dl dd label{
  display: block;
}
#contact .formarea dl dd input,
#contact .formarea dl dd textarea{
  background:#f2f2f2;
}
#confirm .formarea dl dt{
  color:#888;
}
#confirm .formarea dl {
  border-bottom:1px solid #ccc;
  padding:10px 0;
}
#consultation.layoutA h4,
#careers.layoutB h4{
  font-size:1.2rem;
  margin-bottom: 6%;
}
#consultation.layoutA .textarea,
#careers.layoutB .textarea{
height: auto;
margin-right:0%;
margin-bottom: 30px;
width:100%;
}
#design.layoutA .inner,
#movie.layoutA .inner{
  display: block;
  position: relative;
}
#design.layoutA .photoarea,
#movie.layoutA .photoarea{
  width:100%;
  position: absolute;
  top:0;
  left:0;
}
#design.layoutA .textarea,
#movie.layoutA .textarea{
  display: block;
  height: auto;
  margin:0 auto ;
  width:100%;
}
#design.layoutA .textarea .text,
#movie.layoutA .textarea .text{
  margin:auto;
}
#design .title,
#movie .title{
  margin-top:8vw;
}

#movie .title h3{
  color:rgb(50,50,50);
}
#design.layoutA .title h3,
#movie.layoutA .title h3{
  text-align: center;
}
#movie.layoutA .title .small{
  color:#FB6F2D;
}
#design .title .small{
  color:white;
}
#design.layoutA .textarea p,
#movie.layoutA .textarea p{
  text-align: center;
  margin-top:43vw;
}
#design.layoutA .textarea .contact_area,
#movie.layoutA .textarea .contact_area{
  margin:auto;
  text-align: center;
}
#movie .textarea .contact_area {
  color:white;
}
#design .textarea .contact_area {
  color:rgb(50,50,50);
}
#movie .textarea .contact_area .btn a,
#design .textarea .contact_area .btn a{
  text-align: center;
  margin:auto;
}
    #design .textarea .contact_area .btn a,
    #movie .textarea .contact_area .btn a {
      background:#FC6F2D;
      color:white;
    }
    #design .textarea .contact_area .btn a:hover,
    #movie.textarea .contact_area .btn a:hover{
      background:white !important;
      color:#FC6F2D;
    }
    .example_area{
      padding-top:60px;
    }

#footer .flex-footer{
  height: auto;
  padding-top:50px;
}
#footer .footerlink ul {
  flex-wrap:wrap;
}
#footer .footerlink ul li{
  margin:2% 4%;
}
#footer .flex-footer .inner{
  flex-wrap: wrap;
}
#footer .flex-footer .elem.co{
  width:100%;
  text-align: center;
  order:2;
}
#footer .flex-footer .elem.inq{
  width:100%;
  text-align: center;
  order:1;
}
#footer .flex-footer .elem p{
  text-align: center;
}
#footer .flex-footer .elem .btn{
  margin:4% 0 10%;
}
#footer .flex-footer .elem .btn a{
  margin:auto;
}
#footer .flex-footer .elem .media{
  justify-content: center;
}
#footer .btm_logo{
  margin:auto;
}
/*//////// 769 ///////////*/
}
@media screen and (max-width:640px){
  html{
    font-size:3.5vw;
    }
    #keyvisual h2 {
      font-size:max(27px,6vw);
    }
    #keyvisual h2 .row01,
    #keyvisual h2 .row02{
      margin-bottom:15px;
    }
    #keyvisual h2 .small{
      font-size:16px;
    }


    .example_area .example ul.flex li{
      width:calc(50% - 20px);
      margin:10px;
      text-align: center;
    }
    .example_area h5{
      margin:40px 0 0px;
    }
    #matterport .example_area .example p{
      padding:0 1em;
    }
    .example_area .example ul.flex{
      margin-top:30px;
    }
    /*------ movie ------*/
    .about_matter ul.point{
      flex-wrap: wrap;
    }
    .about_matter ul.point li{
      max-width: :80px;
      padding:10px;
    }
    #company .example_area{
      padding-top:0;
    }
    #company table{
      width:100%;
    }
    #company table tr th,
    #company table tr td{
      padding: .5em 1em;
      line-height: 2;
    }
    #company table tr th {
      width:25%;
    }
    #company table tr td {
      width:75%;
    }
    #company .large{
      font-size:1.1em;
    }
#footer .co .btm_logo{
  width:40%;
}

.visible640{
  display: block;
}
.hidden640{
  display: none;
}
.brsp640{
  display: inline;
}

  /*//////// 640 ///////////*/
}

@media screen and (max-width:480px){


.bo{
  padding:4%;
}
#contact .tel a.telno{
  font-size:1.5rem;
}
  .brsp480{
    display: inline;
  }
.visible480{
  display: block;
}
.hidden480{
  display: none;
}

/*//////// 480 ///////////*/
}
