html,
body {
  height: auto !important;
  margin-top: 0 !important;
}

.target-head {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.target-head + * {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/*-----------640px-----------*/
@media all and (max-width: 640px) {
  .product-nav .product-name {
    font-size: 170%;
    float: none;
    padding: 0 0 2%;
    position: relative;
  }
}
@media all and (max-width: 390px) {
  .product-nav .product-name {
    font-size: 165%;
    float: none;
    padding: 0 0 2%;
    position: relative;
  }
}
@media all and (max-width: 375px) {
  .product-nav .product-name {
    font-size: 150%;
    float: none;
    padding: 0 0 2%;
    position: relative;
  }
}
.section-hero {
  position: relative;
  width: 100vw;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-image: url(../images/kv-az100-trs_pc.jpg);
  height: 41.339vw;
}
.section-hero .hero-text {
  position: absolute;
  bottom: 3%;
  left: 50%;
  transform: translate(-50%, -30%);
  width: 100%;
  color: #fff;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .section-hero .hero-text {
    transform: translate(-50%, -20%);
    text-align: center;
  }
}
.section-hero .hero-text h1 {
  position: relative;
  font-size: clamp(14px, 8px + 1.05vw, 28px);
  font-weight: bold;
  text-align: center;
}
.section-hero .hero-text h1 span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  font-size: clamp(14px, 8px + 1.05vw, 22px);
}
@media only screen and (max-width: 767px) {
  .section-hero .hero-text h1 span {
    font-size: 3.3vw;
  }
}
@media only screen and (max-width: 767px) {
  .section-hero .hero-text h1 {
    font-size: 3.3vw;
    line-height: 1.6;
  }
}
@media only screen and (max-width: 767px) {
  .section-hero .hero-text h1 .sp-only {
    display: block;
  }
}
.section-hero .hero-text p {
  font-size: 16px;
  margin: 5.1vw 0 1vw;
}
@media only screen and (min-width: 1300px) {
  .section-hero .hero-text p {
    margin: 6.8% 0 1.4%;
  }
}
@media only screen and (max-width: 1025px) {
  .section-hero .hero-text p {
    font-size: 1.37vw;
  }
}
@media only screen and (max-width: 767px) {
  .section-hero .hero-text p {
    font-size: 1.86vw;
    margin: 3.6vw 0 1.4vw;
  }
}
@media only screen and (max-width: 767px) {
  .section-hero {
    width: 100%;
    height: 82vw;
    background-image: url("../images/kv-az100-trs_sp.jpg");
    align-items: flex-end;
    background-position: 50% 0;
  }
}
@media only screen and (width: 1024px) {
  .tablet-mobile .section-hero {
    height: 56vw;
    background-size: 100%;
  }
}
@media only screen and (width: 1366px) {
  .tablet-mobile .section-hero {
    height: 67vw;
    background-size: 120%;
  }
}
@media all and (-ms-high-contrast: none) {
  .section-hero {
    background-position: 50% 44%;
  }
}

.top-text {
  position: relative;
  box-sizing: border-box;
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
  color: #000;
  max-width: 600px;
  padding: 90px 30px 0;
  margin: 0 auto 60px;
}
@media only screen and (max-width: 640px) {
  .top-text {
    text-align: left;
    padding: 26px 15px 0 15px;
    margin-bottom: 35px;
  }
}
.top-text__note {
  position: relative;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-top: 55px;
}
@media only screen and (max-width: 640px) {
  .top-text__note {
    font-size: 20px;
    margin-top: 28px;
  }
}
.top-text__cap {
  position: relative;
  font-size: 12px;
  font-weight: normal;
  text-align: center;
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .top-text__cap {
    margin-top: 25px;
  }
}

.sp-only {
  display: none;
}
@media only screen and (max-width: 640px) {
  .sp-only {
    display: block;
  }
}

.pc-only {
  display: block;
}
@media only screen and (max-width: 640px) {
  .pc-only {
    display: none;
  }
}

.section-contens {
  position: relative;
  padding: 65px 25px 0;
}
@media only screen and (max-width: 640px) {
  .section-contens {
    padding: 65px 0 0;
  }
}
.section-contens__inner {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}
.section-contens__inner.store {
  border-bottom: 1px solid #666;
  padding-bottom: 60px;
}
@media only screen and (max-width: 640px) {
  .section-contens__inner.store {
    padding-bottom: 40px;
    margin: 0 15px;
  }
}
.section-contens.feature {
  background: #000;
  border-top: 16px solid #e83534;
}
@media only screen and (max-width: 640px) {
  .section-contens.feature {
    padding: 30px 0 0;
  }
}
.section-contens.box {
  background: #000;
  padding: 120px 25px 0;
}
@media only screen and (max-width: 640px) {
  .section-contens.box {
    padding: 35px 0 0;
  }
}
.section-contens.spec {
  background: #000;
  padding: 78px 25px 70px 25px;
}
@media only screen and (max-width: 640px) {
  .section-contens.spec {
    padding: 50px 0 50px;
  }
}
.section-contens.store {
  padding: 55px 25px 0px 25px;
}
@media only screen and (max-width: 640px) {
  .section-contens.store {
    padding: 40px 0 0;
  }
}
.section-contens.notice {
  padding: 0 25px;
}
@media only screen and (max-width: 640px) {
  .section-contens.notice {
    padding: 0 15px;
  }
}

.section__title-feature {
  position: relative;
  color: #fff;
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.02em;
  padding-top: 10px;
}
@media only screen and (max-width: 640px) {
  .section__title-feature {
    font-size: 26px;
    padding: 10px 15px 0;
  }
}
.section__inner {
  position: relative;
  margin-top: 24px;
  max-width: 1000px;
}
.section__inner.type-0 {
  border-bottom: 1px solid #666;
  margin-top: 0px;
  padding-bottom: 30px;
}
@media only screen and (max-width: 640px) {
  .section__inner.type-0 {
    padding-bottom: 50px;
  }
}

.feature__inner {
  position: relative;
  margin-top: 24px;
  max-width: 1000px;
}
.feature__title {
  position: relative;
  color: #fff;
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.02em;
  padding: 10px 0 0 0;
}
@media only screen and (max-width: 640px) {
  .feature__title {
    font-size: 26px;
    letter-spacing: 0.02em;
    padding: 10px 15px 0;
  }
}
.feature__text {
  position: relative;
  color: #fff;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
  max-width: 640px;
  margin: 30px auto 0;
}
@media only screen and (max-width: 640px) {
  .feature__text {
    font-size: 18px;
    text-align: left;
    margin-top: 20px;
    padding: 0 15px;
  }
}
.feature__contents {
  position: relative;
  background: #e83534;
  max-width: 1000px;
  margin: 60px auto 0;
  padding: 48px;
}
@media only screen and (max-width: 640px) {
  .feature__contents {
    margin: 35px 15px 0;
    padding: 25px 10px;
  }
}
.feature__img-logo {
  position: relative;
  max-width: 382px;
  margin: 0 auto;
}
@media only screen and (max-width: 640px) {
  .feature__img-logo {
    width: 100%;
  }
}
.feature__img-logo img {
  width: 100%;
  height: auto;
}
.feature__contents-text {
  position: relative;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin: 35px auto 0;
}
@media only screen and (max-width: 640px) {
  .feature__contents-text {
    font-size: 15px;
    letter-spacing: 0em;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 375px) {
  .feature__contents-text {
    font-size: 14px;
  }
}
.feature__contents-box {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 10px;
  max-width: 1000px;
  margin: 15px auto 0;
}
@media only screen and (max-width: 640px) {
  .feature__contents-box {
    flex-direction: column;
    gap: 15px;
    margin-top: 15px;
    padding: 0 15px;
  }
}
.feature__contents-box-inner {
  flex: 1;
  box-sizing: border-box;
  border: 1px solid #fff;
  padding: 35px 32px;
  min-width: 0;
}
@media only screen and (max-width: 640px) {
  .feature__contents-box-inner {
    padding: 38px 11%;
  }
}
.feature img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

figure {
  margin: 0;
}

.box__title {
  position: relative;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  line-height: 0.8;
  letter-spacing: 0.02em;
  padding-top: 10px;
}
@media only screen and (max-width: 640px) {
  .box__title {
    font-size: 26px;
    letter-spacing: 0.02em;
    padding: 10px 15px 0;
  }
}
.box__title .title-small {
  font-size: 13px;
  font-weight: normal;
}
.box__text {
  position: relative;
  color: #fff;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.7;
  text-align: center;
  margin-top: 40px;
}
@media only screen and (max-width: 640px) {
  .box__text {
    font-size: 18px;
    margin-top: 20px;
    padding: 0 15px;
  }
}
.box__contents {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 30px;
  max-width: 1000px;
  margin: 50px auto 0;
}
@media only screen and (max-width: 640px) {
  .box__contents {
    flex-direction: column;
    gap: 30px;
    margin: 35px 15px 0;
  }
}
.box__contents-inner {
  position: relative;
  flex: 1;
  box-sizing: border-box;
}
.box__contents-inner img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.box__contents-img {
  position: relative;
  max-width: 295px;
  margin: 0 auto;
}
@media only screen and (max-width: 640px) {
  .box__contents-img {
    display: block;
    width: 87%;
    max-width: 312px;
  }
}
.box__contents-text {
  position: relative;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  margin: 5px auto 0;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .box__contents-text {
    margin-top: 10px;
    padding: 0 15px;
  }
}
.box__contents-text > .text-small {
  font-size: 16px;
}
.box__contents-text > .text-name {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 28px;
  line-height: 1;
  margin: 0 0 5px;
}
.box__contents-text > .text-color {
  font-size: 12px;
}
@media only screen and (max-width: 640px) {
  .box__contents-text.box {
    margin-top: 0px;
  }
}

.text-ns {
  display: inline-block;
}

.spec__contents {
  position: relative;
  color: #aaaaaa;
  max-width: 1000px;
  margin: 10px auto 0;
}
.spec__contents-title {
  position: relative;
  font-size: 26px;
  border-bottom: 1px solid #aaaaaa;
  padding-top: 10px;
}
@media only screen and (max-width: 640px) {
  .spec__contents-title {
    font-size: 23px;
    padding: 10px 0 0 0;
    margin: 0 15px;
  }
}
.spec__contents-title .title-small {
  font-size: 16px;
}
@media only screen and (max-width: 640px) {
  .spec__contents-title .title-small {
    font-size: 14px;
  }
}
.spec__detail {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  font-size: 13px;
}
@media only screen and (max-width: 640px) {
  .spec__detail {
    flex-direction: column;
    gap: 0;
    padding: 0 15px;
  }
}
.spec__detail-inner {
  width: calc((100% - 30px) / 2);
}
@media only screen and (max-width: 640px) {
  .spec__detail-inner {
    width: 100%;
  }
}
.spec__title {
  position: relative;
  display: flex;
  box-sizing: border-box;
  align-items: center;
  font-size: 17px;
  font-weight: bold;
  margin: 36px 0 14px 0;
  padding-left: 0.5em;
}
.spec__title::before {
  position: absolute;
  content: "";
  display: block;
  background-color: #666;
  top: 1px;
  left: 0;
  width: 2px;
  height: 90%;
  margin-right: 8px;
}
.spec__detail-cap {
  margin-top: 40px;
}
.spec__img {
  width: 280px;
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .spec__img {
    width: 100%;
  }
}
.spec__img > img {
  display: block;
  width: 237px;
  margin: 0 auto;
}
.spec__img-cap {
  text-align: center;
  margin-top: 10px;
}
.spec__img-cap-small {
  font-size: 10px;
}

.store__contents-title {
  position: relative;
  color: #000;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  padding-top: 15px;
}
@media only screen and (max-width: 640px) {
  .store__contents-title {
    font-size: 26px;
  }
}
@media only screen and (max-width: 390px) {
  .store__contents-title {
    font-size: 26px;
  }
}
@media only screen and (max-width: 360px) {
  .store__contents-title {
    font-size: 24px;
  }
}
.store__contents-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .store__contents-box {
    display: flex;
    gap: 0px;
    margin-top: 40px;
  }
}
.store__contents-img {
  display: block;
  width: 215px;
  max-width: 100%;
  margin: 0 auto;
}
.store__contents-img.free {
  margin-top: -10px;
}
.store__contents-cap {
  position: relative;
  color: #000;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  margin-top: 10px;
}
@media only screen and (max-width: 640px) {
  .store__contents-cap {
    margin-top: 10px;
  }
}
.store__contents-cap.free {
  margin-top: 20px;
}

.notice__title {
  position: relative;
  color: #000;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  line-height: 0.8;
  letter-spacing: 0.02em;
  margin-top: 45px;
  padding-top: 15px;
}
@media only screen and (max-width: 640px) {
  .notice__title {
    font-size: 26px;
    letter-spacing: 0.02em;
    padding: 10px 15px 0;
    margin-top: 32px;
  }
}
.notice__title .title-small {
  font-size: 13px;
  font-weight: normal;
}
.notice__cap {
  position: relative;
  color: #000;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  margin-top: 22px;
}
@media only screen and (max-width: 640px) {
  .notice__cap {
    margin-top: 18px;
  }
}
.notice__list {
  position: relative;
  border-bottom: 1px solid #666;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.7;
  margin-top: 50px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 640px) {
  .notice__list {
    margin-top: 36px;
    padding-bottom: 28px;
  }
}
.notice__list > li {
  margin-bottom: 7px;
}
.notice__list > li:last-child {
  margin-bottom: 0;
}
.notice__list:last-of-type {
  border-bottom: none;
}

/*# sourceMappingURL=az100-trs.css.map */