hr {
  margin: 0 auto;
  border-top: 1px solid #707070;
  width: 84%;
}

a.link-text {
  text-decoration: underline;
  opacity: 1;
}

a.link-text:hover {
  opacity: 0.5;
}

.product-name {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
}

.btn-round {
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  cursor: pointer;
  border-radius: 5px;
  border: 1px solid #707070;
  display: inline-flex;
  max-width: 100%;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #000;
  border: 1px solid #000;
  line-height: 1;
  border-radius: 23px;
  font-size: 0.75rem;
  padding: 14px 71px 13px;
  transition: all 0.15s ease-out;
}
.btn-round:hover {
  color: #fff;
  border-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0.3);
}
.btn-round--disabled {
  pointer-events: none;
  opacity: 0.3;
}
.btn-round--small--white {
  color: #fff;
  border: 1px solid #fff;
  font-size: 0.75rem;
  padding: 12px 37.5px;
}
.btn-round--small--white:hover {
  color: #fff;
  border-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0.5);
}
.btn-round--home-hero {
  color: #fff;
  background-color: rgba(255, 255, 255, 0);
  border: 1px solid white;
  padding: 10px 36px;
}
.btn-round--home-hero:hover {
  color: #fff;
  border-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0.3);
}
.btn-round--home-hero.btn-app {
  color: #000;
  border: 1px solid #000;
}
.btn-round--trans-white {
  padding: 10px 36px;
  color: #000;
  background-color: rgba(255, 255, 255, 0.56);
  border: none;
}
.btn-round--w2 {
  border: 1px solid #707070;
  padding: 13.5px 55px 13px;
}
.btn-round--border-ts {
  color: #000;
  border: none;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 11px 39px 10.5px;
}
.btn-round--mid {
  font-size: 0.75rem;
  padding: 14px 59px;
}
.btn-round--xmid {
  vertical-align: baseline;
  font-size: 0.75rem;
  padding: 14.5px 38px 13.5px;
}
.btn-round--small {
  font-size: 0.75rem;
  padding: 11px 71px;
}
.btn-round--small-wb {
  font-size: 0.75rem;
  padding: 14.5px 38px 13.5px;
  color: #fff;
  border-color: #fff;
}
.btn-round--small-gray {
  border: 1px solid #707070;
  font-size: 0.75rem;
  padding: 12.5px 66px;
}
.btn-round--mid--white {
  color: #fff;
  border: 1px solid #fff;
  font-size: 0.75rem;
  padding: 14px 59px;
}
.btn-round--white {
  color: #fff;
  border: 1px solid #fff;
}
.btn-round--white:hover {
  color: #fff;
  border-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0.9);
}
.btn-round--fillwhite {
  border: none;
  background-color: #fff;
  color: #000;
  font-weight: bold;
}
.btn-round--fillwhite:hover {
  opacity: 0.75;
}
.btn-round--fillblack {
  border: none;
  background-color: #000;
  color: #fff;
  font-weight: bold;
}
.btn-round--fillblack:hover {
  opacity: 0.75;
}
.btn-round--buy, .btn-round--store {
  border: none;
  background-color: #4BA53A;
  color: #fff;
  padding: 14px 70px;
}
.btn-round--buy:hover, .btn-round--store:hover {
  opacity: 0.75;
}
.btn-round--store {
  background-color: #000;
}
.btn-round--wide-fillblack {
  border: none;
  background-color: #000;
  color: #fff;
  font-weight: bold;
  padding: 14px 71px 13px;
}
.btn-round--wide-fillblack:hover {
  opacity: 0.75;
}
.btn-round--fillgreen {
  border: none;
  background-color: #4AA53A;
  color: #fff;
  font-weight: bold;
}
.btn-round--fillgreen:hover {
  opacity: 0.75;
}
.btn-round--block {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.btn-round--care {
  text-align: center;
  border: none;
  background-color: #4AA53A;
  color: #fff;
  font-weight: bold;
  width: 80%;
  font-size: 0.75rem;
  padding: 14px 0px 13px;
}
.btn-round--care:hover {
  opacity: 0.75;
}
.btn-round--faq {
  width: 67%;
  font-size: 0.75rem;
  padding: 14px 0px 13px;
}
.btn-round--faq:hover {
  opacity: 0.75;
}

.btn-external {
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  cursor: pointer;
  display: inline-block;
  border: 1px solid #707070;
  box-sizing: border-box;
  background: #fff;
  border-radius: 100vh;
  text-align: center;
  color: #000;
  padding: 6px 20px 9px;
  text-indent: -0.7em;
}
.btn-external-inner {
  line-height: 1;
  text-align: center;
  vertical-align: baseline;
  position: relative;
  display: inline-block;
  font-size: 0.7625rem;
}
.btn-external-inner::before {
  content: "";
  position: absolute;
  background: #707070;
  border-radius: 50%;
  transition: all;
  top: -1px;
  right: -23px;
  bottom: 0;
  width: 14px;
  height: 14px;
}
.btn-external-inner::after {
  content: "";
  position: absolute;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  opacity: 1;
  transform: rotate(45deg);
  transition: all 0.15s;
  top: 4px;
  right: -17px;
  bottom: 0;
  width: 4px;
  height: 4px;
}
.btn-external--fillblack {
  border: none;
  background-color: #000;
  color: #fff;
}
.btn-external--fillblack .btn-external-inner::before {
  background: #fff;
}
.btn-external--fillblack .btn-external-inner::after {
  border-color: #fff;
}
.btn-external--fillgray {
  border: none;
  background-color: #707070;
  color: #fff;
}
.btn-external--fillgray .btn-external-inner::before {
  background: #fff;
}
.btn-external--fillgray .btn-external-inner::after {
  border-color: #707070;
}
.btn-external--fillgreen {
  border: none;
  background-color: #4AA53A;
  color: #fff;
}
.btn-external--fillgreen .btn-external-inner::before {
  background: #fff;
}
.btn-external--fillgreen .btn-external-inner::after {
  border-color: #4AA53A;
}
.btn-external:hover {
  opacity: 0.5;
}
.btn-external:hover::after {
  opacity: 0.5;
}

.btn-exarrow {
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  cursor: pointer;
  display: inline-block;
  border: 1px solid #707070;
  box-sizing: border-box;
  background: transparent;
  border-radius: 100vh;
  text-align: center;
  color: #000;
  padding: 7px 20px 8px;
  width: 49%;
  text-indent: -0.8em;
}
.btn-exarrow-inner {
  line-height: 1;
  text-align: center;
  vertical-align: baseline;
  position: relative;
  display: inline-block;
  font-size: 0.75rem;
}
.btn-exarrow-inner::after {
  content: "";
  position: absolute;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3e%3cpath d='M1.848 0h4.314a.559.559 0 01.431.185.559.559 0 01.185.431.559.559 0 01-.185.431.559.559 0 01-.431.185H1.848a.559.559 0 00-.431.185.559.559 0 00-.185.431v9.859a.559.559 0 00.185.431.559.559 0 00.431.185h9.859a.632.632 0 00.616-.616V7.394a.616.616 0 011.232 0v4.313a1.9 1.9 0 01-1.849 1.849H1.848A1.773 1.773 0 01.555 13 1.773 1.773 0 010 11.707V1.848A1.773 1.773 0 01.555.554 1.773 1.773 0 011.848 0zm7.394 0h3.7a.559.559 0 01.431.185.559.559 0 01.185.431v3.7a.616.616 0 01-1.232 0V2.095L7.209 7.209a.61.61 0 11-.863-.863l5.114-5.114H9.242a.559.559 0 01-.431-.185.559.559 0 01-.185-.431.559.559 0 01.185-.431A.559.559 0 019.242 0z'/%3e%3c/svg%3e");
  background-size: 100%;
  top: -1px;
  right: -17.5px;
  width: 12px;
  height: 12px;
}
.btn-exarrow--fillgray {
  border: none;
  background-color: #707070;
  color: #fff;
}
.btn-exarrow--fillblack {
  border: none;
  background-color: #000;
  color: #fff;
}
.btn-exarrow--fillblack .btn-exarrow-inner::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='28' height='25' viewBox='0 0 28 25'%3e%3cg fill='white'%3e%3cpath d='M26.324 0H6.13a1.124 1.124 0 00-1.121 1.123v17.885a1.121 1.121 0 001.121 1.12h20.2a1.124 1.124 0 001.118-1.123V1.123A1.125 1.125 0 0026.324 0zm-1.116 2.246v15.639H7.252V2.246z'/%3e%3cpath d='M11.869 22.649H2.244V12.935a1.1 1.1 0 00-.366-.775 1.167 1.167 0 00-.812-.289 1.119 1.119 0 00-.775.368 1.092 1.092 0 00-.287.785V23.77a1.124 1.124 0 001.123 1.123h10.832a1.127 1.127 0 001.065-1.18 1.085 1.085 0 00-1.155-1.064z'/%3e%3c/g%3e%3c/svg%3e");
}
.btn-exarrow--fillblack2 {
  border: none;
  background-color: #000;
  color: #fff;
  text-indent: -0.3em;
}
.btn-exarrow--fillblack2 .btn-exarrow-inner::after {
  right: -12.5px;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='28' height='25' viewBox='0 0 28 25'%3e%3cg fill='white'%3e%3cpath d='M26.324 0H6.13a1.124 1.124 0 00-1.121 1.123v17.885a1.121 1.121 0 001.121 1.12h20.2a1.124 1.124 0 001.118-1.123V1.123A1.125 1.125 0 0026.324 0zm-1.116 2.246v15.639H7.252V2.246z'/%3e%3cpath d='M11.869 22.649H2.244V12.935a1.1 1.1 0 00-.366-.775 1.167 1.167 0 00-.812-.289 1.119 1.119 0 00-.775.368 1.092 1.092 0 00-.287.785V23.77a1.124 1.124 0 001.123 1.123h10.832a1.127 1.127 0 001.065-1.18 1.085 1.085 0 00-1.155-1.064z'/%3e%3c/g%3e%3c/svg%3e");
}
.btn-exarrow:hover {
  opacity: 0.5;
}
.btn-exarrow:hover::after {
  opacity: 0.5;
}

.recommend {
  margin: 0 auto;
  width: 84%;
  margin-bottom: 110px;
}
.recommend__inner {
  width: 100%;
  height: auto;
}
.recommend a.link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
}
.recommend.js-scroll-trigger {
  overflow: auto;
  opacity: 0;
}
.recommend.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.banner {
  margin-bottom: 50px;
}

.banner-tryme {
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #ccc;
  border-radius: 9.5px;
  border: none;
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}
.banner-tryme .banner__img {
  width: 100%;
}
.banner-tryme .banner__img img {
  width: 100%;
}
.banner-tryme .banner__inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 50%;
  padding-top: 20px;
  transform: translate(-50%, 0);
}
.banner-tryme .banner__wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}
.banner-tryme .banner-cont1 {
  text-align: center;
  width: 100%;
}
.banner-tryme .banner-cont2 {
  text-align: center;
  width: 100%;
  padding-bottom: 25px;
}
.banner-tryme .banner__bar {
  display: inline-block;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
  line-height: 160%;
  padding: 5px 14px 3px;
  font-size: 0.75rem;
  margin-bottom: 13px;
}
.banner-tryme .banner__ttl-img {
  width: 198.5px;
  margin: 0 auto;
  margin-bottom: 22px;
}
.banner-tryme .banner__ttl-img img {
  width: 100%;
  height: auto;
}
.banner-tryme .banner__lead {
  color: #000;
  line-height: 1;
  font-size: 0.90625rem;
  margin-bottom: 20px;
  vertical-align: baseline;
}
.banner-tryme .banner__lead .day {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  font-size: 1.25rem;
}
.banner-tryme .btn-round {
  margin-left: 7px;
}
.banner-tryme__extext {
  margin-top: 15px;
}
.banner-tryme__extext p {
  color: #333;
  line-height: 180%;
  font-size: 0.625rem;
  padding-left: 1em;
  text-indent: -1em;
}

.banner-care {
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #ccc;
  border-radius: 9.5px;
  margin: 0 auto;
  width: 100%;
  background-color: #F5F5F5;
}
.banner-care .banner__inner {
  position: relative;
  display: flex;
  flex-direction: column;
}
.banner-care .banner-cont1 {
  box-sizing: border-box;
  padding: 31px 23.5px;
}
.banner-care .banner-cont2 {
  display: none;
}
.banner-care .banner__ttl {
  width: 265px;
  margin-bottom: 5px;
}
.banner-care .banner__ttl img {
  width: 100%;
  height: auto;
}
.banner-care .banner__subtext {
  width: 200px;
  margin-bottom: 30px;
}
.banner-care .banner__subtext img {
  width: 100%;
  height: auto;
}
.banner-care .banner__lead {
  color: #000;
  line-height: 180%;
  font-size: 0.875rem;
  margin-bottom: 11.5px;
}
.banner-care .banner-sec {
  display: flex;
  flex-direction: column;
}
.banner-care .banner-sec-cont1 {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 30px;
}
.banner-care .banner-sec-cont1-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 16px;
}
.banner-care .banner-sec-cont1-item__ttl {
  background-color: #adadad;
  color: #fff;
  text-align: center;
  line-height: 1;
  margin-right: 15px;
  font-size: 0.625rem;
  width: 105px;
  padding: 7.5px 0px 7.5px;
}
.banner-care .banner-sec-cont1-item__val {
  line-height: 1;
  font-size: 0.9375rem;
}
.banner-care .banner-sec-cont1-item__val .yen {
  margin-right: 2px;
  font-size: 0.6875rem;
}
.banner-care .banner-sec-cont1-item__val .price {
  font-size: 1.25rem;
}
.banner-care .banner-sec-cont1-item__val .tax {
  font-size: 0.5625rem;
}
.banner-care .banner-sec-cont1-item__val .term {
  display: inline-block;
  margin-top: 1px;
  font-size: 1.25rem;
}
.banner-care .banner-sec-cont2 {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
}
.banner-care .banner-sec-cont2 .btn-round {
  position: relative;
  z-index: 1;
}
.banner-care .banner__img {
  width: 100%;
}
.banner-care .banner__img img {
  margin-left: 1px;
  width: 100%;
}
.banner-care .banner__img a {
  display: block;
}

.promotion {
  margin-bottom: 60px;
}
.promotion__inner {
  width: 100%;
  text-align: center;
}
.promotion_cont-wrap.js-scroll-trigger {
  opacity: 0;
}
.promotion_cont-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.promotion__photo {
  margin: 0 auto;
}
.promotion__photo img {
  image-rendering: -webkit-optimize-contrast;
  width: 68%;
  height: auto;
  margin-left: 24px;
  margin-bottom: 14px;
}
.promotion__photo.js-scroll-trigger {
  opacity: 0;
}
.promotion__photo.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.promotion__ttl {
  margin: 0 auto;
  width: 234px;
  margin-bottom: 20px;
}
.promotion__ttl img {
  width: 100%;
  height: auto;
}
.promotion__ttl.js-scroll-trigger {
  opacity: 0;
}
.promotion__ttl.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.promotion-model {
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: baseline;
  margin-bottom: 17px;
}
.promotion-model__ttl {
  display: inline-block;
  border: 1px solid #000;
  line-height: 1;
  padding: 8px 10px 6px;
  font-size: 0.625rem;
  margin-bottom: 28px;
}
.promotion-model__simfree {
  line-height: 1;
  font-size: 0.625rem;
}
.promotion-model__price {
  display: flex;
  align-items: baseline;
  font-weight: bold;
  font-size: 1.25rem;
  margin-left: 3px;
}
.promotion-model__price .yen {
  font-weight: normal;
  font-size: 0.625rem;
}
.promotion-model__price .box {
  display: block;
  position: relative;
  margin: 0 10px 0 0;
}
.promotion-model__price .box span {
  display: inline-block;
  border: 1px solid currentColor;
  line-height: 1;
  text-align: center;
  padding: 3px 2.5px;
  font-size: 0.5625rem;
  position: relative;
  top: -3px;
}
.promotion-model__price .tax {
  font-weight: normal;
  font-size: 0.625rem;
}
.promotion__buttons {
  box-sizing: border-box;
  margin: 0 auto;
  text-align: center;
  display: inline-block;
}
.promotion__buttons .btn-round {
  display: block;
  margin-bottom: 17.5px;
}

.present {
  margin: 0 auto;
  width: 84%;
  margin-bottom: 110px;
}
.present__inner {
  width: 100%;
  height: auto;
}
.present a.link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
}
.present.js-scroll-trigger {
  overflow: auto;
  opacity: 0;
}
.present.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.banner {
  margin-bottom: 50px;
}

.banner-present {
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #ccc;
  border-radius: 5px;
  border: none;
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}
.banner-present .banner__img {
  width: 100%;
}
.banner-present .banner__img img {
  width: 100%;
}
.banner-present .banner__inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 50%;
  padding-top: 43.5px;
  transform: translate(-50%, 0);
}
.banner-present .banner__wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}
.banner-present .banner-cont1 {
  text-align: center;
  width: 100%;
}
.banner-present .banner-cont2 {
  text-align: center;
  width: 100%;
  padding-bottom: 27.5px;
}
.banner-present .banner__ttl-img {
  width: 241.5px;
  margin: 0 auto;
  margin-bottom: 15px;
}
.banner-present .banner__ttl-img img {
  width: 100%;
  height: auto;
}
.banner-present p {
  color: #000;
  font-size: 0.75rem;
  line-height: 160%;
  width: 241.5px;
  margin: 0 auto;
  text-align: left;
}
.banner-present .btn-round {
  margin-left: 7px;
}
@-webkit-keyframes blink {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-up {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-down {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-down {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-up {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-50px);
    opacity: 0;
  }
}
@keyframes fade-out-up {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-50px);
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-left {
  0% {
    transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-left {
  0% {
    transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-left {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(-50px);
    opacity: 0;
  }
}
@keyframes fade-out-left {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(-50px);
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-right {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-right {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(50px);
    opacity: 0;
  }
}
@keyframes fade-out-right {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(50px);
    opacity: 0;
  }
}
@-webkit-keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.3);
  }
}
@keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.3);
  }
}
@-webkit-keyframes zoom-out {
  0% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zoom-out {
  0% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes fade-zoom-in {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 1;
    transform: scale(1.3);
  }
}
@keyframes fade-zoom-in {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 1;
    transform: scale(1.3);
  }
}
@-webkit-keyframes fade-zoom-out {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fade-zoom-out {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-webkit-keyframes fade-in_sec {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in_sec {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-out_sec {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade-out_sec {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-up_sec {
  0% {
    transform: translateY(100px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up_sec {
  0% {
    transform: translateY(100px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-up_sec {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-100px);
    opacity: 0;
  }
}
@keyframes fade-out-up_sec {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-100px);
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-left_sec {
  0% {
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-left_sec {
  0% {
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-left_sec {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(-100px);
    opacity: 0;
  }
}
@keyframes fade-out-left_sec {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(-100px);
    opacity: 0;
  }
}
@-webkit-keyframes fade-in-right_sec {
  0% {
    transform: translateX(100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right_sec {
  0% {
    transform: translateX(100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-out-right_sec {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(100px);
    opacity: 0;
  }
}
@keyframes fade-out-right_sec {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(100px);
    opacity: 0;
  }
}
@-webkit-keyframes mask-in-left {
  0% {
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
    opacity: 0;
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 200%, 0 200%);
            clip-path: polygon(0 0, 100% 0, 100% 200%, 0 200%);
    opacity: 1;
  }
}
@keyframes mask-in-left {
  0% {
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
    opacity: 0;
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 200%, 0 200%);
            clip-path: polygon(0 0, 100% 0, 100% 200%, 0 200%);
    opacity: 1;
  }
}
@-webkit-keyframes mask-in-right {
  0% {
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
    opacity: 0;
  }
  100% {
    -webkit-clip-path: polygon(100% 0, 0 0, 0 200%, 100% 200%);
            clip-path: polygon(100% 0, 0 0, 0 200%, 100% 200%);
    opacity: 1;
  }
}
@keyframes mask-in-right {
  0% {
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
    opacity: 0;
  }
  100% {
    -webkit-clip-path: polygon(100% 0, 0 0, 0 200%, 100% 200%);
            clip-path: polygon(100% 0, 0 0, 0 200%, 100% 200%);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up__hero {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up__hero {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-down__hero {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-down__hero {
  0% {
    transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up__mainttl {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up__mainttl {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up__text {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-up__text {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up__logo {
  0% {
    margin-top: 50px;
    opacity: 0;
  }
  100% {
    margin-top: 0px;
    opacity: 1;
  }
}
@keyframes fade-in-up__logo {
  0% {
    margin-top: 50px;
    opacity: 0;
  }
  100% {
    margin-top: 0px;
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up__ttl {
  0% {
    margin-top: 50px;
    opacity: 0;
  }
  100% {
    margin-top: 0px;
    opacity: 1;
  }
}
@keyframes fade-in-up__ttl {
  0% {
    margin-top: 50px;
    opacity: 0;
  }
  100% {
    margin-top: 0px;
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-right__ttl {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right__ttl {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

/* 3D Effects */
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-theme-color: #000000;
}

:root {
  --swiper-navigation-size: 34.5px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 69 * 43);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
}
.swiper-button-prev::before,
.swiper-button-next::before {
  content: "";
  display: block;
  background-size: 100%;
  width: 100%;
  height: 100%;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 17.5px;
  right: auto;
}
.swiper-button-prev::before,
.swiper-container-rtl .swiper-button-next::before {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='43' height='69' viewBox='0 0 43 69'%3e%3cg fill='none' stroke-linecap='square'%3e%3cpath d='M34.5 8.5l-26 26 26 26' stroke='white' stroke-width='12' opacity='.5'/%3e%3cpath d='M34.5 8.5l-26 26 26 26' stroke='black' stroke-width='4'/%3e%3c/g%3e%3c/svg%3e");
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 17.5px;
  left: auto;
}
.swiper-button-next::before,
.swiper-container-rtl .swiper-button-prev::before {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='43' height='69' viewBox='0 0 43 69'%3e%3cg fill='none' stroke-linecap='square'%3e%3cpath d='M8.5 8.5l26 26-26 26' stroke='white' stroke-width='12' opacity='.5'/%3e%3cpath d='M8.5 8.5l26 26-26 26' stroke='black' stroke-width='4'/%3e%3c/g%3e%3c/svg%3e");
}

.swiper-button-prev::before,
.swiper-button-next::before {
  box-sizing: content-box;
  border: 10px solid transparent;
  margin: -10px;
}

.swiper-button-lock {
  display: none;
}

main {
  overflow: hidden;
}

.notice-present {
  display: none;
}

.notice {
  display: none;
}

.top-hero {
  position: relative;
  /*
    @include reserve-aspect {
      padding-top: calc(100% * 750 / 750);
      @include pc {
        padding-top: calc(100% * 1200 / 1200);
      }
    }
  */
}
.top-hero-ttl {
  opacity: 0;
  -webkit-animation: fade-in 1s ease 0.5s forwards;
          animation: fade-in 1s ease 0.5s forwards;
  pointer-events: none;
  position: absolute;
  top: 17.5%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 75%;
}
.top-hero-ttl img {
  width: 100%;
  height: auto;
}
.top-hero-ttl__scheduler {
  top: 15%;
  width: 88%;
}
.top-hero-ttl__scheduler img {
  margin-left: -4px;
}
.top-hero-ttl__case {
  top: 17.4%;
  width: 79%;
}
.top-hero-waku {
  opacity: 0;
  -webkit-animation: fade-in 1s ease 0.5s forwards;
          animation: fade-in 1s ease 0.5s forwards;
  pointer-events: none;
  position: absolute;
  top: 10.1%;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
}
.top-hero-waku span {
  line-height: 1;
  color: #fff;
  font-size: 0.5625rem;
  display: inline-block;
  border: 1px solid white;
  padding: 3px 18px 2px;
}
.top-hero-nav {
  opacity: 0;
  -webkit-animation: fade-in 1s ease 0.5s forwards;
          animation: fade-in 1s ease 0.5s forwards;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  top: 23.6%;
  width: 261.5px;
}
.top-hero-nav__wj {
  top: 35.5%;
}
.top-hero .swiper-container {
  -webkit-transform-style: preserve-3d;
  opacity: 0;
  -webkit-animation: fade-in 1s ease 0s forwards;
          animation: fade-in 1s ease 0s forwards;
  position: relative;
  z-index: 0;
  width: 100%;
  height: auto;
  margin-bottom: 15px;
}
.top-hero .swiper-slide {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  width: 100%;
}
.top-hero .swiper-slide img {
  image-rendering: -webkit-optimize-contrast;
  width: 100%;
  height: auto;
}
.top-hero .swiper-pagination-bullet {
  background-color: #C0C0C0;
  border-radius: 50%;
  opacity: 1;
  width: 10px;
  height: 10px;
  margin: 0 3.25px !important;
}
.top-hero .swiper-pagination-bullet-active {
  background-color: #404040;
}
.top-hero .swiper-pagination-bullet:hover {
  opacity: 0.75;
}
.top-hero .swiper-container {
  overflow: visible;
}
.top-hero .swiper-pagination-bullets {
  bottom: -28px !important;
}
.top-hero .slide_calculator .top-hero-ttl {
  width: 87%;
  top: 8%;
}
.top-hero .slide_case .top-hero-ttl {
  width: 88%;
}
.top-hero .slide_time .top-hero-ttl {
  width: 90%;
  top: 14%;
}

.top-intro {
  position: relative;
  pointer-events: none;
  padding-top: 75px;
  margin-bottom: 120px;
}
.top-intro__inner {
  position: relative;
  z-index: 1;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 21px;
  width: 80%;
}
.top-intro-ttl {
  margin: 0 auto;
  line-height: 160%;
  font-size: 1.375rem;
  margin-bottom: 61px;
  margin-left: 17.5px;
}
.top-intro-ttl.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-intro-ttl.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-up__text 0s forwards;
          animation: 1s fade-in-up__text 0s forwards;
}
.top-intro-lead {
  text-align: left;
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 32.5px;
}
.top-intro-lead.js-scroll-trigger {
  opacity: 0;
}
.top-intro-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-up__text 0s forwards;
          animation: 1s fade-in-up__text 0s forwards;
}
.top-intro-price {
  margin-bottom: 50px;
}
.top-intro-price__ttl {
  display: inline-block;
  border: 1px solid #000;
  line-height: 1;
  padding: 7px 16px 6px;
  font-size: 0.75rem;
  margin-bottom: 9px;
}
.top-intro-price__content {
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-weight: bold;
  font-size: 1.5625rem;
  margin: 0 5px 4px 3px;
  padding-left: 20px;
}
.top-intro-price__content .yen {
  font-weight: normal;
  font-size: 0.6875rem;
}
.top-intro-price__content .tax {
  font-weight: normal;
  font-size: 0.625rem;
}
.top-intro-price__simfree {
  line-height: 1;
  font-size: 0.75rem;
}
.top-intro-price.js-scroll-trigger {
  opacity: 0;
}
.top-intro-price.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-up__text 0s forwards;
          animation: 1s fade-in-up__text 0s forwards;
}
.top-intro__mov {
  position: relative;
  width: 100%;
  height: auto;
}
.top-intro__mov::after {
  content: "";
  position: absolute;
  top: -15px;
  left: 0;
  width: 100%;
  height: 10px;
  display: block;
  border: solid 10px #fff;
}
.top-intro__mov::before {
  content: "";
  display: block;
  padding-top: 106.6666666667%;
}
.top-intro__mov video,
.top-intro__mov img {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 160%;
  transform: translate(-50%, -51%);
  top: 50%;
  left: 50%;
}
.top-intro__mov.js-scroll-trigger {
  opacity: 0;
}
.top-intro__mov.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-up__text 0s forwards;
          animation: 1s fade-in-up__text 0s forwards;
}

.top-banner {
  margin: 0 0 160px;
}
.top-banner__inner {
  padding: 0 40px;
  display: flex;
  justify-content: center;
}
.top-banner__inner.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-banner__inner.js-scroll-trigger.is-show {
  animation: 1s fade-in-up__text 0s forwards;
}
.top-banner__inner picture img {
  max-width: 100%;
  display: block;
}


.top-hardware {
  position: relative;
  z-index: 1;
  margin-bottom: 150px;
}
.top-hardware__inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: #ebebeb;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: calc(100% * 180 / 750);
}
.top-hardware__inner .double-border {
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  top: -9.2%;
  left: 0;
  mix-blend-mode: multiply;
}
.top-hardware__inner .double-border-inner {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: left top;
  transform: skewY(25.6deg);
  width: 100%;
  z-index: 1;
}
.top-hardware__inner .double-border-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: solid 10px #DBDCDC;
  position: absolute;
  left: 0;
  top: 0px;
}
.top-hardware__inner .double-border-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: solid 10px #02F3C3;
  position: absolute;
  left: 0;
  top: 11px;
}
.top-hardware__inner .double-border.js-scroll-trigger {
  opacity: 0;
  -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
          clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
}
.top-hardware__inner .double-border.js-scroll-trigger.is-show {
  -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
          animation: mask-in-left 0.75s ease-in-out 0s forwards;
}
.top-hardware__inner2 {
  position: relative;
  padding-right: calc(100% * 50 / 750);
}
.top-hardware__inner3 {
  position: relative;
}
.top-hardware .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: right;
  color: #BCBCBC;
  font-size: 3.125rem;
  line-height: 120%;
  top: -62.5px;
  left: 29%;
}
.top-hardware .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-hardware .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-left 0s forwards;
          animation: 1s fade-in-left 0s forwards;
}
.top-hardware__photo {
  padding-top: 26px;
  font-size: 0;
  white-space: nowrap;
  overflow: hidden;
}
.top-hardware__photo img {
  width: 100%;
  height: auto;
}
.top-hardware__photo.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-hardware__photo.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
@-webkit-keyframes slide_cont2 {
  0% {
    margin-left: 0;
  }
  5% {
    margin-left: -100%;
  }
  50% {
    margin-left: -100%;
  }
  55% {
    margin-left: -200%;
  }
  100% {
    margin-left: -200%;
  }
}
@keyframes slide_cont2 {
  0% {
    margin-left: 0;
  }
  5% {
    margin-left: -100%;
  }
  50% {
    margin-left: -100%;
  }
  55% {
    margin-left: -200%;
  }
  100% {
    margin-left: -200%;
  }
}
.top-hardware__photo > :first-child img {
  -webkit-animation-name: slide_cont2;
          animation-name: slide_cont2;
  -webkit-animation-duration: 9s;
          animation-duration: 9s;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
.top-hardware__side {
  display: flex;
  flex-direction: column;
}
.top-hardware .section-copy-wrap {
  box-sizing: border-box;
  width: 100vw;
  padding: 0 37.5px;
  padding-top: 40px;
  margin-bottom: 39px;
}
.top-hardware .section-copy-wrap.js-scroll-trigger {
  opacity: 0;
}
.top-hardware .section-copy-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-hardware .section-copy {
  font-weight: bold;
  line-height: 160%;
  font-size: 1.8125rem;
  margin-bottom: 35px;
}
.top-hardware .section-copy.js-scroll-trigger {
  opacity: 0;
}
.top-hardware .section-copy.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-hardware .section-lead {
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 45px;
  width: 100%;
}
.top-hardware .section-lead.js-scroll-trigger {
  opacity: 0;
}
.top-hardware .section-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.top-app {
  position: relative;
  z-index: 4;
  margin-bottom: 150px;
}
.top-app__scroll {
  width: 100vw;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  transition: opacity 0s ease;
  opacity: 0;
}
.top-app__scroll.is-show {
  opacity: 1;
  transition-duration: 1s;
}
.top-app__scroll::-webkit-scrollbar {
  display: none;
}
.top-app__img {
  margin: auto;
  width: 487px;
  margin-left: 5%;
  margin-bottom: 16px;
}
.top-app__img img {
  image-rendering: -webkit-optimize-contrast;
  display: block;
  width: 100%;
}
.top-app__inner {
  position: relative;
  padding-right: calc(100% * 180 / 750);
}
.top-app__inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: #ebebeb;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: calc(100% * 180 / 750);
}
.top-app__inner .double-border {
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  top: 57.7%;
  left: 0;
  mix-blend-mode: multiply;
}
.top-app__inner .double-border-inner {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: right top;
  transform: skewY(-25.6deg);
  width: 100%;
  z-index: 1;
}
.top-app__inner .double-border-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: solid 10px #DBDCDC;
  position: absolute;
  left: 0;
  top: 0px;
}
.top-app__inner .double-border-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: solid 10px #FFFE00;
  position: absolute;
  left: 0;
  top: 11px;
}
.top-app__inner .double-border.js-scroll-trigger {
  opacity: 0;
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
          clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
}
.top-app__inner .double-border.js-scroll-trigger.is-show {
  -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
          animation: mask-in-right 0.75s ease-in-out 0s forwards;
}
.top-app__inner2 {
  position: relative;
  z-index: 1;
  width: 100%;
}
.top-app__side {
  display: flex;
  flex-direction: column;
}
.top-app .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: left;
  color: #BCBCBC;
  font-size: 2.5rem;
  line-height: 120%;
  margin-bottom: 0;
  top: -50px;
  left: 10%;
}
.top-app .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-app .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-app .section-copy-wrap {
  box-sizing: border-box;
  width: 100vw;
  padding: 0 37.5px;
  margin-top: 50px;
  margin-bottom: 25px;
}
.top-app .section-copy-wrap.js-scroll-trigger {
  opacity: 0;
}
.top-app .section-copy-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-app .section-copy {
  font-weight: bold;
  line-height: 160%;
  font-size: 1.8125rem;
  margin-bottom: 45px;
}
.top-app .section-copy.js-scroll-trigger {
  opacity: 0;
}
.top-app .section-copy.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-app .section-lead {
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 30px;
  width: 100%;
}
.top-app .section-lead.js-scroll-trigger {
  opacity: 0;
}
.top-app .section-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-app__photo {
  margin-left: 0;
}
.top-app__photo img {
  width: 132%;
  margin-left: -8.8%;
}
.top-app__photo.js-scroll-trigger {
  opacity: 0;
}
.top-app__photo.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.top-personal {
  position: relative;
  z-index: 1;
  margin-bottom: 157.5px;
}
.top-personal__inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: #ebebeb;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: calc(100% * 180 / 750);
}
.top-personal__inner .double-border {
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  top: 90%;
  left: 0;
  mix-blend-mode: multiply;
}
.top-personal__inner .double-border-inner {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: left top;
  transform: skewY(25.6deg);
  width: 100%;
  z-index: 1;
}
.top-personal__inner .double-border-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: solid 10px #DBDCDC;
  position: absolute;
  left: 0;
  top: 0px;
}
.top-personal__inner .double-border-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: solid 10px #E24545;
  position: absolute;
  left: 0;
  top: 11px;
}
.top-personal__inner .double-border.js-scroll-trigger {
  opacity: 0;
  -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
          clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
}
.top-personal__inner .double-border.js-scroll-trigger.is-show {
  -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
          animation: mask-in-left 0.75s ease-in-out 0s forwards;
}
.top-personal__inner2 {
  position: relative;
  width: 100vw;
}
.top-personal__inner3 {
  width: 100vw;
}
.top-personal .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: right;
  color: #BCBCBC;
  font-size: 2.90625rem;
  line-height: 120%;
  top: -55px;
  right: 12%;
}
.top-personal .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-personal .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-right 0s forwards;
          animation: 1s fade-in-right 0s forwards;
}
.top-personal .section-copy-wrap {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100vw;
  padding: 0 37.5px;
  padding-top: 40px;
}
.top-personal .section-copy-wrap.js-scroll-trigger {
  opacity: 0;
}
.top-personal .section-copy-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-personal .section-copy {
  font-weight: bold;
  line-height: 160%;
  font-size: 1.8125rem;
  margin-bottom: 25px;
}
.top-personal .section-copy.js-scroll-trigger {
  opacity: 0;
}
.top-personal .section-copy.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-personal .section-lead {
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 48px;
  width: 100%;
}
.top-personal .section-lead.js-scroll-trigger {
  opacity: 0;
}
.top-personal .section-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-personal .swiper-wrap {
  -webkit-transform-style: preserve-3d;
  width: 100%;
}
.top-personal .swiper-container {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 15px;
}
.top-personal .swiper-slide {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 84%;
}
.top-personal .swiper-slide img {
  image-rendering: -webkit-optimize-contrast;
  width: 100%;
  height: auto;
}
.top-personal .swiper-button {
  margin: 0;
  position: absolute;
  top: 50%;
  width: 26px;
  height: 26px;
  display: none;
  opacity: 1;
  transition: all 0.15s ease-out;
}
.top-personal .swiper-button:hover {
  opacity: 0.75;
}
.top-personal .swiper-button-prev {
  left: 6%;
  transform: translate(-50%, -50%);
}
.top-personal .swiper-button-next {
  right: 6%;
  transform: translate(50%, -50%);
}
.top-personal .swiper-button-next::before, .top-personal .swiper-button-prev::before {
  border: none;
  margin: 0;
}
.top-personal .swiper-button-prev::before {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='62' height='62' viewBox='0 0 62 62'%3e%3cg transform='translate(-1365 860)'%3e%3ccircle cx='31' cy='31' r='31' transform='translate(1365 -860)' fill='%23313131' opacity='.503'/%3e%3cpath d='M1403.104-842.081l-13.386 13.386 13.386 13.386' fill='none' stroke='white' stroke-width='6' opacity='.703'/%3e%3c/g%3e%3c/svg%3e");
  background-size: 100%;
  width: inherit;
  height: inherit;
}
.top-personal .swiper-button-next::before {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='62' height='62' viewBox='0 0 62 62'%3e%3cg transform='rotate(180 713.5 -399)'%3e%3ccircle cx='31' cy='31' r='31' transform='translate(1365 -860)' fill='%23313131' opacity='.503'/%3e%3cpath d='M1403.104-842.081l-13.386 13.386 13.386 13.386' fill='none' stroke='white' stroke-width='6' opacity='.703'/%3e%3c/g%3e%3c/svg%3e");
  background-size: 100%;
  width: inherit;
  height: inherit;
}

.top-quality {
  position: relative;
  margin-bottom: 150px;
}
.top-quality__img {
  margin: auto;
  width: 100%;
}
.top-quality__img img {
  display: block;
  width: 100%;
  height: auto;
}
.top-quality__inner2 {
  width: 100%;
}
.top-quality__inner3 {
  width: 100%;
}
.top-quality__side {
  display: flex;
  flex-direction: column;
}
.top-quality .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: right;
  color: #BCBCBC;
  font-size: 3.125rem;
  line-height: 120%;
  top: -62.5px;
  left: 10%;
}
.top-quality .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-quality .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-left 0s forwards;
          animation: 1s fade-in-left 0s forwards;
}
.top-quality .section-copy-wrap {
  box-sizing: border-box;
  width: 100vw;
  padding: 0 37.5px;
  margin-top: 30px;
}
.top-quality .section-copy-wrap.js-scroll-trigger {
  opacity: 0;
}
.top-quality .section-copy-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-quality .section-copy {
  font-weight: bold;
  line-height: 180%;
  font-size: 1.8125rem;
  margin-bottom: 28px;
  width: 100%;
}
.top-quality .section-copy.js-scroll-trigger {
  opacity: 0;
}
.top-quality .section-copy.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-quality .section-lead {
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 15px;
  width: 100%;
}
.top-quality .section-lead.js-scroll-trigger {
  opacity: 0;
}
.top-quality .section-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.top-accessories {
  position: relative;
  z-index: 1;
  margin-bottom: 150px;
}
.top-accessories__img {
  margin: auto;
  width: 833.5px;
}
.top-accessories__img img {
  display: block;
  width: 100%;
}
.top-accessories__inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: #ebebeb;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: calc(100% * 180 / 750);
}
.top-accessories__inner .double-border {
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  top: 27.8%;
  left: 0;
  mix-blend-mode: multiply;
}
.top-accessories__inner .double-border-inner {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: right top;
  transform: skewY(-25.6deg);
  width: 100%;
  z-index: 1;
}
.top-accessories__inner .double-border-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: solid 10px #DBDCDC;
  position: absolute;
  left: 0;
  top: 0px;
}
.top-accessories__inner .double-border-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: solid 10px #80B8FB;
  position: absolute;
  left: 0;
  top: 11px;
}
.top-accessories__inner .double-border.js-scroll-trigger {
  opacity: 0;
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
          clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
}
.top-accessories__inner .double-border.js-scroll-trigger.is-show {
  -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
          animation: mask-in-right 0.75s ease-in-out 0s forwards;
}
.top-accessories__inner2 {
  width: 100%;
}
.top-accessories__inner3 {
  width: 100%;
}
.top-accessories__side {
  display: flex;
  flex-direction: column;
}
.top-accessories .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: right;
  color: #BCBCBC;
  font-size: 3.125rem;
  line-height: 120%;
  top: -62.5px;
  left: 10%;
}
.top-accessories .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-accessories .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-left 0s forwards;
          animation: 1s fade-in-left 0s forwards;
}
.top-accessories .section-copy-wrap {
  box-sizing: border-box;
  width: 100vw;
  padding: 0 37.5px;
  padding-top: 40px;
  margin-bottom: 45px;
}
.top-accessories .section-copy-wrap.js-scroll-trigger {
  opacity: 0;
}
.top-accessories .section-copy-wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-accessories .section-lead {
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 35px;
  width: 100%;
}
.top-accessories .section-lead.js-scroll-trigger {
  opacity: 0;
}
.top-accessories .section-lead.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-accessories__photo {
  margin-left: 0;
}
.top-accessories__photo img {
  width: 100%;
}
.top-accessories__photo.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-accessories__photo.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.top-story {
  position: relative;
  margin-bottom: 150px;
}
.top-story__bgimg {
  width: 100%;
  height: auto;
}
.top-story__bgimg img {
  width: 100%;
  height: auto;
}
.top-story__bgimg.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-story__bgimg.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-story .section-title {
  position: absolute;
  top: 0;
  right: 0;
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  color: #BCBCBC;
  top: -65px;
  font-size: 2.90625rem;
  line-height: 120%;
  margin-right: 22px;
}
.top-story .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-story .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-story__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  right: 0;
  transform: translate(-50%, -50%);
  width: 80%;
}
.top-story__wrap.js-scroll-trigger {
  opacity: 0;
}
.top-story__wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-story .section-copy {
  color: #fff;
  font-weight: bold;
  line-height: 180%;
  font-size: 1.8125rem;
  margin-bottom: 40px;
}
.top-story .section-lead {
  color: #fff;
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 50px;
}
.top-story-prof-sign {
  width: 172px;
  margin-bottom: 22px;
}
.top-story-prof-sign img {
  width: 100%;
  height: auto;
}
.top-story-prof-name {
  font-family: "Noto Serif JP", serif;
  color: #fff;
  line-height: 160%;
  font-size: 0.8125rem;
  margin-bottom: 30px;
}

.top-update {
  position: relative;
  margin-bottom: 180px;
}
.top-update__bgimg {
  width: 100%;
  height: auto;
}
.top-update__bgimg img {
  width: 100%;
  height: auto;
}
.top-update__bgimg.js-scroll-trigger {
  will-change: transform, animation, position, opacity;
  opacity: 0;
}
.top-update__bgimg.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-update .section-title {
  position: absolute;
  top: 0;
  left: 7.8%;
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  color: #BCBCBC;
  top: -65px;
  font-size: 2.90625rem;
  line-height: 120%;
  margin-right: 22px;
}
.top-update .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-update .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-right 0s forwards;
          animation: 1s fade-in-right 0s forwards;
}
.top-update__wrap {
  position: absolute;
  top: 62%;
  left: 50%;
  right: 0;
  transform: translate(-50%, -50%);
  width: 80%;
}
.top-update__wrap.js-scroll-trigger {
  opacity: 0;
}
.top-update__wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-update .section-copy {
  color: #000;
  font-weight: bold;
  line-height: 160%;
  font-size: 1.8125rem;
  margin-bottom: 30px;
}
.top-update .section-lead {
  color: #000;
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 15px;
}
.top-update .update-list {
  background-color: rgba(255, 255, 255, 0.5);
  width: 100%;
  margin: 0 auto;
  padding: 8px 22px 8px 22px;
}
.top-update .update-list li {
  display: flex;
  align-items: flex-start;
  border-top: 1px solid #aaa;
  padding: 8px 0px;
}
.top-update .update-list li a:hover {
  opacity: 0.5;
}
.top-update .update-list li:first-child {
  border: none;
}
.top-update .update-list__content {
  display: flex;
  align-items: flex-start;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 0.625rem;
  color: #000;
  line-height: 160%;
  text-decoration: none;
  transition: all 0.3s;
}
.top-update .update-list__ttl {
  font-weight: bold;
  color: #000;
  font-size: 0.625rem;
  margin-bottom: 10px;
}
.top-update .update-list time {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  color: #000;
  padding-right: 12px;
}
.top-update .update-list p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.top-update .update-list .more {
  display: block;
  text-align: right;
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  font-weight: bold;
  font-size: 0.5625rem;
  color: #333;
}
.top-update .update-list .more span {
  display: inline-block;
  vertical-align: middle;
  padding-top: 1px;
}
.top-update .update-list .more:hover {
  opacity: 0.5;
}
.top-guide {
  position: relative;
  z-index: 1;
  margin-bottom: 120px;
}
.top-guide__inner {
  position: relative;
  padding-right: calc(100% * 60 / 750);
}
.top-guide__inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: #ebebeb;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: calc(100% * 180 / 750);
}
.top-guide__inner .double-border {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  pointer-events: none;
  top: 82.5%;
  left: 0;
  mix-blend-mode: multiply;
}
.top-guide__inner .double-border-inner {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: right top;
  transform: skewY(-25.6deg);
  width: 100%;
  z-index: 1;
}
.top-guide__inner .double-border-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: solid 10px #DBDCDC;
  position: absolute;
  left: 0;
  top: 0px;
}
.top-guide__inner .double-border-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: solid 10px #024805;
  position: absolute;
  left: 0;
  top: 11px;
}
.top-guide__inner .double-border.js-scroll-trigger {
  opacity: 0;
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
          clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
}
.top-guide__inner .double-border.js-scroll-trigger.is-show {
  -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
          animation: mask-in-right 0.75s ease-in-out 0s forwards;
}
.top-guide__inner2 {
  width: 100%;
}
.top-guide .section-title {
  font-family: "gotham", sans-serif;
  font-weight: 500;
  letter-spacing: -0.006em;
  position: absolute;
  letter-spacing: -0.03em;
  text-align: left;
  color: #BCBCBC;
  font-size: 2.90625rem;
  line-height: 130%;
  top: -128px;
  left: 7.8%;
}
.top-guide .section-title.js-scroll-trigger {
  opacity: 0;
}
.top-guide .section-title.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in-right 0s forwards;
          animation: 1s fade-in-right 0s forwards;
}
.top-guide__wrap {
  position: absolute;
  margin: 0 auto;
  top: 51%;
  left: 0;
  right: 0;
  width: 80%;
}
.top-guide__wrap.js-scroll-trigger {
  opacity: 0;
}
.top-guide__wrap.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}
.top-guide .section-copy {
  color: #000;
  font-weight: bold;
  line-height: 150%;
  font-size: 1.8125rem;
  margin-bottom: 25px;
}
.top-guide .section-lead {
  color: #000;
  line-height: 180%;
  font-size: 1rem;
  margin-bottom: 31px;
}
.top-guide__photo img {
  width: 100%;
  height: auto;
  margin-top: 31.5px;
  margin-bottom: 44px;
}
.top-guide__photo.js-scroll-trigger {
  opacity: 0;
}
.top-guide__photo.js-scroll-trigger.is-show {
  -webkit-animation: 1s fade-in 0s forwards;
          animation: 1s fade-in 0s forwards;
}

.top-gallery .gallery {
  margin: 0 auto;
  margin-bottom: 100px;
  width: 80%;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, 47%);
  -ms-grid-rows: (auto)[2];
  grid-template-rows: repeat(2, auto);
  grid-gap: 20px 6%;
}
.top-gallery .gallery a {
  opacity: 1;
}
.top-gallery .gallery a img {
  vertical-align: top;
  width: 100%;
  height: auto;
}
.top-gallery .gallery a:hover {
  opacity: 0.75;
}

.top-foot {
  position: relative;
  z-index: -1;
  margin-top: -160px;
}
.top-foot__img {
  width: 100%;
}
.top-foot__img img {
  width: 100%;
}

.cta_headline {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90%;
  padding: 0.5rem 0;
  border-top: 1px solid #e59703;
  border-bottom: 1px solid #e59703;
  font-size: 0.8rem;
  line-height: 1.5;
  text-decoration: none;
  color: #e59703;
  margin-bottom: 3rem;
  pointer-events: auto;
}
.cta_headline .__news {
  display: inline-block;
  margin-right: 0.5rem;
  padding: 0.2rem 0.5rem;
  border-radius: 2px;
  background-color: #e59703;
  color: #fff;
  text-transform: uppercase;
}
.cta_headline .__text {
  width:90%;
  text-align:center;
}
/* photoswipe */
.pswp__button--arrow--left:before, .pswp__button--arrow--right:before,
.pswp__button--arrow--left:after, .pswp__button--arrow--right:after {
  background: transparent !important;
}

.pswp__button--close {
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3e%3cdefs%3e%3cclipPath id='a'%3e%3cpath stroke='%23707070' fill='none' stroke-width='2' d='M0 0h60v60H0z'/%3e%3c/clipPath%3e%3c/defs%3e%3cg clip-path='url(%23a)' stroke='white' fill='none' stroke-width='2'%3e%3cpath d='M1.024 1.024l57.951 57.951M1.024 58.975L58.975 1.024'/%3e%3c/g%3e%3c/svg%3e") !important;
  background-size: 100% !important;
  background-position: 0 0 !important;
  margin-top: 0 !important;
  top: 20px !important;
  right: 20px !important;
  width: 30px !important;
  height: 30px !important;
}

.pswp__button--arrow--left {
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3e%3cdefs%3e%3cclipPath id='a'%3e%3cpath stroke='%23707070' fill='none' stroke-width='2' d='M0 0h32.05v60H0z'/%3e%3c/clipPath%3e%3c/defs%3e%3cg transform='translate(13)' clip-path='url(%23a)'%3e%3cpath d='M31.025 1.024L2.049 29.999 31.025 58.97' stroke='white' fill='none' stroke-width='2'/%3e%3c/g%3e%3c/svg%3e") !important;
  background-size: 100% !important;
  background-position: 0 0 !important;
  margin-top: 0 !important;
  left: 10px !important;
  width: 30px !important;
  height: 30px !important;
  transform: translateY(-50%);
}

.pswp__button--arrow--right {
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3e%3cdefs%3e%3cclipPath id='a'%3e%3cpath stroke='%23707070' fill='none' stroke-width='2' d='M0 0h32.05v60H0z'/%3e%3c/clipPath%3e%3c/defs%3e%3cg transform='translate(14)' clip-path='url(%23a)'%3e%3cpath d='M1.025 1.024L30 29.999 1.025 58.97' stroke='white' fill='none' stroke-width='2'/%3e%3c/g%3e%3c/svg%3e") !important;
  background-size: 100% !important;
  background-position: 0 0 !important;
  margin-top: 0 !important;
  right: 10px !important;
  width: 30px !important;
  height: 30px !important;
  transform: translateY(-50%);
}

.pswp--open {
  will-change: opacity;
  opacity: 0;
  -webkit-animation: fade-in 0.5s ease 0.01s forwards;
          animation: fade-in 0.5s ease 0.01s forwards;
}

/*
.pswp__scroll-wrap {
  width: calc(100% - 40px);
  margin-left: 20px;
  overflow: visible;
}
*/

@media (min-width: 641px) {
  hr {
    width: 88%;
  }
  .btn-round {
    font-size: 1.125rem;
    padding: 14px 73px;
  }
  .btn-round--small--white {
    font-size: 0.875rem;
    padding: 16px 79px 14px;
  }
  .btn-round--home-hero {
    padding: 11px 45px 9px;
  }
  .btn-round--home-hero.btn-phone {
    color: #000;
    background-color: rgba(255, 255, 255, 0.56);
    border: none;
  }
  .btn-round--trans-white {
    padding: 11px 45px 9px;
  }
  .btn-round--w2 {
    padding: 11px 45px 9px;
  }
  .btn-round--border-ts {
    padding: 11px 45px 9px;
  }
  .btn-round--mid {
    font-size: 0.875rem;
    padding: 16px 65px 14px;
  }
  .btn-round--xmid {
    font-size: 0.875rem;
    padding: 16px 52px 14px;
  }
  .btn-round--small {
    font-size: 0.875rem;
    padding: 16px 46px 14px;
  }
  .btn-round--small-wb {
    font-size: 0.875rem;
    padding: 16px 38px 14px;
    color: #000;
    border-color: #000;
  }
  .btn-round--small-gray {
    font-size: 0.875rem;
    padding: 16px 54px 14px;
  }
  .btn-round--mid--white {
    font-size: 0.875rem;
    padding: 16px 65px 14px;
  }
  .btn-round--buy, .btn-round--store {
    font-size: 1.125rem;
    padding: 14px 70px;
  }
  .btn-round--wide-fillblack {
    padding: 14px 123px 13px;
  }
  .btn-round--care {
    width: 80%;
    font-size: 0.875rem;
    padding: 16px 23px 15px;
  }
  .btn-round--faq {
    width: 67%;
    font-size: 0.875rem;
    padding: 16px 23px 15px;
  }
  .btn-external {
    padding: 12px 40px 13px;
  }
  .btn-external-inner {
    font-size: 0.9rem;
  }
  .btn-external-inner::before {
    top: 0px;
    right: -28px;
    bottom: 0;
    width: 14px;
    height: 14px;
  }
  .btn-external-inner::after {
    top: 5px;
    right: -22px;
    bottom: 0;
    width: 4px;
    height: 4px;
  }
  .btn-exarrow {
    padding: 10px 40px 10px;
  }
  .btn-exarrow-inner {
    font-size: 0.9rem;
  }
  .btn-exarrow-inner::after {
    top: 0px;
    right: -28px;
    width: 14px;
    height: 14px;
  }
  .btn-exarrow--fillblack2 .btn-exarrow-inner::after {
    right: -15px;
  }
  .recommend {
    width: 84%;
    margin-bottom: 120px;
  }
  .banner-tryme .banner__inner {
    transform: translate(0, 0);
    padding-top: 15px;
    left: 25px;
  }
  .banner-tryme .banner-cont1 {
    text-align: left;
    margin-bottom: 0;
  }
  .banner-tryme .banner-cont2 {
    text-align: left;
    margin-bottom: 0px;
    padding-bottom: 15px;
  }
  .banner-tryme .banner__bar {
    line-height: 1;
    padding: 10px 20px 6px;
    font-size: 0.75rem;
    margin-bottom: 10px;
  }
  .banner-tryme .banner__ttl-img {
    width: 22%;
    margin: 0;
    margin-bottom: 10px;
  }
  .banner-tryme .banner__lead {
    font-size: 0.75rem;
    margin-left: 13px;
    margin-bottom: 8px;
  }
  .banner-tryme .banner__lead .day {
    font-size: 1.125rem;
  }
  .banner-tryme .btn-round {
    margin-left: 14px;
  }
  .banner-tryme__extext {
    margin-top: 15px;
  }
  .banner-tryme__extext p {
    font-size: 0.875rem;
  }
  .banner-care .banner-cont1 {
    padding: 47px 47px;
  }
  .banner-care .banner__ttl {
    width: 330px;
    margin-bottom: 10px;
  }
  .banner-care .banner__subtext {
    width: 249px;
    margin-bottom: 32px;
  }
  .banner-care .banner__lead {
    font-size: 1rem;
    margin-bottom: 10px;
  }
  .banner-care .banner-sec-cont1 {
    margin-bottom: 30px;
  }
  .banner-care .banner-sec-cont1-item {
    margin-top: 15px;
  }
  .banner-care .banner-sec-cont1-item__ttl {
    margin-right: 18px;
    font-size: 0.8125rem;
    width: 127px;
    padding: 8px 0px 8px;
  }
  .banner-care .banner-sec-cont1-item__val {
    font-size: 1.5625rem;
  }
  .banner-care .banner-sec-cont1-item__val .yen {
    margin-right: 4px;
    font-size: 1.25rem;
  }
  .banner-care .banner-sec-cont1-item__val .price {
    font-size: 2rem;
  }
  .banner-care .banner-sec-cont1-item__val .tax {
    font-size: 0.75rem;
  }
  .banner-care .banner-sec-cont1-item__val .term {
    margin-top: 2px;
    font-size: 1.875rem;
  }
  .promotion {
    margin-bottom: 120px;
  }
  .promotion__photo img {
    width: 60%;
    margin-left: 57px;
    margin-bottom: 38px;
  }
  .promotion__ttl {
    width: 340px;
    margin-bottom: 40px;
  }
  .promotion-model {
    margin-bottom: 24px;
  }
  .promotion-model__ttl {
    padding: 9px 16px;
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 42px;
  }
  .promotion-model__simfree {
    font-size: 1rem;
  }
  .promotion-model__price {
    margin-left: 6px;
    font-size: 2.5rem;
  }
  .promotion-model__price .yen {
    font-size: 1.25rem;
  }
  .promotion-model__price .box {
    margin: 0 15px 0 0;
  }
  .promotion-model__price .box span {
    font-weight: bold;
    padding: 6px 8px;
    font-size: 0.8125rem;
    top: -4px;
  }
  .promotion-model__price .tax {
    font-size: 0.875rem;
  }
  .promotion__buttons .btn-round {
    margin-bottom: 20px;
  }
  .present {
    width: 84%;
    margin-bottom: 120px;
  }
  .banner-present .banner__inner {
    transform: translate(0, 0);
    padding-top: 35px;
    left: 35px;
  }
  .banner-present .banner-cont1 {
    text-align: left;
    margin-bottom: 0;
  }
  .banner-present .banner-cont2 {
    text-align: left;
    margin-bottom: 0px;
    padding-bottom: 24px;
  }
  .banner-present .banner__ttl-img {
    width: 32%;
    margin: 0;
    margin-bottom: 10px;
  }
  .banner-present p {
    width: 50%;
    font-size: 0.875rem;
    line-height: 180%;
    margin: 0;
  }
  .banner-present .btn-round {
    margin: 0;
  }
  :root {
    --swiper-navigation-size: 40px;
  }
  .swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 45px;
  }
  .swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 45px;
  }
  .tb {
    display: block;
  }
  .pc2 {
    display: none;
  }
  .top-hero-ttl {
    top: 22%;
    width: 43%;
  }
  .top-hero-ttl__scheduler {
    top: 9.8%;
    width: 65%;
  }
  .top-hero-ttl__scheduler img {
    margin-left: -8px;
  }
  .top-hero-ttl__case {
    top: 20%;
    width: 60%;
  }
  .top-hero-waku {
    top: 5.8%;
  }
  .top-hero-waku span {
    font-size: 0.75rem;
    padding: 7px 45px 5px;
  }
  .top-hero-nav {
    top: 24%;
  }
  .top-hero-nav__wj {
    top: 44%;
  }
  .top-hero .swiper-container {
    margin-bottom: 30px;
  }
  .top-hero .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 5px !important;
  }
  .top-hero .swiper-pagination-bullets {
    bottom: -31px !important;
  }
  .top-hero .slide_calculator .top-hero-ttl {
    width: 74%;
    top: 10%;
  }
  .top-hero .slide_case .top-hero-ttl {
    width: 74%;
  }
  .top-hero .slide_time .top-hero-ttl {
    width: 74%;
    top: 11%;
  }
  .top-intro {
    padding-top: 92px;
    margin-bottom: 150px;
  }
  .top-intro__inner {
    margin-bottom: 42px;
  }
  .top-intro-ttl {
    text-indent: 0.5em;
    font-size: 2.375rem;
    margin-bottom: 62px;
  }
  .top-intro-lead {
    text-align: center;
    line-height: 200%;
    font-size: 1.125rem;
    margin-bottom: 65px;
  }
  .top-intro-price {
    margin-bottom: 60px;
  }
  .top-intro-price__ttl {
    padding: 9px 32px;
    font-size: 1rem;
    margin-bottom: 14px;
  }
  .top-intro-price__content {
    margin: 0 12px 5px 6px;
    font-size: 2.25rem;
    padding-left: 32px;
  }
  .top-intro-price__content .yen {
    font-size: 1.1875rem;
  }
  .top-intro-price__content .tax {
    font-size: 0.75rem;
  }
  .top-intro-price__simfree {
    font-size: 0.875rem;
  }
  .top-intro__mov::before {
    padding-top: 66.6666666667%;
  }
  .top-intro__mov video,
.top-intro__mov img {
    top: 0;
    left: 0;
    transform: translate(0, 0);
    width: 100%;
  }

  .top-banner {
    margin: 0 0 300px;

  }

  .top-hardware {
    margin-bottom: 300px;
  }
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 11px #02F3C3;
    top: 12px;
  }
  .top-hardware__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: -9.2%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-hardware__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left top;
    transform: skewY(25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-hardware__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-hardware__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #02F3C3;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-hardware__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
  }
  .top-hardware__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
            animation: mask-in-left 0.75s ease-in-out 0s forwards;
  }
  .top-hardware .section-title {
    font-size: 6.25rem;
    top: -125px;
  }
  .top-hardware__photo {
    padding-top: 30px;
  }
  .top-hardware .section-copy-wrap {
    padding: 0 75px;
    padding-top: 80px;
    margin-bottom: 50px;
  }
  .top-hardware .section-copy {
    font-size: 2.25rem;
    margin-bottom: 45px;
    line-height: 185%;
  }
  .top-hardware .section-lead {
    font-size: 1.1875rem;
    line-height: 180%;
    margin-bottom: 50px;
  }
  .top-app {
    margin-bottom: 300px;
  }
  .top-app__img {
    width: 974px;
    margin-bottom: 32px;
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 11px #FFFE00;
    top: 12px;
  }
  .top-app__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 36.5%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-app__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-app__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-app__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #FFFE00;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-app__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-app__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-app .section-title {
    font-size: 5rem;
    top: -142px;
  }
  .top-app .section-copy-wrap {
    padding: 0 75px;
    margin-top: 50px;
  }
  .top-app .section-copy {
    font-size: 2.25rem;
    margin-bottom: 45px;
    line-height: 185%;
  }
  .top-app .section-lead {
    font-size: 1.1875rem;
    margin-bottom: 46px;
    line-height: 190%;
  }
  .top-personal {
    margin-bottom: 354px;
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 11px #E24545;
    top: 12px;
  }
  .top-personal__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 92%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-personal__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left top;
    transform: skewY(25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-personal__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-personal__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #E24545;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-personal__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
  }
  .top-personal__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
            animation: mask-in-left 0.75s ease-in-out 0s forwards;
  }
  .top-personal .section-title {
    font-size: 5.8125rem;
    top: -130px;
    right: 13%;
  }
  .top-personal .section-copy-wrap {
    padding: 0 75px;
    padding-top: 80px;
  }
  .top-personal .section-copy {
    margin-bottom: 50px;
    font-size: 2.25rem;
  }
  .top-personal .section-lead {
    font-size: 1.1875rem;
    line-height: 190%;
    margin-bottom: 96px;
  }
  .top-personal .swiper-container {
    margin-bottom: 65px;
  }
  .top-personal .swiper-button {
    width: 40px;
    height: 40px;
  }
  .top-quality {
    margin-bottom: 300px;
  }
  .top-quality__img {
    width: 100%;
  }
  .top-quality .section-title {
    font-size: 6.25rem;
    top: -125px;
  }
  .top-quality .section-copy-wrap {
    margin-left: 6.75vw;
  }
  .top-quality .section-copy {
    margin-bottom: 20px;
    line-height: 180%;
    font-size: 2.1875rem;
  }
  .top-quality .section-lead {
    font-size: 1.1875rem;
    line-height: 180%;
    margin-bottom: 30px;
  }
  .top-accessories {
    margin-bottom: 300px;
  }
  .top-accessories__img {
    width: 1667px;
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 11px #80B8FB;
    top: 12px;
  }
  .top-accessories__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 10.8%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-accessories__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-accessories__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-accessories__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #80B8FB;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-accessories__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-accessories__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-accessories .section-title {
    font-size: 6.25rem;
    top: -125px;
  }
  .top-accessories .section-copy-wrap {
    padding: 0 75px;
    padding-top: 80px;
    margin-bottom: 50px;
  }
  .top-accessories .section-lead {
    font-size: 1.1875rem;
    line-height: 180%;
    margin-bottom: 50px;
  }
  .top-story {
    margin-bottom: 300px;
  }
  .top-story .section-title {
    top: -130px;
    font-size: 5.8125rem;
    margin-right: 44px;
  }
  .top-story .section-copy {
    font-size: 2.1875rem;
    margin-bottom: 20px;
  }
  .top-story .section-lead {
    font-size: 1.125rem;
    line-height: 180%;
    margin-bottom: 30px;
  }
  .top-story-prof-sign {
    width: 172px;
    margin-bottom: 10px;
  }
  .top-story-prof-name {
    font-size: 1rem;
    line-height: 160%;
    margin-bottom: 52px;
  }
  .top-update {
    margin-bottom: 260px;
  }
  .top-update__bgimg {
    height: 100%;
  }
  .top-update .section-title {
    top: -130px;
    font-size: 5.8125rem;
    margin-right: 44px;
  }
  .top-update .section-copy {
    font-size: 2.1875rem;
    margin-bottom: 20px;
  }
  .top-update .section-lead {
    font-size: 1.125rem;
    line-height: 180%;
    margin-bottom: 24px;
  }
  .top-update .update-list {
    padding: 25px 32px 15px 32px;
  }
  .top-update .update-list li {
    padding: 8px 0px;
  }
  .top-update .update-list__content {
    padding: 2px 0px;
    font-size: 0.875rem;
  }
  .top-update .update-list__ttl {
    font-size: 1rem;
    margin-bottom: 10px;
  }
  .top-update .update-list time {
    padding-right: 18px;
    font-size: 0.75rem;
  }
  .top-update .update-list .more {
    font-size: 0.75rem;
  }
  .top-guide {
    margin-bottom: 200px;
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 11px #024805;
    top: 12px;
  }
  .top-guide__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 83%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-guide__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-guide__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-guide__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #024805;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-guide__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-guide__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-guide .section-title {
    font-size: 5.8125rem;
    top: -140px;
    left: 3%;
    line-height: 100%;
  }
  .top-guide__wrap {
    top: 52%;
  }
  .top-guide .section-copy {
    font-size: 2.1875rem;
    margin-bottom: 50px;
  }
  .top-guide .section-lead {
    font-size: 1.1875rem;
    line-height: 200%;
    margin-bottom: 62px;
  }
  .top-guide__photo img {
    margin-top: 63px;
    margin-bottom: 88px;
  }
  .top-gallery .gallery {
    margin-bottom: 170px;
  }
  .top-gallery .gallery {
    width: 80%;
    grid-template-columns: repeat(auto-fit, 31%);
    grid-gap: 3.5% 3.5%;
  }
  .top-foot {
    margin-top: -320px;
  }
  .cta_headline {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    max-width: 980px;
    padding: 0.7rem 0;
    font-size: 0.9rem;
    margin-bottom: 46px;
  }
  .pswp__button--close {
    top: 30px !important;
    right: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
  .pswp__button--arrow--left {
    left: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
  .pswp__button--arrow--right {
    right: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

@media (min-width: 641px) and (max-width: 750px) {
  .btn-round--small-gray {
    padding: 9px 44px !important;
  }

  .banner-present p {
    width: 48%;
  }

  .banner-present .banner__inner {
    padding-top: 24px;
  }
}

@media (min-width: 641px) and (min-width: 641px) {
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 11px #02F3C3;
    top: 12px;
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 11px #FFFE00;
    top: 12px;
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 11px #E24545;
    top: 12px;
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 11px #80B8FB;
    top: 12px;
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 11px #024805;
    top: 12px;
  }
}

@media (min-width: 1090px) {
  .btn-round--border-ts {
    padding: 11px 45px 9px;
  }
  .btn-round--care {
    width: 303px;
    font-size: 0.875rem;
    padding: 16px 23px 15px;
  }
  .btn-round--faq {
    width: 303px;
    font-size: 0.875rem;
    padding: 16px 23px 15px;
  }
  .btn-external {
    padding: 12px 40px 14px;
    text-indent: -0.9em;
  }
  .btn-exarrow {
    padding: 10px 40px 10px;
    width: 49%;
    text-indent: -0.9em;
  }
  .btn-exarrow--fillblack2 {
    text-indent: -0.4em;
  }
  .recommend {
    width: 1029px;
    margin-bottom: 120px;
  }
  .banner-tryme {
    border-radius: 19px;
  }
  .banner-tryme .banner__inner {
    transform: translate(0, 0);
    padding-top: 27px;
    left: 120px;
  }
  .banner-tryme .banner-cont2 {
    text-align: left;
    margin-bottom: 0px;
    padding-bottom: 50px;
  }
  .banner-tryme .banner__bar {
    line-height: 1;
    padding: 9px 26px 7px;
    font-size: 1.0625rem;
    margin-bottom: 22px;
  }
  .banner-tryme .banner__ttl-img {
    width: 269px;
    margin: 0;
    margin-bottom: 25px;
  }
  .banner-tryme .banner__lead {
    font-size: 1rem;
    margin-left: 13px;
    margin-bottom: 26px;
  }
  .banner-tryme .banner__lead .day {
    font-size: 1.5rem;
  }
  .banner-tryme .btn-round {
    margin-left: 14px;
  }
  .banner-tryme__extext p {
    padding-left: 0;
    text-indent: 0;
    font-size: 0.875rem;
  }
  .banner-care {
    border-radius: 19px;
  }
  .banner-care {
    background-color: #fff;
  }
  .banner-care .banner__inner {
    flex-direction: row;
  }
  .banner-care .banner-cont1 {
    padding: 48px 38px 0px 47px;
    width: 55.8%;
    margin-bottom: 0px;
  }
  .banner-care .banner-cont2 {
    display: block;
    width: 45.2%;
  }
  .banner-care .banner__ttl {
    width: 330px;
    margin-bottom: 10px;
  }
  .banner-care .banner__subtext {
    width: 249px;
    margin-bottom: 32px;
  }
  .banner-care .banner__lead {
    line-height: 170%;
    font-size: 1rem;
    margin-bottom: 10px;
  }
  .banner-care .banner-sec {
    flex-direction: row;
  }
  .banner-care .banner-sec-cont1 {
    width: 68%;
    margin-bottom: 0px;
  }
  .banner-care .banner-sec-cont1-item__ttl {
    width: 127px;
    margin-right: 10px;
    font-size: 0.8125rem;
    padding: 8px 0px 8px 0px;
  }
  .banner-care .banner-sec-cont1-item__val {
    font-size: 1.875rem;
  }
  .banner-care .banner-sec-cont1-item__val .yen {
    margin-right: 4px;
    font-size: 1.1875rem;
  }
  .banner-care .banner-sec-cont1-item__val .price {
    font-size: 1.875rem;
  }
  .banner-care .banner-sec-cont1-item__val .tax {
    font-size: 0.8125rem;
  }
  .banner-care .banner-sec-cont1-item__val .term {
    margin-top: 2px;
    font-size: 1.875rem;
  }
  .banner-care .banner-sec-cont2 {
    justify-content: flex-end;
    width: 32%;
  }
  .promotion {
    margin-bottom: 130px;
  }
  .promotion__photo img {
    width: 462px;
    margin-left: 36px;
    margin-bottom: 38px;
  }
  .promotion__ttl {
    width: 368px;
    margin-bottom: 25px;
  }
  .promotion-model {
    margin-bottom: 24px;
  }
  .promotion-model__ttl {
    padding: 9px 16px;
    font-size: 1.125rem;
    margin-bottom: 52px;
  }
  .promotion-model__simfree {
    font-size: 0.9rem;
  }
  .promotion-model__price {
    margin-left: 6px;
    font-size: 2rem;
  }
  .promotion-model__price .yen {
    font-size: 1.15rem;
  }
  .promotion-model__price .box {
    margin: 0px 15px 0 0;
  }
  .promotion-model__price .tax {
    font-size: 0.775rem;
  }
  .present {
    width: 1029px;
    margin-bottom: 120px;
  }
  .banner-present {
    border-radius: 10px;
  }
  .banner-present .banner__inner {
    transform: translate(0, 0);
    padding-top: 54px;
    left: 76px;
  }
  .banner-present .banner-cont2 {
    text-align: left;
    margin-bottom: 0px;
    padding-bottom: 32px;
  }
  .banner-present .banner__ttl-img {
    width: 409px;
    margin: 0;
    margin-bottom: 25px;
  }
  .banner-present p {
    width: 409px;
    font-size: 1.125rem;
  }
  .tb {
    display: none;
  }
  .pc2 {
    display: block;
  }
  .top-hero-ttl {
    min-height: 0vw;
    width: 41.5vw;
  }
  .top-hero-ttl__scheduler {
    top: 9.8%;
    min-height: 0vw;
    width: 63.6666666667vw;
  }
  .top-hero-ttl__scheduler img {
    margin-left: -17px;
  }
  .top-hero-ttl__case {
    top: 20%;
    min-height: 0vw;
    width: 56.8333333333vw;
  }
  .top-hero-waku {
    top: 10.3%;
  }
  .top-hero-waku span {
    font-size: 1.125rem;
    padding: 7px 45px 5px;
  }
  .top-hero-nav {
    top: 23%;
  }
  .top-hero-nav__wj {
    top: 44%;
  }
  .top-hero .swiper-container {
    margin-bottom: 34px;
  }
  .top-hero .slide_calculator .top-hero-ttl {
    width: 755px;
    top: 10%;
  }
  .top-hero .slide_case .top-hero-ttl {
    width: 635px;
  }
  .top-hero .slide_time .top-hero-ttl {
    width: 771x;
    top: 12%;
  }
  .top-intro {
    padding-top: 92px;
    margin-bottom: 181px;
  }
  .top-intro__inner {
    width: 78%;
    max-width: 810px;
    margin-bottom: 0px;
  }
  .top-intro-ttl {
    text-indent: 0.5em;
    font-size: 2.375rem;
    margin-bottom: 62px;
  }
  .top-intro-lead {
    line-height: 200%;
    font-size: 1.125rem;
    margin-bottom: 62px;
  }
  .top-intro-price {
    margin-bottom: 60px;
  }
  .top-intro-price__ttl {
    padding: 9px 32px;
    font-size: 0.875rem;
    margin-bottom: 14px;
  }
  .top-intro-price__content {
    margin: 0 12px 5px 6px;
    font-size: 2.25rem;
  }
  .top-intro-price__content .yen {
    font-size: 1.1875rem;
  }
  .top-intro-price__content .tax {
    font-size: 0.75rem;
  }
  .top-intro-price__simfree {
    font-size: 0.75rem;
  }
  .top-intro__mov {
    margin-top: -5.8%;
  }

  .top-banner {

  }

  .top-hardware {
    margin-bottom: 320px;
  }
  .top-hardware__inner::before {
    margin-left: calc(50% - 600px + 468px);
  }
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 15px #02F3C3;
    top: 16px;
  }
  .top-hardware__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: -13.8%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-hardware__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left top;
    transform: skewY(25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-hardware__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-hardware__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #02F3C3;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-hardware__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
  }
  .top-hardware__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
            animation: mask-in-left 0.75s ease-in-out 0s forwards;
  }
  .top-hardware__inner2 {
    padding-right: calc(50% - 600px + 94px);
  }
  .top-hardware__inner3 {
    padding-left: calc(50% - 600px + 468px);
  }
  .top-hardware .section-title {
    top: -110px;
    left: 39%;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-hardware__photo {
    padding-top: 60px;
  }
  .top-hardware .section-copy-wrap {
    width: 100%;
    padding: 0;
    margin-top: 45px;
    margin-left: 6.75vw;
    margin-bottom: 72px;
  }
  .top-hardware .section-copy {
    font-size: 2.25rem;
    margin-bottom: 22px;
    line-height: 185%;
  }
  .top-hardware .section-lead {
    width: 444px;
    margin-bottom: 46px;
    line-height: 200%;
    font-size: 1.125rem;
  }
  .top-app {
    margin-bottom: 240px;
  }
  .top-app__scroll {
    width: 100%;
  }
  .top-app__img {
    width: 87%;
    max-width: 1120px;
    margin-left: 10%;
    margin-bottom: 26px;
  }
  .top-app__img img {
    margin-left: 2%;
  }
  .top-app__inner {
    padding-right: calc(50% - 600px + 0px);
  }
  .top-app__inner::before {
    margin-right: calc(50% - 600px + 169px);
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 15px #FFFE00;
    top: 16px;
  }
  .top-app__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 10%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-app__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-app__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-app__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #FFFE00;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-app__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-app__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-app__inner2 {
    width: 100vw;
    box-sizing: content-box;
  }
  .top-app .section-title {
    top: -106px;
    left: 4.1%;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-app .section-copy-wrap {
    width: 100%;
    padding: 0;
    margin-top: 100px;
    padding-left: 5.1%;
  }
  .top-app .section-copy {
    font-size: 2.25rem;
    margin-bottom: 22px;
    line-height: 185%;
  }
  .top-app .section-lead {
    width: 650px;
    margin-bottom: 38px;
    line-height: 200%;
    font-size: 1.125rem;
  }
  .top-app__photo {
    margin-left: 28.3333333333vw;
  }
  .top-app__photo img {
    width: 100%;
    margin-left: 0;
    margin-bottom: -153px;
    margin-top: -30px;
  }
  .top-personal {
    padding-bottom: 36px;
    margin-bottom: 494px;
  }
  .top-personal__inner::before {
    margin-left: calc(50% - 600px + 169px);
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 15px #E24545;
    top: 16px;
  }
  .top-personal__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 75.2%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-personal__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left top;
    transform: skewY(25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-personal__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-personal__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #E24545;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-personal__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
            clip-path: polygon(0 0, 0 0, 0 200%, 0 200%);
  }
  .top-personal__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-left 0.75s ease-in-out 0s forwards;
            animation: mask-in-left 0.75s ease-in-out 0s forwards;
  }
  .top-personal__inner2 {
    padding-left: calc(50% - 600px + 169px);
  }
  .top-personal__inner2 {
    box-sizing: content-box;
    width: 100%;
  }
  .top-personal__inner3 {
    box-sizing: content-box;
    margin: 0;
  }
  .top-personal .section-title {
    top: -110px;
    right: 1.8%;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-personal .section-copy-wrap {
    flex-direction: row;
    width: 100%;
    padding: 0;
    padding-top: 80px;
    padding-bottom: 79px;
  }
  .top-personal .section-copy {
    width: 36%;
    line-height: 160%;
    padding-left: 88px;
    margin-bottom: 0px;
    font-size: 2.25rem;
  }
  .top-personal .section-lead {
    width: 506px;
    margin-bottom: 5px;
    line-height: 200%;
    font-size: 1.125rem;
  }
  .top-personal .swiper-container {
    width: calc(100% - 16px);
    margin-bottom: 65px;
  }
  .top-personal .swiper-slide {
    width: 56%;
  }
  .top-personal .swiper-button {
    display: block;
    width: 43px;
    height: 43px;
  }
  .top-personal .swiper-button-prev {
    left: 4%;
  }
  .top-personal .swiper-button-next {
    right: 4%;
  }
  .top-quality {
    margin-bottom: 390px;
  }
  .top-quality__inner2 {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    box-sizing: content-box;
    margin: 0;
  }
  .top-quality__inner3 {
    width: 100vw;
    box-sizing: content-box;
    margin: 0;
  }
  .top-quality .section-title {
    top: -110px;
    left: 0;
    margin-left: 6.75vw;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-quality .section-copy-wrap {
    margin: 0;
    margin-top: -85px;
    width: 100%;
    padding: 0;
  }
  .top-quality .section-lead {
    width: 650px;
    margin-bottom: 30px;
    line-height: 200%;
    font-size: 1.125rem;
  }
  .top-accessories {
    margin-bottom: 390px;
  }
  .top-accessories__img {
    margin-top: 5.7%;
    width: 100%;
    max-width: 1120px;
  }
  .top-accessories__inner::before {
    margin-right: calc(50% - 600px + 414px);
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 15px #80B8FB;
    top: 16px;
  }
  .top-accessories__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: -29.4%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-accessories__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-accessories__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-accessories__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #80B8FB;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-accessories__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-accessories__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-accessories__inner2 {
    box-sizing: content-box;
    margin: 0;
  }
  .top-accessories__inner3 {
    width: 100vw;
    box-sizing: content-box;
    margin: 0;
  }
  .top-accessories .section-title {
    top: -110px;
    left: 0;
    margin-left: 6.75vw;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-accessories .section-copy-wrap {
    width: 100%;
    padding: 0;
    margin-top: 45px;
    margin-left: 6.75vw;
    margin-bottom: 0px;
  }
  .top-accessories .section-lead {
    width: 650px;
    margin-bottom: 46px;
    line-height: 200%;
    font-size: 1.125rem;
  }
  .top-accessories__photo {
    margin-left: 26.6666666667vw;
  }
  .top-accessories__photo img {
    margin-bottom: -140px;
  }
  .top-story {
    margin-bottom: 238px;
  }
  .top-story .section-title {
    top: -120px;
    font-size: 5.8125rem;
    margin-right: 64px;
  }
  .top-story__wrap {
    transform: translate(0%, -50%);
    left: 14.8%;
    right: 0;
    width: 418px;
  }
  .top-story .section-copy {
    font-size: 2.1875rem;
    margin-top: 18px;
    margin-bottom: 40px;
  }
  .top-story .section-lead {
    line-height: 200%;
    font-size: 1.125rem;
    margin-bottom: 40px;
  }
  .top-story-prof-sign {
    width: 172px;
    margin-bottom: 12px;
  }
  .top-story-prof-name {
    line-height: 160%;
    font-size: 1rem;
    margin-bottom: 52px;
  }
  .top-update {
    margin-bottom: 238px;
  }
  .top-update__bgimg {
    height: 100%;
  }
  .top-update .section-title {
    top: -110px;
    font-size: 5.8125rem;
    margin-right: 64px;
  }
  .top-update__wrap {
    transform: translate(0%, -50%);
    top: 50%;
    left: 10.5%;
    right: 0;
    width: 487px;
  }
  .top-update .section-copy {
    font-size: 2.1875rem;
    margin-top: 18px;
    margin-bottom: 28px;
  }
  .top-update .section-lead {
    width: 96%;
    line-height: 200%;
    font-size: 1.125rem;
    margin-bottom: 24px;
  }
  .top-guide {
    margin-bottom: 542px;
  }
  .top-guide__inner {
    padding-right: calc(50% - 600px + 0px);
  }
  .top-guide__inner::before {
    margin-right: calc(50% - 600px + 467px);
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 15px #024805;
    top: 16px;
  }
  .top-guide__inner .double-border {
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    pointer-events: none;
    top: 68.6%;
    left: 0;
    mix-blend-mode: multiply;
  }
  .top-guide__inner .double-border-inner {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: right top;
    transform: skewY(-25.6deg);
    width: 100%;
    z-index: 1;
  }
  .top-guide__inner .double-border-inner::before {
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: solid 10px #DBDCDC;
    position: absolute;
    left: 0;
    top: 0px;
  }
  .top-guide__inner .double-border-inner::after {
    content: "";
    width: 100%;
    height: 1px;
    border-top: solid 10px #024805;
    position: absolute;
    left: 0;
    top: 11px;
  }
  .top-guide__inner .double-border.js-scroll-trigger {
    opacity: 0;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
            clip-path: polygon(100% 0, 100% 0, 100% 200%, 100% 200%);
  }
  .top-guide__inner .double-border.js-scroll-trigger.is-show {
    -webkit-animation: mask-in-right 0.75s ease-in-out 0s forwards;
            animation: mask-in-right 0.75s ease-in-out 0s forwards;
  }
  .top-guide .section-title {
    text-align: right;
    top: -104px;
    left: 0;
    margin-left: 6.75vw;
    font-size: 5.8125rem;
    margin-bottom: 25px;
  }
  .top-guide__wrap {
    margin: 0;
    transform: translate(0%, 0%);
    top: 31%;
    left: 14.5%;
    width: 375px;
  }
  .top-guide .section-copy {
    line-height: 180%;
    font-size: 2.1875rem;
    margin-bottom: 43px;
  }
  .top-guide .section-lead {
    font-size: 1.125rem;
    line-height: 200%;
    margin-bottom: 30px;
  }
  .top-guide__photo img {
    width: 92%;
    margin-top: 120px;
    margin-bottom: 46px;
  }
  .top-gallery .gallery {
    margin-bottom: 160px;
  }
  .top-gallery .gallery {
    width: 1079px;
    grid-template-columns: repeat(auto-fit, 244px);
    grid-gap: 34px 34px;
  }
  .top-foot {
    margin-top: -320px;
  }
  .pswp__button--close {
    top: 30px !important;
    right: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
  .pswp__button--arrow--left {
    left: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
  .pswp__button--arrow--right {
    right: 30px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

@media (min-width: 641px) and (min-width: 1090px) {
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 15px #02F3C3;
    top: 16px;
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 15px #FFFE00;
    top: 16px;
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 15px #E24545;
    top: 16px;
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 15px #80B8FB;
    top: 16px;
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 15px #024805;
    top: 16px;
  }
}

@media (min-width: 1090px) and (min-width: 641px) {
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 11px #02F3C3;
    top: 12px;
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 11px #FFFE00;
    top: 12px;
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 11px #E24545;
    top: 12px;
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 11px #80B8FB;
    top: 12px;
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 11px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 11px #024805;
    top: 12px;
  }
}

@media (min-width: 1090px) and (min-width: 1090px) {
  .top-hardware__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-hardware__inner .double-border-inner::after {
    border-top: solid 15px #02F3C3;
    top: 16px;
  }
  .top-app__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-app__inner .double-border-inner::after {
    border-top: solid 15px #FFFE00;
    top: 16px;
  }
  .top-personal__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-personal__inner .double-border-inner::after {
    border-top: solid 15px #E24545;
    top: 16px;
  }
  .top-accessories__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-accessories__inner .double-border-inner::after {
    border-top: solid 15px #80B8FB;
    top: 16px;
  }
  .top-guide__inner .double-border-inner::before {
    border-bottom: solid 15px #DBDCDC;
  }
  .top-guide__inner .double-border-inner::after {
    border-top: solid 15px #024805;
    top: 16px;
  }
}

@media (max-width: 640.98px) {
  .tb {
    display: block;
  }
  .pc2 {
    display: none;
  }
}

@media (max-width: 374px) {
  .top-update .section-copy {
    margin-bottom: 10px;
    line-height: 150%;
  }
}

.ff-gotham {
  font-family: "gotham", sans-serif;
  font-weight: 500;
}
.tech-product-nav__banner_top {
  display: none;
}