@charset "UTF-8";
/*
  https://github.com/andy-piccalilli/modern-css-reset/blob/master/LICENSE
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

body {
  min-height: 100vh;
  text-rendering: optimizespeed;
  line-height: var(--line-height);
}

a:not([class]) {
  text-decoration-skip-ink: initial;
}

img,
picture {
  max-width: 100%;
  height: auto;
}

picture {
  display: flex;
}

iframe {
  border: 0;
  max-width: 100%;
  vertical-align: bottom;
}

input,
button,
textarea,
select {
  font: inherit;
}

html {
  --header-height: 0;
  font-size: 62.5%;
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
}
html.is-menu-open {
  overflow: hidden;
}

body {
  background-color: var(--COLOR_WHITE);
  font-family: var(--FONT_FAMILY_PRIMARY);
  font-size: var(--FONT_SIZE);
  font-weight: var(--FONT_WEIGHT);
  line-height: var(--FONT_LINE_HEIGHT);
  color: var(--COLOR_FONT);
  text-size-adjust: 100%;
}
body.is-fixed {
  overflow: hidden;
}

html:lang(zh-Hans) body {
  font-family: "Noto Sans SC", sans-serif;
}

html:lang(zh-Hant) body {
  font-family: "Noto Sans TC", sans-serif;
}

main {
  margin-top: 0;
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
/* h1 + *, h2 + *, h3 + *, h4 + *, h5 + *, h6 + * {
  margin-top: 0 !important;
} */

ol:where([class]), ul:where([class]), li {
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
}

p {
  margin-top: 16px;
}

em {
  font-style: normal;
  font-weight: var(--FONT_WEIGHT_BOLD);
}

a {
  color: var(--COLOR_FONT);
  text-decoration: none;
}

img {
  vertical-align: bottom;
}

/* * > :first-child {
  margin-top: 0;
}
* > :last-child {
  margin-bottom: 0;
} */

@media (width <= 768px) {
  h1, h2, h3, h4, h5, h6 {
    line-height: var(--FONT_LINE_HEIGHT_XS);
  }
}
:root {
  --COLOR_PRIMARY: #E00000;
  --COLOR_PRIMARY_LIGHT: #FDF0F0;
  --COLOR_GRAY_LIGHT: #F5F5F5;
  --COLOR_GRAY: #D5D8D9;
  --COLOR_GRAY_DARK: #BFBFBF;
  --COLOR_WHITE: #FFF;
  --COLOR_BLACK: #1A1A1A;
  --COLOR_FONT: var(--COLOR_BLACK);
  --COLOR_SHADOW: 76 76 77;
  --COLOR_SKIN_TROUBLE_ACCENT: #FF884C;
  --COLOR_SKIN_TROUBLE_SECONDARY: #FFD6C2;
  --COLOR_SKIN_TROUBLE_BG: #FFF2EB;
  --COLOR_SKIN_TROUBLE_TEXT: #FF6D24;
  --COLOR_BABY_CHILD_ACCENT: #FF8080;
  --COLOR_BABY_CHILD_SECONDARY: #FFD6D6;
  --COLOR_BABY_CHILD_BG: #FFF2F2;
  --COLOR_BABY_CHILD_TEXT: #F66;
  --COLOR_INSECT_BITE_ACCENT: #29BD96;
  --COLOR_INSECT_BITE_SECONDARY: #AFE6D7;
  --COLOR_INSECT_BITE_BG: #E9F5F2;
  --COLOR_INSECT_BITE_TEXT: #24A381;
  --FONT_SIZE_XS: 1.2rem;
  --FONT_SIZE_SM: 1.4rem;
  --FONT_SIZE: 1.6rem;
  --FONT_SIZE_MD: 1.8rem;
  --FONT_SIZE_LG: 2rem;
  --FONT_SIZE_2LG: 2.2rem;
  --FONT_SIZE_3LG: 2.4rem;
  --FONT_SIZE_4LG: 2.8rem;
  --FONT_SIZE_XL: 3.4rem;
  --FONT_SIZE_2XL: 3.6rem;
  --FONT_LINE_HEIGHT_XS: 1.4;
  --FONT_LINE_HEIGHT_SM: 1.6;
  --FONT_LINE_HEIGHT: 1.8;
  --FONT_WEIGHT: 400;
  --FONT_WEIGHT_MEDIUM: 500;
  --FONT_WEIGHT_BOLD: 700;
  --FONT_FAMILY_PRIMARY: "Noto Sans JP", sans-serif;
  --FONT_FAMILY_SECONDARY: "Poppins", sans-serif;
  --WIDTH_CONTENT: 1200px;
  --WIDTH_HEADER_CONTENT: 1440px;
  --GUTTER_CONTENT_SM: 32px;
  --GUTTER_CONTENT: 20px;
  --BORDER_RADIUS_SM: 4px;
  --BORDER_RADIUS: 8px;
  --FILTER_COLOR_PRIMARY: invert(16%) sepia(96%) saturate(4174%) hue-rotate(2deg) brightness(80%) contrast(129%);
  --FILTER_COLOR_WHITE: brightness(0) invert(1);
  --TRANSITION: .3s ease;
  --HOVER: .4;
  --ANIMATION_ARROW_BEZIER: cubic-bezier(.55, .05, .22, .99);
  --ANIMATION_ARROW: .6s var(--ANIMATION_ARROW_BEZIER) both;
  --JS_SPLIDE_SLIDE_LENGTH: 0;
  --JS_SPLIDE_SLIDE_ACTIVE: 0;
}

/* animations
----------------------------------------------- */
@keyframes hover-flow {
  75% {
    translate: 90%;
  }
  85% {
    translate: -90%;
    opacity: 0;
  }
  100% {
    translate: 0;
  }
}
@keyframes hover-flow-reverse {
  75% {
    translate: -90%;
  }
  85% {
    translate: 90%;
    opacity: 0;
  }
  100% {
    translate: 0;
  }
}
@keyframes carousel-pagination-forward-01 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(100%, 0);
  }
}
@keyframes carousel-pagination-forward-02 {
  0% {
    transform: translate(-100%, 0);
  }
  100% {
    transform: translate(0, 0);
  }
}
@keyframes carousel-pagination-back-01 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-100%, 0);
  }
}
@keyframes carousel-pagination-back-02 {
  0% {
    transform: translate(100%, 0);
  }
  100% {
    transform: translate(0, 0);
  }
}
/* ----------------------------------------------------------------
  視覚的に非表示にする
----------------------------------------------------------------- */
/* .l-header-content
----------------------------------------------- */
.l-header-content {
  position: sticky;
  top: 0;
  width: 100%;
  background-color: var(--COLOR_WHITE);
  z-index: 9002;
  box-shadow: 0 2px 12px rgb(var(--COLOR_SHADOW)/0.08);
}
.l-header-content_inner {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  margin-inline: auto;
  max-width: var(--WIDTH_HEADER_CONTENT);
}
@media (width <= 1105px) {
  .l-header-content_inner {
    padding: 10px 7px;
  }
}
html:lang(zh-Hans) .l-header-content .l-header-content_inner, html:lang(zh-Hant) .l-header-content .l-header-content_inner {
  grid-template-columns: auto 1fr;
}
.l-header-content.simple .l-header-content_inner {
  padding-block: 20px 24px;
}
@media (width <= 1105px) {
  .l-header-content.simple .l-header-content_inner {
    padding-block: 14px 15px;
  }
}

/* .header-link-logo
----------------------------------------------- */
.header-link-logo {
  display: flex;
  padding-inline: 40px;
}
.header-link-logo .fn-muhi-logo_target {
  pointer-events: none;
}
@media (width <= 1105px) {
  .header-link-logo {
    padding-inline: 9px 16px;
    order: 1;
  }
  .header-link-logo_item {
    max-width: 76px;
    height: auto;
  }
}

/* .header-link-support
----------------------------------------------- */
.header-link-support {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
  row-gap: 4px;
  padding-inline: 24px;
  height: 100%;
  border-left: 1px solid var(--COLOR_GRAY);
}
.header-link-support_text {
  font-size: 1.3rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_XS);
  text-align: center;
  transition: var(--TRANSITION);
}
.header-link-support:is(:hover, :active, :focus-visible) .header-link-support_text {
  color: var(--COLOR_PRIMARY);
}
@media (width <= 1105px) {
  .header-link-support {
    margin-left: auto;
    padding-inline: 9px;
    border-left: none;
    order: 2;
  }
  .header-link-support_text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
  .header-link-support_item {
    width: 22px;
    height: 22px;
  }
}

/* .header-menu
----------------------------------------------- */
.header-menu_btn {
  display: none;
}
@media (width <= 1105px) {
  .header-menu {
    order: 4;
  }
  .header-menu_btn {
    position: relative;
    display: block;
    padding: 0;
    width: 42px;
    height: 30px;
    border: none;
    background-color: transparent;
    cursor: pointer;
  }
  .header-menu_btn::before, .header-menu_btn::after {
    position: absolute;
    content: "";
    left: calc(50% - 12px);
    width: 24px;
    height: 2px;
    background-color: var(--COLOR_BLACK);
    border-radius: 1em;
    transition: var(--TRANSITION) 0.1s;
  }
  .header-menu_btn::before {
    top: 6px;
  }
  .header-menu_btn::after {
    bottom: 6px;
  }
  .header-menu_btn-alt {
    position: absolute;
    top: calc(50% - 1px);
    left: 9px;
    width: 24px;
    height: 2px;
    color: transparent;
    overflow: hidden;
  }
  .header-menu_btn-alt::before {
    position: absolute;
    content: "";
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--COLOR_BLACK);
    border-radius: 1em;
  }
  .header-menu_btn[aria-expanded=true]::before {
    top: calc(50% - 1px);
    rotate: 45deg;
  }
  .header-menu_btn[aria-expanded=true]::after {
    bottom: calc(50% - 1px);
    rotate: -45deg;
  }
  .header-menu_btn[aria-expanded=true] .header-menu_btn-alt::before {
    opacity: 0;
    visibility: hidden;
  }
  html:lang(zh-Hans) .header-menu .header-menu_btn, html:lang(zh-Hant) .header-menu .header-menu_btn {
    margin-left: auto;
  }
}

/* .header-nav
----------------------------------------------- */
.header-nav {
  display: flex;
  flex-direction: column-reverse;
  row-gap: 14px;
  align-items: flex-end;
}
.header-nav_list {
  display: flex;
  column-gap: 40px;
}
.header-nav_inner {
  display: flex;
  column-gap: 32px;
}
.header-nav_content {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  padding-inline: 20px;
  background-color: var(--COLOR_GRAY_LIGHT);
  z-index: 3;
  opacity: 0;
  visibility: hidden;
}
.header-nav_content-inner {
  margin-inline: auto;
  max-width: var(--WIDTH_CONTENT);
}
.header-nav_content.is-shown {
  opacity: 1;
  visibility: visible;
  box-shadow: 0 11px 11px rgb(var(--COLOR_SHADOW)/0.12);
}
.header-nav_btn, .header-nav_link-item {
  padding-block: 4px 26px;
  text-wrap: balance;
}
.header-nav_btn, .header-nav_link {
  position: relative;
  display: block;
  padding-inline: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
}
.header-nav_btn::after, .header-nav_link::after {
  position: absolute;
  content: "";
  bottom: 12px;
  left: 0;
  right: 0;
  margin-inline: auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: transparent;
  transition: var(--TRANSITION);
}
.header-nav_btn:is(:hover, :active, :focus-visible)::after, .header-nav_link:is(:hover, :active, :focus-visible)::after {
  background-color: var(--COLOR_PRIMARY);
}
.header-nav_btn:is(:hover, :active, :focus-visible) .header-nav_btn-text,
.header-nav_btn:is(:hover, :active, :focus-visible) .header-nav_link-item, .header-nav_link:is(:hover, :active, :focus-visible) .header-nav_btn-text,
.header-nav_link:is(:hover, :active, :focus-visible) .header-nav_link-item {
  color: var(--COLOR_PRIMARY);
}
.header-nav_btn[aria-expanded=true]::after {
  background-color: var(--COLOR_PRIMARY);
}
.header-nav_btn[aria-expanded=true] .header-nav_btn-text {
  color: var(--COLOR_PRIMARY);
}
.header-nav_btn-text, .header-nav_link-item {
  display: block;
  font-size: 1.7rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
  text-align: center;
  transition: var(--TRANSITION);
}
.header-nav_link.blank .header-nav_link-item {
  position: relative;
  padding-right: 26px;
  transition: var(--TRANSITION);
}
.header-nav_link.blank .header-nav_link-item::before, .header-nav_link.blank .header-nav_link-item::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 10px;
  border: 2px solid var(--COLOR_PRIMARY);
  border-radius: 1.2px;
  transition: var(--TRANSITION);
  background-color: var(--COLOR_WHITE);
}
.header-nav_link.blank .header-nav_link-item::before {
  top: 26%;
  right: 5px;
}
.header-nav_link.blank .header-nav_link-item::after {
  top: 19%;
  right: 0;
}
.header-nav_link.blank .header-nav_link-item:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.header-nav_link.blank .header-nav_link-item:is(:hover, :active, :focus-visible)::before {
  rotate: 12deg;
}
.header-nav_link.blank .header-nav_link-item:is(:hover, :active, :focus-visible)::after {
  rotate: -12deg;
}
.header-nav_link.blank::after {
  display: none;
}
.header-nav.is-shown {
  opacity: 1;
  visibility: visible;
}
.header-nav .sp-only {
  display: none !important;
}
.header-nav_secondary {
  display: flex;
  gap: 2px;
}
@media (width <= 1105px) {
  .header-nav {
    position: absolute;
    flex-direction: column;
    row-gap: 0;
    top: 100%;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
  }
  .header-nav_btn {
    display: none;
  }
  .header-nav_inner {
    width: 100%;
  }
  .header-nav_list {
    flex-direction: column;
    width: 100%;
  }
  .header-nav_list > :first-child summary {
    border-top: none;
  }
  .header-nav_content {
    position: static;
    opacity: unset;
    visibility: unset;
  }
  .header-nav_link {
    margin-inline: 24px;
    background-color: var(--COLOR_GRAY_LIGHT);
  }
  .header-nav_link::after {
    display: none;
  }
  .header-nav_link.blank .header-nav_link-item {
    padding-right: 50px;
  }
  .header-nav_link.blank .header-nav_link-item::before {
    right: 13px;
    top: 42%;
  }
  .header-nav_link.blank .header-nav_link-item::after {
    right: 9px;
    top: 35%;
  }
  .header-nav_link-item {
    position: relative;
    padding-block: 16px;
    padding-right: 50px;
    border-top: 1px solid var(--COLOR_GRAY);
    text-align: left;
  }
  .header-nav_link-item.arrow {
    position: relative;
  }
  .header-nav_link-item.arrow::before, .header-nav_link-item.arrow::after {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 18px;
    height: 18px;
    transition: var(--TRANSITION);
  }
  .header-nav_link-item.arrow::before {
    right: 9px;
    border-radius: 50%;
    border: 1px solid var(--COLOR_PRIMARY);
    background-color: var(--COLOR_WHITE);
  }
  .header-nav_link-item.arrow::after {
    right: 14px;
    width: 8px;
    height: 6px;
    background: no-repeat center;
    background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
  }
  .header-nav_link:is(:hover, :active, :focus-visible) .header-nav_link-item {
    color: var(--COLOR_FONT);
  }
  .header-nav.is-shown {
    --header-height: 60px;
    height: calc(100dvh - var(--header-height));
    background-color: var(--COLOR_GRAY_LIGHT);
    overflow-y: auto;
  }
  .header-nav .sp-only {
    display: block !important;
  }
  .header-nav_secondary {
    width: 100%;
    flex-direction: column;
    gap: 0;
    background-color: var(--COLOR_WHITE);
    padding: 16px 20px;
  }
}
html[lang=zh-Hans] .header-nav, html[lang=zh-Hant] .header-nav {
  padding-right: 40px;
}
@media (width <= 1105px) {
  html[lang=zh-Hans] .header-nav, html[lang=zh-Hant] .header-nav {
    padding-right: 0;
  }
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

.header-nav-link {
  border: 1px solid var(--COLOR_PRIMARY);
  border-top: none;
  border-bottom-left-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
.header-nav-link a {
  display: block;
  padding: 8px 15px 7px;
  font-size: 1.3rem;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  line-height: var(--FONT_LINE_HEIGHT_XS);
  color: var(--COLOR_PRIMARY);
  text-align: center;
  transition: var(--TRANSITION);
}
.header-nav-link a .m-link_icon {
  margin-inline: 6px 0;
}
.header-nav-link a:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
@media (width <= 1105px) {
  .header-nav-link {
    border-top: 1px solid var(--COLOR_PRIMARY);
    border-radius: var(--BORDER_RADIUS);
    margin-bottom: 10px;
    width: 100%;
    max-width: 326px;
    margin-inline: auto;
  }
}

/* .header-nav-toggle
----------------------------------------------- */
.header-nav-toggle {
  display: contents;
}
.header-nav-toggle_wrap {
  position: relative;
  padding-block: 40px;
}
.header-nav-toggle summary {
  display: none;
}
.header-nav-toggle summary::-webkit-details-marker {
  display: none;
}
.header-nav-toggle_link {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(288px, 1fr));
  gap: 16px;
  margin-top: 32px;
  overflow: hidden;
}
.header-nav-toggle_link-categoryTop {
  position: relative;
  display: inline-flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  column-gap: 16px;
  padding-right: 44px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
  transition: var(--TRANSITION);
}
.header-nav-toggle_link-categoryTop::before, .header-nav-toggle_link-categoryTop::after {
  position: absolute;
  content: "";
  right: 0;
  display: block;
  width: 32px;
  height: 32px;
  transition: var(--TRANSITION);
}
.header-nav-toggle_link-categoryTop::before {
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
}
.header-nav-toggle_link-categoryTop::after {
  right: 10px;
  width: 13px;
  height: 10px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.header-nav-toggle_link-categoryTop:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.header-nav-toggle_link-categoryTop:is(:hover, :active, :focus-visible)::before {
  scale: 1.1875;
}
.header-nav-toggle_link-categoryTop:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.header-nav-toggle_link > :first-child {
  display: none;
}
@media (width <= 1105px) {
  .header-nav-toggle_link {
    gap: 8px;
  }
  .header-nav-toggle_link > :first-child {
    display: block;
  }
}
.header-nav-toggle_item {
  position: relative;
  display: flex;
  align-items: center;
  padding: 16px 44px 17px 20px;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  font-size: var(--FONT_SIZE);
  transition: var(--TRANSITION);
}
.header-nav-toggle_item::before, .header-nav-toggle_item::after {
  position: absolute;
  content: "";
  width: 18px;
  height: 18px;
}
.header-nav-toggle_item::before {
  right: 14px;
  border: 1px solid var(--COLOR_PRIMARY);
  border-radius: 50%;
}
.header-nav-toggle_item::after {
  right: 19px;
  width: 8px;
  height: 6px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.header-nav-toggle_item:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.header-nav-toggle_closeBtn {
  position: absolute;
  top: 40px;
  right: 0;
  display: inline-flex;
  padding: 0;
  border: none;
  background-color: transparent;
  color: var(--COLOR_FONT);
  cursor: pointer;
}
.header-nav-toggle_closeBtn::before, .header-nav-toggle_closeBtn::after {
  position: absolute;
  content: "";
  right: 0.6em;
  top: 0;
  bottom: 0;
  margin-block: auto;
  width: 1px;
  height: 10px;
  border-radius: 1em;
  background-color: var(--COLOR_WHITE);
}
.header-nav-toggle_closeBtn::before {
  rotate: 45deg;
  z-index: 1;
}
.header-nav-toggle_closeBtn::after {
  rotate: -45deg;
}
.header-nav-toggle_closeBtn-text {
  position: relative;
  padding-right: 28px;
  transition: var(--TRANSITION);
}
.header-nav-toggle_closeBtn-text::before {
  position: absolute;
  content: "";
  top: calc(50% - 10px);
  right: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.header-nav-toggle_closeBtn:is(:hover, :active, :focus-visible) .header-nav-toggle_closeBtn-text {
  color: var(--COLOR_PRIMARY);
}
.header-nav-toggle_closeBtn:is(:hover, :active, :focus-visible) .header-nav-toggle_closeBtn-text::before {
  scale: 1.3;
}
@media (width <= 1105px) {
  .header-nav-toggle {
    display: block;
    overflow: hidden;
  }
  .header-nav-toggle_wrap {
    padding-block: 0;
  }
  .header-nav-toggle summary {
    position: relative;
    display: block;
    padding-block: 16px;
    padding-right: 50px;
    border-top: 1px solid var(--COLOR_GRAY);
    font-weight: var(--FONT_WEIGHT_BOLD);
    line-height: 1.7;
    cursor: pointer;
  }
  .header-nav-toggle summary::before, .header-nav-toggle summary::after {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    border-radius: 1em;
    background-color: var(--COLOR_PRIMARY);
  }
  .header-nav-toggle summary::before {
    right: 16px;
    width: 14px;
    height: 2px;
  }
  .header-nav-toggle summary::after {
    right: 22px;
    width: 2px;
    height: 14px;
    transition: var(--TRANSITION);
  }
  .header-nav-toggle_link {
    margin-top: 0;
    padding-bottom: 20px;
  }
  .header-nav-toggle_link-categoryTop, .header-nav-toggle_closeBtn {
    display: none;
  }
  .header-nav-toggle[open] summary::after {
    height: 0;
  }
}

/* .header-nav-lang
----------------------------------------------- */
.header-nav-lang {
  display: flex;
  margin-top: 0;
  margin-right: -70px;
  border-bottom-left-radius: var(--BORDER_RADIUS);
  border-bottom-right-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_PRIMARY);
}
.header-nav-lang_item + .header-nav-lang_item {
  display: flex;
  align-items: center;
  height: 100%;
  border-left: 2px solid var(--COLOR_WHITE);
}
.header-nav-lang_list {
  display: flex;
}
.header-nav-lang_list li + li {
  position: relative;
}
.header-nav-lang_list li + li::before {
  position: absolute;
  content: "";
  top: calc(50% - 7.5px);
  left: 0;
  display: block;
  width: 1px;
  height: 15px;
  background-color: var(--COLOR_WHITE);
}
.header-nav-lang_list li + li .header-nav-lang_link {
  padding-left: 12px;
}
.header-nav-lang_list .header-nav-lang_link {
  position: relative;
  display: block;
  padding: 8px 16px;
  font-size: 1.3rem;
  line-height: var(--FONT_LINE_HEIGHT_XS);
  color: var(--COLOR_WHITE);
  transition: var(--TRANSITION);
}
.header-nav-lang_list .header-nav-lang_link.link-01 {
  padding-right: 12px;
}
.header-nav-lang_list .header-nav-lang_link.global {
  padding-left: 39px;
}
.header-nav-lang_list .header-nav-lang_link.global::before {
  position: absolute;
  content: "";
  left: 14px;
  display: block;
  width: 17px;
  height: 17px;
  background-color: var(--COLOR_WHITE);
  mask: url("../../assets/img/header/icon-earth.svg") no-repeat center/17px 17px;
  transition: var(--TRANSITION);
}
.header-nav-lang_list .header-nav-lang_link:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.header-nav-lang_link {
  position: relative;
  display: block;
  padding: 8px 16px;
  font-size: 1.3rem;
  line-height: var(--FONT_LINE_HEIGHT_XS);
  color: var(--COLOR_WHITE);
  transition: var(--TRANSITION);
}
.header-nav-lang_link.global {
  padding-left: 39px;
}
.header-nav-lang_link.global::before {
  position: absolute;
  content: "";
  left: 16px;
  display: block;
  width: 17px;
  height: 17px;
  background-color: var(--COLOR_WHITE);
  mask: url("../../assets/img/header/icon-earth.svg") no-repeat center/17px 17px;
  transition: var(--TRANSITION);
}
.header-nav-lang_link:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
@media (width <= 1105px) {
  .header-nav-lang {
    align-items: center;
    margin-right: 0;
    border-top-left-radius: var(--BORDER_RADIUS);
    border-top-right-radius: var(--BORDER_RADIUS);
  }
  .header-nav-lang_wrap {
    display: flex;
    justify-content: center;
  }
  .header-nav-lang_list li + li .header-nav-lang_link {
    padding-left: 20px;
  }
  .header-nav-lang_list .header-nav-lang_link {
    padding-inline: 28px;
  }
  .header-nav-lang_list .header-nav-lang_link.link-01 {
    padding-right: 20px;
  }
  .header-nav-lang_link {
    padding-inline: 28px;
  }
  .header-nav-lang_link.global {
    padding-left: 54px;
    padding-right: 31px;
  }
  .header-nav-lang_link.global::before {
    left: 31px;
  }
}
html:lang(zh-Hans) .header-nav-lang, html:lang(zh-Hant) .header-nav-lang {
  margin-right: 0;
}
@media (width <= 1105px) {
  html:lang(zh-Hans) .header-nav-lang .header-nav-lang_list, html:lang(zh-Hant) .header-nav-lang .header-nav-lang_list {
    justify-content: center;
    align-items: center;
  }
  html:lang(zh-Hans) .header-nav-lang .header-nav-lang_list .header-nav-lang_link.link-01, html:lang(zh-Hant) .header-nav-lang .header-nav-lang_list .header-nav-lang_link.link-01 {
    text-wrap: nowrap;
  }
  html:lang(zh-Hans) .header-nav-lang .header-nav-lang_list li + li .header-nav-lang_link, html:lang(zh-Hant) .header-nav-lang .header-nav-lang_list li + li .header-nav-lang_link {
    text-wrap: balance;
    text-align: center;
  }
}

/* .header-search
----------------------------------------------- */
.header-search {
  padding-top: 28px;
  padding-inline: 33px;
}
.header-search_btn {
  display: block;
  padding-inline: 0;
  min-width: 43px;
  height: 43px;
  border: none;
  background-color: var(--COLOR_PRIMARY);
  mask: url("../../assets/img/icon/icon-search.svg") no-repeat center/23px 23px;
  transition: var(--TRANSITION);
  cursor: pointer;
}
.header-search_btn-alt {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.header-search_btn:is(:hover, :active, :focus-visible) {
  rotate: 15deg;
}
.header-search .header-nav_content {
  opacity: 0;
  visibility: hidden;
}
.header-search .header-nav_content.is-shown {
  opacity: 1;
  visibility: visible;
}
.header-search .header-nav_content .header-nav-toggle_wrap {
  max-width: 1158px;
  margin-left: auto;
}
.header-search .header-nav_content .m-form-search-02 {
  padding: 0;
}
.header-search .header-nav_content .m-form-search-02_form {
  margin-left: 0;
  max-width: 1050px;
}
@media (width <= 1189px) {
  .header-search .header-nav_content .header-nav-toggle_wrap {
    max-width: 100%;
    margin-left: auto;
    padding-bottom: 49px;
  }
  .header-search .header-nav_content .m-form-search-02 {
    padding-bottom: 16px;
  }
  .header-search .header-nav_content .m-form-search-02_form {
    margin-left: 0;
    max-width: 100%;
  }
  .header-search .header-nav_content .header-nav-toggle_closeBtn {
    display: block;
    top: unset;
    right: unset;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media (width <= 1105px) {
  .header-search .header-nav_content .header-nav-toggle_wrap {
    padding-top: 20px;
  }
}
@media (width <= 1105px) {
  .header-search {
    padding: 0;
    order: 3;
  }
  .header-search_btn {
    min-width: 38px;
    height: 40px;
    mask-size: 20px 20px;
  }
  .header-search .header-nav_content {
    position: absolute;
    top: 100%;
  }
}

/* .l-footer-content
----------------------------------------------- */
.l-footer {
  padding-top: 56px;
  overflow: hidden;
}
@media (width <= 768px) {
  .l-footer {
    padding-top: 40px;
  }
}
.l-footer_inner {
  display: block;
  position: relative;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: auto;
  background-color: var(--COLOR_PRIMARY);
  mask: url("../../assets/img/layout/content-bg.svg") no-repeat bottom/contain;
  aspect-ratio: 1700/391;
}
@media (width <= 1440px) {
  .l-footer_inner {
    left: -10%;
    width: 120%;
  }
}
@media (width <= 768px) {
  .l-footer_inner {
    left: -3%;
    width: 108%;
  }
}
@media (1440px < width <= 1920px) {
  .l-footer_inner {
    min-height: 390px;
  }
}
@media (width > 1920px) {
  .l-footer_inner {
    right: 0;
    margin-inline: auto;
    max-width: 1920px;
  }
}

.l-footer-content {
  padding: 0 20px 20px;
  background-color: var(--COLOR_PRIMARY);
  color: var(--COLOR_WHITE);
}
.l-footer-content a {
  color: var(--COLOR_WHITE);
}
.l-footer-content_inner {
  margin-inline: auto;
  max-width: var(--WIDTH_CONTENT);
}
.l-footer-content_nav {
  display: grid;
  max-width: 900px;
  gap: 32px 40px;
  grid-template-columns: repeat(4, 1fr);
}
.l-footer-content_nav-01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  padding-bottom: 32px;
  gap: 40px;
}
.l-footer-content_nav-02 {
  margin-top: 32px;
}
.l-footer-content_nav-03 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  margin-top: 16px;
  margin-bottom: 44px;
  gap: 16px;
}
.l-footer-content_nav-03 img {
  transition: var(--TRANSITION);
  margin-right: 24px;
}
.l-footer-content_nav-03 img:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.l-footer-content_nav-list {
  max-width: 195px;
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
.l-footer-content_nav-list:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.l-footer-content_nav-list a {
  position: relative;
  display: inline-grid;
  place-items: center;
}
.l-footer-content_nav-list a[target^=_blank]::before, .l-footer-content_nav-list a[target^=_blank]::after {
  width: 15px;
  height: 12px;
  border: 2px solid var(--COLOR_PRIMARY);
  border-radius: 1.2px;
  transition: var(--TRANSITION);
  background: var(--COLOR_PRIMARY);
  border-color: 2px solid var(--COLOR_WHITE);
  position: absolute;
  content: "";
  top: calc(50% - 3px);
}
.l-footer-content_nav-list a[target^=_blank]::before {
  right: -23px;
}
.l-footer-content_nav-list a[target^=_blank]::after {
  top: calc(50% - 9px);
  right: -29px;
}
.l-footer-content_nav-list a .m-link_icon {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.l-footer-content_lang-list-icon {
  margin-left: 32px;
  transition: var(--TRANSITION);
}
.l-footer-content_lang-list-icon:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.l-footer-content_lang {
  display: flex;
  align-items: center;
  font-size: var(--FONT_SIZE_SM);
  gap: 8px 0;
}
.l-footer-content_lang-list {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.l-footer-content_lang-list a {
  transition: var(--TRANSITION);
  display: flex;
  align-items: center;
  gap: 8px;
}
.l-footer-content_lang-list a:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.l-footer-content_lang-list + .l-footer-content_lang-list {
  padding-left: 16px;
  margin-left: 16px;
  border-left: 1px solid rgba(255, 255, 255, 0.6);
}
.l-footer-content_sns {
  display: flex;
  gap: 54px;
  margin-top: 24px;
}
.l-footer-content_sns-inner {
  display: flex;
  gap: 20px;
}
.l-footer-content_link {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  font-size: var(--FONT_SIZE_SM);
  justify-content: end;
}
.l-footer-content_link-list {
  transition: var(--TRANSITION);
}
.l-footer-content_link-list:is(:hover, :active, :focus-visible) {
  opacity: 0.7;
}
.l-footer-content_copyright {
  font-size: var(--FONT_SIZE_XS);
}
.l-footer-content.simple .l-footer-content_nav-03 {
  margin-top: 0;
}
@media (width <= 768px) {
  .l-footer-content {
    padding: 20px 32px;
  }
  .l-footer-content_nav {
    gap: 16px 24px;
    grid-template-columns: repeat(2, 1fr);
  }
  .l-footer-content_nav-list {
    max-width: unset;
    font-size: 1.3rem;
  }
  .l-footer-content_nav-01 {
    display: block;
    margin-top: 12px;
  }
  .l-footer-content_nav-02 {
    margin-top: 24px;
  }
  .l-footer-content_nav-03 {
    flex-direction: column;
    gap: 24px;
    justify-content: center;
    align-items: center;
    margin-top: 32px;
    margin-bottom: 12px;
  }
  .l-footer-content_nav-03 img {
    width: 295px;
    margin-right: 0;
  }
  .l-footer-content_lang {
    font-size: var(--FONT_SIZE_XS);
    margin-top: 40px;
  }
  .l-footer-content_lang-list-icon {
    margin-left: 24px;
  }
  .l-footer-content_sns {
    justify-content: space-between;
    align-items: center;
  }
  .l-footer-content_sns-txt {
    font-size: var(--FONT_SIZE_XS);
  }
  .l-footer-content_sns-img {
    width: 40px;
  }
  .l-footer-content_link {
    font-size: var(--FONT_SIZE_XS);
    gap: 16px;
    justify-content: left;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  }
  .l-footer-content_copyright {
    margin-top: 0;
    font-size: 1rem;
  }
}

/* .l-breadcrumb
----------------------------------------------- */
.l-breadcrumb {
  position: relative;
  padding-inline: var(--GUTTER_CONTENT);
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.l-breadcrumb_inner {
  display: flex;
  align-items: center;
  padding-top: 24px;
  margin-inline: auto;
  width: 100%;
  max-width: var(--WIDTH_HEADER_CONTENT);
}
.l-breadcrumb_list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 28px;
  padding-left: 20px;
}
.l-breadcrumb_list::before {
  position: absolute;
  content: "";
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  background-image: url("../../assets/img/icon/icon-breadcrumb.svg");
}
.l-breadcrumb_list > li {
  font-size: var(--FONT_SIZE_XS);
}
.l-breadcrumb_list > li > a {
  --color-breadcrumb-link: #808080;
  position: relative;
  color: var(--color-breadcrumb-link);
  text-decoration: none;
}
.l-breadcrumb_list > li > a::before {
  position: absolute;
  content: "";
  top: 50%;
  right: -16px;
  transform: translateY(-50%);
  width: 4px;
  height: 8px;
  background: url("../../assets/img/icon/icon-arrow-breadcrumb.svg") no-repeat center/contain;
}
.l-breadcrumb_list > li > a:is(:hover, :active, :focus-visible) {
  text-decoration: underline;
  color: var(--color-breadcrumb-link);
}
.l-breadcrumb_list > li > :first-child {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 4px;
}
.l-breadcrumb_list > li span[aria-current] {
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}

/* keyframes
----------------------------------------------- */
@keyframes hover-flow-page-top {
  70% {
    translate: -50% calc(-100% - 16px);
  }
  75% {
    translate: -50% 100%;
    opacity: 0;
  }
  100% {
    translate: -50% -50%;
  }
}
/* .l-page-top
----------------------------------------------- */
.l-page-top {
  position: fixed;
  right: 20px;
  bottom: 28px;
  display: inline-flex;
  visibility: hidden;
  opacity: 0;
  transition: opacity var(--TRANSITION), visibility var(--TRANSITION);
}
.l-page-top_link {
  position: relative;
  display: flex;
  width: 88px;
  height: 88px;
  background-color: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--COLOR_PRIMARY);
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(var(--COLOR_SHADOW), 0.8);
}
.l-page-top_link::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 21px;
  height: 16px;
  translate: -50% -50%;
  rotate: -90deg;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.l-page-top_link-alt {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.l-page-top_link:is(:hover, :active, :focus-visible) {
  --init-link-size: 88;
  --hover-link-size: 92;
  scale: calc(var(--hover-link-size) / var(--init-link-size));
  transition: var(--TRANSITION);
}
.l-page-top_link:is(:hover, :active, :focus-visible)::before {
  animation: hover-flow-page-top 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.l-page-top.is-shown {
  visibility: visible;
  opacity: 1;
  z-index: 100;
}
@media (width <= 768px) {
  .l-page-top {
    right: 12px;
    bottom: 20px;
  }
  .l-page-top_link {
    width: 40px;
    height: 40px;
  }
  .l-page-top_link::before {
    width: 16px;
    height: 13px;
  }
}

/* .l-content
----------------------------------------------- */
.l-content {
  padding-inline: var(--GUTTER_CONTENT);
  background-color: var(--COLOR_WHITE);
}
.l-content + .l-content.jyouhoukan .l-content_inner {
  padding-block: 80px 96px;
}
.l-content_inner {
  margin-inline: auto;
  padding-block: 80px 96px;
  max-width: var(--WIDTH_CONTENT);
  overflow: hidden;
}
.l-content_inner > :first-child {
  margin-top: 0;
}
.l-content_inner > :last-child {
  margin-bottom: 0;
}
@media (width <= 768px) {
  .l-content_inner {
    padding-block: 56px 64px;
  }
}
.l-content_inner.initial, .l-content_inner.visible {
  overflow: initial;
}
.l-content_inner.step-box {
  padding-block: 44px 104px !important;
}
@media (width <= 768px) {
  .l-content_inner.step-box {
    padding-block: 28px 112px !important;
  }
}
.l-content_inner.products-top {
  padding-top: 40px !important;
}
@media (width <= 768px) {
  .l-content_inner.products-top {
    padding-top: 32px !important;
    padding-bottom: 56px !important;
  }
}
.l-content:has(.m-link-anchor-list) .l-content_inner {
  padding-bottom: 0;
}
.l-content:has(.m-link-anchor-list) + .l-content .l-content_inner {
  padding-top: 64px;
}
@media (width <= 768px) {
  .l-content:has(.m-link-anchor-list) + .l-content .l-content_inner {
    padding-top: 32px;
  }
}
.l-content:has(.m-text-lead.u-ta-center + .m-text.u-ta-center:last-child) .l-content_inner {
  padding-bottom: 40px;
}
.l-content.jyouhoukan-nav {
  padding: 0;
}
.l-content.jyouhoukan-nav .l-content_inner {
  overflow: auto;
  padding-block: 0;
  max-width: unset;
}
.l-content:has(.m-panel-05) .l-content_inner {
  overflow: visible;
}
.l-content:has(.m-list-feature.bg-2color) {
  background: linear-gradient(180deg, transparent 0%, transparent 50%, var(--COLOR_PRIMARY_LIGHT) 50%, var(--COLOR_PRIMARY_LIGHT) 100%);
}
.l-content:has(.m-list-feature.bg-2color) .l-content_inner {
  padding-bottom: 0;
}
@media (width <= 768px) {
  .l-content:has(.m-list-feature.bg-2color) {
    background-color: var(--COLOR_PRIMARY_LIGHT);
  }
  .l-content:has(.m-list-feature.bg-2color) .l-content_inner {
    padding-block: 56px 0;
  }
}
.l-content.jyouhoukan {
  background-color: var(--JYOUHOUKAN_COLOR_SECONDARY);
}
.l-content.jyouhoukan + .l-content .l-content_inner {
  padding-block: 80px 96px;
}
.l-content.bg-color-02 {
  background-color: var(--COLOR_GRAY_LIGHT);
}
.l-content.bg-color-03 {
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.l-content.bg-color-03-half {
  background: linear-gradient(180deg, transparent 0%, transparent 50%, var(--COLOR_PRIMARY_LIGHT) 50%, var(--COLOR_PRIMARY_LIGHT) 100%);
}
.l-content.circle-icon {
  position: relative;
  margin-top: 84px;
}
.l-content.circle-icon::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  width: 164px;
  height: 164px;
  top: -82px;
  left: calc(50% - 82px);
  background-color: var(--COLOR_PRIMARY_LIGHT);
  background-image: url("../../assets/img/icon/icon-customer-reviews.svg");
}
.l-content.circle-icon .l-content_inner {
  padding-block: 48px 56px !important;
}
.l-content.circle-icon .m-hdg-l2-02 {
  z-index: 1;
  position: relative;
  margin-bottom: 32px;
}
@media (width <= 768px) {
  .l-content.circle-icon .m-hdg-l2-02 {
    margin-bottom: 24px;
  }
}
.l-content.bg-shape {
  position: relative;
  padding-bottom: 25%;
}
.l-content.bg-shape.pb-0 {
  padding-bottom: 0;
}
.l-content.bg-shape.pb-0 .l-content_inner {
  position: relative;
  padding-bottom: 137px;
}
.l-content.bg-shape::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: -1px;
  width: 100%;
  height: auto;
  background-color: var(--COLOR_WHITE);
  mask: url("../../assets/img/layout/content-bg.svg") no-repeat bottom/contain;
  aspect-ratio: 1700/391;
}
@media (width <= 1440px) {
  .l-content.bg-shape::before {
    left: -10%;
    width: 120%;
  }
}
@media (1440px < width <= 1920px) {
  .l-content.bg-shape::before {
    min-height: 390px;
  }
}
@media (width > 1920px) {
  .l-content.bg-shape::before {
    right: 0;
    margin-inline: auto;
    max-width: 1920px;
  }
}
.l-content.bg-color-jyouhoukan {
  background-color: #FFF2EB;
}
.l-content.border-top, .l-content.border-top-pc {
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
@media (width <= 768px) {
  .l-content.border-top-pc {
    border-top: none;
  }
}
.l-content.border-bottom-content .l-content_inner {
  padding-bottom: 80px;
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
}
@media (width <= 768px) {
  .l-content.border-bottom-content .l-content_inner {
    padding-bottom: 56px;
  }
}
.l-content.gutter-wide {
  padding-inline: var(--GUTTER_CONTENT_SM);
}
.l-content.pb-narrow .l-content_inner {
  padding-bottom: 80px;
}
@media (width <= 768px) {
  .l-content.pb-narrow .l-content_inner {
    padding-bottom: 56px;
  }
}
.l-content + .l-content .l-content_inner {
  padding-top: 0;
}
@media (768px < width) {
  .l-content + .l-content:is(.border-top-pc) .l-content_inner {
    padding-top: 80px;
  }
}
.l-content + .l-content:is(.bg-color-02, .bg-color-03, .border-top) .l-content_inner {
  padding-top: 80px;
}
@media (width <= 768px) {
  .l-content + .l-content:is(.bg-color-02, .bg-color-03, .border-top) .l-content_inner {
    padding-top: 56px;
  }
}
.l-content + .l-content:is(.bg-color-jyouhoukan) .l-content_inner {
  padding-top: 64px;
}
.l-content:is(.bg-color-02, .bg-color-03, .border-bottom-content, .bg-color-jyouhoukan) + .l-content .l-content_inner {
  padding-top: 80px;
}
@media (width <= 768px) {
  .l-content:is(.bg-color-02, .bg-color-03, .border-bottom-content, .bg-color-jyouhoukan) + .l-content .l-content_inner {
    padding-top: 56px;
  }
}
.l-content:is(.border-bottom-content) + .l-content:is(.bg-color-02, .bg-color-03) .l-content_inner {
  margin-bottom: 80px;
}
@media (width <= 768px) {
  .l-content:is(.border-bottom-content) + .l-content:is(.bg-color-02, .bg-color-03) .l-content_inner {
    margin-bottom: 56px;
  }
}
.l-content:is(.border-bottom-content) + .l-content:is(.bg-color-jyouhoukan) .l-content_inner {
  margin-bottom: 96px;
}
@media (width <= 768px) {
  .l-content:is(.border-bottom-content) + .l-content:is(.bg-color-jyouhoukan) .l-content_inner {
    margin-bottom: 64px;
  }
}
.l-content:is(.bg-color-02, .bg-color-03, .bg-color-jyouhoukan) + .l-content:is(.border-top, .border-top-pc) .l-content_inner {
  margin-top: 80px;
}
@media (width <= 768px) {
  .l-content:is(.bg-color-02, .bg-color-03, .bg-color-jyouhoukan) + .l-content:is(.border-top, .border-top-pc) .l-content_inner {
    margin-top: 56px;
  }
}
.l-content:is(.border-top, .border-top-pc) + .l-content:is(.border-bottom-content) .l-content_inner {
  padding-top: 0;
}
@media (width <= 768px) {
  .l-content:is(.border-top, .border-top-pc) + .l-content:is(.border-bottom-content) .l-content_inner {
    padding-top: 0;
  }
}
@media (width <= 768px) {
  .l-content:is(.bg-color-02, .bg-color-03, .border-bottom-content, .bg-color-jyouhoukan) + .l-content:is(.border-top-pc) .l-content_inner {
    padding-top: 56px;
  }
}
.l-content.case .l-content_inner {
  padding-block: 64px 80px !important;
}
@media (width <= 768px) {
  .l-content.case .l-content_inner {
    padding-block: 48px 56px !important;
  }
}
.l-content.search-content {
  padding-inline: 16px;
}
.l-content:has([class*=m-carousel-]) {
  overflow: hidden;
}
.l-content:has([class*=m-carousel-]) .l-content_inner {
  overflow: initial;
}
.l-content:has([class*=m-btn-drawer]) {
  overflow: initial;
}
.l-content:has([class*=m-btn-drawer]) .l-content_inner {
  overflow: initial;
}
.m-mv-01 + .l-content .l-content_inner, .unq-products-mv + .l-content .l-content_inner {
  padding-block: 64px 96px;
}
@media (width <= 860px) {
  .l-content.jyouhoukan-nav .l-content_inner {
    display: flex;
    flex-direction: column;
  }
  .l-content.jyouhoukan-nav .l-content_inner > .m-mv-jyouhoukan {
    order: 1;
  }
  .l-content.jyouhoukan .l-content_inner {
    padding-block: 56px 64px;
  }
}
@media (width <= 768px) {
  .l-content.sp-full {
    padding-inline: 0;
  }
  .l-content.sp-full .l-content_inner {
    max-width: unset;
  }
  .l-content:has(.m-text-lead.u-ta-center + .m-text.u-ta-center:last-child) .l-content_inner {
    padding-bottom: 24px;
  }
  .l-content:has(.m-text-lead.u-ta-center:first-child) .l-content_inner {
    padding-top: 64px;
  }
  .m-hdg-l1 + .l-content:has(.m-text-lead.u-ta-center:first-child) .l-content_inner {
    padding-top: 0;
  }
  .l-content:has(> .l-content_inner > [class*=m-panel-05]) .l-content_inner {
    padding-top: 56px;
  }
  .m-mv-01 + .l-content .l-content_inner, .unq-products-mv + .l-content .l-content_inner {
    padding-block: 32px 64px;
  }
}

/* .m-hdg-l1
----------------------------------------------- */
.m-hdg-l1 {
  margin-bottom: 64px;
  padding: 36px var(--GUTTER_CONTENT);
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-hdg-l1_inner {
  display: flex;
  align-items: center;
  row-gap: 12px;
  flex-wrap: wrap;
  margin-inline: auto;
  max-width: var(--WIDTH_CONTENT);
}
.m-hdg-l1_hdg {
  position: relative;
  display: flex;
  align-items: center;
  row-gap: 6px;
  flex-wrap: wrap;
  padding-left: 32px;
}
.m-hdg-l1_hdg::before {
  position: absolute;
  content: "";
  left: 0;
  width: 8px;
  height: 100%;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 1em;
}
.m-hdg-l1_hdg h1 {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 24px;
  font-size: var(--FONT_SIZE_2XL);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l1_hdg-sub {
  margin-top: 0;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l1 .m-icon-label {
  padding-left: 28px;
}
.m-hdg-l1 + .l-content .l-content_inner {
  padding-top: 0;
}
main[class=rd-story_color-orange] .m-hdg-l1 {
  background-color: #FCEADE;
}
main[class=rd-story_color-orange] .m-hdg-l1 .m-hdg-l1_hdg::before {
  background-color: #F77C2A;
}
main[class=rd-story_color-turquoise] .m-hdg-l1 {
  background-color: #E6F3F5;
}
main[class=rd-story_color-turquoise] .m-hdg-l1 .m-hdg-l1_hdg::before {
  background-color: #3AA7BD;
}
main[class=rd-story_color-yellow] .m-hdg-l1 {
  background-color: #FCF6E1;
}
main[class=rd-story_color-yellow] .m-hdg-l1 .m-hdg-l1_hdg::before {
  background-color: #F7A500;
}
@media (width <= 768px) {
  .m-hdg-l1 {
    margin-bottom: 32px;
    padding-block: 24px;
  }
  .m-hdg-l1_hdg {
    padding-left: 21px;
    row-gap: 4px;
    line-height: var(--FONT_LINE_HEIGHT_XS);
  }
  .m-hdg-l1_hdg::before {
    width: 5px;
  }
  .m-hdg-l1_hdg h1 {
    row-gap: 4px;
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-hdg-l1_hdg-sub {
    font-size: var(--FONT_SIZE);
  }
}

/* .m-hdg-l2-02
----------------------------------------------- */
.m-hdg-l2-02 {
  margin-block: 80px 48px;
  font-size: var(--FONT_SIZE_4LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
@media (width <= 768px) {
  .m-hdg-l2-02 {
    margin-block: 48px 32px;
    font-size: var(--FONT_SIZE_2LG);
  }
}

/* .m-hdg-l2-03
----------------------------------------------- */
.m-hdg-l2-03 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  row-gap: 4px;
  margin-block: 80px 48px;
  font-size: var(--FONT_SIZE_XL);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
.m-hdg-l2-03_sub {
  font-size: var(--FONT_SIZE_4LG);
}
@media (width <= 768px) {
  .m-hdg-l2-03 {
    margin-block: 48px 32px;
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-hdg-l2-03_sub {
    font-size: var(--FONT_SIZE_LG);
  }
}

/* .m-hdg-l2-05
----------------------------------------------- */
.m-hdg-l2-05 {
  position: relative;
  margin-block: 96px 40px;
  padding-left: 32px;
  font-size: 3rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l2-05::before {
  position: absolute;
  content: "";
  left: 0;
  width: 8px;
  height: 100%;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 1em;
}
.m-hdg-l2-05.mb-narrow {
  margin-block: 64px 40px;
}
@media (width <= 768px) {
  .m-hdg-l2-05 {
    margin-block: 64px 32px;
    padding-left: 21px;
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-hdg-l2-05::before {
    width: 5px;
  }
  .m-hdg-l2-05.mb-narrow {
    margin-block: 48px 32px;
  }
}

/* .m-hdg-l2-06
----------------------------------------------- */
.m-hdg-l2-06 {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  row-gap: 6px;
  margin-block: 96px 40px;
}
.m-hdg-l2-06_hdg {
  font-size: var(--FONT_SIZE_XL);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
@media (width <= 768px) {
  .m-hdg-l2-06 {
    margin-bottom: 32px;
    row-gap: 10px;
  }
  .m-hdg-l2-06_hdg {
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-hdg-l2-06 img {
    width: 36px;
    height: 36px;
  }
}

/* .m-hdg-l2-07
----------------------------------------------- */
.m-hdg-l2-07 {
  position: relative;
  margin-block: 96px 32px;
  text-align: center;
}
.m-hdg-l2-07::before, .m-hdg-l2-07_text::before, .m-hdg-l2-07_text::after {
  position: absolute;
  content: "";
  top: 100%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
}
.m-hdg-l2-07::before {
  left: calc(50% - 4px);
}
.m-hdg-l2-07_text {
  position: relative;
  display: block;
  padding-bottom: 12px;
  font-size: var(--FONT_SIZE_3LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l2-07_text::before {
  left: calc(50% - 20px);
}
.m-hdg-l2-07_text::after {
  right: calc(50% - 20px);
}
@media (width <= 768px) {
  .m-hdg-l2-07 {
    margin-block: 64px 30px;
  }
  .m-hdg-l2-07::before, .m-hdg-l2-07_text::before, .m-hdg-l2-07_text::after {
    width: 6px;
    height: 6px;
  }
  .m-hdg-l2-07::before {
    left: calc(50% - 3px);
  }
  .m-hdg-l2-07_text {
    font-size: var(--FONT_SIZE_LG);
  }
  .m-hdg-l2-07_text::before {
    left: calc(50% - 19px);
  }
  .m-hdg-l2-07_text::after {
    right: calc(50% - 19px);
  }
}

/* .m-hdg-l3
----------------------------------------------- */
.m-hdg-l3 {
  position: relative;
  margin-block: 64px 32px;
  padding-bottom: 16px;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  border-bottom: 3px solid var(--COLOR_GRAY);
}
.m-hdg-l3::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  width: 80px;
  height: 3px;
  background-color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-hdg-l3 {
    margin-block: 48px 24px;
    padding-bottom: 12px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-hdg-l3::before {
    width: 64px;
  }
}
.m-hdg-l3.layout-02 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 36px 48px;
  margin-block: 40px 48px;
}
.m-hdg-l3.layout-02 .m-hdg-l3_text {
  flex: 1;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l3.layout-02 .m-hdg-l3_meida {
  display: flex;
  align-items: flex-end;
  column-gap: 8px;
  max-width: 415px;
}
@media (width <= 1000px) {
  .m-hdg-l3.layout-02 {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
  .m-hdg-l3.layout-02 .m-hdg-l3_meida {
    margin-inline: auto;
  }
}
@media (width <= 768px) {
  .m-hdg-l3.layout-02 {
    margin-block: 16px 40px;
  }
  .m-hdg-l3.layout-02 .m-hdg-l3_text {
    font-size: var(--FONT_SIZE_MD);
    line-height: var(--FONT_LINE_HEIGHT_SM);
  }
}

/* .m-hdg-l3-03
----------------------------------------------- */
.m-hdg-l3-03 {
  position: relative;
  padding-left: 40px;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-hdg-l3-03::before {
  position: absolute;
  content: "";
  left: 0;
  width: 32px;
  height: 32px;
  background: url("../../assets/img/icon/icon-thumbsup.svg") no-repeat center/contain;
}
@media (width <= 768px) {
  .m-hdg-l3-03 {
    padding-left: 32px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-hdg-l3-03::before {
    top: -4px;
    width: 24px;
  }
}

.m-hdg-l4 {
  margin-block: 48px 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
@media (width <= 768px) {
  .m-hdg-l4 {
    margin-top: 32px;
    padding-bottom: 12px;
    font-size: 1.7rem;
  }
}

.m-hdg-l5 {
  margin-block: 40px 16px;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
@media (width <= 768px) {
  .m-hdg-l5 {
    margin-block: 32px 16px;
    font-size: var(--FONT_SIZE);
  }
}

/* .m-list-btn-jyouhoukan
----------------------------------------------- */
.m-list-btn-jyouhoukan {
  display: grid;
  gap: 16px;
  margin-top: 32px;
  grid-template-columns: repeat(5, 1fr);
}
.m-list-btn-jyouhoukan_item {
  display: flex;
  justify-content: center;
}
.m-list-btn-jyouhoukan_btn {
  max-width: 228px;
  width: 100%;
  padding: 24px 46px 24px 32px;
  position: relative;
  display: inline-grid;
  place-items: center;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_FONT);
  text-align: center;
  transition: var(--TRANSITION);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
}
.m-list-btn-jyouhoukan_btn::before, .m-list-btn-jyouhoukan_btn::after {
  position: absolute;
  content: "";
}
.m-list-btn-jyouhoukan_btn::before {
  right: 14px;
  width: 22px;
  height: 22px;
  background-color: var(--JYOUHOUKAN_COLOR_PRIMARY);
  border-radius: 50%;
  transition: var(--TRANSITION);
}
.m-list-btn-jyouhoukan_btn::after {
  right: 20px;
  width: 10px;
  height: 8px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-list-btn-jyouhoukan_btn:is(:hover, :active, :focus-visible) {
  scale: 1.03;
}
.m-list-btn-jyouhoukan_btn:is(:hover, :active, :focus-visible)::before {
  scale: 1.1818181818;
}
.m-list-btn-jyouhoukan_btn:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
@media (width <= 768px) {
  .m-list-btn-jyouhoukan {
    gap: 10px;
    margin-top: 24px;
    grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
  }
  .m-list-btn-jyouhoukan_item {
    width: 100%;
  }
  .m-list-btn-jyouhoukan_btn {
    padding: 14px 28px 14px 16px;
    font-size: 1.3rem;
    box-shadow: 0 2px 8px rgb(var(--COLOR_SHADOW)/0.15);
  }
  .m-list-btn-jyouhoukan_btn::before {
    right: 12px;
    width: 18px;
    height: 18px;
  }
  .m-list-btn-jyouhoukan_btn::after {
    right: 16px;
    width: 10px;
    height: 8px;
  }
}

/* .m-list-dots
----------------------------------------------- */
.m-list-dots {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  margin-top: 16px;
}
.m-list-dots_item {
  position: relative;
  padding-left: 20px;
}
.m-list-dots_item::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0.6em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #808080;
}
.m-list-dots_item .m-list-dots {
  margin-top: 8px;
  padding-left: 4px;
}
.m-list-dots.auto {
  flex-flow: row wrap;
  gap: 16px 24px;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-list-dots.auto .m-list-dots_item {
  padding-left: 24px;
}
.m-list-dots.auto .m-list-dots_item::before {
  top: 0.5em;
  width: 12px;
  height: 12px;
}

/* .m-list-note
----------------------------------------------- */
.m-list-note {
  display: grid;
  row-gap: 8px;
  margin-top: 16px;
  width: fit-content;
}
.m-list-note_item {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
  column-gap: 4px;
  font-size: var(--FONT_SIZE_SM);
}
.m-list-note.right {
  margin-inline: auto 0;
}

/* .m-list-num
----------------------------------------------- */
.m-list-num {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  margin-top: 24px;
}
.m-list-num_item {
  display: flex;
  column-gap: 8px;
}
.m-list-num_item + .m-list-num {
  margin-top: 8px;
  padding-left: 36px;
}
.m-list-num_item + .m-list-num .m-list-num_icon {
  border: none;
  background-color: #EBEBEB;
}
.m-list-num_item + .m-list-dots {
  margin-top: 8px;
  padding-left: 36px;
}
.m-list-num_icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 2px solid var(--COLOR_GRAY_DARK);
  border-radius: 50%;
  background-color: var(--COLOR_WHITE);
  font-family: var(--FONT_FAMILY_SECONDARY);
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  line-height: 0;
}
.m-list-num_content {
  flex: 1;
}

/* .m-list-desc-num
----------------------------------------------- */
.m-list-desc-num {
  margin-top: 48px;
}
.m-list-desc-num > :first-child {
  margin-top: 0;
}
.m-list-desc-num_title {
  display: flex;
  align-items: flex-start;
  margin-top: 48px;
}
.m-list-desc-num_title-icon {
  position: relative;
  top: 20px;
  left: 0;
  display: grid;
  place-items: center;
  padding: 4px 8px;
  min-width: 48px;
  min-height: 40px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 2px 14px;
  font-family: var(--FONT_FAMILY_SECONDARY);
  font-size: 2.3rem;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  line-height: 1.3;
  color: var(--COLOR_WHITE);
}
.m-list-desc-num_title-text {
  margin-left: -24px;
  padding: 24px;
  padding-left: 48px;
  width: 100%;
  background-color: var(--COLOR_PRIMARY_LIGHT);
  border-radius: var(--BORDER_RADIUS);
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-list-desc-num_content {
  margin-top: 24px;
  margin-left: 72px;
}
@media (width <= 768px) {
  .m-list-desc-num_title {
    margin-block: 32px 16px;
  }
  .m-list-desc-num_title-icon {
    top: 14px;
    padding: 3px 13px;
    min-width: 38px;
    min-height: 33px;
    border-top-right-radius: 10px;
    border-bottom-left-radius: 10px;
    font-size: 1.9rem;
  }
  .m-list-desc-num_title-text {
    margin-left: -18px;
    padding: 16px 20px 16px 34px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-list-desc-num_content {
    margin-left: 20px;
  }
}

/* .m-list-faq
----------------------------------------------- */
.m-list-faq {
  margin-top: 64px;
}
.m-list-faq_mark {
  --mark-circle-color: transparent;
  --mark-font-color: transparent;
  display: flex;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 2px solid var(--COLOR_PRIMARY);
  background-color: var(--mark-circle-color);
  border-radius: 50%;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  line-height: var(--FONT_LINE_HEIGHT_SM);
  color: var(--mark-font-color);
}
.m-list-faq_question, .m-list-faq_answer {
  display: flex;
  column-gap: 16px;
}
.m-list-faq_question {
  font-size: var(--FONT_SIZE_LG);
}
.m-list-faq_question .m-list-faq_text {
  margin-top: 4px;
  font-weight: var(--FONT_WEIGHT_BOLD);
  flex: 1;
}
.m-list-faq_question .m-list-faq_mark {
  --mark-circle-color: var(--COLOR_PRIMARY);
  --mark-font-color: var(--COLOR_WHITE);
}
.m-list-faq_answer {
  margin-top: 16px;
}
.m-list-faq_answer .m-list-faq_mark {
  --mark-circle-color: var(--COLOR_WHITE);
  --mark-font-color: var(--COLOR_PRIMARY);
}
.m-list-faq_answer .m-list-faq_content {
  margin-top: 4px;
  flex: 1;
}
.m-list-faq_answer .m-list-faq_content > :first-child {
  margin-top: 0;
}
.m-list-faq_answer .m-list-faq_content > :last-child {
  margin-bottom: 0;
}
.m-list-faq.width-narrow {
  margin-inline: auto;
  max-width: 800px;
}
.m-list-faq.box {
  padding: 40px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-list-faq.box .m-list-faq_list {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.m-list-faq.box .m-list-faq_question {
  padding-inline: 24px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
  font-size: var(--FONT_SIZE_MD);
}
.m-list-faq.box .m-list-faq_question .m-list-faq_mark {
  margin-top: 16px;
}
.m-list-faq.box .m-list-faq_question .m-list-faq_text {
  position: relative;
  margin-top: 0;
  padding-block: 20px;
  padding-right: 47px;
  transition: color var(--TRANSITION);
}
.m-list-faq.box .m-list-faq_question .m-list-faq_text::after {
  position: absolute;
  content: "";
  top: calc(50% - 5px);
  right: 5px;
  width: 18px;
  height: 14px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-list-faq.box .m-list-faq_question .m-list-faq_text:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-list-faq.box .m-list-faq_question .m-list-faq_text:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-list-faq.toggle .m-list-faq_details {
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_question {
  border-radius: 0;
  background-color: transparent;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_question .m-list-faq_text::before, .m-list-faq.toggle .m-list-faq_details .m-list-faq_question .m-list-faq_text::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 8px;
  border-radius: 1em;
  background: var(--COLOR_PRIMARY);
  transition: scale var(--TRANSITION);
  width: 14px;
  height: 2px;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_question .m-list-faq_text::after {
  rotate: 90deg;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_question .m-list-faq_text:is(:hover, :active, :focus-visible)::after {
  animation: none;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_answer {
  display: contents;
  margin-top: 0;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_answer-inner {
  display: flex;
  column-gap: 16px;
  padding-block: 32px;
  margin-inline: 24px;
  border-top: 1px solid var(--COLOR_GRAY);
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_answer-inner:has(.m-list-faq_mark) {
  padding-block: 16px;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_answer-inner:has(.m-list-faq_mark) .m-list-faq_content {
  margin-top: 4px;
}
.m-list-faq.toggle .m-list-faq_details .m-list-faq_answer .m-list-faq_content {
  margin-top: 0;
}
.m-list-faq.toggle .m-list-faq_details[open] .m-list-faq_question .m-list-faq_text::after {
  scale: 0;
}
@media (width <= 768px) {
  .m-list-faq_mark {
    width: 36px;
    height: 36px;
    line-height: var(--FONT_LINE_HEIGHT_XS);
  }
  .m-list-faq_question {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-list-faq.box {
    padding: 32px 20px;
    border-radius: 0;
  }
  .m-list-faq.box .m-list-faq_question {
    padding-inline: 16px;
    font-size: var(--FONT_SIZE);
  }
  .m-list-faq.toggle .m-list-faq_details .m-list-faq_answer-inner {
    column-gap: 12px;
    margin-inline: 16px;
    padding-block: 24px;
  }
  .m-list-faq.toggle .m-list-faq_details .m-list-faq_answer-inner:has(.m-list-faq_mark) {
    padding-block: 24px;
  }
}

/* .m-list-feature
----------------------------------------------- */
.m-list-feature {
  position: relative;
  padding: 48px 24px;
  max-width: 1200px;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  z-index: 1;
}
.m-list-feature .m-btn-layout {
  margin-top: 16px;
}
.m-list-feature_hdg {
  margin-bottom: 24px;
  font-size: 3.2rem;
  text-align: center;
}
.m-list-feature_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.m-list-feature_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  padding-inline: 16px;
  padding-bottom: 16px;
  height: 100%;
  border-right: 1px solid var(--COLOR_GRAY_DARK);
  text-align: center;
}
.m-list-feature_item:last-child {
  border-right: none;
}
.m-list-feature_img {
  margin-bottom: 8px;
}
.m-list-feature_text.head {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
.m-list-feature_text.head + .m-list-feature_text {
  margin-top: 4px;
}
.m-list-feature_text.media {
  display: flex;
  align-items: baseline;
  justify-content: center;
}
.m-list-feature_text.sm {
  margin-top: 0;
  font-size: var(--FONT_SIZE_SM);
}
.m-list-feature_text.em-num,
.m-list-feature_text .em-text {
  line-height: var(--FONT_LINE_HEIGHT_SM);
  color: var(--COLOR_PRIMARY);
}
.m-list-feature_text.em-num {
  font-family: var(--FONT_FAMILY_SECONDARY);
  font-size: 4.8rem;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-list-feature_text.em-text {
  font-size: var(--FONT_SIZE_3LG);
}
.m-list-feature_text.note {
  margin-top: 8px;
}
.m-list-feature_text.sp-wrap {
  display: flex;
  align-items: baseline;
  justify-content: center;
}
@media (width <= 1100px) {
  .m-list-feature {
    padding: 32px;
  }
  .m-list-feature_hdg {
    margin-bottom: 16px;
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-list-feature_list {
    grid-template-columns: auto;
  }
  .m-list-feature_item {
    padding-inline: 0;
    padding-block: 12px 24px;
    height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  }
  .m-list-feature_item:last-child {
    border-bottom: none;
  }
  .m-list-feature_img {
    margin-inline: auto;
    width: 100px;
    height: auto;
  }
  .m-list-feature_text.head {
    display: block;
  }
  .m-list-feature_text.head + .m-list-feature_text {
    margin-top: 0;
  }
  .m-list-feature_text.note {
    margin-top: 0;
  }
}
@media (width <= 768px) {
  .m-list-feature_text.sp-wrap {
    display: block;
  }
}

/* .m-list-feature-02
----------------------------------------------- */
.m-list-feature-02 {
  margin: 64px 0;
}
.m-list-feature-02:has(+ .u-ta-right .m-list-note) {
  margin-bottom: 16px;
}
.m-list-feature-02 + .u-ta-right:has(.m-list-note) {
  display: flex;
  justify-content: flex-end;
}
.m-list-feature-02 + .u-ta-right:has(.m-list-note) .m-list-note {
  margin-top: 0;
}
.m-list-feature-02:has(.w-wide) {
  display: flex;
  justify-content: center;
}
.m-list-feature-02:has(.w-wide) + .u-ta-right:has(.m-list-note) {
  margin: 0 auto;
  max-width: 936px;
}
.m-list-feature-02:has(.w-wide) .m-list-feature-02_list {
  max-width: 936px;
  width: 100%;
}
.m-list-feature-02_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1200px;
  position: relative;
  z-index: 1;
  gap: 24px;
}
.m-list-feature-02_item {
  flex: 1 1 384px;
  padding: 40px 24px;
  max-width: 384px;
  width: 100%;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
.m-list-feature-02_item.w-wide {
  flex: 1 0 528px;
  max-width: 528px;
}
.m-list-feature-02_content {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
}
.m-list-feature-02_title {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: var(--TRANSITION);
}
.m-list-feature-02_img img {
  transition: var(--TRANSITION);
}
.m-list-feature-02_title-txt {
  vertical-align: middle;
  text-align: center;
  font-weight: var(--FONT_WEIGHT_BOLD);
  font-size: var(--FONT_SIZE_MD);
}
[data-category=global-country-top] .m-list-feature-02_title-txt {
  font-size: var(--FONT_SIZE_3LG);
}
.m-list-feature-02_title-txt em {
  font-size: var(--FONT_SIZE_3LG);
  color: var(--COLOR_PRIMARY);
}
.m-list-feature-02_title-txt .large {
  font-size: 4.8rem;
  line-height: 1.25;
}
[data-category=global-country-top] .m-list-feature-02_title-txt .large {
  font-size: var(--FONT_SIZE_2XL);
}
.m-list-feature-02_title-txt .ex-large {
  font-size: 5.6rem;
  line-height: 1.4;
}
.m-list-feature-02_title-txt .sm {
  font-size: 1.4rem;
}
.m-list-feature-02_title-txt .ff-poppins {
  font-family: var(--FONT_FAMILY_SECONDARY);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-list-feature-02_title-logo {
  vertical-align: baseline;
}
.m-list-feature-02_title-logo.muhi-s {
  width: 100px;
  height: auto;
}
@media (width <= 1000px) {
  .m-list-feature-02.unq-adj_list-layout {
    grid-template-columns: 1fr;
  }
  .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-01 {
    max-width: 528px;
  }
  .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-02 {
    flex: unset;
  }
}
@media (width <= 768px) {
  .m-list-feature-02_list {
    padding: 0;
  }
  .m-list-feature-02_item {
    padding-block: 24px;
  }
  .m-list-feature-02_content {
    padding: 0;
  }
  .m-list-feature-02_title {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  [data-category=global-country-top] .m-list-feature-02_title-txt {
    font-size: var(--FONT_SIZE_LG);
  }
  [data-category=global-country-top] .m-list-feature-02_title-txt em {
    font-size: var(--FONT_SIZE_LG);
  }
  [data-category=global-country-top] .m-list-feature-02_title-txt .large {
    font-size: var(--FONT_SIZE_4LG);
  }
  [data-category=global-country-top] .m-list-feature-02_title-txt .ex-large {
    font-size: 4.4rem;
  }
  .m-list-feature-02_img img {
    width: 80px;
    height: 80px;
  }
  .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-01, .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-02 {
    max-width: 384px;
  }
}
@media (width <= 600px) {
  .m-list-feature-02_item {
    max-width: unset;
  }
  .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-01, .m-list-feature-02.unq-adj_list-layout .m-list-feature-02_item.unq-adj_list-item-02 {
    max-width: unset;
  }
}

/* .m-list-history
----------------------------------------------- */
.m-list-history {
  margin-top: 64px;
}
.m-list-history_title {
  cursor: pointer;
}
.m-list-history_title, .m-list-history_description {
  display: flex;
  column-gap: 16px;
}
.m-list-history_titleInner {
  margin-top: 4px;
  font-weight: var(--FONT_WEIGHT_BOLD);
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.m-list-history_era {
  display: block;
  display: flex;
  font-size: var(--FONT_SIZE);
}
.m-list-history_era .year-01 {
  display: block;
  padding-left: 18px;
  position: relative;
}
.m-list-history_era .year-01::before {
  display: block;
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  top: 15px;
  transform: translateY(-50%);
  left: 0;
}
.m-list-history_text {
  display: block;
}
.m-list-history_description {
  margin-top: 16px;
}
.m-list-history_description .m-list-history_content {
  margin-top: 4px;
  flex: 1;
}
.m-list-history_description .m-list-history_content > :first-child {
  margin-top: 0;
}
.m-list-history_description .m-list-history_content > :last-child {
  margin-bottom: 0;
}
.m-list-history_description .m-list-history_content .m-media {
  margin-top: 32px;
}
.m-list-history.width-narrow {
  margin-inline: auto;
  max-width: 800px;
}
.m-list-history.box {
  padding: 40px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-list-history.box .m-list-history_list {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.m-list-history.box .m-list-history_title {
  padding-inline: 24px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
  font-size: var(--FONT_SIZE_MD);
}
.m-list-history.box .m-list-history_titleInner {
  position: relative;
  margin-top: 0;
  padding-block: 20px;
  padding-right: 47px;
  transition: color var(--TRANSITION);
}
.m-list-history.box .m-list-history_titleInner::after {
  position: absolute;
  content: "";
  top: calc(50% - 5px);
  right: 5px;
  width: 18px;
  height: 14px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-list-history.box .m-list-history_titleInner:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-list-history.box .m-list-history_titleInner:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-list-history.toggle .m-list-history_details {
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
.m-list-history.toggle .m-list-history_details .m-list-history_title {
  border-radius: 0;
  background-color: transparent;
}
.m-list-history.toggle .m-list-history_details .m-list-history_title .m-list-history_titleInner::before, .m-list-history.toggle .m-list-history_details .m-list-history_title .m-list-history_titleInner::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 8px;
  border-radius: 1em;
  background: var(--COLOR_PRIMARY);
  transition: scale var(--TRANSITION);
  width: 14px;
  height: 2px;
}
.m-list-history.toggle .m-list-history_details .m-list-history_title .m-list-history_titleInner::after {
  rotate: 90deg;
}
.m-list-history.toggle .m-list-history_details .m-list-history_title .m-list-history_titleInner:is(:hover, :active, :focus-visible)::after {
  animation: none;
}
.m-list-history.toggle .m-list-history_details .m-list-history_description {
  display: contents;
  margin-top: 0;
}
.m-list-history.toggle .m-list-history_details .m-list-history_description-inner {
  display: flex;
  column-gap: 16px;
  padding-block: 40px;
  margin-inline: 24px;
  border-top: 1px solid var(--COLOR_GRAY);
}
.m-list-history.toggle .m-list-history_details .m-list-history_description .m-list-history_content {
  margin-top: 0;
}
.m-list-history.toggle .m-list-history_details[open] .m-list-history_title .m-list-history_titleInner::after {
  scale: 0;
}
@media (width <= 768px) {
  .m-list-history_title {
    font-size: var(--FONT_SIZE);
  }
  .m-list-history.box {
    padding: 32px 20px;
    border-radius: 0;
  }
  .m-list-history.box .m-list-history_title {
    padding-inline: 16px;
    font-size: var(--FONT_SIZE);
  }
  .m-list-history.toggle .m-list-history_details .m-list-history_description-inner {
    column-gap: 12px;
    margin-inline: 16px;
    padding-block: 24px;
  }
}

/* お知らせ一覧
----------------------------------------------------------------- */
.m-list-news {
  margin-top: 32px;
}
.m-list-news_list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.m-list-news_list.is-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-list-news_list > :last-child .m-list-news_content {
  padding-bottom: 0;
}
.m-list-news_item {
  position: relative;
}
.m-list-news_item:last-child::after {
  border: none;
}
.m-list-news_item::after {
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  width: 100%;
  bottom: -18px;
  left: 0;
  display: block;
  content: "";
}
.m-list-news_content {
  padding-block: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px 24px;
  transition: all 0.2s;
}
@media (width <= 768px) {
  .m-list-news_content {
    flex-direction: column;
  }
}
.m-list-news_title {
  flex: 1 1 auto;
  margin: 0;
  color: #333;
}
a.m-list-news_title:is(:hover, :active, :focus-visible) .m-list-news_title-text {
  color: var(--COLOR_PRIMARY);
}

.m-list-news_title-text {
  display: inline;
  transition: all var(--TRANSITION);
}
.m-list-news_title .m-link_icon {
  position: relative;
  bottom: 2px;
}
.m-list-news_sub {
  gap: var(--GUTTER_CONTENT_SM);
  display: flex;
  align-items: center;
  min-width: 274px;
}
@media (width <= 768px) {
  .m-list-news_sub {
    gap: 16px;
  }
}
.m-list-news_main {
  gap: 8px;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.m-list-news_date {
  color: #333;
  min-width: 120px;
}
@media (width <= 768px) {
  .m-list-news_date {
    font-size: 1.5rem;
    line-height: var(--FONT_LINE_HEIGHT_SM);
  }
}
.m-list-news_category {
  color: var(--COLOR_BLACK);
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  position: relative;
  display: block;
  padding: 3px 0;
  min-width: 122px;
  max-height: 32px;
  border-radius: 16px;
  box-sizing: border-box;
  text-align: center;
}
.m-list-news_category.business {
  background-color: #DCE2E6;
}
.m-list-news_category.campaign {
  background-color: #FFE0BD;
}
.m-list-news_category.product {
  background-color: #FDDFDF;
}
.m-list-news_category.newsletter {
  background-color: #C5EBE3;
}
.m-list-news_noNews-text {
  margin-top: 32px;
  text-align: center;
  font-size: var(--FONT_SIZE_MD);
}
@media (width <= 768px) {
  .m-list-news_noNews-text {
    margin-top: 16px;
    font-size: var(--FONT_SIZE);
  }
}

/* .m-list-news-layout-01 （見出し＋お知らせ）
----------------------------------------------- */
.m-list-news-layout-01 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  flex-wrap: wrap;
}
.m-list-news-layout-01 .m-hdg-l2-05 {
  margin-block: 11px 0;
  flex: 1;
  min-width: 300px;
}
.m-list-news-layout-01_content {
  margin-inline: auto;
  width: 100%;
  max-width: 840px;
}
.m-list-news-layout-01_content .m-list-news {
  margin-top: 0;
}
.m-list-news-layout-01_content .m-list-news_list > :first-child > a {
  padding-top: 0;
}
.m-list-news-layout-01_link {
  margin-top: 24px;
}
@media (width <= 768px) {
  .m-list-news-layout-01 .m-hdg-l2-05 {
    margin-top: 0;
  }
  .m-list-news-layout-01_content {
    max-width: unset;
  }
  .m-list-news-layout-01_content .m-list-news_list > :first-child .m-list-news_content {
    padding-top: 0;
  }
  .m-list-news-layout-01_content .m-list-news_date, .m-list-news-layout-01_content .m-list-news_title {
    font-size: 1.5rem;
  }
  .m-list-news-layout-01_link {
    margin-top: 0;
  }
  .m-list-news-layout-01_link .m-link-icon-02 {
    font-size: var(--FONT_SIZE);
  }
}

/* .m-list-desc
----------------------------------------------- */
.m-list-desc {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  margin-top: 48px;
}
.m-list-desc_title {
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-list-desc_title > a {
  text-decoration: underline;
}
.m-list-desc_title + .m-list-desc_content {
  margin-top: 16px;
}
.m-list-desc.col-2-pc, .m-list-desc.col-3-pc {
  display: grid;
  row-gap: 24px;
  margin-top: 48px;
}
.m-list-desc.col-2-pc {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 40px;
}
.m-list-desc.col-3-pc {
  grid-template-columns: repeat(3, 1fr);
  column-gap: 32px;
}
.m-list-desc.sm {
  margin-top: 24px;
}
.m-list-desc.sm .m-list-desc_title {
  font-size: var(--FONT_SIZE);
}
.m-list-desc.sm .m-list-desc_title + .m-list-desc_content {
  margin-top: 8px;
}
.m-list-desc.sm.row-pc {
  display: grid;
  gap: 8px 24px;
  margin-top: 16px;
  width: fit-content;
}
.m-list-desc.sm.row-pc .m-list-desc_item {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
}
.m-list-desc.sm.row-pc .m-list-desc_title {
  position: relative;
  padding-left: 20px;
  max-width: 340px;
}
.m-list-desc.sm.row-pc .m-list-desc_title::before {
  display: block;
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #808080;
}
.m-list-desc.sm.row-pc .m-list-desc_content {
  margin-top: 0;
}
.m-list-desc.sm.row-pc .m-list-desc_content > :first-child {
  margin-top: 0;
}
.m-list-desc.sm.row-pc .m-list-desc_content > :last-child {
  margin-bottom: 0;
}
.m-list-desc.em .m-list-desc_title {
  position: relative;
  padding-left: 24px;
  font-size: var(--FONT_SIZE_MD);
}
.m-list-desc.em .m-list-desc_title::before {
  display: block;
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
}
.m-list-desc.em .m-list-desc_title + .m-list-desc_content {
  margin-top: 8px;
}
@media (width <= 768px) {
  .m-list-desc {
    margin-top: 32px;
  }
  .m-list-desc_title {
    font-size: var(--FONT_SIZE);
  }
  .m-list-desc.col-2-pc, .m-list-desc.col-3-pc {
    display: flex;
    margin-top: 32px;
  }
  .m-list-desc.sm.row-pc .m-list-desc_item {
    grid-template-columns: auto;
  }
  .m-list-desc.sm.row-pc .m-list-desc_title + .m-list-desc_content {
    margin-top: 8px;
  }
}

/* .m-list-results
----------------------------------------------- */
.m-list-results {
  display: flex;
  flex-direction: column;
}
.m-list-results > :first-child {
  margin-top: 0;
}
.m-list-results > :last-child {
  margin-bottom: 0;
}
.m-list-results > :first-child {
  padding-top: 0;
  border-top: none;
}
.m-list-results > :last-child {
  padding-bottom: 0;
}
.m-list-results_item {
  padding-block: 32px;
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-list-results_item.m-media-layout {
  margin-top: 0;
}
.m-list-results_item.m-media-layout .m-media-layout_media .m-media {
  border: 1px solid var(--COLOR_GRAY_DARK);
}
.m-list-results_title {
  margin-top: 16px;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-list-results_title a {
  text-decoration: underline;
  text-decoration-color: currentcolor;
  transition: var(--TRANSITION);
}
.m-list-results_title a .keyword {
  text-decoration-color: var(--COLOR_PRIMARY);
}
.m-list-results_title a:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-list-results_text {
  margin-top: 12px;
}
.m-list-results .keyword {
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_PRIMARY);
}
.m-list-results_link {
  margin-top: 8px;
  font-size: var(--FONT_SIZE_XS);
  overflow-wrap: anywhere;
}
.m-list-results_link a {
  transition: var(--TRANSITION);
}
.m-list-results_link a:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-list-results .m-icon-label_item {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-list-results_title {
    font-size: var(--FONT_SIZE);
  }
  .m-list-results_link {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-list-results .m-media-layout_media {
    display: none;
  }
}

/* .m-list-anchor
----------------------------------------------- */
.m-list-anchor {
  --color-orange: #F77C2A;
  --color-turquoise: #3AA7BD;
  --color-yellow: #F7A500;
  display: flex;
  flex-wrap: wrap;
  gap: 24px 0;
}
.m-list-anchor_item {
  position: relative;
  padding-right: 60px;
  width: 50%;
}
.m-list-anchor_item:nth-child(2n) {
  padding-left: 40px;
  border-left: 1px solid var(--COLOR_GRAY_DARK);
  padding-right: 20px;
}
.m-list-anchor_item:nth-child(2n)::before {
  right: 0;
}
.m-list-anchor_item::before {
  position: absolute;
  content: "";
  top: 9px;
  right: 40px;
  width: 12px;
  height: 12px;
  background-color: var(--COLOR_PRIMARY);
  mask: url("../../assets/img/icon/icon-arrow-anchor.svg") no-repeat center/12px;
}
.m-list-anchor_label {
  background-color: var(--COLOR_PRIMARY);
  color: var(--COLOR_WHITE);
  font-size: var(--FONT_SIZE_SM);
  border-radius: 14px;
  padding-inline: 8px;
  margin-right: 12px;
  display: block;
  min-width: 88px;
}
.m-list-anchor_link {
  display: flex;
  align-items: baseline;
  transition: var(--TRANSITION);
}
.m-list-anchor_link:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
main[class=rd-story_color-orange] .m-list-anchor_label {
  background-color: var(--color-orange);
}
main[class=rd-story_color-orange] .m-list-anchor_item::before {
  background-color: var(--color-orange);
}
main[class=rd-story_color-orange] .m-list-anchor_link:is(:hover, :active, :focus-visible) {
  color: var(--color-orange);
}
main[class=rd-story_color-turquoise] .m-list-anchor_label {
  background-color: var(--color-turquoise);
}
main[class=rd-story_color-turquoise] .m-list-anchor_item::before {
  background-color: var(--color-turquoise);
}
main[class=rd-story_color-turquoise] .m-list-anchor_link:is(:hover, :active, :focus-visible) {
  color: var(--color-turquoise);
}
main[class=rd-story_color-yellow] .m-list-anchor_label {
  background-color: var(--color-yellow);
}
main[class=rd-story_color-yellow] .m-list-anchor_item::before {
  background-color: var(--color-yellow);
}
main[class=rd-story_color-yellow] .m-list-anchor_link:is(:hover, :active, :focus-visible) {
  color: var(--color-yellow);
}
@media (width <= 768px) {
  .m-list-anchor {
    flex-direction: column;
    gap: 0;
  }
  .m-list-anchor_item {
    width: 100%;
    padding-right: 20px;
  }
  .m-list-anchor_item:nth-child(2n) {
    padding-left: unset;
    border-left: unset;
  }
  .m-list-anchor_item::before {
    right: 0;
    top: 50%;
  }
  .m-list-anchor_item + .m-list-anchor_item {
    border-top: 1px solid var(--COLOR_GRAY_DARK);
    margin-top: 16px;
    padding-top: 16px;
  }
  .m-list-anchor_link {
    flex-direction: column;
    gap: 4px;
    font-size: 1.5rem;
  }
  .m-list-anchor_label {
    font-size: var(--FONT_SIZE_XS);
    min-width: auto;
  }
}

/* .m-list-step
----------------------------------------------- */
.m-list-step_item {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 16px;
  margin-block: 4px;
}
.m-list-step_icon {
  padding: 2px 10px;
  border-radius: 3em;
  background-color: var(--COLOR_PRIMARY);
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_WHITE);
}
.m-list-step_title {
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-list-step_content {
  margin-left: 31px;
  padding-block: 32px;
  padding-left: 48px;
  border-left: 1px solid var(--COLOR_GRAY);
}
.m-list-step_content > :first-child {
  margin-top: 0;
}
.m-list-step_content > :last-child {
  margin-bottom: 0;
}
.m-list-step > :last-child .m-list-step_content {
  border-left: none;
}
@media (width <= 768px) {
  .m-list-step_item {
    flex-direction: column;
    align-items: flex-start;
    margin-block: 0 24px;
  }
  .m-list-step_title {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-list-step_content {
    margin-left: 0;
    padding-block: 0 24px;
    padding-left: 0;
    border-left: none;
    border-bottom: 1px solid var(--COLOR_GRAY);
  }
  .m-list-step > :last-child .m-list-step_content {
    padding-bottom: 0;
    border-bottom: none;
  }
  .m-list-step li + li .m-list-step_item {
    margin-top: 24px;
  }
}

/* .m-list-timeline
----------------------------------------------- */
.m-list-timeline {
  display: grid;
  grid-column-gap: 64px;
  grid-template-areas: "entry1  img1" "img2 entry2" "entry3 img3" "img4 entry4" "entry5  img5" "img6 entry6" "entry7  img7" "img8 entry8" "entry9  img9" "img10 entry10" "entry11  img11" "img12 entry12" "entry13  img13" "img14 entry14" "entry15  img15";
  padding-inline: 24px;
  line-height: 1.5em;
  font-size: 14px;
  transition: all 0.4s ease;
  position: relative;
  counter-reset: section;
  grid-template-columns: repeat(2, 1fr);
}
.m-list-timeline_entry {
  display: grid;
  position: relative;
  padding-top: 32px;
}
.m-list-timeline_entry:nth-of-type(1) {
  grid-area: entry1;
}
.m-list-timeline_entry:nth-of-type(1) + .m-list-timeline_img {
  grid-area: img1;
}
.m-list-timeline_entry:nth-of-type(2) {
  grid-area: entry2;
}
.m-list-timeline_entry:nth-of-type(2) + .m-list-timeline_img {
  grid-area: img2;
}
.m-list-timeline_entry:nth-of-type(3) {
  grid-area: entry3;
}
.m-list-timeline_entry:nth-of-type(3) + .m-list-timeline_img {
  grid-area: img3;
}
.m-list-timeline_entry:nth-of-type(4) {
  grid-area: entry4;
}
.m-list-timeline_entry:nth-of-type(4) + .m-list-timeline_img {
  grid-area: img4;
}
.m-list-timeline_entry:nth-of-type(5) {
  grid-area: entry5;
}
.m-list-timeline_entry:nth-of-type(5) + .m-list-timeline_img {
  grid-area: img5;
}
.m-list-timeline_entry:nth-of-type(6) {
  grid-area: entry6;
}
.m-list-timeline_entry:nth-of-type(6) + .m-list-timeline_img {
  grid-area: img6;
}
.m-list-timeline_entry:nth-of-type(7) {
  grid-area: entry7;
}
.m-list-timeline_entry:nth-of-type(7) + .m-list-timeline_img {
  grid-area: img7;
}
.m-list-timeline_entry:nth-of-type(8) {
  grid-area: entry8;
}
.m-list-timeline_entry:nth-of-type(8) + .m-list-timeline_img {
  grid-area: img8;
}
.m-list-timeline_entry:nth-of-type(9) {
  grid-area: entry9;
}
.m-list-timeline_entry:nth-of-type(9) + .m-list-timeline_img {
  grid-area: img9;
}
.m-list-timeline_entry:nth-of-type(10) {
  grid-area: entry10;
}
.m-list-timeline_entry:nth-of-type(10) + .m-list-timeline_img {
  grid-area: img10;
}
.m-list-timeline_entry:nth-of-type(11) {
  grid-area: entry11;
}
.m-list-timeline_entry:nth-of-type(11) + .m-list-timeline_img {
  grid-area: img11;
}
.m-list-timeline_entry:nth-of-type(12) {
  grid-area: entry12;
}
.m-list-timeline_entry:nth-of-type(12) + .m-list-timeline_img {
  grid-area: img12;
}
.m-list-timeline_entry:nth-of-type(13) {
  grid-area: entry13;
}
.m-list-timeline_entry:nth-of-type(13) + .m-list-timeline_img {
  grid-area: img13;
}
.m-list-timeline_entry:nth-of-type(14) {
  grid-area: entry14;
}
.m-list-timeline_entry:nth-of-type(14) + .m-list-timeline_img {
  grid-area: img14;
}
.m-list-timeline_entry:nth-of-type(15) {
  grid-area: entry15;
}
.m-list-timeline_entry:nth-of-type(15) + .m-list-timeline_img {
  grid-area: img15;
}
.m-list-timeline_entry::after {
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  background: var(--COLOR_GRAY_DARK);
  position: absolute;
  top: 0;
  right: -32px;
}
.m-list-timeline_entry:first-child {
  padding-top: 0;
}
.m-list-timeline_entry:first-child::after {
  height: calc(100% - 48px);
  top: unset;
  bottom: 0;
}
.m-list-timeline_entry:last-of-type {
  margin-bottom: 0;
}
.m-list-timeline_entry:last-of-type::after {
  height: 76px;
}
.m-list-timeline_entry:nth-of-type(odd) {
  grid-template-areas: "detail title";
  grid-template-columns: 1fr auto;
}
.m-list-timeline_entry:nth-of-type(odd) .m-list-timeline_detail {
  margin-right: 16px;
  text-align: right;
}
.m-list-timeline_entry:nth-of-type(even) {
  grid-template-areas: "title detail";
  grid-template-columns: auto 1fr;
}
.m-list-timeline_entry:nth-of-type(even)::after {
  left: -33px;
}
.m-list-timeline_entry:nth-of-type(even) .m-list-timeline_title::before {
  right: 100%;
  left: unset;
  border-left: 0;
  border-right: 10px solid var(--COLOR_GRAY_LIGHT);
}
.m-list-timeline_entry:nth-of-type(even) .m-list-timeline_detail {
  margin-left: 16px;
}
.m-list-timeline_entry:nth-of-type(even) + .m-list-timeline_img {
  justify-content: flex-end;
}
.m-list-timeline_title {
  grid-area: title;
  position: relative;
  padding: 16px;
  background-color: var(--COLOR_GRAY_LIGHT);
  border-radius: var(--BORDER_RADIUS);
  text-align: center;
  height: fit-content;
}
.m-list-timeline_title::before {
  display: block;
  content: "";
  width: 1em;
  height: 1em;
  position: absolute;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  left: 100%;
  border-left: 10px solid var(--COLOR_GRAY_LIGHT);
  border-right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.m-list-timeline_title::after {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  background-color: var(--COLOR_PRIMARY);
  border: 4px solid var(--COLOR_WHITE);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
}
.m-list-timeline_entry:nth-of-type(odd) .m-list-timeline_title::after {
  right: -40px;
}
.m-list-timeline_entry:nth-of-type(even) .m-list-timeline_title::after {
  left: -40px;
}
.m-list-timeline_year-01 {
  display: block;
  color: var(--COLOR_PRIMARY);
  font-size: var(--FONT_SIZE_3LG);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-list-timeline_year-01 .num {
  font-size: 3.2rem;
  line-height: 1.6;
}
.m-list-timeline_year-02 {
  display: block;
  font-size: var(--FONT_SIZE);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  line-height: 1.8;
}
.m-list-timeline_detail {
  grid-area: detail;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  font-size: var(--FONT_SIZE_MD);
  line-height: 1.6;
  padding-top: 24px;
}
.m-list-timeline_detail p:has(> .m-link) {
  margin-top: 8px;
}
.m-list-timeline_detail p > .m-link {
  font-size: var(--FONT_SIZE);
  font-weight: var(--FONT_WEIGHT);
}
.m-list-timeline_img {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding-top: 56px;
  height: fit-content;
}
.m-list-timeline_img:not(:has(> img)) {
  flex-direction: column;
}
.m-list-timeline_entry:nth-of-type(odd) + .m-list-timeline_img:not(:has(> img)) {
  align-items: flex-start;
  justify-content: flex-start;
}
.m-list-timeline_entry:nth-of-type(odd) + .m-list-timeline_img:not(:has(> img)) > * {
  justify-content: flex-start;
}
.m-list-timeline_entry:nth-of-type(even) + .m-list-timeline_img:not(:has(> img)) {
  align-items: flex-end;
  justify-content: flex-start;
}
.m-list-timeline_entry:nth-of-type(even) + .m-list-timeline_img:not(:has(> img)) > * {
  justify-content: flex-end;
}
.m-list-timeline_img img {
  height: fit-content;
}
.m-list-timeline_img-01, .m-list-timeline_img-02 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
@media (width <= 768px) {
  .m-list-timeline {
    display: flex;
    flex-direction: column;
    padding-inline: 8px 0;
  }
  .m-list-timeline_entry {
    grid-column-gap: 16px;
    padding: 32px 0 0;
  }
  .m-list-timeline_entry:first-child {
    padding-top: 0;
  }
  .m-list-timeline_entry:first-child::after {
    height: calc(100% - 35px);
    top: unset;
    bottom: 0;
  }
  .m-list-timeline_entry:last-of-type::after {
    height: 64px;
  }
  .m-list-timeline_entry:nth-of-type(odd), .m-list-timeline_entry:nth-of-type(even) {
    grid-template-areas: "title detail";
  }
  .m-list-timeline_entry:nth-of-type(odd) {
    grid-template-columns: auto 1fr;
  }
  .m-list-timeline_entry:nth-of-type(odd) .m-list-timeline_title::before {
    left: unset;
    right: 100%;
    border-left: 0;
    border-right: 10px solid var(--COLOR_GRAY_LIGHT);
  }
  .m-list-timeline_entry:nth-of-type(odd) .m-list-timeline_detail {
    margin-right: 0;
    text-align: left;
  }
  .m-list-timeline_entry:nth-of-type(even)::before {
    left: -11px;
  }
  .m-list-timeline_entry:nth-of-type(even)::after {
    left: -4px;
  }
  .m-list-timeline_entry:nth-of-type(even) .m-list-timeline_detail {
    margin-left: 0;
  }
  .m-list-timeline_entry:nth-of-type(even) + .m-list-timeline_img {
    justify-content: flex-start;
    align-items: flex-start !important;
  }
  .m-list-timeline_entry::after {
    left: -4px;
  }
  .m-list-timeline_title {
    font-size: 1.1rem;
    margin-left: 20px;
    padding: 8px;
  }
  .m-list-timeline_title::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    position: absolute;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    left: -1em;
  }
  .m-list-timeline_title::after {
    left: -31px !important;
    right: unset !important;
  }
  .m-list-timeline_year-01 {
    font-size: 1.1rem;
  }
  .m-list-timeline_year-01 .num {
    font-size: 2.6rem;
    line-height: 1.3541666667;
  }
  .m-list-timeline_year-02 {
    display: block;
    font-size: 1.1rem;
    line-height: 1.7454545455;
  }
  .m-list-timeline_detail {
    padding: 0;
    margin: 0;
    font-size: var(--FONT_SIZE);
  }
  .m-list-timeline_img {
    position: relative;
    padding-left: 124px;
    padding-top: 32px;
  }
  .m-list-timeline_img:not(:has(> img)) > * {
    justify-content: flex-start !important;
  }
  .m-list-timeline_img::after {
    display: block;
    content: "";
    width: 1px;
    height: 100%;
    background: var(--COLOR_GRAY_DARK);
    position: absolute;
    top: 0;
    left: -4px;
  }
  .m-list-timeline_img:last-child::after {
    display: none;
  }
}

/* .m-list
----------------------------------------------- */
.m-list {
  display: grid;
  row-gap: 8px;
  margin-top: 24px;
  width: fit-content;
}
.m-list_item {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
  column-gap: 6px;
}
.m-list_content .m-text,
.m-list_content .m-list-dots {
  margin-top: 8px;
}

/* .m-link
----------------------------------------------- */
.m-link {
  display: inline-block;
  margin-top: 16px;
  text-decoration: underline;
  transition: var(--TRANSITION);
}
.m-link_icon {
  margin-inline: 8px;
  vertical-align: middle;
}
.m-link_icon--btn {
  position: relative;
}
.m-link_icon--btn::before, .m-link_icon--btn::after {
  position: absolute;
  content: "";
}
.m-link_icon--btn > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-link:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-link_media {
  display: flex;
  margin-inline: auto;
  width: 100%;
  transition: var(--TRANSITION);
}
.m-link_media:is(:hover, :active, :focus-visible) {
  opacity: 0.4;
}

/* .m-link-list
----------------------------------------------- */
.m-link-list {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.m-link-list .m-link {
  margin-top: 0;
}
.m-link-list_item a {
  text-decoration: underline;
  transition: var(--TRANSITION);
}
.m-link-list_item a:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}

/* .m-link-anchor
----------------------------------------------- */
.m-link-anchor {
  font-size: var(--FONT_SIZE_MD);
  position: relative;
  padding-left: 24px;
  display: inline-block;
  transition: 0.3s ease;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-link-anchor::before {
  position: absolute;
  content: "";
  top: 35%;
  left: 0;
  width: 12px;
  height: 12px;
  background: url("../../assets/img/icon/icon-arrow-anchor.svg") no-repeat center/12px;
  filter: var(--FILTER_COLOR_PRIMARY);
}
.m-link-anchor:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-link-anchor {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-link-anchor::before {
    top: 8px;
  }
}

/* .m-list-anchor
----------------------------------------------- */
.m-link-anchor-list {
  display: flex;
  align-items: center;
}
.m-link-anchor-list_item + .m-link-anchor-list_item {
  padding-left: 24px;
  margin-left: 24px;
  border-left: 1px solid var(--COLOR_GRAY_DARK);
}
@media (768px < width) {
  .m-link-anchor-list.center {
    justify-content: center;
  }
}
@media (width <= 768px) {
  .m-link-anchor-list {
    flex-wrap: wrap;
    gap: 16px 0;
    width: 100%;
  }
  .m-link-anchor-list_item {
    width: calc(50% - 20px);
  }
  .m-link-anchor-list_item + .m-link-anchor-list_item {
    padding-left: 0;
    margin-left: 0;
    border-left: none;
  }
  .m-link-anchor-list_item:nth-child(2n) {
    padding-left: 20px;
    margin-left: 20px;
    border-left: 1px solid var(--COLOR_GRAY_DARK);
    width: 50%;
  }
  .m-link-anchor-list .m-link-anchor {
    width: 100%;
  }
}

/* .m-link-icon
----------------------------------------------- */
.m-link-icon {
  position: relative;
  display: inline-block;
  margin-top: 8px;
  padding-left: 32px;
  transition: var(--TRANSITION);
}
.m-link-icon::before, .m-link-icon::after {
  position: absolute;
  content: "";
  top: 4px;
  left: 0;
  width: 22px;
  height: 22px;
}
.m-link-icon::before {
  background-color: var(--COLOR_WHITE);
  border-radius: 50%;
  transition: 0.3s ease;
  border: 1px solid var(--COLOR_PRIMARY);
}
.m-link-icon::after {
  background: url("../../assets/img/icon/icon-arrow.svg") no-repeat center/8px;
  filter: var(--FILTER_COLOR_PRIMARY);
}
.m-link-icon:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}

/* .m-link-icon-02
----------------------------------------------- */
.m-link-icon-02 {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-right: 44px;
  font-size: var(--FONT_SIZE_MD);
  transition: var(--TRANSITION);
}
.m-link-icon-02::before, .m-link-icon-02::after {
  position: absolute;
  content: "";
}
.m-link-icon-02::before {
  right: 0;
  width: 32px;
  height: 32px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: scale var(--TRANSITION);
}
.m-link-icon-02::after {
  right: 9px;
  width: 13px;
  height: 10px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23FFF%22%20stroke%3d%22%23FFF%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23FFF%22%20stroke%3d%22%23FFF%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-link-icon-02:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-link-icon-02:is(:hover, :active, :focus-visible)::before {
  scale: 1.1875;
}
.m-link-icon-02:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-link-icon-02.em {
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-link-icon-02.lg {
  font-weight: var(--FONT_WEIGHT_BOLD);
  font-size: var(--FONT_SIZE_4LG);
}
@media (width <= 768px) {
  .m-link-icon-02 {
    font-size: var(--FONT_SIZE);
  }
  .m-link-icon-02::before {
    width: 28px;
    height: 28px;
  }
  .m-link-icon-02::after {
    right: 8px;
  }
  .m-link-icon-02.em {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-link-icon-02.em::before {
    width: 32px;
    height: 32px;
  }
  .m-link-icon-02.em::after {
    right: 9px;
  }
  .m-link-icon-02.lg {
    font-size: var(--FONT_SIZE_LG);
  }
}

/* .m-link-icon-list
----------------------------------------------- */
.m-link-icon-list {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  margin-top: 16px;
  padding-left: 0;
}
.m-link-icon-list .m-link-icon {
  margin-top: 0;
}
.m-link-icon-list.row {
  flex-direction: row;
  gap: 24px;
}
.m-link-icon-list.anchor, .m-link-icon-list.anchor-02 {
  flex-flow: row wrap;
  gap: 24px 32px;
}
.m-link-icon-list.anchor .m-link-icon, .m-link-icon-list.anchor-02 .m-link-icon {
  padding-left: 30px;
}
.m-link-icon-list.anchor .m-link-icon::after, .m-link-icon-list.anchor-02 .m-link-icon::after {
  rotate: 90deg;
}
@media (768px < width) {
  .m-link-icon-list.row-pc {
    flex-flow: row wrap;
    column-gap: 24px;
  }
}
@media (width <= 768px) {
  .m-link-icon-list.row {
    gap: 16px;
  }
  .m-link-icon-list.anchor-02 {
    flex-flow: unset;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: -16px;
  }
  .m-link-icon-list.anchor-02 .m-link-icon {
    padding-bottom: 16px;
    font-size: var(--FONT_SIZE_SM);
  }
  .m-link-icon-list.anchor-02 .m-link-icon::before, .m-link-icon-list.anchor-02 .m-link-icon::after {
    top: 2px;
  }
  .m-link-icon-list.anchor-02 .m-link-icon-list_item {
    width: calc(50% - 8px);
  }
  .m-link-icon-list.anchor-02 .m-link-icon-list_item:nth-child(2n+1) {
    position: relative;
  }
  .m-link-icon-list.anchor-02 .m-link-icon-list_item:nth-child(2n+1)::after {
    content: "";
    position: absolute;
    border-top: 1px solid var(--COLOR_GRAY_DARK);
    display: block;
    width: calc(200% + 16px);
    margin-right: calc(-100% - 16px);
    top: -16px;
  }
  .m-link-icon-list.anchor-02 .m-link-icon-list_item:nth-child(1)::after {
    content: unset;
  }
}

/* .m-list-border
----------------------------------------------- */
.m-link-border {
  position: relative;
  margin-block: 32px;
  padding-bottom: 16px;
  border-bottom: 3px solid var(--COLOR_GRAY_DARK);
}
.m-link-border::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  width: 80px;
  height: 3px;
  background-color: var(--COLOR_PRIMARY);
}
.m-link-border a {
  font-size: var(--FONT_SIZE_LG);
}
@media (width <= 768px) {
  .m-link-border {
    padding-bottom: 16px;
    margin-block: 24px;
  }
  .m-link-border::before {
    width: 64px;
  }
  .m-link-border a {
    font-size: var(--FONT_SIZE_MD);
  }
}

/* .m-link-guide
----------------------------------------------- */
.m-link-guide {
  margin-top: 32px;
}
.m-link-guide_list {
  display: flex;
  flex-wrap: wrap;
  gap: 0 16px;
}
.m-link-guide_list .m-link-guide_item:nth-child(3n+2) .m-link-guide_local {
  margin-left: calc(-100% - 16px);
  border-radius: var(--BORDER_RADIUS);
}
.m-link-guide_list .m-link-guide_item:nth-child(3n) .m-link-guide_local {
  margin-left: calc(-200% - 32px);
  border-radius: var(--BORDER_RADIUS) 0 var(--BORDER_RADIUS) var(--BORDER_RADIUS);
}
.m-link-guide_link {
  padding: 16px 42px 16px 24px;
  position: relative;
  display: flex;
  align-items: center;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
}
.m-link-guide_link.current {
  color: var(--COLOR_PRIMARY);
  font-weight: bold;
}
.m-link-guide_link::after {
  position: absolute;
  content: "";
  right: 24px;
  width: 18px;
  height: 14px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-link-guide_link:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-link-guide_link:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-link-guide_item {
  width: calc(33.3333333333% - 10.6666666667px);
  margin-bottom: 16px;
  position: relative;
}
.m-link-guide_item.current .m-link-guide_link {
  color: var(--COLOR_PRIMARY);
  font-weight: bold;
  padding: 16px 42px 32px 24px;
  border-radius: var(--BORDER_RADIUS) var(--BORDER_RADIUS) 0 0;
}
.m-link-guide_item.current .m-link-guide_local {
  position: relative;
  display: block;
  z-index: 1;
}
.m-link-guide_local {
  display: none;
  background-color: var(--COLOR_WHITE);
  width: calc(300% + 32px);
  padding: 24px;
  border-radius: 0 var(--BORDER_RADIUS) var(--BORDER_RADIUS);
}
.m-link-guide_local-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 40px;
}
.m-link-guide_local-item {
  width: calc(50% - 20px);
}
.m-link-guide_local-item.current {
  font-weight: bold;
}
@media (width <= 768px) {
  .m-link-guide {
    margin-top: 24px;
  }
  .m-link-guide_link {
    padding: 16px 34px 16px 16px;
  }
  .m-link-guide_link::after {
    right: 16px;
  }
  .m-link-guide_list {
    flex-direction: column;
  }
  .m-link-guide_item {
    width: 100%;
    margin-bottom: 8px;
  }
  .m-link-guide_local {
    margin-left: unset !important;
    width: 100%;
    padding: 0 24px 24px;
    border-radius: 0 0 var(--BORDER_RADIUS) var(--BORDER_RADIUS) !important;
  }
  .m-link-guide_local-list {
    flex-direction: column;
    gap: 16px;
  }
  .m-link-guide_local-item {
    width: 100%;
  }
  .m-link-guide_local-item + .m-link-guide_local-item {
    border-top: 1px solid var(--COLOR_GRAY_DARK);
    padding-top: 16px;
  }
}

/* .m-box
----------------------------------------------- */
.m-box,
.m-box-02 {
  margin-top: 48px;
  padding: 40px;
  background-color: var(--COLOR_GRAY_LIGHT);
  border-radius: var(--BORDER_RADIUS);
}
.m-box_inner > :first-child,
.m-box-02_inner > :first-child {
  margin-top: 0;
}
.m-box_inner > :last-child,
.m-box-02_inner > :last-child {
  margin-bottom: 0;
}
.m-box_hdg,
.m-box-02_hdg {
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-box_hdg + *,
.m-box_hdg + *[class],
.m-box-02_hdg + *,
.m-box-02_hdg + *[class] {
  margin-top: 0;
}
.m-box_hdg.icon-pen, .m-box_hdg.icon-key,
.m-box-02_hdg.icon-pen,
.m-box-02_hdg.icon-key {
  padding-left: 32px;
  background-repeat: no-repeat;
  background-position: left top 4px;
}
.m-box_hdg.icon-pen,
.m-box-02_hdg.icon-pen {
  background-image: url("../../assets/img/icon/icon-pen.svg");
}
.m-box_hdg.icon-key,
.m-box-02_hdg.icon-key {
  background-image: url("../../assets/img/icon/icon-key.svg");
}
main[class=rd-story_color-orange] .m-box,
main[class=rd-story_color-orange] .m-box-02 {
  background-color: #FCEADE;
}
main[class=rd-story_color-turquoise] .m-box,
main[class=rd-story_color-turquoise] .m-box-02 {
  background-color: #E6F3F5;
}
main[class=rd-story_color-yellow] .m-box,
main[class=rd-story_color-yellow] .m-box-02 {
  background-color: #FCF6E1;
}
.m-box.border,
.m-box-02.border {
  border: 3px solid #D9D9D9;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
@media (width <= 768px) {
  .m-box,
  .m-box-02 {
    margin-top: 32px;
    padding: 24px;
  }
  .m-box_hdg,
  .m-box-02_hdg {
    padding-bottom: 12px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-box_hdg.icon-pen, .m-box_hdg.icon-key,
  .m-box-02_hdg.icon-pen,
  .m-box-02_hdg.icon-key {
    padding-bottom: 16px;
  }
  .m-box.sp-full,
  .m-box-02.sp-full {
    width: calc(100% + 40px);
    margin-left: -20px;
    border-radius: unset;
  }
}

.m-box-02 {
  margin-top: 64px;
}
.m-box-02_hdg {
  border-bottom: none;
  padding-bottom: 0;
}
.m-box-02_hdg.center {
  text-align: center;
}
.m-box-02_text {
  margin-top: 24px;
}
.m-box-02_text > :first-child {
  margin-top: 0;
}
.m-box-02_text > :last-child {
  margin-bottom: 0;
}
.m-box.notice {
  margin-top: 64px;
  padding: 37px 45px;
  border: 3px solid var(--COLOR_GRAY);
  background-color: var(--COLOR_WHITE);
  text-align: center;
}
.m-box.notice .m-box_hdg {
  position: relative;
  display: inline-flex;
  padding-bottom: 0;
  padding-left: 50px;
  border-bottom: none;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_PRIMARY);
  text-align: center;
}
.m-box.notice .m-box_hdg::before {
  position: absolute;
  content: "";
  top: 7px;
  left: 0;
  width: 38px;
  height: 25px;
  background: url("../../assets/img/icon/icon-notice.svg") no-repeat center/contain;
}
.m-products-detail + .m-box.notice {
  margin-top: 64px;
}
@media (width <= 768px) {
  .m-box.notice {
    margin-top: 48px;
    padding: 21px;
    text-align: left;
  }
  .m-box.notice .m-box_hdg {
    display: block;
    padding-left: 0;
    padding-top: 33px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-box.notice .m-box_hdg::before {
    inset: 0;
    margin-inline: auto;
  }
  .m-box.notice .m-text {
    margin-inline: auto;
    width: fit-content;
  }
  .m-products-detail + .m-box.notice {
    margin-top: 48px;
  }
}
.m-box.cv-products {
  margin-block: 0 96px;
  padding-block: 0;
  padding-inline: var(--GUTTER_CONTENT);
  background-color: transparent;
}
.m-box.cv-products .m-box_inner {
  margin-inline: auto;
  padding: 32px var(--GUTTER_CONTENT) 40px;
  max-width: var(--WIDTH_CONTENT);
  background-color: var(--COLOR_PRIMARY_LIGHT);
  border-radius: var(--BORDER_RADIUS);
}
.m-box.cv-products .m-box_hdg {
  padding-bottom: 0;
  border-bottom: none;
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
@media (width <= 768px) {
  .m-box.cv-products {
    margin-bottom: 0;
    padding-inline: 0;
  }
  .m-box.cv-products .m-box_inner {
    max-width: unset;
    border-radius: 0;
  }
}

/* .m-box-media
----------------------------------------------- */
.m-box-media {
  margin-top: 48px;
  padding: 40px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_GRAY_LIGHT);
}
.m-box-media_hdg {
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-box-media_hdg + *,
.m-box-media_hdg + *[class] {
  margin-top: 0;
}
.m-box-media_hdg.icon-pen, .m-box-media_hdg.icon-key {
  padding-left: 32px;
  background-repeat: no-repeat;
  background-position: left top 4px;
}
.m-box-media_hdg.icon-pen {
  background-image: url("../../assets/img/icon/icon-pen.svg");
}
.m-box-media_hdg.icon-key {
  background-image: url("../../assets/img/icon/icon-key.svg");
}
.m-box-media_inner {
  display: flex;
  flex-direction: row-reverse;
  gap: 32px;
}
.m-box-media_content {
  flex: 1;
}
.m-box-media_title {
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
.m-box-media_media > :first-child {
  margin-top: 0;
}
.m-box-media_media > :last-child {
  margin-bottom: 0;
}
@media (width <= 768px) {
  .m-box-media {
    margin-top: 32px;
    padding: 24px;
  }
  .m-box-media_hdg {
    padding-bottom: 12px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-box-media_hdg.icon-pen, .m-box-media_hdg.icon-key {
    padding-bottom: 16px;
  }
  .m-box-media_inner {
    flex-direction: column-reverse;
  }
  .m-box-media_title {
    font-size: var(--FONT_SIZE_MD);
    text-align: center;
  }
  .m-box-media_media {
    margin-inline: auto;
  }
}
.m-box-media.profile {
  margin-top: 64px;
}
.m-box-media.profile .m-box-media_inner + .m-box-media_inner {
  margin-top: 24px;
}
@media (width <= 768px) {
  .m-box-media.profile {
    margin-top: 48px;
  }
  .m-box-media.profile .m-box-media_inner {
    gap: 16px;
  }
  .m-box-media.profile .m-box-media_media {
    max-width: 216px;
    height: auto;
    text-align: center;
  }
}
@media (768px < width) {
  .m-box-media.profile .m-box-media_media.unq-greetings-img-fixed-pc {
    width: auto;
    height: 188px;
    aspect-ratio: 800/455;
  }
}

/* .m-box-customer
----------------------------------------------- */
.m-box-customer {
  --color-main: #FF961F;
  --color-sub: #FDF7F0;
  margin-top: 80px;
}
.m-box-customer_opinion {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  gap: 24px 48px;
  padding-bottom: 24px;
}
.m-box-customer_opinion::after {
  position: absolute;
  content: "";
  top: 100%;
  left: calc(50% - 23px);
  width: 46px;
  height: 26px;
  background-color: var(--color-main);
  mask: url("../../assets/img/icon/icon-arrow-box.svg") no-repeat center/46px 26px;
}
.m-box-customer_bubble {
  position: relative;
  padding: 21px 37px;
  width: 100%;
  border: 3px solid var(--COLOR_GRAY);
  border-radius: var(--BORDER_RADIUS);
  flex: 1;
}
.m-box-customer_bubble::before, .m-box-customer_bubble::after {
  position: absolute;
  content: "";
  border: 3px solid var(--COLOR_GRAY);
  border-radius: 50%;
  background-color: var(--COLOR_WHITE);
}
.m-box-customer_bubble::before {
  left: -34px;
  bottom: 35%;
  width: 16px;
  height: 16px;
}
.m-box-customer_bubble::after {
  top: calc(50% - 12px);
  left: -15px;
  width: 24px;
  height: 24px;
}
.m-box-customer_bubble .m-icon-label_item {
  background-color: var(--color-main);
}
.m-box-customer_text {
  margin-top: 8px;
}
.m-box-customer_text > :first-child {
  margin-top: 0;
}
.m-box-customer_text > :last-child {
  margin-bottom: 0;
}
.m-box-customer_content {
  margin-top: 44px;
  padding: 40px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--color-sub);
}
.m-box-customer_title {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-bottom: 32px;
  font-size: var(--FONT_SIZE_3LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-box-customer_title + * {
  margin-top: 0 !important;
}
.m-box-customer_title-iconText {
  display: inline-block;
  width: 44px;
  height: 44px;
  border-radius: var(--BORDER_RADIUS_SM);
  background-color: var(--color-main);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  color: var(--COLOR_WHITE);
  text-align: center;
}
.m-box-customer_title-text {
  margin-top: 0;
}
.m-box-customer .m-media.video {
  width: 800px;
  max-width: 100%;
}
.m-box-customer.color-red {
  --color-main: #FF8080;
  --color-sub: var(--COLOR_PRIMARY_LIGHT);
}
@media (width <= 768px) {
  .m-box-customer {
    margin-top: 48px;
  }
  .m-box-customer_opinion {
    flex-direction: column-reverse;
    align-items: center;
    padding-bottom: 20px;
  }
  .m-box-customer_opinion::after {
    left: calc(50% - 14px);
    width: 28px;
    height: 16px;
    mask-size: 28px 16px;
  }
  .m-box-customer_person {
    max-width: 88px;
  }
  .m-box-customer_bubble {
    padding-inline: 21px;
  }
  .m-box-customer_bubble::before {
    top: -27px;
    left: 32%;
    bottom: unset;
    width: 12px;
    height: 12px;
  }
  .m-box-customer_bubble::after {
    top: -12px;
    left: 28%;
    width: 18px;
    height: 18px;
  }
  .m-box-customer_bubble .m-icon-label_item {
    padding-block: 4px;
    font-size: var(--FONT_SIZE_SM);
  }
  .m-box-customer_content {
    margin-top: 32px;
    padding: 24px;
  }
  .m-box-customer_title {
    flex-direction: column;
    margin-bottom: 16px;
    font-size: var(--FONT_SIZE_LG);
  }
  .m-box-customer_title-iconText {
    width: 36px;
    height: 36px;
  }
}

/* .m-box-download
----------------------------------------------- */
.m-box-download {
  background-color: var(--COLOR_WHITE);
  border: 1px solid var(--COLOR_GRAY_DARK);
  border-radius: var(--BORDER_RADIUS);
  margin-bottom: 64px;
}
.m-box-download_item {
  padding: 16px 40px 16px 32px;
  display: flex;
  align-items: center;
}
.m-box-download_item + .m-box-download_item {
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-box-download_label {
  display: flex;
  align-items: center;
  border-right: 1px solid var(--COLOR_GRAY);
  padding-inline: 28px 32px;
  gap: 24px;
  flex: 1;
}
.m-box-download_label .m-link {
  margin-top: 0;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-box-download_check-inner {
  display: flex;
  align-items: center;
  width: 44%;
  max-width: 492px;
}
.m-box-download_detail {
  display: flex;
  align-items: center;
  padding-left: 32px;
  justify-content: space-between;
  flex: 1;
  gap: 16px;
}
.m-box-download_link {
  font-size: var(--FONT_SIZE_SM);
  min-width: 56px;
}
.m-box-download_link > img {
  display: block;
  margin: 0 auto 0 8px;
}
.m-box-download > ul {
  padding: 0;
}
.m-box-download_text {
  max-width: 503px;
}
.m-box-download_check {
  appearance: none;
  border: 2px solid var(--COLOR_GRAY_DARK);
  min-width: 24px;
  height: 24px;
  border-radius: 4px;
  position: relative;
}
.m-box-download_check:checked {
  border: none;
  background-color: var(--COLOR_PRIMARY);
}
.m-box-download_check:checked::before, .m-box-download_check:checked::after {
  content: "";
  position: absolute;
  background-color: var(--COLOR_WHITE);
  border-radius: 4px;
}
.m-box-download_check:checked::before {
  top: 10px;
  left: 8px;
  width: 12px;
  height: 3px;
  transform: rotate(-45deg);
}
.m-box-download_check:checked::after {
  top: 11px;
  left: 4px;
  width: 8px;
  height: 3px;
  transform: rotate(45deg);
}
@media (width <= 768px) {
  .m-box-download {
    margin-bottom: 48px;
  }
  .m-box-download_item {
    flex-direction: column;
    padding: 12px 24px 16px;
  }
  .m-box-download_label {
    width: 100%;
    padding: 0;
    gap: 8px;
    border-right: none;
  }
  .m-box-download_label .m-link {
    font-size: var(--FONT_SIZE);
  }
  .m-box-download_check-inner {
    width: 100%;
    border-bottom: 1px solid var(--COLOR_GRAY);
    padding-bottom: 8px;
    max-width: unset;
    gap: 12px;
  }
  .m-box-download_detail {
    padding: 0;
    flex-direction: column;
    gap: 0;
  }
  .m-box-download_text {
    padding-block: 16px 24px;
    max-width: unset;
  }
}

/* .m-btn
----------------------------------------------- */
.m-btn {
  position: relative;
  display: inline-grid;
  place-items: center;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border: 2px solid var(--COLOR_PRIMARY);
  border-radius: 3em;
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_FONT);
  text-align: center;
  transition: var(--TRANSITION);
}
.m-btn::before, .m-btn::after {
  position: absolute;
  content: "";
}
.m-btn::before {
  right: 14px;
  width: 22px;
  height: 22px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: var(--TRANSITION);
}
.m-btn::after {
  right: 20px;
  width: 10px;
  height: 8px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-btn:where(.color-02) {
  background-color: var(--COLOR_PRIMARY);
  color: var(--COLOR_WHITE);
}
.m-btn:where(.color-02)::before {
  background-color: var(--COLOR_WHITE);
}
.m-btn:where(.color-02)::after {
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-btn:where(.icon-reverse)::after {
  rotate: 180deg;
}
.m-btn.sm {
  padding-block: 14px;
  padding-inline: 38px 46px;
  min-width: 218px;
}
.m-btn.sm.icon-reverse {
  padding-inline: 46px 38px;
}
.m-btn.sm.icon-reverse::before {
  left: 14px;
}
.m-btn.sm.icon-reverse::after {
  left: 20px;
}
.m-btn.md {
  padding-block: 18px;
  padding-inline: 38px 46px;
  min-width: 260px;
  max-width: 352px;
}
.m-btn.md.icon-reverse {
  padding-inline: 46px 38px;
}
.m-btn.md.icon-reverse::before {
  left: 14px;
}
.m-btn.md.icon-reverse::after {
  left: 20px;
}
.m-btn.em {
  padding-block: 22px;
  padding-inline: 46px 70px;
  max-width: 328px;
}
.m-btn.em::before {
  right: 22px;
  width: 32px;
  height: 32px;
}
.m-btn.em::after {
  right: 31px;
  width: 13px;
  height: 10px;
}
.m-btn.em.icon-reverse {
  padding-inline: 70px 46px;
}
.m-btn.em.icon-reverse::before {
  left: 22px;
}
.m-btn.em.icon-reverse::after {
  left: 31px;
}
.m-btn .m-link_icon {
  transition: var(--TRANSITION);
}
.m-btn.showMore {
  cursor: pointer;
}
.m-btn.showMore.fn-none {
  display: none;
}
.m-btn.showMore.fn-open::after {
  display: none;
}
.m-btn.showMore::before, .m-btn.showMore::after {
  position: absolute;
  content: "";
  right: 27px;
  width: 2px;
  height: 14px;
  background-color: var(--COLOR_WHITE);
  border-radius: 1em;
  z-index: 1;
}
.m-btn.showMore::before {
  rotate: 90deg;
}
.m-btn.showMore::after {
  background-image: none;
}
.m-btn.showMore > span::before,
.m-btn.showMore .m-btn_text::before {
  display: block;
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  margin: auto;
  inset: 0 16px 0 auto;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: scale var(--TRANSITION);
}
.m-btn.showMore:is(:hover, :active, :focus-visible)::before, .m-btn.showMore:is(:hover, :active, :focus-visible)::after {
  animation: none;
}
.m-btn.showMore:is(:hover, :active, :focus-visible) > span::before,
.m-btn.showMore:is(:hover, :active, :focus-visible) .m-btn_text::before {
  scale: 1.1875;
}
.m-btn.search {
  font-size: var(--FONT_SIZE_MD);
}
.m-btn.search.icon-reverse {
  padding: 14px 40px 14px 50px;
}
.m-btn.search.icon-reverse::before {
  background-color: unset;
}
.m-btn.search.icon-reverse::after {
  background: url("../../assets/img/icon/icon-search.svg") no-repeat center/26px 26px;
  filter: var(--FILTER_COLOR_WHITE);
  width: 26px;
  height: 26px;
  rotate: 0deg;
  transition: var(--TRANSITION);
}
.m-btn.download.icon-reverse {
  padding: 14px 32px 14px 56px;
}
.m-btn.download.icon-reverse::before, .m-btn.download.icon-reverse::after {
  display: block !important;
}
.m-btn.download.icon-reverse::before {
  background-color: unset;
}
.m-btn.download.icon-reverse::after {
  background: url("../../assets/img/icon/icon-download.svg") no-repeat center/20px 20px;
  width: 20px;
  height: 20px;
  rotate: 0deg;
}
.m-btn.download.icon-reverse:is(:hover, :active, :focus-visible)::before, .m-btn.download.icon-reverse:is(:hover, :active, :focus-visible)::after {
  animation: unset;
}
.m-btn.check.icon-reverse {
  padding: 14px 32px 14px 56px;
}
.m-btn.check.icon-reverse::before {
  background-color: unset;
}
.m-btn.check.icon-reverse::after {
  background: url("../../assets/img/icon/icon-check.svg") no-repeat center/20px 20px;
  width: 20px;
  height: 20px;
  rotate: 0deg;
}
.m-btn.check.icon-reverse:is(:hover, :active, :focus-visible)::before, .m-btn.check.icon-reverse:is(:hover, :active, :focus-visible)::after {
  animation: unset;
}
.m-btn.check.icon-reverse[disabled] {
  border: 2px solid var(--COLOR_GRAY);
  color: #808080;
}
.m-btn.check.icon-reverse[disabled]::after {
  background: url("../../assets/img/icon/icon-check-disabled.svg") no-repeat center/20px 20px;
}
.m-btn.check.icon-reverse[disabled]:is(:hover, :active, :focus-visible) {
  scale: unset;
}
.m-btn:is(.m-btn-drawer_btn)::after {
  background-image: none;
}
.m-btn[href^=http]:is(.js-link-icon) .m-link_icon {
  position: absolute;
  right: 16px;
}
.m-btn[href^=http]::before, .m-btn[href^=http]::after {
  width: 15px;
  height: 12px;
  background: var(--COLOR_WHITE);
  border: 2px solid var(--COLOR_PRIMARY);
  border-radius: 1.2px;
  transition: var(--TRANSITION);
}
.m-btn[href^=http]::before {
  right: 23px;
}
.m-btn[href^=http]::after {
  top: calc(50% - 11px);
  right: 17px;
}
.m-btn[href^=http] .m-link_icon {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-btn[href^=http].color-02::before, .m-btn[href^=http].color-02::after {
  background: var(--COLOR_PRIMARY);
  border-color: 2px solid var(--COLOR_WHITE);
}
.m-btn[href^=http]:is(:hover, :active, :focus-visible)::before, .m-btn[href^=http]:is(:hover, :active, :focus-visible)::after {
  scale: 1;
  animation: none;
}
.m-btn[href$=".pdf"]::before, .m-btn[href$=".pdf"]::after {
  display: none;
}
.m-btn[href$=".pdf"]:is(.js-link-icon) .m-link_icon {
  position: absolute;
  right: 16px;
}
.m-btn:is(:hover, :active, :focus-visible) {
  scale: 1.03;
}
.m-btn:is(:hover, :active, :focus-visible)::before {
  scale: 1.1818181818;
}
.m-btn:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-btn:is(:hover, :active, :focus-visible):where(.icon-reverse)::after {
  animation: hover-flow-reverse 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-btn:is(:hover, :active, :focus-visible).search::after {
  animation: none;
  rotate: 12deg;
}
.m-btn:is(:hover, :active, :focus-visible):is(.m-btn-drawer_btn)::before {
  scale: none;
}
.m-btn:is(:hover, :active, :focus-visible):is(.m-btn-drawer_btn)::after {
  animation: none;
}
@media (width <= 768px) {
  .m-btn.search {
    min-width: 244px;
    padding: 14px 48px !important;
  }
}

/* .m-btn-list
----------------------------------------------- */
.m-btn-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 24px;
}
.m-btn-list.gap-wide {
  column-gap: 24px;
}
.m-btn-list.gap-big-wide {
  gap: 32px;
}
.m-btn-list.center {
  justify-content: center;
}
.m-btn-list.right {
  justify-content: flex-end;
}
@media (width <= 640px) {
  .m-btn-list:has(.m-btn-drawer) {
    flex-direction: column;
  }
  .m-btn-list:has(.m-btn-drawer) li {
    display: flex;
    justify-content: center;
  }
}

/* .m-btn-layout
----------------------------------------------- */
.m-btn-layout {
  display: flex;
  margin-top: 48px;
}
.m-btn-layout.center {
  justify-content: center;
}
.m-btn-layout.right {
  justify-content: flex-end;
}
.m-btn-layout:has(.m-btn.fn-none) {
  display: none !important;
}
@media (width <= 768px) {
  .m-btn-layout.sp-narrow {
    margin-top: 32px;
  }
}

/* .m-pager
----------------------------------------------- */
.m-pager {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px 32px;
  margin-top: 64px;
}
.m-pager_num {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 16px;
}
.m-pager_item.current .m-pager_link {
  border-color: var(--COLOR_PRIMARY);
  background-color: var(--COLOR_PRIMARY);
  color: var(--COLOR_WHITE);
}
.m-pager_link {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  color: var(--COLOR_FONT);
  border-radius: 50%;
  border: 2px solid var(--COLOR_GRAY_DARK);
  background-color: var(--COLOR_WHITE);
  font-family: var(--FONT_FAMILY_SECONDARY);
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  transition: color var(--TRANSITION), border-color var(--TRANSITION);
  cursor: pointer;
}
.m-pager_link.prev, .m-pager_link.next {
  position: relative;
  padding-block: 5px;
  border-radius: 3em;
  width: auto;
  height: auto;
  font-family: var(--FONT_FAMILY_PRIMARY);
  font-size: var(--FONT_SIZE);
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
.m-pager_link.prev::before, .m-pager_link.next::before {
  position: absolute;
  content: "";
  width: 9px;
  height: 5px;
  background-color: var(--COLOR_BLACK);
  mask: url("../../assets/img/icon/icon-arrow-bottom.svg") no-repeat center/9px 5px;
  transition: filter var(--TRANSITION);
}
.m-pager_link.prev.disabled, .m-pager_link.next.disabled {
  border-color: var(--COLOR_GRAY_LIGHT);
  background-color: var(--COLOR_GRAY_LIGHT);
  color: #808080;
}
.m-pager_link.prev.disabled::before, .m-pager_link.next.disabled::before {
  background-color: #808080;
}
.m-pager_link.prev {
  padding-inline: 27px 10px;
}
.m-pager_link.prev::before {
  left: 10px;
  rotate: 90deg;
}
.m-pager_link.next {
  padding-inline: 10px 27px;
}
.m-pager_link.next::before {
  right: 10px;
  rotate: -90deg;
}
.m-pager_link-text {
  line-height: 0;
}
.m-pager_link .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-pager_link:is(:hover, :active, :focus-visible) {
  border-color: var(--COLOR_PRIMARY);
  color: var(--COLOR_PRIMARY);
}
.m-pager_link:is(:hover, :active, :focus-visible).prev::before, .m-pager_link:is(:hover, :active, :focus-visible).next::before {
  background-color: var(--COLOR_PRIMARY);
}
.m-pager_link:is(:hover, :active, :focus-visible).prev.disabled, .m-pager_link:is(:hover, :active, :focus-visible).next.disabled {
  cursor: not-allowed;
}
.m-pager_link:is(:hover, :active, :focus-visible).prev.disabled::before, .m-pager_link:is(:hover, :active, :focus-visible).next.disabled::before {
  background-color: #808080;
}
@media (width <= 768px) {
  .m-pager {
    gap: 12px;
    margin-top: 48px;
  }
  .m-pager_num {
    gap: 4px;
  }
  .m-pager_link {
    width: 32px;
    height: 32px;
    font-size: var(--FONT_SIZE_SM);
  }
  .m-pager_link.prev, .m-pager_link.next {
    padding-block: 3px;
    font-size: var(--FONT_SIZE_SM);
  }
}

/* .m-btn-decoration
----------------------------------------------- */
.m-btn-decoration {
  transition: var(--TRANSITION);
  background: url("../../assets/img/icon/parts-btn-frame.svg") no-repeat center;
  width: 215px;
  height: 64px;
  display: inline-grid;
  place-items: center;
  position: relative;
  padding-inline: 38px 46px;
  padding-block: 26px 14px;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-btn-decoration:is(:hover, :active, :focus-visible) {
  scale: 1.03;
}
.m-btn-decoration:is(.js-link-icon)::before, .m-btn-decoration:is(.js-link-icon)::after {
  display: none;
}
.m-btn-decoration:is(.js-link-icon) .m-link_icon {
  position: absolute;
  right: 14px;
  margin-top: 18px;
}

/* .m-panel
----------------------------------------------- */
.m-panel {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  padding-bottom: 24px;
  padding-inline: 24px;
  max-width: 282px;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 24px rgb(var(--COLOR_SHADOW)/0.15);
}
.m-panel_content {
  padding-top: 16px;
  border-top: 1px solid var(--COLOR_GRAY);
}
.m-panel_content > :first-child {
  margin-top: 0;
}
.m-panel_content > :last-child {
  margin-bottom: 0;
}
.m-panel_hdg {
  display: inline;
  padding-bottom: 6px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-panel_hdg:has(+ .m-panel_text-sub) {
  margin-right: 12px;
}
.m-panel_text {
  margin-top: 8px;
}
.m-panel_text-sub {
  position: relative;
  top: -2px;
  margin-top: 6px;
  font-size: 1.1rem;
  display: inline;
  padding: 2px 8px;
  background-color: var(--COLOR_WHITE);
  border: 1px solid #8D959E;
  border-radius: 0;
  font-weight: var(--FONT_WEIGHT);
  color: var(--COLOR_FONT);
  vertical-align: text-bottom;
  word-break: keep-all;
}
.m-panel_meta {
  margin-top: 12px;
}
.m-panel .m-icon-label_item {
  font-size: var(--FONT_SIZE_XS);
}
.m-panel_item {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
  max-width: 203px;
  overflow: hidden;
  aspect-ratio: 416/368;
}
.m-panel_item > img {
  object-fit: contain;
  aspect-ratio: 416/368;
}
@media (width <= 768px) {
  .m-panel {
    width: 100%;
    max-width: 260px;
  }
  .m-panel_hdg {
    font-size: var(--FONT_SIZE);
  }
  .m-panel_text {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-panel_item {
    max-width: 174px;
  }
  .m-panel .m-icon-label {
    gap: 8px;
  }
  .m-panel:only-child {
    margin-inline: auto;
    width: 100%;
    max-width: 311px;
  }
  .m-panel:only-child .m-panel_item {
    max-width: 210px;
  }
}

/* .m-panel-02
----------------------------------------------- */
.m-panel-02 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 32px;
}
.m-panel-02_item {
  position: relative;
  display: block;
  padding: 24px 56px 28px;
  width: 100%;
  min-width: 464px;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  overflow: hidden;
  text-align: center;
}
.m-panel-02_item::before, .m-panel-02_item::after {
  position: absolute;
  content: "";
}
.m-panel-02_item::before {
  right: 0;
  bottom: 0;
  width: 68px;
  height: 68px;
  border-top-left-radius: 100%;
  background-color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-02_item::after {
  bottom: 20px;
  right: 18px;
  width: 18px;
  height: 14px;
  aspect-ratio: 9/7;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-02_item:is(:hover, :active, :focus-visible)::before {
  scale: 1.125;
}
.m-panel-02_item:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-02_item:is(:hover, :active, :focus-visible) .m-panel-02_title {
  color: var(--COLOR_PRIMARY);
}
.m-panel-02_item:where(.bg-icon-brand) .m-panel-02_inner::before {
  background-image: url("../../assets/img/icon/icon-products.svg");
}
.m-panel-02_inner {
  position: relative;
  padding-top: 72px;
}
.m-panel-02_inner::before {
  position: absolute;
  content: "";
  inset: 0;
  margin-inline: auto;
  width: 64px;
  height: 64px;
  background: url("../../assets/img/icon/icon-hand.svg") no-repeat center/56px 60px;
}
.m-panel-02_title {
  font-size: var(--FONT_SIZE_3LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
.m-panel-02_text {
  margin-top: 8px;
  font-size: var(--FONT_SIZE_SM);
}
@media (width <= 768px) {
  .m-panel-02 {
    gap: 16px;
  }
  .m-panel-02_item {
    padding: 16px 16px 22px;
    min-width: 335px;
  }
  .m-panel-02_item::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-02_item::after {
    bottom: 15px;
    right: 14px;
    width: 13px;
    height: auto;
    mask-size: contain;
  }
  .m-panel-02_inner {
    padding-top: 64px;
  }
  .m-panel-02_inner::before {
    width: 50px;
    height: 50px;
    background-size: contain;
  }
  .m-panel-02_title {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-panel-02_text {
    font-size: 1.3rem;
  }
}

/* .m-panel-03
----------------------------------------------- */
.m-panel-03 {
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
  max-width: 282px;
}
.m-panel-03_title {
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  transition: var(--TRANSITION);
}
.m-panel-03_media {
  display: flex;
  justify-content: center;
  align-items: center;
  max-height: 141px;
  border-radius: var(--BORDER_RADIUS);
  overflow: hidden;
  aspect-ratio: 282/141;
  transition: scale var(--TRANSITION);
}
.m-panel-03_media img {
  object-fit: contain;
}
.m-panel-03:is(:hover, :active, :focus-visible) .m-panel-03_title {
  color: var(--COLOR_PRIMARY);
}
.m-panel-03:is(:hover, :active, :focus-visible) .m-panel-03_media {
  scale: 1.0425531915;
}
@media (width <= 768px) {
  .m-panel-03_title {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-panel-03_media {
    min-width: 200px;
    height: auto;
  }
}

/* .m-panel-04
----------------------------------------------- */
.m-panel-04 {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
}
.m-panel-04_hdg a {
  font-size: var(--FONT_SIZE_LG);
}
.m-panel-04_text {
  margin-top: 16px;
}
.m-panel-04_date {
  margin-top: 24px;
  font-size: var(--FONT_SIZE_XS);
  text-align: right;
}
.m-panel-04_content {
  padding: 24px;
}
.m-panel-04_item {
  border-radius: 8px 8px 0 0;
  overflow: hidden;
}
.m-panel-04_item img {
  transition: 0.3s ease;
  width: 100%;
}
.m-panel-04:is(:hover, :active, :focus-visible) .m-panel-04_item img {
  transform: scale(1.05, 1.05);
}
.m-panel-04:is(:hover, :active, :focus-visible) .m-link-icon-02 {
  color: var(--COLOR_PRIMARY);
}
.m-panel-04:is(:hover, :active, :focus-visible) .m-link-icon-02::before {
  scale: 1.1875;
}
.m-panel-04:is(:hover, :active, :focus-visible) .m-link-icon-02::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
@media (width <= 768px) {
  .m-panel-04_hdg a {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-panel-04_text {
    margin-top: 8px;
  }
  .m-panel-04_date {
    font-size: var(--FONT_SIZE_SM);
  }
}

.m-panel-04-col {
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  display: grid;
  margin-top: 64px;
}
@media (width <= 976px) {
  .m-panel-04-col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .m-panel-04-col {
    margin-top: 48px !important;
  }
}
@media (width <= 640px) {
  .m-panel-04-col {
    grid-template-columns: none;
    max-width: 400px;
    margin: 0 auto;
  }
}

/* .m-panel-05
----------------------------------------------- */
.m-panel-05 {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px 24px;
}
.m-panel-05_item {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 16px;
  padding: 24px;
  width: 100%;
  max-width: 384px;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  overflow: hidden;
}
.m-panel-05_title {
  position: relative;
  padding-top: 50px;
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
.m-panel-05_title::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-inline: auto;
  width: 70px;
  height: 50px;
}
.m-panel-05_title.bg-icon-customer::before {
  background: url("../../assets/img/icon/icon-customer.svg") no-repeat center/contain;
}
.m-panel-05_title.bg-icon-society::before {
  background: url("../../assets/img/icon/icon-society.svg") no-repeat center/contain;
}
.m-panel-05_title.bg-icon-employee::before {
  background: url("../../assets/img/icon/icon-employee.svg") no-repeat center/contain;
}
.m-panel-05_linkCategory {
  display: inline-block;
  width: fit-content;
}
.m-panel-05_linkCategory:is(:hover, :active, :focus-visible) .m-panel-05_img::before {
  scale: 1.125;
}
.m-panel-05_linkCategory:is(:hover, :active, :focus-visible) .m-panel-05_img::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-05_linkCategory:is(:hover, :active, :focus-visible) .m-panel-05_img > img {
  scale: 1.125;
}
.m-panel-05_img {
  position: relative;
  width: fit-content;
  overflow: hidden;
  border-radius: var(--BORDER_RADIUS);
}
.m-panel-05_img::before, .m-panel-05_img::after {
  position: absolute;
  content: "";
}
.m-panel-05_img::before {
  right: 0;
  bottom: 0;
  width: 58px;
  height: 58px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_PRIMARY);
  z-index: 1;
  transition: var(--TRANSITION);
}
.m-panel-05_img::after {
  bottom: 18px;
  right: 16px;
  width: 16px;
  height: 12px;
  aspect-ratio: 9/7;
  z-index: 1;
  background-repeat: no-repeat;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-05_img > img {
  transition: var(--TRANSITION);
}
.m-panel-05_linkList {
  text-align: left;
  padding: 8px 16px;
}
.m-panel-05_linkItem {
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-panel-05_linkItem:first-child {
  border: none;
}
.m-panel-05_linkItem:first-child .m-panel-05_link {
  padding-top: 0;
}
.m-panel-05_linkItem:last-child .m-panel-05_link {
  padding-bottom: 0;
}
.m-panel-05_link {
  position: relative;
  display: flex;
  align-items: center;
  padding-block: 16px;
  padding-inline: 0 32px;
}
.m-panel-05_link::before {
  position: absolute;
  content: "";
  right: 0;
  width: 16px;
  height: 12px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-05_link:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-05_link:is(:hover, :active, :focus-visible)::before {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
@media (width <= 1024px) {
  .m-panel-05 {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .m-panel-05_item {
    max-width: none;
    width: 100%;
    grid-template: "title title" "linkCategory linkList";
    grid-template-columns: auto 1fr;
    padding-inline: 32px;
    text-align: left;
  }
  .m-panel-05_item::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-05_title {
    grid-area: title;
    display: flex;
    align-items: center;
    font-size: var(--FONT_SIZE_LG);
    text-align: left;
    padding-block: 8px;
    padding-inline: 76px 0;
  }
  .m-panel-05_title::before {
    left: 0;
    top: unset;
    transform: none;
    width: 64px;
    height: 48px;
    background-size: 64px 48px;
  }
  .m-panel-05_linkCategory {
    grid-area: linkCategory;
    margin: 0 auto;
    max-width: 287px;
  }
  .m-panel-05_linkList {
    padding-inline: 8px 0;
  }
}
@media (width <= 670px) {
  .m-panel-05_item {
    max-width: 400px;
    grid-template-areas: "title title" "linkCategory linkCategory" "linkList linkList";
    grid-template-rows: 1fr;
    column-gap: 0;
    padding-inline: 24px;
    text-align: center;
  }
  .m-panel-05_title {
    justify-content: center;
    padding-block: 54px 0;
    padding-inline: 0;
  }
  .m-panel-05_title::before {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  .m-panel-05_img::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-05_img::after {
    right: 12px;
    bottom: 15px;
    mask-size: contain;
  }
  .m-panel-05_linkCategory {
    max-width: unset;
  }
  .m-panel-05 .m-panel-05_linkList {
    grid-area: linkList;
    padding: 8px 9px;
  }
  .m-panel-05 .m-panel-05_link {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-panel-05 .m-panel-05_link::before {
    right: 11px;
  }
}

/* .m-panel-06
----------------------------------------------- */
.m-panel-06 {
  height: 100%;
  border-radius: var(--BORDER_RADIUS);
}
.m-panel-06_link {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  height: 100%;
}
.m-panel-06_title {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 16px 16px 24px 0;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
.m-panel-06_item {
  border-radius: var(--BORDER_RADIUS);
  overflow: hidden;
}
.m-panel-06_item img {
  transition: 0.3s ease;
  width: 100%;
}
.m-panel-06:is(:hover, :active, :focus-visible) .m-panel-06_item img {
  transform: scale(1.05, 1.05);
}
.m-panel-06:is(:hover, :active, :focus-visible) .m-panel-06_title {
  color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-panel-06_title a {
    font-size: var(--FONT_SIZE_MD);
  }
}

.m-panel-06-col {
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  display: grid;
  margin-top: 64px;
}
@media (width <= 976px) {
  .m-panel-06-col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .m-panel-06-col {
    margin-top: 48px !important;
  }
}
@media (width <= 640px) {
  .m-panel-06-col {
    grid-template-columns: none;
    max-width: 400px;
    margin: 0 auto;
  }
}

/* .m-panel-07
----------------------------------------------- */
.m-panel-07 {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  height: 100%;
  border-radius: var(--BORDER_RADIUS);
}
.m-layout-col:where(.col-3-pc):has(.m-panel-07) {
  gap: 64px 32px;
}
.m-panel-07_inner {
  flex: 1 1 auto;
}
.m-panel-07_linkModal {
  display: block;
  width: 100%;
}
.m-panel-07_linkModal:not([aria-disabled=true]):is(:hover, :active, :focus-visible) .m-panel-07_thumbnail img {
  transform: scale(1.05, 1.05);
}
.m-panel-07_linkModal:not([aria-disabled=true]):is(:hover, :active, :focus-visible) .m-panel-07_product {
  transition: var(--TRANSITION);
  color: var(--COLOR_PRIMARY);
}
.m-panel-07_linkModal:not([aria-disabled=true]):is(:hover, :active, :focus-visible) .m-panel-07_title > .text {
  transition: var(--TRANSITION);
  color: var(--COLOR_PRIMARY);
}
.m-panel-07_thumbnail {
  overflow: hidden;
  border-radius: var(--BORDER_RADIUS);
}
.m-panel-07_thumbnail img {
  transition: var(--TRANSITION);
}
.m-panel-07_product {
  margin-top: 16px;
}
.m-panel-07_title {
  display: flex;
  flex-wrap: wrap;
  gap: 0 8px;
  align-items: center;
}
.m-panel-07_title > .text {
  margin-top: 8px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-panel-07_title > .type {
  margin-top: 4px;
  display: inline-block;
  border-radius: 20px;
  width: fit-content;
  padding: 4px 16px;
  font-size: var(--FONT_SIZE_XS);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  color: var(--COLOR_WHITE);
}
.m-panel-07_title > .type.web {
  background-color: #16B390;
}
.m-panel-07_title > .type.tvcm {
  background-color: #FF961F;
}
.m-panel-07_title > .type.making {
  background-color: #1B8BE0;
}
.m-panel-07_title > .type.other {
  background-color: #808080;
}
.m-panel-07_sub {
  margin-top: 16px;
}
@media (width <= 768px) {
  .m-layout-col.col-1-sp:has(.m-panel-07) {
    gap: 48px;
  }
  .m-panel-07:has(dialog.noModal-sp) .m-panel-07_thumbnail {
    display: none;
  }
  .m-panel-07:has(dialog.noModal-sp) a[aria-disabled=true] {
    pointer-events: none;
    cursor: not-allowed;
    text-decoration: none;
  }
  .m-panel-07_title > .type {
    padding: 4px 12px;
  }
}

/* .m-panel-08
----------------------------------------------- */
.m-panel-08 {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.m-panel-08 li {
  width: 100%;
  height: 100%;
}
.m-panel-08_item {
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-panel-08_txt,
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-panel-08_title-txt {
  color: #808080;
}
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-panel-08_title {
  border-bottom: 1px solid rgba(191, 191, 191, 0.6);
}
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-panel-08_icon.border {
  border: 1px solid rgba(141, 149, 158, 0.6);
  color: #808080;
}
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-panel-08_inner img {
  opacity: 0.6;
}
.m-panel-08_item:is(:hover, :active, :focus-visible) .m-icon-label {
  opacity: 0.6;
}
.m-panel-08_title {
  font-weight: var(--FONT_WEIGHT_BOLD);
  font-size: var(--FONT_SIZE_MD);
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  position: relative;
  min-height: 96px;
  display: flex;
  align-items: center;
  padding-block: 16px 8px;
  margin-inline: 20px;
  transition: var(--TRANSITION);
}
.m-panel-08_title-txt {
  margin-right: 12px;
  vertical-align: middle;
  transition: var(--TRANSITION);
}
.m-panel-08_inner {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
  flex-grow: 1;
  padding: 0 20px 16px 8px;
}
.m-panel-08_inner img {
  transition: var(--TRANSITION);
  min-width: 130px;
}
.m-panel-08_inner .m-icon-label {
  transition: var(--TRANSITION);
}
.m-panel-08_txt {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 8px;
  height: 100%;
  transition: var(--TRANSITION);
}
.m-panel-08_icon.border {
  transition: var(--TRANSITION);
}
.m-text-lead + .m-panel-08 {
  margin-top: 32px !important;
}
@media (width <= 976px) {
  .m-panel-08 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .m-panel-08 {
    grid-template-columns: none;
    gap: 16px;
  }
  .m-panel-08_title {
    min-height: auto;
    margin-inline: 16px;
  }
  .m-panel-08_inner {
    flex-direction: row;
    justify-content: unset;
    padding: 0 16px 16px 4px;
  }
  .m-panel-08_txt {
    max-width: unset;
    font-size: 1.5rem;
  }
  .m-panel-08_icon.border {
    font-size: 1.1rem !important;
  }
}
.m-panel-08.brand-site {
  grid-template-columns: repeat(auto-fit, minmax(335px, 1fr));
}
.m-panel-08.brand-site .m-panel-08_title {
  padding-block: 20px 12px;
  min-height: auto;
}
.m-panel-08.brand-site .m-panel-08_title-txt {
  margin-right: 0;
}
.m-panel-08.brand-site .m-panel-08_inner {
  gap: 16px;
  margin-top: 0;
  padding: 20px;
}
.m-panel-08.brand-site .m-panel-08_txt {
  flex: 1;
  max-width: 100%;
}
@media (width <= 768px) {
  .m-panel-08.brand-site .m-panel-08_title {
    padding-block: 16px 8px;
  }
  .m-panel-08.brand-site .m-panel-08_inner {
    padding: 16px;
  }
  .m-panel-08.brand-site .m-panel-08_inner img {
    min-width: 132px;
  }
  .m-panel-08.brand-site .m-panel-08_txt {
    max-width: unset;
  }
}

/* .m-panel-company-01
----------------------------------------------- */
.m-panel-company-01 {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(2, 1fr);
  gap: 48px;
}
.m-panel-company-01_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 576px;
  position: relative;
  border-radius: var(--BORDER_RADIUS);
  text-align: center;
  gap: 32px;
}
.m-panel-company-01_title {
  position: relative;
  font-size: 2.6rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-panel-company-01_link {
  display: inline-block;
  width: fit-content;
}
.m-panel-company-01_link.-border-none .m-panel-company-01_img {
  border: none;
}
.m-panel-company-01_link:is(:hover, :active, :focus-visible) .m-panel-company-01_img::before {
  scale: 1.125;
}
.m-panel-company-01_link:is(:hover, :active, :focus-visible) .m-panel-company-01_img::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-company-01_link:is(:hover, :active, :focus-visible) .m-panel-company-01_img > img {
  scale: 1.125;
}
.m-panel-company-01_img {
  position: relative;
  width: fit-content;
  overflow: hidden;
  border: 1px solid var(--COLOR_GRAY_DARK);
  border-radius: var(--BORDER_RADIUS) 48px var(--BORDER_RADIUS) 48px;
}
.m-panel-company-01_img::before, .m-panel-company-01_img::after {
  position: absolute;
  content: "";
}
.m-panel-company-01_img::before {
  right: 0;
  bottom: 0;
  width: 68px;
  height: 68px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: 8px;
  background-color: var(--COLOR_PRIMARY);
  z-index: 1;
  transition: var(--TRANSITION);
}
.m-panel-company-01_img::after {
  bottom: 20px;
  right: 18px;
  width: 18px;
  height: 14px;
  aspect-ratio: 9/7;
  z-index: 1;
  background-repeat: no-repeat;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-company-01_img > img {
  transition: 0.3s ease;
}
@media (width <= 768px) {
  .m-panel-company-01 {
    grid-template-columns: 1fr;
  }
  .m-panel-company-01_item {
    gap: 16px;
  }
  .m-panel-company-01_item:has(.m-panel-company-01_linkList) {
    max-width: unset;
    width: 100%;
    grid-template: "title title" "linkCategory linkList";
    grid-template-columns: auto 1fr;
    padding: 24px 32px;
    text-align: left;
  }
  .m-panel-company-01_img::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-company-01_img::after {
    bottom: 15px;
    right: 14px;
    mask-size: contain;
  }
}

/* .m-panel-jyouhoukan-top
----------------------------------------------- */
.m-panel-jyouhoukan-top {
  background-color: var(--JYOUHOUKAN_COLOR_BORDER);
}
.m-panel-jyouhoukan-top_inner {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 20px;
  margin: 0 auto;
  padding-block: 12px;
  padding-inline: var(--GUTTER_CONTENT);
  max-width: 1440px;
  width: 100%;
}
.m-panel-jyouhoukan-top_item {
  display: flex;
  min-height: 74px;
}
.m-panel-jyouhoukan-top_link {
  position: relative;
  display: flex;
  align-items: center;
  padding: 12px 42px 12px 20px;
  width: 100%;
  min-width: 218px;
  max-width: 232px;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  overflow: hidden;
  text-align: center;
}
.m-panel-jyouhoukan-top_link::before, .m-panel-jyouhoukan-top_link::after {
  position: absolute;
  content: "";
}
.m-panel-jyouhoukan-top_link::before {
  right: 0;
  bottom: 0;
  width: 34px;
  height: 34px;
  border-top-left-radius: 100%;
  background-color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-jyouhoukan-top_link.skin-trouble-info::before {
  background-color: var(--COLOR_SKIN_TROUBLE_ACCENT);
}
.m-panel-jyouhoukan-top_link.baby-child-info::before {
  background-color: var(--COLOR_BABY_CHILD_ACCENT);
}
.m-panel-jyouhoukan-top_link.insect-bite-info::before {
  background-color: var(--COLOR_INSECT_BITE_ACCENT);
}
.m-panel-jyouhoukan-top_link::after {
  bottom: 10px;
  right: 10px;
  width: 10px;
  height: 8px;
  aspect-ratio: 9/7;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-jyouhoukan-top_link:is(:hover, :active, :focus-visible)::before {
  scale: 1.125;
}
.m-panel-jyouhoukan-top_link:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-jyouhoukan-top_link:is(:hover, :active, :focus-visible).skin-trouble-info .m-panel-jyouhoukan-top_title {
  color: var(--COLOR_SKIN_TROUBLE_TEXT);
}
.m-panel-jyouhoukan-top_link:is(:hover, :active, :focus-visible).baby-child-info .m-panel-jyouhoukan-top_title {
  color: var(--COLOR_BABY_CHILD_TEXT);
}
.m-panel-jyouhoukan-top_link:is(:hover, :active, :focus-visible).insect-bite-info .m-panel-jyouhoukan-top_title {
  color: var(--COLOR_INSECT_BITE_TEXT);
}
.m-panel-jyouhoukan-top_linkInner {
  position: relative;
  padding-left: 44px;
}
.m-panel-jyouhoukan-top_linkInner::before {
  position: absolute;
  content: "";
  inset: 0;
  margin-block: auto;
  width: 32px;
  height: 34px;
  background-size: 32px 34px;
  background-repeat: no-repeat;
  background-position: center;
}
.m-panel-jyouhoukan-top_link:where(.skin-trouble-info) > .m-panel-jyouhoukan-top_linkInner::before {
  background-image: url("../../assets/img/study/skin-trouble-info/icon-skin-trouble-info.svg");
}
.m-panel-jyouhoukan-top_link:where(.baby-child-info) > .m-panel-jyouhoukan-top_linkInner::before {
  background-image: url("../../assets/img/study/baby-child-info/icon-baby-child-info.svg");
}
.m-panel-jyouhoukan-top_link:where(.insect-bite-info) > .m-panel-jyouhoukan-top_linkInner::before {
  background-image: url("../../assets/img/study/insect-bite-info/icon-insect-bite-info.svg");
}
.m-panel-jyouhoukan-top_title {
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
@media (width <= 768px) {
  .m-panel-jyouhoukan-top {
    order: 2;
  }
  .m-panel-jyouhoukan-top_inner {
    gap: 8px;
    padding: 10px 16px;
    justify-content: center;
  }
  .m-panel-jyouhoukan-top_item {
    padding: 0;
  }
  .m-panel-jyouhoukan-top_item::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-jyouhoukan-top_item::after {
    bottom: 15px;
    right: 14px;
    width: 13px;
    height: auto;
    mask-size: contain;
  }
  .m-panel-jyouhoukan-top_link {
    min-width: 161px;
    max-width: 174px;
    min-height: 50px;
    padding: 6px 26px 6px 10px;
  }
  .m-panel-jyouhoukan-top_link::before {
    width: 26px;
    height: 26px;
  }
  .m-panel-jyouhoukan-top_link::after {
    width: 8px;
    bottom: 9px;
    height: 6px;
    right: 7px;
  }
  .m-panel-jyouhoukan-top_linkInner {
    padding-left: 28px;
  }
  .m-panel-jyouhoukan-top_linkInner::before {
    background-size: 22px 24px;
    width: 22px;
    height: 24px;
  }
  .m-panel-jyouhoukan-top_title {
    font-size: var(--FONT_SIZE_XS);
    text-align: left;
    line-height: 1.6;
  }
}

/* .m-panel-jyouhoukan-top-02
----------------------------------------------- */
.m-panel-jyouhoukan-top-02 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 32px;
}
.m-panel-jyouhoukan-top-02 > li {
  width: 100%;
  max-width: 444px;
}
.m-panel-jyouhoukan-top-02_item {
  position: relative;
  display: block;
  padding: 28px 60px;
  width: 100%;
  background-color: var(--JYOUHOUKAN_COLOR_BORDER);
  border-radius: var(--BORDER_RADIUS);
  overflow: hidden;
  text-align: center;
}
.l-content:where(.jyouhoukan) .m-panel-jyouhoukan-top-02_item {
  box-shadow: 0 2px 16px rgba(76, 76, 77, 0.16);
}
.m-panel-jyouhoukan-top-02_item::before, .m-panel-jyouhoukan-top-02_item::after {
  position: absolute;
  content: "";
}
.m-panel-jyouhoukan-top-02_item::before {
  right: 0;
  bottom: 0;
  width: 68px;
  height: 68px;
  border-top-left-radius: 100%;
  background-color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-jyouhoukan-top-02_item::after {
  bottom: 20px;
  right: 18px;
  width: 18px;
  height: 14px;
  aspect-ratio: 9/7;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-jyouhoukan-top-02_item.skin-trouble-info {
  background-color: var(--COLOR_SKIN_TROUBLE_BG);
}
.m-panel-jyouhoukan-top-02_item.skin-trouble-info::before {
  background-color: var(--COLOR_SKIN_TROUBLE_ACCENT);
}
.m-panel-jyouhoukan-top-02_item.insect-bite-info {
  background-color: var(--COLOR_INSECT_BITE_BG);
}
.m-panel-jyouhoukan-top-02_item.insect-bite-info::before {
  background-color: var(--COLOR_INSECT_BITE_ACCENT);
}
.m-panel-jyouhoukan-top-02_item.baby-child-info {
  background-color: var(--COLOR_BABY_CHILD_BG);
}
.m-panel-jyouhoukan-top-02_item.baby-child-info::before {
  background-color: var(--COLOR_BABY_CHILD_ACCENT);
}
.m-panel-jyouhoukan-top-02_item:is(:hover, :active, :focus-visible)::before {
  scale: 1.125;
}
.m-panel-jyouhoukan-top-02_item:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-jyouhoukan-top-02_item:is(:hover, :active, :focus-visible) .m-panel-jyouhoukan-top-02_title {
  color: var(--COLOR_PRIMARY);
}
.m-panel-jyouhoukan-top-02_inner {
  background: var(--JYOUHOUKAN_BUNNER_IMG);
  inset: 0;
  margin-inline: auto;
}
.m-panel-jyouhoukan-top-02_title {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
@media (width <= 768px) {
  .m-panel-jyouhoukan-top-02 {
    gap: 16px;
  }
  .m-panel-jyouhoukan-top-02_item {
    padding: 16px 60px;
    min-width: 335px;
  }
  .m-panel-jyouhoukan-top-02_item::before {
    width: 58px;
    height: 58px;
  }
  .m-panel-jyouhoukan-top-02_item::after {
    bottom: 16px;
    right: 14px;
    width: 18px;
    height: 14px;
    mask-size: contain;
  }
  .m-panel-jyouhoukan-top-02_title {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-panel-jyouhoukan-top-02_item.skin-trouble-info .m-panel-jyouhoukan-top-02_img img, .m-panel-jyouhoukan-top-02_item.insect-bite-info .m-panel-jyouhoukan-top-02_img img {
    width: 166px;
    height: 132px;
  }
  .m-panel-jyouhoukan-top-02_item.baby-child-info .m-panel-jyouhoukan-top-02_img img {
    width: 166px;
    height: 142px;
  }
}

/* .m-panel-jyouhoukan-body-parts
----------------------------------------------- */
.m-panel-jyouhoukan-body-parts_panelList {
  display: grid;
  gap: 40px;
  margin-top: 48px;
  grid-template-columns: repeat(3, 1fr);
}
.m-panel-jyouhoukan-body-parts_panelItem {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  height: 100%;
}
.m-panel-jyouhoukan-body-parts_mainLink {
  padding: 16px 32px;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 168px;
  min-height: 180px;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  overflow: hidden;
  text-align: center;
  transition: var(--TRANSITION);
}
.m-panel-jyouhoukan-body-parts_mainLink::before, .m-panel-jyouhoukan-body-parts_mainLink::after {
  position: absolute;
  content: "";
}
.m-panel-jyouhoukan-body-parts_mainLink::before {
  right: 0;
  bottom: 0;
  width: 38px;
  height: 38px;
  border-top-left-radius: 100%;
  background-color: var(--JYOUHOUKAN_COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-jyouhoukan-body-parts_mainLink::after {
  bottom: 12px;
  right: 10px;
  width: 11px;
  height: 9px;
  aspect-ratio: 9/7;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-jyouhoukan-body-parts_mainLink:is(:hover, :active, :focus-visible) {
  transform: scale(1.05, 1.05);
}
.m-panel-jyouhoukan-body-parts_mainLink:is(:hover, :active, :focus-visible)::before {
  scale: 1.125;
}
.m-panel-jyouhoukan-body-parts_mainLink:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-jyouhoukan-body-parts_mainLink:is(:hover, :active, :focus-visible) .m-panel-jyouhoukan-body-parts_title {
  color: var(--COLOR_PRIMARY);
}
.m-panel-jyouhoukan-body-parts_content {
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
  transition: var(--TRANSITION);
}
.m-panel-jyouhoukan-body-parts_subLinkList {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
.m-panel-jyouhoukan-body-parts_subLinkItem {
  border-top: 1px solid var(--COLOR_GRAY);
}
.m-panel-jyouhoukan-body-parts_subLinkItem:first-child {
  border: none;
}
.m-panel-jyouhoukan-body-parts_subLink {
  display: block;
  padding: 12px 24px 4px 0;
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  position: relative;
}
.m-panel-jyouhoukan-body-parts_subLink::after {
  position: absolute;
  content: "";
  right: 4px;
  top: 22px;
  width: 14px;
  height: 11px;
  filter: var(--JYOUHOUKAN_COLOR_FILTER);
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-jyouhoukan-body-parts_subLink:is(:hover, :active, :focus-visible) {
  color: var(--JYOUHOUKAN_COLOR_TEXT);
}
.m-panel-jyouhoukan-body-parts_subLink:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
@media (width <= 1024px) {
  .m-panel-jyouhoukan-body-parts_panelItem {
    flex-direction: column;
    gap: 0;
  }
  .m-panel-jyouhoukan-body-parts_mainLink {
    max-width: unset;
  }
  .m-panel-jyouhoukan-body-parts_subLinkList {
    flex: 0 1 auto;
  }
}
@media (width <= 768px) {
  .m-panel-jyouhoukan-body-parts_panelList {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    place-items: center;
    margin: 0 auto;
    gap: 24px 10px;
  }
  .m-panel-jyouhoukan-body-parts_mainLink {
    box-shadow: 0 2px 8px rgba(76, 76, 77, 0.15);
  }
  .m-panel-jyouhoukan-body-parts_mainLink::after {
    right: 11px;
  }
  .m-panel-jyouhoukan-body-parts_subLinkList {
    padding-left: 8px;
    padding-right: 8px;
  }
  .m-panel-jyouhoukan-body-parts_subLink::after {
    top: 18px;
  }
}

/* .m-panel-sns
----------------------------------------------- */
.m-panel-sns {
  height: 100%;
}
.m-layout-col:where(.col-3-pc):has(.m-panel-sns) {
  gap: 48px;
}
.m-panel-sns_inner {
  display: flex;
  flex-direction: row-reverse;
  height: 100%;
  border-radius: var(--BORDER_RADIUS);
  gap: 24px;
}
.m-panel-sns_content {
  display: flex;
  justify-content: space-between;
  flex: 1 1 194px;
  max-width: 194px;
  width: 100%;
  flex-direction: column;
}
.m-panel-sns_title {
  flex: 1 0 auto;
  font-weight: var(--FONT_WEIGHT_BOLD);
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  padding-bottom: 16px;
  font-size: var(--FONT_SIZE_MD);
}
.m-panel-sns_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  max-width: 144px;
  width: 100%;
  min-height: 88px;
  margin-top: 24px;
}
.m-panel-sns_item {
  display: flex;
  width: fit-content;
}
.m-panel-sns_link {
  display: inline-block;
}
.m-panel-sns_link img {
  max-width: 32px;
  max-height: 32px;
  transition: opacity var(--TRANSITION);
}
.m-panel-sns_link:is(:hover, :active, :focus-visible) img {
  opacity: 0.7;
}
.m-panel-sns_img {
  flex: 0 1 150px;
  display: flex;
  max-width: 150px;
  width: 100%;
  height: 140px;
  border: 1px solid var(--COLOR_GRAY_DARK);
  justify-content: center;
  align-items: center;
  background-color: var(--COLOR_WHITE);
}
@media (width <= 768px) {
  .m-panel-sns {
    max-width: 375px;
    width: 100%;
  }
  .m-layout-col_item:has(> .m-panel-sns) {
    display: flex;
    justify-content: center;
  }
  .m-panel-sns_inner {
    display: grid;
    grid-template: "title title" auto "img list" auto/auto auto;
    gap: 26px 32px;
  }
  .m-panel-sns_content {
    display: contents;
  }
  .m-panel-sns_title {
    grid-area: title;
    padding-bottom: 12px;
  }
  .m-panel-sns_list {
    grid-area: list;
    gap: 26px;
    margin: 0;
    max-width: 172px;
    height: fit-content;
  }
  .m-panel-sns_link img {
    max-width: 40px;
    max-height: 40px;
  }
  .m-panel-sns_img {
    grid-area: img;
  }
}

/* .m-panel-toggle
  /jyouhoukan/media/_index.scssにて@extendとして使用中のため、意図しない変更が入らないように注意してください
----------------------------------------------- */
.m-panel-toggle {
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
  padding-bottom: 80px;
  margin-top: 48px;
}
.m-panel-toggle:last-child {
  border: none;
}
.m-panel-toggle_list {
  display: grid;
  flex-wrap: wrap;
  gap: 34px 16px;
  grid-template-columns: repeat(6, 1fr);
}
.m-panel-toggle_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
.m-panel-toggle_item.fn-none {
  display: none;
}
.m-panel-toggle_box {
  transition: 0.3s ease;
  padding: 16px;
  text-align: center;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 24px rgba(76, 76, 77, 0.15);
  display: inline-block;
  width: 100%;
}
.m-panel-toggle_box:is(:hover, :active, :focus-visible) {
  transform: scale(1.05, 1.05);
}
.m-panel-toggle_content {
  padding-top: 8px;
  font-weight: var(--FONT_WEIGHT_BOLD);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
}
.m-panel-toggle_img {
  width: 100%;
  height: auto;
  max-height: 116px;
  display: block;
  margin: 0 auto;
  border-radius: var(--BORDER_RADIUS);
}
.m-panel-toggle_img.fn-img-change_after {
  border-radius: var(--BORDER_RADIUS);
  aspect-ratio: 1/1;
  object-fit: cover;
}
.m-panel-toggle_img.fn-none {
  display: none;
}
.m-panel-toggle_switch {
  text-align: right;
  font-size: var(--FONT_SIZE_XS);
  margin-top: 16px;
  display: flex;
  justify-content: end;
}
.m-panel-toggle_input {
  appearance: none;
  background-color: var(--COLOR_GRAY_DARK);
  border-radius: 24px;
  height: 24px;
  width: 40px;
  border: 1px solid var(--COLOR_GRAY_DARK);
  display: inline-block;
  margin: 0 4px;
  cursor: pointer;
}
.m-panel-toggle_input::before {
  border-radius: 20px;
  content: "";
  display: inline-block;
  margin-left: 1px;
  margin-top: 1px;
  transition: margin-left 0.2s cubic-bezier(0.07, 0.95, 0, 1);
  width: 20px;
  height: 20px;
  background-color: var(--COLOR_WHITE);
}
.m-panel-toggle_input:checked {
  background-color: var(--COLOR_PRIMARY);
  border-color: var(--COLOR_PRIMARY);
}
.m-panel-toggle_input:checked::before {
  margin-left: 17px;
}
.m-panel-toggle_btn {
  padding: 0 22px 0 0;
  margin: 32px auto 0;
  display: block;
  background-color: transparent;
  border: 0;
  cursor: pointer;
  position: relative;
  color: var(--COLOR_BLACK);
}
.m-panel-toggle_btn.fn-none {
  display: none;
}
.m-panel-toggle_btn.fn-open::after {
  display: none;
}
.m-panel-toggle_btn::before, .m-panel-toggle_btn::after {
  content: "";
  width: 14px;
  height: 2px;
  border-radius: 2px;
  background-color: var(--COLOR_PRIMARY);
  position: absolute;
  right: 0;
  top: 50%;
}
.m-panel-toggle_btn::after {
  transform: rotate(90deg);
}
.m-panel-toggle.unq-products-top .m-panel-toggle_item {
  grid-row: span 1;
}
@media (width <= 768px) {
  .m-panel-toggle {
    margin-top: 32px;
    padding-bottom: 48px;
  }
  .m-panel-toggle_list {
    gap: 24px 10px;
    margin-bottom: 36px;
    grid-template-columns: repeat(3, 1fr);
  }
  .m-panel-toggle_box {
    padding: 12px;
  }
  .m-panel-toggle_content {
    padding-top: 4px;
    font-size: 13px;
  }
  .m-panel-toggle_switch {
    font-size: 11px;
  }
  .m-panel-toggle_img {
    max-height: 100px;
  }
}

/* .m-panel-09
----------------------------------------------- */
.m-panel-09 {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(auto-fill, minmax(384px, 1fr));
  gap: 48px 24px;
}
.m-panel-09_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  justify-items: center;
  gap: 16px;
  padding: 24px;
  width: 100%;
  max-width: 508px;
  height: 100%;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 16px rgb(var(--COLOR_SHADOW)/0.15);
  overflow: hidden;
}
.m-panel-09_item.row-3 {
  grid-row: span 3;
}
.m-panel-09_title {
  font-size: var(--FONT_SIZE_2LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
.m-panel-09_text {
  margin-top: 0;
  text-align: center;
}
.m-panel-09_mediaLink {
  display: inline-block;
  width: fit-content;
}
.m-panel-09_mediaLink:is(:hover, :active, :focus-visible) .m-panel-09_img::before {
  scale: 1.125;
}
.m-panel-09_mediaLink:is(:hover, :active, :focus-visible) .m-panel-09_img::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-panel-09_mediaLink:is(:hover, :active, :focus-visible) .m-panel-09_img > img {
  scale: 1.125;
}
.m-panel-09_img {
  position: relative;
  width: fit-content;
  overflow: hidden;
  border-radius: var(--BORDER_RADIUS);
}
.m-panel-09_img::before, .m-panel-09_img::after {
  position: absolute;
  content: "";
}
.m-panel-09_img::before {
  right: 0;
  bottom: 0;
  width: 58px;
  height: 58px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: 8px;
  background-color: var(--COLOR_PRIMARY);
  z-index: 1;
  transition: var(--TRANSITION);
}
.m-panel-09_img::after {
  bottom: 18px;
  right: 16px;
  width: 16px;
  height: 12px;
  aspect-ratio: 9/7;
  z-index: 1;
  background-repeat: no-repeat;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-09_img > img {
  transition: var(--TRANSITION);
}
.m-panel-09_link {
  padding: 8px 16px;
  width: 100%;
  text-align: left;
}
.m-panel-09_link > li:first-child .m-panel-09_link-item {
  padding-top: 0;
  border: none;
}
.m-panel-09_link > li:last-child .m-panel-09_link-item {
  padding-bottom: 0;
}
.m-panel-09_link-item {
  position: relative;
  display: flex;
  align-items: center;
  padding-inline: 0 32px;
  padding-block: 16px;
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-panel-09_link-item::before {
  position: absolute;
  content: "";
  right: 0;
  width: 16px;
  height: 12px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-panel-09_link-item:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
  transition: var(--TRANSITION);
}
.m-panel-09_link-item:is(:hover, :active, :focus-visible)::before {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
@media (width <= 768px) {
  .m-panel-09 {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .m-panel-09_item {
    max-width: 400px;
  }
  .m-panel-09_img::before {
    width: 50px;
    height: 50px;
  }
  .m-panel-09_img::after {
    bottom: 15px;
    right: 14px;
    width: 13px;
    height: auto;
  }
  .m-panel-09_link {
    padding-inline: 13px;
  }
}
@media (768px < width) {
  .m-panel-09.col-2 {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 40px;
  }
  .m-panel-09.col-2 .m-panel-09_item {
    width: 100%;
    max-width: 580px;
  }
  .m-panel-09.col-2 .m-panel-09_img::before {
    width: 68px;
    height: 68px;
  }
  .m-panel-09.col-2 .m-panel-09_img::after {
    bottom: 20px;
    right: 17px;
    width: 19px;
    height: 14px;
  }
  .m-panel-09.row-3-pc .m-panel-09_item {
    grid-row: span 3;
  }
}

/* .m-layout-col
----------------------------------------------- */
.m-layout-col {
  display: grid;
  gap: 48px;
  margin-top: 40px;
}
.m-layout-col_item.fn-none {
  display: none;
}
.m-layout-col_item > :first-child {
  margin-top: 0;
}
.m-layout-col_item > :last-child {
  margin-bottom: 0;
}
.m-layout-col:where(.col-2-pc) {
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
.m-layout-col:where(.col-2-pc).gap-wide {
  gap: 40px 80px;
}
.m-layout-col:where(.col-2-pc).gap-narrow {
  gap: 40px 24px;
}
.m-layout-col:where(.col-3-pc) {
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.m-layout-col:where(.col-4-pc) {
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.m-layout-col:where(.col-auto-pc) {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
@media (width <= 768px) {
  .m-layout-col {
    gap: 32px;
    margin-top: 32px;
  }
  .m-layout-col.col-1-sp {
    grid-template-columns: none;
    gap: 32px;
  }
  .m-layout-col.col-2-sp {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .m-layout-col.col-2-sp.gap-wide {
    gap: 40px;
  }
  .m-layout-col.col-3-sp {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
  .m-layout-col.col-5-sp {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
  }
}

/* .m-table
----------------------------------------------- */
.m-table {
  margin-top: 32px;
}
.m-table_caption {
  margin-bottom: 16px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: left;
}
.m-table table {
  width: 100%;
  border-collapse: collapse;
}
.m-table table thead tr th, .m-table table thead tr td, .m-table table tbody tr th, .m-table table tbody tr td {
  padding: 16px 20px;
  border-right: 1px solid var(--COLOR_GRAY_DARK);
  line-height: var(--FONT_LINE_HEIGHT_SM);
  vertical-align: middle;
}
.m-table table thead tr th > :first-child, .m-table table thead tr td > :first-child, .m-table table tbody tr th > :first-child, .m-table table tbody tr td > :first-child {
  margin-top: 0;
}
.m-table table thead tr th > :last-child, .m-table table thead tr td > :last-child, .m-table table tbody tr th > :last-child, .m-table table tbody tr td > :last-child {
  margin-bottom: 0;
}
.m-table table thead tr > :last-child, .m-table table tbody tr > :last-child {
  border-right: none;
}
.m-table table thead tr th + th:is([rowspan]), .m-table table tbody tr th + th:is([rowspan]) {
  border-left: 1px solid var(--COLOR_GRAY_DARK);
}
.m-table table thead {
  background-color: var(--COLOR_GRAY_LIGHT);
}
.m-table table thead tr {
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-table table thead tr th {
  text-align: center;
}
.m-table table tbody tr {
  border-bottom: 1px solid var(--COLOR_GRAY_DARK);
}
.m-table table tbody tr th, .m-table table tbody tr td {
  text-align: left;
}
.m-table table:not(:has(thead)) tbody {
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-table table:not(:has(thead)) tbody th {
  background-color: var(--COLOR_GRAY_LIGHT);
}
.m-table.cell-center tbody tr td {
  text-align: center;
}
.m-table.sm thead tr th, .m-table.sm thead tr td, .m-table.sm tbody tr th, .m-table.sm tbody tr td {
  padding: 16px;
}
.m-table.js-table-scroll {
  position: relative;
  overflow: auto;
}
.m-table.js-table-scroll.is-scroll::before {
  position: absolute;
  content: "";
  inset: 0;
  margin: auto;
  width: 166px;
  height: 102px;
  background: url("../../assets/img/icon/icon-scroll.svg") no-repeat center;
  z-index: 1;
}
.m-table.js-table-scroll table {
  min-width: 900px;
}
@media (width <= 768px) {
  .m-table_caption {
    font-size: var(--FONT_SIZE_MD);
  }
  .m-table table thead tr th, .m-table table thead tr td, .m-table table tbody tr th, .m-table table tbody tr td {
    padding-inline: 8px;
    font-size: var(--FONT_SIZE_SM);
  }
  .m-table table thead tr th, .m-table table tbody tr th {
    padding-block: 12px;
  }
  .m-table table thead tr td, .m-table table tbody tr td {
    padding-block: 22px;
  }
  .m-table table:not(:has(thead)) tr th, .m-table table:not(:has(thead)) tr td {
    padding: 12px 10px;
  }
  .m-table.sp-block table, .m-table.sp-block-02 table {
    display: grid;
  }
  .m-table.sp-block table thead, .m-table.sp-block table tbody, .m-table.sp-block table tr, .m-table.sp-block-02 table thead, .m-table.sp-block-02 table tbody, .m-table.sp-block-02 table tr {
    display: contents;
  }
  .m-table.sp-block table th, .m-table.sp-block table td, .m-table.sp-block-02 table th, .m-table.sp-block-02 table td {
    display: block;
  }
  .m-table.sp-block-02 table thead {
    display: none;
  }
  .m-table.sp-block-02 table tbody tr {
    display: block;
    margin-top: 16px;
    border: 1px solid var(--COLOR_GRAY_DARK);
  }
  .m-table.sp-block-02 table tbody tr > :first-child {
    border-top: none;
  }
  .m-table.sp-block-02 table tbody tr:first-of-type {
    margin-top: 0;
  }
  .m-table.sp-block-02 table tbody tr td {
    padding: 12px 16px;
    border: none;
    border-top: 1px solid var(--COLOR_GRAY_DARK);
  }
  .m-table.sm table thead tr th, .m-table.sm table thead tr td, .m-table.sm table tbody tr th, .m-table.sm table tbody tr td {
    padding: 12px 8px;
    font-size: var(--FONT_SIZE_SM);
  }
}

/* .quantity-band
----------------------------------------------- */
.quantity-band {
  display: flex;
  justify-content: space-between;
  column-gap: 16px;
  margin-inline: auto;
  max-width: 472px;
}
.quantity-band_text {
  min-width: 50px;
  text-wrap: nowrap;
}
.quantity-band_ratio {
  position: relative;
  display: block;
  width: 100%;
  max-width: 406px;
  height: 26px;
  border: 1px solid #FDDFDF;
  flex: 1;
}
.quantity-band_ratio::before {
  --width-ratio: 0%;
  position: absolute;
  content: "";
  left: 0;
  width: var(--width-ratio);
  height: 100%;
  border-right: 1px solid #FDDFDF;
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.quantity-band_ratio.w-100::before {
  --width-ratio: 100%;
  border-right: 0;
}
.quantity-band_ratio.w-2-3::before {
  --width-ratio: calc(calc(2 / 3) * 100%);
}
.quantity-band_ratio.w-50::before {
  --width-ratio: 50%;
}
@media (width <= 768px) {
  .quantity-band {
    column-gap: 8px;
  }
  .quantity-band_text {
    min-width: 40px;
  }
}

/* .m-contact
----------------------------------------------- */
.m-contact {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 40px;
}
.m-contact_item {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  column-gap: 24px;
  padding-block: 16px;
}
.m-contact_item:is(:hover, :active, :focus-visible) .m-contact_hdg {
  color: var(--COLOR_PRIMARY);
}
.m-contact_item:is(:hover, :active, :focus-visible) .m-contact_hdg > span::before {
  top: calc(50% + 2px);
  scale: 1.1875;
}
.m-contact_item:is(:hover, :active, :focus-visible) .m-contact_hdg > span::after {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-contact_item + .m-contact_item::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 100%;
  background-color: var(--COLOR_GRAY_DARK);
}
.m-contact_content {
  max-width: 452px;
  flex: 1;
}
.m-contact_hdg {
  display: flex;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
.m-contact_hdg > span {
  position: relative;
}
.m-contact_hdg > span::before, .m-contact_hdg > span::after {
  position: absolute;
  content: "";
}
.m-contact_hdg > span::before {
  top: 50%;
  right: -44px;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: var(--TRANSITION);
}
.m-contact_hdg > span::after {
  top: 50%;
  right: -35px;
  transform: translateY(-50%);
  width: 13px;
  height: 10px;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-contact.col-2 {
  justify-content: space-between;
}
@media (width <= 768px) {
  .m-contact {
    flex-direction: column;
  }
  .m-contact_item {
    flex-direction: column-reverse;
    row-gap: 16px;
    padding: 0;
  }
  .m-contact_item + .m-contact_item::before {
    display: none;
  }
  .m-contact_content {
    max-width: unset;
    flex: auto;
  }
  .m-contact_hdg {
    justify-content: center;
    width: calc(100% - 44px);
  }
}

/* .m-contact-02
----------------------------------------------- */
.m-contact-02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 41px;
  margin-top: 48px;
}
.m-contact-02 > :first-of-type::before {
  display: none;
}
.m-contact-02_item {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  align-items: center;
  row-gap: 16px;
  padding: 16px;
}
.m-contact-02_item + .m-contact-02_item::before {
  position: absolute;
  content: "";
  left: -21px;
  width: 1px;
  height: 100%;
  background-color: var(--COLOR_GRAY_DARK);
}
.m-contact-02_title {
  position: relative;
  padding-top: 48px;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
.m-contact-02_title::before {
  position: absolute;
  content: "";
  top: 0;
  left: calc(50% - 20px);
  width: 40px;
  height: 40px;
  background-repeat: no-repeat;
  background-position: center;
}
.m-contact-02_title.icon-internet::before {
  background-image: url("../../assets/img/icon/icon-support-internet.svg");
}
.m-contact-02_title.icon-phone::before {
  background-image: url("../../assets/img/icon/icon-support-phone.svg");
}
.m-contact-02_title.icon-letter::before {
  background-image: url("../../assets/img/icon/icon-support-letter.svg");
}
.m-contact-02_content {
  text-align: center;
}
.m-contact-02_content > :first-child {
  margin-top: 0;
}
.m-contact-02_content > :last-child {
  margin-bottom: 0;
}
.m-contact-02_content-num {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 4px;
  font-size: 3.2rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-contact-02_content-num-text {
  font-size: var(--FONT_SIZE);
}
.m-contact-02_content-num + .m-text {
  margin-top: 0;
}
.m-contact-02.col-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 33px;
}
.m-contact-02.col-3 .m-contact-02_item::before {
  left: -17px;
}
@media (width <= 768px) {
  .m-contact-02 {
    display: flex;
    flex-direction: column;
  }
  .m-contact-02_item + .m-contact-02_item::before {
    top: -21px;
    left: 0;
    width: 100%;
    height: 1px;
  }
  .m-contact-02_content-num {
    font-size: var(--FONT_SIZE_4LG);
  }
  .m-contact-02.col-3 .m-contact-02_item::before {
    top: -17px;
    left: 0;
  }
}

/* .m-contact-03
----------------------------------------------- */
.m-contact-03 {
  display: flex;
  align-items: end;
  gap: 40px;
  justify-content: center;
}
.m-contact-03_content-num {
  font-size: 3.2rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
  display: flex;
  align-items: center;
}
.m-contact-03_text {
  margin-top: 0;
}
@media (width <= 768px) {
  .m-contact-03 {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
  .m-contact-03_content-num {
    justify-content: center;
  }
  .m-contact-03_text {
    text-align: center;
  }
}

/* .m-contact-emergency
----------------------------------------------- */
.m-contact-emergency_hdg {
  margin-bottom: 32px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-align: center;
}
.m-contact-emergency_content {
  position: relative;
  display: flex;
  justify-content: space-around;
  gap: 49px 81px;
}
.m-contact-emergency_content::before {
  position: absolute;
  content: "";
  inset: 0;
  left: 50%;
  width: 1px;
  background-color: var(--COLOR_GRAY_DARK);
}
.m-contact-emergency_item {
  max-width: 520px;
  text-align: center;
}
.m-contact-emergency_item-title {
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-contact-emergency_item-num {
  margin-top: 4px;
  font-size: 3.2rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
  color: var(--COLOR_PRIMARY);
}
.m-contact-emergency_item-text {
  margin-top: 0;
  color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-contact-emergency_hdg {
    margin-bottom: 24px;
    font-size: var(--FONT_SIZE_MD);
  }
  .m-contact-emergency_content {
    flex-direction: column;
  }
  .m-contact-emergency_content::before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
  }
  .m-contact-emergency_item {
    max-width: unset;
  }
  .m-contact-emergency_item-num {
    font-size: var(--FONT_SIZE_4LG);
  }
}

/* .m-icon-exlink
----------------------------------------------- */
.m-icon-exlink {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 16px;
  margin: 0 8px 0 6px;
}
.m-icon-exlink::before, .m-icon-exlink::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 12px;
  border: 2px solid var(--COLOR_PRIMARY);
  border-radius: 1.2px;
  background: no-repeat center;
  transition: var(--TRANSITION);
}
.m-icon-exlink::before {
  bottom: 4px;
}
.m-icon-exlink::after {
  bottom: 8px;
  left: 5px;
  background-color: var(--COLOR_WHITE);
  z-index: 1;
}
.js-link-icon:is(:hover, :active, :focus-visible) .m-icon-exlink::before {
  rotate: 12deg;
}
.js-link-icon:is(:hover, :active, :focus-visible) .m-icon-exlink::after {
  rotate: -15deg;
}

.m-icon-exlink span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

/* .m-icon-exlink-img （ホバー時に挙動なし）
----------------------------------------------- */
.m-icon-exlink-img {
  margin-left: 8px;
  position: relative;
  bottom: 2px;
  vertical-align: middle;
}
.m-icon-new + .m-icon-exlink-img {
  margin-left: 0;
}

/* .m-icon-label
----------------------------------------------- */
.m-icon-label {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}
.m-icon-label_item {
  display: flex;
  padding: 6px 16px;
  background-color: #16B390;
  border-radius: 3em;
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  color: var(--COLOR_WHITE);
}
.m-icon-label_item.color-02 {
  background-color: #FF961F;
}
.m-icon-label_item.small {
  font-size: var(--FONT_SIZE_XS);
}
.m-icon-label_item.border {
  display: inline-block;
  padding: 3px 9px;
  background-color: var(--COLOR_WHITE);
  border: 1px solid #8D959E;
  border-radius: 0;
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT);
  color: var(--COLOR_FONT);
}
.m-icon-label_item.media {
  padding: 0;
  background-color: transparent;
}
.m-icon-label_item.sm {
  font-size: 1.1rem;
  padding-inline: 6px;
}
@media (width <= 768px) {
  .m-icon-label {
    gap: 16px;
  }
  .m-icon-label_item {
    font-size: var(--FONT_SIZE_XS);
  }
  .m-icon-label_item.border {
    padding-inline: 7px;
    font-size: var(--FONT_SIZE_XS);
  }
  .m-icon-label_item.small {
    font-size: 1.1rem;
  }
}
.m-list-results .m-icon-label_item {
  --label-color: transparent;
  justify-content: center;
  padding: 4px 12px;
  min-width: 122px;
  background-color: var(--label-color);
  color: var(--COLOR_FONT);
}
.m-list-results .m-icon-label_item.color-red {
  --label-color: #FDDFDF;
}
.m-list-results .m-icon-label_item.color-orange {
  --label-color: #FFE0BD;
}
.m-list-results .m-icon-label_item.color-green {
  --label-color: #C5EBE3;
}
.m-list-results .m-icon-label_item.color-purple {
  --label-color: #EBD8F0;
}
.m-list-results .m-icon-label_item.color-gray {
  --label-color: #DCE2E6;
}

/* .m-icon-new
----------------------------------------------- */
.m-icon-new {
  margin: 0 8px;
  position: relative;
  bottom: 2px;
  vertical-align: middle;
}

/* .m-icon-label-text
----------------------------------------------- */
.m-icon-label-text {
  display: flex;
  flex-flow: column wrap;
  row-gap: 8px;
  margin-top: 24px;
}
.m-icon-label-text_item {
  display: flex;
  align-items: center;
  column-gap: 12px;
}
.m-icon-label-text_label {
  padding: 4px 20px;
  border-radius: 3em;
  background-color: var(--COLOR_GRAY_LIGHT);
  font-size: var(--FONT_SIZE_SM);
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
@media (width <= 768px) {
  .m-icon-label-text {
    margin-top: 16px;
  }
}
@media (768px < width) {
  .m-icon-label-text.row-pc {
    flex-direction: row;
    column-gap: 24px;
  }
}

/* .btn-drawer-*
----------------------------------------------- */
.m-btn-drawer {
  --drawer-content-width-pc: 588px;
  position: relative;
  height: 100%;
}
.m-btn-drawer_btn {
  position: relative;
  cursor: pointer;
}
.m-btn-drawer_btn::before, .m-btn-drawer_btn::after {
  position: absolute;
  content: "";
  right: 27px;
  width: 2px;
  height: 14px;
  background-color: var(--COLOR_WHITE);
  border-radius: 1em;
}
.m-btn-drawer_btn::before {
  rotate: 90deg;
}
.m-btn-drawer_btn.is-open::after {
  height: 0;
  transition: var(--TRANSITION);
}
.m-btn-drawer_btn.is-open + .m-btn-drawer_drawer {
  height: auto;
  margin-top: 8px;
  z-index: 10;
}
.m-btn-drawer_btn.is-open + .m-btn-drawer_drawer > .m-btn-drawer_content {
  opacity: 1;
  visibility: visible;
}
.m-btn-drawer_drawer {
  position: absolute;
  width: 100%;
  height: 0;
}
.m-btn-drawer_content {
  position: relative;
  margin-inline: calc((100% - var(--drawer-content-width-pc)) / 2);
  padding: 50px 16px 16px;
  background-color: var(--COLOR_WHITE);
  border-radius: var(--BORDER_RADIUS);
  box-shadow: 0 2px 24px rgb(var(--COLOR_SHADOW)/0.15);
  opacity: 0;
  visibility: hidden;
}
.m-btn-drawer_content:has(.m-btn-drawer_header) {
  padding-top: 16px;
}
.m-btn-drawer_header {
  margin-bottom: 16px;
  padding-right: 32px;
  text-align: center;
}
.m-btn-drawer_list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px;
}
.m-btn-drawer_link {
  position: relative;
  display: flex;
  justify-content: center;
  flex: 1 0 auto;
  padding: 12px 47px 12px 35px;
  max-width: 180px;
  height: 100%;
  border: 1px solid var(--COLOR_GRAY_DARK);
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
}
.m-btn-drawer_link[target=_blank]::before, .m-btn-drawer_link[target=_blank]::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 8px;
  background-color: var(--COLOR_WHITE);
  border: 1px solid var(--COLOR_PRIMARY);
  border-radius: 1.2px;
  transition: var(--TRANSITION);
}
.m-btn-drawer_link[target=_blank]::before {
  top: calc(50% - 3px);
  right: 18px;
}
.m-btn-drawer_link[target=_blank]::after {
  top: calc(50% - 6px);
  right: 15px;
}
.m-btn-drawer_link[target=_blank] .m-link_icon {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-btn-drawer_link:is(:hover, :active, :focus-visible)::before {
  rotate: 12deg;
}
.m-btn-drawer_link:is(:hover, :active, :focus-visible)::after {
  rotate: -15deg;
}
.m-btn-drawer_closeBtn {
  position: absolute;
  content: "";
  top: 8px;
  right: 8px;
  width: 40px;
  height: 40px;
  background-color: transparent;
  border: 0;
  cursor: pointer;
}
.m-btn-drawer_closeBtn::before, .m-btn-drawer_closeBtn::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 22px;
  height: 1px;
  background-color: #45494D;
  transform-origin: center;
}
.m-btn-drawer_closeBtn::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.m-btn-drawer_closeBtn::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.m-btn-drawer_closeBtn > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
@media (width <= 915px) {
  .m-btn-drawer {
    --drawer-content-width-pc: 430px;
  }
}
@media (width <= 768px) {
  .m-btn-drawer_content {
    margin-left: calc(50% - 50vw - var(--GUTTER_CONTENT) * 2);
    margin-right: 0;
  }
  .m-btn-drawer_header {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-btn-drawer_list {
    gap: 7px;
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  }
  .m-btn-drawer_link {
    padding-block: 13px;
    padding-inline: 15px 31px;
    min-width: 148px;
  }
  .m-btn-drawer_link[target=_blank]::before {
    top: calc(50% - 3px);
    right: 14px;
  }
  .m-btn-drawer_link[target=_blank]::after {
    top: calc(50% - 6px);
    right: 11px;
  }
  .m-btn-drawer_closeBtn {
    width: 28px;
    height: 28px;
    top: 4px;
    right: 4px;
  }
  .m-btn-drawer_closeBtn::before, .m-btn-drawer_closeBtn::after {
    width: 16px;
  }
}
@media (width <= 640px) {
  .m-btn-drawer_content {
    margin-inline: calc(50% - 50vw + ((var(--GUTTER_CONTENT))));
  }
}

@media (width <= 768px) {
  html:lang(zh-Hans) .m-btn-drawer_content,
  html:lang(zh-Hant) .m-btn-drawer_content {
    margin-inline: calc((100% - var(--drawer-content-width-pc)) / 2);
  }
}
@media (width <= 640px) {
  html:lang(zh-Hans) .m-btn-drawer_content,
  html:lang(zh-Hant) .m-btn-drawer_content {
    margin-inline: calc(50% - 50vw + ((var(--GUTTER_CONTENT))));
  }
}

/* .js-carousel-[]
----------------------------------------------- */
[class*=js-carousel-] {
  position: relative;
}
[class*=js-carousel-] .splide__pagination {
  position: relative;
}
[class*=js-carousel-] .splide__pagination::before {
  display: block;
  content: "";
  position: absolute;
  height: 9px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  background-color: var(--JYOUHOUKAN_COLOR_PRIMARY);
  z-index: 1;
  transition: left var(--TRANSITION);
  left: 0;
  bottom: 0;
}

.js-carousel-01.i-0 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_0));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_0) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_0));
}
.js-carousel-01.i-1 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_1));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_1) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_1));
}
.js-carousel-01.i-2 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_2));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_2) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_2));
}
.js-carousel-01.i-3 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_3));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_3) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_3));
}
.js-carousel-01.i-4 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_4));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_4) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_4));
}
.js-carousel-01.i-5 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_5));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_5) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_5));
}
.js-carousel-01.i-6 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_6));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_6) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_6));
}
.js-carousel-01.i-7 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_7));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_7) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_7));
}
.js-carousel-01.i-8 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_8));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_8) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_8));
}
.js-carousel-01.i-9 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_9));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_9) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_9));
}
.js-carousel-01.i-10 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_10));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_10) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_10));
}
.js-carousel-01.i-11 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_11));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_11) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_11));
}
.js-carousel-01.i-12 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_12));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_12) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_12));
}
.js-carousel-01.i-13 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_13));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_13) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_13));
}
.js-carousel-01.i-14 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_14));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_14) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_14));
}
.js-carousel-01.i-15 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_15));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_15) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_15));
}
.js-carousel-01.i-16 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_16));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_16) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_16));
}
.js-carousel-01.i-17 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_17));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_17) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_17));
}
.js-carousel-01.i-18 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_18));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_18) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_18));
}
.js-carousel-01.i-19 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_19));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_19) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_19));
}
.js-carousel-01.i-20 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_20));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_20) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_20));
}
.js-carousel-01.i-21 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_21));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_21) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_21));
}
.js-carousel-01.i-22 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_22));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_22) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_22));
}
.js-carousel-01.i-23 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_23));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_23) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_23));
}
.js-carousel-01.i-24 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_24));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_24) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_24));
}
.js-carousel-01.i-25 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_25));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_25) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_25));
}
.js-carousel-01.i-26 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_26));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_26) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_26));
}
.js-carousel-01.i-27 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_27));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_27) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_27));
}
.js-carousel-01.i-28 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_28));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_28) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_28));
}
.js-carousel-01.i-29 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_29));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_29) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_29));
}
.js-carousel-01.i-30 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_30));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_01_30) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_01_30));
}

.js-carousel-04.i-0 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_0));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_0) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_0));
}
.js-carousel-04.i-1 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_1));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_1) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_1));
}
.js-carousel-04.i-2 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_2));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_2) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_2));
}
.js-carousel-04.i-3 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_3));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_3) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_3));
}
.js-carousel-04.i-4 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_4));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_4) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_4));
}
.js-carousel-04.i-5 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_5));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_5) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_5));
}
.js-carousel-04.i-6 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_6));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_6) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_6));
}
.js-carousel-04.i-7 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_7));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_7) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_7));
}
.js-carousel-04.i-8 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_8));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_8) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_8));
}
.js-carousel-04.i-9 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_9));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_9) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_9));
}
.js-carousel-04.i-10 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_10));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_10) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_10));
}
.js-carousel-04.i-11 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_11));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_11) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_11));
}
.js-carousel-04.i-12 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_12));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_12) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_12));
}
.js-carousel-04.i-13 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_13));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_13) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_13));
}
.js-carousel-04.i-14 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_14));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_14) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_14));
}
.js-carousel-04.i-15 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_15));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_15) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_15));
}
.js-carousel-04.i-16 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_16));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_16) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_16));
}
.js-carousel-04.i-17 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_17));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_17) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_17));
}
.js-carousel-04.i-18 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_18));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_18) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_18));
}
.js-carousel-04.i-19 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_19));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_19) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_19));
}
.js-carousel-04.i-20 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_20));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_20) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_20));
}
.js-carousel-04.i-21 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_21));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_21) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_21));
}
.js-carousel-04.i-22 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_22));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_22) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_22));
}
.js-carousel-04.i-23 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_23));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_23) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_23));
}
.js-carousel-04.i-24 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_24));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_24) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_24));
}
.js-carousel-04.i-25 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_25));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_25) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_25));
}
.js-carousel-04.i-26 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_26));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_26) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_26));
}
.js-carousel-04.i-27 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_27));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_27) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_27));
}
.js-carousel-04.i-28 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_28));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_28) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_28));
}
.js-carousel-04.i-29 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_29));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_29) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_29));
}
.js-carousel-04.i-30 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_30));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_04_30) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_04_30));
}

.js-carousel-05.i-0 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_0));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_0) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_0));
}
.js-carousel-05.i-1 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_1));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_1) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_1));
}
.js-carousel-05.i-2 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_2));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_2) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_2));
}
.js-carousel-05.i-3 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_3));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_3) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_3));
}
.js-carousel-05.i-4 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_4));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_4) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_4));
}
.js-carousel-05.i-5 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_5));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_5) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_5));
}
.js-carousel-05.i-6 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_6));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_6) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_6));
}
.js-carousel-05.i-7 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_7));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_7) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_7));
}
.js-carousel-05.i-8 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_8));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_8) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_8));
}
.js-carousel-05.i-9 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_9));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_9) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_9));
}
.js-carousel-05.i-10 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_10));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_10) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_10));
}
.js-carousel-05.i-11 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_11));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_11) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_11));
}
.js-carousel-05.i-12 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_12));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_12) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_12));
}
.js-carousel-05.i-13 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_13));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_13) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_13));
}
.js-carousel-05.i-14 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_14));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_14) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_14));
}
.js-carousel-05.i-15 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_15));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_15) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_15));
}
.js-carousel-05.i-16 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_16));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_16) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_16));
}
.js-carousel-05.i-17 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_17));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_17) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_17));
}
.js-carousel-05.i-18 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_18));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_18) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_18));
}
.js-carousel-05.i-19 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_19));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_19) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_19));
}
.js-carousel-05.i-20 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_20));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_20) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_20));
}
.js-carousel-05.i-21 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_21));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_21) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_21));
}
.js-carousel-05.i-22 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_22));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_22) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_22));
}
.js-carousel-05.i-23 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_23));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_23) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_23));
}
.js-carousel-05.i-24 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_24));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_24) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_24));
}
.js-carousel-05.i-25 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_25));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_25) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_25));
}
.js-carousel-05.i-26 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_26));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_26) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_26));
}
.js-carousel-05.i-27 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_27));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_27) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_27));
}
.js-carousel-05.i-28 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_28));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_28) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_28));
}
.js-carousel-05.i-29 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_29));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_29) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_29));
}
.js-carousel-05.i-30 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_30));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_05_30) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_05_30));
}

.js-carousel-06.i-0 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_0));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_0) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_0));
}
.js-carousel-06.i-1 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_1));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_1) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_1));
}
.js-carousel-06.i-2 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_2));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_2) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_2));
}
.js-carousel-06.i-3 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_3));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_3) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_3));
}
.js-carousel-06.i-4 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_4));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_4) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_4));
}
.js-carousel-06.i-5 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_5));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_5) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_5));
}
.js-carousel-06.i-6 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_6));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_6) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_6));
}
.js-carousel-06.i-7 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_7));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_7) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_7));
}
.js-carousel-06.i-8 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_8));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_8) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_8));
}
.js-carousel-06.i-9 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_9));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_9) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_9));
}
.js-carousel-06.i-10 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_10));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_10) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_10));
}
.js-carousel-06.i-11 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_11));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_11) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_11));
}
.js-carousel-06.i-12 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_12));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_12) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_12));
}
.js-carousel-06.i-13 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_13));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_13) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_13));
}
.js-carousel-06.i-14 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_14));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_14) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_14));
}
.js-carousel-06.i-15 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_15));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_15) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_15));
}
.js-carousel-06.i-16 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_16));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_16) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_16));
}
.js-carousel-06.i-17 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_17));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_17) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_17));
}
.js-carousel-06.i-18 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_18));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_18) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_18));
}
.js-carousel-06.i-19 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_19));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_19) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_19));
}
.js-carousel-06.i-20 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_20));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_20) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_20));
}
.js-carousel-06.i-21 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_21));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_21) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_21));
}
.js-carousel-06.i-22 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_22));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_22) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_22));
}
.js-carousel-06.i-23 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_23));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_23) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_23));
}
.js-carousel-06.i-24 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_24));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_24) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_24));
}
.js-carousel-06.i-25 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_25));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_25) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_25));
}
.js-carousel-06.i-26 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_26));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_26) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_26));
}
.js-carousel-06.i-27 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_27));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_27) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_27));
}
.js-carousel-06.i-28 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_28));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_28) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_28));
}
.js-carousel-06.i-29 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_29));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_29) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_29));
}
.js-carousel-06.i-30 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_30));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_06_30) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_06_30));
}

.js-carousel-12.i-0 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_0));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_0) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_0));
}
.js-carousel-12.i-1 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_1));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_1) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_1));
}
.js-carousel-12.i-2 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_2));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_2) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_2));
}
.js-carousel-12.i-3 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_3));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_3) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_3));
}
.js-carousel-12.i-4 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_4));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_4) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_4));
}
.js-carousel-12.i-5 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_5));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_5) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_5));
}
.js-carousel-12.i-6 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_6));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_6) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_6));
}
.js-carousel-12.i-7 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_7));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_7) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_7));
}
.js-carousel-12.i-8 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_8));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_8) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_8));
}
.js-carousel-12.i-9 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_9));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_9) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_9));
}
.js-carousel-12.i-10 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_10));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_10) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_10));
}
.js-carousel-12.i-11 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_11));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_11) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_11));
}
.js-carousel-12.i-12 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_12));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_12) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_12));
}
.js-carousel-12.i-13 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_13));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_13) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_13));
}
.js-carousel-12.i-14 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_14));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_14) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_14));
}
.js-carousel-12.i-15 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_15));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_15) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_15));
}
.js-carousel-12.i-16 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_16));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_16) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_16));
}
.js-carousel-12.i-17 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_17));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_17) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_17));
}
.js-carousel-12.i-18 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_18));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_18) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_18));
}
.js-carousel-12.i-19 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_19));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_19) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_19));
}
.js-carousel-12.i-20 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_20));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_20) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_20));
}
.js-carousel-12.i-21 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_21));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_21) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_21));
}
.js-carousel-12.i-22 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_22));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_22) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_22));
}
.js-carousel-12.i-23 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_23));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_23) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_23));
}
.js-carousel-12.i-24 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_24));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_24) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_24));
}
.js-carousel-12.i-25 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_25));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_25) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_25));
}
.js-carousel-12.i-26 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_26));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_26) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_26));
}
.js-carousel-12.i-27 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_27));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_27) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_27));
}
.js-carousel-12.i-28 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_28));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_28) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_28));
}
.js-carousel-12.i-29 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_29));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_29) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_29));
}
.js-carousel-12.i-30 .splide__pagination::before {
  width: calc(100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_30));
  left: calc(var(--JS_SPLIDE_SLIDE_ACTIVE_12_30) * 100% / var(--JS_SPLIDE_SLIDE_LENGTH_12_30));
}

/* .m-carousel-01（関連商品）
----------------------------------------------- */
.m-carousel-01 {
  display: flex;
  flex-direction: column;
  row-gap: 44px;
  visibility: visible;
}
.m-carousel-01_track {
  overflow: initial;
}
.m-carousel-01_list {
  position: relative;
  display: flex;
  margin-bottom: 0;
}
.js-unavailable .m-carousel-01_list {
  flex-wrap: wrap;
  gap: 24px;
}
.m-carousel-01:not(.is-active) .m-carousel-01_control {
  display: none;
}
.m-carousel-01_item {
  margin-right: 24px;
  width: 100%;
  max-width: 282px;
  flex-shrink: 0;
  opacity: 1;
}
.m-carousel-01_item:where(:last-child) {
  margin-right: 0;
}
.m-carousel-01_item:only-child {
  max-width: 100%;
}
.m-carousel-01_item .m-panel {
  transition: transform 0.2s;
}
.m-carousel-01_item .m-panel .m-panel_item > img {
  transition: transform 0.2s;
}
.m-carousel-01_item .m-panel:is(:hover, :active, :focus-visible) {
  transform: scale(1.05);
}
.m-carousel-01_item .m-panel:is(:hover, :active, :focus-visible) .m-panel_item > img {
  transform: scale(1.1);
}
.m-carousel-01_nav {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.m-carousel-01_hdg > * {
  margin: 0;
}
.m-carousel-01_control {
  display: flex;
  justify-content: flex-end;
  gap: 24px;
  flex-wrap: wrap;
}
.m-carousel-01_pagination {
  --size-btn: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 2px;
  margin-bottom: 0;
  min-height: var(--size-btn);
}
.m-carousel-01_pagination > li {
  display: flex;
  position: relative;
}
.m-carousel-01_pagination button {
  position: relative;
  margin: 8px;
  padding: 0;
  width: var(--size-btn);
  height: var(--size-btn);
  background-color: #C7C8C9;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}
.m-carousel-01_pagination button[aria-selected=true] {
  background-color: var(--COLOR_PRIMARY);
}
.m-carousel-01_pagination button[aria-selected=true]::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  border: 1px solid var(--COLOR_PRIMARY);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  will-change: transform;
}
.m-carousel-01_pagination button > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-carousel-01_arrow {
  display: flex;
  justify-content: center;
  column-gap: 20px;
}
.m-carousel-01_arrow-item {
  display: flex;
}
.m-carousel-01_arrow-btn {
  position: relative;
  width: 50px;
  height: 50px;
  background-color: var(--COLOR_PRIMARY);
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: transform 0.3s;
  overflow: hidden;
}
.m-carousel-01_arrow-btn::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 16px;
  height: 12px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-carousel-01_arrow-btn.prev::before {
  rotate: 180deg;
}
.m-carousel-01_arrow-btn:disabled {
  background-color: #C7C8C9;
  box-shadow: none;
  cursor: not-allowed;
}
.m-carousel-01_arrow-btn > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-carousel-01_arrow-btn:is(:hover, :active, :focus-visible) {
  transform: scale(1.15);
  transition: transform 0.3s;
}
.m-carousel-01_arrow-btn:is(:hover, :active, :focus-visible).prev:not(:disabled)::before {
  animation: hover-flow-reverse 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-carousel-01_arrow-btn:is(:hover, :active, :focus-visible).next:not(:disabled)::before {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-carousel-01_arrow-btn:is(:hover, :active, :focus-visible):disabled {
  transform: none;
}
@media (width > 767px) {
  .m-carousel-01:not(.is-active).is-initialized .m-carousel-01_list {
    display: flex;
  }
  .m-hdg-l2 + .m-carousel-01:not(.is-active) {
    margin-top: 0;
    row-gap: unset;
  }
  .m-carousel-01:not(.is-active) .m-carousel-01_list {
    column-gap: 24px;
  }
  .m-carousel-01:not(.is-active) .m-carousel-01_item {
    margin-right: 0;
    width: fit-content;
    flex: 0 1 fit-content;
  }
  .m-carousel-01:not(.is-active) .m-carousel-01_item:only-child .m-carousel-01_card {
    flex-direction: row-reverse;
    column-gap: 24px;
    padding: 24px;
  }
  .m-carousel-01:not(.is-active) .m-carousel-01_item:only-child .m-carousel-01_card-content {
    padding: 0;
  }
  .m-carousel-01:not(.is-active) .m-carousel-01_item .m-carousel-01_arrow {
    display: none;
  }
}
@media (width <= 767px) {
  .m-carousel-01 {
    row-gap: 16px;
  }
  .m-carousel-01_track {
    margin-bottom: 0;
  }
  .m-carousel-01_item {
    width: 100%;
    max-width: 260px;
    margin-right: 16px !important;
  }
  .m-carousel-01_item:only-child {
    max-width: 311px;
    margin-inline: auto !important;
  }
  .m-carousel-01_nav {
    flex-direction: column;
    column-gap: 32px;
  }
  .m-carousel-01_control {
    gap: 10px;
  }
  .m-carousel-01_pagination {
    --size-btn: 6px;
    column-gap: 0;
  }
  .m-carousel-01_pagination button {
    margin: 6px;
  }
  .m-carousel-01_pagination button[aria-selected=true] {
    background-color: var(--COLOR_PRIMARY);
  }
  .m-carousel-01_pagination button[aria-selected=true]::before {
    width: 16px;
    height: 16px;
  }
  .m-carousel-01_arrow {
    column-gap: 8px;
  }
  .m-carousel-01_arrow-btn {
    width: 36px;
    height: 36px;
  }
  .m-carousel-01_arrow-btn::before {
    mask-size: 12px;
  }
}

/* .m-carousel-02（商品サムネイル）
----------------------------------------------- */
.m-carousel-02 {
  max-width: 416px;
  width: 100%;
  margin-inline: auto;
}
.m-carousel-02_caption {
  margin-top: 8px;
  font-size: var(--FONT_SIZE_SM);
}
.m-carousel-02_slide {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.m-carousel-02_slide img {
  width: 100%;
  height: auto;
  aspect-ratio: 416/368;
}
.m-carousel-02_slide-container {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  max-height: 368px;
  border: 1px solid var(--COLOR_GRAY_DARK);
}
.m-carousel-02_thumbnails {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
  margin-block: 20px 0;
  margin-inline: auto;
  padding: 0;
}
.m-carousel-02_thumbnail button {
  position: relative;
  display: grid;
  place-items: center;
  padding: 0;
  background-color: var(--COLOR_WHITE);
  border: 1px solid var(--COLOR_GRAY_DARK);
  cursor: pointer;
}
.m-carousel-02_thumbnail button img {
  width: 100%;
  height: auto;
}
.m-carousel-02_thumbnail button.is-active::after {
  position: absolute;
  content: "";
  inset: -1px 0 0 -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 2px solid var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-carousel-02_thumbnails {
    gap: 8px;
  }
}

/* .m-carousel-03
----------------------------------------------- */
.m-carousel-03 {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
.m-carousel-03.splide.is-initialized:not(.is-active) .splide__list {
  display: flex;
}
.m-carousel-03_control {
  display: none;
}
.m-carousel-03_track.splide__track {
  overflow: initial;
}
.m-carousel-03_list.splide__list {
  display: flex;
  column-gap: 24px;
}
.m-carousel-03_item.splide__slide {
  flex-shrink: 1;
}
.js-unavailable .m-carousel-03 {
  visibility: visible;
}
@media (width <= 1000px) {
  .m-carousel-03 {
    row-gap: 20px;
  }
  .m-carousel-03_nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 12px;
  }
  .m-carousel-03_control {
    display: flex;
    align-items: center;
    column-gap: 10px;
    margin-left: auto;
  }
  .m-carousel-03_pagination .splide__pagination__page {
    position: relative;
    margin: 6px;
    padding: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    border: none;
    background-color: #C7C8C9;
    cursor: pointer;
  }
  .m-carousel-03_pagination .splide__pagination__page[aria-selected=true] {
    background-color: var(--COLOR_PRIMARY);
  }
  .m-carousel-03_pagination .splide__pagination__page[aria-selected=true]::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 16px;
    height: 16px;
    border: 1px solid var(--COLOR_PRIMARY);
    border-radius: 50%;
  }
  .m-carousel-03_toggle {
    position: relative;
    width: 36px;
    height: 36px;
    border: none;
    background-color: transparent;
    cursor: pointer;
    z-index: 1;
  }
  .m-carousel-03_toggle::before {
    position: absolute;
    content: "";
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--COLOR_PRIMARY);
    transition: scale var(--TRANSITION);
    z-index: -1;
  }
  .m-carousel-03_toggle .splide__toggle__play,
  .m-carousel-03_toggle .splide__toggle__pause {
    position: relative;
  }
  .m-carousel-03_toggle .splide__toggle__play > span,
  .m-carousel-03_toggle .splide__toggle__pause > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
  .m-carousel-03_toggle .splide__toggle__play::before,
  .m-carousel-03_toggle .splide__toggle__pause::before {
    position: absolute;
    content: "";
    width: 36px;
    height: 36px;
    transform: translate(-50%, -50%);
    background-color: var(--COLOR_WHITE);
  }
  .m-carousel-03_toggle .splide__toggle__play::before {
    left: 1px;
    mask: url("../../assets/img/icon/icon-carousel-play.svg") no-repeat center/11px 14px;
  }
  .m-carousel-03_toggle .splide__toggle__pause::before {
    mask: url("../../assets/img/icon/icon-carousel-pause.svg") no-repeat center/8px 12px;
  }
  .m-carousel-03_toggle:is(:hover, :active, :focus-visible)::before {
    scale: 1.1875;
  }
  .m-carousel-03_track.splide__track {
    margin-left: -12px;
    margin-right: calc(50% - 50vw);
    padding-top: 12px;
    width: 100vw;
    overflow: hidden;
  }
  .m-carousel-03_list.splide__list {
    column-gap: 0;
  }
  .m-carousel-03_item {
    min-width: fit-content;
  }
  .js-unavailable .m-carousel-03_track.splide__track {
    margin-left: 0;
    width: 100%;
    overflow: visible;
  }
  .js-unavailable .m-carousel-03_list.splide__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(282px, 1fr));
    justify-items: center;
    gap: 24px;
  }
  .js-unavailable .m-carousel-03_toggle {
    display: none;
  }
}
@media (width <= 768px) {
  .m-carousel-03 {
    row-gap: 12px;
  }
  .m-carousel-03_item {
    min-width: 200px;
  }
}

/* .m-tab-01
----------------------------------------------- */
.m-tab-01 {
  margin-top: 32px;
}
.m-form-pulldown-link + .m-tab-01 {
  margin-top: 0;
}
.m-tab-01_list {
  display: flex;
  position: relative;
  margin: 0;
}
.m-tab-01_list::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  border-bottom: 2px solid var(--COLOR_GRAY_DARK);
  bottom: 0;
}
.m-tab-01_list > li {
  flex: 1;
}
.m-tab-01_btn {
  flex: 0 0 auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 32px 16px;
  background-color: var(--COLOR_WHITE);
  border: none;
  border-bottom: 2px solid var(--COLOR_GRAY_DARK);
  border-radius: var(--BORDER_RADIUS) var(--BORDER_RADIUS) 0 0;
  color: var(--COLOR_BLACK);
  font-weight: var(--FONT_WEIGHT_BOLD);
  text-decoration: none;
  cursor: pointer;
}
.m-tab-01_btn:last-child::after {
  display: none;
}
.m-tab-01_btn::after {
  display: block;
  content: "";
  width: 100%;
  height: fill-available;
  border-right: 2px solid var(--COLOR_GRAY_DARK);
  position: absolute;
  right: -2px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.m-tab-01_list > li .m-tab-01_btn {
  height: 100%;
}
.m-tab-01_btn[aria-selected=true], .m-tab-01_btn:is(a:not(:any-link)),
.m-tab-01_btn .m-tab-01 > li[aria-selected=true] {
  border: 2px solid var(--COLOR_GRAY_DARK);
  border-bottom: none;
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-tab-01_btn[aria-selected=true]::after, .m-tab-01_btn:is(a:not(:any-link))::after,
.m-tab-01_btn .m-tab-01 > li[aria-selected=true]::after {
  display: none;
}
.m-tab-01_btn:is(:hover, :active, :focus-visible) {
  background-color: var(--COLOR_WHITE);
  color: var(--COLOR_PRIMARY);
}
.m-tab-01_btn:is(:hover, :active, :focus-visible)[aria-selected=true], .m-tab-01_btn:is(:hover, :active, :focus-visible):is(a:not(:any-link)),
.m-tab-01_btn:is(:hover, :active, :focus-visible) .m-tab-01 > li[aria-selected=true] {
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-tab-01_content {
  padding-top: 32px;
  background-color: var(--COLOR_WHITE);
}
.m-tab-01_content > :first-child {
  margin-top: 0;
}
.m-tab-01_content > :last-child {
  margin-bottom: 0;
}
.m-tab-01_content.-sm {
  padding: 40px 80px;
}
.m-tab-01_content.-none {
  display: none;
}
.m-tab-01_panel {
  display: none;
}
.m-tab-01_panel > :first-child {
  margin-top: 0;
}
.m-tab-01_panel > :last-child {
  margin-bottom: 0;
}
.m-tab-01_panel.is-shown {
  display: block;
}
:where(.js-unavailable) .m-tab-01_panel {
  display: block;
}
@media (width <= 768px) {
  .m-form-pulldown-link + .m-tab-01 {
    margin-top: 32px;
  }
  .m-tab-01_list {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .m-tab-01_btn {
    padding: 16px 24px;
  }
  .m-tab-01_content {
    padding: 32px 12px;
  }
}

/* .m-carousel-04（肌トラブル情報館 MV）
----------------------------------------------- */
.m-carousel-04 {
  display: flex;
  flex-direction: column;
  row-gap: 44px;
  visibility: visible;
  position: relative;
}
.m-carousel-04::before {
  position: absolute;
  height: 100%;
  width: 100vw;
  left: calc(-100vw - 43px);
  background-color: var(--COLOR_WHITE);
  z-index: 1;
  display: block;
  content: "";
}
.m-carousel-04_track {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow: initial;
  row-gap: 32px;
}
.m-carousel-04_track.splide__track {
  overflow: visible;
}
.m-carousel-04_list {
  position: relative;
  display: flex;
  margin-bottom: 0;
}
.js-unavailable .m-carousel-04_list {
  flex-wrap: wrap;
  gap: 24px;
}
.m-carousel-04:not(.is-active) .m-carousel-04_control {
  display: none;
}
.m-carousel-04:not(.is-noCarousel, .is-active) {
  display: none;
}
.m-carousel-04_item {
  width: 100%;
  max-width: 560px;
  flex-shrink: 0;
  opacity: 1;
}
.m-carousel-04_item:where(:last-child) {
  margin-right: 0;
}
.m-carousel-04_item:only-child {
  max-width: 100%;
}
.m-carousel-04_hdg > * {
  margin: 0;
}
.m-carousel-04_control {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 24px;
  max-width: 560px;
}
.m-carousel-04_pagination {
  --size-btn: 8px;
  display: flex;
  align-items: flex-end;
  gap: 12px 0;
  justify-content: center;
  margin-bottom: 0;
  min-height: var(--size-btn);
}
.m-carousel-04_pagination > li {
  display: flex;
  position: relative;
}
.m-carousel-04_pagination > li:first-child button:not([aria-selected=true]) {
  border-top-left-radius: 3px;
}
.m-carousel-04_pagination > li:last-child button:not([aria-selected=true]) {
  border-top-right-radius: 3px;
}
.m-carousel-04_pagination button {
  position: relative;
  margin: 0;
  padding: 0;
  width: 90px;
  height: 9px;
  background-color: #DCE2E6;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  cursor: pointer;
}
.m-carousel-04_pagination button::after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  top: 0;
  background-color: var(--COLOR_WHITE);
}
.m-carousel-04_pagination button[aria-selected=true] {
  position: relative;
  height: 9px;
  overflow: hidden;
}
.m-carousel-04_pagination button > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-carousel-04_arrow {
  position: absolute;
  top: calc(50% - 20px);
  display: flex;
  justify-content: space-between;
  width: calc(100% + 50px);
  max-width: 610px;
  translate: 0 -50%;
}
.m-carousel-04_arrow-btn {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.9);
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: transform 0.3s;
  overflow: hidden;
  box-shadow: 0 2px 8px rgb(var(--COLOR_SHADOW)/0.15);
}
.m-carousel-04_arrow-btn::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 16px;
  height: 12px;
  background: no-repeat center;
  filter: var(--JYOUHOUKAN_COLOR_FILTER);
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23FF884C%22%20stroke%3d%22%23FF884C%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23FF884C%22%20stroke%3d%22%23FF884C%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-carousel-04_arrow-btn.prev::before {
  rotate: 180deg;
}
.m-carousel-04_arrow-btn:disabled {
  background-color: #C7C8C9;
  box-shadow: none;
  cursor: not-allowed;
}
.m-carousel-04_arrow-btn > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-carousel-04_arrow-btn:is(:hover, :active, :focus-visible) {
  transform: scale(1.15);
  transition: transform 0.3s;
}
.m-carousel-04_arrow-btn:is(:hover, :active, :focus-visible).prev:not(:disabled)::before {
  animation: hover-flow-reverse 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-carousel-04_arrow-btn:is(:hover, :active, :focus-visible).next:not(:disabled)::before {
  animation: hover-flow 0.6s var(--ANIMATION_ARROW_BEZIER) 1 both;
}
.m-carousel-04_arrow-btn:is(:hover, :active, :focus-visible):disabled {
  transform: none;
}
.m-carousel-04_link {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  max-width: 560px;
  height: 100%;
}
.m-carousel-04_link:is(:hover, :active, :focus-visible) .m-carousel-04_img > img {
  transform: scale(1.1);
}
.m-carousel-04_content {
  position: absolute;
  padding: 20px 32px;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(255, 255, 255, 0.56);
  border-radius: 16px 48px;
  max-width: 496px;
  width: calc(100% - 64px);
  z-index: 1;
}
.m-carousel-04_content > :first-child {
  margin-top: 0;
}
.m-carousel-04_content > :last-child {
  margin-bottom: 0;
}
.m-carousel-04_title {
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-carousel-04_text {
  margin-top: 16px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.m-carousel-04_img {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 560px;
  overflow: hidden;
  aspect-ratio: 560/377;
  border-radius: var(--BORDER_RADIUS) 64px var(--BORDER_RADIUS) 64px;
}
.m-carousel-04_img > img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 560/377;
  transition: transform 0.3s;
}
@media (width > 860px) {
  .m-carousel-04:not(.is-active).is-initialized .m-carousel-04_list {
    display: flex;
  }
  .m-hdg-l2 + .m-carousel-04:not(.is-active) {
    margin-top: 0;
    row-gap: unset;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_list {
    column-gap: 24px;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_item {
    margin-right: 0;
    width: fit-content;
    flex: 0 1 fit-content;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_item:only-child {
    max-width: 100%;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_item:only-child .m-carousel-04_card {
    flex-direction: row-reverse;
    column-gap: 24px;
    padding: 24px;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_item:only-child .m-carousel-04_card-content {
    padding: 0;
  }
  .m-carousel-04:not(.is-active) .m-carousel-04_item .m-carousel-04_arrow {
    display: none;
  }
}
@media (width <= 1080px) {
  .m-carousel-04_title {
    font-size: max(1.6vw, 1.5rem);
  }
  .m-carousel-04_text {
    font-size: max(1.1vw, 1.3rem);
  }
  .m-carousel-04_pagination button {
    width: 7.8vw;
  }
}
@media (width <= 768px) {
  .m-carousel-04 {
    row-gap: 16px;
  }
  .m-carousel-04_track {
    margin-bottom: 0;
    row-gap: 16px;
  }
  .m-carousel-04_item {
    max-width: unset;
    width: 100%;
  }
  .m-carousel-04_item:only-child {
    max-width: 293px;
  }
  .m-carousel-04_control {
    gap: 10px;
    max-width: none;
  }
  .m-carousel-04_pagination {
    --size-btn: 6px;
    column-gap: 0;
    flex: 1;
    flex-wrap: nowrap;
    width: 80%;
    margin: 0 auto;
  }
  .m-carousel-04_pagination > li {
    width: 100%;
  }
  .m-carousel-04_pagination button {
    width: 100%;
    height: 7px;
  }
  .m-carousel-04_pagination button[aria-selected=true] {
    width: 100%;
    height: 7px;
  }
  .m-carousel-04_pagination button::after {
    height: 3px;
  }
  .m-carousel-04_arrow {
    top: calc(50% - 10px);
    left: 50%;
    width: calc(100% - 40px);
    max-width: none;
    column-gap: 8px;
    translate: -50% -50%;
  }
  .m-carousel-04_arrow-btn {
    width: 42px;
    height: 42px;
  }
  .m-carousel-04_arrow-btn::before {
    mask-size: 12px;
  }
  .m-carousel-04_content {
    bottom: 18px;
    width: calc(100% - 32px);
    padding: 12px 20px;
    border-radius: 4px 20px;
  }
  .m-carousel-04_link {
    width: calc(100% - 82px);
    margin: auto;
    max-width: unset;
  }
  .m-carousel-04_title {
    font-size: var(--FONT_SIZE);
  }
  .m-carousel-04_text {
    display: none;
  }
  .m-carousel-04_img {
    max-width: unset;
    width: 100%;
    border-radius: var(--BORDER_RADIUS) 24px var(--BORDER_RADIUS) 24px;
  }
  .m-carousel-04 .m-icon-label {
    gap: 8px;
  }
}

/* ----------------------------------------------------------------
    Modal (.m-modal[-*])
----------------------------------------------------------------- */
/* .m-modal
----------------------------------------------- */
.m-modal {
  --close-btn-size: 32px;
  overflow: visible;
  border: none;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_WHITE);
  max-width: 880px;
  width: 100%;
  margin: auto;
  padding: 0;
  opacity: 0;
  transition: opacity 0.7s ease;
}
html.is-modal-open .m-modal {
  opacity: 1;
}
html.is-modal-open .m-modal::backdrop {
  opacity: 1;
}
.m-modal::backdrop {
  background: rgba(0, 0, 0, 0.4);
  transition: opacity 1s ease;
  opacity: 0;
}
.m-modal_inner {
  overflow: visible;
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr;
  width: 100%;
  padding: 40px;
}
.m-modal_close-btn {
  position: absolute;
  right: -24px;
  top: -24px;
  height: 48px;
  width: 48px;
  border: none;
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
  cursor: pointer;
}
.m-modal_close-btn::before, .m-modal_close-btn::after {
  display: block;
  content: "";
  position: absolute;
  height: 18px;
  width: 2px;
  top: calc(50% - 9px);
  left: calc(50% - 1px);
  background-color: var(--COLOR_WHITE);
  border-radius: 2px;
}
.m-modal_close-btn::before {
  transform: rotate(45deg);
}
.m-modal_close-btn::after {
  transform: rotate(-45deg);
}
.m-modal_close-btn > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-modal_content {
  overflow-x: hidden;
  padding: var(--m-spacing-md) 0;
}
.m-modal_content > *:first-child {
  margin-top: 0;
}
.m-modal_content > :last-child {
  margin-bottom: 0;
}
.m-modal_img {
  padding: 8px 0;
}
.m-modal_img > img {
  display: block;
  margin: 0 auto;
}
@media (width <= 1000px) {
  .m-modal {
    max-width: 80vw;
  }
}
@media (width <= 768px) {
  .m-modal_hdg {
    font-size: 18px;
  }
  .m-modal_inner {
    padding: 56px 20px 20px;
    min-height: unset;
  }
  .m-modal.noModal-sp {
    display: contents;
    opacity: 1;
  }
  .m-modal.noModal-sp .m-modal_inner {
    padding: 0;
  }
  .m-modal.noModal-sp .m-modal_close-btn {
    display: none;
  }
}

/* .fn-m-modal
----------------------------------------------- */
@media (width <= 768px) {
  .fn-modal_scroll {
    overflow: auto;
  }
  .fn-modal_scroll > img {
    max-width: none;
    flex-shrink: 0;
  }
}

html.is-modal-open {
  overflow: hidden;
}
@media (width <= 768px) {
  html.is-modal-open {
    scrollbar-gutter: auto;
  }
}

/* .m-toggle-container
----------------------------------------------- */
.m-toggle-content {
  display: none;
}
.m-toggle-content.is-shown {
  display: block;
}
.m-toggle-content.is-shown .m-toggle-content_btn::after {
  scale: 0;
}
.m-toggle-content_btn {
  cursor: pointer;
}
.m-toggle-content_btn::before, .m-toggle-content_btn::after {
  position: absolute;
  content: "";
  right: 27px;
  width: 2px;
  height: 14px;
  background-color: var(--COLOR_WHITE);
  border-radius: 1em;
  z-index: 1;
}
.m-toggle-content_btn::before {
  rotate: 90deg;
}
.m-toggle-content_btn::after {
  background-image: none;
}
.m-toggle-content_btn-text::before {
  position: absolute;
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  margin: auto;
  inset: 0 16px 0 auto;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: scale var(--TRANSITION);
}
.m-toggle-content_btn:is(:hover, :active, :focus-visible)::before, .m-toggle-content_btn:is(:hover, :active, :focus-visible)::after {
  animation: none;
}
.m-toggle-content_btn:is(:hover, :active, :focus-visible) .m-toggle-content_btn-text::before {
  scale: 1.1875;
}
.m-toggle-content_btn[aria-expanded=true]::after {
  scale: 0;
}

.fn-none {
  display: none;
}

/* .m-form-search
----------------------------------------------- */
.m-form-search {
  margin-top: 96px;
}
.m-form-search_title {
  font-size: var(--FONT_SIZE_4LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  margin-bottom: 24px;
}
.m-form-search_form {
  margin-top: 32px;
  border-bottom: 1px solid #45494d;
  display: flex;
  align-items: center;
  position: relative;
}
.m-form-search_btn {
  cursor: pointer;
  border: none;
  background: url("../../assets/img/icon/icon-search.svg") no-repeat center;
  background-size: cover;
  width: 30px;
  height: 30px;
  text-indent: 200%;
  padding: 0;
  filter: var(--FILTER_COLOR_PRIMARY);
  position: absolute;
  top: 0;
}
.m-form-search_text {
  width: 100%;
  padding: 0 0 16px 46px;
  border: none;
  outline: none;
  background-color: transparent;
}
.m-form-search_tag {
  display: flex;
  flex-wrap: wrap;
  margin-top: 26px;
  gap: 8px 10px;
}
.m-form-search_tag-btn {
  background-color: var(--COLOR_WHITE);
  border: 1px solid var(--COLOR_GRAY_DARK);
  border-radius: 28px;
  padding: 8px 14px 8px 12px;
  line-height: 1.6;
  cursor: pointer;
  font-size: var(--FONT_SIZE_SM);
  color: var(--COLOR_FONT);
  transition: 0.3s ease;
  display: block;
}
.m-form-search_tag-btn::before {
  content: "#";
  margin-right: 4px;
  color: #8d8e8f;
}
.m-form-search_tag-btn:is(:hover, :active, :focus-visible) {
  color: #45494d;
}
@media (width <= 768px) {
  .m-form-search {
    margin-top: 48px;
  }
  .m-form-search_title {
    font-size: var(--FONT_SIZE_LG);
  }
  .m-form-search_form {
    margin-top: 24px;
  }
  .m-form-search_btn {
    width: 23px;
    height: 23px;
    top: 5px;
  }
  .m-form-search_text {
    padding: 0 0 12px 35px;
  }
  .m-form-search_text::placeholder {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-form-search_tag {
    gap: 8px;
  }
  .m-form-search_tag-btn {
    padding: 11px 16px;
    font-size: var(--FONT_SIZE_SM);
  }
}

/* .m-form-pulldown-link
----------------------------------------------- */
.m-form-pulldown-link {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 24px;
}
.m-form-pulldown-link_label {
  position: relative;
  display: inline-block;
  font-size: var(--FONT_SIZE_MD);
}
.m-form-pulldown-link_label::before {
  display: block;
  content: "";
  width: 1px;
  height: 26px;
  position: absolute;
  pointer-events: none;
  right: 60px;
  bottom: 50%;
  transform: translateY(50%);
  background-color: var(--COLOR_GRAY);
  z-index: 1;
}
.m-form-pulldown-link_label::after {
  display: block;
  content: "";
  width: 13px;
  height: 8px;
  position: absolute;
  pointer-events: none;
  right: 24px;
  bottom: 50%;
  transform: translateY(50%);
  background: url("../../assets/img/icon/icon-arrow-anchor.svg") no-repeat center;
  filter: var(--FILTER_COLOR_PRIMARY);
}
.m-form-pulldown-link_select {
  margin: 0;
  width: 100%;
  appearance: none;
  border: 2px solid var(--COLOR_GRAY_DARK);
  border-radius: var(--BORDER_RADIUS);
  cursor: pointer;
  padding: 10px 84px 10px 24px;
  line-height: var(--FONT_LINE_HEIGHT_SM);
  max-width: 322px;
  position: relative;
}
.m-form-pulldown-link_submitLink {
  display: inline-block;
  margin: 0;
  min-width: 80px;
  height: fit-content;
  text-align: center;
  appearance: none;
  border: 2px solid var(--COLOR_GRAY_DARK);
  border-radius: 24px;
  cursor: pointer;
  padding: 4px 12px;
  line-height: var(--FONT_LINE_HEIGHT_SM);
  position: relative;
  transition: all var(--TRANSITION);
}
.m-form-pulldown-link_submitLink:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
  border: 2px solid var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-form-pulldown-link {
    justify-content: center;
  }
}

/* .m-form-radio
----------------------------------------------- */
.m-form-radio {
  display: inline-flex;
  cursor: pointer;
}
.m-form-radio_list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  margin-top: 32px;
}
.m-form-radio_item {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-form-radio_item:checked + .m-form-radio_text {
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-form-radio_item:checked + .m-form-radio_text::after {
  opacity: 1;
}
.m-form-radio_text {
  position: relative;
  display: flex;
  padding-left: 32px;
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
.m-form-radio_text::before, .m-form-radio_text::after {
  position: absolute;
  content: "";
}
.m-form-radio_text::before {
  top: 1px;
  left: 0;
  width: 24px;
  height: 24px;
  border: 2px solid var(--COLOR_GRAY_DARK);
  border-radius: 50%;
  background-color: var(--COLOR_WHITE);
  transition: var(--TRANSITION);
}
.m-form-radio_text::after {
  top: 7px;
  left: 6px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--COLOR_PRIMARY);
  opacity: 0;
}
.m-form-radio:is(:hover, :active, :focus-visible) .m-form-radio_text::before {
  background-color: #FDF0F0;
}
@media (width <= 768px) {
  .m-form-radio_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 24px;
  }
}

/* .m-form-search-02
----------------------------------------------- */
.m-form-search-02 {
  padding: 40px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_GRAY_LIGHT);
}
.m-form-search-02_form {
  margin-inline: auto;
  max-width: 960px;
}
.m-form-search-02_text {
  position: relative;
}
.m-form-search-02_text::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 32px;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: url("../../assets/img/icon/icon-search.svg") no-repeat center/contain;
  filter: var(--FILTER_COLOR_PRIMARY);
}
.m-form-search-02_text > input:is(:hover, :active, :focus-visible) {
  outline: none;
}
.m-form-search-02_text-input {
  width: 100%;
  border: none;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
  background-color: var(--COLOR_WHITE);
  padding-block: 20px;
  padding-inline: 74px 64px;
  border-radius: 2.2em;
}
body:has(.sug_list):not(.unique-input-style) .m-form-search-02 .m-form-search-02_form {
  filter: drop-shadow(0 12px 10px rgb(var(--COLOR_SHADOW)/0.12));
}
body:has(.sug_list):not(.unique-input-style) .m-form-search-02 .m-form-search-02_text-input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
@media (width <= 768px) {
  .m-form-search-02 {
    padding: 24px;
  }
  .m-form-search-02_text::before {
    left: 24px;
    width: 23px;
    height: 23px;
  }
  .m-form-search-02_text-input {
    font-size: var(--FONT_SIZE);
    padding-block: 16px;
    padding-inline: 59px 24px;
  }
}

/* .sug （サジェスト表示）
----------------------------------------------- */
:root {
  --suggest-fixed-position: 0px;
}

html body .sug_list {
  background-color: var(--COLOR_WHITE);
  filter: drop-shadow(0 12px 6px rgb(var(--COLOR_SHADOW)/0.12));
  opacity: 1;
  z-index: 10;
}
html body .sug_element {
  padding: 10px 8px;
  border: none;
  border-top: 1px solid var(--COLOR_GRAY_DARK);
  cursor: pointer;
}
html body .sug_element a {
  transition: var(--TRANSITION);
}
html body .sug_element:is(:hover, :active, :focus-visible) {
  background-color: transparent;
}
html body .sug_element:is(:hover, :active, :focus-visible) a {
  font-weight: var(--FONT_WEIGHT);
  color: var(--COLOR_PRIMARY) !important;
}
@media (width <= 768px) {
  html body .sug_element {
    padding: 11px 6px;
  }
}
body.generic-input-style .sug_list {
  padding-bottom: 24px;
  padding-inline: 32px;
  border-bottom-left-radius: 2.2em;
  border-bottom-right-radius: 2.2em;
}
body.generic-input-style .sug_list > :first-child {
  border-top: 2px solid var(--COLOR_GRAY_DARK);
}
@media (width <= 768px) {
  body.generic-input-style .sug_list {
    padding-inline: 24px;
    max-width: 287px;
  }
}
body.generic-input-style.fixed-input-style .sug_list {
  position: fixed !important;
  top: var(--suggest-fixed-position) !important;
  z-index: 9999;
}
body.unique-input-style .sug_list {
  border: 1px solid var(--COLOR_GRAY_DARK);
}

/* .m-text
----------------------------------------------- */
.m-text {
  margin-top: 24px;
}
.m-text_img-logo {
  vertical-align: baseline;
}
.m-text.md {
  font-size: var(--FONT_SIZE_MD);
}
.m-text-lead-02 + .m-text {
  margin-top: 0;
}
@media (width <= 768px) {
  .m-text_img-logo[src="/assets/img/company/data/index-logo-muhi.svg"] {
    width: 44px;
    height: 16px;
  }
}

/* .m-text-lead
----------------------------------------------- */
.m-text-lead {
  margin-top: 24px;
  font-size: var(--FONT_SIZE_4LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-text-lead.lg {
  font-size: var(--FONT_SIZE_2XL);
}
.m-text-lead_img-logo {
  vertical-align: baseline;
}
@media (width <= 768px) {
  .m-text-lead {
    font-size: var(--FONT_SIZE_LG);
  }
  .m-text-lead_img-logo[src="/assets/img/company/data/index-logo-muhi.svg"] {
    width: 52px;
    height: 19px;
  }
  .m-text-lead.lg {
    font-size: var(--FONT_SIZE_3LG);
  }
}

/* .m-text-lead-02
----------------------------------------------- */
.m-text-lead-02 {
  margin-block: 48px 20px;
  font-size: 3rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: 2;
}
.m-text-lead-02_underline {
  background: linear-gradient(transparent 66%, var(--COLOR_PRIMARY_LIGHT) 0%);
}
.m-text-lead-02.center {
  text-align: center;
}
.m-text-lead-02.center .m-text-lead-02_underline {
  padding-inline: 8px;
}
@media (width <= 768px) {
  .m-text-lead-02 {
    margin-block: 32px 24px;
    font-size: var(--FONT_SIZE_2LG);
  }
  .m-text-lead-02_underline {
    background: linear-gradient(transparent 70%, var(--COLOR_PRIMARY_LIGHT) 0%);
  }
}

/* .m-text-jyouhoukan-count
----------------------------------------------- */
.m-text-jyouhoukan-count {
  position: relative;
  padding-left: 22px;
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-text-jyouhoukan-count::before {
  display: block;
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--JYOUHOUKAN_COLOR_PRIMARY);
  background-size: 14px;
  border-radius: 50%;
}
@media (width <= 768px) {
  .m-text-jyouhoukan-count {
    font-size: var(--FONT_SIZE);
  }
}

/* .m-media
----------------------------------------------- */
.m-media {
  display: table;
  margin-top: 40px;
  margin-inline: auto;
}
.m-media_item > iframe {
  height: 100%;
  aspect-ratio: 16/9;
}
.m-media_caption {
  display: table-caption;
  margin-top: 16px;
  caption-side: bottom;
  font-size: var(--FONT_SIZE_SM);
  text-align: center;
}
.m-media_caption.left {
  text-align: left;
}
.m-media_caption.top {
  margin-block: 0 16px;
  caption-side: unset;
}
.m-media_link:is(:hover, :active, :focus-visible) .m-media_img::before {
  scale: 1.125;
}
.m-media_link:is(:hover, :active, :focus-visible) .m-media_img::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-media_link:is(:hover, :active, :focus-visible) .m-media_img > img {
  scale: 1.125;
}
.m-media_img {
  position: relative;
  width: fit-content;
  overflow: hidden;
  border-radius: 8px 48px;
}
.m-media_img::before, .m-media_img::after {
  position: absolute;
  content: "";
}
.m-media_img::before {
  right: 0;
  bottom: 0;
  width: 58px;
  height: 58px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: 8px;
  background-color: var(--COLOR_PRIMARY);
  z-index: 1;
  transition: var(--TRANSITION);
}
.m-media_img::after {
  bottom: 18px;
  right: 16px;
  width: 16px;
  height: 12px;
  aspect-ratio: 9/7;
  z-index: 1;
  background-repeat: no-repeat;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23fff%22%20stroke%3d%22%23fff%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-media_img > img {
  transition: 0.3s ease;
}
.m-media_img.-big::before {
  width: 64px;
  height: 64px;
}
.m-media_img.-big::after {
  right: 20px;
  bottom: 20px;
}
.m-media.round {
  border-radius: var(--BORDER_RADIUS);
  overflow: hidden;
}
.m-media.left {
  margin-left: 0;
}
.m-media.border {
  border: 1px solid var(--COLOR_GRAY_DARK);
}
.m-media.right {
  margin-right: 0;
}
.m-media.video {
  display: flex;
  justify-content: center;
}
.m-media.video iframe,
.m-media.video video {
  width: 100%;
  max-width: 800px;
  height: auto;
  aspect-ratio: 16/9;
}
.m-media.mainvisual {
  margin-bottom: 48px;
}
.m-media.mainvisual + * {
  margin-top: 0;
}
@media (width <= 768px) {
  .m-media.mainvisual {
    margin-bottom: 32px;
  }
}
@media (768px < width) {
  .m-media.left-pc {
    margin-left: 0;
  }
}
@media (width <= 768px) {
  .m-media {
    margin-top: 32px;
  }
  .m-media_img.-big::before {
    width: 50px;
    height: 50px;
  }
  .m-media_img.-big::after {
    right: 12px;
    bottom: 15px;
  }
}
.m-media.unq-adj_vision-logo {
  margin-block: 96px !important;
}
@media (width <= 768px) {
  .m-media.unq-adj_vision-logo {
    margin-block: 64px !important;
    max-width: 260px;
  }
}

/* .m-media-layout
----------------------------------------------- */
.m-media-layout {
  display: flex;
  gap: 40px;
  margin-top: 40px;
}
.m-media-layout_content {
  flex: 1;
}
.m-media-layout_content > :first-child {
  margin-top: 0;
}
.m-media-layout_content > :last-child {
  margin-bottom: 0;
}
.m-media-layout_content .m-text + .m-text:has(b, em) {
  margin-top: 8px;
}
.m-media-layout_content .m-text:has(b, em) + .m-text {
  margin-top: 8px;
}
.m-media-layout_title {
  margin-bottom: 8px;
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-media-layout_title + p {
  margin-top: 0;
}
.m-media-layout_media {
  flex: 0 0 auto;
  max-width: 420px;
}
.m-media-layout_media > :first-child {
  margin-top: 0;
}
.m-media-layout_media > :last-child {
  margin-bottom: 0;
}
.m-media-layout_media .m-media {
  margin-top: 0;
}
.m-media-layout.reverse {
  flex-direction: row-reverse;
}
.m-media-layout.border-top {
  margin-top: 64px;
  padding-top: 64px;
  border-top: 1px solid var(--COLOR_GRAY_DARK);
}
.m-media-layout.direction-column {
  flex-direction: column;
  align-items: flex-start;
}
.m-media-layout.direction-column .m-media-layout_media {
  max-width: 100%;
}
.m-media-layout.layout-02 {
  flex-direction: row-reverse;
  justify-content: flex-end;
  column-gap: 40px;
  margin-top: 32px;
}
.m-media-layout.layout-02 .m-media-layout_title {
  margin-bottom: 0;
  font-size: var(--FONT_SIZE);
}
.m-media-layout_caption {
  font-size: var(--FONT_SIZE_SM);
  text-align: center;
}
.m-media-layout_hdg {
  font-size: var(--FONT_SIZE_4LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-media-layout_inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
  height: 100%;
  justify-content: center;
}
@media (768px < width) {
  .m-media-layout_media.wide-50-pc {
    max-width: 50%;
  }
  .m-media-layout_media.wide-45-pc {
    max-width: 45%;
  }
}
@media (width <= 768px) {
  .m-media-layout {
    flex-flow: column;
    gap: 24px;
    margin-top: 40px;
  }
  .m-media-layout_title {
    font-size: var(--FONT_SIZE);
  }
  .m-media-layout_content, .m-media-layout_media {
    width: 100%;
    max-width: none;
  }
  .m-media-layout_media {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
  .m-media-layout_hdg {
    font-size: var(--FONT_SIZE_3LG);
    text-align: center;
    margin-bottom: 8px;
  }
  .m-media-layout_inner {
    gap: 16px;
  }
  .m-media-layout.reverse {
    flex-direction: column;
  }
  .m-media-layout.sp-reverse {
    flex-direction: column-reverse;
  }
  .m-media-layout.layout-02 {
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 0 20px;
  }
  .m-media-layout.layout-02 .m-media-layout_content {
    display: contents;
    flex: auto;
    width: unset;
  }
  .m-media-layout.layout-02 .m-media-layout_title {
    width: 73%;
    order: 1;
  }
  .m-media-layout.layout-02 .m-media-layout_title + p {
    margin-top: 8px;
    order: 2;
  }
  .m-media-layout.layout-02 .m-media-layout_media {
    justify-content: unset;
    width: unset;
  }
}

.m-media-map {
  display: flex;
  justify-content: center;
}
.m-media-map iframe {
  border-radius: var(--BORDER_RADIUS);
}

/* .m-media-text
----------------------------------------------- */
.m-media-text {
  position: relative;
  display: inline-flex;
  top: -3px;
  margin-inline: 8px;
}

/* .m-mv-01
----------------------------------------------- */
.m-mv-01 {
  position: relative;
}
.m-mv-01_img-inner {
  position: relative;
  width: 100%;
  max-width: 1880px;
  aspect-ratio: 1880/653;
  min-height: 400px;
  margin-inline: auto 0;
}
.m-mv-01_img-inner picture {
  display: block;
}
.m-mv-01_img-inner::before {
  background: linear-gradient(to right, var(--COLOR_WHITE) 0%, rgba(255, 255, 255, 0.44) 45%, rgba(255, 255, 255, 0) 80%);
  position: absolute;
  inset: 0;
  left: -1px;
  content: "";
  height: calc(100% + 1px);
}
.m-mv-01_img {
  width: 100%;
  height: auto;
  min-height: 400px;
  object-fit: cover;
  object-position: right;
}
.m-mv-01_inner {
  position: absolute;
  margin-inline: auto;
  padding: 80px 20px 96px;
  max-width: var(--WIDTH_CONTENT);
  overflow: hidden;
  z-index: 1;
  display: flex;
  align-items: center;
  height: 100%;
  text-align: left;
  inset: 0;
}
.m-mv-01_hdg {
  font-size: 4.6rem;
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-mv-01_text {
  margin-top: 24px;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
}
.m-mv-01_hdg, .m-mv-01_text {
  text-shadow: 0 0 12px rgb(255, 255, 255);
}
@media (width <= 1024px) {
  .m-mv-01 .block-tb {
    display: block !important;
  }
}
@media (width <= 768px) {
  .m-mv-01_img-inner {
    min-height: unset;
  }
  .m-mv-01::before {
    background-image: linear-gradient(to right, var(--COLOR_WHITE) 0%, rgba(255, 255, 255, 0) 75%), url("/_dev/img/products/products-mv-sp-01.webp");
    background-size: cover;
  }
  .m-mv-01_inner {
    padding: 36px 48px;
  }
  .m-mv-01_hdg {
    font-size: var(--FONT_SIZE_4LG);
  }
  .m-mv-01_text {
    font-size: var(--FONT_SIZE);
    padding-top: 16px;
    line-height: 1.6;
  }
  .m-mv-01_hdg, .m-mv-01_text {
    text-shadow: 0 0 2px rgb(255, 255, 255);
  }
}
@media (width <= 600px) {
  .m-mv-01_inner {
    padding: 36px 20px;
  }
}

/* .m-mv-jyouhoukan
----------------------------------------------- */
.m-mv-jyouhoukan {
  position: relative;
  padding-right: var(--GUTTER_CONTENT);
}
.m-mv-jyouhoukan_inner {
  margin-inline: auto;
  padding: 48px 20px;
  max-width: 1312px;
  display: grid;
  grid-template: "hdg carousel" "text carousel";
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  gap: 24px 64px;
}
.m-mv-jyouhoukan_hdg {
  grid-area: hdg;
  z-index: 10;
}
.m-mv-jyouhoukan_hdg > h1 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.m-mv-jyouhoukan_text {
  grid-area: text;
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  text-align: center;
  z-index: 10;
}
.m-mv-jyouhoukan_carousel {
  grid-area: carousel;
  display: flex;
  align-items: center;
}
@media (width <= 1080px) {
  .m-mv-jyouhoukan_inner {
    gap: 2vw 4vw;
  }
  .m-mv-jyouhoukan_hdg {
    display: flex;
    justify-content: center;
    justify-self: center;
    width: 36vw;
  }
  .m-mv-jyouhoukan_text {
    font-size: max(1.4rem, 1.7vw);
  }
}
@media (width <= 860px) {
  .m-mv-jyouhoukan {
    padding: 0;
  }
  .m-mv-jyouhoukan_inner {
    padding: 48px 0;
  }
  .m-mv-jyouhoukan_text {
    padding: 0 20px;
    line-height: 1.6;
  }
}
@media (width <= 768px) {
  .m-mv-jyouhoukan_inner {
    grid-template: "hdg" "text" "carousel";
    grid-template-columns: auto;
    grid-template-rows: auto;
    gap: 16px;
    padding-top: 0;
    padding-bottom: 20px;
  }
  .m-mv-jyouhoukan_hdg {
    width: 100%;
    padding-block: 14px;
    background-color: var(--JYOUHOUKAN_COLOR_SECONDARY);
  }
  .m-mv-jyouhoukan_text {
    padding-top: 0;
    font-size: var(--FONT_SIZE_SM);
  }
}
@media (width <= 680px) {
  .m-mv-jyouhoukan_arrow-item:has(.prev) {
    left: 0;
  }
  .m-mv-jyouhoukan_arrow-item:has(.next) {
    right: 0;
  }
}

/* .m-parts-recruitment
----------------------------------------------- */
.m-parts-recruitment_item {
  display: inline-flex;
  gap: 4px 24px;
  margin-top: 24px;
  padding-block: 12px;
  padding-inline: 24px;
  border-radius: var(--BORDER_RADIUS);
  background-color: var(--COLOR_PRIMARY_LIGHT);
}
.m-parts-recruitment_item.disabled {
  background-color: var(--COLOR_GRAY_LIGHT);
}
.m-parts-recruitment_item.disabled .m-parts-recruitment_title {
  background-image: url("../../assets/img/icon/icon-calendar-disabled.svg");
}
.m-parts-recruitment_item.disabled .m-parts-recruitment_title,
.m-parts-recruitment_item.disabled .m-parts-recruitment_text {
  color: #808080;
}
.m-parts-recruitment_title {
  padding-left: 32px;
  font-weight: var(--FONT_WEIGHT_BOLD);
  background: url("../../assets/img/icon/icon-calendar.svg") no-repeat center left/24px 24px;
}
.m-parts-recruitment_text {
  margin-top: 0;
}
@media (width <= 768px) {
  .m-parts-recruitment_item {
    flex-direction: column;
    width: 100%;
  }
}
.m-parts-recruitment .m-link-icon-list {
  margin-top: 24px;
}
.m-parts-recruitment .m-btn-layout {
  margin-top: 32px;
}

/* .m-parts-contact
----------------------------------------------- */
.m-parts-contact {
  display: flex;
  align-items: center;
  column-gap: 40px;
}
.m-parts-contact_content {
  flex: 1;
}
.m-parts-contact_content > :first-child {
  margin-top: 0;
}
.m-parts-contact_content > :last-child {
  margin-bottom: 0;
}
.m-parts-contact.layout-02 {
  flex-wrap: wrap;
}
.m-parts-contact.layout-02 .m-parts-contact_content {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 24px 40px;
}
.m-parts-contact.layout-02 .m-parts-contact_text {
  flex: 1;
}
@media (width <= 768px) {
  .m-parts-contact {
    flex-direction: column;
    row-gap: 32px;
  }
  .m-parts-contact .m-parts-contact_content {
    margin-inline: 0 auto;
  }
  .m-parts-contact.layout-02 .m-parts-contact_content {
    flex-direction: column-reverse;
    margin-inline: auto;
  }
}

/* .m-sitemap
----------------------------------------------- */
.m-sitemap {
  margin-top: 80px;
}
.m-sitemap > :first-child {
  margin-top: 0;
}
.m-sitemap > :last-child {
  margin-bottom: 0;
}
.m-sitemap_linkHead {
  margin-bottom: 32px;
  font-size: var(--FONT_SIZE_4LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
}
.m-sitemap_linkHead-item {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-left: 46px;
  transition: var(--TRANSITION);
}
.m-sitemap_linkHead-item::before, .m-sitemap_linkHead-item::after {
  position: absolute;
  content: "";
}
.m-sitemap_linkHead-item::before {
  left: 0;
  width: 34px;
  height: 34px;
  background-color: var(--COLOR_PRIMARY);
  border-radius: 50%;
  transition: scale var(--TRANSITION);
}
.m-sitemap_linkHead-item::after {
  left: 10px;
  width: 14px;
  height: 11px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23FFF%22%20stroke%3d%22%23FFF%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23FFF%22%20stroke%3d%22%23FFF%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-sitemap_linkHead-item:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-sitemap_linkHead-item:is(:hover, :active, :focus-visible)::before {
  scale: 1.1875;
}
.m-sitemap_linkHead-item:is(:hover, :active, :focus-visible)::after {
  animation: hover-flow var(--ANIMATION_ARROW);
}
.m-sitemap_linkList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(276px, 1fr));
  gap: 24px 32px;
  margin-top: 24px;
}
.m-sitemap_title {
  margin-top: 32px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--COLOR_GRAY);
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  line-height: var(--FONT_LINE_HEIGHT_SM);
}
.m-sitemap_content {
  margin-top: 40px;
}
.m-sitemap_content > :first-child {
  margin-top: 0;
}
.m-sitemap_content > :last-child {
  margin-bottom: 0;
}
.m-sitemap_linkArrow {
  position: relative;
  display: block;
  margin-top: 32px;
  padding-left: 38px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--COLOR_GRAY);
  font-size: var(--FONT_SIZE_LG);
  font-weight: var(--FONT_WEIGHT_BOLD);
  transition: var(--TRANSITION);
}
.m-sitemap_linkArrow::before, .m-sitemap_linkArrow::after {
  position: absolute;
  content: "";
}
.m-sitemap_linkArrow::before {
  top: 4px;
  left: 0;
  width: 26px;
  height: 26px;
  background-color: var(--COLOR_WHITE);
  border-radius: 50%;
  transition: 0.3s ease;
  border: 1px solid var(--COLOR_PRIMARY);
}
.m-sitemap_linkArrow::after {
  top: 13px;
  left: 7px;
  width: 12px;
  height: 9px;
  background: no-repeat center;
  background: url("data:image/svg+xml; charset=utf-8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%2018%2014%22%3e%3cpath%20d%3d%22M10%2e074,14c%2d%2e304,0%2d%2e606%2d%2e126%2d%2e82%2d%2e372%2d%2e395%2d%2e452%2d%2e348%2d1%2e137%2e105%2d1%2e53l5%2e893%2d5%2e12L9%2e363,1%2e905c%2d%2e454%2d%2e392%2d%2e505%2d1%2e076%2d%2e112%2d1%2e53%2e395%2d%2e453,1%2e081%2d%2e502,1%2e535%2d%2e112l6%2e838,5%2e89c%2e239%2e206%2e376%2e504%2e377%2e818,0,%2e314%2d%2e136%2e613%2d%2e373%2e82l%2d6%2e838,5%2e941c%2d%2e206%2e179%2d%2e461%2e267%2d%2e714%2e267Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3cpath%20d%3d%22M15%2e549,8%2e086H1%2e088c%2d%2e601,0%2d1%2e088%2d%2e486%2d1%2e088%2d1%2e085s%2e487%2d1%2e085,1%2e088%2d1%2e085h14%2e461c%2e601,0,1%2e088%2e486,1%2e088,1%2e085s%2d%2e487,1%2e085%2d1%2e088,1%2e085Z%22%20fill%3d%22%23e00000%22%20stroke%3d%22%23e00000%22%20stroke%2dwidth%3d%220%22%2f%3e%3c%2fsvg%3e") no-repeat;
}
.m-sitemap_linkArrow:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
.m-sitemap_linkChevron {
  position: relative;
  display: inline-flex;
  padding-left: 21px;
  transition: var(--TRANSITION);
}
.m-sitemap_linkChevron::before {
  position: absolute;
  content: "";
  top: 11px;
  left: 0;
  width: 9px;
  height: 6px;
  rotate: -90deg;
  background-color: var(--COLOR_PRIMARY);
  mask: url("../../assets/img/icon/icon-arrow-anchor.svg") no-repeat center/9px 6px;
}
.m-sitemap_linkChevron:is(:hover, :active, :focus-visible) {
  color: var(--COLOR_PRIMARY);
}
@media (width <= 768px) {
  .m-sitemap {
    margin-top: 64px;
  }
  .m-sitemap_linkHead {
    margin-bottom: 24px;
    font-size: var(--FONT_SIZE_3LG);
  }
  .m-sitemap_linkList {
    gap: 12px;
    margin-top: 12px;
  }
  .m-sitemap_linkArrow, .m-sitemap_title {
    margin-top: 24px;
    padding-bottom: 12px;
    font-size: var(--FONT_SIZE_MD);
  }
}

/* .m-parts-location
----------------------------------------------- */
.m-parts-location .m-list-desc.sm.row-pc.gap-wide {
  gap: 8px 24px;
}
.m-parts-location .m-list-desc .m-icon-label-text {
  margin-top: 24px;
}
@media (width <= 768px) {
  .m-parts-location .m-media-layout {
    gap: 32px;
  }
  .m-parts-location .m-list-desc.sm.row-pc.gap-wide {
    gap: 24px;
  }
  .m-parts-location .m-list-desc.sm.row-pc .m-list-desc_title {
    margin-bottom: 0;
  }
  .m-parts-location .m-list-desc.sm.row-pc .m-list-desc_content > :first-child {
    margin-top: inherit;
  }
  .m-parts-location .m-list-desc.sm.row-pc .m-list-desc_content .m-icon-label-text {
    margin-top: 16px;
  }
}

/* .m-parts-jyouhoukan
----------------------------------------------- */
.m-parts-jyouhoukan {
  position: relative;
  display: grid;
  grid-template: "content carousel" "btn carousel"/auto 1fr;
  align-items: flex-end;
  gap: 32px 64px;
}
.m-parts-jyouhoukan_content {
  grid-area: content;
  position: relative;
  flex-shrink: 0;
  width: fit-content;
  background-color: #FFF2EB;
  z-index: 2;
}
.m-parts-jyouhoukan_hdg {
  width: fit-content;
  margin: 0 auto 20px;
}
.m-parts-jyouhoukan_hdg img {
  max-width: 298px;
}
.m-parts-jyouhoukan_text {
  font-size: var(--FONT_SIZE_MD);
  font-weight: var(--FONT_WEIGHT_MEDIUM);
  text-align: center;
}
.m-parts-jyouhoukan_btn {
  grid-area: btn;
  width: 100%;
  max-width: 328px;
  max-height: 80px;
  font-size: var(--FONT_SIZE_LG);
  padding: 10px 68px 10px 56px;
  z-index: 1;
}
.m-parts-jyouhoukan_btn::before {
  right: 20px;
  width: 32px;
  height: 32px;
}
.m-parts-jyouhoukan_btn::after {
  right: 28px;
  width: 14px;
  height: 10px;
}
.m-parts-jyouhoukan .m-carousel-01 {
  grid-area: carousel;
  gap: 32px;
}
.m-parts-jyouhoukan .m-carousel-01::before {
  position: absolute;
  height: calc(100% + 20px);
  width: 100vw;
  left: calc(-100vw - 7px);
  background-color: #FFF2EB;
  z-index: 1;
  display: block;
  content: "";
}
.m-parts-jyouhoukan .m-carousel-01_nav {
  justify-content: flex-end;
}
.m-parts-jyouhoukan .m-carousel-01_item {
  max-width: 350px;
}
.m-parts-jyouhoukan .m-panel-04 {
  padding-bottom: 53.4759358289%;
  box-shadow: 0 2px 12px rgb(var(--COLOR_SHADOW)/0.15);
}
.m-parts-jyouhoukan .m-panel-04_content {
  position: absolute;
  bottom: 0;
  padding: 24px 32px 32px;
  min-height: 53.0997%;
}
.m-parts-jyouhoukan .m-panel-04_hdg {
  font-size: var(--FONT_SIZE_LG);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.m-parts-jyouhoukan .m-panel-04_text {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: 12px;
}
.m-parts-jyouhoukan .m-panel-04_item img {
  aspect-ratio: 350/184;
}
@media (width <= 1000px) {
  .m-parts-jyouhoukan {
    gap: 3vw 7vw;
  }
  .m-parts-jyouhoukan_text {
    font-size: min(1.8rem, 1.8vw);
  }
}
@media (width <= 768px) {
  .m-parts-jyouhoukan {
    grid-template: "content" "carousel" "btn"/1fr;
    gap: 40px;
  }
  .m-parts-jyouhoukan_hdg {
    width: auto;
  }
  .m-parts-jyouhoukan_hdg img {
    width: 100%;
    max-width: 300px;
  }
  .m-parts-jyouhoukan_text {
    font-size: var(--FONT_SIZE);
  }
  .m-parts-jyouhoukan_content {
    margin: auto;
  }
  .m-parts-jyouhoukan_btn {
    margin: auto;
  }
  .m-parts-jyouhoukan .m-carousel-01_item {
    max-width: 206px;
  }
  .m-parts-jyouhoukan .m-panel-04 {
    padding-bottom: 72.9927007299%;
  }
  .m-parts-jyouhoukan .m-panel-04_hdg {
    font-size: var(--FONT_SIZE);
  }
  .m-parts-jyouhoukan .m-panel-04_text {
    font-size: var(--FONT_SIZE_SM);
  }
  .m-parts-jyouhoukan .m-panel-04_content {
    padding: 16px;
    min-height: 58.9147%;
  }
}

/* .u-bg-*
----------------------------------------------- */
.u-bg-01-right {
  position: relative;
  margin-block: 96px 60px;
  z-index: 0;
}
.u-bg-01-right::before, .u-bg-01-right::after {
  display: block;
  content: "";
  position: absolute;
  left: 49%;
  z-index: -1;
}
.u-bg-01-right::before {
  top: -88px;
  width: 1200px;
  height: auto;
  background-color: #F4F8FA;
  mask: url("../../assets/img/layout/content-bg-02.svg") no-repeat bottom/contain;
  aspect-ratio: 1200/275;
}
.u-bg-01-right::after {
  top: 186px;
  width: 1200px;
  min-height: 151px;
  max-height: 471px;
  height: calc(100% - 204px);
  background-color: #F4F8FA;
  border-bottom-left-radius: 48px;
  border-bottom-right-radius: 48px;
}
@media (width <= 768px) {
  .u-bg-01-right {
    margin-block: 120px 60px;
  }
  .u-bg-01-right::before, .u-bg-01-right::after {
    left: 30%;
  }
  .u-bg-01-right::before {
    top: -122px;
    width: 480px;
    aspect-ratio: 480/134;
  }
  .u-bg-01-right::after {
    top: 12px;
    width: 480px;
    height: calc(75% - 88px);
    min-height: unset;
    max-height: unset;
    background-color: #F4F8FA;
    border-bottom-left-radius: 48px;
    border-bottom-right-radius: 48px;
  }
}

.u-bg-01-left {
  position: relative;
  margin-block: 96px 60px;
  z-index: 0;
}
.u-bg-01-left::before, .u-bg-01-left::after {
  display: block;
  content: "";
  position: absolute;
  right: 51%;
  z-index: -1;
}
.u-bg-01-left::before {
  top: -248px;
  width: 1200px;
  height: auto;
  background-color: #F4F8FA;
  mask: url("../../assets/img/layout/content-bg-02.svg") no-repeat bottom/contain;
  aspect-ratio: 1200/275;
}
.u-bg-01-left::after {
  top: 27px;
  width: 1200px;
  height: clamp(220px, (100% - 350px) * 3, 480px);
  background-color: #F4F8FA;
  border-bottom-left-radius: 48px;
  border-bottom-right-radius: 48px;
}
@media (width <= 768px) {
  .u-bg-01-left {
    margin-block: 120px 60px;
  }
  .u-bg-01-left::before, .u-bg-01-left::after {
    right: 38%;
  }
  .u-bg-01-left::before {
    top: -172px;
    width: 480px;
    aspect-ratio: 480/134;
  }
  .u-bg-01-left::after {
    top: -38px;
    width: 480px;
    height: calc(75% - 88px);
    min-height: unset;
    max-height: unset;
    background-color: #F4F8FA;
    border-bottom-left-radius: 48px;
    border-bottom-right-radius: 48px;
  }
}

/* .u-fs-*
----------------------------------------------- */
.u-fs-xs {
  font-size: var(--FONT_SIZE_XS) !important;
}

.u-fs-md {
  font-size: var(--FONT_SIZE_MD) !important;
}

@media (768px < width) {
  .u-fs-lg-pc {
    font-size: var(--FONT_SIZE_LG) !important;
  }
}
/* .u-fw-*
----------------------------------------------- */
.u-fw-nomal {
  font-weight: var(--FONT_WEIGHT) !important;
}

.u-fw-medium {
  font-weight: var(--FONT_WEIGHT_MEDIUM) !important;
}

.u-fw-bold {
  font-weight: var(--FONT_WEIGHT_BOLD) !important;
}

/* .u-ta-*
----------------------------------------------- */
.u-ta-left {
  text-align: left !important;
}

.u-ta-center {
  text-align: center !important;
}

.u-ta-right {
  text-align: right !important;
}

@media (769px <= width) {
  .u-ta-left-pc {
    text-align: left !important;
  }
  .u-ta-center-pc {
    text-align: center !important;
  }
  .u-ta-right-pc {
    text-align: right !important;
  }
}
@media (width <= 768px) {
  .u-ta-left-sp {
    text-align: left !important;
  }
  .u-ta-center-sp {
    text-align: center !important;
  }
  .u-ta-right-sp {
    text-align: right !important;
  }
}
/* .u-va-*
----------------------------------------------- */
.u-va-top {
  vertical-align: top !important;
}

.u-va-middle {
  vertical-align: middle !important;
}

.u-va-bottom {
  vertical-align: bottom !important;
}

/* .u-width-*
----------------------------------------------- */
.u-w-100 {
  width: 100% !important;
}

.u-w-95 {
  width: 95% !important;
}

.u-w-90 {
  width: 90% !important;
}

.u-w-85 {
  width: 85% !important;
}

.u-w-80 {
  width: 80% !important;
}

.u-w-75 {
  width: 75% !important;
}

.u-w-70 {
  width: 70% !important;
}

.u-w-65 {
  width: 65% !important;
}

.u-w-60 {
  width: 60% !important;
}

.u-w-55 {
  width: 55% !important;
}

.u-w-50 {
  width: 50% !important;
}

.u-w-45 {
  width: 45% !important;
}

.u-w-40 {
  width: 40% !important;
}

.u-w-35 {
  width: 35% !important;
}

.u-w-30 {
  width: 30% !important;
}

.u-w-25 {
  width: 25% !important;
}

.u-w-20 {
  width: 20% !important;
}

.u-w-15 {
  width: 15% !important;
}

.u-w-10 {
  width: 10% !important;
}

.u-w-5 {
  width: 5% !important;
}

.u-w-100-3 {
  width: 33.3333333333% !important;
}

.u-w-100-6 {
  width: 16.6666666667% !important;
}

@media (width <= 768px) {
  .u-mw-140-sp {
    max-width: 140px !important;
  }
}
/* margin top (.u-mt-*)
----------------------------------------------- */
.u-mt-0 {
  margin-top: 0 !important;
}

.u-mt-8 {
  margin-top: 8px !important;
}

.u-mt-16 {
  margin-top: 16px !important;
}

.u-mt-32 {
  margin-top: 32px !important;
}

.u-mt-96 {
  margin-top: 96px !important;
}

.u-mt-2xl {
  margin-top: 96px !important;
}

.u-mt-xl {
  margin-top: 80px !important;
}

.u-mt-2lg {
  margin-top: 64px !important;
}

.u-mt-lg {
  margin-top: 56px !important;
}

.u-mt-md {
  margin-top: 48px !important;
}

.u-mt-sm {
  margin-top: 40px !important;
}

@media (width <= 768px) {
  .u-mt-2xl {
    margin-top: 64px !important;
  }
  .u-mt-xl {
    margin-top: 56px !important;
  }
  .u-mt-2lg {
    margin-top: 48px !important;
  }
  .u-mt-lg {
    margin-top: 40px !important;
  }
  .u-mt-md {
    margin-top: 32px !important;
  }
  .u-mt-sm {
    margin-top: 32px !important;
  }
}
/* margin right (.u-mr-*)
----------------------------------------------- */
.u-mr-28 {
  margin-right: 28px !important;
}

/* .u-color-*
----------------------------------------------- */
.u-color-red {
  color: var(--COLOR_PRIMARY);
}

.u-block {
  display: block !important;
}
@media (768px < width) {
  .u-block-pc {
    display: block !important;
  }
}
@media (width <= 768px) {
  .u-block-sp {
    display: block !important;
  }
}

/* .u-ai-*
----------------------------------------------- */
.u-ai-center {
  align-items: center !important;
}

/* js-unavailable
----------------------------------------------- */
html.js-unavailable .noJsContent {
  display: block;
}

.noJsContent {
  display: none;
}

/*
  FastAnswerテンプレートのスタイルを上書きするための記述
 */

:root {
  --FONT_SIZE_XS: .75rem;
  --FONT_SIZE_SM: .875rem;
  --FONT_SIZE: 1rem;
  --FONT_SIZE_MD: 1.125rem;
  --FONT_SIZE_LG: 1.25rem;
  --FONT_SIZE_2LG: 1.375rem;
  --FONT_SIZE_3LG: 1.5rem;
  --FONT_SIZE_4LG: 1.75rem;
  --FONT_SIZE_XL: 2.125rem;
  --FONT_SIZE_2XL: 2.25rem;
}

html {
  font-size: 100%;
}

body {
  font-size: 1rem;
  letter-spacing: 0;
}

main {
  padding-bottom: 50px;
}

main a {
  text-decoration: underline;
}

a[href] {
  color: var(--COLOR_FONT);
}

header * > :first-child {
  margin-top: 0;
}

header * > :last-child {
  margin-bottom: 0;
}

.header-nav_btn-text, .header-nav_link-item {
  font-size: 1.063rem;
}

.header-nav-lang_list .header-nav-lang_link,
.header-nav-lang_link,
.header-link-support_text,
.header-nav-link a {
  font-size: .813rem;
}

.header-nav-link a {
  color: var(--COLOR_PRIMARY);
}

.header-nav-lang_link {
  color: var(--COLOR_WHITE) !important;
}

footer a[href] {
  color: var(--COLOR_WHITE);
}

body.color-blue .hdg-lv2-02::before,
body.color-blue .area-search-form .area-search-submit button,
body.color-blue #str-main .area-top-search::after,
body.color-blue .list-search-results li .js-search-results-hdg .btn[aria-expanded="false"] .status,
.list-search-results li .js-search-results-hdg .label-reception-open,
.lyt-input-step li.is-current,
.tbl-frm th .txt-title .label-required {
  background-color: var(--COLOR_PRIMARY);
}

body.color-blue .area-search-form .area-search-input,
body.color-blue .fhButton a, body.color-blue #str-header .str-header-inner .area-header .txt-header-contact a,
body.color-blue #str-header .str-header-inner .area-header .txt-header-general a,
body.color-blue .area-search-form .area-search-category,
body.color-blue .txt-check-item-label input[type="checkbox"]:checked + .txt-check-item::after,
body.color-blue .list-frm-check li .txt-check-item-label input[type="checkbox"]:checked + .txt-check-item::after {
  border-color: var(--COLOR_PRIMARY);
}

.list-search-results li .js-search-results-hdg .label-knowledgeKind,
.label-knowledgeKind {
  background-color: var(--COLOR_PRIMARY) !important;
}

body.color-blue .area-faq-cont {
  background-color: var(--COLOR_PRIMARY_LIGHT);
}

body.color-blue .area-search-form .area-search-submit {
  border-color: var(--COLOR_PRIMARY);
  background-color: var(--COLOR_PRIMARY);
}

body.color-blue .box-faq,
body.color-blue .area-border-top {
  border-top-color: var(--COLOR_PRIMARY);
}

body.color-blue .hdg-lv3-01 {
  border-left-color: var(--COLOR_PRIMARY);
}

body.color-blue .hdg-lv1-01 {
  border-bottom-color: var(--COLOR_PRIMARY);
}

body.color-blue .btn-form li button[type="submit"],
body.color-blue .btn-contact .btn-contact-inner {
  background-color: var(--COLOR_PRIMARY);
  box-shadow: 0 3px 0 0 #9B0000;
}

body.color-blue .btn-form li button[type="submit"]:hover, body.color-blue .btn-form li button[type="submit"]:focus,
body.color-blue .btn-contact .btn-contact-inner:hover, body.color-blue .btn-contact .btn-contact-inner:focus {
  box-shadow: 0 1px 0 0 #9B0000;
}

.hdg-lv1-top .hdg-icon {
  display: none;
}

.link-single a::before,
.list-link-row > li a::before {
  border-color: var(--COLOR_PRIMARY);
}

.l-footer-content_copyright {
  text-align: right;
}

.l-footer-content_copyright > a {
  text-decoration: underline;
}

.l-footer-content_copyright > a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .js-sp-toggle li .hdg-category a, .js-sp-toggle li .hdg-category .hdg-category-inner {
    color: var(--COLOR_FONT);
  }

  body.color-blue .js-sp-toggle li .hdg-category .btn[aria-expanded="false"] .status,
  body.color-blue .js-sp-toggle.icon-has li .list-link-row {
    background-color: var(--COLOR_PRIMARY);
  }

  body.color-blue .hdg-lv2-02 {
    border-left-color: var(--COLOR_PRIMARY);
  }
}

@media (width <= 768px) {
  .l-footer-content_nav-list {
    font-size: .813rem;
  }

  .l-footer-content_copyright {
    font-size: .625rem;
  }
}