@media screen and (min-width:1024px) {

  .pc-dsp { display:block; }
  .sp-dsp { display:none; }

/* ---- TOP AREA ---------------------------- */

.br_sp{
  display: none;
}

#topArea{
  width: 100%;
  height: 100vh;
  margin: 0;
  position: relative;
  overflow: hidden;
}

.mainCpy{
    position: relative;
    top: 40%;
    left: 15%;
}

h2{
  color: #fff;
  font-size: 2.3em;
  font-weight: 600;
  line-height: 1.2em;
  clear: both;
}

#topArea ul span{
  display: inline-block;
  width: 35%;
  border-bottom: 1px solid #fff;
}

#topArea li img{
  width: 10%;
  height: auto;
  margin: 1.5% 0;
  float: left;
}

#topArea ul .text{
   margin: 2.5% 11%;
   font-size: 0.7em;
   color: #fff;
}


#topArea video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-size: cover;
  z-index: -999;
}

#copyright{
  position: fixed;
  font-weight: 700;
  right: 4%;
  bottom: 3%;
  font-size: 0.8vw;
  color: #fff;
}



.scroll a {
  font-weight: 700;
  display: inline-block;
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 2;
  padding: 10px 10px 110px;
  overflow: hidden;
  color: #fff;
  font-size: 0.8vw;
  font-family: 'Josefin Sans', sans-serif;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}

.scroll a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #fff;
}


.scroll a::after {
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}




/* ---- MissionStrongth ---------------------------- */

#missionStrongth{
  width: 100%;
  height: auto;
  padding: 5% 0;
  background: rgba(0,0,0,0.8);
}

.missionStrongthWrapper{
  padding: 0 10%;
  color: #fff;
}

.mStitle{
  width: 100%;
  height: auto;
}

.mStitle .en{
  font-size: 1.7em;
  font-weight: 700;
}

.mStitle .jp{
  margin: 0 1% 0 1.5%;
  font-size: 0.8em;
  color: #555555;
  line-height: 2em;
}

.border {
    display: flex;
    align-items: center;
}

.border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #555555;
}

.border:after {
    margin-left: 1rem;
}

#missionContent{
  width: 80%;
  margin: 7% auto;
  text-align: center;
}

#missionContent .title{
  font-size: 1.7em;
  font-weight: 600;
}

#missionContent .text{
  margin: 3% 0 0 0;
  font-size: 0.9em;
  line-height: 1.4em;
}


#strongthContent{
  width: 100%;
  height: auto;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}

#strongthContent ul{
  margin: 7% auto;
  width: 32%;
  padding: 4%;
  background: rgba(0,0,0,0.6);
  text-align: center;
}

#strongthContent .title{
  font-size: 1.1em;
  font-weight: 700;
}

#strongthContent span{
  width: 40%;
  margin: 8% 0;
  border-bottom: 1px solid #555555;
  display: inline-block;
}

#strongthContent .text{
  font-size: 0.8em;
}



/* ---- SERVICE ---------------------------- */

#service{
  width: 100%;
  height: 100%;
  padding: 5% 0;
  background-image: url("../img/serviceBg.png");
  background-size: cover;
}

.serviceWrapper{
  padding: 0 10%;
  color: #fff;
}

.secTitle .jp{
  font-size: 0.8em;
  color: #555555;
  line-height: 2em;
}

.secTitle .en{
  font-size: 1.7em;
  font-weight: 700;
}

.serviceCnt{
  background: rgba(255, 255, 255, 0.9);
  color: #000;
  display: flex;
  margin: 1% 0;
}

.serviceCnt ul{
  width: 50%;
  padding: 4% 6%;
}

.serviceCnt span{
  display: inline-block;
  border-left: 1px solid #000;
}

.serviceCnt .jp{
  margin: 2% 0;
  font-size: 0.8em;
}

.serviceCnt .en{
  font-size: 2em;
  font-weight: 700;
}

.serviceCnt .text{
  margin: 4% 0 0 0;
  font-size: 0.8em;
}

.serviceCnt .list{
  font-size: 0.9em;
  font-weight: 500;
  margin: 4%;
}

.contactBtn{
  display: block;
  margin: 4% auto 0 auto;
  text-align: center;
  background: #fff;
  padding: 1% 8%;
  border-radius: 30px;
  border: none;
  font-weight: 700;
}

.contactBtn a{
  color: #000;
}



/* ---- WORKS ---------------------------- */

#works{
  width: 100%;
  height: auto;
  padding: 5% 0;
  background: rgba(0,0,0,0.95);
  border-bottom: 1px solid #707070;
}

.worksWrapper{
  color: #fff;
  width: 80%;
  margin: 5% auto;
}

.worksList{
  width: 100%;
  margin: 5% auto;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  align-items: center;
}

.worksList ul{
  width: 40%;
}

.worksList .title{
  font-size: 1.4em;
  font-weight: 700;
}

.worksList .text{
  font-size: 0.8em;
  font-weight: 700;
  margin: 6% 0;
  line-height: 1.8em;
}

.worksList button{
  color: #fff;
  width: 100%;
  background: #000;
  border: 1px solid #fff;
  padding: 15px 110px;
  border-radius: 10px;
  font-weight: 600;
}

.worksList .category{
  text-align: right;
  font-size: 0.8em;
  font-weight: 500;
  margin: 0 0 3% 0;
}



/* ---- PROJECT ---------------------------- */

#project{
  width: 100%;
  height: auto;
  padding: 5% 0 1% 0;
  background: rgba(0,0,0,0.95);
}

.projectWrapper{
  color: #fff;
  width: 80%;
  margin: 5% auto 2% auto;
}

.projectList{
  width: 100%;
  margin: 8% 0 0 0;
}

.projectList .title{
  font-size: 1.3em;
  font-weight: 700;
  margin: 0 0 1% 0;
}

.projectList .text{
  font-size: 0.8em;
  font-weight: 700;
}

.layoutVideo{
  width: 100%;
  margin: 3% 0 0 0;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  align-items: center;
}

.projectList video {
  width: 100%;
  height: auto;
}

.layoutVideo ul{
  width: 32%;
}

.layoutVideo .title{
  text-align: center;
  font-size: 0.8em;
  margin: 2% 0;
  clear: both;
}

iframe{
  width: 100%;
  height: 210px;
}


/* ---- VOICE ---------------------------- */

#voice{
  width: 100%;
  height: auto;
  padding: 3% 0 5% 0;
  background: rgba(0,0,0,0.95);
}

.voiceWrapper{
  color: #fff;
  width: 80%;
  margin: 0 auto;
}

.viceList{
  width: 100%;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  align-items: flex-start;
}

.voiceWrapper ul{
  width: 40%;
  margin: 4% 0 ;
}

.voiceWrapper .title{
  font-size: 1.3em;
  font-weight: 600;
}

.voiceWrapper .text{
  margin: 3% 0;
  font-size: 0.95em;
}


/* ---- FLOW ---------------------------- */

#flow{
  width: 100%;
  height: auto;
  padding: 3% 0 3% 0;
  background: rgba(0,0,0,0.8);
}

.flowWrapper{
  color: #fff;
  width: 80%;
  margin: 0 auto;
}

.flowList{
  width: 80%;
  margin: 4% auto;
  height: auto;
  text-align: center;
  color: #fff;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  align-items: center;
}

.flowList ul{
  width: 24%;
  border: 1px solid #fff;
  padding: 2%;
}

.flowList .number{
  font-size: 0.8em;
  font-weight: 600;
}

.flowList .title{
  font-size: 1.2em;
  font-weight: 600;
  margin: 5% 0;
}

.flowList .text{
  font-size: 0.8em;
}



/* ---- COMPANY ---------------------------- */

#company{
  width: 100%;
  height: auto;
  padding: 5% 0 5% 0;
  background-image: url("../img/companyBg.png");
  background-size: cover;
}

.companyWrapper{
  color: #fff;
  width: 80%;
  margin: 0 auto;
}

.conpanyProfile{
  margin: 5% auto;
  width: 100%;
  height: auto;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  align-items: center;
}

.conpanyProfile{
  width: 100%;
  margin: 0 auto;
}

.conpanyProfile ul{
  font-size: 0.9em;
  width: 50%;
}

.conpanyProfile li{
  margin: 3% 0;
  border-bottom: 1px solid #272727;
  padding: 0 0 2% 0;
}

.conpanyProfile ul span{
  margin: 0 0 0 10%;
}


.iframe-wrp {
  position: relative;
  width: 35%;
  padding-top: 35%; /* = height ÷ width × 100 */
}

.iframe-wrp iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.googlemap-bw iframe {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}



/* ---- COMPANY ---------------------------- */

#contact{
  width: 100%;
  height: auto;
  padding: 5% 0 5% 0;
  background: rgba(0,0,0,0.95);
}

.contactWrapper{
  color: #fff;
  width: 80%;
  margin: 8% auto 0 auto;
}


form{
  width: 800px;
  margin: 5% auto;
}
.item{
  overflow: hidden;
  margin-bottom: 20px;
}
.label{
  float: left;
  margin-right: 20px;
  width: 30%;
  padding-left: 10px;
  margin: 1% 0;
}
.inputs{
  float: left;
  width: 60%;
  margin: 1% 0;
}
input[type="text"],input[type="email"],select{
  border: solid 1px #aaa;
  border-radius:5px;
  padding:10px;
  font-size: 15px;
  background: none;
  color: #fff;
}

input[type="radio"]{
  font-size: 0.8em;
}

textarea{
  border: solid 1px #aaa;
  border-radius:5px;
  padding: 10px;
  height: 160px;
  font-size: 15px;
  background: none;
  color: #fff;
}

.btn-area{
  text-align: center;
}
input[type="submit"]{
  background: #fff;
  border: none;
  color: #000;
  font-size: 0.8em;
  font-weight:bold;
  padding: 10px 80px;
  margin: 0 5px;
  border-radius:50px;
}


  /* ---- FOTTER ---------------------------- */

  footer{
    width: 100%;
    background: #000;
  }

  footer ul{
    width: 30%;
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: center;
  }

  footer ul li{
    margin: 0 auto;
    font-size: 0.8vw;
    font-weight: 700;
    margin: 5%;
  }

}
