@charset "UTF-8";

:root {
  --base-size: 1440;
}

html {
  font-family: "Montserrat", sans-serif;
  font-size: 62.5%;
  font-weight: 400;
  letter-spacing: 0.05em;
  background-color: #151515ff;
  color: #fff;
}

h2 a{
  color: inherit;
}

.main{
  letter-spacing: 0.1em;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

img,
video {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

a {
  display: inline-block;
  text-decoration: none;
}

li {
  list-style: none;
}

.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: min(16px, calc(16 / var(--base-size) * 100vw))
    min(60px, calc(60 / var(--base-size) * 100vw));
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  mix-blend-mode: difference;
  transition: 0.75s;
  transition-delay: 1.5s;
  transition-timing-function: ease-in-out;
}

.header--top {
  transform: translateY(-100%);
}

.header--top.active {
  transform: translateY(0%);
}

.header__logo {
  width: min(180px, calc(180 / var(--base-size) * 100vw));
}

.header__nav__list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.header__nav__link {
  display: inline-block;
  margin: min(8px, calc(8 / var(--base-size) * 100vw)) 0;
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  color: #fff;
  position: relative;
  font-family: "Montserrat", sans-serif;
}

.header__nav__link:hover {
  color: #000;
}

.header__nav__link:hover .header__nav__link__text {
  transform: scale(0.9);
}

.header__nav__link::before {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: -1;
}

.header__nav__link--last {
  letter-spacing: -0.03em;
}

.header__nav__link--last::before {
  width: min(110px, calc(110 / var(--base-size) * 100vw));
  height: min(110px, calc(110 / var(--base-size) * 100vw));
}

.header__nav__link:hover::before {
  transform: translate(-50%, -50%) scale(1, 1);
}

.header__nav__line {
  background: #ffffff;
  height: min(30px, calc(30 / var(--base-size) * 100vw));
  margin: 0 min(16px, calc(16 / var(--base-size) * 100vw)) 0;
  width: min(1px, calc(1 / var(--base-size) * 100vw));
  max-width: calc(100% - min(32px, calc(32 / var(--base-size) * 100vw)));
}

.fv {
  direction: rtl;
}

.fv__wrap {
  position: relative;
}

.fvScroll {
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  background: rgba(0, 0, 0, 0);
  bottom: 0px;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: flex-start;
  left: 0px;
  margin: 0 0 0 0;
  position: absolute;
  right: 0px;
  top: auto;
  width: auto;
  max-width: 100%;
}

.fvScroll__wrap {
  display: flex;
  align-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 30px;
}

.fvScroll__txt {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0px 0px 10px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  max-width: 100%;
  justify-content: center;
}

.fvScroll__line {
  position: relative;
  background: transparent;
  flex: none;
  height: 160px;
  transform-origin: top center;
  width: 1px;
  max-width: 100%;
}

.fvScroll__line::after{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background-color: #ffffff;
  height: 0%;
  transform-origin: top center;
  width: 100%;
  transition: height 5s ease;
}

.fvScroll__line.is-animate::after {
  height: 100%;
}

.fv__img__inner {
  height: 85svh;
  object-fit: cover;
  object-position: center;
}

.topNews {
  padding: min(40px, calc(40 / var(--base-size) * 100vw))
    min(80px, calc(80 / var(--base-size) * 100vw))
    min(40px, calc(40 / var(--base-size) * 100vw));
}
.topNews__ttl {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  line-height: 1.4;
}
.topNews__line {
  background: #ffffff;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  margin: min(20px, calc(20 / var(--base-size) * 100vw)) 0;
  width: min(15px, calc(15 / var(--base-size) * 100vw));
  max-width: 100%;
}

.topNews__date {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  margin: 0 0 min(10px, calc(10 / var(--base-size) * 100vw)) 0;
}

.topNews__detail {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(10px, calc(10 / var(--base-size) * 100vw)) 0;
  text-align: left;
  width: min(360px, calc(360 / var(--base-size) * 100vw));
  justify-content: flex-start;
}

.topAbout__ttl{
    color: #ffffff;
    font-family: "Montserrat", sans-serif;
    font-size: min(100px, calc(100 / var(--base-size) * 100vw));
    font-weight: 100;
    line-height: 1.4;
    max-width: 100%;
    margin: 0 0 min(42px, calc(42 / var(--base-size) * 100vw)) 0;
}

.header__nav__item--lang{
  position: relative;
  display: flex;
  align-items: center;
}

.header__nav__item--lang::after{
  content: "";
  position: absolute;
  height: 70%;
  width: 1px;
  background-color: #fff;
  left: calc(50% - 1.5px);
  top: calc(50% - 35%);
}

.header__nav__item__kind{
  position: relative;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  color: #fff;
  padding: min(3px, calc(3 / var(--base-size) * 100vw));
  margin: 5px;
  transform: scale(1);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  transition: 0.3s;
}

.header__nav__item__kind:hover{
  opacity: 0.5;
  transform: scale(0.9, 0.9);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  transition: 0.3s;
}


.concept {
  padding: 0 min(60px, calc(60 / var(--base-size) * 100vw));
  margin-bottom: min(120px, calc(120 / var(--base-size) * 100vw));
  margin-top: min(200px, calc(200 / var(--base-size) * 100vw));
}

.concept__wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: min(1200px, calc(1200 / var(--base-size) * 100vw));
  margin: auto;
}

.concept__right {
  height: min(680px, calc(680 / var(--base-size) * 100vw));
  justify-content: flex-start;
  padding: 0 0 0 min(80px, calc(80 / var(--base-size) * 100vw));
  transform-origin: top center;
  width: min(480px, calc(480 / var(--base-size) * 100vw));
  max-width: 100%;
  position: relative;
}

.concept__right__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.concept__right__img--bg{
  position: absolute;
  z-index: -1;
  width: calc(100% - min(80px, calc(80 / var(--base-size) * 100vw)));
  height: 100%;
  object-fit: cover;
  right: -10px;
  top: 10px;
}

.concept__left {
  width: 60%;
}

.concept__left__label {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(20px, calc(20 / var(--base-size) * 100vw));
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.7;
  margin: 0 0 min(42px, calc(42 / var(--base-size) * 100vw)) 0;
  text-align: left;
}

.concept__left__detail {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 2;
  margin: 0 0 min(53px, calc(53 / var(--base-size) * 100vw)) 0;
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}

.concept__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  line-height: 1.4;
  padding: 0 min(10px, calc(10 / var(--base-size) * 100vw))
    min(5px, calc(5 / var(--base-size) * 100vw))
    min(10px, calc(10 / var(--base-size) * 100vw));
  text-align: center;
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: auto;
  justify-content: center;
  position: relative;
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  z-index: 0;
}

.concept__link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 45%);
  width: 0%;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0, 0.8, 0.2, 1);
  transition-delay: 0.75s;
}

.concept__link.active::before {
  width: 90%;
  transform: scaleX(1);
  transform-origin: left;
}

.concept__link:hover {
  color: #000;
}

.concept__link::after {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  transition: 0.3s;
  display: inline-block;
  z-index: -1;
}

.concept__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}


.topoao{
  position: relative;
  padding: min(71px, calc(71 / var(--base-size) * 100vw)) 0;
}

.topoao::after{
  content: "";
  background-image: url(../img/top-oaobg.webp);
  filter: brightness(0.5);
  background-position: 50%;
  background-size: cover;
  border-radius: inherit;
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transition: inherit;
  width: 100%;
  z-index: -2;
}

.topoao__inner{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding-bottom: min(31px, calc(31 / var(--base-size) * 100vw));
}

.topoao__ttl{
  text-align: center;
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(100px, calc(100 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
  max-width: 100%;
}

.topoao__txt{
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.7;
  margin: 0 0 min(31px, calc(31 / var(--base-size) * 100vw)) 0;
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
}

.NewtopProduct{
  margin: min(160px, calc(160 / var(--base-size) * 100vw)) 0px min(120px, calc(120 / var(--base-size) * 100vw)) 0px;
}

.NewtopProduct__inner{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0px min(60px, calc(60 / var(--base-size) * 100vw));
  margin: auto;
}

.NewtopProduct__left{
  height: min(500px, calc(500 / var(--base-size) * 100vw));
  transform-origin: top center;
  width: calc(100% - 396.6px);
  max-width: 100%;
  position: relative;
  padding: 0 min(54px, calc(54 / var(--base-size) * 100vw)) 0 0;
}

.NewtopProduct__right{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  height: -webkit-fill-available;
}

.NewtopProduct__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.NewtopProduct__img--bg{
  position: absolute;
  z-index: -1;
  width: calc(100% - min(54px, calc(54 / var(--base-size) * 100vw)));
  height: 100%;
  object-fit: cover;
  left: -10px;
  top: 10px;
}

.topProduct__top {
  text-align: right;
  padding: 0 ;
}

.topProduct__line {
  background: #ffffff;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  margin: 0 0 min(30px, calc(30 / var(--base-size) * 100vw)) auto;
  padding: 0;
  width: min(15px, calc(15 / var(--base-size) * 100vw));
}

.topProduct__ttl {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(100px, calc(100 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
  width: auto;
}

.topProduct__catch {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(20px, calc(20 / var(--base-size) * 100vw)) 0;
}

.topProduct__middle {
  padding: 0 0 min(120px, calc(120 / var(--base-size) * 100vw))
    min(160px, calc(160 / var(--base-size) * 100vw));
}

.topProduct__list {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  align-content: center;
  overflow-x: scroll;
  margin: 0 0 0 auto;
  width: 89%;
}

.topProduct__item {
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
  transform: translate(0, 0);
  width: min(250px, calc(250 / var(--base-size) * 100vw));
}

.productList__item {
  width: 25%;
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
}

.productList__item__link {
  display: block;
}

.topProduct__item__img__wrap {
  width: min(210px, calc(210 / var(--base-size) * 100vw));
  height: min(215px, calc(215 / var(--base-size) * 100vw));
  overflow: hidden;
  display: inline-block;
}

.productList__item__img__wrap {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: inline-block;
}

.topProduct__item__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  cursor: pointer;
}

.topProduct__item__img:hover {
  transform: scale(1.1, 1.1);
  transition-duration: 600ms;
}

.topProduct__item__tags {
  display: flex;
  align-items: flex-start;
  justify-items: flex-start;
  margin: min(20px, calc(20 / var(--base-size) * 100vw)) 0 0;
  gap: min(10px, calc(10 / var(--base-size) * 100vw));
}

.topProduct__item__tag {
  color: #cececeff;
  font-family: "Montserrat", sans-serif;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
}

.topProduct__item__name {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(15px, calc(15 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(20px, calc(20 / var(--base-size) * 100vw)) 0;
  display: block;
}

.topProduct__item__price {
  color: #ffffff;
  flex: none;
  font-family: Inter, "Noto Sans JP";
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 200;
  line-height: 1.4;
  margin: 0 min(5px, calc(5 / var(--base-size) * 100vw)) 0 0;
  max-width: calc(100% - min(5px, calc(5 / var(--base-size) * 100vw)));
}

.productList__line {
  display: inline-block;
  background: #ffffff;
  flex: none;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  width: 80%;
  max-width: 80%;
}

.topProduct__scroll {
  display: flex;
  align-items: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  margin: min(20px, calc(20 / var(--base-size) * 100vw)) 0
    min(40px, calc(40 / var(--base-size) * 100vw)) 0;
  padding: 0;
  transform-origin: center left;
  width: 100%;
}

.topProduct__scroll__inner {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(20px, calc(20 / var(--base-size) * 100vw));
  font-weight: 100;
  height: auto;
  line-height: 1.4;
  padding: 0 min(15px, calc(15 / var(--base-size) * 100vw)) 0
    min(100px, calc(100 / var(--base-size) * 100vw));
  text-align: center;
  max-width: 100%;
  justify-content: center;
}

.topProduct__scroll__inner__wrap {
  text-align: left;
  display: flex;
  align-items: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  width: min(357px, calc(357 / var(--base-size) * 100vw));
}

.topProduct__scroll__line1 {
  background: #797979;
  border-radius: 0;
  flex: none;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  margin: 0;
  transform: scale(1, 1);
  width: 0;
  transform-origin: center left;
  max-width: 100%;
  transition: 1s;
  transition-timing-function: ease-in-out;
}

.topProduct__scroll__line1.active {
  width: min(160px, calc(160 / var(--base-size) * 100vw));
}

.topProduct__scroll__line2 {
  background: #797979;
  border-radius: 0;
  flex: none;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  margin: 0 min(30px, calc(30 / var(--base-size) * 100vw)) 0
    min(-10px, calc(-10 / var(--base-size) * 100vw));
  transform: rotate(45deg) scale(1, 1);
  transform-origin: bottom right;
  width: min(10px, calc(10 / var(--base-size) * 100vw));
  max-width: calc(100% - min(20px, calc(20 / var(--base-size) * 100vw)));
}

.topVideo{
  margin: min(190px, calc(190 / var(--base-size) * 100vw)) auto min(70px, calc(70 / var(--base-size) * 100vw)) auto;
  max-width: 1440px;
  height: auto;
  width: 90%;
  aspect-ratio: 16 / 8;
  position: relative;
  overflow: hidden;
}

.topVideo__iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 130%;
  height: 130%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.topVideo__under {
  text-align: center;
}

.topVideo__under--gallery{
  margin-top: min(50px, calc(50 / var(--base-size) * 100vw));
}

.topVideo__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  display: inline-block;
  font-weight: 300;
  line-height: 1.4;
  padding: 0 min(15px, calc(15 / var(--base-size) * 100vw))
    min(5px, calc(5 / var(--base-size) * 100vw))
    min(15px, calc(15 / var(--base-size) * 100vw));
  text-align: center;
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  max-width: 100%;
  position: relative;
  z-index: 0;
}

.topVideo__link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 20%;
  width: 0%;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0, 0.8, 0.2, 1);
  transition-delay: 0.75s;
}

.topVideo__link.active::before {
  width: 60%;
  transform: scaleX(1);
  transform-origin: left;
}

.topVideo__link:hover {
  color: #000;
}

.topVideo__link::after {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: -1;
}

.topVideo__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}

.topVideo__link--gallery{
  width: min(95px, calc(95 / var(--base-size) * 100vw));
}

.topVideo__link--gallery::before{
  left: 10%;
  width: 80%;
}

.topVideo__link--gallery.active::before{
  width: 80%;
}

.topVideo__link--gallery::after{
  width: min(95px, calc(95 / var(--base-size) * 100vw));
  height: min(95px, calc(95 / var(--base-size) * 100vw));
}

.NewtopNews{
  margin: min(120px, calc(120 / var(--base-size) * 100vw)) 0;
}

.NewtopNews__top{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0px min(60px, calc(60 / var(--base-size) * 100vw));
}

.NewtopNews__top__up{
  text-align: left;
}

.NewtopNews__top__catch{
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  margin-top: 6px;
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
}

.NewtopNews__top__cap{
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin-top: 5px;
}

.NewtopNews__bottom{
  width: 95%;
  margin: 0 0 0 auto;
  padding-left: min(60px, calc(60 / var(--base-size) * 100vw));
  margin-top: min(42px, calc(42 / var(--base-size) * 100vw));
}

.NewtopNews__bottom--news{
  padding-left: min(160px, calc(160 / var(--base-size) * 100vw));
}

.NewtopNews__bottom__item{
  width: 100%;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
}

.NewtopNews__bottom__item__date{
  color: #FFFFFF;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
}

.NewtopNews__bottom__item__ttl{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  border-bottom: 1px solid #797979;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  padding-bottom: min(20px, calc(20 / var(--base-size) * 100vw));
}

.concept__link--NewtopNews{
  margin-left: min(20px, calc(20 / var(--base-size) * 100vw));
  margin-top: min(50px, calc(50 / var(--base-size) * 100vw));
}

.concept__link--Toppopup{
  margin-top: min(50px, calc(50 / var(--base-size) * 100vw));
}

.gallery {
  margin: min(133px, calc(133 / var(--base-size) * 100vw)) 0
    min(180px, calc(180 / var(--base-size) * 100vw));
}

.gallery__wrap {
  padding: 0 min(60px, calc(60 / var(--base-size) * 100vw));
}

.gallery__inner {
  position: relative;
}

.gallery__inner::after {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/top-gallarybgall.webp) center/cover no-repeat;
  z-index: -1;
  transform: translateY(min(20px, calc(20 / var(--base-size) * 100vw)));
}

.gallery__inner.active::after {
  animation: fadeInUpPseudo 0.8s ease forwards;
}

@keyframes fadeInUpPseudo {
  0% {
    opacity: 0;
    transform: translateY(min(20px, calc(20 / var(--base-size) * 100vw)));
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.gallery__row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.gallery__left {
  padding: min(10px, calc(10 / var(--base-size) * 100vw)) min(5px, calc(5 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw));
}

.gallery__right {
  padding: min(10px, calc(10 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw)) min(5px, calc(5 / var(--base-size) * 100vw));
}

.gallery__30 {
  width: 30%;
}

.gallery__70 {
  width: 70%;
}

.gallery__img {
  height: calc(480 / var(--base-size) * 100vw);
  object-fit: cover;
  object-position: center;
}

.Toppopup{
  margin: min(133px, calc(133 / var(--base-size) * 100vw)) 0;
}

.Toppopup__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}

.popup__wrap{
  padding: 0px min(60px, calc(60 / var(--base-size) * 100vw));
}

.popup__inner{
  display: flex;
  align-items: center;
  background-color: #ff7953;
  padding: min(120px, calc(120 / var(--base-size) * 100vw)) min(30px, calc(30 / var(--base-size) * 100vw)) min(70px, calc(70 / var(--base-size) * 100vw)) min(30px, calc(30 / var(--base-size) * 100vw));
}

.Toppopup__left{
  width: 482px;
  max-width: 100%;
}

.Toppopup__right{
  height: min(500px, calc(500 / var(--base-size) * 100vw));
  transform-origin: top center;
  width: calc(100% - 481px);
  max-width: 100%;
  position: relative;
  padding: 0 0 0 min(36px, calc(36 / var(--base-size) * 100vw));
}

.Toppopup__left__ttl{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  font-size: min(15px, calc(15 / var(--base-size) * 100vw));
  margin-top: min(42px, calc(42 / var(--base-size) * 100vw));
  padding-bottom: 6px;
  border-bottom: 1px solid #fff;
}

.Toppopup__left__txt{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  margin-top: min(42px, calc(42 / var(--base-size) * 100vw));
  line-height: 1.4;
  letter-spacing: 0.1em;
}

.TopWhat{
  margin: min(133px, calc(133 / var(--base-size) * 100vw)) 0;
}

.TopWhat__inner{
  display: flex;
  gap: min(80px, calc(80 / var(--base-size) * 100vw));
  padding: 0px min(60px, calc(60 / var(--base-size) * 100vw));
  align-items: center;
}

.TopWhat__left{
  width: 53.5%;
}

.TopWhat__right{
  height: -webkit-fill-available;
  width: 46.5%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: min(30px, calc(30 / var(--base-size) * 100vw)) 0;
}

.TopWhat__ttl{
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-weight: 400;
  font-size: min(20px, calc(20 / var(--base-size) * 100vw));
  letter-spacing: 0.1em;
}

.TopWhat__txt{
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.1em;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
}

.contact__wrap {
  padding: min(120px, calc(120 / var(--base-size) * 100vw)) min(60px, calc(60 / var(--base-size) * 100vw));
  width: 100%;
  max-width: 100%;
}

.contact__line {
  background: #ffffff;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  margin: 0 0 min(30px, calc(30 / var(--base-size) * 100vw)) 0;
  padding: 0;
  width: min(15px, calc(15 / var(--base-size) * 100vw));
  max-width: 100%;
}

.contact__ttl {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(100px, calc(100 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
  max-width: 100%;
  justify-content: flex-start;
}

.contact__detail {
  color: #ffffff;
  font-family: "Noto Sans JP";
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(67px, calc(67 / var(--base-size) * 100vw)) 0;
  max-width: 100%;
  margin-top: 10px;
}

.contact__detail span{
  font-size: 80%;
  display: inline-block;
  margin-top: 8px;
}

.contact__detail span a{
  color: inherit;
  font-weight: 500;
  text-decoration: underline;
}

.contact__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  text-align: center;
  line-height: 1.4;
  padding: 0 min(15px, calc(15 / var(--base-size) * 100vw))
    min(5px, calc(5 / var(--base-size) * 100vw))
    min(15px, calc(15 / var(--base-size) * 100vw));
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  max-width: 100%;
  position: relative;
}

.contact__link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 20%;
  width: 0%;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0, 0.8, 0.2, 1);
  transition-delay: 0.75s;
}

.contact__link.active::before {
  width: 60%;
  transform: scaleX(1);
  transform-origin: left;
}

.contact__link:hover {
  color: #000;
}

.contact__link::after {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: 0;
}

.contact__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}

.contact__link__inner{
  position: relative;
  z-index: 1;
}

.contact__button{
  display: flex;
  gap: 32px;
}

.contact__button__item{
  display: flex;
  text-align: center;
  max-width: 205px;
  position: relative;
  flex-direction: column;
  justify-content: center;
  border-radius: 128px;
  height: 48px;
  padding: 0 min(27px, calc(27 / var(--base-size) * 100vw));
  gap: 5px;
  background: #fff;
  color: #000000ff;
  z-index: 0;
}

.contact__button__item__txt{
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
}

.contact__button__item__bar {
  width: 0;
  height: 1px;
  background-color: #000;
}

.contact__button__item__bar.active {
  animation: barSlide 2s ease forwards;
}

@keyframes barSlide {
  0%   { width: 0%; }
  100% { width: 100%; }
}

.contact__button__item__color{
  background: #ff3902;
  border-radius: 128px;
  flex: none;
  height: 100%;
  left: 0;
  margin: 0 0 0 0;
  position: absolute;
  top: 0;
  transform: scale(0, 0);
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: 100%;
  z-index: -1;
  max-width: 100%;
}

.contact__button__item--company .contact__button__item__color{
  background: #86318a;
}

.contact__button__item--pdetail .contact__button__item__color{
  background: #ff7953;
}

.contact__button__item:hover{
  border-radius: 128px;
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
}

.contact__button__item:hover .contact__button__item__txt{
  color: #ffffffff;
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
}

.contact__button__item:hover .contact__button__item__bar{
  background: #ffffffff;
}

.contact__button__item:hover .contact__button__item__color{
    transform: scale(1, 1);
    transition-duration: 400ms;
    transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
}

.Newfooter{
  background-color: #b27365;
  padding: min(60px, calc(60 / var(--base-size) * 100vw)) min(60px, calc(60 / var(--base-size) * 100vw)) min(100px, calc(100 / var(--base-size) * 100vw)) min(60px, calc(60 / var(--base-size) * 100vw));
}

.Newfooter__inner{
  display: flex;
  gap: min(60px, calc(60 / var(--base-size) * 100vw));
}

.Newfooter__list{
  display: flex;
  gap: min(32px, calc(32 / var(--base-size) * 100vw)) min(40px, calc(48 / var(--base-size) * 100vw));
}

.Newfooter__list--ja{
  margin-top: min(24px, calc(24 / var(--base-size) * 100vw));
}

.Newfooter__list__item{
  position: relative;
  display: inline-block;
  color: #fff;
  font-weight: 300;
  line-height: 1.8;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
}

.Newfooter__list__item--yp{
  display: flex;
  gap: 10px;
  align-items: center;
}

.Newfooter__list__item--yp::after{
  content: "";
  background: url(../img/ypicon.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 18px;
  width: auto;
  aspect-ratio: 46/20;
}

.Newfooter__list__item::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 100%;
  background: #fff;

  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.4s linear;
}

.Newfooter__list__item:hover::before {
  transform: scaleX(1);
}

.Newfooter__list--ja .Newfooter__list__item{
  font-family: "Noto Sans JP";
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
}

.Newfooter__copy{
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  margin-top: min(60px, calc(60 / var(--base-size) * 100vw));
}

.Newfooter__list__item--toggle{
  font-family: "Noto Sans JP";
  color: #fff;
  font-weight: 300;
  line-height: 1.8;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  display: flex;
  gap: 30px;
  align-items: center;
  padding-bottom: 15px;
  padding-right: min(40px, calc(40 / var(--base-size) * 100vw));
  cursor: pointer;
}

.Newfooter__list__item--toggle::after{
  content: "";
  width:0;
  height:0;
  border-style:solid;
  border-width: 7px 5px 0 5px;
  border-color: #FFFFFF transparent transparent transparent;
  transition: 0.3s;
}

.Newfooter__list__item--toggle.is-active::after{
  transition: 0.3s;
  transform: rotate(180deg);
}

.Newfooter__list__togglebox__wrap{
  position: absolute;
  width: 100%;
  display: none;
}

.Newfooter__list__togglebox{
  display: flex;
  padding: 13px;
  border: 1px solid #fff;
  border-radius: 4px;
  flex-direction: column;
  gap: 12px;
  position: relative;
  z-index: 1;
  background: #b27365;
}

.Newfooter__list__togglebox__item{
  color: #fff;
  line-height: 1.5;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  font-weight: 300;
}

.Newfooter__list li{
  position: relative;
}

.newsFv__wrap {
  height: 40vh;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
}

.newsFv__container {
}

.newsFv__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  text-align: center;
  line-height: 1.4;
  padding: 0 min(15px, calc(15 / var(--base-size) * 100vw))
    min(5px, calc(5 / var(--base-size) * 100vw))
    min(15px, calc(15 / var(--base-size) * 100vw));
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  position: relative;
  z-index: 0;
}

.newsFv__link::before {
  content: "";
  position: absolute;
  display: inline-block;
  bottom: 0;
  left: 10%;
  width: 0%;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0, 0.8, 0.2, 1);
  transition-delay: 0.75s;
}

.newsFv__link.active::before {
  width: 80%;
  transform: scaleX(1);
  transform-origin: left;
}

.newsFv__link:hover {
  color: #000;
}

.newsFv__link::after {
  background: #fff;
  border-radius: 50%;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: 0;
}

.newsFv__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}

.newsFv__link__inner {
  position: relative;
  z-index: 1;
}

.newsDetail__label {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  margin: min(20px, calc(20 / var(--base-size) * 100vw)) 0
    min(20px, calc(20 / var(--base-size) * 100vw)) 0;
  font-size: min(32px, calc(32 / var(--base-size) * 100vw));
}

.newsDetail__label strong {
  font-weight: 900;
}

.newsDetail__detail {
  color: #ffffff;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  letter-spacing: 0.1em;
}

.newsDetail__img {
  margin: min(40px, calc(40 / var(--base-size) * 100vw)) 0;
}

.footer {
  align-items: flex-start;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: space-between;
  margin: 0;
  padding: 0 min(200px, calc(200 / var(--base-size) * 100vw))
    min(60px, calc(60 / var(--base-size) * 100vw))
    min(60px, calc(60 / var(--base-size) * 100vw));
  position: relative;
  width: 100%;
  z-index: 0;
  max-width: 100%;
}

.footer.page {
  background-color: #1f2122;
}

.footer__wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.footer__logo {
  flex: none;
  height: auto;
  width: min(180px, calc(180 / var(--base-size) * 100vw));
  max-width: 100%;
}

.footer__left {
  display: flex;
  align-content: center;
  align-items: center;
  flex: 1;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 0;
  width: auto;
  max-width: 100%;
}

.footer__item {
  text-align: right;
}

.footer__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 500;
  height: auto;
  letter-spacing: normal;
  line-height: 1.2;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;

  margin: min(8px, calc(8 / var(--base-size) * 100vw));
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
  max-width: calc(100% - min(16px, calc(16 / var(--base-size) * 100vw)));
  position: relative;
}

.footer__link--last{
  letter-spacing: -0.03em;
}

.footer__link:hover {
  color: #000;
}

.footer__link:hover .footer__link__inner{
  transform: scale(0.9);
}

.footer__link--last{
  letter-spacing: -0.04em;
}

.footer__link::after {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: -1;
}

.footer__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}

.footer__link--last:hover::after {
  height: min(110px, calc(110 / var(--base-size) * 100vw));
  width: min(110px, calc(110 / var(--base-size) * 100vw));
}

.footer__copy {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(12px, calc(12 / var(--base-size) * 100vw));
  font-weight: 300;
  line-height: 1.4;
  max-width: 100%;
  justify-content: center;
}

.page {
  background-color: #1f2122;
}

.pageFv {
  padding: min(100px, calc(100 / var(--base-size) * 100vw)) 0
    min(60px, calc(60 / var(--base-size) * 100vw)) 0;
}

.newsFv {
  padding: min(100px, calc(100 / var(--base-size) * 100vw))
    min(80px, calc(80 / var(--base-size) * 100vw)) 0
    min(180px, calc(180 / var(--base-size) * 100vw));
}

.pageFv__wrap {
  display: flex;
  align-items: center;
  gap: min(80px, calc(80 / var(--base-size) * 100vw));
  /* overflow: hidden; */
  height: 52svh;
}

.pageFv__left {
  padding-left: min(160px, calc(160 / var(--base-size) * 100vw));
}

.pageFv__ttl {
  color: #ffffff;
  flex: none;
  font-family: "Montserrat", sans-serif;
  font-size: min(100px, calc(100 / var(--base-size) * 100vw));
  font-weight: 100;
  height: auto;
  letter-spacing: normal;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
  white-space: nowrap;
}

.newsFv__ttl {
  color: #ffffff;
  flex: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(48px, calc(48 / var(--base-size) * 100vw));
  font-weight: 100;
  height: auto;
  letter-spacing: normal;
  line-height: 1.4;
  margin: 0 0 min(10px, calc(10 / var(--base-size) * 100vw)) 0;
  padding: 0;
  text-align: left;
  width: 100%;
  justify-content: flex-start;
}

.pageFv__right {
  position: relative;
  width: calc(100% - min(80px, calc(80 / var(--base-size) * 100vw)));
  height: 100%;
}

.pageFv__img{
  position: relative;
  object-fit: cover;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.pageFv__img.pageFv__img--faq{
  object-position: left;
}

.pageFv__img--bg{
  position: absolute;
  z-index: 0;
  width: calc(100% + 10px);
  height: 100%;
  object-fit: cover;
  right: 0;
  top: 10px;
}

.pageFv__detail {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(20px, calc(20 / var(--base-size) * 100vw)) 0;
  padding: 0 0 0 min(15px, calc(15 / var(--base-size) * 100vw));
}

.newsFv__detail {
  color: #ffffff;
  flex: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-weight: 300;
  width: 100%;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(30px, calc(30 / var(--base-size) * 100vw)) 0;
  padding: 0 0 0 min(5px, calc(5 / var(--base-size) * 100vw));
}

.about__wrap {
  text-align: center;
  padding: min(120px, calc(120 / var(--base-size) * 100vw))
    min(160px, calc(160 / var(--base-size) * 100vw)) 0 min(160px, calc(160 / var(--base-size) * 100vw));
}

.about__ttl {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(32px, calc(32 / var(--base-size) * 100vw));
  font-weight: 200;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(20px, calc(20 / var(--base-size) * 100vw)) 0;
  max-width: 100%;
}

.about__label {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(20px, calc(20 / var(--base-size) * 100vw));
  font-weight: 200;
  line-height: 1.4;
  margin: 0 0 min(40px, calc(40 / var(--base-size) * 100vw)) 0;
  max-width: 100%;
}

.about__detail {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 2;
  max-width: 100%;
}

.about__img {
  height: min(520px, calc(520 / var(--base-size) * 100vw));
  margin: min(60px, calc(60 / var(--base-size) * 100vw)) 0
    min(40px, calc(40 / var(--base-size) * 100vw));
  width: 100%;
  object-fit: cover;
  object-position: center;
}

.notion__wrap {
  width: 90%;
  margin-left: auto;
  padding: min(180px, calc(180 / var(--base-size) * 100vw)) 0
    min(180px, calc(180 / var(--base-size) * 100vw))
    min(160px, calc(160 / var(--base-size) * 100vw));
}

.notion__row {
  padding: min(60px, calc(60 / var(--base-size) * 100vw));
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.notion__row--first {
  margin-top: min(60px, calc(60 / var(--base-size) * 100vw));
}

.notion__left {
  width: min(360px, calc(360 / var(--base-size) * 100vw));
  max-width: 100%;
}

.notion__label {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(55px, calc(55 / var(--base-size) * 100vw));
  font-weight: 100;
  height: auto;
  letter-spacing: normal;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}

.notion__sub {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(18px, calc(18 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 0 min(40px, calc(40 / var(--base-size) * 100vw)) 0;
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}

.notion__detail {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 300;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 2;
  margin: 0;
  padding: 0;
  text-align: justify;
  width: auto;
  max-width: 100%;
  justify-content: space-between;
}

.notion__right {
  width: calc(100% - min(360px, calc(360 / var(--base-size) * 100vw)));
  padding-left: min(24px, calc(24 / var(--base-size) * 100vw));
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}

.notion__img1 {
  width: 50%;
  position: relative;
}

.notion__img1,
.notion__img2,
.notion__img3,
.notion__img4{
  overflow: hidden;
}

/* .notion__img1::after,
.notion__img2::after,
.notion__img3::after,
.notion__img4::after {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: #1f2122;
  transition: 0.5s;
  transition-timing-function: ease-in-out;
  z-index: 2;
}
.notion__img1.active::after,
.notion__img2.active::after,
.notion__img3.active::after,
.notion__img4.active::after {
  height: 0;
} */

.notion__img1__inner {
  height: min(550px, calc(550 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: center;
}

.notion__img2 {
  width: calc(50% - min(20px, calc(20 / var(--base-size) * 100vw)));
  position: relative;
  margin: 0 0 min(40px, calc(40 / var(--base-size) * 100vw))
    min(20px, calc(20 / var(--base-size) * 100vw));
}

.notion__img2__inner {
  height: min(400px, calc(400 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: center;
}

.notion__img1,
.notion__img2 {
  padding-left: 12px;
  padding-bottom: 12px;
}

.notion__img3,
.notion__img4 {
  position: relative;
  width: 100%;
  padding-right: 12px;
  padding-bottom: 12px;
}

.notion__img3__inner,
.notion__img4__inner {
  height: min(600px, calc(600 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: center;
}

.notion__left--second {
  order: 2;
}

.notion__right--second {
  order: 1;
  padding-left: 0;
  padding-right: min(60px, calc(60 / var(--base-size) * 100vw));
}

.productList__wrap {
  width: 100%;
  margin: 0 auto;
  padding: min(60px, calc(60 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw))
    min(120px, calc(120 / var(--base-size) * 100vw))
    min(160px, calc(160 / var(--base-size) * 100vw));
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.productList__item {
  width: 25%;
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
}

.productDetail {
  padding-top: min(100px, calc(100 / var(--base-size) * 100vw));
}

.productDetail__ttl {
  height: 30svh;
  padding: 0 min(80px, calc(80 / var(--base-size) * 100vw)) 0
    min(160px, calc(160 / var(--base-size) * 100vw));
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(80px, calc(80 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.productDetail__wrap {
  margin-left: auto;
  padding: 0 min(160px, calc(160 / var(--base-size) * 100vw)) 0 min(160px, calc(160 / var(--base-size) * 100vw));
}

.productDetail__info {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.productDetail__info__img {
  height: min(480px, calc(480 / var(--base-size) * 100vw));
  margin: 0 0 min(40px, calc(40 / var(--base-size) * 100vw)) 0;
  width: 47%;
  object-fit: cover;
  object-position: center;
}

.productDetail__info__img--chain{
  object-position: bottom;
}

.productDetail__info__text {
  padding: min(24px, calc(24 / var(--base-size) * 100vw)) 0 0
    min(60px, calc(60 / var(--base-size) * 100vw));
  width: 45%;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.7;
}

.productDetail__info__under{
  display: flex;
  gap: min(30px, calc(30 / var(--base-size) * 100vw));
  text-align: left;
  margin: 48px 0px 0px ;
}

.productDetail__bottom{
  color: #FFFFFF;
    flex: none;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 0.1em;
    line-height: 1.7;
    padding: 0px 0px 0px 0px;
    text-align: justify;
    width: auto;
    max-width: 100%;
    justify-content: space-between;
}

.productDetail__info__under--bottom{
  margin: 36px 0 0;
}

.MewproductDetail__bottom{
  margin-top: min(40px, calc(40 / var(--base-size) * 100vw));
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.MewproductDetail__bottom__item{
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  font-weight: 300;
  color: #fff;
  line-height: 2;
}

.productDetail__info__link {
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  display: inline-block;
  font-weight: 300;
  line-height: 1.4;
  padding:0;
  text-align: center;
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  max-width: 100%;
  position: relative;
}

.productDetail__info__link::before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 20%;
  width: 0%;
  height: min(1px, calc(1 / var(--base-size) * 100vw));
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.4s cubic-bezier(0, 0.8, 0.2, 1);
  transition-delay: 0.75s;
}

.productDetail__info__link.active::before {
  width: 60%;
  transform: scaleX(1);
  transform-origin: left;
}

.productDetail__info__link:hover {
  color: #000;
}

.productDetail__info__link::after {
  background: #fff;
  border-radius: 50%;
  flex: none;
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  max-width: 100%;
  transition: 0.3s;
  display: inline-block;
  z-index: 0;
}

.productDetail__info__link:hover::after {
  transform: translate(-50%, -50%) scale(1, 1);
}

.productDetail__info__link__inner{
  position: relative;
  z-index: 1;
}

.contact__button__item--pdetail{
  height: min(80px, calc(80 / var(--base-size) * 100vw));
  width: min(80px, calc(80 / var(--base-size) * 100vw));
  padding: 0 min(15px, calc(15 / var(--base-size) * 100vw));
}

.contact__button__item--pdetail .contact__button__item__txt{
  font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  line-height: 1.2;
}

.productDetail__gallery {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: min(80px, calc(80 / var(--base-size) * 100vw)) min(40px, calc(40 / var(--base-size) * 100vw));
  padding-top: min(120px, calc(120 / var(--base-size) * 100vw));
}

.productDetail__gallery__imgWrap {
  width: calc(33% - min(23.5px, calc(23.5 / var(--base-size) * 100vw)));
}

.productDetail__gallery__img {
  height: min(580px, calc(580 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: 50% 65%;
}

.newsList__wrap {
  padding: 0 min(60px, calc(60 / var(--base-size) * 100vw)) 0
    min(160px, calc(160 / var(--base-size) * 100vw));
  width: 90%;
  margin-left: auto;
}

.newsList__list {
  padding: min(10px, calc(10 / var(--base-size) * 100vw));
}

.newsList__item {
  margin-bottom: min(10px, calc(10 / var(--base-size) * 100vw));
}

.newsList__item__link {
  color: #fff;
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
  display: block;
}

.newsList__line {
  display: block;
  background: #ffffff;
  height: 1px;
  margin: min(20px, calc(20 / var(--base-size) * 100vw)) 0 0;
  max-width: 100%;
}

.newsList__item__date {
  display: block;
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
  margin-bottom: min(10px, calc(10 / var(--base-size) * 100vw));
}

.newsList__item__title {
  display: block;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
}

.newsList__more {
  display: none;
}

.newsList__more.active {
  display: block;
  animation: fadeInUp 0.6s ease forwards;
}

.sp-hum {
  display: none;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(min(20px, calc(20 / var(--base-size) * 100vw)));
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.newsList__moreBtn {
  padding: min(20px, calc(20 / var(--base-size) * 100vw));
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-family: "Montserrat", sans-serif;
  cursor: pointer;
}

.hum {
  display: none;
}

.loading{
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100svh;
  z-index: 15;
  overflow: hidden  ;
    transition: height 1s ease 0.5s;
}

.loading.active{
  height: 0;
}

.loading__filter{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100svh;
  z-index: 0;

}

.ctabutton{
  position: relative;
  display: block;
  transition: opacity 0.3s, visibility 0.3s;
  width: 80px;
  height: 80px;
  position: fixed;
  right: 50px;
  bottom: 50px;
  z-index: 9;
}

.ctabutton__item--hover{
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  opacity: 0;
}

/* .ctabutton:hover{
  transition-duration: 400ms;
  transition-timing-function: cubic-bezier(0, 0.8, 0.2, 1);
}

.ctabutton:hover .ctabutton__item{
  opacity: 0;
}

.ctabutton:hover .ctabutton__item--hover{
  opacity: 1;
} */


/* 2つの画像を重ねる */
.ctabutton__item {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .3s ease; /* 保険で入れておくがほぼ不要 */
}

/* ホバー用画像は最初は見えない */
.ctabutton__item--hover {
  opacity: 0;
}

/* 画像をマスクする擬似要素（丸が広がる部分） */
.ctabutton::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: url("../img/ctabutton_hover.webp") center/cover no-repeat;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: 
    width 400ms cubic-bezier(0, 0.8, 0.2, 1),
    height 400ms cubic-bezier(0, 0.8, 0.2, 1);
  z-index: 3;
}

/* hoverしたら丸が広がって hover画像で覆い隠す */
.ctabutton:hover::after {
  width: 100%;
  height: 100%;
}

/* hover画像は丸の中で見せるため常に表示 */
.ctabutton__item--hover {
  z-index: 2;
}


.ctabutton.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}


.loading__logo{
  width: 260px;
  height: auto;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.loading__deco{
  height: 100%;
  width: 100%;
  transform: scale(1, 1);
  transition-timing-function: cubic-bezier(0 , 0.55, 0.2, 1 );
  width: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  background-image: url('../img/loading.webp');
  background-size: cover;
  background-position: center;
}

.notion__imgonbg{
  position: relative;
  z-index: 2;
}

.notion__imgonbg__item{
  position: absolute;
  object-fit: cover;
  width: 100%;
  height: 100%;
  right: 12px;
  top: 12px;
  z-index: 0;
}

.notion__img3 .notion__imgonbg__item,.notion__img4 .notion__imgonbg__item{
  right: auto;
  left: 12px;
}

.notion__img__inner__bg{
  position: relative;
  z-index: 1;
}

.TopWhat__sp{
  display: none;
}

.sp-item{
  display: none;
}

.faq{
  padding: min(120px, calc(120 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw)) 0 min(160px, calc(160 / var(--base-size) * 100vw));
}

.faq__inner{
  display: flex;
  flex-direction: column;
}

.faq__item{
  padding: min(30px, calc(30 / var(--base-size) * 100vw)) 0;
  border-top: 1px solid #fff;
}

.faq__inner .faq__item:last-child{
  border-bottom: 1px solid #fff;
}

.faq__item__ttl{
  color: #fff;
  font-size: min(18px, calc(18 / var(--base-size) * 100vw));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  margin-bottom:  min(20px, calc(20 / var(--base-size) * 100vw));
  line-height: 1.4;
}

.faq__item__ttl{
  color: #fff;
  font-size: min(16px, calc(16 / var(--base-size) * 100vw));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.4;
}

.sitemap{
  padding: min(120px, calc(120 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw));
}

.sitemap__inner{
  display: flex;
  flex-direction: column;
}

.sitemap__list{
  font-size: min(18px, calc(18 / var(--base-size) * 100vw));
  padding: min(40px, calc(40 / var(--base-size) * 100vw)) 0;
  border-bottom: 1px solid #fff;
  color: #fff;
}

.sitemap__list a{
  color: #fff;
}

.sitemap__list__item--bold{
  font-weight: 600;
}

.sitemap__list__in{
  margin-top: min(24px, calc(24 / var(--base-size) * 100vw));
  display: flex;
  flex-direction: column;
  gap: min(18px, calc(18 / var(--base-size) * 100vw));
}

.sitemap__list__in__item{
  font-size: min(14px, calc(14 / var(--base-size) * 100vw));
}

.news{
  padding: 0 min(60px, calc(60 / var(--base-size) * 100vw)) min(160px, calc(160 / var(--base-size) * 100vw)) min(60px, calc(60 / var(--base-size) * 100vw));
}

/* feature */

.feature__fv{
  display: flex;
  height: 85svh;
  max-height: 600px;
}

.feature__fv__item{
  width: 50%;
  height: 100%;
  max-height: 100%;
}

.feature__fv__item img{
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.feature__ttl{
  color: #ffffff;
  flex: none;
  font-family: "Montserrat", sans-serif;
  font-size: min(100px, calc(100 / var(--base-size) * 100vw));
  font-weight: 100;
  height: auto;
  letter-spacing: normal;
  line-height: 1.4;
  margin: 0;
  margin-top: min(80px, calc(80 / var(--base-size) * 100vw));
  padding: 0;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
  white-space: nowrap;
  padding-left: min(160px, calc(160 / var(--base-size) * 100vw));
}

.feature__content{
  display: flex;
  flex-direction: column;
  padding: 0 min(160px, calc(160 / var(--base-size) * 100vw)) 0 min(160px, calc(160 / var(--base-size) * 100vw));
  padding-bottom: min(160px, calc(160 / var(--base-size) * 100vw));
}

.feature__box{
  width: 100%;
  padding-top: min(100px, calc(100 / var(--base-size) * 100vw));
}

.feature__box__ttl{
  text-align: right;
  font-family: "Montserrat", sans-serif;
  font-size: min(80px, calc(80 / var(--base-size) * 100vw));
  font-weight: 100;
  line-height: 1.4;
}

.feature__box__ttl--reverse{
  text-align: left;
}

.feature__box__flex{
  display: flex;
  width: 100%;
  margin-top: min(80px, calc(80 / var(--base-size) * 100vw));
  gap: 10px;
}

.feature__box__flex__left{
  width: 40%;
  position: relative;
}

.feature__box__flex__left__inner{
  height: min(580px, calc(580 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: center;
}

.feature__box__flex__right{
  width: 60%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.feature__box__flex__right__ttl{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  text-align: right;
  color: #fff;
  line-height: 1.8;
  font-size: min(24px, calc(24 / var(--base-size) * 100vw));
}

.feature__box__flex__right__ttl--reverse{
  text-align: left;
}

.feature__box__flex__right__bottom{
  display: flex;
  align-items: flex-end;
  gap: min(70px, calc(70 / var(--base-size) * 100vw));
}

.feature__box__flex__right__img{
  position: relative;
  padding-top: min(70px, calc(70 / var(--base-size) * 100vw));
  width: 38%;
}

.feature__box__flex__right__img__inner{
  width: 100%;
  height: min(350px, calc(350 / var(--base-size) * 100vw));
  object-fit: cover;
  object-position: center;
}

.feature__box__flex__right__info{
  width: 62%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: -webkit-fill-available;
}

.feature__box__flex__right__info__txt{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  color: #fff;
  line-height: 1.8;
  font-size: min(18px, calc(18 / var(--base-size) * 100vw));
}

.feature__box__flex__right__info__button{
  display: flex;
  justify-content: flex-end;
}

.feature__box__flex__right__info__button--reverse{
  justify-content: left;
}

.feature__box__flex__left{
  overflow: hidden;
}

.feature__box__flex__left::after{
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: #1f2122;
  transition: 0.5s;
  transition-timing-function: ease-in-out;
  z-index: 2;
}

.feature__box__flex__left.active::after{
  height: 0;
}

.feature__box__flex__right__img{
  overflow: hidden;
}

.feature__box__flex__right__img::after{
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: #1f2122;
  transition: 0.5s;
  transition-timing-function: ease-in-out;
  z-index: 2;
}

.feature__box__flex__right__img.active::after{
  height: 0;
}

.feature__onlysp{
  display: none;
}



.pc-only{
  display: inline-block;
}

.sp-only{
  display: none;
}

.NewtopProduct__sp{
  display: none;
}

@media screen and (max-width: 769px) {
  :root {
    --base-size: 769;
  }

  .Newfooter__inner{
    flex-direction: column;
    gap: calc(36 / var(--base-size) * 100vw);
  }

  .Newfooter__list{

  }

  .header {
    padding: 0 0 0 calc(20 / var(--base-size) * 100vw);
  }
  .header__nav {
    display: none;
  }

  .fv__img {
    display: flex !important;
    align-items: center;
    justify-content: center;
  }

  .fv__img__inner {
    height: 55.5svh;
  }

  .topNews {
    padding: calc(20 / var(--base-size) * 100vw)
      calc(30 / var(--base-size) * 100vw) calc(20 / var(--base-size) * 100vw);
  }

  .concept {
    padding: 0;
    margin-bottom: calc(120 / var(--base-size) * 100vw);
    margin-bottom: calc(80 / var(--base-size) * 100vw);
  }

  .concept__wrap {
    display: flex;
    flex-wrap: wrap;
    padding-left: calc(60 / var(--base-size) * 100vw);
    gap: 100px;
  }

  .concept__left__label{
    margin-bottom: 12px;
  }

  .concept__right {
    margin: 0 0 0 auto;
    width: 88%;
    order: 1;
    padding: 0;
    padding-right: 10px;
    padding-bottom: 10px;
    margin-bottom: calc(30 / var(--base-size) * 100vw);
    overflow: hidden;
    height: auto;
    aspect-ratio: 1/1;
  }

  .concept__right__img {
    object-fit: cover;
    object-position: center;
  }

  .concept__left {
    width: 100%;
    order: 2;
    padding: 0;
    padding: 0 calc(30 / var(--base-size) * 100vw);
  }

  .concept__left__detail {
    line-height: 1.38em;
  }

  .topProduct__line {
    margin-bottom: calc(10 / var(--base-size) * 100vw);
  }

  .topProduct__ttl {
    font-size: calc(64 / var(--base-size) * 100vw);
  }

  .topProduct__middle {
    padding: 0;
  }

  .topVideo {
    margin: calc(130 / var(--base-size) * 100vw) 0
      calc(60 / var(--base-size) * 100vw);
    height: calc(250 / var(--base-size) * 100vw);
    width: 100%;
    overflow: hidden;
    position: relative;
  }

  .topVideo__iframe {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 150%;
    max-width: 150%;
    margin: 0;
  }

  .gallery__wrap {
    padding: 0;
  }

  .contact__wrap {
    padding: 0 calc(30 / var(--base-size) * 100vw);
    margin-top: calc(72 / var(--base-size) * 100vw) 0;
    padding-bottom: calc(72 / var(--base-size) * 100vw);
  }

  .contact__ttl {
    font-size: calc(64 / var(--base-size) * 100vw);
    line-height: 1.2;
  }
  .contact__detail {
    margin-bottom: calc(72 / var(--base-size) * 100vw);
  }
  .footer {
    padding: calc(83 / var(--base-size) * 100vw) 0 0;
  }
  .footer__wrap {
    flex-wrap: wrap;
  }

  .footer__left {
    width: 100%;
  }

  .footer__right {
    width: 100%;
    margin-top: calc(32 / var(--base-size) * 100vw);
  }

  .footer__list {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
  }

  .footer__copy {
    text-align: center;
    margin-top: calc(80 / var(--base-size) * 100vw);
  }

  .header__logo {
    width: calc(130 / var(--base-size) * 100vw);
  }

  .topNews__line {
    margin: calc(10 / var(--base-size) * 100vw) 0;
  }
  .topNews__date {
    font-size: calc(12 / var(--base-size) * 100vw);
    margin-bottom: calc(5 / var(--base-size) * 100vw);
  }

  .topNews__detail {
    width: 100%;
    margin: 0;
    letter-spacing: 0.12em;
  }
  .concept {
    margin-top: calc(60 / var(--base-size) * 100vw);
  }
  .topProduct__top {
    padding: 0;
    margin-bottom: calc(38 / var(--base-size) * 100vw);
  }

  .topProduct__catch {
    font-size: calc(14 / var(--base-size) * 100vw);
    margin: 0;
  }

  .topProduct__list {
    width: 100%;
  }

  .topProduct__item {
    display: block;
    width: 100vw;
    padding: calc(25 / var(--base-size) * 100vw)
      calc(33 / var(--base-size) * 100vw);
  }

  .topProduct__item__img__wrap {
    height: calc(310 / var(--base-size) * 100vw);
    width: calc(100vw - calc(66 / var(--base-size) * 100vw));
  }

  .productList__item__img__wrap {
    width: 100%;
    height: calc(180 / var(--base-size) * 100vw);
  }

  .topProduct__item__tags {
    margin-top: calc(14 / var(--base-size) * 100vw);
  }

  .topProduct__item__name {
    margin-bottom: calc(7 / var(--base-size) * 100vw);
  }

  .sp-hum {
    display: block;
    margin: calc(8 / var(--base-size) * 100vw);
    text-align: center;
    padding: calc(20 / var(--base-size) * 100vw);
  }
  .sp-hum__line {
    display: block;
    background: #ffffff;
    height: calc(1 / var(--base-size) * 100vw);
    margin: 0 0 calc(10 / var(--base-size) * 100vw) 0;
    transform-origin: center left;
    width: calc(45 / var(--base-size) * 100vw);
    max-width: 100%;
  }

  .sp-hum__menu {
    color: #ffffff;
    font-family: "Montserrat", sans-serif;
    font-size: calc(14 / var(--base-size) * 100vw);
    font-weight: 500;
    height: auto;
    letter-spacing: 0.1em;
    line-height: 1.4;
    margin: 0;
    text-align: center;
    width: auto;
    max-width: calc(100% - calc(3 / var(--base-size) * 100vw));
  }

  .hum__menu--lang{
    display: flex;
    align-items: center;
  }

  .topVideo {
    width: 100%;
    margin-top: calc(90 / var(--base-size) * 100vw);
    margin-bottom: calc(40 / var(--base-size) * 100vw);
    height: calc(315 / var(--base-size) * 100vw);
  }

  .Toppopup__left__txt{
    margin-top: min(25px, calc(25 / var(--base-size) * 100vw));
  }

  .gallery {
    margin: calc(44 / var(--base-size) * 100vw) 0
      calc(86 / var(--base-size) * 100vw);
  }
  .gallery__30 {
    width: 40%;
  }

  .gallery__70 {
    width: 60%;
  }

  .gallery__img {
    height: calc(322 / var(--base-size) * 100vw);
  }
  .contact__line {
    margin-bottom: calc(10 / var(--base-size) * 100vw);
  }

  .pageFv {
    padding: calc(100 / var(--base-size) * 100vw) 0 0
      calc(30 / var(--base-size) * 100vw);
  }

  .pageFv__left {
    padding: 0;
    width: 100%;
  }

  .pageFv__wrap {
    flex-wrap: wrap;
  }

  .pageFv__ttl {
    font-size: calc(48 / var(--base-size) * 100vw);
  }
  .pageFv__detail {
    padding: 0;
    font-size: calc(14 / var(--base-size) * 100vw);
  }

  .pageFv__right {
    width: 100%;
  }

  .pageFv__wrap {
    height: auto;
    gap: 0;
  }

  .about__wrap {
    padding: calc(60 / var(--base-size) * 100vw)
      calc(30 / var(--base-size) * 100vw) calc(90 / var(--base-size) * 100vw)
      calc(30 / var(--base-size) * 100vw);
    text-align: left;
  }

  .about__ttl {
    font-size: calc(16 / var(--base-size) * 100vw);
    margin: 0 0 calc(10 / var(--base-size) * 100vw) 0;
    text-align: left;
    max-width: 100%;
    justify-content: flex-start;
    letter-spacing: 0.2em;
  }

  .about__label {
    font-size: calc(17 / var(--base-size) * 100vw);
    margin: 0 0 calc(30 / var(--base-size) * 100vw) 0;
  }

  .about__img {
    height: calc(360 / var(--base-size) * 100vw);
    margin: calc(30 / var(--base-size) * 100vw) 0;
  }

  .notion__wrap {
    padding: 0 0 calc(170 / var(--base-size) * 100vw);
    margin-top: min(80px, calc(80 / var(--base-size) * 100vw));
    width: 92%;
  }

  .notion__row {
    flex-wrap: wrap;
    padding: 0;
  }

  .notion__right {
    order: 1;
    width: 100%;
    padding: 0;
  }

  .notion__left {
    order: 2;
    width: 100%;
  }

  .pageFv__img {
    height: 35.6vh;
    object-fit: cover;
    object-position: center;
  }

  .about__detail {
    line-height: 1.8em;
  }
  .notion__img1 {
    height: 60vh;
  }

  .notion__img2 {
    height: 40vh;
  }
  .notion__row--first {
    margin-top: calc(67 / var(--base-size) * 100vw);
  }
  .notion__label {
    font-size: calc(36 / var(--base-size) * 100vw);
  }
  .notion__left {
    margin-top: calc(30 / var(--base-size) * 100vw);
    padding-right: 8vw;
  }
  .notion__sub {
    font-size: calc(13 / var(--base-size) * 100vw);
  }
  .notion__detail {
    line-height: 1.4em;
  }
  .notion__right {
    margin-top: calc(60 / var(--base-size) * 100vw);
  }
  .notion__right--first {
    margin-top: 0;
  }
  .notion__img3,
  .notion__img4 {
    height: 56vh;
  }

  .productList {
    margin-bottom: calc(70 / var(--base-size) * 100vw);
  }

  .productList__wrap {
    padding: calc(10 / var(--base-size) * 100vw);
    padding-top: calc(50 / var(--base-size) * 100vw);
    gap: calc(40 / var(--base-size) * 100vw) 0;
    width: 100%;
  }
  .productList__item {
    width: 50%;
    padding: calc(10 / var(--base-size) * 100vw);
  }
  .productDetail {
    padding: calc(100 / var(--base-size) * 100vw) 0 0 0;
  }

  .productDetail__ttl {
    padding: 0 0 0 calc(30 / var(--base-size) * 100vw);
    font-size: calc(48 / var(--base-size) * 100vw);
    height: auto;
  }
  .productDetail__wrap {
    padding: 0;
  }
  .productDetail__info {
    flex-wrap: wrap;
    margin-bottom: calc(60 / var(--base-size) * 100vw);
  }
  .productDetail__wrap {
    width: 100%;
    padding: calc(30 / var(--base-size) * 100vw);
  }
  .productDetail__info__text {
    width: 100%;
    padding: 0;
  }
  .productDetail__gallery__imgWrap {
    width: calc(50% - min(5px, calc(5 / var(--base-size) * 100vw)));
    margin: 0;
  }

  .productDetail__gallery__img {
    height: calc(250 / var(--base-size) * 100vw);
    object-position: 50% 66%;
  }

  .newsList {
    padding-bottom: calc(90 / var(--base-size) * 100vw);
  }

  .newsList__wrap {
    padding: 0;
    width: 100%;
  }

  .hum {
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
    height: 100%;
    width: calc(100% - calc(20 / var(--base-size) * 100vw));
    background: #b27365;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(calc(20 / var(--base-size) * 100vw));
    transition: all 0.3s ease;
  }

  .hum.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(calc(20 / var(--base-size) * 100vw));
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes fadeOutDown {
    from {
      opacity: 1;
      transform: translateY(0);
    }
    to {
      opacity: 0;
      transform: translateY(calc(20 / var(--base-size) * 100vw));
    }
  }

  .hum__wrap {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: calc(40 / var(--base-size) * 100vw);
    position: relative;
  }

  .hum__left {
    width: calc(150 / var(--base-size) * 100vw);
    max-width: calc(100% - calc(56 / var(--base-size) * 100vw));
    margin: calc(28 / var(--base-size) * 100vw);
    position: absolute;
    left: 0;
    top: calc(-10 / var(--base-size) * 100vw);
  }

  .hum__close {
    align-content: flex-end;
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    text-align: center;
    margin: calc(8 / var(--base-size) * 100vw);
    padding: calc(20 / var(--base-size) * 100vw);
    max-width: calc(100% - calc(16 / var(--base-size) * 100vw));
  }

  .hum__close__line1 {
    background: #ffffff;
    flex: none;
    height: calc(1 / var(--base-size) * 100vw);
    margin: 0 0 calc(10 / var(--base-size) * 100vw) 0;
    transform: rotate(14deg);
    transform-origin: center left;
    width: calc(45 / var(--base-size) * 100vw);
    max-width: 100%;
  }

  .hum__close__line2 {
    background: #ffffff;
    flex: none;
    height: calc(1 / var(--base-size) * 100vw);
    margin: 0 0 calc(10 / var(--base-size) * 100vw) 0;
    transform: rotate(-14deg);
    transform-origin: center left;
    width: calc(45 / var(--base-size) * 100vw);
    max-width: 100%;
  }

  .hum__close__menu {
    text-align: center;
    width: 100%;
    font-size: calc(14 / var(--base-size) * 100vw);
    font-weight: 500;
  }

  .hum__right {
    width: 100%;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100vh;
  }

  .hum__link {
    display:flex;
    margin: calc(8 / var(--base-size) * 100vw);
    padding: calc(10 / var(--base-size) * 100vw) calc(20 / var(--base-size) * 100vw);
    max-width: calc(100% - calc(16 / var(--base-size) * 100vw));
    color: #ffffff;
    font-family: "Montserrat", sans-serif;
    font-size: calc(16 / var(--base-size) * 100vw);
    font-weight: 500;
    letter-spacing: normal;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
  }

  .hum__link--store{
    background-color: #fff;
    align-items: center;
    gap: 6px;
    color: #000;
  }

  .hum__link--store::before{
    content: "";
    width: 18px;
    height: 18px;
    background: url(../img/shop-cartbk.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
  }

  .hum__link--langjp{
    position: relative;
    padding-right: 0;
  }

  .hum__link--langjp::after{
    content: "";
    position: absolute;
    height: 50%;
    width: 1px;
    background-color: #fff;
    right: -8.5px;
    top: calc(50% - 25%);
  }

  .hum__link--langen{
    padding-left: 0;
  }

  .newsFv {
    padding: calc(100 / var(--base-size) * 100vw)
      calc(30 / var(--base-size) * 100vw) 0 calc(30 / var(--base-size) * 100vw);
  }

  .newsFv__wrap {
    height: auto;
    display: block;
  }

  .newsFv__ttl {
    font-size: calc(32 / var(--base-size) * 100vw);
    font-weight: 300;
  }
  .newsFv__detail {
    font-size: calc(14 / var(--base-size) * 100vw);
  }

  .newsDetail__wrap {
    width: 100%;
    padding: calc(30 / var(--base-size) * 100vw)
      calc(40 / var(--base-size) * 100vw);
    margin: auto;
  }

  .newsDetail__content {
    padding: calc(30 / var(--base-size) * 100vw) 0 0;
  }
  .newsDetail__label {
    font-size: calc(22.4 / var(--base-size) * 100vw);
    margin: calc(20 / var(--base-size) * 100vw) 0;
  }
  .productDetail__info{
    padding-right: 0;
  }
  .productDetail__bottom{
    padding: calc(30 / var(--base-size) * 100vw) calc(30 / var(--base-size) * 100vw) calc(60 / var(--base-size) * 100vw);
    text-align: center;
  }
  .productDetail__info__under--bottom{
    text-align: center;
  }

  .footer__link__inner{
    transform: scale(1) !important;
  }

  .footer__link::after{
    display: none !important;
  }

  .footer__link{
    color: #ffffff !important;
  }
  .notion__img3__inner, .notion__img4__inner{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .contact__link:hover{
    color: #fff !important;
  }
  .contact__link::after{
    display: none !important;
  }

  .Newfooter__list{
    flex-wrap: wrap;
    justify-content: center;
    gap: min(32px, calc(32 / var(--base-size) * 100vw)) min(48px, calc(48 / var(--base-size) * 100vw));
  }

  .contact__button{
    flex-direction: column;
  }

  .NewtopProduct__inner{
    flex-direction: column-reverse;
  }

  .NewtopProduct__right,.NewtopProduct__left{
    width: 100%;
    height: auto;
  }

  .NewtopProduct__left{
    height: min(280px, calc(280 / var(--base-size) * 100vw));
    text-align: right;
    padding: 0;
  }

  .NewtopProduct__img{
    width: calc(100% - 10px);
  }

  .NewtopProduct__img--bg{
    width: calc(100% - 10px);
    left: 0;
  }

  .topoao{
    padding: min(25px, calc(25 / var(--base-size) * 100vw)) 0;
  }

  .NewtopProduct__sp{
    width: 100%;
    display: block;
    text-align: right;
    margin-top: 54px;
  }

  .popup__inner{
    flex-direction: column;
    gap: 35px;
    padding:min(30px, calc(30 / var(--base-size) * 100vw)) min(60px, calc(60 / var(--base-size) * 100vw));
  }

  .popup__wrap{
    padding: 0 0 0 min(60px, calc(60 / var(--base-size) * 100vw));
  }

  .Toppopup__left,.Toppopup__right{
    width: 100%;
  }

  .Toppopup__right{
    padding: 0;
  }

  .TopWhat__inner{
    flex-direction: column-reverse;
    padding: 0px min(30px, calc(30 / var(--base-size) * 100vw));
    gap: 24px;
  }

  .TopWhat__ttl{
    text-align: center;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 20px;
  }

  .TopWhat__ttl::after{
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 5px 0 5px;
    border-color: #FFFFFF transparent transparent transparent;
    transform: rotate(180deg);
    transition: 0.3s;
  }

  .TopWhat__ttl.is-active::after{
    transform: rotate(0);
    transition: 0.3s;
  }

  .TopWhat__right,.TopWhat__left{
    width: 100%;
    height: auto;
  }

  .TopWhat__right{
    padding: 0 min(12px, calc(12 / var(--base-size) * 100vw));
  }

  .TopWhat__sp{
    width: 100%;
    display: block;
    text-align: center;
    margin-top: 30px;
  }

  .concept__link{
    padding: 0 min(10px, calc(10 / var(--base-size) * 100vw)) min(5px, calc(5 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw));
  }

  .TopWhat__txt{
    display: none;
    margin-top: 48px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-size: min(15px, calc(15 / var(--base-size) * 100vw));
  }

  .Newfooter__copy{
    margin-top: min(100px, calc(100 / var(--base-size) * 100vw));
  }

  .sp-item{
    display: flex;
    align-items: center;
  }

  .sp-item__cart{
    width: 32px;
    height: 32px;
  }

  .faq{
    padding: calc(60 / var(--base-size) * 100vw) calc(30 / var(--base-size) * 100vw) calc(90 / var(--base-size) * 100vw) calc(30 / var(--base-size) * 100vw);
  }

  .news{
    padding-left: min(30px, calc(30 / var(--base-size) * 100vw));
    padding-right: min(30px, calc(30 / var(--base-size) * 100vw));
    padding-bottom: min(90px, calc(90 / var(--base-size) * 100vw));
  }

  .sitemap{
    padding-left: min(30px, calc(30 / var(--base-size) * 100vw));
    padding-right: min(30px, calc(30 / var(--base-size) * 100vw));
    padding-bottom: min(90px, calc(90 / var(--base-size) * 100vw));
  }

  .TopWhat__txt {
      /* animation関連のプロパティをnoneまたはinitialで上書き */
      animation: none !important;
      /* animate.css特有の設定もリセット */
      animation-duration: 0s !important;
      animation-delay: 0s !important;
      animation-iteration-count: 1 !important;
      /* visibilityも必要に応じて調整 */
      visibility: visible !important; 
  }

  .feature__ttl{
    font-size: calc(64 / var(--base-size) * 100vw);
    padding:0 min(30px, calc(30 / var(--base-size) * 100vw));
  }

  .feature__content{
    padding: 0 min(30px, calc(30 / var(--base-size) * 100vw)) 0 min(30px, calc(30 / var(--base-size) * 100vw));
    padding-bottom: min(80px, calc(80 / var(--base-size) * 100vw));
  }

  .feature__box{
    padding-top: min(60px, calc(60 / var(--base-size) * 100vw));
  }

  .feature__box__flex{
    flex-direction: column-reverse;
    margin-top: min(50px, calc(50 / var(--base-size) * 100vw));
    gap: min(20px, calc(20 / var(--base-size) * 100vw));
  }

  .feature__box__flex--reverse{
    flex-direction: column;
  }

  .feature__box__flex__right{
    width: 100%;
    gap: min(20px, calc(20 / var(--base-size) * 100vw));
  }

  .feature__box__flex__right__info__button{
    margin-top: min(20px, calc(20 / var(--base-size) * 100vw));
  }

  .feature__box__flex__left{
    width: 100%;
  }

  .feature__box__flex__right__bottom{
    width: 100%;
  }

  .feature__box__flex__right__info{
    width: 100%;
    height: auto;
  }

  .feature__box__flex__left{
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }

  .feature__box__flex__left img{
    width: 55%;
  }

  .feature__box__flex__left img.feature__onlysp{
    width: 45%;
    height: 70%;
  }

  .feature__box__ttl,.feature__box__flex__right__ttl{
    text-align: left;
  }

  .feature__box__ttl{
    font-size: calc(48 / var(--base-size) * 100vw);
  }

  .feature__fv{
    height: 40svh;
    max-height: 500px;
  }

  .productDetail__gallery{
    gap: min(10px, calc(10 / var(--base-size) * 100vw));
    padding-top: 0;
  }

  .feature__onlysp{
    display: inline;
  }

  .pd-gallery-modal {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }

  .pd-gallery-modal::after{
    content: "×";
    font-size: 70px;
    line-height: 1;
    font-weight: 100;
    position: absolute;
    color: #fff;
    top: 0;
    right: 10px;
  }

  .pd-gallery-modal.is-show {
    display: flex;
  }

  .pd-gallery-modal__inner {
    width: 85vw;
    max-width: 100vw;
  }

  .pd-gallery-modal__img {
    display: block;
    width: 100%;
    height: auto;
  }

  .productDetail__info__img {
    width: 100%;
    margin: 0 auto min(40px, calc(40 / var(--base-size) * 100vw)) auto;
    max-width: 440px;
  }


  .pc-only{
    display: none;
  }

  .sp-only{
    display: block;
  }
}


@media screen and (max-width: 540px) {

  :root{
    --base-size: 375;
  }

  .concept__left__label {
    font-size: calc(14 / var(--base-size) * 100vw);
  }

  .Newfooter__list{
    gap: min(8px, calc(8 / var(--base-size) * 100vw)) min(48px, calc(48 / var(--base-size) * 100vw));
    justify-content: flex-start;
  }

  .Newfooter__list li{
    width: calc(50% - min(24px, calc(24 / var(--base-size) * 100vw)));
  }

  .Newfooter__list__item{
    font-weight: 400;
  }

  .Newfooter__list--ja .Newfooter__list__item{
    font-weight: 300;
  }

  .Newfooter__list--ja{
    flex-direction: column;
    gap: 10px;
  }

  .Newfooter__list--ja li{
    width: 100%;
  }

  .Newfooter__list__togglebox__wrap{
    width: 86%;
  }

  .Newfooter__copy{
    margin-top: 100px;
    text-align: center;
  }

  .Newfooter{
    padding: min(42px, calc(42 / var(--base-size) * 100vw)) min(630px, calc(30 / var(--base-size) * 100vw));
  }

  .concept__wrap{
    padding: 0 calc(30 / var(--base-size) * 100vw);
    gap: 60px;
  }

  .concept__right{
    width: 100%;
  }

  .concept__left{
    padding: 0;
  }

  .topAbout__ttl,.topProduct__ttl,.topProduct__ttl,.contact__ttl,.contact__ttl{
    font-size: min(60px, calc(60 / var(--base-size) * 100vw));
  }

  .topoao__ttl{
    font-size: min(48px, calc(48 / var(--base-size) * 100vw));
  }

  .topoao__txt{
    font-size: min(13px, calc(13 / var(--base-size) * 100vw));
  }

  .topoao__inner{
    padding-bottom: 0;
  }

  .topoao{
    padding: min(50px, calc(50 / var(--base-size) * 100vw)) 0;
  }

  .topAbout__ttl{
    margin-bottom: min(30px, calc(30 / var(--base-size) * 100vw));
  }

  .NewtopProduct{
    margin-top: min(80px, calc(80 / var(--base-size) * 100vw));
  }

  .NewtopProduct__inner{
    padding: 0 calc(30 / var(--base-size) * 100vw);
  }

  .NewtopNews__top{
    padding: 0px min(30px, calc(30 / var(--base-size) * 100vw));
  }

  .NewtopNews__bottom{
    width: 100%;
    padding: 0;
    align-items: center;
    flex-direction: column;
    display: flex;
  }

  .NewtopNews__bottom__item{
    padding: min(10px, calc(10 / var(--base-size) * 100vw)) 0;
  }

  .concept__link--NewtopNews{
    margin-left: 0;
  }

  .popup__inner{
    padding: min(30px, calc(30 / var(--base-size) * 100vw)) min(10px, calc(10 / var(--base-size) * 100vw));
  }

  .popup__wrap{
    padding: 0 min(10px, calc(10 / var(--base-size) * 100vw));
  }

  .contact__detail {
    font-size: calc(14 / var(--base-size) * 100vw);
    margin-bottom: calc(40 / var(--base-size) * 100vw);
  }

  .TopWhat{
    margin: min(60px, calc(60 / var(--base-size) * 100vw)) 0;
  }

  .fvScroll__wrap{
    padding-bottom: 0;
  }

  .ctabutton{
    width: 75px;
    height: 75px;
    right: 10px;
    bottom: 10px;
  }

  .Newfooter__list__item--toggle{
    padding-right: min(30px, calc(30 / var(--base-size) * 100vw));
  }

  .feature__box__flex__left__inner{
    height: min(300px, calc(300 / var(--base-size) * 100vw));
  }

  .feature__ttl{
    font-size: calc(48 / var(--base-size) * 100vw);
    margin-top: min(50px, calc(50 / var(--base-size) * 100vw));
  }

  .feature__box__ttl{
    font-size: calc(32 / var(--base-size) * 100vw);
  }

  .feature__box__flex__right__ttl{
    font-size: min(16px, calc(20 / var(--base-size) * 100vw));
  }

  .feature__box__flex__right__info__txt{
    font-size: min(14px, calc(16 / var(--base-size) * 100vw));
  }

  .feature__box__flex{
    margin-top: min(20px, calc(20 / var(--base-size) * 100vw));
  }

  .Toppopup__right{
    display: none;
  }

  .productDetail__info__img {
    height: calc(270 / var(--base-size) * 100vw);
  }

}

/* en専用　css */

.sp-item__cart,.hum__link--store,.ctabutton,.feature__box__flex__right__info__button,.productDetail__info__under a:first-child{
  display: none;
}