@font-face {
  font-weight: 400;
  src: url("../fonts/ZenKakuGothicNew-Regular.ttf") format("truetype");
  font-family: "Zen Kaku Gothic New";
  font-display: swap;
}
@font-face {
  font-weight: 500;
  src: url("../fonts/ZenKakuGothicNew-Medium.ttf") format("truetype");
  font-family: "Zen Kaku Gothic New";
  font-display: swap;
}
@font-face {
  font-weight: 700;
  src: url("../fonts/ZenKakuGothicNew-Bold.ttf") format("truetype");
  font-family: "Zen Kaku Gothic New";
  font-display: swap;
}
@font-face {
  font-weight: 400;
  src: url("../fonts/NotoSansJP-Regular.ttf") format("truetype");
  font-family: "Noto Sans JP";
  font-display: swap;
}
@font-face {
  font-weight: 500;
  src: url("../fonts/NotoSansJP-Medium.ttf") format("truetype");
  font-family: "Noto Sans JP";
  font-display: swap;
}
@font-face {
  font-weight: 700;
  src: url("../fonts/NotoSansJP-Bold.ttf") format("truetype");
  font-family: "Noto Sans JP";
  font-display: swap;
}
@font-face {
  font-weight: 400;
  src: url("../fonts/OoohBaby-Regular.ttf") format("truetype");
  font-family: "Oooh Baby";
  font-display: swap;
}
html, body {
  width: 100%;
  height: 100%;
}

body {
  background-color: #ffffff;
  color: #1B1818;
  font-style: normal;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif !important;
  word-break: break-word;
  overflow-wrap: break-word;
}
img, svg {
  display: block;
  width: 100%;
  height: auto;
}

small, button, label, picture, video {
  display: block;
}

a, button {
  width: 100%;
  max-width: 100%;
  text-decoration: none;
  cursor: pointer;
}

a:hover, a:active, button:hover, button:active {
  outline: none;
  text-decoration: none;
}

a:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px #1B1818;
}

b, strong {
  font-weight: 700;
}

input, textarea, select, optgroup {
  width: 100%;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background-color: #fff;
  -webkit-appearance: none;
          appearance: none;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit;
  vertical-align: middle;
}

button {
  border: none;
  outline: none;
  background: none;
  -webkit-appearance: none;
          appearance: none;
}

button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px #1B1818;
}

select {
  cursor: pointer;
}

input[type=radio], input[type=checkbox] {
  width: auto;
  margin: 0 5px 0 0;
}

input[type=submit] {
  text-align: center;
}

::placeholder {
  color: #C3CCD6;
}

dt {
  font-weight: 400;
}

li {
  display: block;
}

.wrapper {
  display: flex;
  position: relative;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
}

.font_italic {
  font-style: italic;
}

.font_en {
  font-family: "Oooh Baby", sans-serif !important;
}

.font_ja {
  font-family: "Noto Sans JP", sans-serif !important;
}

.font_ja_ttl {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.bold {
  font-weight: 700;
}

.visible_s {
  display: none !important;
}

.visible_m {
  display: none !important;
}

.visible_l {
  display: none !important;
}

.visible_xl {
  display: none !important;
}

.visible_xxl {
  display: none !important;
}

.visible_xxxl {
  display: none !important;
}

.inline_block {
  display: inline-block;
  max-width: 100%;
}

.pt1em {
  padding-top: 1em;
}

.pr1em {
  padding-right: 1em;
}

.pb1em {
  padding-bottom: 1em;
}

.pl1em {
  padding-left: 1em;
}

.mt1em {
  margin-top: 1em;
}

.mr1em {
  margin-right: 1em;
}

.mb1em {
  margin-bottom: 1em;
}

.ml1em {
  margin-left: 1em;
}

.txt_indent {
  padding-left: 1em;
  text-indent: -1em;
}

.txt_center {
  text-align: center;
}

.txt_center_to_m {
  text-align: center;
}

.relative_box {
  position: relative;
}

.mt_none {
  margin-top: 0 !important;
}

.space1 {
  height: 2.6666666667vw;
}

.space2 {
  height: 5.3333333333vw;
}

.space3 {
  height: 8vw;
}

.space4 {
  height: 10.6666666667vw;
}

.space5 {
  height: 13.3333333333vw;
}

.l-main {
  flex: 1;
}

.o-modal__cnt {
  z-index: 1500;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  -webkit-user-select: none;
  display: flex;
  visibility: hidden;
  align-items: center;
  justify-content: center;
  padding: 5.3333333333vw 0;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: rgba(0, 0, 0, 0.7);
  transition: opacity 0.2s;
          user-select: none;
}
.o-modal__cnt.is-active {
  opacity: 1;
  pointer-events: auto;
  -webkit-user-select: auto;
  visibility: visible;
          user-select: auto;
}
.o-modal__cnt_inner {
  z-index: 5;
  position: relative;
  aspect-ratio: 100/56.5;
  width: 89.3333333333vw;
  margin: auto;
}
.o-modal__cnt_movie iframe {
  aspect-ratio: 100/56.5;
  width: 100%;
  height: 100%;
}
.o-modal__close {
  display: block;
  position: fixed;
  top: 5.3333333333vw;
  right: 5.3333333333vw;
  aspect-ratio: 1/1;
  width: 10.6666666667vw;
}

.p-index__bg_product_ttl {
  z-index: 1;
  position: absolute;
  top: -40px;
  left: -40px;
  width: 300px;
}
.p-index__kv_wrap {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  background-image: url(../img/bg_pattern.png);
  background-position: center;
  background-size: 360px auto;
  background-color: #6F9859 !important;
}
.p-index__kv_logo {
  order: 1;
  width: 76.2666666667vw;
  padding: 8vw 0 5.3333333333vw 7.7333333333vw;
}
.p-index__kv_txt {
  order: 3;
  padding: 5.3333333333vw 8vw;
  color: #ffffff;
  font-weight: 400;
  font-size: 4.2666666667vw;
}
.p-index__kv_txt p {
  margin: 0;
  line-height: 1.7 !important;
  letter-spacing: 0.03em !important;
}
.p-index__class_movie {
  position: relative;
  padding: 16vw 8vw;
  background-color: #F9F6EC;
}
.p-index__class_movie_ttl {
  position: relative;
}
.p-index__class_movie_ttl_txt {
  z-index: 5;
  position: relative;
  color: #2F5C2F;
  font-weight: 700;
  font-size: 8vw;
  line-height: 1.2;
  text-align: center;
}
.p-index__class_movie_ttl_img {
  z-index: 1;
  position: absolute;
  top: -13.3333333333vw;
  left: 50%;
  width: 84vw;
  transform: translate3d(-50%, 0, 0);
}
.p-index__class_movie_box {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 8vw;
  gap: 8vw;
}
.p-index__class_movie_item {
  container-type: inline-size;
  position: relative;
  padding: 0;
}
.p-index__movie_play_icon {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14.9787234043cqw;
  height: auto;
  transform: translate3d(-50%, -50%, 0);
  pointer-events: none;
}
.p-index__class_intro {
  padding: 25.2vw 8vw 5.3333333333vw 8vw;
  overflow: hidden;
}
.p-index__class_band_bottom {
  position: relative;
}
.p-index__class_band_bottom_intro {
  position: relative;
  width: 100%;
  max-width: 84vw;
  margin: 0 auto 0;
  overflow: visible;
  overflow: hidden;
  color: #2F5C2F;
  font-weight: 700;
  font-size: 3.7333333333vw;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.04em;
  text-align: center;
}
.p-index__class_band_bottom_intro_char {
  display: flex;
  position: absolute;
  bottom: 0;
  left: 50%;
  align-items: flex-start;
  justify-content: center;
  width: 1.05em;
  transform: translateX(-50%) rotate(var(--arch-angle, 0deg));
  transform-origin: center bottom;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  will-change: transform;
}
.p-index__class_band_bottom_ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  color: #2F5C2F;
  font-weight: 700;
  font-size: 8vw;
  line-height: 1.2;
  text-align: center;
}
.p-index__class_ttl_bottom {
  margin-top: 5.3333333333vw;
  font-weight: 400;
  font-size: 4.2666666667vw;
}
.p-index__class_ttl_bottom p {
  margin: 0;
  line-height: 1.8 !important;
  letter-spacing: 0.03em !important;
}
.p-index__class_care {
  margin-top: 2.6666666667vw;
  font-weight: 400;
  font-size: 3.7333333333vw;
}
.p-index__class_care p {
  margin: 0;
  line-height: 1.8 !important;
  letter-spacing: 0.03em !important;
}
.p-index__class_band_bottom_ttl_bg {
  background: linear-gradient(to bottom, transparent 0%, transparent calc(100% - 2.8333333333vw), #E0E9DB calc(100% - 2.8333333333vw), #E0E9DB 100%);
}
.p-index__class_bg {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  width: 79.8666666667vw;
  transform: translate3d(-50%, -50%, 0);
}
.p-index__class_bg--recruit {
  width: 95.2vw;
}
.p-index__class_schedule {
  margin-top: 10.6666666667vw;
  border: 1px solid #97A697;
  letter-spacing: 0;
}
.p-index__class_schedule_ttl {
  padding: 4vw 0;
  background-color: #2F5C2F;
  color: #ffffff;
  font-weight: 700;
  font-size: 5.3333333333vw;
  line-height: 1.2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-align: center;
}
.p-index__schedule_list dl {
  display: grid;
  grid-template-columns: 20.6666666667vw 1fr;
}
.p-index__schedule_list dt {
  display: flex;
  grid-column: 1;
  align-items: center;
  justify-content: center;
  height: 100%;
  border-top: 1px solid #97A697;
  border-right: 1px solid #97A697;
  background-color: #E0E9DB;
  color: #2F5C2F;
  font-weight: 700;
  font-size: 4vw;
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-align: center;
}
.p-index__schedule_list dl:has(dd + dd) dt {
  grid-row: 1/span 2;
}
.p-index__schedule_list dd {
  grid-column: 2;
  padding: 4vw 6.4vw;
  border-top: 1px solid #97A697;
}
.p-index__schedule_list dd + dd {
  border-top: 1px dashed #97A697;
}
.p-index__schedule_list > li:nth-child(1) dt {
  border-top: none;
}
.p-index__schedule_list > li:nth-child(1) dd {
  border-top: none;
}
.p-index__schedule_list > li:nth-child(1) dd + dd {
  border-top: 1px dashed #97A697;
}
.p-index__schedule_class {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  gap: 2vw;
  color: #2F5C2F;
  font-weight: 700;
  font-size: 3.7333333333vw;
  line-height: 1.2;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-index__schedule_time {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: 2.6666666667vw;
  gap: 2.6666666667vw;
}
.p-index__schedule_time_icon {
  flex: 0 0 4vw;
}
.p-index__schedule_time_txt {
  font-weight: 400;
  font-size: 3.7333333333vw;
  line-height: 1.2;
}
.p-index__schedule_class_new {
  flex: 0 0 10.4vw;
}
.p-index__class_stadio {
  margin-top: 5.3333333333vw;
  padding: 4vw;
  background: rgba(224, 233, 219, 0.4);
  letter-spacing: 0;
}
.p-index__class_stadio_ttl {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding-bottom: 2.6666666667vw;
  gap: 2vw;
  border-bottom: 1px solid #597D59;
}
.p-index__class_stadio_ttl_icon {
  flex: 0 0 2.8vw;
}
.p-index__class_stadio_ttl_txt {
  color: #2F5C2F;
  font-weight: 700;
  font-size: 3.4666666667vw;
  line-height: 1.2;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-index__stadio_list {
  margin-top: 2.6666666667vw;
}
.p-index__stadio_list > li > dl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1em;
  font-size: 3.2vw;
  line-height: 1.7;
}
.p-index__stadio_list > li > dl > dt {
  color: #2F5C2F;
  font-weight: 700;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-index__stadio_list > li > dl > dd {
  font-weight: 400;
}
.p-index__class_item_list {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 8vw;
  gap: 4vw;
}
.p-index__class_item_list > li {
  position: relative;
  padding: 2.6666666667vw;
  background-color: #E0E9DB;
}
.p-index__class_item_list--lesson_bottom {
  margin-top: 16vw;
}
.p-index__class_item_new {
  position: absolute;
  top: 0;
  left: 0;
  width: 21.8666666667vw;
  transform: translate3d(-25%, -25%, 0);
}
.p-index__class_item_box {
  padding: 5.3333333333vw 4vw;
  border: 1px solid #ffffff;
}
.p-index__class_item_ttl {
  color: #2F5C2F;
  font-weight: 700;
  font-size: 6.4vw;
  line-height: 120%;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-index__class_item_detail {
  margin-top: 4vw;
  font-weight: 400;
  font-size: 3.7333333333vw;
}
.p-index__class_item_detail p {
  margin: 0;
  line-height: 1.6 !important;
  letter-spacing: 0.03em;
}
.p-index__class_wb {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 4vw;
  padding: 0 5.3333333333vw;
  gap: 0;
  background-color: #ffffff;
}
.p-index__class_wb_item {
  display: grid;
  grid-template-columns: 1fr 41.0666666667vw;
  padding: 4vw 0;
}
.p-index__class_wb_item + .p-index__class_wb_item {
  border-top: 1px solid rgba(32, 70, 55, 0.2);
}
.p-index__class_wb_icon {
  width: 11.2666666667vw;
  margin-left: 1.712vw;
}
.p-index__class_wb_icon--fee {
  width: 10.3333333333vw;
}
.p-index__class_wb_txt {
  font-weight: 400;
  font-size: 3.7333333333vw;
}
.p-index__class_wb_txt p {
  margin: 0;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.p-index__class_item_access {
  margin-top: 4vw;
  font-weight: 400;
  font-size: 3.4666666667vw;
}
.p-index__class_item_access p {
  margin: 0;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.p-index__class_recruit {
  padding: 25.2vw 8vw 0 8vw;
}
.p-index__membership_fee {
  margin-top: 10.6666666667vw;
  padding-bottom: 10.6666666667vw;
}
.p-index__membership_fee_top {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
.p-index__membership_fee_txt {
  font-weight: 700;
  font-size: 6.4vw;
  line-height: 1.2;
}
.p-index__membership_fee_band {
  padding: 0 0.25em;
  background: linear-gradient(to bottom, transparent 0%, transparent calc(100% - 2.8vw), #E0E9DB calc(100% - 2.8vw), #E0E9DB 100%);
  color: #2F5C2F;
  font-weight: 700;
  font-size: 7.2vw;
  line-height: 1.2;
}
.p-index__membership_fee_care {
  margin: 5.3333333333vw 0 0 !important;
  font-weight: 400;
  font-size: 3.7333333333vw !important;
  text-align: center;
}
.p-index__membership_fee_care p {
  margin: 0;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}
.p-index__membership_fee_care_strong {
  color: #2F5C2F;
  font-weight: 500;
  font-size: 4.8vw !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}
.p-index__voice_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4vw;
}
.p-index__voice_list > li {
  padding: 2.6666666667vw;
  background-color: #ffffff;
}
.p-index__voice_box {
  height: 100%;
  padding: 3.7333333333vw 4vw 5.3333333333vw;
  border: 1px solid #2F5C2F;
}
.p-index__voice_person {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 3.2vw;
}
.p-index__voice_icon {
  flex: 0 0 12vw;
}
.p-index__voice_name {
  margin: 0;
  color: #2F5C2F;
  font-weight: 400;
  font-size: 3.7333333333vw;
  line-height: 150%;
  letter-spacing: 0.03em;
}
.p-index__voice_detail {
  margin-top: 5.3333333333vw;
}
.p-index__voice_detail p {
  margin: 0;
  color: #2F5C2F;
  font-weight: 400;
  font-size: 3.7333333333vw;
  line-height: 150%;
  letter-spacing: 0.03em;
}
.p-index__insta {
  margin-top: 10.6666666667vw;
  padding: 13.3333333333vw 0 24vw;
  background-color: #F9F6EC;
}
.p-index__insta_feed {
  margin-top: 10.6666666667vw;
  padding: 0 16vw;
}

body {
  font-family: "Noto Sans JP", sans-serif !important;
}

.ol-font-en {
  font-family: "Noto Sans JP", sans-serif !important;
}

.ol-header {
  height: 50px;
}

.ol-header__inner {
  max-width: 1440px;
  margin: 0 auto;
}

.ol-header__nav-anchor {
  color: #1B1818 !important;
}

.ol-header__title-anchor.ol-logo-medium .ol-header__title-logo {
  width: clamp(135px, 15vw, 135px);
}

.ol-btn-small {
  padding: 0.6em 0.75em 0.6em 2.7em;
}

.ol-firstview__scroll {
  display: none;
}

.ol-firstview__image {
  padding: 0;
}

.ol-firstview__image-inner {
  border-radius: 0;
}

.ol-firstview__section {
  order: 2;
  height: 525px;
}

.ol-firstview__image-inner .ol-firstview__item, .ol-firstview__image-inner .splide__slide {
  height: 525px;
}

.ol-firstview__image-inner .ol-firstview__item video, .ol-firstview__image-inner .ol-firstview__item img, .ol-firstview__image-inner .splide__slide video, .ol-firstview__image-inner .splide__slide img {
  height: 525px;
}

.ol-btn-small--header {
  background-color: #2F5C2F !important;
  color: #ffffff !important;
  font-size: min(13.25px, 0.9201388889vw) !important;
}

.ol-button-deco-wrapper--header {
  background-color: #ffffff !important;
}
.ol-button-deco-wrapper--header::before, .ol-button-deco-wrapper--header::after {
  background-color: #2F5C2F !important;
}

.ol-product__content-subtitle {
  margin-bottom: clamp(12.5px, 1.5vw, 20px) !important;
}

.ol-product__section {
  margin-top: 0;
}
.ol-product__section::before {
  background-image: url(../img/bg_pattern.png);
  background-position: center;
  background-size: 360px auto;
  background-color: #6F9859 !important;
}

.ol-product__section--first::before {
  background-color: #ffffff !important;
}

.ol-product__inner {
  padding: 60px 0 0;
}

.ol-product__inner .ol-product__content-item {
  max-width: 1620px;
  margin: 0 auto;
  padding: 0 clamp(38.1818181818px, 5.4545454545vw, 60px) 0 clamp(76.3636363636px, 10.9090909091vw, 120px);
}

.ol-product__content-title {
  font-weight: 700;
  font-size: 22px;
  line-height: 1.4;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.ol-section {
  margin-bottom: 0;
  padding-bottom: 0;
}
.ol-section--voice {
  margin-top: 0;
  padding-top: 16vw;
  padding-bottom: 13.3333333333vw;
  background-color: #E0E9DB !important;
}

.ol-product__content-title--first {
  color: #2F5C2F !important;
  font-size: 22px;
}

.ol-text--first {
  color: #1B1818 !important;
}

.ol-product__content {
  margin-left: 0;
  padding-right: 0;
  background-color: transparent !important;
}

.ol-product__morebtn {
  justify-content: flex-start;
}

.ol-product__content--first {
  background-color: transparent !important;
}

.ol-btn-regular--first {
  position: relative;
  width: 200px;
  padding: 14px 46px;
  background-color: #2F5C2F !important;
  font-size: 16px;
  white-space: nowrap;
}

.ol-button-deco-wrapper--first {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 32.5px;
  height: 32.5px;
  transform: translate3d(0, -50%, 0);
  background-color: #ffffff !important;
}
.ol-button-deco-wrapper--first::before, .ol-button-deco-wrapper--first::after {
  background-color: #2F5C2F !important;
}

.ol-product__mainimage .ol-product-image1-shortcut, .ol-product__mainimage img {
  border-radius: min(597px, 41.4583333333vw) min(597px, 41.4583333333vw) 0 0;
}

.ol-product__content-subtitle {
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
}

.ol-product__inner .ol-text {
  font-size: 4.2666666667vw;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.ol-product__content-title-wrapper {
  position: relative;
  margin-bottom: clamp(37.5px, 4.5vw, 60px);
}

.ol-banner__section {
  max-width: 889px;
}

.ol-banner__inner {
  margin-bottom: 0;
}

.ol-footer {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 clamp(15.2727272727px, 2.1818181818vw, 24px);
}

.ol-footer__section::before {
  background-image: url(../img/bg_pattern.png);
  background-position: center;
  background-size: 360px auto;
  background-color: #6F9859 !important;
}
.ol-footer__section--top {
  margin-top: 0 !important;
}

.ol-footer__copyright {
  font-size: clamp(0.75rem, 1.0416666667vw, 15px);
  line-height: 1.2;
}

.ol-footer__inner {
  padding-top: clamp(48px, 6.6vw, 60px);
  padding-bottom: clamp(12.8px, 1.76vw, 16px);
}

.ol-contact__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 min(70px, 4.8611111111vw);
}

.ol-contact__content {
  padding: clamp(51.8095238095px, 4.8571428571vw, 68px) clamp(45.7142857143px, 4.2857142857vw, 60px);
  background-color: #ffffff !important;
  color: #ffffff !important;
}

.ol-contact__heading-sub {
  color: #2F5C2F !important;
  font-weight: 500;
  font-size: 25px;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.ol-heading-contact-desc {
  color: #2F5C2F !important;
  font-weight: 500;
  font-size: 15px;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.ol-contact__heading-wrapper-inner {
  margin-bottom: clamp(30.4px, 4.18vw, 38px);
}

.ol-contact__phone_subtext {
  color: #2F5C2F !important;
  font-weight: 500;
  font-size: 15px;
}

.ol-contact__mail .ol-button-deco-wrapper .ol-button-deco-before {
  background-color: #2F5C2F !important;
}

.ol-product__section {
  padding-top: 0;
}

.ol-product__inner .ol-product__content-item + .ol-product__content-item {
  margin-top: 60px;
}

.ol-access__inner {
  max-width: 1200px;
  padding: 0 min(120px, 8.3333333333vw);
}

.ol-access__info-item {
  padding: clamp(37.5px, 4.5vw, 60px) 0;
}

.ol-access__info-item dt {
  color: #2F5C2F !important;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}

.ol-access__info-item-text .ol-list-text {
  color: #2F5C2F !important;
  font-size: 14px;
  line-height: 2.21;
  letter-spacing: 0.17em;
}

.ol-access__map iframe {
  width: 100%;
  height: 400px;
}

.ol-heading-wrapper {
  position: relative;
}

.ol-heading-custom-medium .ol-heading {
  z-index: 2;
  position: relative;
  color: #2F5C2F !important;
  font-weight: 700 !important;
  font-size: 22px;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
}

#olNews {
  position: relative;
  background-color: #ffffff;
}

.ol-news__section {
  max-width: 1200px;
  margin: 0 auto !important;
  padding: 60px clamp(27px, 6vw, 36px);
}

.ol-archive__body {
  max-width: 1200px;
  margin: 0 auto !important;
  padding: clamp(84px, 9vw, 105px) clamp(27px, 6vw, 36px) 60px;
}

.ol-breadcrumb__wrapper {
  max-width: 1200px;
  margin: 0 auto clamp(84px, 9vw, 105px) !important;
}

.ol-btn-regular--product {
  width: auto;
  padding: 14px 69px 14px 46px;
  background-color: #ffffff !important;
  color: #2F5C2F !important;
  font-size: 16px;
  white-space: nowrap;
}

.ol-btn-regular--product .ol-button-deco-wrapper--product {
  position: absolute;
  top: 50%;
  right: 12px;
  column-gap: 9.21px;
  width: 32.5px;
  height: 32.5px;
  padding-right: 9.21px;
  overflow: hidden;
  transform: translate3d(0, -50%, 0);
  background-color: #2F5C2F !important;
  color: #ffffff !important;
}
.ol-btn-regular--product .ol-button-deco-wrapper--product::before, .ol-btn-regular--product .ol-button-deco-wrapper--product::after {
  display: none;
}
.ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-before,
.ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-after {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 14.08px;
  height: 14.08px;
  transition: transform 0.24s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}
.ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-before {
  background-color: #ffffff !important;
  clip-path: polygon(49% 8%, 54% 8%, 100% 50%, 54% 92%, 49% 92%, 91% 52%, 0 52%, 0 48%, 91% 48%);
}
.ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-after {
  background-color: transparent !important;
  color: #ffffff !important;
  font-size: 14.08px;
  line-height: 1;
  clip-path: none;
}
.ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-after i {
  margin: 0;
  font-size: inherit;
}

.ol-heading-sub {
  display: none;
}

.ol-news__tab-list {
  background-color: #E0E9DB;
}

.ol-news__body.ol-news__category-on {
  transition: height 0.35s ease;
}

.ol-news__nav-item-anchor, .ol-category__item-anchor {
  background-color: #C6DBBA !important;
  color: #2F5C2F !important;
}
.ol-news__nav-item-anchor.is-active, .ol-category__item-anchor.is-active {
  background-color: #2F5C2F !important;
  color: #ffffff !important;
}

.ol-news__meta {
  color: #2F5C2F !important;
}

.ol-news__category {
  background-color: #E0E9DB !important;
  color: #2F5C2F !important;
  font-weight: 500;
  font-size: min(12.15px, 0.84375vw);
  letter-spacing: 0.15em;
}

.ol-news__meta time {
  width: auto;
  font-weight: 500;
  font-size: min(14.38px, 0.9986111111vw);
}

.ol-news__item .ol-news__title {
  color: #2F5C2F !important;
  font-weight: 400;
}

.ol-news__item-item {
  column-gap: 0;
}

.ol-list-border {
  border-color: #2F5C2F !important;
}

.ol-news__morebtn .ol-btn-regular {
  position: relative;
  width: auto;
  padding: 14px 69px 14px 46px;
  background-color: #2F5C2F !important;
  color: #ffffff !important;
  font-size: 16px;
  white-space: nowrap;
}
.ol-news__morebtn .ol-button-deco-wrapper {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 32.5px;
  height: 32.5px;
  transform: translate3d(0, -50%, 0);
  background-color: #ffffff !important;
}
.ol-news__morebtn .ol-button-deco-wrapper::before, .ol-news__morebtn .ol-button-deco-wrapper::after {
  background-color: #2F5C2F !important;
}

.ol-article__category {
  width: auto;
}

.ol-footer__copyright-name {
  margin: 0;
}

#sbi_images {
  padding: 0 !important;
  gap: 2.8666666667vw;
}

#ol-section-access {
  margin-top: 0 !important;
  padding-top: 60px !important;
}
.ol-contact__content-wrapper {
  padding: 0;
}
@media (min-width: 391px) {
  .visible_to_xs {
    display: none !important;
  }
}
@media (min-width: 751px) {
  .visible_to_s {
    display: none !important;
  }
  .visible_s {
    display: block !important;
  }
}
@media (any-hover: hover) and (min-width: 768px) {
  .ol-btn-regular--product:hover .ol-button-deco-wrapper--product .ol-button-deco-before,
  .ol-btn-regular--product:hover .ol-button-deco-wrapper--product .ol-button-deco-after {
    transform: translateX(min(23.29px, 1.6173611111vw));
  }
}
@media (min-width: 768px) {
  a:hover, a:active, button:hover, button:active {
    opacity: 0.3;
    transition: 0.4s;
  }
  .visible_to_m {
    display: none !important;
  }
  .visible_m {
    display: block !important;
  }
  .txt_center_to_m {
    text-align: left;
  }
  .space1 {
    height: min(20px, 1.3888888889vw);
  }
  .space2 {
    height: min(40px, 2.7777777778vw);
  }
  .space3 {
    height: min(60px, 4.1666666667vw);
  }
  .space4 {
    height: min(80px, 5.5555555556vw);
  }
  .space5 {
    height: min(100px, 6.9444444444vw);
  }
  .o-modal__cnt {
    padding: min(60px, 4.1666666667vw) 0;
  }
  .o-modal__cnt_inner {
    width: auto;
    height: min(537px, 37.2916666667vw);
    max-height: 66.6253101737vh;
  }
  .o-modal__close {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    height: min(60px, 4.1666666667vw);
    max-height: 7.4441687345vh;
    transform: translate3d(300%, -173.3333333333%, 0);
  }
  .p-index__bg_product_ttl {
    top: max(-80px, -5.5555555556vw);
    left: max(-80px, -5.5555555556vw);
    width: min(600px, 41.6666666667vw);
  }
  .p-index__kv_logo {
    position: absolute;
    top: min(78px, 5.4166666667vw);
    left: 50%;
    width: min(538px, 37.3611111111vw);
    padding: 0;
    transform: translate3d(max(-600px, -41.6666666667vw), 0, 0);
  }
  .p-index__kv_txt {
    order: 1;
    max-width: min(1440px, 100vw);
    margin: 0 auto;
    padding: min(95px, 6.5972222222vw) min(110px, 7.6388888889vw) min(78px, 5.4166666667vw) min(730px, 50.6944444444vw);
    font-size: min(18px, 1.25vw);
  }
  .p-index__class_movie {
    padding: min(100px, 6.9444444444vw) 0 min(120px, 8.3333333333vw);
  }
  .p-index__class_movie_inner {
    max-width: min(1200px, 83.3333333333vw);
    margin: 0 auto;
  }
  .p-index__class_movie_ttl_txt {
    font-size: min(48px, 3.3333333333vw);
  }
  .p-index__class_movie_ttl_img {
    top: max(-100px, -6.9444444444vw);
    width: min(600px, 41.6666666667vw);
  }
  .p-index__class_movie_box {
    grid-template-columns: 1fr 1fr;
    max-width: min(1200px, 83.3333333333vw);
    margin: min(50px, 3.4722222222vw) auto 0;
    gap: min(25px, 1.7361111111vw);
  }
  .p-index__class_intro {
    padding: 0;
  }
  .p-index__class_intro_inner {
    max-width: min(1440px, 100vw);
    margin: 0 auto;
    padding: min(160px, 11.1111111111vw) min(120px, 8.3333333333vw) min(40px, 2.7777777778vw);
  }
  .p-index__class_band_bottom_intro {
    max-width: min(720px, 50vw);
    margin-bottom: 0;
    font-size: min(24px, 1.6666666667vw);
    letter-spacing: 0;
  }
  .p-index__class_band_bottom_intro_char {
    width: 0.98em;
  }
  .p-index__class_band_bottom_ttl {
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    font-size: min(48px, 3.3333333333vw);
  }
  .p-index__class_ttl_bottom {
    max-width: min(950px, 65.9722222222vw);
    margin: min(34px, 2.3611111111vw) auto 0;
    font-size: min(18px, 1.25vw);
  }
  .p-index__class_care {
    max-width: min(950px, 65.9722222222vw);
    margin: min(16px, 1.1111111111vw) auto 0;
    font-size: min(14px, 0.9722222222vw);
  }
  .p-index__class_band_bottom_ttl_bg {
    background: linear-gradient(to bottom, transparent 0%, transparent calc(100% - min(17px, 1.1805555556vw)), #E0E9DB calc(100% - min(17px, 1.1805555556vw)), #E0E9DB 100%);
  }
  .p-index__class_bg {
    width: min(599px, 41.5972222222vw);
    transform: translate3d(min(140px, 9.7222222222vw), max(-60px, -4.1666666667vw), 0);
  }
  .p-index__class_bg--recruit {
    width: min(714px, 49.5833333333vw);
    transform: translate3d(max(-780px, -54.1666666667vw), max(-40px, -2.7777777778vw), 0);
  }
  .p-index__class_schedule {
    max-width: min(800px, 55.5555555556vw);
    margin: 0 auto;
    margin-top: min(60px, 4.1666666667vw);
  }
  .p-index__class_schedule_ttl {
    padding: min(20px, 1.3888888889vw) 0;
    font-size: min(26px, 1.8055555556vw);
  }
  .p-index__schedule_list dl {
    grid-template-columns: min(216px, 15vw) 1fr;
  }
  .p-index__schedule_list dt {
    font-size: min(24px, 1.6666666667vw);
  }
  .p-index__schedule_list dd {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0;
  }
  .p-index__schedule_class {
    flex: 0 0 min(275px, 19.0972222222vw);
    padding: min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(40px, 2.7777777778vw);
    gap: min(9px, 0.625vw);
    border-right: 1px solid #97A697;
    font-size: min(20px, 1.3888888889vw);
  }
  .p-index__schedule_time {
    flex: 0 0 min(309px, 21.4583333333vw);
    margin-top: 0;
    padding: min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(40px, 2.7777777778vw);
    gap: min(9px, 0.625vw);
  }
  .p-index__schedule_time_icon {
    flex: 0 0 min(20px, 1.3888888889vw);
  }
  .p-index__schedule_time_txt {
    font-size: min(20px, 1.3888888889vw);
  }
  .p-index__schedule_class_new {
    flex: 0 0 min(65px, 4.5138888889vw);
  }
  .p-index__class_stadio {
    display: flex;
    width: 100%;
    max-width: min(800px, 55.5555555556vw);
    margin: min(20px, 1.3888888889vw) auto 0;
    padding: min(15px, 1.0416666667vw) min(58px, 4.0277777778vw);
  }
  .p-index__class_stadio_ttl {
    flex: 0 0 min(157px, 10.9027777778vw);
    align-items: center;
    padding-bottom: 0;
    gap: min(10px, 0.6944444444vw);
    border-right: 1px solid #597D59;
    border-bottom: none;
  }
  .p-index__class_stadio_ttl_icon {
    flex: 0 0 min(16px, 1.1111111111vw);
  }
  .p-index__class_stadio_ttl_txt {
    font-size: min(18px, 1.25vw);
  }
  .p-index__stadio_list {
    margin-top: 0;
    padding-left: min(40px, 2.7777777778vw);
  }
  .p-index__stadio_list > li > dl {
    font-size: min(16px, 1.1111111111vw);
  }
  .p-index__class_item_list {
    grid-template-columns: min(380px, 26.3888888889vw) min(380px, 26.3888888889vw) min(380px, 26.3888888889vw);
    column-gap: min(30px, 2.0833333333vw);
    row-gap: 0;
    margin-top: min(40px, 2.7777777778vw);
  }
  .p-index__class_item_list > li {
    display: grid;
    position: relative;
    grid-template-rows: subgrid;
    grid-row: span 4;
    padding: min(10px, 0.6944444444vw) min(30px, 2.0833333333vw) min(30px, 2.0833333333vw);
  }
  .p-index__class_item_list > li::before {
    z-index: 0;
    position: absolute;
    inset: min(10px, 0.6944444444vw);
    border: 1px solid #ffffff;
    content: "";
    pointer-events: none;
  }
  .p-index__class_item_list--lesson_bottom {
    margin-top: min(120px, 8.3333333333vw);
  }
  .p-index__class_item_new {
    width: min(109px, 7.5694444444vw);
    transform: translate3d(max(-21px, -1.4583333333vw), max(-28px, -1.9444444444vw), 0);
  }
  .p-index__class_item_box {
    display: contents;
  }
  .p-index__class_item_ttl {
    display: flex;
    z-index: 1;
    position: relative;
    align-items: center;
    justify-content: center;
    padding: min(17px, 1.1805555556vw) 0 0;
    font-size: min(32px, 2.2222222222vw);
  }
  .p-index__class_item_ttl--row2 {
    font-size: min(30px, 2.0833333333vw);
  }
  .p-index__class_item_detail {
    z-index: 1;
    position: relative;
    align-self: start;
    width: 100%;
    margin-top: min(16px, 1.1111111111vw);
    font-size: min(16px, 1.1111111111vw);
  }
  .p-index__class_wb {
    z-index: 1;
    position: relative;
    align-self: start;
    width: 100%;
    margin-top: min(20px, 1.3888888889vw);
    padding: 0 min(20px, 1.3888888889vw);
  }
  .p-index__class_wb_item {
    grid-template-columns: 1fr min(198px, 13.75vw);
    padding: min(15px, 1.0416666667vw) 0;
  }
  .p-index__class_wb_icon {
    width: min(51px, 3.5416666667vw);
    margin-left: min(10px, 0.6944444444vw);
  }
  .p-index__class_wb_icon--fee {
    width: min(47px, 3.2638888889vw);
  }
  .p-index__class_wb_txt {
    font-size: min(16px, 1.1111111111vw);
  }
  .p-index__class_item_access {
    z-index: 1;
    position: relative;
    align-self: start;
    width: 100%;
    margin-top: min(20px, 1.3888888889vw);
    font-size: min(14px, 0.9722222222vw);
  }
  .p-index__class_recruit {
    padding: 0;
  }
  .p-index__membership_fee {
    margin-top: min(60px, 4.1666666667vw);
    padding-bottom: min(160px, 11.1111111111vw);
  }
  .p-index__membership_fee_top {
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;
  }
  .p-index__membership_fee_txt {
    font-size: min(30px, 2.0833333333vw);
  }
  .p-index__membership_fee_band {
    background: linear-gradient(to bottom, transparent 0%, transparent calc(100% - min(17px, 1.1805555556vw)), #E0E9DB calc(100% - min(17px, 1.1805555556vw)), #E0E9DB 100%);
    font-size: min(34px, 2.3611111111vw);
  }
  .p-index__membership_fee_care {
    margin: min(6px, 0.4166666667vw) 0 0 !important;
    font-size: min(20px, 1.3888888889vw) !important;
  }
  .p-index__membership_fee_care p {
    line-height: 1.7 !important;
  }
  .p-index__membership_fee_care_strong {
    font-size: min(26px, 1.8055555556vw) !important;
    line-height: 1.7 !important;
  }
  .p-index__voice_list {
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(30px, 2.0833333333vw);
  }
  .p-index__voice_list > li {
    padding: min(10px, 0.6944444444vw);
  }
  .p-index__voice_box {
    padding: min(30px, 2.0833333333vw) min(34px, 2.3611111111vw);
  }
  .p-index__voice_person {
    gap: min(15px, 1.0416666667vw);
  }
  .p-index__voice_icon {
    flex: 0 0 min(50px, 3.4722222222vw);
  }
  .p-index__voice_name {
    font-size: min(16.24px, 1.1277777778vw);
  }
  .p-index__voice_detail {
    margin-top: min(20px, 1.3888888889vw);
  }
  .p-index__voice_detail p {
    font-size: min(16px, 1.1111111111vw);
  }
  .p-index__insta {
    margin-top: min(120px, 8.3333333333vw);
    padding: min(100px, 6.9444444444vw) 0 min(180px, 12.5vw);
  }
  .p-index__insta_feed {
    max-width: min(1140px, 79.1666666667vw);
    margin: min(80px, 5.5555555556vw) auto 0;
    padding: 0;
  }
  .ol-product__inner {
    padding: min(150px, 10.4166666667vw) 0 0;
  }
  .ol-product__content-title {
    font-size: min(40px, 2.7777777778vw);
  }
  .ol-section--voice {
    margin-top: min(120px, 8.3333333333vw);
    padding: min(120px, 8.3333333333vw) 0;
  }
  .ol-product__content-title--first {
    font-size: min(50px, 3.4722222222vw);
  }
  .ol-product__content {
    width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
  }
  .ol-btn-regular--first {
    width: min(200px, 13.8888888889vw);
    padding: min(14px, 0.9722222222vw) min(46px, 3.1944444444vw);
    font-size: min(15.25px, 1.0590277778vw);
  }
  .ol-button-deco-wrapper--first {
    right: min(12px, 0.8333333333vw);
    width: min(32.5px, 2.2569444444vw);
    height: min(32.5px, 2.2569444444vw);
  }
  .ol-product__content-subtitle {
    font-size: clamp(0.84375rem, 1.3888888889vw, 20px);
  }
  .ol-product__inner .ol-text {
    font-size: min(18px, 1.25vw);
  }
  .ol-footer__copyright {
    margin-left: auto;
  }
  .ol-contact__heading-sub {
    font-size: min(25px, 1.7361111111vw);
  }
  .ol-heading-contact-desc {
    font-size: min(15px, 1.0416666667vw);
  }
  .ol-contact__phone_subtext {
    font-size: min(15px, 1.0416666667vw);
  }
  .ol-product__inner .ol-product__content-item + .ol-product__content-item {
    margin-top: min(130px, 9.0277777778vw);
  }
  .ol-access__info-item dt {
    font-size: min(16.62px, 1.1541666667vw);
  }
  .ol-access__info-item-text .ol-list-text {
    font-size: min(14px, 0.9722222222vw);
  }
  .ol-access__map iframe {
    height: min(600px, 41.6666666667vw);
  }
  .ol-heading-custom-medium .ol-heading {
    font-size: min(48.33px, 3.35625vw);
  }
  .ol-news__section {
    padding: min(180px, 12.5vw) min(120px, 8.3333333333vw) min(120px, 8.3333333333vw);
  }
  .ol-archive__body {
    padding: clamp(84px, 9vw, 105px) min(120px, 8.3333333333vw) min(120px, 8.3333333333vw);
  }
  .ol-breadcrumb__wrapper {
    margin: 0 auto clamp(105px, 8.4vw, 210px) !important;
  }
  .ol-btn-regular--product {
    width: min(308px, 21.3888888889vw);
    padding: min(14px, 0.9722222222vw) min(46px, 3.1944444444vw);
    font-size: min(15.25px, 1.0590277778vw);
  }
  .ol-btn-regular--product .ol-button-deco-wrapper--product {
    right: min(12px, 0.8333333333vw);
    column-gap: min(9.21px, 0.6395833333vw);
    width: min(32.5px, 2.2569444444vw);
    height: min(32.5px, 2.2569444444vw);
    padding-right: min(9.21px, 0.6395833333vw);
  }
  .ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-before,
  .ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-after {
    width: min(14.08px, 0.9777777778vw);
    height: min(14.08px, 0.9777777778vw);
  }
  .ol-btn-regular--product .ol-button-deco-wrapper--product .ol-button-deco-after {
    font-size: min(14.08px, 0.9777777778vw);
  }
  .ol-news__morebtn .ol-btn-regular {
    width: min(200px, 13.8888888889vw);
    padding: min(14px, 0.9722222222vw) min(46px, 3.1944444444vw);
    font-size: min(15.25px, 1.0590277778vw);
  }
  .ol-news__morebtn .ol-button-deco-wrapper {
    right: min(12px, 0.8333333333vw);
    width: min(32.5px, 2.2569444444vw);
    height: min(32.5px, 2.2569444444vw);
  }
  #sbi_images {
    gap: min(30px, 2.0833333333vw);
  }
  #ol-section-access {
    padding-top: min(180px, 12.5vw) !important;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .p-index__class_recruit_inner {
    max-width: min(1440px, 100vw);
    margin: 0 auto;
    padding: min(160px, 11.1111111111vw) min(120px, 8.3333333333vw) min(40px, 2.7777777778vw);
  }
}
@media (min-width: 841px) {
  .ol-product__inner .ol-product__content-item {
    padding: 0 min(60px, 4.1666666667vw) min(64px, 4.4444444444vw) min(120px, 8.3333333333vw);
  }
  .ol-header {
    height: clamp(6.3rem, 6vw, min(100px, 6.9444444444vw));
  }
  .ol-header__inner {
    padding: 0 min(67px, 4.6527777778vw) 0 min(32px, 2.2222222222vw);
  }
  .ol-header__nav-list {
    column-gap: clamp(30px, 2.25vw, 60px);
    font-size: min(13.25px, 0.9201388889vw) !important;
  }
  .ol-contact-mail-text {
    font-size: min(13.25px, 0.9201388889vw) !important;
  }
  .ol-product__mainimage .ol-product-image1-shortcut,
  .ol-product__mainimage img {
    width: min(597px, 41.4583333333vw);
    height: min(min(795px, 55.2083333333vw), 100svh - 7.5rem);
    object-fit: cover;
  }
  .ol-product__content {
    width: min(545px, 37.8472222222vw) !important;
    min-width: 0 !important;
    max-width: min(545px, 37.8472222222vw);
    min-height: min(min(795px, 55.2083333333vw), 100svh - 7.5rem) !important;
  }
  .ol-windows-view .ol-product__content {
    width: min(545px, 37.8472222222vw) !important;
    min-width: 0 !important;
    max-width: min(545px, 37.8472222222vw);
    min-height: min(min(795px, 55.2083333333vw), 100svh - 7.5rem) !important;
  }
  .ol-button-deco-wrapper--header {
    column-gap: min(7.76px, 0.5388888889vw) !important;
    width: min(25px, 1.7361111111vw) !important;
    height: min(25px, 1.7361111111vw) !important;
    padding-right: min(6.9px, 0.4791666667vw) !important;
  }
  .ol-button-deco-wrapper--header::before, .ol-button-deco-wrapper--header::after {
    width: min(10.78px, 0.7486111111vw) !important;
    height: min(10.78px, 0.7486111111vw) !important;
  }
  .ol-btn-small--header:hover .ol-button-deco-wrapper--header::before, .ol-btn-small--header:hover .ol-button-deco-wrapper--header::after {
    transform: translateX(min(18.89px, 1.3118055556vw));
  }
  .ol-news__title {
    font-size: min(14.38px, 0.9986111111vw);
  }
  .ol-news__meta {
    flex-basis: 32.16%;
    max-width: none;
  }
}
@media (min-width: 1025px) {
  .visible_to_l {
    display: none !important;
  }
  .visible_l {
    display: block !important;
  }
}
@media (min-width: 1280px) {
  .visible_to_xl {
    display: none !important;
  }
  .visible_xl {
    display: block !important;
  }
}
@media (min-width: 1441px) {
  .visible_to_xxl {
    display: none !important;
  }
  .visible_xxl {
    display: block !important;
  }
}
@media (min-width: 1513px) {
  .visible_to_xxxl {
    display: none !important;
  }
  .visible_xxxl {
    display: block !important;
  }
}
@media (max-width: 840px) {
  .ol-hamburger__menu-icon .ol-hamburger__menu-icon-inner {
    width: 21px;
  }
  .ol-hamburger__menu-icon span:nth-of-type(2), .ol-hamburger__menu-icon span:nth-of-type(3) {
    margin-top: 4.5px;
  }
  .ol-access__info-item:nth-child(1) .ol-access__info-item-text {
    row-gap: 0;
  }
  .ol-product__mainimage.ol-product__mainimage-only .ol-product-image1-shortcut, .ol-product__mainimage.ol-product__mainimage-only img {
    border-bottom-right-radius: 0;
  }
  .ol-access__info-item dt {
    width: 32vw;
  }
  .ol-news__meta time {
    font-size: clamp(0.84375rem, 0.84375rem + 0vw, 0.84375rem);
  }
  .ol-news__category {
    font-size: clamp(0.6875rem, 0.6875rem + 0vw, 0.6875rem);
  }
  .ol-product__mainimage {
    justify-content: center;
  }
}
@media (max-width: 640px) {
  .ol-header__title-anchor.ol-logo-medium .ol-header__title-logo {
    width: 77px;
  }
  .ol-firstview__section {
    height: 46.1333333333vw;
  }
  .ol-firstview__image-inner .ol-firstview__item, .ol-firstview__image-inner .splide__slide {
    height: 46.1333333333vw;
  }
  .ol-firstview__image-inner .ol-firstview__item video, .ol-firstview__image-inner .ol-firstview__item img, .ol-firstview__image-inner .splide__slide video, .ol-firstview__image-inner .splide__slide img {
    height: 46.1333333333vw;
  }
  .ol-banner__section {
    padding: 0 clamp(22.5px, 5vw, 30px);
  }
  .ol-product__inner .ol-product__content-item {
    max-width: 1620px;
    margin: 0 auto;
    padding: 0 clamp(42px, 6vw, 66px);
  }
  .ol-access__inner {
    padding: 0 clamp(27px, 6vw, 36px);
  }
}
@media (any-hover: hover) {
  .ol-btn-regular--product:hover .ol-button-deco-wrapper--product .ol-button-deco-before,
  .ol-btn-regular--product:hover .ol-button-deco-wrapper--product .ol-button-deco-after {
    transform: translateX(23.29px);
  }
}