@charset "UTF-8";
@-ms-viewport {
  width: device-width;
  initial-scale: 1;
}
@viewport {
  width: device-width;
  initial-scale: 1;
}
@viewport {
  width: auto;
  initial-scale: 1;
}
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
/* ヘッダー非表示 */
#header-area { display: none; }
#main { margin-top: 0px !important; }

h1 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
h2 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
h3 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
h4 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
h5 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
h6 {
  margin: 0;
  font-size: 1em;
  font-weight: inherit;
}
ul li,
ol li {
  list-style: none;
}
a {
  color: inherit;
  text-decoration: none;
  outline: none;
}
strong,
em {
  font-style: normal;
  font-weight: 400;
}
small {
  font-size: 1em;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
  backface-visibility: hidden;
}
svg {
  vertical-align: inherit;
  fill: currentcolor;
}
fieldset {
  padding: 0;
  margin: 0;
  border: none;
}
input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  letter-spacing: inherit;
  border-radius: 0;
  outline: none;
  appearance: none;
}
button {
  cursor: pointer;
}
address {
  font-style: normal;
}
html {
  width: 100%;
  height: 100%;
  cursor: default;
}
body {
  font-family:
    DINNeuzeitGroteskLTW01-_812429,
    "太ゴB101",
    Futo Go B101,
    Helvetica Neue,
    YuGothic,
    "游ゴシック",
    Hiragino Kaku Gothic ProN,
    "ヒラギノ角ゴシック ProN",
    Meiryo,
    "メイリオ",
    sans-serif;
  letter-spacing: 0.02em;
  color: #fff;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #000;
  font-style: normal;
  font-weight: 400;
  box-sizing: border-box;
}
#header-area {
  display: none;
}
#footer {
  display: none;
}
@keyframes grgt-bar {
  0% {
    translate: -100% 0;
  }
  50% {
    translate: 100% 0;
  }
  100% {
    translate: 100% 0;
  }
}
.u-color-red {
  color: #e60012;
}
.c-cv__arrow {
  display: block;
  background-color: #fff;
  aspect-ratio: 12 / 7;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.c-note {
  color: #4a4a4a;
  letter-spacing: 0.08em;
  line-height: 175%;
}
.c-marker {
  display: flex;
}
.c-marker__container {
  position: relative;
}
.c-marker__txt {
  position: relative;
  z-index: 1;
  display: inline-block;
}
.c-marker__txt sup {
  vertical-align: text-top;
}
.c-marker__marker {
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform-origin: left center;
  background: #e60012;
}
.c-marker--kv .c-marker__marker {
  transform: skew(-25deg);
}
.p-gryaris-26-05 img {
  width: 100%;
  height: auto;
}
.p-gryaris-26-05__features {
  display: -ms-grid;
  display: grid;
}
.p-gryaris-26-05__price {
  position: relative;
}
.p-gryaris-26-05__price-img {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.p-gryaris-26-05__price-contents {
  z-index: 1;
}
.p-card-bnr {
  position: relative;
}
.p-card-bnr__container {
  position: relative;
  display: -ms-grid;
  display: grid;
  background: #141313;
}
.p-card-bnr__img {
  overflow: hidden;
}
.p-card-bnr__pic {
  display: block;
  transform: scale(1, 1);
  transition: transform 0.25s ease-in-out;
  will-change: transform;
}
.p-card-bnr__container:hover .p-card-bnr__pic {
  transform: scale(1.05, 1.05);
}
.record-banner-pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1, 1);
  transition: transform 0.25s ease-in-out;
  will-change: transform;
}
.record-banner-container:hover .record-banner-pic img {
  transform: scale(1.05, 1.05);
}
.p-card-bnr__txt {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 160%;
}
.p-card-bnr__link {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e60012;
}
.p-card-bnr__link:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 1px;
  aspect-ratio: 1;
  transform-origin: top right;
  translate: -100% 0;
  clip-path: polygon(90% 0, 100% 0, 100% 100%, 0 100%);
  background: #e60012;
}
.p-card-bnr__link-label {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 150%;
  font-weight: 400;
}
.p-card-bnr__link-arrow {
  display: block;
  background-color: #fff;
  aspect-ratio: 12 / 7;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.p-kv__container {
  position: relative;
}
.p-kv__logo {
  position: absolute;
  z-index: 1;
}
.p-kv__logo img {
  width: 100%;
}
.p-kv__hdg-container {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
}
.p-kv__desc {
  display: -ms-grid;
  display: grid;
  justify-items: start;
  position: absolute;
  z-index: 1;
  width: 100%;
}
.p-kv__copy {
  line-height: 100%;
  letter-spacing: 0.02em;
}
.p-kv__hdg {
  line-height: 100%;
}
.p-statement__txt {
  display: -ms-grid;
  display: grid;
  letter-spacing: 0.06em;
}
.p-feature__hdg {
  display: -ms-grid;
  display: grid;
  align-items: center;
  letter-spacing: 0.06em;
}
.p-feature__img {
  overflow: hidden;
}
.p-feature__copy {
  display: -ms-grid;
  display: grid;
  justify-items: start;
  line-height: 100%;
  letter-spacing: 0.06em;
  margin-top: -0.75em;
}
.p-feature__txt {
  line-height: 175%;
  letter-spacing: 0.06em;
  color: #a3a3a3;
}
.p-cv__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr) [2];
  grid-template-columns: repeat(2, 1fr);
}
.p-floating-cv {
  position: absolute;
  top: 0;
  z-index: 10;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transform: translate(0, 50%);
  will-change: opacity visibility transform;
}
.p-floating-cv.is-fixed {
  position: fixed;
  top: unset;
}
.p-floating-cv.is-appear {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition:
    transform 0.25s ease-in-out,
    opacity 0.25s ease-in-out,
    visibility 0.25s ease-in-out;
}
.p-floating-cv__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
.p-floating-cv .c-cv__container {
  width: 100%;
  margin: 0;
}
.p-bnr__list {
  display: -ms-grid;
  display: grid;
}
.p-bnr__cv {
  position: relative;
}
.p-note__cv {
  position: relative;
}
.p-footer__copyright {
  letter-spacing: 0.02em;
  color: #4a4a4a;
  line-height: 175%;
}
@media screen and (min-width: 769px) {
  html {
    font-size: 62.5%;
  }
  body {
    font-size: min(0.97222vw, 14px);
  }
  .u-dsp-tab {
    display: none;
  }
  .u-dsp-sp {
    display: none !important;
  }
  .c-cv__container {
    height: 4.1666666667vw;
    gap: .6944444444vw;;
  }
  .c-cv__label {
    font-size: .9722222222vw;
    letter-spacing: 0.02em;
  }
  .c-cv__arrow {
    width: min(0.69444vw, 10px);
  }
  .c-note {
    font-size: min(0.83333vw, 12px);
  }
  .c-note span{
    color: #e60011;
  }
  .c-marker--kv .c-marker__txt {
    padding: min(0.48611vw, 7px) min(4.16667vw, 60px) min(0.48611vw, 7px)
      min(5.55556vw, 80px);
  }
  .c-marker--feature .c-marker__txt {
    padding: min(0.69444vw, 10px);
  }
  .c-marker__txt sup {
    font-size: min(0.97222vw, 14px);
  }
  .p-gryaris-26-05__statement {
    margin-top: min(6.94444vw, 100px);
  }
  .p-gryaris-26-05__features {
    margin-top: min(10.41667vw, 150px);
    gap: min(10.41667vw, 150px);
  }
  .p-gryaris-26-05__bnr {
    margin-top: min(10.41667vw, 150px);
  }
  .p-gryaris-26-05__notes {
    margin-top: min(10.4166vw, 150px);
  }
  .p-gryaris-26-05__footer {
    padding-top: min(5.55556vw, 80px);
    padding-bottom: min(6.94444vw, 100px);
  }
  .p-card-bnr__container {
    -ms-grid-columns: (1fr) [2];
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
  }
  .p-card-bnr__img {
    aspect-ratio: 670 / 400;
  }
  .p-card-bnr__desc {
    padding: 0 min(4.16667vw, 60px);
  }
  .p-card-bnr__txt {
    font-size: min(1.94444vw, 28px);
  }
  .p-card-bnr__link {
    gap: min(2.08333vw, 30px);
    height: min(4.16667vw, 60px);
    padding: 0 min(2.08333vw, 30px) 0 min(1.73611vw, 25px);
  }
  .p-card-bnr__link:before {
    width: min(4.16667vw, 60px);
  }
  .p-card-bnr__link-label {
    font-size: min(1.11111vw, 16px);
  }
  .p-card-bnr__link-arrow {
    width: min(0.69444vw, 10px);
  }
  .p-kv__label {
    display: inline-block;
    margin: 0 min(3.47222vw, 50px) min(1.975vw,27px);
    padding: 0 min(1.805vw,26px);
    background: #e60011;
    color: #ffffff;
    font-weight: 500;
    font-size: min(2.222vw,32px);
    clip-path: polygon(0 0, 100% 0, calc(100% - 14px) 100%, 0 100%);
  }
  .p-kv__container {
    aspect-ratio: 1440 / 780;
  }
  .p-kv__logo {
    width: min(11.80556vw, 170px);
    top: min(2.08333vw, 30px);
    right: min(2.08333vw, 30px);
  }
  .p-kv__hdg-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 0 0 9vw;
  }
  .p-kv__hdg {
    margin: 0 0 0 3.47222vw;
    font-weight: 500;
    line-height: 1;
  }
  .p-kv__hdg-ttl {
    color: #ffffff;
    font-weight: bold;
    font-size: 3.19vw;
    letter-spacing: 0.02em;
    line-height: 1.557;
  }
  .p-kv__hdg-name {
    display: block;
    margin: 0.69vw 0 0 -2.08vw;
    padding: 0.347vw 2.43vw 0 1.94vw;
    color: #ffffff;
    font-weight: 500;
    font-size: 8.4vw;
    letter-spacing: 0.02em;
    background: url(../images/kv_name_bg_pc.png) no-repeat center center / contain;
  }
  .p-gryaris-26-05__banner{
    padding: min(7.63vw,110px) min(3.47222vw, 50px) 0;
  }
  .p-banner__ttl{
    margin: 0 0 min(3.47222vw,50px);
    color: #ffffff;
    font-weight: 500;
    font-size: min(2.08vw,30px);
    letter-spacing: .06em;
    line-height: 1;
  }
  .p-banner__contents{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    background: #141313;
  }
  .p-banner__img{
    flex: 97;
    width: min(67.36vw,970px);
  }
  .p-banner__contents-right{
    position: relative;
    flex: 37;
  }
  .p-banner__label{
    margin: min(3.47222vw,50px) min(3.47222vw,50px) min(1.38vw,20px) 0;
    color: #ffffff;
    font-size: min(3.33vw,48px);
    letter-spacing: .1em;
    line-height: 1;
    text-align: right;
  }
  .p-banner__txt{
    width: fit-content;
    margin: 0 min(3.47222vw,50px) 0 auto;
    color: #ffffff;
    font-size: min(1.38vw,20px);
    letter-spacing: .1em;
    line-height: 1.4;
  }
  .p-banner__check-container{
    position: absolute;
    bottom: min(3.472vw,50px);
    left: 0;
  }
  .p-banner__check{
    position: relative;
    margin: 0 0 min(.69vw,10px);
    color: #e60013;
    font-size: min(1.25vw,18px);
    letter-spacing: .08em;
  }
  .p-banner__check::after{
    content: '';
    position: absolute;
    top: 50%;
    left: min(5.555vw,80px);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: min(16.666vw,240px);
    height: 1px;
    background: #e60011;
  }
  .p-banner__check-link{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(.555vw,8px);
    width: min(22.777vw,328px);
    padding: min(1.45vw,21px) 0;
    background: url(../images/check_btn_bg_pc.png) no-repeat center center / contain;
  }
  .p-banner__check-link:hover{
    opacity: .7;
  }
  .p-banner__check-link-txt{
    font-weight: 600;
    font-size: .9722222222vw;
    letter-spacing: .08em;
  }
  .p-banner__check-arrow{
    display: block;
    width: min(0.69444vw, 10px);
    background-color: #fff;
    aspect-ratio: 12 / 7;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
  }

  

  .c-cv__container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e60012;
    transition: background 0.2s ease-in-out;
    will-change: background;
    margin: 0 min(3.47222vw, 50px);
  }
  .c-cv__container02 {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      width: min(19.02vw,274px);
      height: min(4.1666vw,60px);
      margin: min(2.0833vw,30px) auto;
      padding: 0 0 0 min(6.5277vw,94px);
      border: 1px solid #ffffff;
      gap: min(4.097vw,59px);
  }
  .c-cv__label {
    line-height: 120%;
    font-weight: 600;
    color: #fff;
    text-align: center;
  }
  .c-cv__container02 .c-cv__label {
    font-size: min(1.041vw,15px);
  }
  .p-cta{
    padding: min(6.944vw,100px) 0 0;
  }
  .p-cta__txt{
    margin: 0 0 min(4.513vw,65px);
    font-weight: 500;
    font-size: min(1.111vw,16px);
    text-align: center;
    line-height: 1.75;
  }
  .p-product{
    padding: min(10.416vw,150px) min(3.4722vw,50px) 0;
  }
  .p-product__item{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 0 min(3.47222vw,50px);
    background: #0e0e0e;
  }
  .p-product__item-left{
    flex: 31;
    padding: 0 0 0 min(6.25vw,90px);
    place-content: center;
    background: #201e1e;
  }
  .p-product__item-name{
    margin: 0 0 min(1.3888vw,20px);
    color: #ffffff;
    font-weight: 500;
    font-size: min(2.08333vw,30px);
    letter-spacing: .02em;
    line-height: 1.1;
  }
  .p-product__item-txt{
    margin: 0 0 min(2.7777vw,40px);
    color: #ffffff;
    font-size: min(1.3888vw,20px);
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-txt02{
    margin: 0 0 min(1.736vw,25px);
    color: #4a4a4a;
    font-size: min(1.111vw,16px);
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-txt02 span{
    color: #e60011;
    font-size: min(.69444vw,10px);
    vertical-align: text-top;
  }
  .p-product__item-price{
    color: #ffffff;
    font-size: min(3.1944vw,46px);
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-price .tax{
    font-size: min(1.3888vw,20px);
  }
  .p-product__item-right{
    flex: 36;
    padding: min(3.75vw,54px) 0 min(2.08333vw,30px) 0;
  }
  .p-product__item-right.diff{
    padding: min(1.875vw,27px) 0 min(2.08333vw,30px) min(2.70833vw,39px);
  }
  .p-product__item-img{
    width: min(32.77vw,472px);
    margin: 0 auto;
  }
  .p-product__item-info{
    margin: 0 min(1.597vw,23px) 0 0;
    color: #4a4a4a;
    font-weight: 500;
    font-size: min(.97222vw,14px);
    letter-spacing: .02em;
    text-align: right;
  }
  .p-cv__list {
    gap: min(0.69444vw, 10px);
  }
  .p-floating-cv.is-fixed {
    left: min(3.47222vw, 50px);
    bottom: min(0.69444vw, 10px);
    width: calc(100% - min(6.94444vw, 100px));
  }
  .p-floating-cv__list {
    gap: min(0.69444vw, 10px);
  }
  .p-banner02__inner{
    padding: min(10.416vw,150px) min(3.47222vw,50px) 0;
  }
  .p-banner02__ttl{
    margin: 0 0 min(3.47222vw,50px);
    color: #ffffff;
    font-weight: 500;
    font-size: min(2.0833vw,30px);
    letter-spacing: .06em;
    line-height: 1;
  }
  .record-banner-item{
    position: relative;
  }
  .record-banner-container{
    position: relative;
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    background: #141313;
  }
  .record-banner-pic{
    display: block;
    overflow: hidden;
    aspect-ratio: 670 / 400;
  }
  .record-banner-desc{
    padding: 0 min(3.47222vw,50px);
  }
  .record-banner-ttl{
    margin: 0 0 min(.69vw,10px);
    color: #fff;
    font-weight: 500;
    font-size: min(1.6666vw,24px);
    letter-spacing: 0.06em;
  }
  .record-banner-txt{
    color: #ffffff;
    font-size: min(1.111vw,16px);
    letter-spacing: .06em;
  }
  .record-banner-link{
    width: fit-content;
    margin: min(2.777vw,40px) 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: min(1.319vw,19px);
    border-bottom: 1px solid #e60011;
  }
  .record-banner-link-label{
    color: #ffffff;
    font-weight: 500;
    font-size: min(1.388vw,20px);
  }
  .record-banner-link-arrow{
    width: min(.55vw,8px);
    height: min(.55vw,8px);
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    transform: rotate(45deg);
  }


  .p-note {
    padding-left: min(3.47222vw, 50px);
    padding-right: min(3.47222vw, 50px);
  }
  .p-note__inner {
    width: min(93.05556vw, 1340px);
    margin-right: auto;
    margin-left: auto;
  }
  .p-note__inner--large {
    width: min(108.33333vw, 1560px);
  }
  .p-note__cv {
    margin-top: min(3.47222vw, 50px);
    width: calc(100% - min(6.94444vw, 100px));
    height: min(4.86111vw, 70px);
  }
  .p-footer {
    padding-left: min(3.47222vw, 50px);
    padding-right: min(3.47222vw, 50px);
  }
  .p-footer__inner {
    width: min(93.05556vw, 1340px);
    margin-right: auto;
    margin-left: auto;
  }
  .p-footer__inner--large {
    width: min(108.33333vw, 1560px);
  }
  .p-footer__copyright {
    font-size: min(0.83333vw, 12px);
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.5641vw;
  }
  body {
    font-size: 3.58974vw;
  }
  .u-dsp-pc {
    display: none !important;
  }
  .c-cv__container {
    height: 12.8205128205vw;
    gap: 1.5384615385vw;
  }
  .c-cv__label {
    font-size: 3.0769230769vw;
    letter-spacing: 0;
  }
  .c-cv__arrow {
    width: 2.05128vw;
  }
  .c-note {
    font-size: 3.07692vw;
  }
  .c-note span{
    color: #e60011;
  }
  .c-marker__txt {
    font-feature-settings: "palt";
  }
  .c-marker--kv .c-marker__txt {
    padding: 1.28205vw 7.17949vw 1.28205vw 4.10256vw;
  }
  .c-marker--feature .c-marker__txt {
    padding: 1.28205vw;
  }
  .c-marker__txt sup {
    font-size: 2.5641vw;
  }
  .p-gryaris-26-05__statement {
    margin-top: 19.23077vw;
  }
  .p-gryaris-26-05__features {
    margin-top: 19.23077vw;
    gap: 19.23077vw;
  }
  .p-gryaris-26-05__bnr {
    margin-top: 19.23077vw;
  }
  .p-gryaris-26-05__notes {
    margin-top: 18.432vw;
  }
  .p-gryaris-26-05__footer {
    padding-top: 19.23077vw;
    padding-bottom: 6.41026vw;
  }
  .p-card-bnr__img {
    aspect-ratio: 350 / 208;
  }
  .p-card-bnr__desc {
    padding: 6.15385vw 5.12821vw 15.38462vw;
  }
  .p-card-bnr__txt {
    font-size: 4.61538vw;
  }
  .p-card-bnr__link {
    gap: 5.12821vw;
    height: 10.25641vw;
    padding: 0 5.12821vw 0 3.84615vw;
  }
  .p-card-bnr__link:before {
    width: 10.25641vw;
  }
  .p-card-bnr__link-label {
    font-size: 3.07692vw;
  }
  .p-card-bnr__link-arrow {
    width: 2.05128vw;
  }
  .p-kv__label {
    display: inline-block;
    margin: 0 min(3.47222vw, 50px) min(1.975vw,27px);
    padding: 0 min(1.805vw,26px);
    background: #e60011;
    color: #ffffff;
    font-weight: 500;
    font-size: min(2.222vw,32px);
    clip-path: polygon(0 0, 100% 0, calc(100% - 14px) 100%, 0 100%);
  }
  .p-kv__container {
    aspect-ratio: 390 / 450;
  }
  .p-kv__logo {
    width: 30.76923vw;
    top: 5.12821vw;
    right: 5.12821vw;
  }
  .p-kv__hdg-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 0 0 19.84vw;
  }
  .p-kv__hdg {
    margin: 0 0 0 5.12821vw;
    font-weight: 500;
    line-height: 1;
  }
  .p-kv__hdg-ttl {
    color: #ffffff;
    font-weight: bold;
    font-size: 5.888vw;
    letter-spacing: 0.02em;
    line-height: 1.557;
  }
  .p-kv__hdg-name {
    display: block;
    margin: 2.56vw 0 0 -3.84vw;
    padding: 0.64vw 5.12vw 0 4.224vw;
    color: #ffffff;
    font-weight: 500;
    font-size: 15.36vw;
    letter-spacing: 0.02em;
    background: url(../images/kv_name_bg_pc.png) no-repeat center center / contain;
  }
  .p-gryaris-26-05__banner{
    padding: 16.64vw 5.12821vw 0;
  }
  .p-banner__ttl{
    margin: 0 0 10.24vw;
    color: #ffffff;
    font-weight: 500;
    font-size: 5.888vw;
    letter-spacing: .02em;
    line-height: 1.75;
  }
  .p-banner__contents{
    position: relative;
  }
  .p-banner__contents-right{
    padding: 10.368vw 0 0 4.992vw;
    background: #141313;
  }
  .p-banner__label{
    margin: 0 0 3.6vw;
    color: #ffffff;
    font-size: 7.68vw;
    letter-spacing: .1em;
    line-height: 1;
  }
  .p-banner__txt{
    margin: 0 0 7.04vw;
    color: #ffffff;
    font-size: 3.84vw;
    letter-spacing: .1em;
    line-height: 1.5;
  }
  .p-banner__check-container{

  }
  .p-banner__check{
    position: relative;
    margin: 0 0 2.5vw;
    color: #e60013;
    font-size: 3.072vw;
    letter-spacing: .08em;
  }
  .p-banner__check::after{
    content: '';
    position: absolute;
    top: 50%;
    left: 12.5244vw;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 72.096vw;
    height: 1px;
    background: #e60011;
  }
  .p-banner__check-link{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5384615385vw;;
    width: 84.768vw;
    height: 12vw;
    background: url(../images/check_btn_bg_sp.png) no-repeat center center / contain;
  }
  .p-banner__check-link-txt{
    font-weight: 600;
    font-size: 3.0769230769vw;
    letter-spacing: .08em;
  }
  .p-banner__check-arrow{
    display: block;
    width: 2.05128vw;
    background-color: #fff;
    aspect-ratio: 12 / 7;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
  }
  .c-cv__container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e60012;
    transition: background 0.2s ease-in-out;
    will-change: background;
    margin: 0 5.12821vw;
  }
  .c-cv__container02 {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      width: 56.32vw;
      height: 12.8vw;
      margin: 6.4vw auto;
      padding: 0 0 0 16.768vw;
      border: 1px solid #ffffff;
      gap: 10.24vw;
  }
  .c-cv__label {
    line-height: 120%;
    font-weight: 600;
    color: #fff;
    text-align: center;
  }
  .c-cv__container02 .c-cv__label {
      font-size: 3.84vw;
  }
  .p-cta{
    padding: 18.56vw 0 0;
  }
  .p-cta__txt{
    margin: 0 0 10.24vw;
    font-weight: 500;
    font-size: 3.5784vw;
    text-align: center;
    line-height: 1.4;
  }
  .p-cta__txt.diff {
    font-size: 4.325vw;
  }
  .p-product{
    padding: 18.432vw 5.12821vw 0;
  }
  .p-product__item{
    display: flex;
    flex-direction: column-reverse;
    margin: 0 0 11.008vw;
    background: #0e0e0e;
  }
  .p-product__item-left{
    height: 62.976vw;
    place-content: center;
    padding: 0 0 0 5.12vw;
    background: #201e1e;
  }
  .p-product__item-name{
    margin: 0 0 3.072vw;
    color: #ffffff;
    font-weight: 500;
    font-size: 5.376vw;
    letter-spacing: .02em;
    line-height: 1.1;
  }
  .p-product__item-txt{
    margin: 0 0 7.68vw;
    color: #ffffff;
    font-size: 3.84vw;
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-txt02{
    margin: 0 0 3.84vw;
    color: #4a4a4a;
    font-size: 3.072vw;
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-txt02 span{
    vertical-align: text-top;
    color: #e60011;
    font-size: 2vw;
  }
  .p-product__item-price{
    color: #ffffff;
    font-weight: 500;
    font-size: 10.24vw;
    letter-spacing: .02em;
    line-height: 1;
  }
  .p-product__item-price .tax{
    font-size: 3.584vw;
  }
  .p-product__item-right{
    padding: 5.76vw 0 10.752vw 5.12vw;
  }
  .p-product__item-img{
    width: 75.776vw;
    margin: 0 0 4.864vw;
  }
  .p-product__item-info{
    color: #4a4a4a;
    font-weight: 500;
    font-size: 2.688vw;
    letter-spacing: .02em;
    line-height: 1.75;
  }
  .p-cv__list {
    gap: 1.28205vw;
  }
  .p-floating-cv.is-fixed {
    left: 5.12821vw;
    bottom: 1.28205vw;
    width: calc(100% - 10.25641vw);
  }
  .p-floating-cv__list {
    gap: 1.28205vw;
  }
  .p-banner02__inner{
    padding: 17.92vw 5.12821vw 0;
  }
  .p-banner02__ttl{
    margin: 0 0 10.24vw;
    color: #ffffff;
    font-weight: 500;
    font-size: 5.888vw;
    letter-spacing: .06em;
    line-height: 1.75;
  }
  .record-banner-item{
    position: relative;
  }
  .record-banner-container{
    background: #141313;
  }
  .record-banner-pic{
    display: block;
    overflow: hidden;
    aspect-ratio: 670 / 400;
  }
  .record-banner-desc{
    padding: 10.24vw 5.12vw 0;
  }
  .record-banner-ttl{
    margin: 0 0 1vw;
    color: #fff;
    font-weight: 500;
    font-size: 4.352vw;
    letter-spacing: 0.06em;
  }
  .record-banner-txt{
    color: #ffffff;
    font-size: 3.072vw;
    letter-spacing: .06em;
  }
  .record-banner-link{
    width: fit-content;
    margin: 8.192vw 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: min(1.319vw,19px);
    border-bottom: 1px solid #e60011;
  }
  .record-banner-link-label{
    color: #ffffff;
    font-weight: 500;
    font-size: 3.584vw;
  }
  .record-banner-link-arrow{
    width: 1.1vw;
    height: 1.1vw;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    transform: rotate(45deg);
  }

  .p-note {
    padding-left: 5.12821vw;
    padding-right: 5.12821vw;
  }
  .p-note__cv {
    margin-top: 12.82051vw;
    height: 14.10256vw;
    width: 100%;
  }
  .p-footer {
    padding-left: 5.12821vw;
    padding-right: 5.12821vw;
  }
  .p-footer__copyright {
    font-size: 3.33333vw;
  }
}
@media (hover: hover) {
  .c-cv__container:hover {
    background: #b6091a;
  }
}