@charset "UTF-8";
* {
  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;
  }
}

.page__title {
  text-align: center;
  font-size: min(3.125vw, 40px);
  line-height: 1.1;
  letter-spacing: 0.025em;
  font-weight: bold;
}
@media only screen and (max-width: 600px) {
  .page__title {
    font-size: max(2.1875vw, 24.36px);
    line-height: max(1.953125vw, 21.75px);
  }
}

.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 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background-color: #000;
  color: #fff;
  font-size: min(0.9375vw, 12px);
  height: min(2.890625vw, 37px);
  padding-inline: min(2.34375vw, 30px);
  display: flex;
  align-items: center;
  justify-content: center;
}
body.lang-en .top_message {
  padding-inline: min(4.6875vw, 60px);
}
.top_message .en {
  letter-spacing: 0.018em;
}
@media only screen and (max-width: 600px) {
  .top_message .en {
    font-size: max(0.859375vw, 9.57px);
  }
}
@media only screen and (max-width: 600px) {
  .top_message {
    position: fixed;
    height: max(2.890625vw, 32.19px);
    font-size: max(0.859375vw, 9.57px);
  }
  body.lang-en .top_message {
    padding-inline: max(2.734375vw, 30.45px);
    height: max(3.28125vw, 36.54px);
  }
}

.top_logo {
  width: 100%;
  height: min(3.984375vw, 51px);
  margin-top: min(4.375vw, 56px);
  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(3.984375vw, 44.37px);
    padding-bottom: max(1.71875vw, 19.14px);
    border-bottom: unset;
  }
  .top_logo .lang_button {
    display: none;
  }
  body.lang-en .top_logo {
    margin-top: max(4.375vw, 48.72px);
    padding-bottom: max(1.328125vw, 14.79px);
  }
}
.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(67.96875vw, 870px);
  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: 9990;
  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);
  margin-top: max(1.484375vw, 16.53px);
}
.fixed-header .top_menu {
  margin: unset;
  margin: auto 0;
  padding-right: min(6.015625vw, 77px);
  padding-left: min(6.71875vw, 86px);
  gap: min(3.75vw, 48px);
  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%;
  aspect-ratio: 1280/435;
  overflow: hidden;
}
@media only screen and (max-width: 600px) {
  .top-slider {
    aspect-ratio: 430/536;
  }
}
.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;
}
.top-slider__btn {
  display: inline-block;
  position: relative;
  padding: min(0.546875vw, 7px) min(1.953125vw, 25px);
  padding-right: min(3.28125vw, 42px);
  max-height: min(2.890625vw, 37px);
  border: min(0.1171875vw, 1.5px) black solid;
  border-radius: min(3.90625vw, 50px);
  background-color: transparent;
  font-size: min(1.09375vw, 14px);
  letter-spacing: 0.025em;
  line-height: 1.75em;
  color: black;
  text-decoration: none;
  transform: none;
  transition: transform 200ms ease;
}
.top-slider__btn.--bg-white {
  background-color: #fff;
}
.top-slider__btn.--bg-green {
  background-color: #006837;
  color: #fff;
  border-color: #006837;
}
.top-slider__btn.--bg-green::after {
  background-color: #fff;
}
.top-slider__btn:hover {
  transform: scale(1.05);
}
@media only screen and (max-width: 600px) {
  .top-slider__btn {
    padding: max(0.703125vw, 7.83px) max(2.03125vw, 22.62px);
    padding-right: max(3.90625vw, 43.5px);
    max-height: max(2.890625vw, 32.19px);
    border: max(0.1171875vw, 1.305px) black solid;
    border-radius: max(3.125vw, 34.8px);
    font-size: max(1.25vw, 13.92px);
  }
}
@media screen and (max-width: 400px) {
  .top-slider__btn {
    font-size: max(1.015625vw, 11.31px);
  }
}
.top-slider__btn::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 12%;
  transform: translateY(-50%);
  width: min(0.78125vw, 10px);
  height: min(0.78125vw, 10px);
  mask-image: url(../img/top-arrow.svg);
  background-color: black;
  content: "";
}
@media only screen and (max-width: 600px) {
  .top-slider__btn::after {
    width: max(1.015625vw, 11.31px);
    height: max(1.015625vw, 11.31px);
  }
}

.slide.--cover-cover {
  position: relative;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
}
.slide.--cover-contain {
  position: relative;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 600px) {
  .slide.--cover-contain {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
  }
}
.slide.--contain-cr-contain {
  position: relative;
  background-position: center right;
  background-size: contain;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 600px) {
  .slide.--contain-cr-contain {
    background-position: top center;
  }
}
.slide__inner {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  padding-top: min(4.6875vw, 60px);
  padding-inline: min(6.25vw, 80px);
  width: 100%;
  max-width: min(87.5vw, 1120px);
}
@media only screen and (max-width: 600px) {
  .slide__inner {
    top: 60%;
    padding-top: 0;
    text-align: center;
  }
}
@media screen and (max-width: 429px) {
  .slide__inner {
    top: 58%;
  }
}
.slide__tag {
  margin-bottom: min(1.953125vw, 25px);
  color: #666;
  font-size: min(0.9375vw, 12px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 600px) {
  .slide__tag {
    margin-bottom: max(1.09375vw, 12.18px);
    font-size: max(0.78125vw, 8.7px);
  }
}

.slide.--menopause {
  background-image: url(../img/top_photo-pc3.jpg);
  color: #4d4d4d;
  font-weight: 500;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause {
    background-image: url(../img/top_photo-sp3.jpg);
  }
}
.slide.--menopause .slide__inner {
  padding-top: min(5.3125vw, 68px);
  padding-inline: min(6.09375vw, 78px);
}
body.lang-en .slide.--menopause .slide__inner {
  padding-top: min(4.296875vw, 55px);
}
@media only screen and (max-width: 600px) {
  body.lang-en .slide.--menopause .slide__inner {
    padding-top: 0;
    font-size: max(1.171875vw, 13.05px);
  }
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__inner {
    padding-top: max(0.390625vw, 4.35px);
    max-width: none;
  }
}
.slide.--menopause .slide__text.ttl {
  margin-left: -3px;
  margin-bottom: min(0.78125vw, 10px);
  font-size: min(2.34375vw, 30px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.06em;
  color: #000;
}
.slide.--menopause .slide__text.ttl.en {
  margin-bottom: min(1.015625vw, 13px);
  letter-spacing: 0.04em;
  line-height: 1.2;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.ttl {
    margin-bottom: max(0.78125vw, 8.7px);
    padding-top: 0;
    font-size: max(1.953125vw, 21.75px);
  }
}
.slide.--menopause .slide__text {
  margin-bottom: min(1.953125vw, 25px);
  font-size: min(1.25vw, 16px);
  line-height: 1.85;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text {
    padding-top: 0;
    font-size: max(1.171875vw, 13.05px);
    font-weight: 700;
    letter-spacing: 0;
    color: #333;
  }
}
@media screen and (max-width: 400px) {
  .slide.--menopause .slide__text {
    font-size: max(1.015625vw, 11.31px);
  }
}
.slide.--menopause .slide__text.en {
  margin-bottom: min(2.734375vw, 35px);
  letter-spacing: 0.03em;
  line-height: 2;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.en {
    line-height: 1.4;
  }
}
.slide.--menopause .slide__text.name {
  margin-left: -2px;
  margin-bottom: min(0.78125vw, 10px);
  font-size: min(2.1875vw, 28px);
  font-weight: 700;
  line-height: 1.2;
  color: #000;
}
.slide.--menopause .slide__text.name.en {
  letter-spacing: 0.046em;
}
.slide.--menopause .slide__text.price-label {
  margin-bottom: min(0.390625vw, 5px);
  line-height: 1.2;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.price-label {
    margin-bottom: max(0.9375vw, 10.44px);
    color: #000;
  }
}
.slide.--menopause .slide__text.price-label.en {
  margin-bottom: min(0.703125vw, 9px);
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.price-label.en {
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
.slide.--menopause .slide__text .black {
  color: #000;
}
.slide.--menopause .slide__text .red {
  color: #f15a24;
}
.slide.--menopause .slide__text .large {
  font-size: min(2.34375vw, 30px);
  font-weight: 700;
}
.slide.--menopause .slide__text.price {
  margin-bottom: min(2.34375vw, 30px);
  font-size: min(1.40625vw, 18px);
  line-height: 1.2;
  letter-spacing: 0.028em;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.price {
    font-weight: 700;
    padding-top: 0;
    margin-bottom: max(1.796875vw, 20.01px);
    font-size: max(1.640625vw, 18.27px);
    letter-spacing: 0;
  }
}
.slide.--menopause .slide__text.price.en {
  margin-bottom: min(1.5625vw, 20px);
  letter-spacing: 0;
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.price.en {
    padding-top: 0;
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.slide.--menopause .slide__text.price .small {
  font-size: min(1.25vw, 16px);
}
@media only screen and (max-width: 600px) {
  .slide.--menopause .slide__text.price .small {
    font-size: max(1.171875vw, 13.05px);
  }
}
body.lang-en .slide.--menopause .slide__text.price .small {
  letter-spacing: 0.035em;
}
.slide.--slide2 {
  background-image: url(../img/top_photo-pc2.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.--slide2 {
    background-image: url(../img/top_photo-sp2.jpg);
  }
}
.slide.--slide2 .slide__inner {
  left: 53.2%;
  transform: none;
  padding-top: min(13.28125vw, 170px);
  padding-inline: 0;
  width: auto;
  max-width: none;
}
@media only screen and (max-width: 600px) {
  .slide.--slide2 .slide__inner {
    width: 100%;
    left: 50%;
    top: 60%;
    transform: translateX(-50%);
    padding-top: 0;
    text-align: center;
  }
}
@media screen and (max-width: 429px) {
  .slide.--slide2 .slide__inner {
    top: 55%;
  }
}
.slide.--slide2 .slide__text {
  margin-bottom: min(2.34375vw, 30px);
  font-size: min(1.5625vw, 20px);
  line-height: 1.75em;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .slide.--slide2 .slide__text {
    margin-bottom: max(2.34375vw, 26.1px);
    font-size: max(1.328125vw, 14.79px);
    line-height: 1.9;
    letter-spacing: 0.01em;
  }
}
@media screen and (max-width: 400px) {
  .slide.--slide2 .slide__text {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
@media screen and (max-width: 350px) {
  .slide.--slide2 .slide__text {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(0.9375vw, 10.44px);
  }
}
.slide.--slide2 .slide__text .bold {
  font-weight: 700;
}
.slide.--slide2 .slide__text.en {
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .slide.--slide2 .slide__text.en {
    line-height: 1.9;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 420px) {
  .slide.--slide2 .slide__text.en {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
@media screen and (max-width: 370px) {
  .slide.--slide2 .slide__text.en {
    font-size: max(1.015625vw, 11.31px);
    margin-bottom: min(1.171875vw, 15px);
  }
}

.slide.--journal {
  background-image: url(../img/top_photo-pc4.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.--journal {
    background-image: url(../img/top_photo-pc4.jpg);
  }
}
.slide.--journal .slide__text {
  margin-bottom: min(6.5625vw, 84px);
  font-size: min(1.71875vw, 22px);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 600px) {
  .slide.--journal .slide__text {
    margin-bottom: max(2.34375vw, 26.1px);
    font-size: max(1.328125vw, 14.79px);
    line-height: 1.9;
    letter-spacing: 0.01em;
  }
}
@media screen and (max-width: 400px) {
  .slide.--journal .slide__text {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
@media screen and (max-width: 350px) {
  .slide.--journal .slide__text {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(0.9375vw, 10.44px);
  }
}
.slide.--journal .slide__text .bold {
  font-weight: 700;
}
.slide.--journal .slide__text.en {
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .slide.--journal .slide__text.en {
    line-height: 1.9;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 420px) {
  .slide.--journal .slide__text.en {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
@media screen and (max-width: 370px) {
  .slide.--journal .slide__text.en {
    font-size: max(1.015625vw, 11.31px);
    margin-bottom: min(1.171875vw, 15px);
  }
}

.slide.--swell {
  background-image: url(../img/top_photo-pc10.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.--swell {
    background-image: url(../img/top_photo-pc10.jpg);
  }
}
.slide.--swell .slide__text {
  margin-top: min(-0.390625vw, -5px);
  font-size: min(1.875vw, 24px);
  margin-bottom: min(1.25vw, 16px);
  font-size: min(1.875vw, 24px);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
}
.slide.--swell .slide__text .to {
  font-size: min(1.71875vw, 22px);
}
@media only screen and (max-width: 600px) {
  .slide.--swell .slide__text .to {
    font-size: max(1.25vw, 13.92px);
  }
}
.slide.--swell .slide__text .position {
  letter-spacing: 0.01em;
}
@media only screen and (max-width: 600px) {
  .slide.--swell .slide__text {
    margin-bottom: max(1.171875vw, 13.05px);
    font-size: max(1.328125vw, 14.79px);
    line-height: 1.7;
    letter-spacing: 0.01em;
  }
}
@media screen and (max-width: 400px) {
  .slide.--swell .slide__text {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(0.78125vw, 8.7px);
  }
}
@media screen and (max-width: 350px) {
  .slide.--swell .slide__text {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(0.546875vw, 6.09px);
  }
}
.slide.--swell .slide__text02 {
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  letter-spacing: -0.01em;
  margin-bottom: min(4.140625vw, 53px);
}
@media only screen and (max-width: 600px) {
  .slide.--swell .slide__text02 {
    font-size: max(1.171875vw, 13.05px);
  }
}
@media screen and (max-width: 400px) {
  .slide.--swell .slide__text02 {
    font-size: max(1.09375vw, 12.18px);
    margin-bottom: max(0.78125vw, 8.7px);
  }
}
@media screen and (max-width: 350px) {
  .slide.--swell .slide__text02 {
    font-size: max(0.78125vw, 8.7px);
    margin-bottom: max(0.546875vw, 6.09px);
  }
}
.slide.--swell .slide__text.en {
  letter-spacing: 0.01em;
}
.slide.--swell .slide__text.en .name {
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .slide.--swell .slide__text.en {
    font-size: max(1.328125vw, 14.79px);
    line-height: 1.9;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 420px) {
  .slide.--swell .slide__text.en {
    font-size: max(1.25vw, 13.92px);
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
@media screen and (max-width: 370px) {
  .slide.--swell .slide__text.en {
    font-size: max(1.015625vw, 11.31px);
    margin-bottom: min(0.78125vw, 10px);
  }
}
.slide.--swell .slide__text02.en {
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  letter-spacing: 0.028em;
  line-height: 1.9;
}
@media only screen and (max-width: 600px) {
  .slide.--swell .slide__text02.en {
    font-size: max(1.171875vw, 13.05px);
    line-height: 1.7;
    letter-spacing: 0em;
    margin-bottom: max(1.171875vw, 13.05px);
  }
}
@media screen and (max-width: 420px) {
  .slide.--swell .slide__text02.en {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(0.78125vw, 8.7px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 370px) {
  .slide.--swell .slide__text02.en {
    font-size: max(0.9375vw, 10.44px);
  }
}

.slide.-les-mills {
  background-image: url(../img/top_photo-pc7.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.-les-mills {
    background-image: url(../img/top_photo-sp7.jpg);
  }
}
.slide.-les-mills .slide__text {
  margin-bottom: 0;
  font-size: min(1.5625vw, 20px);
  font-weight: 500;
  line-height: 1.7em;
  letter-spacing: -0.01em;
}
.slide.-les-mills .slide__text .wide {
  letter-spacing: 0.03em;
}
.slide.-les-mills .slide__text.date {
  margin-top: min(1.015625vw, 13px);
  margin-bottom: min(3.90625vw, 50px);
  font-size: min(1.5625vw, 20px);
  letter-spacing: 0.05em;
}
.slide.-les-mills .slide__text.en {
  letter-spacing: 0;
  line-height: 1.74;
  font-weight: 500;
  margin-bottom: min(1.875vw, 24px);
}
@media only screen and (max-width: 600px) {
  .slide.-les-mills .slide__text.en {
    padding-top: max(0vw, 0px);
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(1.40625vw, 15.66px);
    letter-spacing: 0;
  }
}
@media screen and (max-width: 425px) {
  .slide.-les-mills .slide__text.en {
    font-size: max(1.09375vw, 12.18px);
  }
}
@media screen and (max-width: 395px) {
  .slide.-les-mills .slide__text.en {
    font-size: max(1.015625vw, 11.31px);
  }
}
@media screen and (max-width: 375px) {
  .slide.-les-mills .slide__text.en {
    font-size: max(0.9375vw, 10.44px);
  }
}
@media only screen and (max-width: 600px) {
  .slide.-les-mills .slide__text {
    margin-bottom: max(0.546875vw, 6.09px);
    font-size: max(1.171875vw, 13.05px);
    letter-spacing: 0.01em;
    line-height: 1.55;
  }
}
@media screen and (max-width: 385px) {
  .slide.-les-mills .slide__text {
    font-size: max(1.015625vw, 11.31px);
  }
}

.slide.--product {
  background-image: url(../img/top_photo-pc8.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.--product {
    background-image: url(../img/top_photo-sp8.jpg);
  }
}
@media only screen and (max-width: 600px) {
  .slide.--product .slide__tag {
    margin-bottom: max(0.78125vw, 8.7px);
  }
}
.slide.--product .slide__text {
  margin-bottom: min(6.171875vw, 79px);
  font-size: min(1.71875vw, 22px);
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .slide.--product .slide__text {
    margin-bottom: max(2.34375vw, 26.1px);
    font-size: max(1.484375vw, 16.53px);
    letter-spacing: 0.01em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 425px) {
  .slide.--product .slide__text {
    font-size: max(1.328125vw, 14.79px);
  }
}
@media screen and (max-width: 375px) {
  .slide.--product .slide__text {
    font-size: max(1.171875vw, 13.05px);
  }
}
.slide.--product .slide__text.en {
  letter-spacing: 0.012em;
  line-height: 1.74;
  font-weight: 500;
  margin-bottom: min(6.015625vw, 77px);
}
@media only screen and (max-width: 600px) {
  .slide.--product .slide__text.en {
    padding-top: max(0vw, 0px);
    font-size: max(1.40625vw, 15.66px);
    margin-bottom: max(2.1875vw, 24.36px);
    letter-spacing: -0.01em;
    line-height: 1.8;
  }
}
@media screen and (max-width: 425px) {
  .slide.--product .slide__text.en {
    font-size: max(1.25vw, 13.92px);
  }
}
@media screen and (max-width: 375px) {
  .slide.--product .slide__text.en {
    font-size: max(1.09375vw, 12.18px);
  }
}

.slide.-holiday-sale {
  background-image: url(../img/top_photo-pc9.jpg);
}
@media only screen and (max-width: 600px) {
  .slide.-holiday-sale {
    background-image: url(../img/top_photo-sp9.jpg);
  }
  .slide.-holiday-sale .slide__inner {
    padding-inline: 0;
    max-width: 100%;
  }
}
@media only screen and (max-width: 600px) {
  .slide.-holiday-sale .slide__tag {
    margin-bottom: max(0.78125vw, 8.7px);
  }
}
.slide.-holiday-sale .slide__text {
  margin-bottom: min(1.953125vw, 25px);
  margin-bottom: min(1.5625vw, 20px);
  font-size: min(1.5625vw, 20px);
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0;
}
.slide.-holiday-sale .slide__text.-date {
  margin-bottom: 0;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 600px) {
  .slide.-holiday-sale .slide__text.-date {
    margin-bottom: max(3.125vw, 34.8px);
  }
}
.slide.-holiday-sale .slide__text.-price {
  margin-bottom: min(2.734375vw, 35px);
  font-weight: 700;
}
.slide.-holiday-sale .slide__text .span1 {
  font-size: min(2.734375vw, 35px);
  padding-right: min(0.546875vw, 7px);
}
.slide.-holiday-sale .slide__text .span2 {
  font-size: min(3.90625vw, 50px);
}
.slide.-holiday-sale .slide__text .span3 {
  font-size: min(3.125vw, 40px);
  letter-spacing: -0.03em;
}
@media only screen and (max-width: 600px) {
  .slide.-holiday-sale .slide__text {
    margin-bottom: max(0vw, 0px);
    font-size: max(1.328125vw, 14.79px);
    letter-spacing: 0.01em;
    line-height: 1.7;
    font-weight: 700;
  }
}
@media screen and (max-width: 425px) {
  .slide.-holiday-sale .slide__text {
    font-size: max(1.25vw, 13.92px);
  }
}
@media screen and (max-width: 385px) {
  .slide.-holiday-sale .slide__text {
    font-size: max(1.09375vw, 12.18px);
  }
}
.slide.-holiday-sale .slide__text.en {
  font-size: min(1.71875vw, 22px);
  letter-spacing: 0.012em;
  line-height: 1.6;
  font-weight: 700;
  margin-bottom: min(2.34375vw, 30px);
}
.slide.-holiday-sale .slide__text.en span.only-sp {
  display: block;
}
.slide.-holiday-sale .slide__text.en.-allitems {
  font-size: min(2.734375vw, 35px);
  letter-spacing: -0.01em;
  margin-bottom: min(0vw, 0px);
  line-height: 1;
}
.slide.-holiday-sale .slide__text.en.-lh1 {
  line-height: 1.2;
  margin-bottom: min(2.96875vw, 38px);
}
@media only screen and (max-width: 600px) {
  .slide.-holiday-sale .slide__text.en {
    padding-top: max(0vw, 0px);
    font-size: max(1.40625vw, 15.66px);
    margin-bottom: max(2.1875vw, 24.36px);
    letter-spacing: 0.03em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 425px) {
  .slide.-holiday-sale .slide__text.en {
    font-size: max(1.25vw, 13.92px);
  }
}
@media screen and (max-width: 375px) {
  .slide.-holiday-sale .slide__text.en {
    font-size: max(1.09375vw, 12.18px);
  }
}

.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);
  }
}

.top-slider.border-top-bottom {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.top-slider.border-none {
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}
@media only screen and (max-width: 600px) {
  .top-slider.border-top-bottom, .top-slider.border-none {
    border-top: 1px solid transparent;
    border-bottom: 1px solid #ccc;
  }
}

.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);
  font-weight: 400;
}
@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_text .product_card_text3 {
  font-size: min(1.171875vw, 15px);
  hyphens: auto;
  overflow-wrap: break-word;
  line-height: 2.1428571429;
  margin-top: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .product_card_text .product_card_text3 {
    font-size: max(1.09375vw, 12.18px);
    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,
.section.how_to_use .section_text > h2 {
  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: 400;
  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;
  height: min(11.328125vw, 145px);
  max-width: 10000px;
  width: auto;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 600px) {
  .bottom_logo img {
    height: max(6.25vw, 69.6px);
    left: 100%;
  }
}

.bottom-swiper {
  height: 100%;
}

.bottom-swiper .swiper-wrapper {
  position: relative;
  transition-timing-function: linear !important;
}

@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);
  color: inherit;
  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_list {
  list-style: 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: 9999;
  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;
  pointer-events: none;
}
@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);
  }
}

.follow_button_close,
.follow_button_link {
  pointer-events: auto; /* ボタンとリンクだけタッチ有効 */
}

.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.05em;
  font-weight: 500;
}
.team_explanation span.jp {
  margin-bottom: min(11.328125vw, 145px);
}
.team_explanation span.en {
  margin-bottom: min(11.328125vw, 145px);
}
@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;
  padding-bottom: min(1.796875vw, 23px);
  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;
  text-decoration: none;
  transition: color 0.3s ease;
}
@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_nav_item:not(.is-active):hover {
  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(6.640625vw, 85px);
}
.team_section_title.-member {
  margin-bottom: min(11.328125vw, 145px);
}
@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;
}
.team_text .en {
  letter-spacing: 0.02em;
}
.team_text .secondary {
  margin-top: min(3.125vw, 40px);
}
@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(-0.390625vw, -5px);
}
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);
  margin-bottom: min(17.421875vw, 223px);
}
body.lang-en .team_story_section {
  margin-top: min(15.625vw, 200px);
}
body.lang-jp .team_story_section {
  margin-top: min(16.5625vw, 212px);
}
@media only screen and (max-width: 600px) {
  .team_story_section {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
    margin-bottom: max(9.375vw, 104.4px);
  }
  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 video {
  border: none;
  border-radius: 0;
  background: #000;
}
@media only screen and (max-width: 600px) {
  .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);
  }
}

.member {
  display: flex;
  gap: min(4.453125vw, 57px);
  margin-bottom: min(7.421875vw, 95px);
}
@media only screen and (max-width: 600px) {
  .member {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: max(7.421875vw, 82.65px);
  }
}
.member:last-of-type {
  margin-bottom: 0;
}
.member__img-container {
  flex: 0 0 min(23.4375vw, 300px);
}
@media only screen and (max-width: 600px) {
  .member__img-container {
    flex: 0 0 max(23.4375vw, 261px);
    max-width: max(23.4375vw, 261px);
  }
}
.member__text {
  font-size: min(1.171875vw, 15px);
  line-height: 1.8;
  font-weight: 500;
}
@media only screen and (max-width: 600px) {
  .member__text {
    font-size: max(1.015625vw, 11.31px);
  }
}
.member__name {
  margin-bottom: min(2.96875vw, 38px);
  font-size: min(1.953125vw, 25px);
  font-weight: 700;
}
@media only screen and (max-width: 600px) {
  .member__name {
    font-size: max(1.71875vw, 19.14px);
    margin-bottom: max(2.96875vw, 33.06px);
  }
}
.member__name.jp {
  margin-top: min(0.46875vw, 6px);
  margin-bottom: 0;
  line-height: 1.5;
}
.member__name.en {
  margin-bottom: min(1.71875vw, 22px);
}
.member__subname {
  font-size: min(1.171875vw, 15px);
  margin-bottom: min(1.953125vw, 25px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .member__subname {
    font-size: max(1.015625vw, 11.31px);
    margin-bottom: max(1.953125vw, 21.75px);
  }
}
.member__position {
  margin-bottom: min(2.890625vw, 37px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .member__position {
    margin-bottom: max(2.890625vw, 32.19px);
  }
}
.member__disc {
  letter-spacing: 0.05em;
  line-break: strict;
}
.member__disc.en {
  letter-spacing: 0.042em;
}

.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);
  }
}

.howtouse_section {
  padding: min(7.03125vw, 90px) 0 min(23.4375vw, 300px);
}
@media only screen and (max-width: 600px) {
  .howtouse_section {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.howtouse_top, .howtouse_main {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .howtouse_top, .howtouse_main {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
@media only screen and (min-width: 1300px) {
  .howtouse_main {
    padding-right: 175px;
  }
}
.howtouse_inner {
  max-width: min(80vw, 1024px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .howtouse_inner {
    max-width: none;
  }
}
.howtouse_inner.-left {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .howtouse_inner.-left {
    margin: 0 auto;
  }
}
.howtouse_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) {
  .howtouse_title {
    font-size: max(2.1875vw, 24.36px);
    line-height: max(1.953125vw, 21.75px);
    margin-bottom: max(4.6875vw, 52.2px);
  }
}
.howtouse_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) {
  .howtouse_explanation {
    font-size: max(0.9375vw, 10.44px);
  }
}
.howtouse_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) {
  .howtouse_year_nav {
    gap: max(4.21875vw, 46.98px);
    margin-bottom: max(4.6875vw, 52.2px);
    padding: max(1.5625vw, 17.4px) 0;
  }
}
.howtouse_year_nav_item {
  text-decoration: none;
  font-size: min(1.09375vw, 14px);
  line-height: 1.3571428571;
  letter-spacing: 0.025em;
  color: #9fa0a0;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 600px) {
  .howtouse_year_nav_item {
    font-size: max(1.09375vw, 12.18px);
  }
}
.howtouse_year_nav_item.is-active {
  color: #231815;
}
.howtouse_year_container {
  display: flex;
  flex-direction: column;
  gap: min(10.78125vw, 138px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_container {
    gap: max(4.6875vw, 52.2px);
  }
}
.howtouse_year_block {
  display: flex;
  justify-content: space-between;
  gap: min(1.875vw, 24px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_block {
    flex-direction: column;
    gap: max(1.875vw, 20.88px);
  }
}
.howtouse_year_title {
  font-size: min(3.125vw, 40px);
  line-height: 1.25;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: min(1.71875vw, 22px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.howtouse_year_title.--product {
  margin-bottom: min(3.125vw, 40px);
}
.howtouse_year_title.--product .en {
  font-size: min(2.65625vw, 34px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_title.--product .en {
    font-size: max(2.34375vw, 26.1px);
  }
}
.howtouse_year_list {
  display: flex;
  flex-direction: column;
  gap: min(2.734375vw, 35px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_list {
    gap: max(1.953125vw, 21.75px);
  }
}
.howtouse_year_item {
  letter-spacing: 0.025em;
}
.howtouse_year_item .text {
  font-size: min(0.9375vw, 12px);
  line-height: 2.1666666667;
  margin-bottom: min(1.09375vw, 14px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_item .text {
    font-size: max(0.9375vw, 10.44px);
    margin-bottom: max(0.625vw, 6.96px);
  }
}
.howtouse_year_item .text .en {
  text-align: justify;
}
.howtouse_year_item .title {
  font-size: min(1.171875vw, 15px);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: min(2.734375vw, 35px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_item .title {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(3.515625vw, 39.15px);
  }
}
.howtouse_year_item .title .en {
  font-size: min(1.25vw, 16px);
  text-align: justify;
}
@media only screen and (max-width: 600px) {
  .howtouse_year_item .title .en {
    font-size: max(1.015625vw, 11.31px);
  }
}
.howtouse_year_item .title .en.--15 {
  font-size: min(1.171875vw, 15px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_item .title .en.--15 {
    font-size: max(0.9375vw, 10.44px);
  }
}
.howtouse_year_content {
  flex: 1 1 auto;
  max-width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_content {
    max-width: 100%;
  }
}
.howtouse_year_content3 {
  flex: 0 0 34%;
  max-width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .howtouse_year_content3 {
    max-width: 100%;
  }
}
.howtouse_img_wrap {
  flex: 0 0 auto;
  width: min(35.546875vw, 455px);
  padding-top: 10px;
}
@media only screen and (max-width: 600px) {
  .howtouse_img_wrap {
    width: 100%;
  }
}
.howtouse_img_wrap .awards-swiper {
  position: relative;
}
.howtouse_img_wrap .awards-swiper .swiper-button-prev,
.howtouse_img_wrap .awards-swiper .swiper-button-next {
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}
.howtouse_img_wrap .awards-swiper .swiper-button-prev {
  left: min(1.5625vw, 20px) !important;
}
@media only screen and (max-width: 600px) {
  .howtouse_img_wrap .awards-swiper .swiper-button-prev {
    left: max(0.78125vw, 8.7px) !important;
  }
}
.howtouse_img_wrap .awards-swiper .swiper-button-next {
  right: min(1.5625vw, 20px) !important;
}
@media only screen and (max-width: 600px) {
  .howtouse_img_wrap .awards-swiper .swiper-button-next {
    right: max(0.78125vw, 8.7px) !important;
  }
}
.howtouse_img_wrap .awards-swiper .swiper-slide {
  aspect-ratio: 1/1;
}
.howtouse_img_wrap .awards-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.howtouse_img_container3 {
  flex: 0 0 66%;
}

.howtouse_img_container3 .product_section {
  padding: 0;
}

.howtouse_img_container3 .howtouse_img_wrap {
  width: min(58.59375vw, 750px);
}
@media only screen and (max-width: 600px) {
  .howtouse_img_container3 .howtouse_img_wrap {
    width: 100%;
  }
}

.howtouse_section .product_card_text {
  height: min(12.5vw, 160px);
  flex: 0 0 min(12.5vw, 160px);
}
@media only screen and (max-width: 600px) {
  .howtouse_section .product_card_text {
    height: max(19.53125vw, 217.5px);
  }
}
.howtouse_section .product_card_text:last-child {
  padding: 0;
  height: max-content;
}
.howtouse_section .swiper-button-prev,
.howtouse_section .swiper-button-next {
  display: none;
}
@media only screen and (max-width: 600px) {
  .howtouse_section .swiper-button-prev,
  .howtouse_section .swiper-button-next {
    display: block;
  }
}
.howtouse_section .howtouse_year_nav_item {
  transition: color 0.3s ease;
}
.howtouse_section .howtouse_year_nav_item:not(.is-active):hover {
  color: #231815;
}

.howtouse-slider {
  max-width: min(87.5vw, 1120px);
  margin: 0 auto;
  display: none;
}

.howtouse-slider.is-active {
  display: block;
}

@media only screen and (max-width: 600px) {
  .howtouse-slider {
    max-width: max(87.5vw, 974.4px);
  }
}
.howtouse-slider .swiper-slide {
  display: flex;
  flex-direction: column;
  height: auto;
}

.howtouse-list-item {
  position: relative;
  padding-left: 10px;
  margin-bottom: 8px;
}
.howtouse-list-item::after {
  position: absolute;
  top: 1em;
  left: 0;
  display: block;
  height: 3px;
  width: 3px;
  border-radius: 3px;
  background-color: #000;
  content: "";
}

#product {
  margin-top: min(6.25vw, 80px);
}

.howtouse_section .swiper-button-next.swiper-button-disabled,
.howtouse_section .swiper-button-prev.swiper-button-disabled {
  display: none;
}
.howtouse_section .media-wrapper {
  margin-inline: auto;
}
@media only screen and (max-width: 600px) {
  .howtouse_section .howtouse_inner {
    max-width: none;
  }
}
.howtouse_section .howtouse-slider .product_card_text .product_card_text3 {
  font-size: min(1.171875vw, 15px);
  font-weight: 500;
  hyphens: auto;
  overflow-wrap: break-word;
  line-height: 2.1428571429;
  margin-top: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .howtouse_section .howtouse-slider .product_card_text .product_card_text3 {
    font-size: max(1.09375vw, 12.18px);
    line-height: 2.2857142857;
    margin-top: max(1.359375vw, 15.138px);
  }
}

.whats_section {
  padding: min(6.25vw, 80px) 0 min(11.328125vw, 145px);
}
@media only screen and (max-width: 600px) {
  .whats_section {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.whats_top {
  padding: 0 min(6.25vw, 80px);
  max-width: min(100vw, 1280px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .whats_top {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
.whats_title {
  text-align: center;
  margin-bottom: min(3.515625vw, 45px);
  font-size: min(3.90625vw, 50px);
  line-height: 1;
  letter-spacing: 0.025em;
  font-weight: bold;
}
@media only screen and (max-width: 600px) {
  .whats_title {
    font-size: max(2.1875vw, 24.36px);
    line-height: max(1.953125vw, 21.75px);
    margin-bottom: max(4.6875vw, 52.2px);
  }
}
.whats_explanation {
  margin-bottom: min(11.09375vw, 142px);
  text-align: center;
  font-size: min(1.71875vw, 22px);
  line-height: 1.5909090909;
  letter-spacing: 0.025em;
  font-weight: 500;
}
.whats_explanation--no-ls {
  letter-spacing: 0.018em;
}
@media only screen and (max-width: 600px) {
  .whats_explanation {
    font-size: max(1.015625vw, 11.31px);
  }
  .whats_explanation span.jp {
    margin-bottom: max(7.03125vw, 78.3px);
  }
  .whats_explanation span.en {
    margin-bottom: max(5.46875vw, 60.9px);
  }
}
.whats_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) {
  .whats_main {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
}
.whats_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) {
  .whats_nav {
    gap: max(4.21875vw, 46.98px);
    margin-bottom: max(4.6875vw, 52.2px);
    padding: max(1.5625vw, 17.4px) 0;
  }
}
.whats_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) {
  .whats_nav_item {
    font-size: max(1.09375vw, 12.18px);
  }
}
.whats_nav_item.is-active {
  color: #231815;
}
.whats_container {
  display: flex;
  flex-direction: column;
  gap: min(11.71875vw, 150px);
}
@media only screen and (max-width: 600px) {
  .whats_container {
    gap: max(4.6875vw, 52.2px);
  }
}
.whats_container.second {
  gap: 0;
}
.whats_content {
  width: min(35.546875vw, 455px);
}
@media only screen and (max-width: 600px) {
  .whats_content {
    width: 100%;
  }
}
.whats_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) {
  .whats_section_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(2.734375vw, 30.45px);
  }
}
.whats_text {
  font-size: min(0.9375vw, 12px);
  line-height: 2.9000077334;
  letter-spacing: -0.01em;
  font-weight: 500;
}
.whats_text .jp {
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .whats_text {
    font-size: max(0.9375vw, 10.44px);
  }
}
.whats_video_section {
  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) {
  .whats_video_section {
    padding: 0 max(2.1875vw, 24.36px);
    max-width: max(100vw, 1113.6px);
  }
  body.lang-en .whats_video_section {
    margin-top: max(9.375vw, 104.4px);
  }
  body.lang-jp .whats_video_section {
    margin-top: max(9.375vw, 104.4px);
  }
}
.whats_video_inner {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .whats_video_inner {
    max-width: 100%;
    margin: 0 auto;
  }
}
.whats_video_title {
  margin-bottom: min(7.34375vw, 94px);
  font-size: min(3.90625vw, 50px);
  line-height: 1;
  letter-spacing: 0;
  font-weight: bold;
  text-align: left;
  letter-spacing: -0.01em;
}
@media only screen and (max-width: 600px) {
  .whats_video_title {
    font-size: max(2.578125vw, 28.71px);
    margin-bottom: max(3.125vw, 34.8px);
  }
}
.whats_video_caption {
  padding-top: min(5.859375vw, 75px);
  margin-bottom: min(5.859375vw, 75px);
}
.whats_message {
  padding-top: min(5.3125vw, 68px);
}
body.lang-en .whats_message.pt-60 {
  padding-top: min(4.6875vw, 60px);
}
.whats_message__title {
  margin-bottom: min(2.734375vw, 35px);
  font-size: min(3.125vw, 40px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.025em;
}
.whats_message__title .jp {
  text-indent: -0.5em;
}
.whats_message__title .en {
  letter-spacing: 0.033em;
}
@media only screen and (max-width: 600px) {
  .whats_message__title {
    font-size: max(1.953125vw, 21.75px);
  }
}
.whats_message__text {
  font-size: min(1.5625vw, 20px);
  line-height: 1.75;
  letter-spacing: 0.029em;
  font-weight: 500;
}
@media only screen and (max-width: 600px) {
  .whats_message__text {
    font-size: max(1.171875vw, 13.05px);
  }
}
.whats_message__note {
  font-size: min(0.9375vw, 12px);
  line-height: 1.6666666667;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .whats_message__note {
    font-size: max(0.9375vw, 10.44px);
  }
}
.whats_message__note .jp {
  margin-bottom: min(2.96875vw, 38px);
  padding-top: min(1.015625vw, 13px);
}
.whats_message__note .en {
  margin-bottom: min(1.796875vw, 23px);
  padding-top: min(0.234375vw, 3px);
  line-height: 2;
  letter-spacing: 0.04em;
}

.video-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 の場合 (9/16=0.5625) */
  overflow: hidden;
}
.video-wrapper:has(video:hover) .video__play-btn {
  transform: scale(1.05);
}
.video-wrapper.is-playing .video__play-btn {
  opacity: 0;
  pointer-events: none;
  transform: scale(0.9);
}
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover; /* これで黒帯を消す */
  cursor: pointer;
  border: none;
  border-radius: 0;
  background: #000;
}
.video__play-btn {
  appearance: none;
  position: absolute;
  bottom: 9%;
  left: 7%;
  display: inline-block;
  padding: min(1.09375vw, 14px) min(3.125vw, 40px);
  padding-left: min(5.078125vw, 65px);
  border: min(0.15625vw, 2px) solid black;
  border-radius: min(3.125vw, 40px);
  background-color: white;
  font-size: min(1.5625vw, 20px);
  font-weight: 500;
  letter-spacing: 0.025em;
  line-height: 1.75em;
  color: black;
  text-decoration: none;
  cursor: pointer;
  transform: none;
  opacity: 1;
  transition: transform 200ms ease, opacity 300ms ease;
}
.video__play-btn:hover {
  transform: scale(1.05);
}
.video__play-btn::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 12%;
  transform: translateY(-50%);
  width: min(1.353125vw, 17.32px);
  height: min(1.5625vw, 20px);
  background: #000;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  content: "";
}
.caption {
  font-weight: 700;
  letter-spacing: 0.025em;
}
.caption_position .jp {
  font-size: min(1.171875vw, 15px);
  margin-bottom: min(1.5625vw, 20px);
}
@media only screen and (max-width: 600px) {
  .caption_position .jp {
    font-size: max(0.859375vw, 9.57px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.caption_position .en {
  font-size: min(1.171875vw, 15px);
  margin-bottom: min(0.625vw, 8px);
}
@media only screen and (max-width: 600px) {
  .caption_position .en {
    font-size: max(0.859375vw, 9.57px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.caption_name {
  font-size: min(1.71875vw, 22px);
  margin-bottom: min(1.5625vw, 20px);
  letter-spacing: 0.025em;
}
.caption_name .en {
  font-size: min(1.953125vw, 25px);
}
@media only screen and (max-width: 600px) {
  .caption_name .en {
    font-size: max(1.71875vw, 19.14px);
  }
}
@media only screen and (max-width: 600px) {
  .caption_name {
    font-size: max(1.40625vw, 15.66px);
  }
}
.caption_name_en {
  font-size: min(1.171875vw, 15px);
}
@media only screen and (max-width: 600px) {
  .caption_name_en {
    font-size: max(0.9375vw, 10.44px);
  }
}
.caption_qualification {
  font-size: min(1.171875vw, 15px);
}
@media only screen and (max-width: 600px) {
  .caption_qualification {
    font-size: max(0.859375vw, 9.57px);
  }
}

.card {
  display: flex;
  max-width: min(35.546875vw, 455px);
  min-height: min(12.5vw, 160px);
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .card {
    max-width: max(32.8125vw, 365.4px);
    min-height: max(10.15625vw, 113.1px);
    margin: 0 auto;
    gap: max(1.5625vw, 17.4px);
  }
}
.card__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: min(8.984375vw, 115px);
  row-gap: min(5.859375vw, 75px);
  padding-top: min(10.9375vw, 140px);
  margin-bottom: min(2.890625vw, 37px);
}
@media only screen and (max-width: 600px) {
  .card__container {
    grid-template-columns: repeat(1, 1fr);
    padding-top: max(4.6875vw, 52.2px);
    margin-bottom: max(2.890625vw, 32.19px);
  }
}
.card__body {
  flex: 1 1 auto;
  max-width: min(20.703125vw, 265px);
}
@media only screen and (max-width: 600px) {
  .card__body {
    max-width: max(17.96875vw, 200.1px);
  }
}
.card__title {
  font-size: min(1.953125vw, 25px);
  font-weight: 700;
}
@media only screen and (max-width: 600px) {
  .card__title {
    font-size: max(1.71875vw, 19.14px);
  }
}
.card__title .jp {
  margin-bottom: min(1.5625vw, 20px);
  line-height: 1.3;
}
.card__title .en {
  margin-bottom: min(1.171875vw, 15px);
  line-height: 1.2;
  transform: translateY(-0.2em);
}
.card__title--up {
  transform: translateY(-0.2em);
}
.card__text {
  font-size: min(0.9375vw, 12px);
  line-height: 1.6666666667;
  font-weight: 500;
}
@media only screen and (max-width: 600px) {
  .card__text {
    font-size: max(0.9375vw, 10.44px);
  }
}
.card__text .en {
  line-height: 1.7;
}
.card__text--up {
  transform: translateY(-0.3em);
}
.card__text--ms {
  margin-right: -1.5em;
}
@media only screen and (max-width: 600px) {
  .card__text--ms {
    margin-right: 0;
  }
}
.card__image {
  flex: 1 1 auto;
  display: flex;
  align-items: flex-start;
  justify-content: end;
}
.card__image img {
  width: min(12.421875vw, 159px);
  height: auto;
}
@media only screen and (max-width: 600px) {
  .card__image img {
    width: max(10.078125vw, 112.23px);
    min-width: max(10.078125vw, 112.23px);
  }
}

.pt-5 {
  padding-top: min(0.390625vw, 5px);
}

body.is-news-open footer,
body.is-news-open .normal-header,
body.is-news-open .page-content,
body.is-news-open .fixed-header {
  display: none;
}

.top_message > p > span {
  display: flex;
  align-items: center;
  justify-content: center;
  text-indent: 1.7em;
  letter-spacing: 0.01em;
}
body.lang-en .top_message > p > span {
  letter-spacing: 0.017em;
}
@media only screen and (max-width: 600px) {
  .top_message > p > span {
    text-indent: 0;
  }
}

.top_message > p > span > span {
  flex: 1 1 min-content;
}

.news_btn {
  appearance: none;
  border: none;
  background: transparent;
  display: inline-block;
  padding: 0;
  margin-left: min(0.625vw, 8px);
  width: min(1.171875vw, 15px);
  height: min(1.171875vw, 15px);
  background-image: url("../img/news_open_btn.svg");
  background-repeat: no-repeat;
  background-size: contain; /* アイコンを収める */
  background-position: center;
  cursor: pointer;
}
@media only screen and (max-width: 600px) {
  .news_btn {
    width: max(1.171875vw, 13.05px);
    height: max(1.171875vw, 13.05px);
    margin-left: max(0.390625vw, 4.35px);
  }
}
.news_btn.is-active {
  transform: rotate(180deg);
}

.news_close {
  max-width: min(87.5vw, 1120px);
  padding-top: min(5.46875vw, 70px);
  margin: 0 auto;
  text-align: right;
}
@media only screen and (max-width: 600px) {
  .news_close {
    padding-top: max(5.46875vw, 60.9px);
  }
}

.news_close-btn {
  appearance: none;
  border: none;
  background: transparent;
  display: inline-block;
  padding: 0;
  width: min(3.125vw, 40px);
  height: min(3.125vw, 40px);
  background-image: url("../img/news_close_btn.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  transition: opacity 0.4s ease;
}
@media only screen and (max-width: 600px) {
  .news_close-btn {
    width: max(2.34375vw, 26.1px);
    height: max(2.34375vw, 26.1px);
  }
}
.news_close-btn:hover {
  opacity: 0.7;
}

.news {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: max-content;
  background: #1a1a1a;
  z-index: 9995;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
}
.news.is-active {
  transform: translateY(0);
}
.news_inner {
  padding: min(2.34375vw, 30px) 0 min(18.75vw, 240px);
  max-width: min(51.875vw, 664px);
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .news_inner {
    padding: max(2.34375vw, 26.1px) max(2.34375vw, 26.1px) max(11.71875vw, 130.5px);
    max-width: max(39.0625vw, 435px);
  }
}
.news_title {
  color: #fff;
  text-align: left;
  margin-bottom: min(2.34375vw, 30px);
  font-size: min(2.734375vw, 35px);
  line-height: 1.3428571429;
  letter-spacing: 0.08em;
  font-weight: bold;
}
body.lang-en .news_title {
  margin-bottom: min(2.34375vw, 30px);
  letter-spacing: 0.052em;
  line-height: 1.2857142857;
}
@media only screen and (max-width: 600px) {
  body.lang-en .news_title {
    font-size: max(2.1875vw, 24.36px);
    margin-bottom: max(2.34375vw, 26.1px);
  }
}
@media only screen and (max-width: 600px) {
  .news_title {
    font-size: max(2.1875vw, 24.36px);
    margin-bottom: max(2.34375vw, 26.1px);
  }
}
.news_title .highlight {
  font-size: min(3.90625vw, 50px);
}
body.lang-en .news_title .highlight {
  padding-left: min(0.78125vw, 10px);
  letter-spacing: 0.055em;
}
@media only screen and (max-width: 600px) {
  .news_title .highlight {
    font-size: max(3.125vw, 34.8px);
  }
}
.news_title .last {
  line-height: 1.7714285714;
}
.news_smalltitle {
  color: #3fa9f5;
  text-align: left;
  margin-bottom: min(2.1875vw, 28px);
  font-size: min(0.9375vw, 12px);
  line-height: 1;
  letter-spacing: 0.025em;
  font-weight: 400;
}
body.lang-en .news_smalltitle {
  margin-bottom: min(2.5vw, 32px);
}
@media only screen and (max-width: 600px) {
  body.lang-en .news_smalltitle {
    font-size: max(0.78125vw, 8.7px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
@media only screen and (max-width: 600px) {
  .news_smalltitle {
    font-size: max(0.78125vw, 8.7px);
    margin-bottom: max(1.5625vw, 17.4px);
  }
}
.news_subtitle {
  color: #fff;
  font-size: min(1.5625vw, 20px);
  line-height: 1.75;
  letter-spacing: -0.01em;
  font-weight: 500;
  margin-bottom: min(4.84375vw, 62px);
}
.news_subtitle .jp {
  letter-spacing: 0.07em;
}
.news_subtitle .en {
  letter-spacing: 0.032em;
}
@media only screen and (max-width: 600px) {
  .news_subtitle {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(2.734375vw, 30.45px);
  }
}
.news_text {
  color: #fff;
  font-size: min(1.5625vw, 20px);
  line-height: 1.75;
  margin-bottom: min(3.125vw, 40px);
  font-weight: 400;
  text-align: justify;
}
.news_text a {
  color: #3fa9f5;
  text-decoration: none;
}
.news_text a span {
  padding: 0.5rem;
}
.news_text .jp {
  letter-spacing: 0.066em;
}
.news_text .en {
  letter-spacing: 0.0355em;
}
.news_text .en .narrow {
  letter-spacing: 0.045em;
}
@media only screen and (max-width: 600px) {
  .news_text {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(2.34375vw, 26.1px);
  }
}
.news .narrow {
  letter-spacing: 0.05em;
}
.news .narrow2 {
  letter-spacing: 0.036em;
}
.news .narrow3 {
  letter-spacing: 0.016em;
}
.news_catch {
  font-size: min(3.125vw, 40px);
  font-weight: 700;
  text-indent: -0.6em;
}
@media only screen and (max-width: 600px) {
  .news_catch {
    font-size: max(2.109375vw, 23.49px);
  }
}
.news_video_content {
  margin-bottom: min(4.6875vw, 60px);
}
@media only screen and (max-width: 600px) {
  .news_video_content {
    margin-bottom: max(2.734375vw, 30.45px);
  }
}
body.lang-en .news_video_content {
  margin-bottom: min(4.84375vw, 62px);
}
@media only screen and (max-width: 600px) {
  body.lang-en .news_video_content {
    margin-bottom: max(2.734375vw, 30.45px);
  }
}
.news .video-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 の場合 (9/16=0.5625) */
  overflow: hidden;
  border-radius: min(1.953125vw, 25px);
}
.news .video-wrapper:has(video:hover) .video__play-btn {
  transform: scale(1.05);
}
.news .video-wrapper.is-playing .video__play-btn {
  opacity: 0;
  pointer-events: none;
  transform: scale(0.9);
}
.news .video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: none;
  background: #000;
  object-fit: cover; /* これで黒帯を消す */
  cursor: pointer;
}
.news .video__play-btn {
  appearance: none;
  position: absolute;
  bottom: 16%;
  left: 9%;
  display: inline-block;
  padding: min(0.703125vw, 9px) min(1.5625vw, 20px) min(0.625vw, 8px) min(3.515625vw, 45px);
  border: min(0.15625vw, 2px) solid black;
  border-radius: min(3.125vw, 40px);
  background-color: white;
  font-size: min(1.015625vw, 13px);
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.75em;
  color: black;
  text-decoration: none;
  cursor: pointer;
  transform: none;
  opacity: 1;
  transition: transform 200ms ease, opacity 300ms ease;
}
.news .video__play-btn:hover {
  transform: scale(1.05);
}
@media only screen and (max-width: 600px) {
  .news .video__play-btn {
    padding: max(0.390625vw, 4.35px) max(0.9375vw, 10.44px) max(0.3125vw, 3.48px) max(1.5625vw, 17.4px);
    border: max(0.078125vw, 0.87px) black solid;
    border-radius: max(1.171875vw, 13.05px);
    font-size: max(0.625vw, 6.96px);
  }
}
.news .video__play-btn::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 14%;
  transform: translateY(-50%);
  width: min(0.90625vw, 11.6px);
  height: min(1.045vw, 13.376px);
  background: #000;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  content: "";
}
@media only screen and (max-width: 600px) {
  .news .video__play-btn::after {
    width: max(0.46875vw, 5.22px);
    height: max(0.541265625vw, 6.027534px);
  }
}

.gradient {
  background: linear-gradient(45deg, #ffffff 0%, #3fa9f5 75%, #3fa9f5 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  display: inline-block;
}

.journal {
  box-sizing: border-box;
  padding: min(6.484375vw, 83px) 0 min(23.4375vw, 300px);
}
.journal img {
  vertical-align: bottom;
}
@media only screen and (max-width: 600px) {
  .journal {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.journal__page {
  padding: 0 min(3.90625vw, 50px);
}
@media only screen and (max-width: 600px) {
  .journal__page {
    padding: 0 max(2.1875vw, 24.36px);
  }
}
.journal__header, .journal__main {
  margin: 0 auto;
  width: 100%;
  max-width: min(75vw, 960px);
}
@media only screen and (max-width: 600px) {
  .journal__header, .journal__main {
    max-width: none;
  }
}
.journal__title {
  margin-bottom: min(6.640625vw, 85px);
}
@media only screen and (max-width: 600px) {
  .journal__title {
    margin-bottom: max(4.6875vw, 52.2px);
  }
}
.journal__subtitle {
  margin-bottom: min(5.234375vw, 67px);
  font-size: min(1.5625vw, 20px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .journal__subtitle {
    font-size: max(1.171875vw, 13.05px);
    margin-bottom: max(3.125vw, 34.8px);
  }
}
.journal__subtitle .jp {
  margin-bottom: min(1.5625vw, 20px);
}
.journal__subtitle .jp.-tra {
  margin-bottom: 0;
  font-size: min(1.015625vw, 13px);
}
@media only screen and (max-width: 600px) {
  .journal__subtitle .jp.-tra {
    font-size: max(0.78125vw, 8.7px);
  }
}
.journal .posts {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(2.96875vw, 38px);
}
@media only screen and (max-width: 600px) {
  .journal .posts {
    grid-template-columns: repeat(1, 1fr);
    gap: max(1.953125vw, 21.75px);
  }
}
.journal .post__link {
  text-decoration: none;
  color: #000;
}
.journal .post__img-container {
  margin-bottom: min(1.328125vw, 17px);
  position: relative;
  width: 100%;
  aspect-ratio: 461/260;
  overflow: hidden;
}
.journal .post__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 200ms ease-in;
}
@media (hover: hover) {
  .journal .post:hover .post__link {
    color: #555;
  }
  .journal .post:hover .post__img {
    transform: translate(-50%, -50%) scale(1.05);
  }
}
@media (hover: none) {
  .journal .post:active .post__link {
    color: #555;
  }
  .journal .post:active .post__img {
    transform: translate(-50%, -50%) scale(1.05);
  }
}
.journal .post__title {
  margin-bottom: min(1.171875vw, 15px);
  font-size: min(1.5625vw, 20px);
  line-height: 1.6;
  letter-spacing: 0.029em;
}
@media only screen and (max-width: 600px) {
  .journal .post__title {
    font-size: max(1.171875vw, 13.05px);
  }
}
.journal .post__date {
  font-size: min(1.015625vw, 13px);
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .journal .post__date {
    font-size: max(0.78125vw, 8.7px);
  }
}

.journal-post {
  box-sizing: border-box;
  padding: min(6.640625vw, 85px) 0 min(23.4375vw, 300px);
}
.journal-post img {
  vertical-align: bottom;
}
@media only screen and (max-width: 600px) {
  .journal-post {
    padding: max(4.6875vw, 52.2px) 0 max(9.765625vw, 108.75px);
  }
}
.journal-post__section {
  padding: 0 min(3.90625vw, 50px);
}
@media only screen and (max-width: 600px) {
  .journal-post__section {
    padding: 0 max(2.1875vw, 24.36px);
  }
}
.journal-post__header {
  margin: 0 auto;
  margin-bottom: min(5.3125vw, 68px);
  width: 100%;
  max-width: min(75vw, 960px);
}
@media only screen and (max-width: 600px) {
  .journal-post__header {
    margin-bottom: max(4.296875vw, 47.85px);
    max-width: none;
  }
}
.journal-post .meta {
  margin-bottom: min(5.078125vw, 65px);
}
@media only screen and (max-width: 600px) {
  .journal-post .meta {
    margin-bottom: max(4.296875vw, 47.85px);
  }
}
.journal-post .meta__page {
  margin-bottom: min(0.9375vw, 12px);
  font-size: min(1.71875vw, 22px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 600px) {
  .journal-post .meta__page {
    font-size: max(1.40625vw, 15.66px);
  }
}
.journal-post .meta__category {
  padding: min(0.15625vw, 2px) min(0.625vw, 8px);
  background-color: #999;
  color: #fff;
  font-size: min(1.015625vw, 13px);
  font-weight: 700;
}
@media only screen and (max-width: 600px) {
  .journal-post .meta__category {
    font-size: max(0.78125vw, 8.7px);
  }
}
.journal-post .meta__footer {
  display: flex;
  justify-content: space-between;
  margin-top: min(2.890625vw, 37px);
}
.journal-post .meta__date {
  font-size: min(1.015625vw, 13px);
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .journal-post .meta__date {
    font-size: max(0.78125vw, 8.7px);
  }
}
.journal-post .meta__photographer {
  font-size: min(0.859375vw, 11px);
  font-weight: 500;
  letter-spacing: 0.038em;
}
@media only screen and (max-width: 600px) {
  .journal-post .meta__photographer {
    font-size: max(0.703125vw, 7.83px);
  }
}
.journal-post__title {
  font-size: min(1.875vw, 24px);
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0.053em;
  text-align: left;
}
@media only screen and (max-width: 600px) {
  .journal-post__title {
    font-size: max(1.5625vw, 17.4px);
  }
}
.journal-post__title .en {
  letter-spacing: 0.057em;
}
.journal-post__main {
  margin: 0 auto;
  width: 100%;
  max-width: min(75vw, 960px);
}
@media only screen and (max-width: 600px) {
  .journal-post__main {
    max-width: none;
  }
}
.journal-post__heading {
  font-size: min(1.875vw, 24px);
  margin-bottom: min(7.03125vw, 90px);
}
@media only screen and (max-width: 600px) {
  .journal-post__heading {
    font-size: max(1.25vw, 13.92px);
  }
}
.journal-post__unit-title {
  font-size: min(1.875vw, 24px);
  margin-bottom: min(1.796875vw, 23px);
}
@media only screen and (max-width: 600px) {
  .journal-post__unit-title {
    font-size: max(1.25vw, 13.92px);
  }
}
.journal-post__text {
  margin-bottom: min(3.28125vw, 42px);
  font-size: min(1.40625vw, 18px);
  line-height: 1.8333333333;
  text-align: justify;
}
@media only screen and (max-width: 600px) {
  .journal-post__text {
    margin-bottom: max(2.5vw, 27.84px);
    font-size: max(1.015625vw, 11.31px);
  }
}
.journal-post__text.md {
  font-weight: 500;
  letter-spacing: 0.045em;
}
.journal-post__text.rg {
  font-weight: 400;
  letter-spacing: 0.029em;
}
.journal-post__text.rg.en {
  letter-spacing: 0.03em;
  margin-bottom: min(3.125vw, 40px);
}
.journal-post__text.caption {
  margin-top: min(1.5625vw, 20px);
  margin-bottom: 0;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
@media only screen and (max-width: 600px) {
  .journal-post__text.caption {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.journal-post__text.caption.en {
  letter-spacing: 0.058em;
}
.journal-post__text.is-mb90 {
  margin-bottom: min(7.03125vw, 90px);
}
.journal-post__images-container {
  margin-bottom: min(3.515625vw, 45px);
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 430px) {
  .journal-post__images-container {
    flex-direction: column;
    margin-bottom: max(2.734375vw, 30.45px);
    gap: max(1.25vw, 13.92px);
  }
  .journal-post__images-container:has(.caption) {
    gap: 0;
  }
}
.journal-post__images-container.is-before-text {
  margin-bottom: min(2.8125vw, 36px);
}
@media only screen and (max-width: 430px) {
  .journal-post__images-container.is-before-text {
    margin-bottom: max(2.109375vw, 23.49px);
  }
}
.journal-post__images-container.is-1 img {
  width: 100%;
  height: auto;
}
.journal-post__images-container.is-2 img {
  max-width: 48.9583%;
}
@media only screen and (max-width: 430px) {
  .journal-post__images-container.is-2 img {
    max-width: none;
    width: 100%;
  }
}
.journal-post__images-container:has(.caption) {
  flex-direction: column;
  margin-bottom: min(6.328125vw, 81px);
}
@media only screen and (max-width: 600px) {
  .journal-post__images-container:has(.caption) {
    margin-bottom: max(5vw, 55.68px);
  }
}
.journal-post__images-container:last-of-type {
  margin-bottom: 0;
}
.journal-post__swiper {
  margin-bottom: min(3.90625vw, 50px);
  width: min(74.21875vw, 950px);
  aspect-ratio: 950/533.264;
}
@media only screen and (max-width: 600px) {
  .journal-post__swiper {
    margin-bottom: max(3.125vw, 34.8px);
    width: 100%;
  }
}
.journal-post__line {
  margin-bottom: min(7.03125vw, 90px);
  width: 100%;
  height: 1px;
  border: none;
  background-color: #323333;
}

.menopause img {
  height: auto;
}
.menopause__title {
  font-size: min(2.8125vw, 36px);
}
@media only screen and (max-width: 600px) {
  .menopause__title {
    font-size: max(1.71875vw, 19.14px);
  }
}
.menopause__link {
  color: #29abe2;
  text-decoration: none;
}
body.lang-en .menopause .journal-post__header {
  margin-bottom: min(5.859375vw, 75px);
}
.menopause .journal-post__title .en {
  line-height: 1.35;
  letter-spacing: 0.028em;
}
.menopause .journal-post__text {
  letter-spacing: 0.029em;
  line-break: strict;
}
.menopause .journal-post__text.-lead {
  margin-bottom: min(6.25vw, 80px);
  font-weight: 500;
  letter-spacing: 0.028em;
}
.menopause .journal-post__text.-lead.en {
  letter-spacing: 0.032em;
}
.menopause .journal-post__text.en {
  margin-bottom: min(3.75vw, 48px);
  text-align: left;
}
.menopause .journal-post__text.subtitle {
  margin-bottom: min(1.171875vw, 15px);
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 500;
}
.menopause .journal-post__text.-study.en {
  letter-spacing: 0.025em;
}
.menopause .journal-post__heading {
  font-weight: 700;
  line-height: 1.56;
  letter-spacing: 0.05em;
  margin-bottom: min(6.328125vw, 81px);
}
.menopause .journal-post__heading.en {
  line-height: 1.55;
  letter-spacing: 0.002em;
  margin-bottom: min(6.25vw, 80px);
}
.menopause .journal-post__unit.-purpose .journal-post__unit-title {
  line-height: 1.2;
  margin-bottom: min(0.9375vw, 12px);
  letter-spacing: 0.05em;
  font-weight: 700;
}
.menopause .journal-post__unit.-purpose .journal-post__unit-title.en {
  letter-spacing: 0.05em;
}
.menopause .journal-post__unit.-purpose .journal-post__text {
  margin-bottom: 0;
}
.menopause .journal-post__unit.-oil {
  margin-bottom: min(9.765625vw, 125px);
}
.menopause .journal-post__unit.-oil .oil__name {
  font-weight: 700;
}
.menopause .journal-post__unit.-oil .oil__num {
  letter-spacing: 0.025em;
}
.menopause .journal-post__unit.-oil .journal-post__unit-title {
  line-height: 1.2;
  margin-bottom: min(1.5625vw, 20px);
  letter-spacing: 0.05em;
  font-weight: 700;
}
.menopause .journal-post__unit.-oil .journal-post__unit-title.en {
  letter-spacing: 0.05em;
}
.menopause .journal-post__unit.-oil .journal-post__text {
  margin-bottom: min(6.25vw, 80px);
}
.menopause .journal-post__unit.-result {
  margin-bottom: min(10vw, 128px);
}
.menopause .journal-post__unit.-result .journal-post__unit-title {
  line-height: 1.2;
  margin-bottom: min(6.640625vw, 85px);
  letter-spacing: 0.05em;
  font-weight: 700;
}
.menopause .journal-post__unit.-result .journal-post__unit-title.en {
  letter-spacing: 0.05em;
}
.menopause .journal-post__unit.-result .journal-post__text {
  margin-bottom: min(6.25vw, 80px);
}
.menopause .journal-post__unit.-score {
  margin-bottom: min(6.796875vw, 87px);
}
.menopause .journal-post__unit.-score .journal-post__unit-title {
  line-height: 1.2;
  margin-bottom: min(6.640625vw, 85px);
  letter-spacing: 0.05em;
  font-weight: 700;
}
.menopause .journal-post__unit.-score .journal-post__text {
  margin-bottom: min(6.25vw, 80px);
}
.menopause .data {
  display: flex;
  gap: min(2.96875vw, 38px);
}
.menopause .data__unit {
  flex: 0 0 48%;
  display: flex;
  flex-direction: column;
  gap: min(1.171875vw, 15px);
}
.menopause .data__disc {
  font-size: min(1.40625vw, 18px);
  line-height: 1.85;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .menopause .data__disc {
    font-size: max(0.9375vw, 10.44px);
  }
}
.menopause .graph {
  gap: min(6.015625vw, 77px);
}
@media only screen and (max-width: 600px) {
  .menopause .graph {
    gap: max(3.90625vw, 43.5px);
  }
}
body.lang-en .menopause .graph {
  gap: min(6.015625vw, 77px);
}
.menopause .graph__title {
  position: relative;
  top: min(-0.390625vw, -5px);
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  line-height: 1.7;
  text-align: center;
  letter-spacing: 0.03em;
}
.menopause .graph__title.en {
  font-size: min(1.5625vw, 20px);
  font-weight: 700;
  line-height: 1.79;
}
@media only screen and (max-width: 600px) {
  .menopause .graph__title.en {
    font-size: max(1.015625vw, 11.31px);
  }
}
@media only screen and (max-width: 600px) {
  .menopause .graph__title {
    font-size: max(1.015625vw, 11.31px);
  }
}
.menopause .result {
  margin-bottom: min(10.546875vw, 135px);
}
@media only screen and (max-width: 600px) {
  .menopause .result .data {
    flex-direction: column;
    gap: max(1.953125vw, 21.75px);
  }
}
.menopause .result .journal-post__unit-title {
  margin-bottom: min(7.03125vw, 90px);
}
@media only screen and (max-width: 600px) {
  .menopause .result .journal-post__unit-title {
    margin-bottom: max(3.515625vw, 39.15px);
  }
}
.menopause .result__unit {
  gap: min(6.25vw, 80px);
}
.menopause .result__text-container {
  gap: min(1.796875vw, 23px);
}
.menopause .result__text {
  position: relative;
  padding: min(0.9375vw, 12px) min(1.796875vw, 23px) min(1.09375vw, 14px) min(5.46875vw, 70px);
  background-color: #f2f2f2;
  border-radius: min(1.171875vw, 15px);
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.85;
}
.menopause .result__text.en {
  letter-spacing: 0.032em;
}
@media only screen and (max-width: 600px) {
  .menopause .result__text {
    padding: max(0.625vw, 6.96px) max(1.171875vw, 13.05px) max(0.625vw, 6.96px) max(2.734375vw, 30.45px);
    font-size: max(1.015625vw, 11.31px);
  }
}
.menopause .result__text::after {
  display: block;
  position: absolute;
  top: min(1.25vw, 16px);
  left: min(1.71875vw, 22px);
  height: min(2.109375vw, 27px);
  width: min(2.109375vw, 27px);
  background-image: url("../img/journal/menopause/check_icon.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  content: "";
}
@media only screen and (max-width: 600px) {
  .menopause .result__text::after {
    top: max(0.78125vw, 8.7px);
    left: max(0.78125vw, 8.7px);
    height: max(1.171875vw, 13.05px);
    width: max(1.171875vw, 13.05px);
  }
}
.menopause .score .data {
  margin-bottom: min(6.40625vw, 82px);
}
.menopause .score .data:last-of-type {
  margin-bottom: 0;
}
@media only screen and (max-width: 600px) {
  .menopause .score .data {
    flex-direction: column;
    margin-bottom: max(5.078125vw, 56.55px);
  }
}
.menopause .score__unit {
  gap: min(0.78125vw, 10px);
}
.menopause .score .journal-post__unit-title {
  margin-bottom: min(5.859375vw, 75px);
}
@media only screen and (max-width: 600px) {
  .menopause .score .journal-post__unit-title {
    margin-bottom: max(3.515625vw, 39.15px);
  }
}
.menopause .score .journal-post__unit-title.en {
  letter-spacing: 0.054em;
}
.menopause .score__result {
  display: flex;
  flex-direction: column;
  gap: min(2.734375vw, 35px);
}
.menopause .score__result-title {
  margin-top: min(7.8125vw, 100px);
  font-size: min(1.40625vw, 18px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 600px) {
  .menopause .score__result-title {
    margin-top: max(1.5625vw, 17.4px);
    font-size: max(1.09375vw, 12.18px);
  }
}
.menopause .score__result-text {
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  line-height: 1.83;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 600px) {
  .menopause .score__result-text {
    font-size: max(1.09375vw, 12.18px);
  }
}
.menopause .note {
  font-size: min(1.40625vw, 18px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .menopause .note {
    font-size: max(1.09375vw, 12.18px);
  }
}

.data.-first .score__result-title {
  margin-top: min(7.421875vw, 95px);
  letter-spacing: 0.125em;
}
@media only screen and (max-width: 600px) {
  .data.-first .score__result-title {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-first .score__result-title.en {
  margin-top: min(8.59375vw, 110px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .data.-first .score__result-title.en {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-first .score__result-text {
  text-align: justify;
  letter-spacing: 0.024em;
}
.data.-first .score__result-text.en {
  line-height: 1.83;
  text-align: left;
}
body.lang-en .data.-first .score__result {
  gap: 0;
}
.data.-first img {
  margin-top: min(0.390625vw, 5px);
}
.data.-second .score__result-title {
  margin-top: min(8.59375vw, 110px);
  letter-spacing: 0.026em;
}
@media only screen and (max-width: 600px) {
  .data.-second .score__result-title {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-second .score__result-title.en {
  margin-top: min(2.5vw, 32px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .data.-second .score__result-title.en {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-second .score__result-text {
  text-align: justify;
  letter-spacing: 0.024em;
}
.data.-second .score__result-text.en {
  line-height: 1.83;
  text-align: left;
}
.data.-second .graph__unit {
  margin-top: min(0.546875vw, 7px);
}
.data.-second img {
  margin-top: min(0.390625vw, 5px);
}
body.lang-en .data.-second .graph__unit {
  margin-top: min(0.546875vw, 7px);
}
body.lang-en .data.-second .score__result {
  gap: 0;
}
body.lang-en .data.-second img {
  margin-top: 0;
}
.data.-third .score__result-title {
  margin-top: min(9.765625vw, 125px);
  letter-spacing: 0.026em;
}
@media only screen and (max-width: 600px) {
  .data.-third .score__result-title {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-third .score__result-title.en {
  margin-top: min(6.25vw, 80px);
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 600px) {
  .data.-third .score__result-title.en {
    margin-top: max(0.78125vw, 8.7px);
  }
}
.data.-third .score__result-text {
  text-align: justify;
  letter-spacing: 0.024em;
}
.data.-third .score__result-text.en {
  line-height: 1.83;
  text-align: left;
}
.data.-third .graph__unit {
  margin-top: min(0.390625vw, 5px);
}
body.lang-en .data.-third .score__result {
  gap: 0;
}
.data.-third img {
  margin-top: min(0.390625vw, 5px);
}

.graph__title.score__title.en {
  font-size: min(1.40625vw, 18px);
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 600px) {
  .graph__title.score__title.en {
    font-size: max(1.015625vw, 11.31px);
  }
}

.menopause__list {
  list-style-type: none;
  margin-bottom: min(6.25vw, 80px);
  font-size: min(1.40625vw, 18px);
}
.menopause__list.en {
  margin-bottom: min(6.40625vw, 82px);
}
@media only screen and (max-width: 600px) {
  .menopause__list.en {
    margin-bottom: max(2.34375vw, 26.1px);
  }
}
@media only screen and (max-width: 600px) {
  .menopause__list {
    margin-bottom: max(2.34375vw, 26.1px);
    font-size: max(1.015625vw, 11.31px);
  }
}

.menopause__list-item {
  display: flex;
  gap: 0.7em;
  line-height: 1.85;
  letter-spacing: 0.028em;
}

.menopause__list-item::before {
  content: "-"; /* ←ここを好きな記号に変える */
}

.swell__header {
  margin-bottom: min(6.875vw, 88px);
}
@media only screen and (max-width: 600px) {
  .swell__header {
    margin-bottom: max(4.296875vw, 47.85px);
    max-width: none;
  }
}
.swell .meta {
  margin-bottom: min(4.6875vw, 60px);
}
@media only screen and (max-width: 600px) {
  .swell .meta {
    margin-bottom: max(4.296875vw, 47.85px);
  }
}
.swell__subtitle {
  margin-bottom: min(0.625vw, 8px);
  font-size: min(1.875vw, 24px);
  font-weight: 700;
  letter-spacing: 0.07em;
}
@media only screen and (max-width: 600px) {
  .swell__subtitle {
    font-size: max(1.25vw, 13.92px);
  }
}
.swell__subtitle .en {
  letter-spacing: 0.055em;
}
.swell__title {
  margin-bottom: min(2.1875vw, 28px);
  font-size: min(2.34375vw, 30px);
  line-height: 1.55;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 600px) {
  .swell__title {
    font-size: max(1.5625vw, 17.4px);
  }
}
.swell__title .en {
  letter-spacing: 0.052em;
}
.swell__lead {
  margin-bottom: min(0.625vw, 8px);
  font-size: min(1.40625vw, 18px);
  font-weight: 500;
  letter-spacing: 0.025em;
}
@media only screen and (max-width: 600px) {
  .swell__lead {
    font-size: max(1.015625vw, 11.31px);
  }
}
.swell__lead .en {
  letter-spacing: 0.027em;
}
.swell .journal-post__text {
  margin-bottom: 0;
  font-size: min(1.40625vw, 18px);
  line-height: 1.8333333333;
  text-align: justify;
}
@media only screen and (max-width: 600px) {
  .swell .journal-post__text {
    margin-bottom: 0;
    font-size: max(1.015625vw, 11.31px);
  }
}
.swell .journal-post__text.md {
  letter-spacing: 0.02em;
}
.swell .journal-post__text.rg.en {
  margin-bottom: 0;
}
.swell .journal-post__text.caption {
  letter-spacing: 0.03em;
  line-height: 1.2;
}
.swell .journal-post__images-container:has(.caption) {
  margin-bottom: min(3.515625vw, 45px);
}
.swell__img-container02 {
  margin: 0 auto;
  width: min(46.875vw, 600px);
  aspect-ratio: 6/9;
}
@media only screen and (max-width: 600px) {
  .swell__img-container02 {
    width: max(21.875vw, 243.6px);
  }
}
.swell__img-container04.journal-post__images-container {
  margin-bottom: min(3.515625vw, 45px);
}
body.lang-en .swell__img-container04.journal-post__images-container {
  margin-top: min(3.515625vw, 45px);
}
.swell__shop-info {
  margin-top: min(7.03125vw, 90px);
}
@media only screen and (max-width: 600px) {
  .swell__shop-info {
    margin-top: max(4.6875vw, 52.2px);
  }
}
.swell__shop-info a {
  color: #29abe2;
  text-decoration: none;
}

.journal-post-section {
  padding: min(2.890625vw, 37px) 0 min(2.890625vw, 37px) 0;
  line-break: strict;
}
@media only screen and (max-width: 600px) {
  .journal-post-section {
    padding: max(1.953125vw, 21.75px) 0 max(1.953125vw, 21.75px) 0;
    font-size: max(1.5625vw, 17.4px);
  }
}
.journal-post-section__title {
  margin-bottom: min(2.578125vw, 33px);
  font-size: min(2.34375vw, 30px);
  font-weight: 700;
  letter-spacing: 0.055em;
}
@media only screen and (max-width: 600px) {
  .journal-post-section__title {
    margin-bottom: max(2.5vw, 27.84px);
    font-size: max(1.5625vw, 17.4px);
  }
}
.journal-post-section__title .en {
  letter-spacing: 0.005em;
}
.journal-post-section:last-of-type {
  padding-bottom: 0;
}

.u-fw700 {
  font-weight: 700;
}

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