html {
  font-size: 62.5%;
}

body,
.header {
  background: #fff;
}

@media screen and (max-width: 2104px) {
  html {
    font-size: calc(10* (100vw / 2100)) !important;
  }
}

@media only screen and (min-width: 768px) {
  .header.off {
    visibility: hidden;
    opacity: 0;
    /* z-index: -100; */
    transition: 1s;
  }
}

img {
  max-width: 100%;
  width: 100%;
}

#issue100 {
  width: 100%;
  font-family: garamond-premier-pro-display, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  /* overflow: hidden; */
}

/* ===============================================
* credit *
=============================================== */
.credit--wrap {
  display: flex;
  flex-direction: column;
  margin-top: calc(35* (100vw /750));
}

.credit--wrap li {
  font-family: garamond-premier-pro-display, serif;
  font-weight: 300;
  font-style: normal;
  font-size: calc(22* (100vw /750));
  letter-spacing: 0.065em;
  line-height: 1.65;
}

@media screen and (min-width: 768px) {
  .credit--wrap {
    margin-top: 2.6rem;
  }

  .credit--wrap li {
    font-size: 1.7rem;
    letter-spacing: 0.06em;
    line-height: 1.65;
  }
}

/* ===============================================
* slider *
=============================================== */
#issue100 .slick-dots {
  position: absolute;
  margin: 0;
  bottom: calc(20*(100vw / 750));
  right: calc(10*(100vw / 750));
  width: fit-content;
}

#issue100 .slick-dots li {
  position: relative;
  display: inline-block;
  width: calc(10* (100vw /750));
  height: calc(10* (100vw /750));
  margin: 0 calc(10* (100vw /750)) 0;
  padding: 0;
  color: transparent;
  cursor: pointer;
}

#issue100 .slick-dots li button {
  width: calc(10* (100vw /750));
  height: calc(10* (100vw /750));
  background: transparent;
  border: #fff calc(1* (100vw /750)) solid;
  box-sizing: border-box;
  border-radius: 50%;
}

#issue100 .slick-dots li.slick-active button {
  background: #fff;
}

#issue100 .slick-dots li button:before {
  content: none;
}

@media screen and (min-width: 768px) {
  #issue100 .slick-dots {
    bottom: 2rem;
    right: 1rem;
  }

  #issue100 .slick-dots li {
    width: 1rem;
    height: 1rem;
    margin: 0 1rem 0;
  }

  #issue100 .slick-dots li button {
    width: 1rem;
    height: 1rem;
    border: #fff 1px solid;
  }
}

/* ===============================================
* ttl *
=============================================== */
#issue100 h3 {
  margin: calc(163*(100vw / 750)) auto 0;
  text-align: center;
  font-size: calc(53* (100vw /750));
  letter-spacing: 0.01em;
  line-height: 1;
}

#issue100 h3 span {
  display: block;
  font-size: calc(30* (100vw /750));
  letter-spacing: 0.045em;
  margin-bottom: calc(17* (100vw /750));
}

@media screen and (min-width: 768px) {
  #issue100 .lp--mv {
    width: 170rem;
    margin: auto;
  }

  #issue100 h3 {
    margin: 18.4rem auto 0;
    font-size: 6.2rem;
    letter-spacing: 0.01em;
  }

  #issue100 h3 span {
    font-size: 3.5rem;
    letter-spacing: 0.045em;
    margin-bottom: 1.7rem;
    position: relative;
    left: -0.2rem;
  }

}

/* ===============================================
* sec1 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec1 .sec--item1 {
    width: calc(680* (100vw /750));
    margin: calc(68* (100vw /750)) auto 0;
  }

  .sec1 .sec--item2 {
    width: calc(560* (100vw /750));
    margin: calc(70* (100vw /750)) auto 0;
  }

  .sec1 .credit--wrap {
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .sec1 .sec--item1 {
    width: 84rem;
    margin: 8.4rem auto 0;
  }

  .sec1 .sec--item2 {
    position: relative;
    width: 66rem;
    margin: 12rem auto 0;
  }

  .sec1 .credit--wrap {
    position: absolute;
    bottom: -1rem;
    right: -31.2rem;
    align-items: flex-start;
  }
}

/* ===============================================
* sec2 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec2 .sec--item1 {
    margin: calc(200* (100vw /750)) auto 0;
  }

  .sec2 .sec--item2 {
    width: calc(480* (100vw /750));
    margin: calc(60* (100vw /750)) calc(50* (100vw /750)) 0 auto;
  }

  .sec2 .credit--wrap {
    align-items: flex-end;
  }
}

@media screen and (min-width: 768px) {
  .sec2 {
    display: flex;
    justify-content: center;
    gap: 30rem;
    margin-top: 32.5rem;
    padding-right: 8rem;
  }

  .sec2 .sec--item1 {
    width: 98rem;
  }

  .sec2 .sec--item2 {
    position: relative;
    width: 54rem;
    margin-top: 73rem;
  }

  .sec2 .credit--wrap {
    position: absolute;
    bottom: -0.4rem;
    left: -31.3rem;
    align-items: flex-end;
  }
}

/* ===============================================
* sec3 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec3 .sec--item1 {
    width: calc(620* (100vw /750));
    margin: calc(204* (100vw /750)) 0 0 calc(40* (100vw /750));
  }

  .sec3 .sec--item2 {
    width: calc(580* (100vw /750));
    margin: calc(60* (100vw /750)) 0 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .sec3 {
    display: grid;
    width: 146rem;
    margin: 29.9rem auto 0;
    grid-template-columns: 58rem auto;
    grid-template-rows: 84.5rem auto;
    padding-right: 3rem;
  }

  .sec3 .sec--item1 {
    width: 88rem;
    grid-area: 1/2/2/3;
  }

  .sec3 .sec--item2 {
    position: relative;
    width: 66rem;
    grid-area: 2/1/3/2;
  }

  .sec3 .credit--wrap {
    position: absolute;
    bottom: -1rem;
    right: -30.5rem;
  }
}

/* ===============================================
* sec4 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec4 .sec--item1 {
    margin: calc(208* (100vw /750)) auto 0;
  }

  .sec4 .sec--item2 {
    width: calc(500* (100vw /750));
    margin: calc(60* (100vw /750)) calc(40* (100vw /750)) 0 auto;
  }

  .sec4 .sec--item3 {
    width: calc(580* (100vw /750));
    margin: calc(40* (100vw /750)) 0 0 0;
  }

  .sec4 .credit--wrap {
    margin-left: calc(40* (100vw /750));
  }
}

@media screen and (min-width: 768px) {
  .sec4 .sec--item1 {
    width: 94rem;
    margin: 30rem auto 0;
  }

  .sec4 .sec--inner {
    position: relative;
    width: 68rem;
    margin: 12rem auto 0;
  }

  .sec4 .sec--item2 {
    position: sticky;
    top: calc(17% - 10rem / 2);
    z-index: 1;
  }

  .sec4 .credit--wrap {
    position: absolute;
    bottom: -0.9rem;
    right: -29.7rem;
  }

  .sec4 .sec--item3 {
    margin-top: 28rem;
    z-index: 2;
    position: relative;
    background: #fff;
    transform: translateZ(1px);
  }
}

/* ===============================================
* sec5 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec5 .sec--item1 {
    width: calc(680* (100vw /750));
    margin: calc(200* (100vw /750)) auto 0;
  }

  .sec5 .sec--item2 {
    width: calc(540* (100vw /750));
    margin: calc(59* (100vw /750)) auto 0;
  }

  .sec5 .credit--wrap {
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .sec5 {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    gap: 16rem;
    margin-top: 30rem;
    padding-right: 2rem;
  }

  .sec5 .sec--item1 {
    width: 58rem;
    margin-top: 73.5rem;
  }

  .sec5 .sec--item2 {
    width: 86rem;
  }
}

/* ===============================================
* sec6 *
=============================================== */
.sec6 .sec--item1 {
  position: relative;
}

.sec6 .sec--item1::before {
  content: "";
  position: absolute;
  background: url(../img/copy.svg) center/contain no-repeat;
  width: calc(407*(100vw / 750));
  height: calc(141*(100vw / 750));
  z-index: 2;
  pointer-events: none;
  top: calc(-26*(100vw / 750));
  right: calc(27*(100vw / 750));
}

@media screen and (max-width: 767px) {
  .sec6 .sec--item1 {
    margin: calc(236* (100vw /750)) auto 0;
  }

  .sec6 .sec--item2 {
    width: calc(620* (100vw /750));
    margin: calc(60* (100vw /750)) 0 0 auto;
  }

  .sec6 .sec--item3 {
    width: calc(500* (100vw /750));
    margin: calc(40* (100vw /750)) 0 0 calc(40* (100vw /750));
  }
}

@media screen and (min-width: 768px) {
  .sec6 .sec--item1 {
    width: 100rem;
    margin: 30rem auto 0;
  }

  .sec6 .sec--item1::before {
    width: 52.5rem;
    height: 18.3rem;
    top: 7rem;
    right: -17.3rem;
  }

  .sec6 .sec--inner {
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
    gap: 20rem;
    margin-top: 11rem;
    padding-left: 5rem;
  }

  .sec6 .sec--item2 {
    width: 76rem;
  }

  .sec6 .sec--item3 {
    width: 60rem;
    margin-top: 67rem;
  }

  .sec6 .credit--wrap {
    align-items: flex-end;
  }
}

/* ===============================================
* sec7 *
=============================================== */
@media screen and (max-width: 767px) {
  .sec7 .sec--item1 {
    width: calc(600* (100vw /750));
    margin: calc(202* (100vw /750)) calc(50* (100vw /750)) 0 auto;
  }

  .sec7 .sec--item2 {
    width: calc(580* (100vw /750));
    margin: calc(60* (100vw /750)) 0 0 0;
  }

  .sec7 .sec--item3 {
    margin: calc(60* (100vw /750)) 0 0 0;
  }

  .sec7 .credit--wrap {
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .sec7 .sec--item1 {
    width: 80rem;
    margin: 30rem auto 0;
  }

  .sec7 .sec--inner {
    display: grid;
    width: 161rem;
    margin: 11rem auto 0;
    grid-template-columns: 89rem auto;
    grid-template-rows: 74rem auto;
    padding-right: 1rem;
  }

  .sec7 .sec--item2 {
    position: relative;
    z-index: 2;
    width: 72rem;
    grid-area: 2/2/3/3;
  }

  .sec7 .sec--item3 {
    width: 94rem;
    grid-area: 1/1/2/2;
  }
}




/* ===============================================
* lp--btn *
=============================================== */
#issue100 .lp--btn {
  font-family: "garamond-premier-pro-display", serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(29* (100vw /750));
  line-height: 1;
  letter-spacing: 0.065em;
  text-align: center;
  margin: calc(165* (100vw /750)) auto calc(283*(100vw / 750));
}

#issue100 .lp--btn .liner {
  width: 0;
  transition: all 1s ease;
  margin: calc(14*(100vw /750)) auto 0;
  background: #000;
  height: 1px;
}

#issue100 .lp--btn .liner.showFade {
  width: calc(150* (100vw /750));
}

@media screen and (min-width: 768px) {

  #issue100 .lp--btn {
    font-weight: 300;
    font-size: 2.5rem;
    margin: 20.3rem auto 20rem;
  }

  #issue100 .lp--btn .liner {
    height: 0.1rem;
    margin: 1.5rem auto 0;
  }

  #issue100 .lp--btn .liner.showFade {
    width: 13rem;
  }
}




/* ===============================================
* img_animation *
=============================================== */
.img--wrap.js-fadeIn {
  opacity: 0;
  transition: all 1s ease;
}

.img--wrap.js-fadeIn.showFade {
  opacity: 1;
}

@media screen and (max-width: 767px) {

  .sec3 .sec--item1 .js-fadeIn,
  .sec5 .sec--item2 .js-fadeIn,
  .sec7 .sec--item2 .js-fadeIn {
    transform: translateX(calc(100* (100vw /750)));
  }

  .sec3 .sec--item2 .js-fadeIn,
  .sec5 .sec--item1 .js-fadeIn,
  .sec7 .sec--item1 .js-fadeIn {
    transform: translateX(calc(-100* (100vw /750)));
  }

  .sec3 .sec--item1 .js-fadeIn.showFade,
  .sec3 .sec--item2 .js-fadeIn.showFade,
  .sec5 .sec--item1 .js-fadeIn.showFade,
  .sec5 .sec--item2 .js-fadeIn.showFade,
  .sec7 .sec--item1 .js-fadeIn.showFade,
  .sec7 .sec--item2 .js-fadeIn.showFade {
    transform: translateX(0);
  }
}

@media screen and (min-width: 768px) {

  .sec2 .sec--item1 .js-fadeIn,
  .sec5 .sec--item1 .js-fadeIn,
  .sec7 .sec--item3 .js-fadeIn {
    transform: translateX(15rem);
  }

  .sec3 .sec--item1 .js-fadeIn,
  .sec5 .sec--item2 .js-fadeIn {
    transform: translateX(-15rem);
  }

  .sec3 .sec--item2 .js-fadeIn,
  .sec7 .sec--item2 .js-fadeIn {
    transform: translateY(15rem);
  }

  .sec2 .sec--item1 .js-fadeIn.showFade,
  .sec3 .sec--item1 .js-fadeIn.showFade,
  .sec3 .sec--item2 .js-fadeIn.showFade,
  .sec5 .sec--item1 .js-fadeIn.showFade,
  .sec5 .sec--item2 .js-fadeIn.showFade,
  .sec7 .sec--item2 .js-fadeIn.showFade,
  .sec7 .sec--item3 .js-fadeIn.showFade {
    transform: translate(0);
  }

  .sec3 .sec--item2 .showFade,
  .sec7 .sec--item2 .showFade {
    background: #fff;
  }
}