* {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
}
body.lang-jp .jp, body.lang-en .en {
  display: block;
}
body.lang-jp .en, body.lang-en .jp {
  display: none;
}
@media only screen and (max-width: 600px) {
  body {
    padding-top: max(8.046875vw, 89.61px);
  }
}
body.is-fixed {
  overflow: hidden;
}

img {
  max-width: 100%;
}

@media only screen and (max-width: 600px) {
  .only-pc {
    display: none !important;
  }
}

@media only screen and (min-width: 601px) {
  .only-sp {
    display: none !important;
  }
}

.site-header {
  position: relative;
  z-index: 1000;
}
@media only screen and (max-width: 600px) {
  .site-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 100;
    background: #fff;
  }
}

.top_message {
  width: 100%;
  background-color: #231815;
  color: #fff;
  font-size: min(0.9375vw, 12px);
  height: min(2.890625vw, 37px);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 600px) {
  .top_message {
    font-size: max(0.9375vw, 10.44px);
    height: max(2.890625vw, 32.19px);
  }
}

.top_logo {
  width: 100%;
  height: min(3.984375vw, 51px);
  margin-top: min(1.484375vw, 19px);
  padding-bottom: min(2.96875vw, 38px);
  text-align: center;
  border-bottom: solid 1.4px #231815;
  position: relative;
}
@media only screen and (max-width: 600px) {
  .top_logo {
    height: max(2.34375vw, 26.1px);
    margin-top: max(1.09375vw, 12.18px);
    padding-bottom: max(1.71875vw, 19.14px);
    border-bottom: unset;
  }
  .top_logo .lang_button {
    display: none;
  }
}
.top_logo img,
.top_logo a {
  display: inline-block;
  width: auto;
  height: 100%;
}

.lang_button {
  position: absolute;
  right: min(6.25vw, 80px);
  top: min(1.171875vw, 15px);
  width: min(6.875vw, 88px);
  height: min(3.125vw, 40px);
  display: flex;
  justify-content: space-between;
  font-weight: 400;
}
@media only screen and (max-width: 600px) {
  .lang_button {
    position: static;
    right: max(6.25vw, 69.6px);
    top: max(1.171875vw, 13.05px);
    width: 100%;
    height: max(4.21875vw, 46.98px);
    gap: max(0.546875vw, 6.09px);
    align-items: center;
    justify-content: flex-start;
    padding: 0 max(2.1875vw, 24.36px);
    border-bottom: 1.4px solid #231815;
    box-sizing: border-box;
  }
}

.lang_jp,
.lang_en {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: min(0.9375vw, 12px);
  width: min(3.125vw, 40px);
  line-height: min(3.125vw, 40px);
  border-radius: min(3.125vw, 40px);
  background-color: #C9CACA;
  color: #fff;
  cursor: pointer;
}
@media only screen and (max-width: 600px) {
  .lang_jp,
  .lang_en {
    font-size: max(0.9375vw, 10.44px);
    width: max(2.578125vw, 28.71px);
    height: max(2.578125vw, 28.71px);
    line-height: 1;
    border-radius: max(3.125vw, 34.8px);
  }
}
.lang_jp.active,
.lang_en.active {
  background-color: #231815;
}

.top_menu {
  width: min(60.15625vw, 770px);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(4.375vw, 56px);
  font-weight: 400;
}
@media only screen and (max-width: 600px) {
  .top_menu {
    display: none;
  }
}

.top_menu_item {
  max-width: min(6.09375vw, 78px);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media only screen and (max-width: 600px) {
  .top_menu_item {
    max-width: max(6.09375vw, 67.86px);
  }
}
.top_menu_item a {
  text-decoration: none;
  color: inherit;
}

.top_menu_item_hover.is-active .top_menu_item_head::after {
  opacity: 1;
}
.top_menu_item_hover.is-active .top_menu_sub {
  bottom: min(0vw, 0px);
  opacity: 1;
  visibility: visible;
}

.top_menu_item_head {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  padding-top: min(1.5625vw, 20px);
  padding-bottom: min(1.796875vw, 23px);
  background: none;
  border: none;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  outline: none;
  font-size: min(0.9375vw, 12px);
  line-height: min(0.78125vw, 10px);
  position: relative;
  z-index: 1;
}
.top_menu_item_head::after {
  content: "";
  position: absolute;
  margin-top: min(-0.078125vw, -1px);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #f2f2f2;
  width: calc(100% + min(2.34375vw, 30px));
  height: min(2.265625vw, 29px);
  border-radius: min(7.8125vw, 100px);
  z-index: -1;
  opacity: 0;
}
@media only screen and (max-width: 600px) {
  .top_menu_item_head {
    font-size: max(0.9375vw, 10.44px);
    line-height: max(0.78125vw, 8.7px);
  }
}
.top_menu_item_head.-link {
  transition: 0.3s ease-out;
  transition-property: opacity;
}
@media (hover: hover) {
  .top_menu_item_head.-link:hover {
    opacity: 0.7;
  }
}
@media (hover: none) {
  .top_menu_item_head.-link:active {
    opacity: 0.7;
  }
}

.top_menu_sub {
  border: 1px solid #000;
  background: #fff;
  padding: min(1.484375vw, 19px) min(1.09375vw, 14px);
  border-radius: min(1.640625vw, 21px);
  list-style: none;
  white-space: nowrap;
  position: absolute;
  bottom: min(-0.78125vw, -10px);
  left: min(-1.171875vw, -15px);
  transform: translateY(100%);
  min-width: min(11.71875vw, 150px);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-out;
  transition-property: opacity, bottom, visibility;
}
.top_menu_sub_link, .top_menu_sub_head {
  display: block;
  transition: 0.3s ease-out;
  transition-property: padding;
  position: relative;
}
.top_menu_sub_link::before, .top_menu_sub_head::before {
  content: "";
  width: min(0.78125vw, 10px);
  height: min(0.9375vw, 12px);
  background: url(../img/top-menu-arrow.svg) no-repeat top min(0.1171875vw, 1.5px) left/100% auto;
  position: absolute;
  left: min(-0.3125vw, -4px);
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: 0.3s ease-out;
  transition-property: left, opacity;
}
@media (hover: hover) {
  .top_menu_sub_link:hover, .top_menu_sub_head:hover {
    padding-left: min(1.09375vw, 14px);
    opacity: 0.7;
  }
  .top_menu_sub_link:hover::before, .top_menu_sub_head:hover::before {
    opacity: 1;
    left: 0;
  }
}
@media (hover: none) {
  .top_menu_sub_link:active, .top_menu_sub_head:active {
    padding-left: min(1.09375vw, 14px);
    opacity: 0.7;
  }
  .top_menu_sub_link:active::before, .top_menu_sub_head:active::before {
    opacity: 1;
    left: 0;
  }
}
.top_menu_sub_head {
  font-size: min(0.9375vw, 12px);
  line-height: min(0.78125vw, 10px);
  margin-bottom: min(1.875vw, 24px);
  display: block;
}
.top_menu_sub_list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: min(1.5625vw, 20px);
}
.top_menu_sub_item {
  font-size: min(0.859375vw, 11px);
  line-height: min(0.78125vw, 10px);
}

.fixed-header {
  position: fixed;
  display: flex;
  top: 0;
  width: 100%;
  background: #fff;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  pointer-events: none;
  height: min(7.265625vw, 93px);
}
@media only screen and (max-width: 600px) {
  .fixed-header {
    display: none;
    height: max(7.265625vw, 80.91px);
  }
}
.fixed-header .top_logo {
  width: auto;
  height: min(3.046875vw, 39px);
  border-bottom: unset;
  padding-left: min(6.328125vw, 81px);
}
.fixed-header .top_menu {
  margin: unset;
  margin: auto 0;
  padding-right: min(6.015625vw, 77px);
  padding-left: min(6.71875vw, 86px);
  justify-content: flex-start;
}
.fixed-header.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

@media only screen and (max-width: 600px) {
  .hamburger {
    display: block;
    width: max(1.875vw, 20.88px);
    height: max(1.40625vw, 15.66px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: absolute;
    left: max(2.1875vw, 24.36px);
    top: max(0.78125vw, 8.7px);
    cursor: pointer;
  }
  .hamburger.is-active span:nth-child(1) {
    position: relative;
    top: max(0.625vw, 6.96px);
    transform: translateY(50%) rotate(45deg);
  }
  .hamburger.is-active span:nth-child(2) {
    opacity: 0;
  }
  .hamburger.is-active span:nth-child(3) {
    position: relative;
    top: max(-0.625vw, -6.96px);
    transform: translateY(-50%) rotate(-45deg);
  }
  .hamburger span {
    display: block;
    height: 1px;
    background-color: #231815;
    width: 100%;
  }
}
.top-slider {
  width: 100%;
  height: min(48.125vw, 616px);
  overflow: hidden;
}
@media only screen and (max-width: 600px) {
  .top-slider {
    height: max(41.875vw, 466.32px);
  }
}
.top-slider .swiper-slide {
  position: relative;
}
.top-slider .swiper-slide video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slide1_bg {
  background-image: url(../img/top_slider1.png);
  background-position: center;
  background-size: cover;
  width: 100%;
}

.slide2_bg {
  background-image: url(../img/top_slider2.png);
  background-position: center;
  background-size: cover;
  width: 100%;
}

.swiper-button-next,
.swiper-button-prev {
  cursor: pointer;
  width: min(3.125vw, 40px) !important;
  height: min(3.125vw, 40px) !important;
  top: min(14.0625vw, 180px) !important;
  border-radius: 50%;
  position: absolute;
  z-index: 10;
  transition: 0.3s ease-out;
  transition-property: opacity;
}
@media (hover: hover) {
  .swiper-button-next:hover,
  .swiper-button-prev:hover {
    opacity: 0.7;
  }
}
@media (hover: none) {
  .swiper-button-next:active,
  .swiper-button-prev:active {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 600px) {
  .swiper-button-next,
  .swiper-button-prev {
    top: max(14.765625vw, 164.43px) !important;
    width: max(3.125vw, 34.8px) !important;
    height: max(3.125vw, 34.8px) !important;
  }
}
.swiper-button-next::after,
.swiper-button-prev::after {
  content: "";
  display: block;
  width: min(3.125vw, 40px);
  height: min(3.125vw, 40px);
  background: url("../img/arrow.svg") no-repeat center/100% auto;
  color: transparent !important;
  font-size: 0 !important;
  position: relative;
}
@media only screen and (max-width: 600px) {
  .swiper-button-next::after,
  .swiper-button-prev::after {
    width: max(3.125vw, 34.8px);
    height: max(3.125vw, 34.8px);
  }
}

.swiper-button-next {
  right: min(0.78125vw, 10px) !important;
}
@media only screen and (max-width: 600px) {
  .swiper-button-next {
    right: max(0.703125vw, 7.83px) !important;
  }
}

.swiper-button-prev {
  left: min(0.78125vw, 10px) !important;
}
@media only screen and (max-width: 600px) {
  .swiper-button-prev {
    left: max(0.703125vw, 7.83px) !important;
  }
}

@media only screen and (max-width: 600px) {
  .swiper-button-next::after {
    right: max(0.9375vw, 10.44px);
  }
}

.swiper-button-prev::after {
  transform: scaleX(-1);
}
@media only screen and (max-width: 600px) {
  .swiper-button-prev::after {
    left: max(0.9375vw, 10.44px);
  }
}

.copy_section {
  width: 100%;
  padding: min(7.03125vw, 90px) 0 min(3.515625vw, 45px);
}
@media only screen and (max-width: 600px) {
  .copy_section {
    padding: max(4.6875vw, 52.2px) 0;
  }
}

.main_copy {
  font-size: min(2.34375vw, 30px);
  line-height: 1em;
  text-align: center;
  margin-bottom: min(1.875vw, 24px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .main_copy {
    font-size: max(1.25vw, 13.92px);
    margin-bottom: max(2.5vw, 27.84px);
  }
}

.copy_explanation {
  font-size: min(1.71875vw, 22px);
  line-height: 1.5909090909;
  letter-spacing: 0.025em;
  text-align: center;
}
@media only screen and (max-width: 600px) {
  .copy_explanation {
    letter-spacing: 0.05em;
    font-size: max(0.9375vw, 10.44px);
    line-height: 1.875;
    margin: max(-0.390625vw, -4.35px) 0 max(-0.625vw, -6.96px);
  }
}

.product_section {
  padding: min(7.03125vw, 90px) min(6.25vw, 80px) min(11.71875vw, 150px);
}
@media only screen and (max-width: 600px) {
  .product_section {
    padding: max(4.6875vw, 52.2px) max(2.1875vw, 24.36px) max(9.765625vw, 108.75px);
  }
}

.product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.product_title {
  font-size: min(3.125vw, 40px);
  line-height: min(3.125vw, 40px);
  text-align: center;
  margin-bottom: min(4.765625vw, 61px);
}
@media only screen and (max-width: 600px) {
  .product_title {
    font-size: max(2.1875vw, 24.36px);
    line-height: 1em;
    margin-bottom: max(4.6875vw, 52.2px);
  }
}

.product-slider {
  max-width: min(87.5vw, 1120px);
  margin: 0 auto;
  display: none;
}
.product-slider.is-active {
  display: block;
}
@media only screen and (max-width: 600px) {
  .product-slider {
    max-width: max(87.5vw, 974.4px);
  }
}
.product-slider .swiper-slide {
  display: flex;
  flex-direction: column;
  height: auto;
}

.media-wrapper {
  position: relative;
  border-radius: min(0.78125vw, 10px);
  overflow: hidden;
  margin-bottom: min(1.5625vw, 20px);
  aspect-ratio: 1/1;
}
@media only screen and (max-width: 600px) {
  .media-wrapper {
    width: max(29.21875vw, 325.38px);
    height: max(29.21875vw, 325.38px);
    border-radius: max(0.78125vw, 8.7px);
    margin-bottom: max(2.5vw, 27.84px);
  }
}
.media-wrapper img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.best_seller_button {
  position: absolute;
  width: min(9.765625vw, 125px);
  height: min(3.125vw, 40px);
  padding: 0 min(1.40625vw, 18px);
  border-radius: min(1.5625vw, 20px);
  line-height: min(3.125vw, 40px);
  font-size: min(1.015625vw, 13px);
  top: min(1.640625vw, 21px);
  left: min(1.640625vw, 21px);
  border: solid 1.4px #231815;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  text-decoration: none;
  color: #231815;
  box-sizing: border-box;
}
@media only screen and (max-width: 600px) {
  .best_seller_button {
    width: max(9.765625vw, 108.75px);
    height: max(3.125vw, 34.8px);
    padding: 0 max(1.40625vw, 15.66px);
    border-radius: max(1.5625vw, 17.4px);
    line-height: max(3.125vw, 34.8px);
    font-size: max(1.015625vw, 11.31px);
    top: max(1.640625vw, 18.27px);
    left: max(1.640625vw, 18.27px);
  }
}

.img-hover {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.media-wrapper:hover .img-hover {
  opacity: 1;
}

.product_card_text {
  flex: 1 1 auto;
  padding-bottom: min(3.90625vw, 50px);
}
@media only screen and (max-width: 600px) {
  .product_card_text {
    padding-bottom: max(1.5625vw, 17.4px);
  }
}
.product_card_text p {
  font-size: min(1.09375vw, 14px);
  line-height: min(2.34375vw, 30px);
}
@media only screen and (max-width: 600px) {
  .product_card_text p {
    font-size: max(1.09375vw, 12.18px);
    line-height: max(1.953125vw, 21.75px);
  }
}
.product_card_text .product_card_title {
  font-size: min(1.71875vw, 22px);
  line-height: min(1.796875vw, 23px);
  margin-bottom: min(0.9375vw, 12px);
}
@media only screen and (max-width: 600px) {
  .product_card_text .product_card_title {
    font-size: max(1.953125vw, 21.75px);
    line-height: max(2.34375vw, 26.1px);
    margin-bottom: max(1.25vw, 13.92px);
  }
}
.product_card_text .product_card_text1 {
  color: #666666;
  line-height: min(0.9375vw, 12px);
  margin-bottom: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .product_card_text .product_card_text1 {
    font-size: max(1.09375vw, 12.18px);
    line-height: max(0.9375vw, 10.44px);
    margin-bottom: max(1.25vw, 13.92px);
  }
}
.product_card_text .product_card_text2 {
  line-height: 2.1428571429;
}
@media only screen and (max-width: 600px) {
  .product_card_text .product_card_text2 {
    line-height: 2.2857142857;
  }
}

.product_card_bottom {
  border: solid 1.5px #231815;
  border-radius: min(7.8125vw, 100px);
  padding: 0 min(1.5625vw, 20px);
  box-sizing: border-box;
  transition: 0.3s ease-out;
  transition-property: background, border-color;
}
@media only screen and (max-width: 600px) {
  .product_card_bottom {
    border: solid 1px #231815;
    padding: 0 max(1.5625vw, 17.4px);
  }
}
.product_card_bottom .product_card_bottom_button {
  display: flex;
  justify-content: space-between;
  white-space: nowrap;
  flex-wrap: wrap;
  align-items: center;
  text-decoration: none;
  color: inherit;
  min-height: min(2.890625vw, 37px);
  font-size: min(1.25vw, 16px);
  cursor: pointer;
}
@media only screen and (max-width: 600px) {
  .product_card_bottom .product_card_bottom_button {
    min-height: max(2.96875vw, 33.06px);
    font-size: max(1.09375vw, 12.18px);
  }
}

.product-1 .product_card_bottom:hover {
  background-color: #E3E935;
  border-color: #E3E935;
}

.product-2 .product_card_bottom:hover {
  background-color: #009CDE;
  border-color: #009CDE;
}

.product-3 .product_card_bottom:hover {
  background-color: #FFD700;
  border-color: #FFD700;
}

.product-4 .product_card_bottom:hover {
  background-color: #FC4C02;
  border-color: #FC4C02;
}

.product-5 .product_card_bottom:hover {
  background-color: #00AD50;
  border-color: #00AD50;
}

.product_nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(4.21875vw, 54px);
  margin-bottom: min(4.6875vw, 60px);
  padding: min(1.5625vw, 20px) 0;
}
@media only screen and (max-width: 600px) {
  .product_nav {
    gap: max(4.21875vw, 46.98px);
    margin-bottom: max(4.6875vw, 52.2px);
    padding: max(1.5625vw, 17.4px) 0;
  }
}
.product_nav_item {
  appearance: none;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  white-space: nowrap;
  text-transform: uppercase;
  font-size: min(1.09375vw, 14px);
  line-height: min(0.9765625vw, 12.5px);
  letter-spacing: 0.025em;
  font-weight: 100;
  color: #9fa0a0;
}
@media only screen and (max-width: 600px) {
  .product_nav_item {
    font-size: max(1.09375vw, 12.18px);
    line-height: max(0.9765625vw, 10.875px);
  }
}
.product_nav_item.is-active {
  color: #231815;
  pointer-events: none;
}

.section {
  width: 100%;
  padding: min(11.71875vw, 150px) min(6.25vw, 80px);
  box-sizing: border-box;
}
@media only screen and (min-width: 1300px) {
  .section {
    padding-right: 175px;
  }
}
@media only screen and (max-width: 600px) {
  .section {
    padding: max(3.90625vw, 43.5px) max(2.1875vw, 24.36px) max(6.25vw, 69.6px);
    height: unset;
  }
}
.section.-about {
  padding-bottom: min(7.8125vw, 100px);
  padding-top: min(7.1875vw, 92px);
}
@media only screen and (max-width: 600px) {
  .section.-about {
    padding-top: max(3.90625vw, 43.5px);
    padding-bottom: max(7.421875vw, 82.65px);
  }
}
.section.about {
  background-color: #009CDE;
}
.section.about_CBD {
  background-color: #E3E935;
}
.section.how_to_use {
  background-color: #00AD50;
}
.section.how_to_use .section_text > p {
  color: #fff;
}

.section_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: min(80.078125vw, 1025px);
  margin: 0;
  gap: min(1.875vw, 24px);
}
.section_wrapper.-reverse {
  flex-direction: row-reverse;
}
.section_wrapper.-center {
  align-items: center;
}
@media only screen and (max-width: 600px) {
  .section_wrapper {
    max-width: max(80.078125vw, 891.75px);
    gap: 0;
    display: block;
  }
}
@media only screen and (min-width: 1300px) {
  .section_wrapper {
    margin: 0 auto;
  }
}
.section_wrapper .thumb {
  border-radius: min(0.78125vw, 10px);
}
@media only screen and (max-width: 600px) {
  .section_wrapper .thumb {
    border-radius: max(0.78125vw, 8.7px);
  }
}

.thumb {
  position: relative;
  aspect-ratio: 455/569;
  width: 100%;
  max-width: min(35.546875vw, 455px);
  overflow: hidden;
  cursor: pointer;
}
@media only screen and (max-width: 600px) {
  .thumb {
    aspect-ratio: unset;
    max-width: max(32.03125vw, 356.7px);
    height: max(40.078125vw, 446.31px);
  }
}
.thumb img,
.thumb video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.3s ease;
}
.thumb video {
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.thumb.hovered video {
  opacity: 1;
}
.thumb.hovered img {
  opacity: 0;
}

.section_text {
  width: min(35.546875vw, 455px);
  position: relative;
}
@media only screen and (max-width: 600px) {
  .section_text {
    width: 100%;
    position: relative;
  }
}

.section_title {
  font-size: min(3.90625vw, 50px);
  line-height: 1.2;
  letter-spacing: 0.005em;
  font-weight: 100;
  margin: min(-0.625vw, -8px) 0 min(6.875vw, 88px);
}
@media only screen and (max-width: 600px) {
  .section_title {
    font-size: max(2.578125vw, 28.71px);
    line-height: 1.2121212121;
    margin: max(2.96875vw, 33.06px) 0 max(3.125vw, 34.8px);
  }
}

.section_explanation {
  font-size: min(0.9375vw, 12px);
  letter-spacing: 0.025em;
  line-height: 1.8333333333;
  text-align: justify;
}
@media only screen and (max-width: 600px) {
  .section_explanation {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: unset;
  }
}
.section_explanation.bold {
  font-weight: 700;
  font-size: min(1.796875vw, 23px);
  line-height: 1.4782608696;
  margin-bottom: min(3.90625vw, 50px);
}

.section_button {
  display: inline-flex;
  background-color: #fff;
  border-radius: min(7.8125vw, 100px);
  border: solid 1px #231815;
  padding: 0 min(1.171875vw, 15px);
  width: min(13.59375vw, 174px);
  height: min(3.125vw, 40px);
  box-sizing: border-box;
  text-decoration: none;
  color: inherit;
  align-items: center;
  margin-top: min(3.515625vw, 45px);
  gap: min(1.25vw, 16px);
  transition: 0.3s ease-out;
  transition-property: background;
}
@media only screen and (max-width: 600px) {
  .section_button {
    position: static;
    padding: 0 max(1.328125vw, 14.79px);
    min-width: max(13.59375vw, 151.38px);
    height: max(3.125vw, 34.8px);
    margin: max(3.515625vw, 39.15px) 0 0;
  }
}
@media (hover: hover) {
  .section_button:hover {
    background: #e6e6e6;
  }
}
@media (hover: none) {
  .section_button:active {
    background: #e6e6e6;
  }
}
.section_button p {
  font-size: min(1.09375vw, 14px);
  display: block;
}
@media only screen and (max-width: 600px) {
  .section_button p {
    font-size: max(1.09375vw, 12.18px);
    display: block;
  }
}

.arrow {
  display: inline-block;
  position: relative;
  width: 9.6px;
  height: 9.6px;
  margin-left: auto;
  top: 1px;
}
.arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #231815;
  transform: translateY(-50%);
}
.arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 5px;
  height: 5px;
  border-top: 1px solid #231815;
  border-right: 1px solid #231815;
  transform: translateY(-50%) rotate(45deg);
}

@media only screen and (max-width: 600px) {
  .about_CBD .section_wrapper {
    display: flex;
    flex-direction: column-reverse;
  }
}
footer {
  width: 100%;
  background-color: #6C756C;
  padding: min(7.03125vw, 90px) 0 min(3.515625vw, 45px);
}
@media only screen and (max-width: 600px) {
  footer {
    padding: max(3.90625vw, 43.5px) 0 max(2.734375vw, 30.45px);
  }
}
footer p {
  color: #fff;
}

.foot_top {
  height: min(15.78125vw, 202px);
  width: min(87.5vw, 1120px);
  margin: 0 auto min(7.03125vw, 90px);
  display: flex;
  box-sizing: border-box;
}
@media only screen and (max-width: 600px) {
  .foot_top {
    height: auto;
    width: 100%;
    margin: 0 auto max(7.96875vw, 88.74px);
    flex-direction: column-reverse;
  }
}

.foot_left {
  width: min(31.484375vw, 403px);
  visibility: hidden;
}
@media only screen and (max-width: 600px) {
  .foot_left {
    height: max(8.59375vw, 95.7px);
    padding-left: max(0.703125vw, 7.83px);
    width: 100%;
    box-sizing: border-box;
  }
}

.foot_right {
  padding-left: min(23.046875vw, 295px);
}
@media only screen and (max-width: 600px) {
  .foot_right {
    padding-left: max(0.703125vw, 7.83px);
  }
}

.foot_logo {
  text-align: center;
  max-width: min(23.90625vw, 306px);
  margin: 0 auto min(1.875vw, 24px);
}
@media only screen and (max-width: 600px) {
  .foot_logo {
    max-width: max(21.171875vw, 235.77px);
    margin-bottom: max(3.515625vw, 39.15px);
  }
}

.foot_sns {
  width: min(9.53125vw, 122px);
  margin: 0 auto min(4.6875vw, 60px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(2.34375vw, 30px);
}
@media only screen and (max-width: 600px) {
  .foot_sns {
    width: max(14.296875vw, 159.21px);
    height: max(2.34375vw, 26.1px);
    margin: 0 auto max(5.3125vw, 59.16px);
    justify-content: center;
    gap: max(3.28125vw, 36.54px);
  }
}
.foot_sns a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .foot_sns a {
    width: max(2.34375vw, 26.1px);
  }
}
.foot_sns img {
  height: 100%;
  width: auto;
  flex: 0 0 auto;
}

.foot_link {
  display: flex;
  justify-content: center;
  gap: min(0.625vw, 8px);
  margin: 0 auto min(5.15625vw, 66px);
  font-size: min(0.9375vw, 12px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .foot_link {
    display: none;
  }
}
.foot_link a {
  text-decoration: none;
  color: #fff;
}

.foot_link_sp {
  display: none;
}
@media only screen and (max-width: 600px) {
  .foot_link_sp {
    display: block;
    margin-bottom: max(4.296875vw, 47.85px);
  }
}

.copyright {
  text-align: center;
  font-size: min(1.328125vw, 17px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .copyright {
    font-size: max(1.328125vw, 14.79px);
  }
}

.bottom_logo {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: min(20.9375vw, 268px);
}
@media only screen and (max-width: 600px) {
  .bottom_logo {
    height: max(14.0625vw, 156.6px);
    padding: 0;
  }
}
.bottom_logo img {
  position: absolute;
  animation: slide-left 15s linear infinite;
  height: min(11.328125vw, 145px);
  max-width: 10000px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 600px) {
  .bottom_logo img {
    height: max(6.25vw, 69.6px);
    left: 100%;
    animation: slide-left 10s linear infinite;
  }
}

@keyframes slide-left {
  0% {
    left: 100%;
  }
  100% {
    left: -100%;
  }
}
@media only screen and (max-width: 600px) {
  .foot_link_sp1,
  .foot_link_sp2 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: max(30.15625vw, 335.82px);
    margin: 0 auto;
    font-size: max(1.09375vw, 12.18px);
    justify-content: center;
    gap: max(0.625vw, 6.96px);
  }
  .foot_link_sp1 {
    width: 100%;
    max-width: max(25.78125vw, 287.1px);
    margin-bottom: max(0.9375vw, 10.44px);
  }
}
@media only screen and (max-width: 600px) and (max-width: 600px) {
  .foot_link_sp1.second {
    font-size: max(0.9375vw, 10.44px);
  }
}
@media only screen and (max-width: 600px) {
  .foot_link_sp1 a,
  .foot_link_sp2 a {
    text-decoration: none;
    color: #fff;
  }
}
.about-page1,
.about-page2,
.about-page3 {
  height: auto;
}

.about-page1 {
  background-color: #E3E935;
  padding-left: min(3.90625vw, 50px);
  font-weight: 400;
}
@media only screen and (max-width: 600px) {
  .about-page1 {
    padding: max(1.5625vw, 17.4px) max(2.1875vw, 24.36px) max(7.65625vw, 85.26px);
  }
}
.about-page1 .section_wrapper {
  max-width: min(82.421875vw, 1055px);
}
@media only screen and (max-width: 600px) {
  .about-page1 .section_wrapper {
    max-width: max(82.421875vw, 917.85px);
  }
}

.about-page2 {
  font-weight: 400;
}

.about-page3 {
  background-color: #FC4C02;
  color: #fff;
  font-weight: 400;
}

.about-page1 p,
.about-page2 p,
.about-page3 p {
  text-align: initial;
}

.about-page1_img {
  max-width: min(40.3125vw, 516px);
  position: relative;
  top: min(1.328125vw, 17px);
  left: min(0.78125vw, 10px);
}
@media only screen and (max-width: 600px) {
  .about-page1_img {
    position: static;
    top: auto;
    left: auto;
    width: 100%;
    max-width: max(29.53125vw, 328.86px);
    margin: 0 auto;
  }
}
.about-page1_img img {
  width: 100%;
  height: auto;
}

.text_block {
  width: 100%;
  margin-bottom: 100px;
}

@media only screen and (max-width: 600px) {
  .about-page2 .section_wrapper {
    display: flex;
    flex-direction: column-reverse;
  }
  .about-page3_img {
    width: 100%;
    max-width: max(32.03125vw, 356.7px);
    margin-bottom: max(3.90625vw, 43.5px);
  }
}
.about-page_text_wrapper {
  font-feature-settings: "palt";
  flex: 0 0 auto;
  width: min(35.546875vw, 455px);
  display: flex;
  flex-direction: column;
  gap: min(7.1875vw, 92px);
}
@media only screen and (max-width: 600px) {
  .about-page_text_wrapper {
    width: 100%;
    gap: max(6.796875vw, 75.69px);
    margin-top: max(3.59375vw, 40.02px);
  }
}
.about-page_text_block {
  display: flex;
  flex-direction: column;
  gap: min(3.28125vw, 42px);
}
@media only screen and (max-width: 600px) {
  .about-page_text_block {
    gap: max(3.125vw, 34.8px);
  }
}
.about-page_text_block_catch {
  font-size: min(1.875vw, 24px);
  line-height: 1.4166666667;
  letter-spacing: 0;
}
@media only screen and (max-width: 600px) {
  .about-page_text_block_catch {
    font-size: max(1.5625vw, 17.4px);
    line-height: 1.5;
  }
}
.about-page_text_block_desc {
  font-size: min(0.9375vw, 12px);
  line-height: 1.8333333333;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .about-page_text_block_desc {
    font-size: max(0.9375vw, 10.44px);
  }
}

.top_nav {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: max(2.1875vw, 24.36px);
  background: #fff;
  display: none;
  z-index: 10001;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-100%);
  transition: 0.3s ease-out;
  transition-property: opacity, visibility, transform;
}
.top_nav.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}
@media only screen and (max-width: 600px) {
  .top_nav {
    display: block;
  }
}
.top_nav_container {
  overflow: scroll;
  max-height: calc(100vh - max(9.453125vw, 105.27px));
}
.top_nav_close {
  position: absolute;
  appearance: none;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  cursor: pointer;
  width: max(0.859375vw, 9.57px);
  height: max(0.859375vw, 9.57px);
  top: max(2.265625vw, 25.23px);
  left: max(2.34375vw, 26.1px);
  z-index: 100;
}
.top_nav_close::before, .top_nav_close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(1.25vw, 13.92px);
  height: 1.4px;
  background: #231815;
}
.top_nav_close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.top_nav_close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.top_nav_head {
  padding-left: max(2.265625vw, 25.23px);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: max(5.15625vw, 57.42px);
  border-bottom: 1.4px solid #231815;
}
.top_nav_logo {
  aspect-ratio: 75/11;
  width: 100%;
  max-width: max(15.9375vw, 177.48px);
}
.top_nav_list {
  list-style: none;
  display: flex;
  flex-direction: column;
}
.top_nav_list a {
  text-decoration: none;
  color: inherit;
  transition: 0.3s ease-out;
  transition-property: opacity;
}
.top_nav_list a:hover {
  opacity: 0.7;
}
.top_nav_item {
  font-size: max(1.25vw, 13.92px);
}
.top_nav_item_ttl {
  appearance: none;
  background: none;
  border: none;
  margin: 0;
  font: inherit;
  cursor: pointer;
  outline: none;
  min-height: max(5.15625vw, 57.42px);
  border-bottom: 1.4px solid #231815;
  display: flex;
  align-items: center;
  padding: 0 max(2.1875vw, 24.36px);
  box-sizing: border-box;
  width: 100%;
  font-size: max(1.09375vw, 12.18px);
  letter-spacing: 0.025em;
  position: relative;
}
.top_nav_item_ttl.is-active .top_nav_arrow::after {
  transform: translate(-50%, -50%);
}
.top_nav_item_ttl .top_nav_arrow {
  position: absolute;
  right: max(2.8125vw, 31.32px);
  top: 50%;
  transform: translateY(-50%);
  width: max(2.578125vw, 28.71px);
  height: max(2.578125vw, 28.71px);
  border: 1px solid #000000;
  border-radius: 50%;
}
.top_nav_item_ttl .top_nav_arrow::before, .top_nav_item_ttl .top_nav_arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 1px;
  width: max(0.78125vw, 8.7px);
  background: #000000;
  transition: 0.3s ease-out;
  transition-property: transform;
}
.top_nav_item_ttl .top_nav_arrow::before {
  transform: translate(-50%, -50%);
}
.top_nav_item_ttl .top_nav_arrow::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.top_nav_sub {
  display: none;
}
.top_nav_sub_block_ttl {
  min-height: max(5.15625vw, 57.42px);
  border-bottom: 1.4px solid #231815;
  display: flex;
  align-items: center;
  padding: 0 max(2.1875vw, 24.36px);
  box-sizing: border-box;
  color: #999999;
  font-size: max(1.09375vw, 12.18px);
  letter-spacing: 0.025em;
}
.top_nav_sub_link {
  border-bottom: 1.4px solid #231815;
  min-height: max(5.15625vw, 57.42px);
  display: flex;
  align-items: center;
  padding: 0 max(2.1875vw, 24.36px);
  box-sizing: border-box;
  color: #231815;
  height: 100%;
  font-size: max(1.09375vw, 12.18px);
  letter-spacing: 0.025em;
}
.top_nav_sub_link.disabled {
  color: #ff0000;
}

@media (max-width: 600px) {
  .information_section {
    padding-top: minfunction(95);
    width: 100%;
  }
  .information_title {
    font-size: minfunction(40);
    letter-spacing: 0.025em;
    text-align: center;
    line-height: minfunction(43);
  }
}
.follow_button {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  background: #333333;
  width: min(8.203125vw, 105px);
  height: min(30.078125vw, 385px);
  color: #fff;
  border-radius: min(1.171875vw, 15px) 0 0 min(1.171875vw, 15px);
  padding-top: min(1.875vw, 24px);
  box-sizing: border-box;
  transition: 0.3s ease-out;
  transition-property: opacity, visibility;
}
@media only screen and (max-width: 600px) {
  .follow_button {
    top: auto;
    bottom: max(2.1875vw, 24.36px);
    left: max(2.1875vw, 24.36px);
    right: max(2.1875vw, 24.36px);
    flex-direction: row;
    justify-content: center;
    width: auto;
    height: max(3.90625vw, 43.5px);
    border-radius: min(1.171875vw, 15px);
    padding-top: 0;
    transform: none;
  }
}
.follow_button.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.follow_button_close {
  flex: 0 0 auto;
  appearance: none;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: min(1.875vw, 24px);
  height: min(1.875vw, 24px);
  position: relative;
}
@media only screen and (max-width: 600px) {
  .follow_button_close {
    width: max(1.875vw, 20.88px);
    height: max(1.875vw, 20.88px);
    position: absolute;
    left: max(1.25vw, 13.92px);
    top: 50%;
    transform: translateY(-50%);
  }
}
.follow_button_close::before, .follow_button_close::after {
  content: "";
  width: min(2.578125vw, 33px);
  background: #fff;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media only screen and (max-width: 600px) {
  .follow_button_close::before, .follow_button_close::after {
    width: max(1.875vw, 20.88px);
  }
}
.follow_button_close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.follow_button_link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #fff;
  text-decoration: none;
  width: min(4.375vw, 56px);
  height: min(20.390625vw, 261px);
  margin-top: min(2.8125vw, 36px);
  flex: 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .follow_button_link {
    flex-direction: row;
    justify-content: flex-start;
    width: auto;
    height: auto;
    margin-top: 0;
  }
}
.follow_button_icon {
  width: 100%;
  height: min(3.984375vw, 51px);
  background: url(../img/btn_icon.svg) no-repeat center center/contain;
  position: relative;
  left: min(-0.15625vw, -2px);
}
@media only screen and (max-width: 600px) {
  .follow_button_icon {
    height: auto;
    width: max(3.984375vw, 44.37px);
  }
}
.follow_button_txt {
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  transform: rotate(90deg);
  font-weight: 100;
  font-size: min(1.953125vw, 25px);
  transform-origin: center;
  height: min(14.296875vw, 183px);
  width: 100%;
  position: relative;
  left: min(0.234375vw, 3px);
}
@media only screen and (max-width: 600px) {
  .follow_button_txt {
    transform: none;
    height: auto;
    font-size: max(1.25vw, 13.92px);
  }
}

.awards_section {
  padding: min(7.03125vw, 90px) 0 min(23.4375vw, 300px);
}
@media only screen and (max-width: 600px) {
  .awards_section {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.awards_top, .awards_main {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .awards_top, .awards_main {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
@media only screen and (min-width: 1300px) {
  .awards_main {
    padding-right: 175px;
  }
}
.awards_inner {
  max-width: min(80vw, 1024px);
  margin: 0 auto;
}
.awards_inner.-left {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .awards_inner.-left {
    margin: 0 auto;
  }
}
.awards_title {
  text-align: center;
  margin-bottom: min(3.515625vw, 45px);
  font-size: min(3.125vw, 40px);
  line-height: 1;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .awards_title {
    font-size: max(2.1875vw, 24.36px);
    line-height: max(1.953125vw, 21.75px);
    margin-bottom: max(4.6875vw, 52.2px);
  }
}
.awards_explanation {
  text-align: center;
  margin-bottom: min(11.328125vw, 145px);
  font-size: min(1.71875vw, 22px);
  line-height: 1.5909090909;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .awards_explanation {
    font-size: max(0.9375vw, 10.44px);
  }
}
.awards_year_nav {
  margin-bottom: min(5.859375vw, 75px);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: min(1.5625vw, 20px) 0;
  gap: min(4.21875vw, 54px);
}
@media only screen and (max-width: 600px) {
  .awards_year_nav {
    gap: max(4.21875vw, 46.98px);
    margin-bottom: max(4.6875vw, 52.2px);
    padding: max(1.5625vw, 17.4px) 0;
  }
}
.awards_year_nav_item {
  text-decoration: none;
  font-size: min(1.09375vw, 14px);
  line-height: 0.8928571429;
  letter-spacing: 0.025em;
  color: #9fa0a0;
}
@media only screen and (max-width: 600px) {
  .awards_year_nav_item {
    font-size: max(1.09375vw, 12.18px);
  }
}
.awards_year_nav_item.is-active {
  color: #231815;
}
.awards_year_container {
  display: flex;
  flex-direction: column;
  gap: min(11.71875vw, 150px);
}
@media only screen and (max-width: 600px) {
  .awards_year_container {
    gap: max(4.6875vw, 52.2px);
  }
}
.awards_year_block {
  display: flex;
  justify-content: space-between;
  gap: min(1.875vw, 24px);
}
@media only screen and (max-width: 600px) {
  .awards_year_block {
    flex-direction: column;
    gap: max(1.875vw, 20.88px);
  }
}
.awards_year_title {
  font-size: min(3.90625vw, 50px);
  line-height: 1;
  letter-spacing: 0;
  margin-bottom: min(7.1875vw, 92px);
}
@media only screen and (max-width: 600px) {
  .awards_year_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(3.90625vw, 43.5px);
  }
}
.awards_year_list {
  display: flex;
  flex-direction: column;
  gap: min(2.734375vw, 35px);
}
@media only screen and (max-width: 600px) {
  .awards_year_list {
    gap: max(1.953125vw, 21.75px);
  }
}
.awards_year_item {
  letter-spacing: 0.025em;
}
.awards_year_item .text {
  font-size: min(0.9375vw, 12px);
  line-height: 2.5;
}
@media only screen and (max-width: 600px) {
  .awards_year_item .text {
    font-size: max(0.9375vw, 10.44px);
  }
}
.awards_year_item .title {
  font-size: min(1.5625vw, 20px);
  line-height: 1.5;
  margin-bottom: min(0.78125vw, 10px);
}
@media only screen and (max-width: 600px) {
  .awards_year_item .title {
    font-size: max(1.25vw, 13.92px);
    margin-bottom: max(0.78125vw, 8.7px);
  }
}
.awards_year_content {
  flex: 1 1 auto;
  max-width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .awards_year_content {
    max-width: 100%;
  }
}
.awards_img_wrap {
  flex: 0 0 auto;
  width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .awards_img_wrap {
    width: 100%;
  }
}
.awards_img_wrap .awards-swiper {
  position: relative;
}
.awards_img_wrap .awards-swiper .swiper-button-prev,
.awards_img_wrap .awards-swiper .swiper-button-next {
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}
.awards_img_wrap .awards-swiper .swiper-button-prev {
  left: min(1.5625vw, 20px) !important;
}
@media only screen and (max-width: 600px) {
  .awards_img_wrap .awards-swiper .swiper-button-prev {
    left: max(0.78125vw, 8.7px) !important;
  }
}
.awards_img_wrap .awards-swiper .swiper-button-next {
  right: min(1.5625vw, 20px) !important;
}
@media only screen and (max-width: 600px) {
  .awards_img_wrap .awards-swiper .swiper-button-next {
    right: max(0.78125vw, 8.7px) !important;
  }
}
.awards_img_wrap .awards-swiper .swiper-slide {
  aspect-ratio: 1/1;
}
.awards_img_wrap .awards-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.team {
  /*&_inner {
    max-width: maxfunction(1024);
    margin: 0 auto;
  }*/
}
.team_section {
  padding: min(7.03125vw, 90px) 0 min(23.4375vw, 300px);
}
@media only screen and (max-width: 600px) {
  .team_section {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.team_top {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .team_top {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
.team_title {
  text-align: center;
  margin-bottom: min(3.515625vw, 45px);
  font-size: min(3.125vw, 40px);
  line-height: 1;
  letter-spacing: 0.025em;
  font-weight: bold;
}
@media only screen and (max-width: 600px) {
  .team_title {
    font-size: max(2.1875vw, 24.36px);
    line-height: max(1.953125vw, 21.75px);
    margin-bottom: max(4.6875vw, 52.2px);
  }
}
.team_explanation {
  text-align: center;
  font-size: min(1.71875vw, 22px);
  line-height: 1.5909090909;
  letter-spacing: 0.025em;
  font-weight: 500;
}
.team_explanation span.jp {
  margin-bottom: min(8.75vw, 112px);
}
.team_explanation span.en {
  margin-bottom: min(5.859375vw, 75px);
}
@media only screen and (max-width: 600px) {
  .team_explanation {
    font-size: max(0.9375vw, 10.44px);
  }
  .team_explanation span.jp {
    margin-bottom: max(7.03125vw, 78.3px);
  }
  .team_explanation span.en {
    margin-bottom: max(5.46875vw, 60.9px);
  }
}
.team_main {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
  padding-right: min(13.671875vw, 175px);
}
@media only screen and (max-width: 600px) {
  .team_main {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
.team_nav {
  margin-bottom: min(5.859375vw, 75px);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: min(1.5625vw, 20px) 0;
  gap: min(4.21875vw, 54px);
  font-weight: 500;
}
@media only screen and (max-width: 600px) {
  .team_nav {
    gap: max(4.21875vw, 46.98px);
    margin-bottom: max(4.6875vw, 52.2px);
    padding: max(1.5625vw, 17.4px) 0;
  }
}
.team_nav_item {
  background: none;
  border: none;
  cursor: pointer;
  font-size: min(1.09375vw, 14px);
  line-height: 0.8928571429;
  letter-spacing: 0.025em;
  color: #9fa0a0;
}
@media only screen and (max-width: 600px) {
  .team_nav_item {
    font-size: max(1.09375vw, 12.18px);
  }
}
.team_nav_item.is-active {
  color: #231815;
}
.team_container {
  display: flex;
  flex-direction: column;
  gap: min(11.71875vw, 150px);
}
@media only screen and (max-width: 600px) {
  .team_container {
    gap: max(4.6875vw, 52.2px);
  }
}
.team_container.second {
  gap: 0;
}
.team_block {
  display: flex;
  gap: 0;
  justify-content: space-between;
}
@media only screen and (max-width: 600px) {
  .team_block {
    flex-direction: column-reverse;
    gap: max(2.734375vw, 30.45px) !important;
  }
}
.team_content {
  width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .team_content {
    width: 100%;
  }
}
.team_section_title {
  font-size: min(3.90625vw, 50px);
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  margin-bottom: min(7.1875vw, 92px);
}
@media only screen and (max-width: 600px) {
  .team_section_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(2.734375vw, 30.45px);
  }
}
.team_text {
  font-size: min(0.9375vw, 12px);
  line-height: 2.9000077334;
  letter-spacing: -0.01em;
  font-weight: 500;
}
.team_text .jp {
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .team_text {
    font-size: max(0.9375vw, 10.44px);
  }
}
.team_signature_area {
  margin-top: min(6.171875vw, 79px);
  letter-spacing: 0;
  font-weight: 500;
}
.team_signature_area .team_position p.jp {
  margin-top: min(7.890625vw, 101px);
}
@media only screen and (max-width: 600px) {
  .team_signature_area {
    margin-top: max(3.125vw, 34.8px);
  }
}
.team_position {
  font-size: min(0.9375vw, 12px);
  line-height: 2.5;
  letter-spacing: 0.025em;
  margin-bottom: 0;
}
@media only screen and (max-width: 600px) {
  .team_position {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(0.15625vw, 1.74px);
  }
}
.team_name_en_for_jp {
  font-size: min(1.015625vw, 13px);
  line-height: 1.5;
  margin-bottom: min(0.390625vw, 5px);
  letter-spacing: 0.025em;
}
.team_name_en_for_jp.jp {
  margin-top: min(0.390625vw, 5px);
}
@media only screen and (max-width: 600px) {
  .team_name_en_for_jp {
    font-size: max(1.09375vw, 12.18px);
    margin-bottom: max(0.390625vw, 4.35px);
  }
}
.team_name {
  font-size: min(1.5625vw, 20px);
  line-height: 1.5;
  margin-bottom: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .team_name {
    font-size: max(1.25vw, 13.92px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.team_email {
  font-size: min(0.9375vw, 12px);
  line-height: 2.5;
  letter-spacing: 0.025em;
  margin-bottom: min(1.5625vw, 20px);
  color: #666;
}
@media only screen and (max-width: 600px) {
  .team_email {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
.team_signature {
  margin-top: min(1.171875vw, 15px);
}
.team_signature img {
  width: min(22.38609375vw, 286.542px);
  display: block;
  height: auto;
  margin-left: auto;
  margin-right: min(-1.71875vw, -22px);
}
body.lang-en .team_signature img {
  margin-top: min(3.28125vw, 42px);
}
body.lang-jp .team_signature img {
  margin-top: min(-2.65625vw, -34px);
}
@media only screen and (max-width: 600px) {
  .team_signature img {
    width: max(14.0625vw, 156.6px);
    margin-right: 0;
  }
}
.team_img_container {
  width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .team_img_container {
    width: 100%;
  }
}
.team_img_wrap {
  width: 100%;
  /* margin-left: auto; */
  display: flex;
  justify-content: flex-end;
}
.team_img_img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.team_story_section {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
  padding-right: min(13.671875vw, 175px);
}
body.lang-en .team_story_section {
  margin-top: min(16.40625vw, 210px);
}
body.lang-jp .team_story_section {
  margin-top: min(16.40625vw, 210px);
}
@media only screen and (max-width: 600px) {
  .team_story_section {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
  body.lang-en .team_story_section {
    margin-top: max(9.375vw, 104.4px);
  }
  body.lang-jp .team_story_section {
    margin-top: max(9.375vw, 104.4px);
  }
}
.team_story_inner {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .team_story_inner {
    max-width: 100%;
    margin: 0 auto;
  }
}
.team_story_title {
  font-size: min(3.90625vw, 50px);
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  margin-bottom: min(7.34375vw, 94px);
  text-align: left;
}
@media only screen and (max-width: 600px) {
  .team_story_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(3.125vw, 34.8px);
  }
}
.team_story_video_wrap {
  width: 100%;
  position: relative;
}
.team_story_video_wrap iframe,
.team_story_video_wrap video,
.team_story_video_wrap .team_video {
  width: 100%;
  height: min(45vw, 576px);
  border: none;
  border-radius: 0;
  background: #000;
}
@media only screen and (max-width: 600px) {
  .team_story_video_wrap iframe,
  .team_story_video_wrap video,
  .team_story_video_wrap .team_video {
    min-height: 13rem;
  }
}
.team_story_video_thumbnail {
  position: relative;
  width: 100%;
  height: min(45vw, 576px);
  cursor: pointer;
  overflow: hidden;
}
@media only screen and (max-width: 600px) {
  .team_story_video_thumbnail {
    height: max(23.4375vw, 261px);
  }
}
.team_story_video_thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media only screen and (max-width: 600px) {
  .team_story_video_thumbnail img {
    object-fit: cover;
  }
}
.team_story_video_play_button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
.team_story_video_play_button:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 600px) {
  .team_story_video_play_button svg {
    width: 60px;
    height: 60px;
  }
}
.team_story_video_caption {
  margin-top: min(1.5625vw, 20px);
  text-align: center;
  font-size: min(1.09375vw, 14px);
  line-height: 1.4285714286;
  letter-spacing: 0.025em;
  color: #666;
}
@media only screen and (max-width: 600px) {
  .team_story_video_caption {
    font-size: max(0.9375vw, 10.44px);
    margin-top: max(1.171875vw, 13.05px);
  }
}

.on-footer {
  width: 100%;
  background-color: #6C756C;
  padding-top: min(6.484375vw, 83px);
  height: min(16.09375vw, 206px);
}
@media only screen and (max-width: 600px) {
  .on-footer {
    padding-top: max(4.6875vw, 52.2px);
    height: auto;
    padding-bottom: max(4.6875vw, 52.2px);
  }
}
.on-footer_inner {
  max-width: min(87.5vw, 1120px);
  margin: 0 auto;
  display: flex;
  gap: min(21.484375vw, 275px);
  padding: 0 min(6.25vw, 80px);
}
@media only screen and (max-width: 600px) {
  .on-footer_inner {
    flex-direction: column;
    gap: max(3.125vw, 34.8px);
    padding: 0 max(2.1875vw, 24.36px);
  }
}
@media only screen and (min-width: 1300px) {
  .on-footer_inner {
    gap: 0;
    justify-content: space-between;
  }
}
.on-footer_newsletter {
  flex: 1;
  color: #fff;
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter {
    text-align: center;
  }
}
@media only screen and (min-width: 1300px) {
  .on-footer_newsletter {
    max-width: min(35.15625vw, 450px);
  }
}
.on-footer_newsletter_title {
  font-size: min(1.40625vw, 18px);
  font-weight: 400;
  margin-bottom: min(0.625vw, 8px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter_title {
    font-size: max(1.5625vw, 17.4px);
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
.on-footer_newsletter_text {
  font-size: min(1.015625vw, 13px);
  line-height: 1.7142857143;
  letter-spacing: 0.025em;
  margin-bottom: min(1.328125vw, 17px);
  font-weight: 100;
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter_text {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(1.953125vw, 21.75px);
  }
}
.on-footer_newsletter_form {
  display: flex;
  gap: min(0.9375vw, 12px);
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter_form {
    align-items: center;
    justify-content: center;
    gap: max(1.171875vw, 13.05px);
  }
}
.on-footer_newsletter_input {
  width: min(18.203125vw, 233px);
  height: min(1.171875vw, 15px);
  padding: min(0.9375vw, 12px) min(1.25vw, 16px);
  background-color: #fff;
  border: 1px #000 solid;
  border-radius: min(1.5625vw, 20px);
  font-size: min(1.09375vw, 14px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter_input {
    padding: max(0.9375vw, 10.44px) max(1.25vw, 13.92px);
    width: max(11.71875vw, 130.5px);
    border-radius: max(1.5625vw, 17.4px);
    font-size: max(1.09375vw, 12.18px);
  }
}
.on-footer_newsletter_input::placeholder {
  color: #999;
}
.on-footer_newsletter_input:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.3);
}
.on-footer_newsletter_button {
  padding: min(0.234375vw, 3px) min(0.625vw, 8px);
  width: min(5.46875vw, 70px);
  background-color: #231815;
  height: min(3.125vw, 40px);
  color: #fff;
  border: none;
  font-size: min(1.09375vw, 14px);
  border-radius: min(1.5625vw, 20px);
  font-weight: 400;
  letter-spacing: 0.025em;
  cursor: pointer;
}
@media only screen and (max-width: 600px) {
  .on-footer_newsletter_button {
    border-radius: max(1.5625vw, 17.4px);
    height: max(2.34375vw, 26.1px);
    width: max(5.46875vw, 60.9px);
    font-size: max(1.09375vw, 12.18px);
  }
}
@media (hover: hover) {
  .on-footer_newsletter_button:hover {
    background-color: rgb(0, 120.1621621622, 171);
  }
}
@media (hover: none) {
  .on-footer_newsletter_button:active {
    background-color: rgb(0, 120.1621621622, 171);
  }
}
.on-footer_products {
  flex: 1;
  color: #fff;
}
@media only screen and (min-width: 1300px) {
  .on-footer_products {
    max-width: min(35.15625vw, 450px);
  }
}
.on-footer_products_title {
  font-size: min(1.875vw, 24px);
  font-weight: 400;
  margin-bottom: min(2.109375vw, 27px);
  letter-spacing: 0.025em;
  line-height: 1.2;
}
@media only screen and (max-width: 600px) {
  .on-footer_products_title {
    text-align: center;
  }
}
.on-footer_products_title span {
  font-size: min(0.9375vw, 12px);
}
@media only screen and (max-width: 600px) {
  .on-footer_products_title span {
    font-size: max(0.9375vw, 10.44px);
  }
}
@media only screen and (max-width: 600px) {
  .on-footer_products_title {
    font-size: max(1.5625vw, 17.4px);
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
.on-footer_products_nav {
  width: 100%;
}
.on-footer_products_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: min(0.46875vw, 6px);
}
@media only screen and (max-width: 600px) {
  .on-footer_products_list {
    flex-direction: row;
    justify-content: center;
    gap: max(2.34375vw, 26.1px);
  }
}
.on-footer_products_link {
  display: block;
  color: #fff;
  text-decoration: none;
  font-size: min(1.171875vw, 15px);
  line-height: 1.5;
  letter-spacing: 0.025em;
  font-weight: 100;
  padding: min(0.625vw, 8px) 0;
}
@media only screen and (max-width: 600px) {
  .on-footer_products_link {
    font-size: max(1.09375vw, 12.18px);
    padding: max(0.46875vw, 5.22px) 0;
  }
}
@media (hover: hover) {
  .on-footer_products_link:hover {
    color: rgba(255, 255, 255, 0.7);
  }
}
@media (hover: none) {
  .on-footer_products_link:active {
    color: rgba(255, 255, 255, 0.7);
  }
}

/*# sourceMappingURL=style.css.map */
