@charset "UTF-8";
.borderFrame {
  display: block;
  border: 1px solid #86868b;
  position: relative;
  padding: 50rem 30rem;
  text-align: center;
  z-index: 1;
}
.borderFrame::before {
  content: "";
  display: block;
  position: absolute;
  left: -1px;
  top: -1px;
  width: 30rem;
  height: 30rem;
  border-left: 1px solid #000;
  border-top: 1px solid #000;
}
.borderFrame::after {
  content: "";
  display: block;
  position: absolute;
  right: -1px;
  top: -1px;
  width: 30rem;
  height: 30rem;
  border-right: 1px solid #000;
  border-top: 1px solid #000;
}
.borderFrame .inn::before {
  content: "";
  display: block;
  position: absolute;
  left: -1px;
  bottom: -1px;
  width: 30rem;
  height: 30rem;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
}
.borderFrame .inn::after {
  content: "";
  display: block;
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 30rem;
  height: 30rem;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.borderFrame.color-2::before {
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
}
.borderFrame.color-2::after {
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}
.borderFrame.color-2 .inn::before {
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.borderFrame.color-2 .inn::after {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

h2.h-secondary {
  margin-bottom: 100rem;
  font-size: 58rem;
  font-weight: bold;
  text-align: center;
  position: relative;
  line-height: 1.25;
  padding-bottom: 35rem;
}
h2.h-secondary::after {
  content: "";
  display: block;
  width: 60rem;
  height: 2px;
  background: var(--color-red);
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.btn-all a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-indent: 2em;
}
.btn-all a::after {
  content: "";
  background: url("../images/btn-arrow.svg") no-repeat center;
  background-size: contain;
  display: block;
  width: 100rem;
  height: 100rem;
  margin-left: 20rem;
}

section.hero {
  overflow: hidden;
}
section.hero .bg-space {
  background: url("../images/bg-space-sp.jpg") no-repeat center top, #000000;
  background-size: contain;
  padding-bottom: 80rem;
}
section.hero h1.h-top {
  letter-spacing: -0.03em;
  color: #fff;
  font-weight: bold;
  font-size: 92rem;
  line-height: 1.2;
  padding-top: 190rem;
  text-align: center;
  clip-path: inset(0 100% -20% 0);
  -webkit-transition: clip-path 0.7s ease-out;
  transition: clip-path 0.7s ease-out;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
section.hero h1.h-top.is-active {
  clip-path: inset(0 0 -20% 0);
}
section.hero .procuct-wrap {
  margin-top: 90rem;
  position: relative;
}
section.hero .procuct-wrap .hero-circle {
  width: 104vw;
  margin-left: -2vw;
}
section.hero .procuct-wrap .hero-product {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 400rem;
}
section.hero .bnr-award {
  width: 92%;
  margin: 70rem auto 0;
}
section.hero p.award-tx-small {
  font-size: 34rem;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  margin-bottom: 20rem;
}
section.hero p.award-tx-large {
  font-size: 48rem;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  margin-bottom: 20rem;
}
section.hero p.bottom-tx {
  font-size: 78rem;
  text-align: center;
  line-height: 1.2;
  color: #fff;
  font-weight: bold;
  margin-top: 80rem;
  clip-path: inset(0 100% -20% 0);
  -webkit-transition: clip-path 0.7s ease-out;
  transition: clip-path 0.7s ease-out;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
section.hero p.bottom-tx.is-active {
  clip-path: inset(0 0 -20% 0);
}
section.hero .bottom-ph {
  width: 92%;
  margin: -10rem auto 0;
}
section.hero .bottom-ph video {
  width: 100%;
}
section.hero .bg-filter {
  position: relative;
  background: url("../images/merit-bg.jpg") no-repeat center top;
  background-size: 350%;
  top: 0;
}
section.hero .bg-filter::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/space-bottomLine.svg") no-repeat center top -1rem;
  background-size: contain;
  position: absolute;
  z-index: 0;
}
section.hero .bg-filter .inner {
  position: relative;
  z-index: 1;
  width: 82%;
  margin: 0 auto;
}
section.hero .bg-filter .inner p {
  font-weight: bold;
  font-size: 36rem;
}
section.hero .bg-filter .filter {
  position: relative;
  top: -62rem;
  width: 92%;
  margin: 0 auto;
}
section.hero .wrap-sliderAdopt {
  margin-top: 200rem;
  position: relative;
}
section.hero .wrap-sliderAdopt::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(0, 0, 0, 0.6);
}
section.hero .wrap-sliderAdopt .adopt-result {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
  width: 394rem;
}

section.power {
  margin-top: 200rem;
}
section.power .wrap-head {
  background: #000;
  padding: 76rem 0 38rem;
  position: relative;
}
section.power .wrap-head img.p01 {
  width: 134rem;
  position: absolute;
  left: 70rem;
  top: -120rem;
}
section.power .wrap-head img.p02 {
  width: 160rem;
  position: absolute;
  right: 40rem;
  top: -120rem;
}
section.power .borderFrame {
  width: 92%;
  margin: 0 auto 80rem;
}
section.power .borderFrame p {
  font-size: 42rem;
  font-weight: bold;
  line-height: 1.5;
}
section.power h2.h-sc01 {
  text-align: center;
}
section.power h2.h-sc01 img {
  width: 220rem;
  margin-bottom: 30rem;
}
section.power h2.h-sc01 p {
  font-weight: bold;
  color: #fff;
  font-size: 72rem;
  line-height: 1.1;
}
section.power h2.h-sc01 p span {
  color: var(--color-red);
}
section.power .bottom-arrow {
  top: -1rem;
  width: 100%;
  padding-top: 80rem;
  position: relative;
  overflow: hidden;
}
section.power .bottom-arrow::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  left: 50%;
  border-top: 80rem solid #000;
  border-left: 50vw solid transparent;
  border-right: 50vw solid transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
section.power h3.h-primary {
  position: relative;
  margin-bottom: 80rem;
}
section.power h3.h-primary span.wrap-tx {
  display: -ms-grid;
  display: grid;
  gap: 20rem;
  clip-path: inset(0 100% -20% 0);
  -webkit-transition: clip-path 0.7s ease-out;
  transition: clip-path 0.7s ease-out;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
section.power h3.h-primary span.wrap-tx.is-active {
  clip-path: inset(0 0 -20% 0);
}
section.power h3.h-primary p {
  font-size: 68rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  width: 660rem;
  margin: 0 auto;
}
section.power .sc-num {
  display: inline-block;
  position: absolute;
  top: -40rem;
  left: 0;
  z-index: 0;
}
section.power .sc-num img {
  height: 177rem;
  width: auto;
}
section.power .inner-sc {
  width: 90%;
  margin: 0 auto;
}
section.power p.notes {
  margin-top: 80rem;
  position: relative;
  padding-left: 1.5em;
  line-height: 1.6;
}
section.power p.notes::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

h4.h-small {
  font-size: 42rem;
  line-height: 1.7;
  font-weight: bold;
  margin-bottom: 30rem;
  letter-spacing: 0.01em;
}

.sc-mainImage {
  margin-bottom: 50rem;
}
.sc-mainImage video {
  width: 100%;
}

/****** sc01*******/
section.sc01 {
  margin-top: 80rem;
}
section.sc01 .borderFrame img {
  width: 207rem;
  vertical-align: baseline;
}

.box-contries .ph {
  width: 350rem;
  margin: 50rem auto 0;
}

.box-sc01-col2 {
  margin-top: 100rem;
  display: -ms-grid;
  display: grid;
  gap: 80rem;
}
.box-sc01-col2 .desc {
  margin-top: 50rem;
  padding: 0 20rem;
}

/****** sc02*******/
section.sc02 {
  margin-top: 130rem;
  padding-top: 100rem;
  padding-bottom: 130rem;
  background: #000;
}
section.sc02 p {
  color: #fff;
}

/****** sc03*******/
section.sc03 {
  margin-top: 100rem;
}

.sc03-col2 {
  margin-top: 100rem;
}
.sc03-col2 .desc {
  padding: 50rem 40rem;
}

/****** sc04*******/
section.sc04 {
  margin-top: 130rem;
  padding-top: 100rem;
  padding-bottom: 130rem;
  background: #000;
}
section.sc04 p {
  color: #fff;
}

/****** sc05*******/
section.sc05 {
  margin-top: 100rem;
}

ul.sc-05 {
  margin-top: 60rem;
}
ul.sc-05 h4 {
  padding: 40rem;
  letter-spacing: 0;
}

.sc05-bottom {
  width: 90%;
  margin: 100rem auto 0;
}

section.merit {
  margin-top: 160rem;
}
section.merit .btn-all {
  margin-top: 60rem;
}
section.merit ul.sc-merit {
  display: -ms-grid;
  display: grid;
  gap: 100rem;
  width: 82%;
  margin: 0 auto;
}
section.merit ul.sc-merit h4.h-small {
  margin-top: 50rem;
  font-size: 34rem;
  text-align: left;
}

section.interview {
  overflow: hidden;
  margin-top: 140rem;
  position: relative;
  padding: 160rem 0 120rem;
}
section.interview .inner {
  position: relative;
  z-index: 1;
}
section.interview::before {
  content: "";
  display: block;
  background: #efefef;
  width: 90%;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 0;
}
section.interview .wrap-slider-interview {
  width: 140vw;
  position: relative;
  left: -20vw;
}
section.interview li.splide__slide .product-tag {
  position: absolute;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
section.interview li.splide__slide .product-tag img {
  width: 110rem;
  display: inline-block;
  margin-right: 1px;
}
section.interview li.splide__slide p {
  font-weight: bold;
  font-size: 30rem;
  padding: 30rem;
  overflow-wrap: break-word;
}
section.interview .btn-all {
  margin-top: 60rem;
}

section.lineup {
  margin-top: 160rem;
  padding: 200rem 0;
  background: #000;
}
section.lineup h2.h-secondary {
  color: #fff;
}
section.lineup .products-ph {
  text-align: center;
  background: url("../images/lineup-bg.png") no-repeat center;
  background-size: 160%;
}
section.lineup .products-ph img {
  width: 470rem;
}
section.lineup .wrap-lineupBtn {
  display: -ms-grid;
  display: grid;
  gap: 50rem;
  width: 82%;
  margin: 60rem auto 0;
}
section.lineup a.btn-lineup.borderFrame {
  padding: 50rem;
}
section.lineup a.btn-lineup .inn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
section.lineup a.btn-lineup .wrap-p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
section.lineup a.btn-lineup p {
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
}
section.lineup a.btn-lineup p.small {
  font-size: 28rem;
  line-height: 1.7;
  margin-bottom: 17rem;
}
section.lineup a.btn-lineup p.large {
  font-size: 54rem;
  line-height: 1.3;
}
section.lineup a.btn-lineup .arrow {
  margin-top: 40rem;
  width: 70rem;
  height: 70rem;
  background: url("../images/btn-arrow-white.svg") no-repeat center;
  background-size: contain;
}

section.news {
  margin-top: 200rem;
}
section.news .inner {
  width: 90%;
  margin: 0 auto;
}
section.news .info {
  padding: 50rem 40rem;
}
section.news .info time {
  font-family: var(--font-en2);
  color: #86868b;
  font-size: 27rem;
}

.banner {
  width: 90%;
  margin: 140rem auto 0;
}

/**********************************************************************

 * Media Query For PC

 ***********************************************************************/
@media print, screen and (min-width: 768px) {
  .borderFrame {
    padding: min(50px, 2.94vw) min(20px, 1.18vw);
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .borderFrame::before {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    width: min(20px, 1.18vw);
    height: min(20px, 1.18vw);
  }
  .borderFrame::after {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    width: min(20px, 1.18vw);
    height: min(20px, 1.18vw);
  }
  .borderFrame .inn::before {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    width: min(20px, 1.18vw);
    height: min(20px, 1.18vw);
  }
  .borderFrame .inn::after {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    width: min(20px, 1.18vw);
    height: min(20px, 1.18vw);
  }
  a.borderFrame:hover::before {
    width: min(70px, 4.12vw);
    height: min(70px, 4.12vw);
  }
  a.borderFrame:hover::after {
    width: min(70px, 4.12vw);
    height: min(70px, 4.12vw);
  }
  a.borderFrame:hover .inn::before {
    width: min(70px, 4.12vw);
    height: min(70px, 4.12vw);
  }
  a.borderFrame:hover .inn::after {
    width: min(70px, 4.12vw);
    height: min(70px, 4.12vw);
  }
  h2.h-secondary {
    font-size: min(70px, 4.12vw);
    gap: min(43px, 2.53vw);
    margin-bottom: 5.88vw;
    padding-bottom: min(35px, 2.06vw);
  }
  h2.h-secondary span.en {
    font-size: min(70px, 4.12vw);
  }
  h2.h-secondary::after {
    width: min(60px, 3.53vw);
  }
  .btn-all {
    text-align: center;
  }
  .btn-all a {
    margin: 0 auto;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: min(24px, 1.41vw);
  }
  .btn-all a::after {
    width: min(80px, 4.71vw);
    height: min(80px, 4.71vw);
    margin-left: 1.18vw;
  }
  .btn-all a:hover::after {
    background: url("../images/btn-arrow-black.svg") no-repeat center;
    width: min(80px, 4.71vw);
    height: min(80px, 4.71vw);
    margin-left: 1.18vw;
  }
  section.hero .bg-space {
    background: url("../images/bg-space.jpg") no-repeat center top, #000000;
    background-size: 100%;
    padding-bottom: 0;
    position: relative;
  }
  section.hero .bg-space::before {
    content: "";
    width: min(1860px, 109.41vw);
    height: 100%;
    background: url("../images/bg-stars.svg") no-repeat center top;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  section.hero h1.h-top {
    font-size: min(100px, 5.88vw);
    line-height: 1.1;
    padding-top: min(226px, 13.29vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    clip-path: inset(0 100% -20% 0);
    -webkit-transition: clip-path 1s ease-out;
    transition: clip-path 1s ease-out;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  section.hero h1.h-top img {
    width: min(718px, 42.24vw);
  }
  section.hero .procuct-wrap {
    margin-top: min(50px, 2.94vw);
  }
  section.hero .procuct-wrap .hero-circle {
    width: min(1158px, 68.12vw);
    margin: 0 auto;
    display: block;
  }
  section.hero .procuct-wrap .hero-product {
    width: min(709px, 41.71vw);
  }
  section.hero .bnr-award {
    width: min(1200px, 70.59vw);
    margin: 5.88vw auto 0;
  }
  section.hero .bnr-award a {
    width: min(1120px, 65.88vw);
    display: block;
    margin: 0 auto;
  }
  section.hero p.award-tx-small {
    font-size: min(36px, 2.12vw);
    margin-bottom: min(20px, 1.18vw);
  }
  section.hero p.award-tx-large {
    font-size: min(76px, 4.47vw);
    line-height: 1.1;
    margin-bottom: min(20px, 1.18vw);
  }
  section.hero p.bottom-tx {
    font-size: min(100px, 5.88vw);
    margin-top: 4.71vw;
    text-align: center;
    clip-path: inset(0 100% -20% 0);
    -webkit-transition: clip-path 1.2s ease-out;
    transition: clip-path 1.2s ease-out;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  section.hero p.bottom-tx img {
    height: min(130px, 7.65vw);
    width: auto;
  }
  section.hero .bottom-ph {
    width: min(857px, 50.41vw);
    margin: -20px auto 0;
  }
  section.hero .bg-filter {
    position: relative;
    background: url("../images/merit-bg.jpg") no-repeat center top 100px;
    background-size: 100%;
    padding-bottom: 15.29vw;
  }
  section.hero .bg-filter::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url("../images/space-bottomLine.svg") no-repeat center top;
    background-size: 100%;
    position: absolute;
    top: -1px;
    z-index: 0;
  }
  section.hero .bg-filter .inner {
    margin-top: 2.94vw;
  }
  section.hero .bg-filter .inner p {
    width: min(1140px, 67.06vw);
    margin: 0 auto;
    font-size: min(26px, 1.53vw);
  }
  section.hero .bg-filter .filter {
    top: 0;
    width: min(780px, 45.88vw);
    margin: 0 auto;
  }
  section.hero .wrap-sliderAdopt {
    margin: 11.76vw auto 0;
    width: min(1580px, 92.94vw);
  }
  section.hero .wrap-sliderAdopt::before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    width: min(790px, 46.47vw);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  section.hero .wrap-sliderAdopt .adopt-result {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 2;
    width: min(480px, 28.24vw);
  }
  section.power {
    margin-top: 0;
  }
  section.power .wrap-head {
    padding: 5.88vw 0 0;
    position: relative;
    z-index: 1;
  }
  section.power .wrap-head .inner {
    width: min(1900px, 98vw);
    position: relative;
    margin: 0 auto;
  }
  section.power .wrap-head img.p01 {
    width: min(264px, 15.53vw);
    position: absolute;
    left: min(190px, 11.18vw);
    top: min(-180px, -10.59vw);
  }
  section.power .wrap-head img.p02 {
    width: min(320px, 18.82vw);
    position: absolute;
    right: min(190px, 11.18vw);
    top: min(-180px, -10.59vw);
  }
  section.power .borderFrame {
    width: min(900px, 52.94vw);
    margin: 0 auto min(80px, 4.71vw);
  }
  section.power .borderFrame p {
    font-size: min(36px, 2.12vw);
  }
  section.power .borderFrame img {
    height: min(130px, 7.65vw);
  }
  section.power h2.h-sc01 {
    width: min(947px, 55.71vw);
    position: relative;
    z-index: 1;
    margin: 0 auto;
  }
  section.power h2.h-sc01 p {
    font-size: min(100px, 5.88vw);
  }
  section.power .bottom-arrow {
    top: 0;
    padding-top: 10.59vw;
  }
  section.power .bottom-arrow::after {
    border-top: 10.59vw solid #000;
  }
  section.power h3.h-primary {
    margin-bottom: min(80px, 4.71vw);
    text-align: center;
    position: static;
  }
  section.power h3.h-primary span.wrap-tx {
    display: block;
    clip-path: inset(0 100% -20% 0);
    -webkit-transition: clip-path 1s ease-out;
    transition: clip-path 1s ease-out;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  section.power h3.h-primary img.tx {
    height: min(100px, 5.88vw);
    width: auto;
    margin: 0 min(8px, 0.47vw);
  }
  section.power h3.h-primary p {
    font-size: min(72px, 4.24vw);
  }
  section.power .sc-num {
    display: inline-block;
    position: absolute;
    top: -40rem;
    left: 0;
    z-index: 0;
  }
  section.power .sc-num img {
    height: min(300px, 17.65vw);
    width: auto;
  }
  section.power .inner-sc {
    width: min(940px, 55.29vw);
    margin: 0 auto;
  }
  section.power p.notes {
    margin-top: 3em;
    position: relative;
    padding-left: 1.5em;
    line-height: 1.6;
  }
  section.power p.notes::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0;
  }
  h4.h-small {
    font-size: min(24px, 1.41vw);
    line-height: 1.5;
    margin-bottom: min(20px, 1.18vw);
  }
  .sc-mainImage {
    margin: 0 auto min(50px, 2.94vw);
    width: min(1100px, 64.71vw);
  }
  section.sc01,
  section.sc02,
  section.sc03,
  section.sc04,
  section.sc05 {
    position: relative;
  }
  /****** sc01*******/
  section.sc01 {
    margin-top: 5.88vw;
  }
  section.sc01 .borderFrame img {
    width: min(230px, 13.53vw);
    height: auto;
  }
  .box-contries {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(80px, 4.71vw) min(262px, 15.41vw);
    grid-template-columns: 1fr min(262px, 15.41vw);
    gap: min(80px, 4.71vw);
  }
  .box-contries .ph {
    width: auto;
    margin: 0;
  }
  .box-sc01-col2 {
    margin-top: 5.88vw;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(60px, 3.53vw) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: min(60px, 3.53vw);
  }
  .box-sc01-col2 .h-small {
    letter-spacing: 0;
  }
  .box-sc01-col2 .desc {
    margin-top: min(40px, 2.35vw);
    padding: 0 min(20px, 1.18vw);
  }
  .box-sc01-col2 p {
    font-size: min(18px, 1.06vw);
  }
  /****** sc02*******/
  section.sc02 {
    margin-top: 11.76vw;
    padding-top: 11.76vw;
    padding-bottom: min(185px, 10.88vw);
  }
  section.sc02 .sc-num {
    top: min(100px, 5.88vw);
  }
  /****** sc03*******/
  section.sc03 {
    margin-top: 11.76vw;
  }
  .sc03-col2 {
    margin-top: 5.88vw;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(60px, 3.53vw) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: min(60px, 3.53vw);
  }
  .sc03-col2 .desc {
    padding: 0;
    position: relative;
    top: -0.4em;
  }
  /****** sc04*******/
  section.sc04 {
    margin-top: 11.76vw;
    padding-top: 11.76vw;
    padding-bottom: min(200px, 11.76vw);
  }
  section.sc04 .sc-num {
    top: min(100px, 5.88vw);
  }
  /****** sc05*******/
  section.sc05 {
    margin-top: 11.76vw;
  }
  ul.sc-05 {
    margin-top: 5.88vw;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(60px, 3.53vw) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: min(60px, 3.53vw);
  }
  ul.sc-05 h4 {
    padding: min(30px, 1.76vw) min(20px, 1.18vw) 0;
    margin-bottom: 0;
  }
  .sc05-bottom {
    width: min(940px, 55.29vw);
    margin: 5.88vw auto 0;
  }
  section.merit {
    margin-top: 11.76vw;
  }
  section.merit .btn-all {
    margin-top: 3.53vw;
  }
  section.merit ul.sc-merit {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(60px, 3.53vw) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: min(60px, 3.53vw);
    width: min(1100px, 64.71vw);
  }
  section.merit ul.sc-merit h4.h-small {
    padding: 0 min(30px, 1.76vw);
    font-size: min(24px, 1.41vw);
    margin-top: min(30px, 1.76vw);
    margin-bottom: min(20px, 1.18vw);
  }
  section.merit ul.sc-merit p {
    font-size: min(18zpx, 1.06zvw);
    padding: 0 min(30px, 1.76vw);
  }
  section.interview {
    overflow: hidden;
    margin-top: 9.41vw;
    position: relative;
    padding: 9.41vw 0 7.06vw;
  }
  section.interview::before {
    width: 88%;
  }
  section.interview .wrap-slider-interview {
    width: 110vw;
    position: relative;
    left: -5vw;
  }
  section.interview li.splide__slide .product-tag img {
    width: min(110px, 6.47vw);
    margin-right: 1px;
  }
  section.interview li.splide__slide p {
    font-size: min(24px, 1.41vw);
    padding: 2.35vw;
  }
  section.interview li.splide__slide a:hover {
    opacity: 0.8;
  }
  section.interview .btn-all {
    margin-top: 3.53vw;
  }
  section.lineup {
    margin-top: 9.41vw;
    padding: 11.76vw 0;
  }
  section.lineup .products-ph {
    background: url("../images/lineup-bg.png") no-repeat center bottom;
    background-size: 100%;
    padding-bottom: 9.41vw;
  }
  section.lineup .products-ph img {
    width: min(606px, 35.65vw);
  }
  section.lineup .wrap-lineupBtn {
    width: min(520px, 30.59vw);
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(60px, 3.53vw);
    margin: 0 auto;
  }
  section.lineup a.btn-lineup {
    padding: min(50px, 2.94vw) 0 min(40px, 2.35vw);
  }
  section.lineup a.btn-lineup .inn {
    display: block;
  }
  section.lineup a.btn-lineup.borderFrame {
    padding: min(50px, 2.94vw) min(20px, 1.18vw);
  }
  section.lineup a.btn-lineup p {
    text-align: center;
  }
  section.lineup a.btn-lineup p.small {
    font-size: min(24px, 1.41vw);
    line-height: 1.7;
    margin-bottom: min(17px, 1vw);
  }
  section.lineup a.btn-lineup p.large {
    font-size: min(48px, 2.82vw);
    line-height: 1.3;
  }
  section.lineup a.btn-lineup .arrow {
    margin: min(20px, 1.18vw) auto 0;
    width: min(60px, 3.53vw);
    height: min(60px, 3.53vw);
    background: url("../images/btn-arrow-white.svg") no-repeat center;
    background-size: contain;
  }
  section.lineup a.btn-lineup:hover {
    background: #141414;
    -webkit-box-shadow: 0px 0px 40px 25px rgba(255, 255, 255, 0.15);
            box-shadow: 0px 0px 40px 25px rgba(255, 255, 255, 0.15);
  }
  section.news {
    margin-top: 11.76vw;
  }
  section.news .inner {
    width: 64.71vw;
  }
  section.news ul.news {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  section.news ul.news li {
    width: min(340px, 20vw);
    margin: 0 min(20px, 1.18vw);
  }
  section.news ul.news a:hover {
    opacity: 0.8;
  }
  section.news .info {
    padding: min(30px, 1.76vw) min(20px, 1.18vw);
  }
  section.news .info time {
    font-family: var(--font-en2);
    color: #86868b;
    font-size: min(18px, 1.06vw);
  }
  section.news .info p {
    font-size: min(20px, 1.18vw);
  }
  section.news .btn-all {
    margin-top: min(100px, 5.88vw);
  }
  .banner {
    width: min(1100px, 64.71vw);
    margin: 8.24vw auto 0;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .banner:hover {
    opacity: 0.9;
  }
}
@media screen and (min-width: 1900px) {
  section.hero .bg-space {
    background: url("../images/bg-space.jpg") no-repeat center top -10%, #000000;
    background-size: 100%;
  }
}
@media screen and (min-width: 2200px) {
  section.hero .bg-space {
    background: url("../images/bg-space.jpg") no-repeat center top -25%, #000000;
    background-size: 100%;
  }
}
@media screen and (min-width: 2300px) {
  section.hero .bg-filter .filter {
    padding-top: 3vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
  section.power .inner-sc {
    width: min(1300px, 76.47vw);
  }
  .sc-mainImage {
    width: min(1400px, 82.35vw);
  }
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
  section.area-news ul.news li p {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 800px) {
  section.area-news ul.news li p {
    font-size: 12px;
  }
}
/*# sourceMappingURL=main_en.css.map */