@charset "utf-8";

/*=============== ▼Webフォント ===============*/

@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-thin.woff")
      format("woff"),
    url("/product/closeup/assets/font/mplus/mplus-1p-thin.ttf")
      format("truetype");
  font-weight: 200;
}

@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-light.woff")
      format("woff"),
    url("/product/closeup/assets/font/mplus/mplus-1p-light.ttf")
      format("truetype");
  font-weight: 300;
}

@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-regular.woff")
      format("woff"),
    url("/product/closeup/assets/font/mplus/mplus-1p-regular.ttf")
      format("truetype");
  font-weight: 400;
}

@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-medium.woff")
      format("woff"),
    url("/product/closeup/assets/font/mplus/mplus-1p-medium.ttf")
      format("truetype");
  font-weight: 500;
}

@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-bold.woff")
      format("woff"),
    url("/product/closeup/assets/font/mplus/mplus-1p-bold.ttf")
      format("truetype");
  font-weight: 700;
}

/*=============== ▲Webフォント ===============*/

/*=============== ▼BASE ===============*/

@media screen and (orientation: landscape) {
   /* 横向きの場合のスタイル */
  .landscape { display: block !important; }
  .portrait { display: none !important; }
}
@media screen and (orientation: portrait) {
   /* 縦向きの場合のスタイル */
  .landscape { display: none !important; }
  .portrait { display: block !important; }
}

.negativemargin_main {
  margin: -90px 0 0 0;
}

@media screen and (max-width: 64em) {
  .negativemargin_main {
    margin: -60px 0 0 0;
  }
}

header {
  transition: 0.3s;
}

header.hide {
  transform: translateY(-100%);
}

.header {
  z-index: 5000;
  background-color: rgba(255, 255, 255, 0.95);
}

*:focus {
  outline: none;
}

.footer {
  position: relative;
  z-index: 100;
  width: 100%;
  background-color: #F3F3F3;
}

/*=============== ▼コンテンツ挿入部分 ===============*/

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

#joq_contents {
  position: relative;
  z-index: 0;
  width: 100%;
  background: #fff;
  overflow: hidden;
}

.sec001 {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 350vh;
  overflow: hidden;
}

.sec002 {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}


.fuwafuwaP1 {
-webkit-animation:fuwafuwaP1 5s infinite linear alternate;
animation:fuwafuwaP1 5s infinite linear alternate;
}
@-webkit-keyframes fuwafuwaP1 {
0% {-webkit-transform:translate(0, 0) rotate(0deg);}
50% {-webkit-transform:translate(0, -10px) rotate(0deg);}
100% {-webkit-transform:translate(0, 0)rotate(7deg);}
}
@keyframes fuwafuwaP1 {
0% {transform:translate(0, 0) rotate(0deg);}
50% {transform:translate(0, -10px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(7deg);}
}
.fuwafuwaP2 {
-webkit-animation:fuwafuwaP2 4s infinite linear alternate;
animation:fuwafuwaP2 4s infinite linear alternate;
}
@-webkit-keyframes fuwafuwaP2 {
0% {-webkit-transform:translate(0, 0) rotate(0deg);}
50% {-webkit-transform:translate(0, -8px) rotate(0deg);}
100% {-webkit-transform:translate(0, 0)rotate(-5deg);}
}
@keyframes fuwafuwaP2 {
0% {transform:translate(0, 0) rotate(0deg);}
50% {transform:translate(0, -8px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(-5deg);}
}
.fuwafuwaP3 {
-webkit-animation:fuwafuwaP3 5s infinite linear alternate;
animation:fuwafuwaP3 5s infinite linear alternate;
}
@-webkit-keyframes fuwafuwaP3 {
0% {-webkit-transform:translate(0, 0) rotate(0deg);}
50% {-webkit-transform:translate(0, 10px) rotate(0deg);}
100% {-webkit-transform:translate(0, 0)rotate(-2deg);}
}
@keyframes fuwafuwaP3 {
0% {transform:translate(0, 0) rotate(0deg);}
50% {transform:translate(0, 10px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(-2deg);}
}

/*=============== ▼LANDSCAPE(PC) ===============*/

@media screen and (orientation: landscape) {
.sec001 {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 420vh;
  overflow: hidden;
}
  .bg001 {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100vh;
    background-image: url("/product/closeup/assets/img/joq/bg001.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
  }

  .obj001 {
    position: absolute;
    top: 3%;
    left: 5%;
    z-index: 3;
    width: 35%;
  }

  .obj002 {
    position: absolute;
    top: 0;
    left: 5%;
    z-index: 4;
    width: 100%;
  }

  .obj003 {
    position: relative;
    z-index: 5;
    margin: 90% 0 0 30%;
    width: 40%;
  }

    .obj004 {
      position: relative;
      z-index: 6;
      margin: 15% 0 20% 30%;
      width: 40%;
    }
    .point001 {
      position: absolute;
      z-index: 7;
      margin: -30% 0 0 -15%;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }
    .point002 {
      position: absolute;
      z-index: 7;
      margin: 70% 0 0 80%;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }
    .point003 {
      position: absolute;
      z-index: 7;
      margin: 100% 0 0 -10%;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }

    .obj005top {
      position: absolute;
      z-index: 8;
      top: 5%;
      left: 30%;
      width: 40%;
    }
    .obj005top.top {
      top: 5% !important;
      right: 30% !important;
      bottom: auto !important;
    }

    .obj005 {
      position: absolute;
      z-index: 8;
      top: 4%;
      left: 15%;
      width: 35%;
    }

    .obj005.bottom {
      top: auto !important;
      right: 25% !important;
      bottom: 25% !important;
    }


    .sec003 {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: 180vh;
      overflow: hidden;
    }
    .bg002 {
      position: absolute;
      z-index: 6;
      width: 100%;
      height: 100vh;
      background-image: url("/product/closeup/assets/img/joq/bg002.jpg");
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      overflow: hidden;
    }
    .sec004 {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: ;
      overflow: hidden;
    }


  .outro_title{
    position: absolute;
    top:4%;
    left: 30%;
    width: 25%;
  }
  .outro_link{
    position: absolute;
    bottom:4%;
    left: 40%;
    width: 20%;
  }


}

/*=============== ▲LANDSCAPE ===============*/

/*=============== ▼PORTRAIT(SP) ===============*/

@media screen and (orientation: portrait) {
  .bg001 {
      position: absolute;
      z-index: 1;
      width: 100%;
      height: 100vh;
      background-image: url("/product/closeup/assets/img/joq/bg001.jpg");
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      overflow: hidden;
    }

    .obj001 {
      position: relative;
      left: 10%;
      top: 5%;
      z-index: 5;
      width: 80%;
    }

    .obj002 {
      position: absolute;
      top: 15%;
      left: -35%;
      z-index: 4;
      width: 180%;
    }

    .obj003 {
      position: relative;
      z-index: 5;
      margin: 160% 0 0 10%;
      width: 80%;
      background: rgba(44, 16, 224, 0);
    }

    .obj004 {
      position: relative;
      z-index: 6;
      margin: 30% 0 20% 15%;
      width: 70%;
    }
    .point001 {
      position: absolute;
      z-index: 7;
      margin: -30% 0 0 -5%;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }
    .point002 {
      position: absolute;
      z-index: 7;
      margin: 80% 0 0 55%;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }
    .point003 {
      position: absolute;
      z-index: 7;
      margin: 110% 0 0 0;
      width: 60%;
      background: rgba(66, 224, 113, 0);
    }

    .obj005top {
      position: absolute;
      z-index: 8;
      top: 4%;
      left: 10%;
      width: 80%;
    }
    .obj005top.top {
      top: 30% !important;
      right: 10% !important;
      bottom: auto !important;
    }

    .obj005 {
      position: absolute;
      z-index: 8;
      top: 4%;
      left: 15%;
      width: 70%;
    }

    .obj005.bottom {
      top: auto !important;
      right: 5% !important;
      bottom: 25% !important;
    }

  .obj006 {
    position: relative;
    margin: 5% 0 10% 5%;
    width: 90%;
  }

  .obj007 {
    position: relative;
    margin: 5% 0 10% 5%;
    width: 90%;
  }

  .obj008 {
    position: relative;
    margin: 5% 0 5% 20%;
    width: 60%;
  }

  
    .sec003 {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: 180vh;
      overflow: hidden;
    }
    .bg002 {
      position: absolute;
      z-index: 6;
      width: 100%;
      height: 100vh;
      background-image: url("/product/closeup/assets/img/joq/bg002.jpg");
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      overflow: hidden;
    }

    .sec004 {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: ;
      overflow: hidden;
    }


  .outro_title{
    position: absolute;
    top:4%;
    left: 4%;
    width: 50%;
  }
  .outro_link{
    position: absolute;
    bottom:4%;
    left: 30%;
    width: 40%;
  }

    .bg003 {
      position: absolute;
      z-index: 9;
      width: 100%;
      height: 120vh;
      background: url("/product/closeup/assets/img/joq/bg004_P.png") center bottom / cover no-repeat;
      overflow: hidden;
    }

    .sec001 {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: 250vh;
      overflow: hidden;
  }

    .sec005 {
      height: 120vh;
    }
  }

/*=============== ▲PORTRAIT ===============*/

/*=============== ▼クローズアップサーモス用 ===============*/

.archive-content .divider {
  height: 1px !important;
  background: #000 !important;
}

.archive-content p {
  color: #fff !important;
}

.archive-content p a {
  color: #fff !important;
}

.archive-content p a:hover {
  text-decoration: underline !important;
}