@media screen and (max-width: 768px) {
  .wrapper {
    overflow-x: hidden;
  }
}
@media screen and (min-width: 769px) {
  .wrapper {
    overflow: unset !important;
  }
}

body {
  margin: 0;
}
@media screen and (min-width: 769px) {
  body {
    overflow: unset !important;
  }
}

.c-header {
  z-index: 11;
}
@media screen and (min-width: 769px) {
  .c-header {
    max-width: 768px;
    margin: 0 auto;
  }
}
.c-header a {
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .c-header .c-header__inner {
    width: 768px;
    margin: 0 auto;
  }
}

.geo-header {
  width: 100%;
  height: 13.33vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .geo-header {
    height: 102.3744px;
  }
}
.geo-header__campaign img {
  width: 100%;
}
.geo-header-container {
  width: 100%;
  position: relative;
  z-index: 10;
  background: #fff;
}
.geo-header-campaign {
  color: #fff;
  height: 8vw;
  width: 100%;
  text-align: center;
  line-height: 8vw;
  font-size: 3.733333vw;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 769px) {
  .geo-header-campaign {
    height: 61.44px;
    width: 768px;
    margin: 0 auto;
  }
}

body {
  overflow-x: hidden;
  margin: 0;
}

a {
  outline: none;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  max-width: 100%;
  display: block;
}

h1, h2, h3, h4 {
  margin: 0;
  padding: 0;
}

.geo-body {
  width: 100%;
  margin: 0 auto;
  font-family: "YuGothic", "Yu Gothic Medium", "Yu Gothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
@media screen and (min-width: 769px) {
  .geo-body {
    overflow-x: hidden;
    max-width: 768px;
  }
}
.geo-body div::after,
.geo-body section::after,
.geo-body ul::after {
  display: none;
  color: inherit;
}
.geo-body img {
  display: block;
  width: 100%;
}
.geo-body a {
  color: inherit;
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  .geo-body a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .geo-body a:hover {
    opacity: 0.8;
  }
}
.geo-body .select_wrap {
  display: none;
}

.geo-cta {
  background: #00486B;
}
.geo-cta.long {
  background: #fff;
  padding-top: 13.3vw;
  padding-bottom: 9vw;
}
@media screen and (min-width: 769px) {
  .geo-cta.long {
    padding-top: 102.144px;
    padding-bottom: 69.12px;
  }
}
.geo-cta-floating {
  position: fixed;
  width: 100%;
  bottom: -21vw;
  left: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .geo-cta-floating {
    display: none;
    bottom: -161.28px;
    max-width: 768px;
    right: 0;
    top: auto;
    margin: auto;
  }
}
.geo-cta-floating.is-floated {
  bottom: 0;
}
.geo-cta-floating img {
  width: 100%;
}

.geo-cta-single {
  position: relative;
  background: #00486B;
  padding: 0 0 0vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-single {
    padding: 0px 0 0px;
  }
}
.geo-cta-single.num02 {
  padding: 10.7vw 0 10.8vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-single.num02 {
    padding: 82.176px 0 82.944px;
  }
}
.geo-cta-single a {
  position: absolute;
  top: 190.5vw;
  left: 8vw;
  width: 84%;
}
@media screen and (min-width: 769px) {
  .geo-cta-single a {
    top: 1463.04px;
    left: 61.44px;
  }
}
.geo-cta-single a img {
  width: 100%;
  margin: 0 auto;
}
.geo-cta-single__button {
  position: absolute;
  margin: 0 auto;
  top: 87.7vw;
  left: 0;
  right: 0;
}
@media screen and (min-width: 769px) {
  .geo-cta-single__button {
    top: 673.536px;
  }
}
.geo-cta-single__button.num02-button {
  top: 90.3vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-single__button.num02-button {
    top: 693.504px;
  }
}

.geo-cta-kit {
  position: relative;
  background: #00486B;
  padding: 0 0 0vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit {
    padding: 0px 0 0px;
  }
}
.geo-cta-kit.num02 {
  padding: 10.7vw 0 10.8vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit.num02 {
    padding: 82.176px 0 82.944px;
  }
}
.geo-cta-kit a {
  position: absolute;
  top: 50.5vw;
  left: 8vw;
  width: 84%;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit a {
    top: 391px;
    left: 61.44px;
  }
}
.geo-cta-kit a img {
  width: 100%;
  margin: 0 auto;
}
.geo-cta-kit.long {
  background: #fff;
  padding: 0;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit.long {
    padding-bottom: 0;
  }
}
.geo-cta-kit.long a img {
  width: 86.8%;
  margin: 0 auto;
}
.geo-cta-kit.set {
  background: #fff;
  padding-bottom: 10.7vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit.set {
    padding-bottom: 82.176px;
  }
}
.geo-cta-kit.set a img {
  width: 88%;
}
.geo-cta-kit__button {
  position: absolute;
  margin: 0 auto;
  top: 87.7vw;
  left: 0;
  right: 0;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit__button {
    top: 673.536px;
  }
}
.geo-cta-kit__button.num02-button {
  top: 90.3vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit__button.num02-button {
    top: 693.504px;
  }
}
.geo-cta-kit__button.long-button {
  top: 126.1vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit__button.long-button {
    top: 968.448px;
  }
}
.geo-cta-kit__button.set-button {
  top: 270.1vw;
  left: 5.3vw;
  right: auto;
}
@media screen and (min-width: 769px) {
  .geo-cta-kit__button.set-button {
    top: 2074.368px;
    left: 40.704px;
  }
}

.geo-cta-duo {
  position: relative;
  background: #00486B;
  padding: 0 0 0vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-duo {
    padding: 0px 0 0px;
  }
}
.geo-cta-duo a {
  position: absolute;
  top: 95.5vw;
  left: 8vw;
  width: 84vw;
}
@media screen and (min-width: 769px) {
  .geo-cta-duo a {
    top: 733.44px;
    left: 61.44px;
    width: 645.12px;
  }
}
.geo-cta-duo a img {
  width: 100%;
  margin: 0 auto;
}

.geo-onlinestore {
  background: rgba(0, 0, 0, 0.04);
  position: relative;
  z-index: 2;
}
.geo-onlinestore a:nth-child(3) {
  display: block;
  padding: 0;
  margin: 0vw auto 0;
  margin-top: -8vw;
  padding-bottom: 10.5vw;
}
@media screen and (min-width: 769px) {
  .geo-onlinestore a:nth-child(3) {
    margin: 0px auto 0;
    margin-top: -61.44px;
    padding-bottom: 80.64px;
  }
}

@media screen and (min-width: 769px) {
  .geo-step {
    margin: 3px auto -1px;
  }
}

.geo-voice {
  position: relative;
  z-index: 1;
  margin-top: -2vw;
  padding: 0 0 15.8vw;
}
@media screen and (min-width: 769px) {
  .geo-voice {
    padding: 0 0 121.344px;
    margin-top: -15.36px;
  }
}
.geo-voice-button {
  display: block;
  width: 53vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .geo-voice-button {
    width: 407.04px;
  }
}

.geo-purpose {
  background: #fff;
  margin-top: 0;
}
@media screen and (min-width: 769px) {
  .geo-purpose {
    margin-top: 0px;
  }
}

.geo-feature-body {
  background: url(/special/e/wrinkleshot-geo-serum/images/bkg-feature.webp);
  background-size: 100% 100%;
}
.geo-feature-body__item {
  position: relative;
}
.geo-feature-body__slider {
  position: absolute;
  margin: auto;
  padding: 0 5.2vw;
  width: 89.3vw;
  top: 52vw;
  right: 0;
  left: 0;
  bottom: auto;
}
@media screen and (min-width: 769px) {
  .geo-feature-body__slider {
    padding: 0px 39.936px;
    width: 683.52px;
    top: 399.36px;
  }
}
.geo-feature-body__slider .swiper {
  -webkit-box-shadow: 0 0 2.66vw rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 2.66vw rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 769px) {
  .geo-feature-body__slider .swiper {
    -webkit-box-shadow: 0 0 20.4288px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 20.4288px rgba(0, 0, 0, 0.2);
  }
}
.geo-feature-body .swiper-pagination {
  bottom: -6vw !important;
}
@media screen and (min-width: 769px) {
  .geo-feature-body .swiper-pagination {
    bottom: -46.08px !important;
  }
}
.geo-feature-body .swiper-pagination-bullet {
  width: 1.9vw !important;
  height: 1.9vw !important;
  margin: 0 0.6vw 0 !important;
  background: rgba(255, 255, 255, 0.5) !important;
  opacity: 1 !important;
}
@media screen and (min-width: 769px) {
  .geo-feature-body .swiper-pagination-bullet {
    width: 14.592px !important;
    height: 14.592px !important;
    margin: 0px 4.608px 0px !important;
  }
}
.geo-feature-body .swiper-pagination-bullet-active {
  background: #FFF !important;
}
.geo-feature-body .swiper-button-next, .geo-feature-body .swiper-button-prev {
  width: 5.86vw !important;
  height: 5.86vw !important;
  background: url(/special/e/wrinkleshot-geo-serum/images/icn-arrow-prev.webp) no-repeat;
  background-size: 100% 100%;
  left: 2vw;
  top: 38vw;
}
@media screen and (min-width: 769px) {
  .geo-feature-body .swiper-button-next, .geo-feature-body .swiper-button-prev {
    left: 15.36px;
    width: 45.0048px !important;
    height: 45.0048px !important;
    top: 50%;
  }
}
.geo-feature-body .swiper-button-next {
  background: url(/special/e/wrinkleshot-geo-serum/images/icn-arrow-next.webp) no-repeat;
  background-size: 100% 100%;
  left: auto;
  right: 2vw;
  top: 38vw;
}
@media screen and (min-width: 769px) {
  .geo-feature-body .swiper-button-next {
    right: 15.36px;
    top: 50%;
  }
}
.geo-feature-body .swiper-button-next.swiper-button-disabled,
.geo-feature-body .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}

@media screen and (min-width: 769px) {
  .pane-footer {
    max-width: 768px;
    margin: 0 auto;
  }
}

.geo-footer-nav {
  background: #000;
  padding-top: 6.5vw;
  margin: 0 auto 0;
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 769px) {
  .geo-footer-nav {
    padding: 42px 0 0;
    margin: 0 auto 0;
    width: 100%;
  }
}
.geo-footer-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.geo-footer-nav ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 2.93vw;
  display: block;
  padding: 0 2.66vw;
  border-right: solid 0.5px #fff;
  letter-spacing: 0.09em;
  line-height: 0.8;
}
@media screen and (min-width: 769px) {
  .geo-footer-nav ul li a {
    font-size: 12px;
    padding: 0 10px;
    border-right: solid 1px #fff;
    line-height: 0.9;
  }
}
.geo-footer-nav ul li:last-of-type a {
  border-right: none;
}

.modaal-wrapper .modaal-close {
  position: absolute !important;
  width: 9.3vw;
  height: 9.3vw;
  background-color: #000 !important;
}
.modaal-wrapper .modaal-close::before, .modaal-wrapper .modaal-close::after {
  width: 1.5px !important;
  top: 2.3vw !important;
  left: 4.6vw !important;
  height: 5vw;
}

#campaign-modal,
#carefully-modal {
  display: none;
}

.modaal-content {
  padding: 0 5.5vw 5vw;
}

.modaal-content-container {
  padding: 11vw 0 0 0 !important;
}

.modaal-inner-wrapper {
  padding: 0 5.4vw !important;
}