@charset "UTF-8";
html {
  font-size: 100%;
}
@media screen and (width >= 1921px) {
  html {
    font-size: 0.8333333333vw;
  }
}
@media screen and (width <= 1440px) {
  html {
    font-size: 1.1111111111vw;
  }
}
@media screen and (width <= 767px) {
  html {
    font-size: 4.4444444444vw;
  }
}

a[href^=tel] {
  text-decoration: none;
}

a {
  color: inherit;
  -webkit-tap-highlight-color: transparent;
  /* 強調をなくす */
}

a:hover {
  text-decoration: none;
}

img,
svg {
  vertical-align: middle;
}

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

:where(:any-link, button, [type=button], [type=reset], [type=submit], label[for], select, summary, [role=tab], [role=button]) {
  cursor: pointer;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  touch-action: manipulation;
}

:focus:not(:focus-visible) {
  outline: none;
}

input[type=text] {
  font-size: 1rem;
  /* = 16px */
}

textarea {
  field-sizing: content;
}

body {
  background: var(--color-white);
  color: var(--color-text);
  font-family: var(--base-font-family);
  font-weight: var(--fw-medium);
  line-height: normal;
}

html {
  box-sizing: border-box;
  /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
  tab-size: 4;
}

*,
::before,
::after {
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
  box-sizing: border-box;
  background-repeat: no-repeat;
}

::before,
::after {
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
  text-decoration: inherit;
}

* {
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
  padding: 0;
}

/* # =================================================================
     # General elements
     # ================================================================= */
hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
  height: 0;
  /* Add the correct box sizing in Firefox */
  color: inherit;
  /* Correct border color in Firefox. */
}

details,
main {
  display: block;
  /* Render the `main` element consistently in IE. */
}

summary {
  display: list-item;
  /* Add the correct display in all browsers */
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden] {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: none;
  /* Remove the bottom border in Chrome 57 */
  /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
  /* Remove the gray background on active links in IE 10 */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace;
  /* Specify the font family of code elements */
}

pre {
  font-size: 1em;
  /* Correct the odd `em` font sizing in all browsers */
}

b,
strong {
  font-weight: bolder;
  /* Add the correct font weight in Chrome, Edge, and Safari */
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0;
  /* Remove text indentation in Chrome, Edge, and Safari */
}

iframe {
  border-style: none;
}

/* # =================================================================
     # Forms
     # ================================================================= */
input {
  border-radius: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
  /* Correct the cursor style of increment and decrement buttons in Chrome */
}

[type=search] {
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  appearance: textfield;
  appearance: none;
  /* Correct the outline style in Safari */
}

[type=search]::-webkit-search-decoration {
  appearance: none;
  /* Remove the inner padding in Chrome and Safari on macOS */
}

textarea {
  overflow: auto;
  resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

button,
input,
select,
textarea {
  border-style: none;
  background-color: transparent;
  appearance: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
select {
  appearance: none;
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentcolor;
  /* Internet Explorer 11+ */
}

legend {
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge 18- and IE */
}

::-webkit-file-upload-button {
  color: inherit;
  font: inherit;
  /* Correct the inability to style clickable types in iOS and Safari */
  appearance: button;
  /* Change font properties to `inherit` in Chrome and Safari */
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

/* # =================================================================
     # Specify media element style
     # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

/* # =================================================================
     # Accessibility
     # ================================================================= */
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled=true] {
  cursor: default;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
  list-style: "";
}

@font-face {
  font-family: "Local Noto Sans JP";
  src: local("Noto Sans JP");
}
:root {
  /* inner */
  --inner: min(1200px, 100%);
  --inner-sp: min(500px, 100%);
  --padding-inner: calc(40 / 1440 * 100vw);
}
@media screen and (width <= 767px) {
  :root {
    --padding-inner: calc(16 / 360 * 100vw);
  }
}
:root {
  --inner-narrow: min(1100px, 100%);
  /* z-index */
  --z-index-header: 900;
  /* color */
  --color-white: #fff;
  --color-black: #000;
  --color-black-sub: #333;
  --color-navy: #003367;
  --color-blue: #014284;
  --color-navy-hover: #016dbe;
  --color-link: #0068d0;
  --color-text: #000;
  --color-sky-blue: #cff2ff;
  --color-pale-blue: #e7f9ff;
  --color-yellow: #fffa69;
  --color-orange: #ff7c20;
  --color-red: #e20000;
  --color-border: #ddd;
  --color-separator: #ccc;
  --color-muted: #999;
  --color-form-border: rgb(153 153 153 / 80%);
  --color-badge-optional: rgb(153 153 153 / 60%);
  --color-error: #e55f00;
  --color-footer-cta-contact-bg: #e7f9ff;
  --color-footer-cta-catalog-bg: #ffffea;
  /* gradient */
  --gradient-contact: linear-gradient(94deg, #016dbe 0%, #0197e1 100%);
  --gradient-catalog: linear-gradient(90deg, #e55f00 0%, #ff7c20 100%);
  --gradient-overlay-hover: linear-gradient(0deg, rgb(255 255 255 / 20%) 0%, rgb(255 255 255 / 20%) 100%);
  --gradient-contact-hover: linear-gradient(94deg, #016dbe 0%, #00c8ff 100%);
  --gradient-catalog-hover: linear-gradient(90deg, #e55f00 0%, #ffb520 100%);
  --gradient-navy: linear-gradient(90deg, #003367 38%, #336597 100%);
  --gradient-navy-vertical: linear-gradient(180deg, #003367 38%, #336597 100%);
  --gradient-blue: linear-gradient(135deg, #016dbe 0%, #0197e1 100%);
  /* font-weight */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
  --fw-black: 900;
  /* line-height */
  --lh-normal: 1.2;
  /* font-family */
  --base-font-family: "Local Noto Sans JP", "Noto Sans JP", sans-serif;
  --en-font-family: "Inter", sans-serif;
  --bg-cover: center center / cover no-repeat;
  --bg-cover-top: top center / cover no-repeat;
  --bg-contain: center center / contain no-repeat;
  /* transition duration */
  --duration: 0.3s;
  --duration-gradient-hover: 0.6s;
  /* transition ease */
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  /* header height */
  --header-height: calc(88 / 16 * 1rem);
}
@media screen and (width <= 1440px) {
  :root {
    --header-height: calc(88 / 1440 * 100vw);
  }
}
@media screen and (width <= 767px) {
  :root {
    --header-height: calc(48 / 360 * 100vw);
  }
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-index-header);
  width: 100%;
}

.l-inner {
  max-width: calc(80rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.l-main {
  margin-block-start: var(--header-height);
}

.l-main--productFv {
  margin-block-start: 0;
}

.l-main--thanks,
.l-main--error {
  display: flex;
  flex-grow: 1;
  flex-shrink: 0;
  flex-direction: column;
}

.c-accordion {
  --_text-color: var(--color-text);
  --_background-default: var(--color-white);
  --_background-interactive: var(--color-gray);
  --_background-opened: var(--color-accent);
  --_text-color-opened: var(--color-white);
  --_duration: 0.2s;
}
.c-accordion::details-content {
  content-visibility: unset;
  display: block grid;
}
@media (prefers-reduced-motion: no-preference) {
  .c-accordion::details-content {
    transition-duration: 300ms;
    transition-property: grid-template-rows;
  }
}
.c-accordion:not([open])::details-content {
  grid-template-rows: 0fr;
}
.c-accordion[open]::details-content {
  grid-template-rows: 1fr;
}

.c-accordion__summary {
  display: block grid;
  grid-template: ". icon"/1fr max-content;
  gap: 1rem;
  align-items: center;
  padding-block: 1rem;
  padding-inline: 1.5rem;
  background-color: var(--_background-default);
  color: var(--_text-color);
  transition: background-color var(--_duration) ease, color var(--_duration) ease;
}
.c-accordion__summary::before {
  content: "";
  display: inline-block;
  grid-area: icon;
  width: 1.125rem;
  height: 0.125rem;
  background-color: currentcolor;
}
.c-accordion__summary::after {
  content: "";
  display: inline-block;
  grid-area: icon;
  width: 1.125rem;
  height: 0.125rem;
  background-color: currentcolor;
  rotate: 90deg;
  transition: rotate var(--_duration) ease;
}
.c-accordion__summary:focus-visible {
  background-color: var(--_background-interactive);
  outline: 2px solid currentcolor;
  outline-offset: -2px;
}
@media (any-hover: hover) {
  .c-accordion__summary:hover {
    background-color: var(--_background-interactive);
  }
}

.c-accordion[open] .c-accordion__summary {
  background-color: var(--_background-opened);
  color: var(--_text-color-opened);
}
.c-accordion[open] .c-accordion__summary::after {
  rotate: 0deg;
}

.c-accordion__contents {
  padding-block: 1rem;
  padding-inline: 1.5rem;
}

.c-breadCrumb {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-block-end: 0.25rem;
}

.c-breadCrumb ol {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  white-space: nowrap;
}

.c-breadCrumb li {
  display: flex;
  align-items: center;
  color: var(--color-text);
  font-size: 1rem;
  font-weight: var(--fw-regular);
  line-height: 1.75;
  letter-spacing: 0.03em;
}
.c-breadCrumb li:not(:last-child)::after {
  content: "";
  display: inline-block;
  flex-shrink: 0;
  width: 0.5rem;
  height: 0.75rem;
  margin-inline: 0.5rem 0.375rem;
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='7'%20height='10'%20viewBox='0%200%207%2010'%20fill='none'%3e%3cpath%20d='M0.707153%200.707031L4.70715%204.70703L0.707153%208.70703'%20stroke='url(%23paint0_linear_4002_1139)'%20stroke-width='2'%20/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_4002_1139'%20x1='0.707153'%20y1='0.707031'%20x2='5.01413'%20y2='0.875865'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23016DBE'%20/%3e%3cstop%20offset='1'%20stop-color='%230197E1'%20/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  translate: 0 0.0625rem;
}
@media screen and (max-width: 767px) {
  .c-breadCrumb li {
    font-size: 0.75rem;
    line-height: 1.5;
  }
}

.c-breadCrumb a {
  position: relative;
  display: inline-block;
  color: var(--color-text);
}
.c-breadCrumb a::after {
  content: "";
  position: absolute;
  bottom: -0.125rem;
  left: 50%;
  width: 100%;
  height: 0.125rem;
  background: var(--color-text);
  opacity: 0;
  translate: -50%;
  transition: opacity var(--duration);
}
@media (any-hover: hover) {
  .c-breadCrumb a:hover::after {
    opacity: 1;
  }
}

.c-btn {
  display: flex;
  column-gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: 22.5rem;
  min-height: 4.5rem;
  padding-block: 0.125rem 0.25rem;
  padding-inline: 1.25rem;
  border: 1px solid var(--color-black);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background-color: var(--color-white);
  transition: background var(--duration) var(--ease-in-out);
}
@media (any-hover: hover) {
  .c-btn:hover {
    background: var(--color-sky-blue);
  }
}
@media screen and (max-width: 767px) {
  .c-btn {
    width: 18.5rem;
    min-height: 2.5rem;
    padding-inline: 1.4375rem;
    border: none;
    border-radius: 0.25rem;
    box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.08);
  }
}
.c-btn[data-position=center] {
  margin-inline: auto;
}
.c-btn[data-position=right] {
  margin-inline: auto 0;
}
@media screen and (max-width: 767px) {
  .c-btn[data-position=sp-center] {
    margin-inline: auto;
  }
  .c-btn[data-position=sp-right] {
    margin-inline: auto 0;
  }
}

.c-btn__text {
  color: var(--color-black);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .c-btn__text {
    font-size: 0.9375rem;
  }
}

.c-btn__icon {
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  margin-block-start: 0.125rem;
  background-color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .c-btn__icon {
    width: 1rem;
    height: 1rem;
  }
}

.c-btn--blue {
  width: 17.5rem;
  padding-inline: 2.8125rem;
  border: none;
  background-color: var(--color-navy);
}
@media (any-hover: hover) {
  .c-btn--blue:hover {
    background: var(--color-navy-hover);
  }
}
@media screen and (max-width: 767px) {
  .c-btn--blue {
    width: 15rem;
    padding-inline: 2rem;
    background-color: var(--color-blue);
  }
}

.c-btn--narrow {
  width: 17.5rem;
  padding-inline: 0.625rem;
}
@media screen and (max-width: 767px) {
  .c-btn--narrow {
    width: 15rem;
  }
}

.c-btn--blue .c-btn__text {
  color: var(--color-white);
}

.c-btn--blue .c-btn__icon {
  background-color: var(--color-white);
}

.c-btnBack {
  display: inline-grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  width: 16.875rem;
  min-height: 4.5rem;
  padding-inline: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background-color: var(--color-white);
  transition: background var(--duration) var(--ease-in-out);
}
.c-btnBack::before {
  content: "";
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}
@media (any-hover: hover) {
  .c-btnBack:hover {
    background: var(--color-sky-blue);
  }
}
.c-btnBack[data-position=center] {
  margin-inline: auto;
}
.c-btnBack[data-position=right] {
  margin-inline: auto 0;
}
@media screen and (max-width: 767px) {
  .c-btnBack {
    width: 15rem;
    min-height: 3rem;
    padding-inline: 0.5rem;
  }
  .c-btnBack[data-position=sp-center] {
    margin-inline: auto;
  }
  .c-btnBack[data-position=sp-right] {
    margin-inline: auto 0;
  }
}

.c-btnBack__text {
  color: var(--color-black);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-btnBack__text {
    font-size: 0.9375rem;
  }
}

.c-btnBack__icon {
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  background-color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .c-btnBack__icon {
    width: 1rem;
    height: 1rem;
  }
}

.c-btnBack--blue {
  border: none;
  background-color: var(--color-navy);
}
@media (any-hover: hover) {
  .c-btnBack--blue:hover {
    background: var(--color-navy-hover);
  }
}

.c-btnBack--blue .c-btnBack__text {
  color: var(--color-white);
}

.c-btnBack--blue .c-btnBack__icon {
  background-color: var(--color-white);
}

.c-btnCard {
  display: inline-flex;
  column-gap: 0.25rem;
  align-items: center;
  width: fit-content;
  padding-block-end: 0.5rem;
  padding-inline: 0.5rem 0.25rem;
  border-block-end: 0.125rem solid var(--color-navy);
}
@media (any-hover: hover) {
  .c-btnCard:hover .c-btnCard__icon {
    translate: 0.125rem 0;
  }
}
@media screen and (max-width: 767px) {
  .c-btnCard {
    padding-inline: 0.4375rem 0.5rem;
    border-width: 0.0625rem;
  }
}
.c-btnCard[data-position=center] {
  margin-inline: auto;
}
.c-btnCard[data-position=right] {
  margin-inline-start: auto;
}
@media screen and (max-width: 767px) {
  .c-btnCard[data-position=sp-center] {
    margin-inline: auto;
  }
  .c-btnCard[data-position=sp-right] {
    margin-inline-start: auto;
  }
}

.c-btnCard__text {
  display: block;
  color: var(--color-navy);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .c-btnCard__text {
    font-size: 0.75rem;
  }
}

.c-btnCard__icon {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--color-navy);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .c-btnCard__icon {
    width: 1rem;
    height: 1rem;
  }
}

.c-button {
  position: relative;
  display: inline-grid;
  grid-template-columns: max-content 1fr max-content;
  column-gap: 50px;
  align-items: center;
  padding-block: 22px;
  padding-inline: 30px;
  border-radius: 10px;
  box-shadow: 11px 11px 7.9px 0 rgba(146, 121, 135, 0.06);
  background: linear-gradient(97deg, var(--color-white) 0%, var(--color-white) 49%, #ef9cd7 49%, #d0aff2 76.29%, #6a74ce 100%);
  background-position: 100% 0;
  background-size: 210% auto;
  background-repeat: no-repeat;
  color: #fff;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: var(--fw-semi-bold);
  line-height: 1;
  transition: background-position var(--duration) ease, color var(--duration) ease, scale var(--duration) ease;
}
.c-button::before {
  content: "";
  display: block;
  width: 10px;
  aspect-ratio: 1;
}
.c-button::after {
  content: "";
  display: block;
  width: 10px;
  aspect-ratio: 1;
  border-block-end: 2px solid var(--color-white);
  border-inline-end: 2px solid var(--color-white);
  rotate: -45deg;
  transition: border-color var(--duration) ease;
}
@media (any-hover: hover) {
  .c-button:hover {
    background-position: 0% 0;
    color: var(--color-text-purple);
    scale: 0.95;
  }
  .c-button:hover::after {
    border-color: var(--color-text-purple);
  }
}
@media screen and (max-width: 767px) {
  .c-button {
    column-gap: 30px;
    padding-inline: 25px;
  }
}

.c-card {
  container-name: card;
  container-type: inline-size;
  overflow: hidden;
  border-radius: 12px;
  background-color: var(--color-white);
  transition: scale 0.3s ease;
}

.c-card__body {
  display: grid;
  grid-template-columns: minmax(min(400 * var(--to-rem), 100%), 1fr) auto;
}
@container card (inline-size <= 700px) {
  .c-card__body {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (any-hover: hover) {
  .c-card:has(.c-button:hover) .c-card__image img {
    scale: 1.1;
  }
}
.c-card__image {
  overflow: hidden;
  width: 100%;
  aspect-ratio: 3/2;
}

.c-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.4s ease;
}

.c-card__content {
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: calc(16 * var(--to-rem));
  padding: calc(24 * var(--to-rem));
}

.c-card__title {
  margin: 0;
  color: var(--color-text);
  font-size: calc(20 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .c-card__title {
    font-size: calc(24 * var(--to-rem));
  }
}
.c-card__text {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: calc(14 * var(--to-rem));
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .c-card__text {
    font-size: calc(16 * var(--to-rem));
  }
}
.c-card__button {
  align-self: end;
}

.c-caseCard {
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background-color: var(--color-white);
}
@media (any-hover: hover) {
  .c-caseCard:hover .c-caseCard__arrow {
    translate: 0.125rem 0;
  }
  .c-caseCard:hover .c-caseCard__img img {
    scale: 1.1;
  }
  .c-caseCard:hover .c-caseCard__text {
    color: var(--color-blue);
  }
}
@media screen and (max-width: 767px) {
  .c-caseCard {
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.08);
  }
}

.c-caseCard__img {
  display: block;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16/9;
}

.c-caseCard__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: scale var(--duration) var(--ease-in-out);
}

.c-caseCard__body {
  padding-block: 0.875rem 1.25rem;
  padding-inline: 1.5rem;
}
@media screen and (max-width: 767px) {
  .c-caseCard__body {
    padding-block: 0.5rem 0.875rem;
    padding-inline: 0.75rem;
  }
}

.c-caseCard__row {
  margin-block-start: 0.5rem;
}
@media screen and (max-width: 767px) {
  .c-caseCard__row {
    display: flex;
    column-gap: 0.375rem;
    align-items: center;
    margin-block-start: 0.125rem;
  }
}

.c-caseCard__text {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--color-black);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.7777777778;
  white-space: normal;
  transition: color var(--duration) var(--ease-in-out);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .c-caseCard__text {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.c-caseCard__arrow {
  display: block;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  margin-block-start: 0.5rem;
  margin-inline-start: auto;
  background-color: var(--color-navy);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .c-caseCard__arrow {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
  }
}

.c-caseCard--small {
  border: 0.125rem solid var(--color-navy);
  background-color: var(--color-pale-blue);
}
@media screen and (max-width: 767px) {
  .c-caseCard--small {
    border: 0.125rem solid var(--color-navy);
    background-color: var(--color-pale-blue);
  }
}

@media screen and (max-width: 767px) {
  .c-caseCard--small .c-caseCard__body {
    padding-block: 0.25rem 0.625rem;
    padding-inline: 0.375rem;
  }
}

@media screen and (max-width: 767px) {
  .c-caseCard--small .c-label {
    font-size: 0.625rem;
  }
}

@media screen and (max-width: 767px) {
  .c-caseCard--small .c-caseCard__row {
    column-gap: 0.25rem;
    margin-block-start: 0.25rem;
  }
}

@media screen and (max-width: 767px) {
  .c-caseCard--small .c-caseCard__text {
    font-size: 0.8125rem;
    line-height: 1.3846153846;
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }
}

@media screen and (max-width: 767px) {
  .c-caseCard--small .c-caseCard__arrow {
    margin-block-start: 0;
  }
}

.c-categoryLabel {
  display: inline-grid;
  place-items: center;
  width: fit-content;
  padding-block: 0.1875rem 0.125rem;
  padding-inline: 0.5rem;
  background: var(--color-blue);
  color: var(--color-white);
  font-family: var(--en-font-family);
  font-size: 1rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.1em;
  white-space: nowrap;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .c-categoryLabel {
    font-size: 0.75rem;
  }
}

@media (any-hover: hover) {
  a.c-categoryLabel:hover {
    opacity: 0.8;
  }
}
.c-image-text {
  display: grid;
  grid-template: "image" auto "text" auto/1fr;
  row-gap: calc(24 * var(--to-rem));
  align-items: center;
}
@media screen and (max-width: 767px) {
  .c-image-text {
    grid-template: "image gutter text margin" auto/41.6666666667% calc(16 * var(--to-rem)) 1fr max((100% - var(--inner)) / 2, 32 * var(--to-rem));
  }
}

@media screen and (max-width: 767px) {
  .c-image-text.c-image-text--reverse {
    grid-template: "margin text gutter image" auto/max((100% - var(--inner)) / 2, 32 * var(--to-rem)) 1fr calc(16 * var(--to-rem)) 41.6666666667%;
  }
}

@media screen and (max-width: 767px) {
  .c-image-text.c-image-text--overlap {
    grid-template: "image text margin" auto/41.6666666667% 1fr max((100% - var(--inner)) / 2, 32 * var(--to-rem));
  }
}

@media screen and (max-width: 767px) {
  .c-image-text.c-image-text--overlap.c-image-text--reverse {
    grid-template: "margin text image" auto/max((100% - var(--inner)) / 2, 32 * var(--to-rem)) 1fr 41.6666666667%;
  }
}

.c-image-text__image {
  grid-area: image;
}

.c-image-text__image img {
  width: 100%;
  height: calc(300 * var(--to-rem));
  object-fit: cover;
}

.c-image-text__text {
  grid-area: text;
  max-width: var(--inner-sp);
  margin-inline: auto;
  padding: var(--padding-inner);
}
@media screen and (max-width: 767px) {
  .c-image-text__text {
    max-width: none;
    margin-inline: 0;
    padding-inline: revert;
  }
}

.c-image-text.c-image-text--overlap .c-image-text__text {
  padding: var(--padding-inner);
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .c-image-text.c-image-text--overlap .c-image-text__text {
    margin-left: calc(-100 * var(--to-rem));
    padding: calc(20 * var(--to-rem)) 0 calc(20 * var(--to-rem)) calc(20 * var(--to-rem));
  }
}

@media screen and (max-width: 767px) {
  .c-image-text.c-image-text--overlap.c-image-text--reverse .c-image-text__text {
    margin-right: calc(-100 * var(--to-rem));
    margin-left: auto;
    padding: calc(20 * var(--to-rem)) calc(20 * var(--to-rem)) calc(20 * var(--to-rem)) 0;
  }
}

.c-label {
  display: grid;
  place-items: center;
  width: fit-content;
  padding-block: 0.125rem;
  padding-inline: 0.5rem;
  background-color: var(--color-blue);
  color: var(--color-white);
  font-family: var(--en-font-family);
  font-size: 1rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .c-label {
    padding-block: 0.1875rem;
    font-size: 0.75rem;
  }
}

.c-metaTimeList {
  display: flex;
  column-gap: 1.125rem;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 0.375rem;
}
@media screen and (max-width: 767px) {
  .c-metaTimeList {
    column-gap: 0.75rem;
  }
}

.c-metaTimeList__item {
  display: flex;
  column-gap: 0.375rem;
  align-items: center;
}

.c-metaTimeList__icon {
  display: block;
  flex-shrink: 0;
  background: center/contain no-repeat;
}

.c-metaTimeList__item--update .c-metaTimeList__icon {
  width: 1rem;
  height: 0.875rem;
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='13'%20height='12'%20viewBox='0%200%2013%2012'%20fill='none'%3e%3cg%20clip-path='url(%23clip0_4008_2601)'%3e%3cpath%20d='M11.57%205.91525C11.5294%202.60345%208.90499%20-0.0426151%205.70374%20-0.000480269C2.51062%200.0416546%20-0.0406348%202.77199%20-9.77178e-06%206.08379C0.0406152%209.37031%202.62437%2012.0079%205.78499%2011.9995V10.6006C3.33124%2010.6006%201.34062%208.54446%201.34062%205.99952C1.34062%203.45458%203.32312%201.38997%205.77687%201.38997C8.19812%201.38997%2010.1725%203.40401%2010.2212%205.91525H8.66124L10.8306%209.80851L13%205.91525H11.57Z'%20fill='%23999899'%20/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4008_2601'%3e%3crect%20width='13'%20height='12'%20fill='white'%20/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e");
}
@media screen and (max-width: 767px) {
  .c-metaTimeList__item--update .c-metaTimeList__icon {
    width: 0.8125rem;
    height: 0.75rem;
  }
}

.c-metaTimeList__item--post .c-metaTimeList__icon {
  width: 1rem;
  height: 1rem;
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%3e%3cg%20clip-path='url(%23clip0_4008_2605)'%3e%3cpath%20d='M8.5097%205.63089H6.6601C6.60043%205.52648%206.51094%205.43698%206.41398%205.37732V2.36426C6.41398%202.15544%206.24245%201.9839%206.03362%201.9839C5.8248%201.9839%205.65326%202.15544%205.65326%202.36426V5.37732C5.31019%205.58614%205.20578%206.04108%205.41461%206.38415C5.62343%206.72722%206.07837%206.83163%206.42144%206.62281C6.51094%206.56314%206.59298%206.48856%206.65264%206.39907H8.52461C8.73344%206.39907%208.90497%206.22753%208.90497%206.01871C8.90497%205.80988%208.73344%205.63835%208.52461%205.63835M6.03362%206.21943e-05C2.71479%20-0.0148539%200.0149783%202.65513%206.21943e-05%205.9665C-0.0148539%209.27787%202.65513%2011.9777%205.9665%2012.0001C9.27787%2012.015%2011.9777%209.345%2012.0001%206.03362C12.0001%206.02617%2012.0001%206.01125%2012.0001%206.00379C12.0075%202.69242%209.33754%200.00752024%206.03362%206.21943e-05ZM9.44195%209.43449C7.57744%2011.3139%204.53456%2011.3288%202.65513%209.46433C2.64767%209.45687%202.63275%209.44195%202.6253%209.43449C0.738409%207.53269%200.738409%204.46743%202.6253%202.57309C4.48981%200.693661%207.53269%200.678745%209.41212%202.54326C9.41958%202.55071%209.43449%202.56563%209.44195%202.57309C11.3214%204.47489%2011.3214%207.53269%209.44195%209.43449Z'%20fill='%23999899'%20/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4008_2605'%3e%3crect%20width='12'%20height='12'%20fill='white'%20/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e");
}
@media screen and (max-width: 767px) {
  .c-metaTimeList__item--post .c-metaTimeList__icon {
    width: 0.75rem;
    height: 0.75rem;
  }
}

.c-metaTimeList__time {
  color: var(--color-muted);
  font-family: var(--en-font-family);
  font-size: 1rem;
  font-weight: var(--fw-medium);
}
@media screen and (max-width: 767px) {
  .c-metaTimeList__time {
    font-size: 0.75rem;
  }
}

.c-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .c-pagination {
    gap: 0.375rem;
    margin-block-start: 2.5rem;
  }
}

.c-pagination__item {
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0.0625rem solid var(--color-navy);
  border-radius: 50%;
  background: var(--color-white);
  color: var(--color-navy);
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  transition: color var(--duration) var(--ease-in-out), background var(--duration) var(--ease-in-out), border-color var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .c-pagination__item {
    width: 2.25rem;
    height: 2.25rem;
  }
}

@media (any-hover: hover) {
  a.c-pagination__item:hover {
    border-color: var(--color-navy);
    background: var(--color-navy);
    color: var(--color-white);
  }
}
.c-pagination__item[data-state=current] {
  border-color: var(--color-navy);
  background: var(--color-navy);
  color: var(--color-white);
}

.c-pagination__item[data-state=dots] {
  border: none;
  background: transparent;
  color: var(--color-muted);
}

.c-pagination__item[data-state=prev],
.c-pagination__item[data-state=next] {
  font-size: 0;
}
.c-pagination__item[data-state=prev]::before,
.c-pagination__item[data-state=next]::before {
  content: "";
  mask-image: var(--_chevron);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.125rem;
  height: 1.125rem;
  background-color: var(--color-navy);
  transition: background-color var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .c-pagination__item[data-state=prev]::before,
  .c-pagination__item[data-state=next]::before {
    width: 1rem;
    height: 1rem;
  }
}

.c-pagination__item[data-state=prev] {
  --_chevron: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15 5l-7 7 7 7" fill="none" stroke="black" stroke-width="2.6" stroke-linecap="butt" stroke-linejoin="miter"/></svg>');
}

.c-pagination__item[data-state=next] {
  --_chevron: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 5l7 7-7 7" fill="none" stroke="black" stroke-width="2.6" stroke-linecap="butt" stroke-linejoin="miter"/></svg>');
}

@media (any-hover: hover) {
  a.c-pagination__item[data-state=prev]:hover::before,
  a.c-pagination__item[data-state=next]:hover::before {
    background-color: var(--color-white);
  }
}
.c-productTitle {
  text-align: center;
}

.c-productTitle__title {
  color: var(--color-navy);
  font-size: 3rem;
  font-weight: var(--fw-bold);
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .c-productTitle__title {
    font-size: 1.625rem;
    font-weight: var(--fw-bold);
    letter-spacing: 0.05em;
  }
}

.c-productTitle__subTitle {
  margin-block-start: 1rem;
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .c-productTitle__subTitle {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.c-productTitle--white .c-productTitle__title {
  color: var(--color-white);
  font-weight: var(--fw-black);
}
.c-productTitle--white .c-productTitle__subTitle {
  color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .c-productTitle--white .c-productTitle__title {
    font-weight: var(--fw-bold);
  }
}

.c-sectionTitle.c-sectionTitle--white .c-sectionTitle__main {
  color: var(--color-white);
}
.c-sectionTitle.c-sectionTitle--white .c-sectionTitle__sub {
  color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .c-sectionTitle.c-sectionTitle--narrow .c-sectionTitle__main {
    line-height: 1;
  }
}

.c-sectionTitle__main {
  width: fit-content;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 6.25rem;
  font-weight: var(--fw-black);
  line-height: 1.21;
  letter-spacing: 0.033em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .c-sectionTitle__main {
    font-size: 2.5rem;
    line-height: normal;
  }
}

.c-sectionTitle__sub {
  color: var(--color-black);
  font-family: var(--base-font-family);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  line-height: 1.1875;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .c-sectionTitle__sub {
    font-size: 1.125rem;
    line-height: normal;
  }
}

.c-sectionTitle[data-align=left] {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  column-gap: 2rem;
  width: fit-content;
}
.c-sectionTitle[data-align=left]::before {
  content: "";
  grid-column: 1;
  grid-row: 1/3;
  align-self: end;
  width: 0.25rem;
  height: 88%;
  margin-block-end: -0.25rem;
  background: var(--color-black);
}
@media screen and (max-width: 767px) {
  .c-sectionTitle[data-align=left] {
    column-gap: 0.5625rem;
  }
  .c-sectionTitle[data-align=left]::before {
    height: 102%;
    margin-block-end: -0.125rem;
  }
}

.c-sectionTitle[data-align=left] .c-sectionTitle__main {
  grid-column: 2;
  grid-row: 1;
}

.c-sectionTitle[data-align=left] .c-sectionTitle__sub {
  grid-column: 2;
  grid-row: 2;
}

.c-sectionTitle[data-align=center] {
  text-align: center;
}

.c-sectionTitle[data-align=center] .c-sectionTitle__main {
  margin-inline: auto;
}

.c-sectionTitle[data-align=right] {
  text-align: right;
}

.c-sectionTitle[data-align=right] .c-sectionTitle__main {
  margin-inline-start: auto;
}

.c-sectionTitle--white .c-sectionTitle__main {
  background: none;
  color: var(--color-white);
  -webkit-text-fill-color: currentcolor;
}
.c-sectionTitle--white .c-sectionTitle__sub {
  color: var(--color-white);
}
.c-sectionTitle--white[data-align=left]::before {
  background: var(--color-white);
}

.c-sectionTitleWhite[data-align=left] {
  text-align: left;
}
.c-sectionTitleWhite[data-align=center] {
  text-align: center;
}
.c-sectionTitleWhite[data-align=right] {
  text-align: right;
}

.c-sectionTitleWhite__main {
  color: var(--color-white);
  font-family: var(--en-font-family);
  font-size: 6.25rem;
  font-weight: var(--fw-black);
  letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
  .c-sectionTitleWhite__main {
    font-size: 2.5rem;
  }
}

.c-sectionTitleWhite__sub {
  margin-block-start: -0.5rem;
  color: var(--color-white);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .c-sectionTitleWhite__sub {
    margin-block-start: 0.125rem;
    font-size: 1.125rem;
  }
}

.c-triangle {
  display: inline-block;
  width: 4rem;
  aspect-ratio: 1/1;
  background-color: var(--color-black);
}

.c-triangle[data-direction=top] {
  clip-path: var(--clip-triangle-top);
}

.c-triangle[data-direction=bottom] {
  clip-path: var(--clip-triangle-bottom);
}

.c-triangle[data-direction=left] {
  clip-path: var(--clip-triangle-left);
}

.c-triangle[data-direction=right] {
  clip-path: var(--clip-triangle-right);
}

.c-triangle[data-direction=lower-left] {
  clip-path: var(--clip-triangle-lower-left);
}

.c-triangle[data-direction=upper-left] {
  clip-path: var(--clip-triangle-upper-left);
}

.c-triangle[data-direction=lower-right] {
  clip-path: var(--clip-triangle-lower-right);
}

.c-triangle[data-direction=upper-right] {
  clip-path: var(--clip-triangle-upper-right);
}

.p-aboutCase {
  padding-block: 4rem 4.875rem;
}
@media screen and (max-width: 767px) {
  .p-aboutCase {
    padding-block: 2rem;
  }
}

.p-aboutCase__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
  margin-block-start: 4.75rem;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__list {
    grid-template-columns: 1fr;
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-aboutCase__item {
  display: flex;
  flex-direction: column;
  row-gap: 0.9375rem;
  padding: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-footer-cta-contact-bg);
}
.p-aboutCase__item:nth-child(2) .p-aboutCase__item-top {
  column-gap: 0.75rem;
  margin-inline-start: -0.5rem;
}
.p-aboutCase__item:nth-child(2) .p-aboutCase__item-title {
  margin-inline-start: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__item {
    row-gap: 0.75rem;
    padding: 0.9375rem;
    border-radius: 0.5rem;
  }
  .p-aboutCase__item:nth-child(2) .p-aboutCase__item-top {
    column-gap: 0.25rem;
    margin-inline-start: 0;
  }
  .p-aboutCase__item:nth-child(2) .p-aboutCase__item-title {
    margin-inline-start: 0.5rem;
  }
}

.p-aboutCase__item-top {
  display: flex;
  column-gap: 1.25rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__item-top {
    column-gap: 0.75rem;
  }
}

.p-aboutCase__num {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
}

.p-aboutCase__num-label {
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 1.5rem;
  font-weight: var(--fw-black);
  line-height: 1;
  letter-spacing: 0.03em;
  text-align: center;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__num-label {
    font-size: 1rem;
  }
}

.p-aboutCase__num-value {
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 4.5rem;
  font-weight: var(--fw-black);
  line-height: 1;
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__num-value {
    font-size: 2.5rem;
  }
}

.p-aboutCase__divider {
  flex-shrink: 0;
  width: 0.25rem;
  height: 6.25rem;
  background: var(--gradient-navy-vertical);
}
@media screen and (max-width: 767px) {
  .p-aboutCase__divider {
    height: 4rem;
  }
}

.p-aboutCase__item-title {
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__item-title {
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: 0;
  }
}

.p-aboutCase__item-text {
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutCase__item-text {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-aboutLead {
  position: relative;
  padding-block: 3.625rem 5rem;
}
.p-aboutLead::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: min(60rem, 50vw);
  height: auto;
  aspect-ratio: 1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-aboutLead {
    padding-block: 0.75rem 2rem;
  }
  .p-aboutLead::after {
    width: 22.5rem;
  }
}

.p-aboutLead__content {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  grid-template-areas: "title meta" "text meta";
  column-gap: 6rem;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__content {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "title" "meta" "text";
  }
}

.p-aboutLead__title {
  grid-area: title;
  font-size: 3rem;
  font-weight: var(--fw-black);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__title {
    font-size: 1.5rem;
    line-height: 1.3333333333;
    text-align: center;
  }
}

.p-aboutLead__text {
  grid-area: text;
  margin-block-start: -0.75rem;
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__text {
    margin-block-start: 1rem;
    font-size: 0.9375rem;
  }
}

.p-aboutLead__meta {
  position: relative;
  z-index: 2;
  grid-area: meta;
  width: 21rem;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__meta {
    width: 100%;
    margin-block-start: 1rem;
  }
}

.p-aboutLead__img {
  position: relative;
  width: 20rem;
  height: auto;
}
.p-aboutLead__img::after {
  content: "";
  position: absolute;
  right: -1rem;
  bottom: -1rem;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: var(--gradient-contact);
}
@media screen and (max-width: 767px) {
  .p-aboutLead__img {
    width: 10rem;
    margin-inline: auto;
  }
  .p-aboutLead__img::after {
    right: -0.5rem;
    bottom: -0.5rem;
  }
}

.p-aboutLead__label {
  display: block;
  margin-block-start: 2rem;
  margin-inline-start: -0.75rem;
  font-size: 1rem;
  font-weight: var(--fw-regular);
  line-height: 1.75;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__label {
    margin-block-start: 0.75rem;
    margin-inline-start: 0;
    font-size: 0.75rem;
    line-height: 2;
    letter-spacing: 0.03em;
  }
}

.p-aboutLead__name {
  display: block;
  margin-block-start: 0.25rem;
  margin-inline-start: -0.75rem;
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.1666666667;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-aboutLead__name {
    margin-inline-start: 0;
    font-size: 1.25rem;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-aboutMedia {
  padding-block: 4rem 4.875rem;
  background: url("../images/about-bg2.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-aboutMedia {
    padding-block: 1.875rem 2rem;
    background: url("data:image/webp;base64,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") var(--bg-cover);
  }
}

@media screen and (max-width: 767px) {
  .p-aboutMedia__title .c-sectionTitle__sub {
    margin-block-start: 0.25rem;
  }
}

.p-aboutMedia__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-aboutMedia__list {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-aboutMedia__item {
  display: flex;
  align-items: stretch;
  overflow: hidden;
  min-height: 15rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-aboutMedia__item.p-aboutMedia__item--tv {
  border: 0.125rem solid var(--color-blue);
}
.p-aboutMedia__item.p-aboutMedia__item--award {
  border: 0.125rem solid rgb(204, 217, 230);
}
.p-aboutMedia__item.p-aboutMedia__item--award .p-aboutMedia__item-thumb {
  background: rgba(255, 255, 255, 0.8);
}
.p-aboutMedia__item.p-aboutMedia__item--award .p-aboutMedia__item-text {
  padding-inline-end: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-aboutMedia__item {
    min-height: 7.5rem;
    border-radius: 0.5rem;
  }
  .p-aboutMedia__item.p-aboutMedia__item--tv {
    border: none;
  }
  .p-aboutMedia__item.p-aboutMedia__item--award {
    border: none;
  }
  .p-aboutMedia__item.p-aboutMedia__item--award .p-aboutMedia__item-text {
    padding-inline-end: 0.125rem;
  }
}

.p-aboutMedia__item-thumb {
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 17.5rem;
}
@media screen and (max-width: 767px) {
  .p-aboutMedia__item-thumb {
    width: 8.75rem;
  }
}

.p-aboutMedia__item-thumb-img {
  width: 9.75rem;
  height: 13rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .p-aboutMedia__item-thumb-img {
    width: 4.6875rem;
    height: 6.25rem;
  }
}

.p-aboutMedia__item-text {
  flex: 1;
  padding-block: 1.5625rem;
  padding-inline: 1.5rem;
  color: var(--color-navy);
  font-size: 1.5rem;
  font-weight: var(--fw-black);
  line-height: 1.2083333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-aboutMedia__item-text {
    padding-block: 0.625rem;
    padding-inline: 0.75rem;
    font-size: 1rem;
    line-height: 1.375;
    letter-spacing: 0.00625em;
  }
}

.p-aboutOverview {
  padding-block: 4rem 5rem;
  background: url("../images/about-bg3.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-aboutOverview {
    padding-block: 2rem;
    background: url("../images/about-bg3-sp.webp") var(--bg-cover);
  }
}

.p-aboutOverview__inner {
  max-width: calc(55rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.p-aboutOverview__content {
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__content {
    margin-block-start: 1.875rem;
  }
}

.p-aboutOverview__card {
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__card {
    padding: 1rem;
    border-radius: 0.5rem;
  }
}

.p-aboutOverview__row {
  display: grid;
  grid-template-columns: 11rem 1fr;
  align-items: flex-start;
  padding-block: 1.5rem 1.4375rem;
  border-block-start: 1px solid var(--color-border);
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__row {
    grid-template-columns: 3.875rem 1fr;
    column-gap: 1rem;
    padding-block: 0.6875rem 0.75rem;
  }
  .p-aboutOverview__row.p-aboutOverview__row--spCenter {
    align-items: center;
  }
}

.p-aboutOverview__table > .p-aboutOverview__row:first-child {
  padding-block-start: 0;
  border-block-start: none;
}

.p-aboutOverview__table > .p-aboutOverview__row:last-child {
  padding-block-end: 0;
}

.p-aboutOverview__term {
  color: var(--color-navy);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__term {
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-aboutOverview__desc {
  color: var(--color-text);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.p-aboutOverview__desc a {
  color: var(--color-link);
  text-decoration: underline;
  transition: opacity var(--duration) ease;
}
@media (any-hover: hover) {
  .p-aboutOverview__desc a:hover {
    opacity: 0.7;
    text-decoration: underline;
  }
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__desc {
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-aboutOverview__desc-list {
  margin-block-start: 0.25rem;
  padding-inline-start: 0.25rem;
}
.p-aboutOverview__desc-list.p-aboutOverview__desc-list--ol {
  margin-block-start: 0;
  padding-inline-start: 1.875rem;
  list-style: decimal;
}
.p-aboutOverview__desc-list.p-aboutOverview__desc-list--ol .p-aboutOverview__desc-item {
  padding-inline-start: 0;
}
.p-aboutOverview__desc-list.p-aboutOverview__desc-list--ol .p-aboutOverview__desc-item::before {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__desc-list {
    margin-block-start: 0;
  }
  .p-aboutOverview__desc-list.p-aboutOverview__desc-list--ol {
    padding-inline-start: 1.375rem;
  }
}

.p-aboutOverview__desc-item {
  position: relative;
  padding-inline-start: 1.625rem;
}
.p-aboutOverview__desc-item::before {
  content: "・";
  position: absolute;
  inset: 0;
  font-size: inherit;
  line-height: 1lh;
}
@media screen and (max-width: 767px) {
  .p-aboutOverview__desc-item {
    padding-inline-start: 1.125rem;
  }
}

.p-aboutPartners {
  padding-block: 4rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-aboutPartners {
    padding-block: 2rem;
  }
}

.p-aboutPartners__content {
  margin-block-start: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-aboutPartners__content {
    margin-block-start: 2.125rem;
  }
}

.p-aboutPartners__list-wrap {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-aboutPartners__list-wrap {
    overflow: visible;
  }
}

.p-aboutPartners__list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.5rem;
  margin-inline-start: -1.5rem;
}
@media screen and (max-width: 767px) {
  .p-aboutPartners__list {
    display: block;
    margin-inline-start: 0;
    font-size: 0;
  }
}

.p-aboutPartners__item {
  display: flex;
  align-items: center;
  color: var(--color-text);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.p-aboutPartners__item::before {
  content: "";
  flex-shrink: 0;
  width: 0.0625rem;
  height: 1.75rem;
  margin-inline: 0.71875rem;
  background: var(--color-separator);
}
@media screen and (max-width: 767px) {
  .p-aboutPartners__item {
    display: inline;
    font-size: 0.875rem;
    line-height: 1.8571428571;
    letter-spacing: 0.03em;
  }
  .p-aboutPartners__item::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-aboutPartners__item--sepBefore::before,
  .p-aboutPartners__item--sepBeforeNoPad::before {
    content: "";
    display: inline-block;
    width: 0.0625rem;
    height: 1.125rem;
    margin-inline: 0 0.4375rem;
    background: var(--color-separator);
    vertical-align: middle;
  }
}

@media screen and (max-width: 767px) {
  .p-aboutPartners__item--sepBefore {
    padding-inline-start: 0.4375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-aboutPartners__item--sepAfter::after,
  .p-aboutPartners__item--sepAfterNoMargin::after {
    content: "";
    display: inline-block;
    width: 0.0625rem;
    height: 1.125rem;
    margin-inline-start: 0.4375rem;
    background: var(--color-separator);
    vertical-align: middle;
  }
}

@media screen and (max-width: 767px) {
  .p-aboutPartners__item--sepAfter {
    margin-inline-end: 0.4375rem;
  }
}

.p-aboutPartners__item--muted {
  margin-inline-start: 2rem;
  color: var(--color-muted);
}
.p-aboutPartners__item--muted::before {
  display: none;
}

.p-aboutPartners__note {
  margin-block-start: 1.5rem;
  color: var(--color-muted);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutPartners__note {
    margin-block-start: 0.75rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-aboutService {
  padding-block: 4rem 4.375rem;
  background: url("../images/about-bg1.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-aboutService {
    padding-block: 2rem;
    background: url("../images/about-bg1-sp.webp") var(--bg-cover);
  }
}

.p-aboutService__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: auto auto 1fr;
  column-gap: 3.3125rem;
  margin-block-start: 5.8125rem;
}
@media screen and (max-width: 767px) {
  .p-aboutService__list {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    row-gap: 2.375rem;
    margin-block-start: 1.75rem;
  }
}

.p-aboutService__item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: subgrid;
  grid-row: span 2;
  row-gap: 0;
  justify-items: center;
  padding-block-start: 4.875rem;
  border-radius: 16px;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-aboutService__item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: 2.25rem;
  height: 2.3125rem;
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='40'%20height='41'%20viewBox='0%200%2040%2041'%20fill='none'%3e%3cpath%20d='M19.8953%2038.786L35.8813%2020.3764L19.8953%201.9668'%20stroke='white'%20stroke-width='6'%20stroke-miterlimit='10'%20/%3e%3cpath%20d='M35.8813%2020.4551H0'%20stroke='white'%20stroke-width='6'%20stroke-miterlimit='10'%20/%3e%3c/svg%3e");
  background-size: contain;
  background-repeat: no-repeat;
  translate: 0 -50%;
}
@media screen and (max-width: 767px) {
  .p-aboutService__item {
    display: flex;
    grid-template-rows: none;
    grid-row: auto;
    flex-flow: row wrap;
    gap: 0.5rem 0.75rem;
    align-items: center;
    padding: 1rem;
    border-radius: 0.5rem;
  }
  .p-aboutService__item:not(:last-child)::after {
    top: calc(100% + 0.3125rem);
    left: 50%;
    width: 1.5rem;
    height: 1.5rem;
    translate: -50% 0;
    rotate: 90deg;
  }
}

.p-aboutService__item-icon {
  position: absolute;
  top: -1.875rem;
  left: 50%;
  flex-shrink: 0;
  width: 6rem;
  height: 6rem;
  margin-block-end: 0.6875rem;
  translate: -50% 0;
}
@media screen and (max-width: 767px) {
  .p-aboutService__item-icon {
    position: static;
    width: 4rem;
    height: 4rem;
    margin-block-end: 0;
    translate: 0 0;
  }
}

.p-aboutService__item-title {
  position: relative;
  align-self: center;
  width: 100%;
  padding-inline: 0.625rem;
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.2142857143;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-aboutService__item-title {
    position: static;
    flex: 1;
    align-self: auto;
    width: auto;
    padding-inline: 0;
    font-size: 1.375rem;
    line-height: 1.1818181818;
    text-align: left;
  }
}

.p-aboutService__item-text {
  position: relative;
  margin-block-start: 0.5rem;
  padding-block-end: 1.5rem;
  padding-inline: 1rem;
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutService__item-text {
    position: static;
    flex-basis: 100%;
    align-self: auto;
    width: auto;
    margin-block-start: 0;
    padding-block-end: 0;
    padding-inline: 0;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-aboutService__footer {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  align-items: center;
  margin-block-start: 3rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-aboutService__footer {
    row-gap: 0.875rem;
    margin-block-start: 1.25rem;
  }
}

.p-aboutService__footer-title {
  color: var(--color-white);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  line-height: 1.5;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutService__footer-title {
    font-size: 1.1875rem;
    line-height: 1.4736842105;
    letter-spacing: 0.05em;
  }
}

.p-aboutService__footer-text {
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-aboutService__footer-text {
    padding-inline: 1rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    text-align: left;
  }
}

.p-archive {
  padding-block: 5rem;
}
@media screen and (max-width: 767px) {
  .p-archive {
    padding-block: 2rem 3rem;
  }
}

.p-archive__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  row-gap: 2.5rem;
  column-gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-archive__cards {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1.25rem;
  }
}
.p-archive__cards .p-archive__pagination {
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-archive__cards .p-archive__pagination {
    margin-block-start: 2.5rem;
  }
}

.p-breadcrumb {
  position: relative;
  z-index: 3;
  padding-block-start: 0.5rem;
}
.p-breadcrumb.p-breadcrumb--narrow {
  padding-block-start: 1rem;
}
.p-breadcrumb.p-breadcrumb--narrow .p-breadcrumb__inner {
  max-width: calc(62.5rem + var(--padding-inner) * 2);
}
.p-breadcrumb.p-breadcrumb--product {
  padding-block: 1rem;
}
.p-breadcrumb.p-breadcrumb--product .p-breadcrumb__inner {
  max-width: calc(85rem + var(--padding-inner) * 2);
}
.p-breadcrumb.p-breadcrumb--contact {
  padding-block-end: 1rem;
}
@media screen and (max-width: 767px) {
  .p-breadcrumb {
    padding-block-start: 0.25rem;
  }
  .p-breadcrumb.p-breadcrumb--narrow {
    padding-block-start: 0.5rem;
  }
  .p-breadcrumb.p-breadcrumb--product {
    padding-block: 0.625rem 0.5rem;
  }
  .p-breadcrumb.p-breadcrumb--contact {
    padding-block-end: 0.25rem;
  }
}

.p-breadcrumb__inner {
  max-width: calc(80rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.p-columnSingle__body > * {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body > * {
    margin-block-start: 1.5rem;
  }
}

.p-columnSingle__body > :first-child {
  margin-block-start: 0;
}

.p-columnSingle__body h2 {
  margin-block-start: 4rem;
  padding-block: 0.625rem;
  padding-inline-start: 1.25rem;
  border-inline-start: 0.25rem solid var(--color-navy);
  background: #e7f9ff;
  color: var(--color-navy);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body h2 {
    margin-block-start: 2rem;
    padding-block: 0.4375rem;
    padding-inline-start: 0.5rem;
    font-size: 1.5rem;
  }
  .p-columnSingle__body h2 + h3 {
    margin-block-start: 1.125rem;
  }
}

.p-columnSingle__body h3 {
  margin-block-start: 2rem;
  padding-block: 0.75rem 0.875rem;
  padding-inline-start: 0.5rem;
  background-image: var(--gradient-blue), var(--gradient-blue);
  background-position: top, bottom;
  background-size: 100% 0.25rem, 100% 0.25rem;
  background-repeat: no-repeat;
  color: var(--color-navy-hover);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body h3 {
    margin-block-start: 2rem;
    padding-block: 0.375rem 0.625rem;
    background-size: 100% 0.125rem, 100% 0.125rem;
    font-size: 1.25rem;
  }
}

.p-columnSingle__body h4 {
  margin-block-start: 2rem;
  padding-block: 0.25rem;
  padding-inline-start: 1rem;
  border-inline-start: 0.25rem solid var(--color-navy);
  color: var(--color-navy);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body h4 {
    margin-block-start: 2rem;
    padding-block: 0.1875rem;
    padding-inline-start: 0.75rem;
    font-size: 1.125rem;
  }
  .p-columnSingle__body h4 + p {
    margin-block-start: 0.75rem;
  }
}

.p-columnSingle__body > h2 + *,
.p-columnSingle__body > h3 + *,
.p-columnSingle__body > h4 + * {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body > h2 + *,
  .p-columnSingle__body > h3 + *,
  .p-columnSingle__body > h4 + * {
    margin-block-start: 0.5rem;
  }
}

.p-columnSingle__body strong {
  font-weight: var(--fw-bold);
}

.p-columnSingle__body p a,
.p-columnSingle__body li a,
.p-columnSingle__body td a,
.p-columnSingle__body th a {
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity var(--duration) ease;
}

@media (any-hover: hover) {
  .p-columnSingle__body p a:hover,
  .p-columnSingle__body li a:hover,
  .p-columnSingle__body td a:hover,
  .p-columnSingle__body th a:hover {
    opacity: 0.75;
  }
}
.p-columnSingle__body ul,
.p-columnSingle__body ol {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
  margin-block-start: 1rem;
}
.p-columnSingle__body ul + p,
.p-columnSingle__body ol + p {
  margin-block-start: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body ul,
  .p-columnSingle__body ol {
    row-gap: 0.25rem;
    margin-block-start: 0.875rem;
  }
  .p-columnSingle__body ul + p,
  .p-columnSingle__body ol + p {
    margin-block-start: 0.75rem;
  }
}

.p-columnSingle__body li > ul,
.p-columnSingle__body li > ol {
  margin-block-start: 0.25rem;
  padding-inline-start: 1rem;
}

.p-columnSingle__body ul li {
  padding-inline-start: 1.375rem;
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body ul li {
    padding-inline-start: 1.125rem;
  }
}

.p-columnSingle__body ul li::before {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  margin-inline: -1.375rem 0.5rem;
  border-radius: 100vmax;
  background: var(--gradient-blue);
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body ul li::before {
    width: 0.625rem;
    height: 0.625rem;
    margin-inline: -1.125rem 0.5rem;
  }
}

.p-columnSingle__body ol {
  counter-reset: ol-counter;
}

.p-columnSingle__body ol li {
  padding-inline-start: 1.75rem;
  counter-increment: ol-counter;
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body ol li {
    padding-inline-start: 1.125rem;
  }
}

.p-columnSingle__body ol li::before {
  content: counter(ol-counter) ".";
  display: inline-block;
  width: 1.75rem;
  margin-inline-start: -1.75rem;
  background: var(--gradient-blue);
  background-clip: text;
  color: transparent;
  font-weight: var(--fw-black);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body ol li::before {
    width: 1.125rem;
    margin-inline-start: -1.125rem;
    font-weight: var(--fw-bold);
  }
}

.p-columnSingle__body .wp-block-table,
.p-columnSingle__body .wp-block-flexible-table-block-table {
  overflow-x: auto;
}
.p-columnSingle__body .wp-block-table:not(:has(th)),
.p-columnSingle__body .wp-block-flexible-table-block-table:not(:has(th)) {
  margin-block-start: 1rem;
}
.p-columnSingle__body .wp-block-table + .wp-block-table, .p-columnSingle__body .wp-block-table + .wp-block-flexible-table-block-table,
.p-columnSingle__body .wp-block-flexible-table-block-table + .wp-block-table,
.p-columnSingle__body .wp-block-flexible-table-block-table + .wp-block-flexible-table-block-table {
  margin-block-start: 1rem;
}
.p-columnSingle__body .wp-block-table + p,
.p-columnSingle__body .wp-block-flexible-table-block-table + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-table,
  .p-columnSingle__body .wp-block-flexible-table-block-table {
    margin-block-start: 1rem;
  }
}

.p-columnSingle__body table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.p-columnSingle__body th,
.p-columnSingle__body td {
  padding-block: 0.8125rem !important;
  padding-inline: 1rem !important;
  border: 0.0625rem solid var(--color-muted) !important;
  font-size: 1.125rem !important;
  line-height: 1.5555555556 !important;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body th,
  .p-columnSingle__body td {
    padding-block: 0.25rem 0.1875rem !important;
    padding-inline: 0.5rem !important;
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
  }
}

.p-columnSingle__body td {
  background: var(--color-white) !important;
}

.p-columnSingle__body thead th {
  background: var(--gradient-blue) !important;
  color: var(--color-white) !important;
  font-weight: var(--fw-bold) !important;
}

.p-columnSingle__body .wp-block-flexible-table-block-table th {
  background: var(--color-navy-hover) !important;
  color: var(--color-white) !important;
  font-weight: var(--fw-bold) !important;
}

.p-columnSingle__body .has-text-align-center {
  text-align: center !important;
}

.p-columnSingle__body .has-text-align-right {
  text-align: right !important;
}

.p-columnSingle__body .has-text-align-left {
  text-align: left !important;
}

.p-columnSingle__body .wp-block-quote {
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-quote {
    margin-block-start: 1rem;
    padding-block: 0.75rem;
    padding-inline: 1rem;
    border-radius: 0.5rem;
  }
}

.p-columnSingle__body .wp-block-quote cite {
  display: block;
  display: flex;
  justify-content: end;
  align-items: center;
  margin-block-start: 0.5rem;
  color: var(--color-muted);
  font-size: 1rem;
  font-style: normal;
}
.p-columnSingle__body .wp-block-quote cite::before {
  content: "引用元：";
  color: #999;
  font-style: normal;
  font-weight: var(--fw-regular);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-quote cite {
    margin-block-start: 0.625rem;
    font-size: 0.75rem;
  }
}

.p-columnSingle__body .wp-block-quote cite a {
  display: block;
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.p-columnSingle__body .wp-block-image {
  margin-block-start: 2rem;
}
.p-columnSingle__body .wp-block-image + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-image {
    margin-block-start: 0.5rem;
  }
  .p-columnSingle__body .wp-block-image + p {
    margin-block-start: 0.5rem;
  }
}

.p-columnSingle__body .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
}

.p-columnSingle__body .wp-block-image figcaption {
  margin-block-start: 0.5rem;
  color: var(--color-muted);
  font-size: 0.875rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-image figcaption {
    font-size: 0.75rem;
  }
}

.wp-block-embed + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .wp-block-embed {
    margin-block-start: 1rem;
  }
}

.p-columnSingle__body .wp-block-embed__wrapper {
  display: grid;
  overflow: hidden;
  aspect-ratio: 16/9;
}

.p-columnSingle__body .wp-block-embed iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.p-columnSingle__body .wp-block-button {
  text-align: center;
}

.p-columnSingle__body .wp-block-buttons {
  margin-block-start: 1rem;
  text-align: center;
}

.p-columnSingle__body .wp-block-button__link {
  display: inline-grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  min-width: 16.875rem;
  min-height: 4.5rem;
  padding-block: 0.75rem;
  padding-inline: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-navy);
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  text-align: center;
  transition: opacity var(--duration) ease;
}
.p-columnSingle__body .wp-block-button__link::before {
  content: "";
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-button__link {
    min-width: 15rem;
    min-height: 3rem;
    padding-inline: 0.5rem;
    border-radius: 0.25rem;
    background: var(--color-blue);
    font-size: 0.9375rem;
  }
  .p-columnSingle__body .wp-block-button__link::before {
    width: 1rem;
    height: 1rem;
  }
}

.p-columnSingle__body .wp-block-button__link::after {
  content: "";
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  background: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=") center/contain no-repeat;
  transition: translate var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body .wp-block-button__link::after {
    width: 1rem;
    height: 1rem;
  }
}

@media (any-hover: hover) {
  .p-columnSingle__body .wp-block-button__link:hover {
    opacity: 0.85;
  }
  .p-columnSingle__body .wp-block-button__link:hover::after {
    translate: 2px 0;
  }
}
.p-columnList {
  padding-block: 4rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-columnList {
    padding-block: 2rem 3rem;
  }
}

.p-columnList__list {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  gap: 1.375rem 1.25rem;
}

.p-columnList__item {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: auto auto;
  grid-column: 1/-1;
  row-gap: 0.5rem;
  padding-block-end: 1rem;
  padding-inline-end: 0.625rem;
  border-block-end: 1px solid var(--color-border);
}
@media screen and (max-width: 767px) {
  .p-columnList__item {
    display: block;
    padding-block-end: 0.75rem;
    padding-inline-end: 0;
  }
  .p-columnList__item + .p-columnList__item {
    margin-block-start: 1rem;
  }
}

.p-columnList__link {
  display: contents;
}
@media (any-hover: hover) {
  .p-columnList__link:hover .p-columnList__icon {
    translate: 0.125rem 0;
  }
  .p-columnList__link:hover .p-columnList__item-title {
    color: var(--color-blue);
    text-decoration-color: var(--color-blue);
  }
}
@media screen and (max-width: 767px) {
  .p-columnList__link {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    gap: 0.3125rem 0.5rem;
  }
}

.p-columnList__label {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}

.p-columnList__date {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  color: var(--color-blue);
  font-family: var(--en-font-family);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-columnList__date {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-columnList__item-title {
  position: relative;
  display: -webkit-box;
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  overflow: hidden;
  margin-inline-start: 0.75rem;
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.125rem;
  transition: color var(--duration) var(--ease-in-out), text-decoration-color var(--duration) var(--ease-in-out);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
@media screen and (max-width: 767px) {
  .p-columnList__item-title {
    grid-column: 1/3;
    grid-row: 2;
    margin-inline-start: 0;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnList__icon {
  grid-column: 3;
  grid-row: 2;
  align-self: start;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 2rem;
  height: 2rem;
  background-color: var(--color-navy);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-columnList__icon {
    align-self: center;
    width: 1.25rem;
    height: 1.25rem;
  }
}

.p-columnList__pagination {
  margin-block-start: 3rem;
}
@media screen and (max-width: 767px) {
  .p-columnList__pagination {
    margin-block-start: 2rem;
  }
}

.p-columnList__empty {
  font-size: 1.25rem;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-columnList__empty {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnRelated {
  padding-block: 4rem 5rem;
  background: url("../images/posts-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-columnRelated {
    padding-block: 2rem;
    background: url("../images/posts-bg-sp.webp") var(--bg-cover);
  }
}

.p-columnRelated__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
  margin-block-start: 3.875rem;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__list {
    grid-template-columns: 1fr;
    gap: 1rem 0;
    margin-block-start: 2rem;
  }
}

.p-columnRelated__btn {
  display: flex;
  justify-content: center;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__btn {
    margin-block-start: 2rem;
  }
}

.p-columnRelated__btn .c-btnBack__text {
  color: var(--color-navy);
}

.p-columnRelated__btn-link {
  width: 16.875rem;
  border: none;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__btn-link {
    min-height: 3rem;
  }
}

.p-columnRelated__btn-link .c-btn__text {
  color: var(--color-navy);
}

.p-columnRelated__btn-link .c-btn__icon {
  background-color: var(--color-navy);
}

.p-columnRelated__item {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
  text-decoration: none;
  transition: opacity var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item {
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.08);
  }
}
@media screen and (max-width: 767px) and (any-hover: hover) {
  .p-columnRelated__item:hover .p-columnRelated__item-more-arrow {
    translate: 0.125rem 0;
  }
}
@media (any-hover: hover) {
  .p-columnRelated__item:hover .p-columnRelated__item-img img {
    scale: 1.1;
  }
  .p-columnRelated__item:hover .p-columnRelated__item-more-arrow {
    translate: 0.125rem 0.125rem;
  }
}

.p-columnRelated__item-img {
  overflow: hidden;
  aspect-ratio: 16/9;
}

.p-columnRelated__item-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale var(--duration) ease;
}

.p-columnRelated__item-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding-block: 1rem 1.5rem;
  padding-inline: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-body {
    padding-block: 0.5rem 1rem;
    padding-inline: 0.75rem;
  }
}

.p-columnRelated__item-meta {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-meta {
    row-gap: 0.5rem;
  }
}

.p-columnRelated__item-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  margin-block-start: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-content {
    flex-direction: row;
    column-gap: 0.375rem;
    align-items: center;
  }
}

.p-columnRelated__item-title {
  display: -webkit-box;
  flex: 1;
  overflow: hidden;
  color: var(--color-text);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.5555555556;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-title {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnRelated__item-more {
  display: inline-flex;
  column-gap: 0.375rem;
  align-items: center;
  align-self: flex-end;
  margin-block-start: 1rem;
  padding-block-end: 0.5rem;
  padding-inline: 0.25rem;
  border-block-end: 0.125rem solid var(--color-navy);
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-more {
    display: contents;
  }
}

.p-columnRelated__item-more-text {
  color: var(--color-navy);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-more-text {
    display: none;
  }
}

.p-columnRelated__item-more-arrow {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='17'%20height='17'%20viewBox='0%200%2017%2017'%20fill='none'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M8.33333%201.66667C4.65143%201.66667%201.66667%204.65143%201.66667%208.33333C1.66667%2012.0152%204.65143%2015%208.33333%2015C12.0152%2015%2015%2012.0152%2015%208.33333C15%204.65143%2012.0152%201.66667%208.33333%201.66667ZM0%208.33333C0%203.73096%203.73096%200%208.33333%200C12.9357%200%2016.6667%203.73096%2016.6667%208.33333C16.6667%2012.9357%2012.9357%2016.6667%208.33333%2016.6667C3.73096%2016.6667%200%2012.9357%200%208.33333ZM6.91074%205.24408C7.23618%204.91864%207.76382%204.91864%208.08926%205.24408L10.5893%207.74408C10.9147%208.06951%2010.9147%208.59715%2010.5893%208.92259L8.08926%2011.4226C7.76382%2011.748%207.23618%2011.748%206.91074%2011.4226C6.58531%2011.0972%206.58531%2010.5695%206.91074%2010.2441L8.82149%208.33333L6.91074%206.42259C6.58531%206.09715%206.58531%205.56951%206.91074%205.24408Z'%20fill='%23003367'%20/%3e%3c/svg%3e") center/contain no-repeat;
  translate: 0 0.125rem;
  transition: translate var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-columnRelated__item-more-arrow {
    width: 1.125rem;
    height: 1.125rem;
    translate: 0 0;
  }
}

.p-columnSidebar__cta {
  position: sticky;
  top: calc(var(--header-height) + 1.25rem);
  height: fit-content;
  overflow: hidden;
  padding-block: 1rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: url("../images/sidebar-cta-bg.webp") center/cover no-repeat;
}

.p-columnSidebar__cta-head {
  padding-block: 0.5rem;
  padding-inline: 1rem;
  background: var(--color-navy);
}

.p-columnSidebar__cta-heading {
  color: var(--color-white);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-columnSidebar__cta-heading {
    font-size: 1.125rem;
  }
}

.p-columnSidebar__cta-accent {
  color: #fffc98;
}

.p-columnSidebar__cta-features {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  margin-block-start: 0.5rem;
  margin-inline: 1rem;
}

.p-columnSidebar__cta-feature {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  padding-block: 0.5rem;
  padding-inline: 1.1875rem;
  background: var(--color-white);
  color: var(--color-navy);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
}
.p-columnSidebar__cta-feature::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%3e%3cg%20clip-path='url(%23clip0_4002_1319)'%3e%3cpath%20d='M12%200C5.37%200%200%205.37%200%2012C0%2018.63%205.37%2024%2012%2024C18.63%2024%2024%2018.63%2024%2012C23.99%205.38%2018.62%200%2012%200ZM12%2021.98C6.49%2021.98%202.02%2017.51%202.02%2012C2.02%206.49%206.49%202.02%2012%202.02C17.51%202.02%2021.98%206.49%2021.98%2012C21.98%2017.51%2017.51%2021.98%2012%2021.98Z'%20fill='%23003367'%20/%3e%3cpath%20d='M11.02%2012.67L9.10001%2010.6L7.13%2012.43L10.04%2015.57C10.29%2015.84%2010.65%2016%2011.03%2016C11.41%2016%2011.76%2015.84%2012.02%2015.57L16.89%2010.28L14.91%208.45996L11.03%2012.68L11.02%2012.67Z'%20fill='%23003367'%20/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4002_1319'%3e%3crect%20width='24'%20height='24'%20fill='white'%20/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") center/contain no-repeat;
}

.p-columnSidebar__cta-mark {
  background: linear-gradient(to top, #fffc98 12px, transparent 12px);
  color: inherit;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}

.p-columnSidebar__cta-buttons {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  margin-block-start: 1rem;
  margin-inline: 1rem;
}

.p-columnSidebar__cta-btn {
  display: flex;
  column-gap: 0.125rem;
  justify-content: center;
  align-items: center;
  min-height: 5rem;
  padding-block: 0.75rem;
  padding-inline: 0.5rem;
  border: 2px solid var(--color-white);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  line-height: 1.1;
  text-align: center;
  text-decoration: none;
}

.p-columnSidebar__cta-btn--blue {
  position: relative;
  background: transparent;
}
.p-columnSidebar__cta-btn--blue::before, .p-columnSidebar__cta-btn--blue::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-columnSidebar__cta-btn--blue::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-columnSidebar__cta-btn--blue::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-columnSidebar__cta-btn--blue > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-columnSidebar__cta-btn--blue:hover::before {
    opacity: 0;
  }
  .p-columnSidebar__cta-btn--blue:hover::after {
    opacity: 1;
  }
}

.p-columnSidebar__cta-btn--orange {
  position: relative;
  background: transparent;
}
.p-columnSidebar__cta-btn--orange::before, .p-columnSidebar__cta-btn--orange::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-columnSidebar__cta-btn--orange::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-columnSidebar__cta-btn--orange::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-columnSidebar__cta-btn--orange > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-columnSidebar__cta-btn--orange:hover::before {
    opacity: 0;
  }
  .p-columnSidebar__cta-btn--orange:hover::after {
    opacity: 1;
  }
}

.p-columnSidebar__cta-btn-text {
  flex: 1;
  margin-inline-start: 0.625rem;
  text-align: center;
}

.p-columnSidebar__cta-btn-arrow {
  display: block;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=") center/contain no-repeat;
}

.p-columnSidebar__latest {
  margin-block-start: 1.875rem;
}

.p-columnSidebar__latest-heading {
  padding-block-end: 0.1875rem;
  border-block-end: 2px solid var(--color-navy);
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
}

.p-columnSidebar__latest-list {
  display: flex;
  flex-direction: column;
}

.p-columnSidebar__latest-item {
  border-block-end: 0.0625rem solid rgba(204, 204, 204, 0.8);
}

.p-columnSidebar__latest-link {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 1rem;
  align-items: center;
  padding-block: 0.9375rem;
  text-decoration: none;
}
@media (any-hover: hover) {
  .p-columnSidebar__latest-link:hover .p-columnSidebar__latest-thumb img {
    scale: 1.02;
  }
  .p-columnSidebar__latest-link:hover .p-columnSidebar__latest-arrow {
    translate: 0.125rem 0;
  }
}

.p-columnSidebar__latest-thumb {
  flex-shrink: 0;
  overflow: hidden;
  width: 6.25rem;
  height: 4.625rem;
}

.p-columnSidebar__latest-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale var(--duration) ease;
}

.p-columnSidebar__latest-body {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.p-columnSidebar__latest-date {
  display: flex;
  column-gap: 0.25rem;
  align-items: center;
  color: #999;
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
}
.p-columnSidebar__latest-date::before {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%3e%3cg%20clip-path='url(%23clip0_4008_2605)'%3e%3cpath%20d='M8.5097%205.63089H6.6601C6.60043%205.52648%206.51094%205.43698%206.41398%205.37732V2.36426C6.41398%202.15544%206.24245%201.9839%206.03362%201.9839C5.8248%201.9839%205.65326%202.15544%205.65326%202.36426V5.37732C5.31019%205.58614%205.20578%206.04108%205.41461%206.38415C5.62343%206.72722%206.07837%206.83163%206.42144%206.62281C6.51094%206.56314%206.59298%206.48856%206.65264%206.39907H8.52461C8.73344%206.39907%208.90497%206.22753%208.90497%206.01871C8.90497%205.80988%208.73344%205.63835%208.52461%205.63835M6.03362%206.21943e-05C2.71479%20-0.0148539%200.0149783%202.65513%206.21943e-05%205.9665C-0.0148539%209.27787%202.65513%2011.9777%205.9665%2012.0001C9.27787%2012.015%2011.9777%209.345%2012.0001%206.03362C12.0001%206.02617%2012.0001%206.01125%2012.0001%206.00379C12.0075%202.69242%209.33754%200.00752024%206.03362%206.21943e-05ZM9.44195%209.43449C7.57744%2011.3139%204.53456%2011.3288%202.65513%209.46433C2.64767%209.45687%202.63275%209.44195%202.6253%209.43449C0.738409%207.53269%200.738409%204.46743%202.6253%202.57309C4.48981%200.693661%207.53269%200.678745%209.41212%202.54326C9.41958%202.55071%209.43449%202.56563%209.44195%202.57309C11.3214%204.47489%2011.3214%207.53269%209.44195%209.43449Z'%20fill='%23999899'%20/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4008_2605'%3e%3crect%20width='12'%20height='12'%20fill='white'%20/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") center/contain no-repeat;
}

.p-columnSidebar__latest-body-bottom {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}

.p-columnSidebar__latest-title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: var(--color-blue);
  font-size: 1rem;
  font-weight: var(--fw-regular);
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}

.p-columnSidebar__latest-arrow {
  display: block;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='17'%20height='17'%20viewBox='0%200%2017%2017'%20fill='none'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M8.33333%201.66667C4.65143%201.66667%201.66667%204.65143%201.66667%208.33333C1.66667%2012.0152%204.65143%2015%208.33333%2015C12.0152%2015%2015%2012.0152%2015%208.33333C15%204.65143%2012.0152%201.66667%208.33333%201.66667ZM0%208.33333C0%203.73096%203.73096%200%208.33333%200C12.9357%200%2016.6667%203.73096%2016.6667%208.33333C16.6667%2012.9357%2012.9357%2016.6667%208.33333%2016.6667C3.73096%2016.6667%200%2012.9357%200%208.33333ZM6.91074%205.24408C7.23618%204.91864%207.76382%204.91864%208.08926%205.24408L10.5893%207.74408C10.9147%208.06951%2010.9147%208.59715%2010.5893%208.92259L8.08926%2011.4226C7.76382%2011.748%207.23618%2011.748%206.91074%2011.4226C6.58531%2011.0972%206.58531%2010.5695%206.91074%2010.2441L8.82149%208.33333L6.91074%206.42259C6.58531%206.09715%206.58531%205.56951%206.91074%205.24408Z'%20fill='%23003367'%20/%3e%3c/svg%3e") center/contain no-repeat;
  transition: translate var(--duration) ease;
}

.p-columnSingle {
  position: relative;
  padding-block: 5rem;
  overflow-x: clip;
}
.p-columnSingle::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  width: min(120rem, 100vw);
  height: 100vh;
  background: url("../images/product-bg.webp") var(--bg-cover);
  pointer-events: none;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-columnSingle {
    padding-block: 2rem;
  }
  .p-columnSingle::before {
    position: absolute;
    top: auto;
    bottom: 0;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1;
  }
}

.p-columnSingle__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18.75rem;
  column-gap: 1.9375rem;
  align-items: start;
  max-width: calc(62.9375rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__inner {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-columnSingle__sidebar {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__sidebar {
    display: none;
  }
}

.p-single__title {
  color: var(--color-text);
  font-size: 2.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-single__title {
    font-size: 1.375rem;
    line-height: 1.2727272727;
  }
}

.p-single__metaTop {
  display: flex;
  column-gap: 1rem;
  justify-content: space-between;
  align-items: start;
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-single__metaTop {
    column-gap: 0.5rem;
    margin-block-start: 1rem;
  }
}

.p-columnSingle__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}

.p-columnSingle__metaTimeList {
  margin-block-start: 0.25rem;
}

.p-columnSingle__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  margin-block-start: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tags {
    column-gap: 0.75rem;
    margin-block-start: 0.5rem;
  }
}

.p-columnSingle__tag {
  color: var(--color-muted);
  font-family: var(--en-font-family);
  font-size: 1rem;
  font-weight: var(--fw-medium);
  text-decoration: none;
  transition: opacity var(--duration) var(--ease);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tag {
    font-size: 0.75rem;
  }
}

@media (any-hover: hover) {
  .p-columnSingle__tag:hover {
    opacity: 0.8;
  }
}
.p-columnSingle__thumb {
  margin-block-start: 1.5rem;
}
.p-columnSingle__thumb img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__thumb {
    margin-block-start: 0.625rem;
  }
}

.p-columnSingle__body {
  margin-block-start: 2rem;
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__body {
    margin-block-start: 1rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnSingle__back {
  display: flex;
  justify-content: center;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__back {
    margin-block-start: 1.5rem;
  }
}

.p-columnSingle__excerpt {
  margin-block-start: 1.375rem;
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.6666666667;
}
.p-columnSingle__excerpt p + p {
  margin-block-start: 0.25rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt {
    margin-block-start: 0.875rem;
    font-size: 0.9375rem;
    font-weight: var(--fw-regular);
    line-height: 1.7333333333;
  }
}

.p-columnSingle__mainContent-lead {
  margin-block-start: 2rem;
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.4444444444;
}
.p-columnSingle__mainContent-lead p + p {
  margin-block-start: 0.25rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__mainContent-lead {
    margin-block-start: 1.25rem;
    font-size: 0.9375rem;
    font-weight: var(--fw-regular);
    line-height: 1.6;
  }
}

.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"]),
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"]) {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.75rem, transparent 0.75rem);
  background-color: transparent !important;
  color: var(--color-text) !important;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"]),
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"]) {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="000000"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="000000"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--black) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="000000"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="000000"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--black) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=abb8c3],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=abb8c3] {
  background-image: linear-gradient(to top, var(--wp--preset--color--cyan-bluish-gray) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=abb8c3],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=abb8c3] {
    background-image: linear-gradient(to top, var(--wp--preset--color--cyan-bluish-gray) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=ffffff],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=ffffff] {
  background-image: linear-gradient(to top, var(--wp--preset--color--white) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=ffffff],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=ffffff] {
    background-image: linear-gradient(to top, var(--wp--preset--color--white) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=f78da7],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=f78da7] {
  background-image: linear-gradient(to top, var(--wp--preset--color--pale-pink) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=f78da7],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=f78da7] {
    background-image: linear-gradient(to top, var(--wp--preset--color--pale-pink) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=cf2e2e],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=cf2e2e] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-red) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=cf2e2e],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=cf2e2e] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-red) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=ff6900],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=ff6900] {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-orange) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=ff6900],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=ff6900] {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-orange) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=fcb900],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=fcb900] {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*=fcb900],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*=fcb900] {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="7bdcb5"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="7bdcb5"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--light-green-cyan) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="7bdcb5"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="7bdcb5"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--light-green-cyan) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="00d084"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="00d084"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-green-cyan) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="00d084"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="00d084"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-green-cyan) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="8ed1fc"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="8ed1fc"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--pale-cyan-blue) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="8ed1fc"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="8ed1fc"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--pale-cyan-blue) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="0693e3"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="0693e3"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-cyan-blue) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="0693e3"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="0693e3"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-cyan-blue) 0.5rem, transparent 0.5rem);
  }
}
.p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="9b51e0"],
.p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="9b51e0"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-purple) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__excerpt mark[style]:not([style*="rgba(0"])[style*="9b51e0"],
  .p-columnSingle__mainContent-lead mark[style]:not([style*="rgba(0"])[style*="9b51e0"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-purple) 0.5rem, transparent 0.5rem);
  }
}

.p-columnBanner {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  margin-block-start: 1.875rem;
  padding-block: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: url("../images/cta-bg.webp") center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  .p-columnBanner {
    padding-block: 1rem;
    border-radius: 0.5rem;
    background: url("../images/sidebar-cta-bg.webp") center/cover no-repeat;
  }
}

.p-columnBanner__head {
  padding-block: 0.75rem;
  padding-inline: 5rem;
  background: var(--color-navy);
}
@media screen and (max-width: 767px) {
  .p-columnBanner__head {
    padding-block: 0.5rem;
    padding-inline: 1rem;
  }
}

.p-columnBanner__heading {
  color: var(--color-white);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  line-height: 1.375;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__heading {
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }
}

.p-columnBanner__heading-accent {
  color: #fffc98;
}

.p-columnBanner__features {
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
  margin-block-start: 1.5rem;
  padding-inline: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__features {
    row-gap: 0.5rem;
    margin-block-start: 0.5rem;
    padding-inline: 1rem;
  }
}

.p-columnBanner__feature {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  padding-block: 0.75rem;
  padding-inline: 1rem;
  background: var(--color-white);
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  line-height: 1.4285714286;
}
.p-columnBanner__feature::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%3e%3cg%20clip-path='url(%23clip0_4002_1319)'%3e%3cpath%20d='M12%200C5.37%200%200%205.37%200%2012C0%2018.63%205.37%2024%2012%2024C18.63%2024%2024%2018.63%2024%2012C23.99%205.38%2018.62%200%2012%200ZM12%2021.98C6.49%2021.98%202.02%2017.51%202.02%2012C2.02%206.49%206.49%202.02%2012%202.02C17.51%202.02%2021.98%206.49%2021.98%2012C21.98%2017.51%2017.51%2021.98%2012%2021.98Z'%20fill='%23003367'%20/%3e%3cpath%20d='M11.02%2012.67L9.10001%2010.6L7.13%2012.43L10.04%2015.57C10.29%2015.84%2010.65%2016%2011.03%2016C11.41%2016%2011.76%2015.84%2012.02%2015.57L16.89%2010.28L14.91%208.45996L11.03%2012.68L11.02%2012.67Z'%20fill='%23003367'%20/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4002_1319'%3e%3crect%20width='24'%20height='24'%20fill='white'%20/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__feature::before {
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-columnBanner__feature {
    padding-block: 0.5rem;
    padding-inline: 1rem;
    font-size: 1.125rem;
    line-height: 1.3333333333;
  }
}

.p-columnBanner__mark {
  background: linear-gradient(to top, #fffc98 12px, transparent 12px);
  color: inherit;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__mark {
    background: linear-gradient(to top, #fffc98 8px, transparent 8px);
  }
}

.p-columnBanner__buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1rem;
  margin-block-start: 1.5rem;
  padding-inline: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__buttons {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.5rem 0;
    margin-block-start: 1rem;
    padding-inline: 1rem;
  }
}

.p-columnBanner__btn {
  display: flex;
  column-gap: 0.125rem;
  align-items: center;
  min-height: 5rem;
  padding-block: 0.4375rem 0.625rem;
  padding-inline: 1rem 0.375rem;
  border: 0.125rem solid var(--color-white);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  color: var(--color-white);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: var(--lh-normal);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__btn {
    padding-inline: 1rem 0.25rem;
    font-size: 1.25rem;
  }
}

.p-columnBanner__btn--blue {
  position: relative;
  background: transparent;
}
.p-columnBanner__btn--blue::before, .p-columnBanner__btn--blue::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-columnBanner__btn--blue::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-columnBanner__btn--blue::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-columnBanner__btn--blue > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-columnBanner__btn--blue:hover::before {
    opacity: 0;
  }
  .p-columnBanner__btn--blue:hover::after {
    opacity: 1;
  }
}

.p-columnBanner__btn--orange {
  position: relative;
  background: transparent;
}
.p-columnBanner__btn--orange::before, .p-columnBanner__btn--orange::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-columnBanner__btn--orange::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-columnBanner__btn--orange::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-columnBanner__btn--orange > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-columnBanner__btn--orange:hover::before {
    opacity: 0;
  }
  .p-columnBanner__btn--orange:hover::after {
    opacity: 1;
  }
}

.p-columnBanner__btn-text {
  flex: 1;
  margin-inline-start: 0.875rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-columnBanner__btn-text {
    margin-inline-start: 0;
  }
}

.p-columnBanner__btn-arrow {
  display: block;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=") center/contain no-repeat;
  transition: translate var(--duration) ease;
}

.p-columnSingle__toc {
  margin-block-start: 2rem;
}

.p-columnSingle__tocDetails {
  overflow: hidden;
  background: #f7f7f7;
}

.p-columnSingle__tocDetails::details-content {
  content-visibility: unset;
  display: block grid;
}

@media (prefers-reduced-motion: no-preference) {
  .p-columnSingle__tocDetails::details-content {
    transition-duration: 300ms;
    transition-property: grid-template-rows;
  }
}
.p-columnSingle__tocDetails:not([open])::details-content {
  grid-template-rows: 0fr;
}

.p-columnSingle__tocDetails[open]::details-content {
  grid-template-rows: 1fr;
}

.p-columnSingle__tocSummary {
  display: flex;
  column-gap: 0.75rem;
  justify-content: space-between;
  align-items: center;
  min-height: 4rem;
  padding-inline: 1.5rem;
  cursor: pointer;
}
.p-columnSingle__tocSummary::-webkit-details-marker {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocSummary {
    min-height: 2.875rem;
    padding-inline: 1rem;
  }
}

@media (any-hover: hover) {
  .p-columnSingle__tocSummary:hover {
    opacity: 0.85;
  }
}
.p-columnSingle__tocLabel {
  color: var(--color-text);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocLabel {
    font-size: 1.125rem;
  }
}

.p-columnSingle__tocRight {
  display: flex;
  flex-shrink: 0;
  column-gap: 0.5rem;
  align-items: center;
}

.p-columnSingle__tocClose {
  display: none;
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: var(--fw-regular);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocClose {
    font-size: 0.625rem;
  }
}

.p-columnSingle__tocDetails[open] .p-columnSingle__tocClose {
  display: block;
}

.p-columnSingle__tocIcon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-text);
  rotate: 90deg;
  transition: rotate 0.3s ease;
}
.p-columnSingle__tocIcon svg {
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocIcon {
    width: 1.125rem;
    height: 1.125rem;
  }
}

.p-columnSingle__tocDetails[open] .p-columnSingle__tocIcon {
  rotate: -90deg;
}

.p-columnSingle__tocContent {
  overflow: hidden;
}

.p-columnSingle__tocList {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  padding-block: 0.3125rem 2rem;
  padding-inline: 1.5rem;
  counter-reset: toc-h2;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocList {
    row-gap: 1rem;
    padding-block: 0.25rem 1.5rem;
    padding-inline: 1rem;
  }
}

.p-columnSingle__tocItem {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  counter-increment: toc-h2;
}

.p-columnSingle__tocChildList {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  padding-inline-start: 2.375rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocChildList {
    row-gap: 0.25rem;
    padding-inline-start: 1.5rem;
  }
}

.p-columnSingle__tocChildItem {
  display: flex;
}

.p-columnSingle__tocLink {
  display: inline-flex;
  align-items: center;
  color: var(--color-text);
  text-decoration: none;
  transition: color var(--duration) ease;
}

@media (any-hover: hover) {
  .p-columnSingle__tocLink:hover {
    color: var(--color-navy);
  }
}
.p-columnSingle__tocLink--h2 {
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.2222222222;
}
.p-columnSingle__tocLink--h2::before {
  content: counter(toc-h2) ". ";
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocLink--h2 {
    font-size: 1rem;
  }
}

.p-columnSingle__tocLink--h3 {
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.2222222222;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__tocLink--h3 {
    font-size: 0.875rem;
    font-weight: var(--fw-medium);
    line-height: 1.4285714286;
  }
}

.p-columnSingle__archiveLink {
  display: grid;
  grid-template-columns: 10rem minmax(0, 1fr);
  column-gap: 1rem;
  align-items: stretch;
  margin-block-start: 2rem;
  padding: 1rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__archiveLink {
    grid-template-columns: 7.5rem minmax(0, 1fr);
    column-gap: 0.75rem;
    margin-block-start: 1rem !important;
    padding-block: 0.75rem;
    padding-inline: 0.75rem 1.125rem;
  }
  .p-columnSingle__archiveLink + h3 {
    margin-block-start: 1.5rem;
  }
}

@media (any-hover: hover) {
  .p-columnSingle__archiveLink:hover .p-columnSingle__archiveLink-label {
    opacity: 0.85;
  }
  .p-columnSingle__archiveLink:hover img {
    scale: 1.05;
  }
  .p-columnSingle__archiveLink:hover .p-columnSingle__archiveLink-arrow {
    translate: 2px 0;
  }
}
.p-columnSingle__archiveLink-img {
  overflow: hidden;
}
.p-columnSingle__archiveLink-img img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 160/118;
  object-fit: cover;
  transition: scale var(--duration) ease;
}

.p-columnSingle__archiveLink-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__archiveLink-body {
    flex-direction: row;
    align-items: center;
  }
}

.p-columnSingle__archiveLink-label {
  display: -webkit-box;
  overflow: hidden;
  color: var(--color-link);
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
  white-space: normal;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity var(--duration) ease;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__archiveLink-label {
    font-size: 0.9375rem;
    line-height: 1.4666666667;
  }
}

.p-columnSingle__archiveLink-arrow {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin-block-start: auto;
  margin-inline-start: auto;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='17'%20height='17'%20viewBox='0%200%2017%2017'%20fill='none'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M8.33333%201.66667C4.65143%201.66667%201.66667%204.65143%201.66667%208.33333C1.66667%2012.0152%204.65143%2015%208.33333%2015C12.0152%2015%2015%2012.0152%2015%208.33333C15%204.65143%2012.0152%201.66667%208.33333%201.66667ZM0%208.33333C0%203.73096%203.73096%200%208.33333%200C12.9357%200%2016.6667%203.73096%2016.6667%208.33333C16.6667%2012.9357%2012.9357%2016.6667%208.33333%2016.6667C3.73096%2016.6667%200%2012.9357%200%208.33333ZM6.91074%205.24408C7.23618%204.91864%207.76382%204.91864%208.08926%205.24408L10.5893%207.74408C10.9147%208.06951%2010.9147%208.59715%2010.5893%208.92259L8.08926%2011.4226C7.76382%2011.748%207.23618%2011.748%206.91074%2011.4226C6.58531%2011.0972%206.58531%2010.5695%206.91074%2010.2441L8.82149%208.33333L6.91074%206.42259C6.58531%206.09715%206.58531%205.56951%206.91074%205.24408Z'%20fill='%23003367'%20/%3e%3c/svg%3e") center/contain no-repeat;
  transition: translate var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__archiveLink-arrow {
    width: 1rem;
    height: 1rem;
    margin-block-start: 0;
    margin-inline-start: 0;
  }
}

.p-columnSingle__archiveLink-error {
  padding: 1rem;
  border: 1px dashed var(--color-border);
  border-radius: 0.625rem;
  background: #f0f4fa;
  color: var(--color-muted);
  font-size: 0.875rem;
  text-align: center;
}

.p-columnSingle__headingBlock {
  margin-block-start: 2rem;
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: #fffeea;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__headingBlock {
    margin-block-start: 1rem;
    padding: 1rem;
    border-radius: 0.5rem;
  }
}

.p-columnSingle__headingBlock-label {
  display: flex;
  column-gap: 1.125rem;
  align-items: center;
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
}
.p-columnSingle__headingBlock-label::before {
  content: "";
  flex-shrink: 0;
  width: 2.375rem;
  height: 2.25rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='22'%20viewBox='0%200%2024%2022'%20fill='none'%3e%3cpath%20d='M13.4189%201.03032C12.6393%20-0.34344%2011.3651%20-0.34344%2010.5855%201.03032L0.33246%2019.1081C-0.447136%2020.4819%200.19267%2021.6039%201.74649%2021.6039H22.2526C23.8117%2021.6039%2024.4462%2020.4819%2023.6666%2019.1081L13.4189%201.03032Z'%20fill='url(%23paint0_linear_4002_1996)'%20/%3e%3cpath%20d='M10.4727%2017.1481C10.4727%2016.2888%2011.1555%2015.5938%2011.9942%2015.5938C12.8383%2015.5938%2013.5211%2016.2888%2013.5211%2017.1427C13.5211%2018.0019%2012.8383%2018.697%2011.9996%2018.697C11.1555%2018.697%2010.4727%2018.0019%2010.4727%2017.1481Z'%20fill='white'%20/%3e%3cpath%20d='M11.9996%205.88086C12.8437%205.88086%2013.5265%206.57595%2013.5265%207.43523V12.6895C13.5265%2013.5487%2012.8437%2014.2438%2011.9996%2014.2438C11.1555%2014.2438%2010.4727%2013.5487%2010.4727%2012.6895V7.43523C10.4727%206.57595%2011.1555%205.88086%2011.9996%205.88086Z'%20fill='white'%20/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_4002_1996'%20x1='0'%20y1='10.8019'%20x2='24'%20y2='10.8019'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23E55F00'%20/%3e%3cstop%20offset='1'%20stop-color='%23FF7C20'%20/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e") center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__headingBlock-label {
    column-gap: 0.5rem;
    font-size: 1.125rem;
  }
  .p-columnSingle__headingBlock-label::before {
    width: 1.5rem;
    height: 1.375rem;
  }
}

.p-columnSingle__headingBlock-body {
  margin-block-start: 1rem;
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__headingBlock-body {
    margin-block-start: 0.75rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnSingle__metaNameWrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  align-items: center;
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__metaNameWrap {
    gap: 0.5625rem 1rem;
    margin-block-start: 0.375rem;
  }
}

.p-columnSingle__metaName {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 0.5rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__metaName {
    gap: 0.375rem 0.5rem;
  }
}

.p-columnSingle__metaName-label {
  display: grid;
  place-items: center;
  width: fit-content;
  padding-block: 0.25rem;
  padding-inline: 0.4375rem;
  border-radius: 0.25rem;
  background: var(--color-muted);
  color: var(--color-white);
  font-family: var(--en-font-family);
  font-size: 1rem;
  font-weight: var(--fw-bold);
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__metaName-label {
    padding-block: 0.25rem;
    padding-inline: 0.3125rem;
    font-size: 0.625rem;
  }
}

.p-columnSingle__metaName-value {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.5rem;
  align-items: center;
}
.p-columnSingle__metaName-value a {
  color: var(--color-link);
  font-family: var(--en-font-family);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity var(--duration) ease;
}
@media (any-hover: hover) {
  .p-columnSingle__metaName-value a:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 767px) {
  .p-columnSingle__metaName-value a {
    font-size: 0.875rem;
  }
}

.p-columnSingle__authorBlocks {
  display: grid;
  row-gap: 1rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlocks {
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-columnSingle__authorBlock {
  padding: 2rem;
  border: 0.0625rem solid var(--color-separator);
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock {
    padding-block: 1rem 1.5rem;
    padding-inline: 1rem;
  }
}

.p-columnSingle__authorBlock-label {
  display: block;
  width: 100%;
  padding-block-end: 0.5rem;
  border-block-end: 0.0625rem solid var(--color-separator);
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.3333333333;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-label {
    padding-block-end: 0.25rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnSingle__authorBlock-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  column-gap: 1.5rem;
}
.p-columnSingle__authorBlock-content:has(.p-columnSingle__authorBlock-img) {
  grid-template-columns: max-content minmax(0, 1fr);
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-content {
    column-gap: 0.5rem;
  }
}

.p-columnSingle__authorBlock-img {
  overflow: hidden;
  width: 6rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 100vmax;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-img {
    width: 4rem;
  }
}

.p-columnSingle__authorBlock-body {
  min-width: 0;
}

.p-columnSingle__authorBlock-name {
  margin-block-start: 0.75rem;
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1.0909090909;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-name {
    margin-block-start: 0.5rem;
    font-size: 1.125rem;
  }
}

.p-columnSingle__authorBlock-position {
  margin-block-start: 0.125rem;
  font-size: 1rem;
  font-weight: var(--fw-regular);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-position {
    margin-block-start: 0.375rem;
    font-size: 0.75rem;
  }
}

.p-columnSingle__authorBlock-text {
  margin-block-start: 1.375rem;
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__authorBlock-text {
    margin-block-start: 0.625rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-columnSingle__socialLinks {
  margin-block-start: 2.25rem;
  padding-block: 1rem;
  background: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__socialLinks {
    margin-block-start: 1rem;
  }
}

.p-columnSingle__socialLinks-list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2rem;
  justify-content: center;
  align-items: center;
}

.p-columnSingle__socialLinks-item {
  display: flex;
}

.p-columnSingle__socialLinks-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: opacity var(--duration) ease;
}
.p-columnSingle__socialLinks-link img {
  display: block;
  object-fit: contain;
}

@media (any-hover: hover) {
  .p-columnSingle__socialLinks-link:hover {
    opacity: 0.7;
  }
}
.p-columnSingle__postNav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2.25rem;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__postNav {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.625rem;
    margin-block-start: 2rem;
  }
}

.p-columnSingle__postNav-item {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 0.5rem;
  align-items: center;
  min-height: 4.5rem;
  padding-block: 0.25rem;
  padding-inline: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: #e7f9ff;
  transition: opacity var(--duration) ease;
}
.p-columnSingle__postNav-item.p-columnSingle__postNav-item--prev .p-columnSingle__postNav-arrow {
  rotate: -180deg;
}
@media (any-hover: hover) {
  .p-columnSingle__postNav-item:hover {
    opacity: 0.8;
  }
  .p-columnSingle__postNav-item:hover.p-columnSingle__postNav-item--prev .p-columnSingle__postNav-arrow {
    translate: -0.125rem 0;
  }
  .p-columnSingle__postNav-item:hover .p-columnSingle__postNav-arrow {
    translate: 0.125rem 0;
  }
}
@media screen and (max-width: 767px) {
  .p-columnSingle__postNav-item {
    column-gap: 0.4375rem;
    width: 74%;
    min-height: 3rem;
    padding-block: 0.5rem;
    padding-inline: 0.5rem 1rem;
  }
  .p-columnSingle__postNav-item.p-columnSingle__postNav-item--next {
    margin-inline: auto 0;
    padding-inline: 1.25rem 0.5rem;
  }
}

.p-columnSingle__postNav-item--prev {
  grid-template-areas: "arrow title";
}

.p-columnSingle__postNav-item--next {
  grid-template-columns: minmax(0, 1fr) max-content;
  grid-template-areas: "title arrow";
}

.p-columnSingle__postNav-arrow {
  display: block;
  width: 1.125rem;
  height: 1.125rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='17'%20height='17'%20viewBox='0%200%2017%2017'%20fill='none'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M8.33333%201.66667C4.65143%201.66667%201.66667%204.65143%201.66667%208.33333C1.66667%2012.0152%204.65143%2015%208.33333%2015C12.0152%2015%2015%2012.0152%2015%208.33333C15%204.65143%2012.0152%201.66667%208.33333%201.66667ZM0%208.33333C0%203.73096%203.73096%200%208.33333%200C12.9357%200%2016.6667%203.73096%2016.6667%208.33333C16.6667%2012.9357%2012.9357%2016.6667%208.33333%2016.6667C3.73096%2016.6667%200%2012.9357%200%208.33333ZM6.91074%205.24408C7.23618%204.91864%207.76382%204.91864%208.08926%205.24408L10.5893%207.74408C10.9147%208.06951%2010.9147%208.59715%2010.5893%208.92259L8.08926%2011.4226C7.76382%2011.748%207.23618%2011.748%206.91074%2011.4226C6.58531%2011.0972%206.58531%2010.5695%206.91074%2010.2441L8.82149%208.33333L6.91074%206.42259C6.58531%206.09715%206.58531%205.56951%206.91074%205.24408Z'%20fill='%23003367'%20/%3e%3c/svg%3e") center/contain no-repeat;
  transition: translate var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__postNav-arrow {
    width: 0.875rem;
    height: 0.875rem;
  }
}

.p-columnSingle__postNav-title {
  display: -webkit-box;
  grid-area: title;
  overflow: hidden;
  min-width: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  color: var(--color-navy);
  font-size: 1rem;
  font-weight: var(--fw-medium);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-columnSingle__postNav-title {
    font-size: 0.75rem;
    line-height: 1.3333333333;
  }
}

.p-contact {
  position: relative;
  padding-block: 4rem 4.375rem;
}
.p-contact::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -3.4375rem;
  z-index: 1;
  width: 63.75rem;
  height: auto;
  aspect-ratio: 1/1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-contact {
    padding-block: 2rem 1.75rem;
  }
  .p-contact::after {
    bottom: -1.875rem;
    width: 22.5rem;
  }
}

.p-contact__inner {
  position: relative;
  z-index: 2;
}
.p-contact__inner .screen-reader-response {
  display: none;
}

.p-contact__form {
  max-width: 52.5625rem;
  margin-inline: auto;
}

.p-contact__body {
  display: flex;
  flex-direction: column;
  row-gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-contact__body {
    row-gap: 1rem;
  }
}

.p-contact__row {
  display: grid;
  grid-template-columns: 19.4375rem minmax(0, 1fr);
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__row {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.5rem;
    align-items: start;
  }
}

.p-contact__row--start,
.p-contact__row--start2 {
  align-items: start;
}

.p-contact__label {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}

.p-contact__row--start .p-contact__label {
  padding-block-start: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-contact__row--start .p-contact__label {
    padding-block-start: 0;
  }
}

.p-contact__row--start2 .p-contact__label {
  padding-block-start: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-contact__row--start2 .p-contact__label {
    padding-block-start: 0;
  }
}

.p-contact__label-text {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1.2727272727;
  letter-spacing: 0.03em;
}
.p-contact__label-text:has(.p-contact__link) {
  font-size: 1.25rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact__label-text:has(.p-contact__link) {
    font-size: 0.9375rem;
    letter-spacing: 0.03em;
  }
}
@media screen and (max-width: 767px) {
  .p-contact__label-text {
    font-size: 0.9375rem;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-contact__link {
  color: var(--color-link);
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-contact__link:hover {
    text-decoration: none;
  }
}

.p-contact__badge {
  display: inline-flex;
  align-items: center;
  padding-block: 0.3125rem;
  padding-inline: 0.5rem;
  border-radius: 0.25rem;
  color: var(--color-white);
  font-size: 1rem;
  font-weight: var(--fw-bold);
  line-height: 1.25;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact__badge {
    padding-block: 0.25rem;
    padding-inline: 0.25rem;
    font-size: 0.75rem;
    line-height: 1.3333333333;
    letter-spacing: 0.03em;
  }
}

.p-contact__badge--required {
  background: var(--gradient-catalog);
}

.p-contact__badge--optional {
  background: var(--color-badge-optional);
}

.p-contact__field {
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

.p-contact__field .wpcf7-form-control-wrap {
  display: block;
}

.p-contact__input,
.p-contact__textarea {
  width: 100%;
  padding-block: 1rem;
  padding-inline: 1.4375rem;
  border: 0.0625rem solid var(--color-form-border);
  border-radius: 0.5rem;
  background-color: var(--color-white);
  color: var(--color-text);
  font-family: var(--base-font-family);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.p-contact__input::placeholder,
.p-contact__textarea::placeholder {
  color: var(--color-muted);
}
.p-contact__input:focus-visible,
.p-contact__textarea:focus-visible {
  outline: 0.125rem solid var(--color-navy);
  outline-offset: 0.0625rem;
}
@media screen and (max-width: 767px) {
  .p-contact__input,
  .p-contact__textarea {
    padding-block: 0.5rem;
    padding-inline: 1rem;
    border-radius: 0.25rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-contact__input {
  height: 4rem;
}
@media screen and (max-width: 767px) {
  .p-contact__input {
    height: 2.5rem;
  }
}

.p-contact__textarea {
  min-height: 11.25rem;
  resize: vertical;
}
@media screen and (max-width: 767px) {
  .p-contact__textarea {
    min-height: 6.25rem;
  }
}

.p-contact__file {
  width: 100%;
  color: var(--color-muted);
  font-size: 1rem;
  font-weight: var(--fw-medium);
}
.p-contact__file::file-selector-button {
  width: 10rem;
  height: 3rem;
  margin-inline-end: 1rem;
  border: none;
  border-radius: 0.5rem;
  background: var(--gradient-blue);
  color: var(--color-white);
  font-family: var(--base-font-family);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  transition: opacity var(--duration) var(--ease-in-out);
}
@media (any-hover: hover) {
  .p-contact__file::file-selector-button:hover {
    opacity: 0.85;
  }
}
@media screen and (max-width: 767px) {
  .p-contact__file {
    font-size: 0.9375rem;
  }
  .p-contact__file::file-selector-button {
    width: 8.75rem;
    height: 2.5rem;
    border-radius: 0.25rem;
    font-size: 0.9375rem;
    font-weight: var(--fw-medium);
  }
}

.p-contact__note {
  color: var(--color-muted);
  font-size: 1rem;
  font-weight: var(--fw-medium);
  line-height: 1.5;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact__note {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-contact__checkbox {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.5rem;
  /* stylelint-disable-next-line declaration-block-no-redundant-longhand-properties -- gap ショートハンドは禁止（rules/scss.md） */
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .p-contact__checkbox {
    grid-template-columns: 1fr;
    row-gap: 0.75rem;
  }
}

.p-contact__checkbox .wpcf7-list-item {
  display: block;
  margin-inline-start: 0;
}

.p-contact__checkbox label {
  display: flex;
  column-gap: 0.9375rem;
  align-items: center;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-contact__checkbox label {
    column-gap: 0.5rem;
  }
}

.p-contact__checkbox input[type=checkbox] {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border: 0.0625rem solid var(--color-badge-optional);
  border-radius: 0.25rem;
  background-color: var(--color-white);
  appearance: none;
  transition: background-color var(--duration) var(--ease-in-out);
}
.p-contact__checkbox input[type=checkbox]:checked {
  border-color: var(--color-navy);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-11'/%3E%3C/svg%3E");
  background-position: center;
  background-size: 1.25rem;
  background-repeat: no-repeat;
  background-color: var(--color-navy);
}
.p-contact__checkbox input[type=checkbox]:focus-visible {
  outline: 0.125rem solid var(--color-navy);
  outline-offset: 0.125rem;
}
@media screen and (max-width: 767px) {
  .p-contact__checkbox input[type=checkbox] {
    width: 1.5rem;
    height: 1.5rem;
  }
  .p-contact__checkbox input[type=checkbox]:checked {
    background-size: 0.9375rem;
  }
}

.p-contact__checkbox .wpcf7-list-item-label {
  color: var(--color-text);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.5555555556;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact__checkbox .wpcf7-list-item-label {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-contact__row--consent {
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__row--consent {
    row-gap: 1rem;
    justify-items: center;
    margin-block-start: -0.25rem;
  }
}

.p-contact .wpcf7-acceptance .wpcf7-list-item {
  margin-inline-start: 0;
}

.p-contact .wpcf7-acceptance label {
  display: inline-flex;
  column-gap: 0.9375rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact .wpcf7-acceptance label {
    column-gap: 0.5rem;
  }
}

.p-contact__acceptance {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border: 0.0625rem solid var(--color-badge-optional);
  border-radius: 0.25rem;
  background-color: var(--color-white);
  appearance: none;
  transition: background-color var(--duration) var(--ease-in-out);
}
.p-contact__acceptance:checked {
  border-color: var(--color-navy);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-11'/%3E%3C/svg%3E");
  background-position: center;
  background-size: 1.25rem;
  background-repeat: no-repeat;
  background-color: var(--color-navy);
}
.p-contact__acceptance:focus-visible {
  outline: 0.125rem solid var(--color-navy);
  outline-offset: 0.125rem;
}
@media screen and (max-width: 767px) {
  .p-contact__acceptance {
    width: 1.5rem;
    height: 1.5rem;
  }
  .p-contact__acceptance:checked {
    background-size: 0.9375rem;
  }
}

.p-contact .wpcf7-acceptance .wpcf7-list-item-label {
  color: var(--color-text);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.5555555556;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact .wpcf7-acceptance .wpcf7-list-item-label {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-contact__submit-wrap {
  display: flex;
  justify-content: center;
  margin-block-start: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-contact__submit-wrap {
    margin-block-start: 0.75rem;
  }
}

.p-contact__submit {
  width: 25rem;
  height: 4.5rem;
  border: none;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e"), var(--gradient-catalog);
  background-position: right 1.75rem center, center;
  background-size: 1.25rem, cover;
  background-repeat: no-repeat, no-repeat;
  color: var(--color-white);
  font-family: var(--base-font-family);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.03em;
}
.p-contact__submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
@media (any-hover: hover) {
  .p-contact__submit:hover:not(:disabled) {
    background-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e"), var(--gradient-catalog-hover);
  }
}
@media screen and (max-width: 767px) {
  .p-contact__submit {
    width: 15rem;
    height: 4rem;
    max-width: none;
    background-position: right 1rem center, center;
    font-size: 1.125rem;
    letter-spacing: normal;
  }
}

.p-contact__form .wpcf7-not-valid-tip {
  display: none !important;
  margin-block-start: 0.25rem;
  color: var(--color-error);
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
}

.p-contact__form.is-show .wpcf7-not-valid-tip {
  display: block !important;
}

.wpcf7-response-output {
  display: none;
}

.wpcf7-spinner {
  display: none;
}

body.error404 {
  display: flex;
  flex-direction: column;
  min-block-size: 100dvh;
}
body.error404 .p-lowerPage-fv {
  margin-block-start: 0;
}

.l-main--error .p-error {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.p-error {
  padding-block: 4rem;
}
.p-error::before, .p-error::after {
  content: "";
  display: block;
}
.p-error::before {
  flex-grow: 2;
}
.p-error::after {
  flex-grow: 3;
}
@media screen and (max-width: 767px) {
  .p-error {
    padding-block: 2rem 3rem;
  }
}

.p-error__inner {
  max-width: calc(47.5rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
  text-align: center;
}

.p-error__code {
  margin-block-end: 2rem;
  color: var(--color-navy);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.625;
}
@media screen and (max-width: 767px) {
  .p-error__code {
    margin-block-end: 1.25rem;
    font-size: 1.25rem;
  }
}

.p-error__text {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .p-error__text {
    font-size: 1rem;
    text-align: left;
  }
}

.p-error__btn-wrap {
  display: flex;
  justify-content: center;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-error__btn-wrap {
    margin-block-start: 1.5rem;
  }
}

.p-fixed-navi {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-fixed-navi {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    translate: 0 100%;
    transition: opacity var(--duration) var(--ease-in-out), visibility var(--duration) var(--ease-in-out), translate var(--duration) var(--ease-in-out);
    z-index: 30;
  }
  .p-fixed-navi.is-visible {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    translate: 0 0;
  }
}

.p-fixed-navi__inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 0;
}

.p-fixed-navi__btn {
  display: flex;
  column-gap: 0.5rem;
  justify-content: end;
  align-items: center;
  width: 100%;
  min-height: 4rem;
  margin-block-start: 0.25rem;
  padding-block: 0.5rem;
  padding-inline: 0.4375rem;
  border-radius: 0;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact {
  position: relative;
  background: transparent;
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact::before, .p-fixed-navi__btn.p-fixed-navi__btn--contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-fixed-navi__btn.p-fixed-navi__btn--contact:hover::before {
    opacity: 0;
  }
  .p-fixed-navi__btn.p-fixed-navi__btn--contact:hover::after {
    opacity: 1;
  }
}
.p-fixed-navi__btn.p-fixed-navi__btn--contact .p-fixed-navi__btn-text {
  margin-inline-end: -0.625rem;
}
.p-fixed-navi__btn.p-fixed-navi__btn--catalog {
  column-gap: 0.625rem;
  position: relative;
  background: transparent;
}
.p-fixed-navi__btn.p-fixed-navi__btn--catalog::before, .p-fixed-navi__btn.p-fixed-navi__btn--catalog::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-fixed-navi__btn.p-fixed-navi__btn--catalog::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-fixed-navi__btn.p-fixed-navi__btn--catalog::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-fixed-navi__btn.p-fixed-navi__btn--catalog > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-fixed-navi__btn.p-fixed-navi__btn--catalog:hover::before {
    opacity: 0;
  }
  .p-fixed-navi__btn.p-fixed-navi__btn--catalog:hover::after {
    opacity: 1;
  }
}

.p-fixed-navi__btn-text {
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
}

.p-fixed-navi__btn-icon {
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  background-color: var(--color-white);
}

.p-footer-cta {
  padding-block: 3.75rem 3.625rem;
  background: url("../images/footer-cta-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-footer-cta {
    padding-block: 1.25rem;
    background: url("../images/footer-cta-bg-sp.webp") var(--bg-cover);
  }
}

.p-footer-cta__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .p-footer-cta__items {
    grid-template-columns: 1fr;
    row-gap: 1rem;
  }
}

.p-footer-cta__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: 1.5rem 1.875rem;
  padding-inline: 2rem;
  border: 0.125rem solid var(--color-blue);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-footer-cta__item {
    padding-block: 1.125rem 0.875rem;
    padding-inline: 0.875rem;
    border-radius: 0.5rem;
  }
}

.p-footer-cta__item--contact {
  background-color: var(--color-footer-cta-contact-bg);
}

.p-footer-cta__item--catalog {
  background-color: var(--color-footer-cta-catalog-bg);
}

.p-footer-cta__title {
  display: grid;
  row-gap: 0.25rem;
  justify-items: center;
  color: var(--color-black);
  font-size: 2.5rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
.p-footer-cta__title::after {
  content: "";
  width: 100%;
  height: 0.25rem;
  background: var(--gradient-navy);
}
@media screen and (max-width: 767px) {
  .p-footer-cta__title {
    row-gap: 0.375rem;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
  }
}

.p-footer-cta__text {
  margin-block-start: 2rem;
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .p-footer-cta__text {
    margin-block-start: 1rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    text-align: left;
  }
}

.p-footer-cta__btn {
  display: flex;
  column-gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: 22.5rem;
  min-height: 5.5rem;
  margin-block-start: 1.625rem;
  padding-block: 1rem;
  padding-inline: 0.75rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-footer-cta__btn {
    width: 15rem;
    min-height: 3.5rem;
    margin-block-start: 0.8125rem;
    padding-block: 0.625rem 0.75rem;
    padding-inline: 1rem;
    border-radius: 0.25rem;
  }
}

.p-footer-cta__btn--contact {
  position: relative;
  background: transparent;
}
.p-footer-cta__btn--contact::before, .p-footer-cta__btn--contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-footer-cta__btn--contact::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-footer-cta__btn--contact::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-footer-cta__btn--contact > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-footer-cta__btn--contact:hover::before {
    opacity: 0;
  }
  .p-footer-cta__btn--contact:hover::after {
    opacity: 1;
  }
}

.p-footer-cta__btn--catalog {
  position: relative;
  background: transparent;
}
.p-footer-cta__btn--catalog::before, .p-footer-cta__btn--catalog::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-footer-cta__btn--catalog::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-footer-cta__btn--catalog::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-footer-cta__btn--catalog > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-footer-cta__btn--catalog:hover::before {
    opacity: 0;
  }
  .p-footer-cta__btn--catalog:hover::after {
    opacity: 1;
  }
}

.p-footer-cta__btn-text {
  color: var(--color-white);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .p-footer-cta__btn-text {
    font-size: 1.125rem;
  }
}

.p-footer-cta__btn-icon {
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  margin-block-start: 0.125rem;
  background-color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-footer-cta__btn-icon {
    width: 1rem;
    height: 1rem;
  }
}

.p-footer {
  padding-block: 3.75rem 4rem;
  background-color: var(--color-navy);
}
.p-footer.p-footer--contact, .p-footer.p-footer--thanks {
  padding-block: 1.5rem 1.4375rem;
}
.p-footer.p-footer--contact .p-footer__logo,
.p-footer.p-footer--contact .p-footer__nav, .p-footer.p-footer--thanks .p-footer__logo,
.p-footer.p-footer--thanks .p-footer__nav {
  display: none;
}
.p-footer.p-footer--contact .p-footer__copyright, .p-footer.p-footer--thanks .p-footer__copyright {
  margin-block-start: 0;
}
@media screen and (max-width: 767px) {
  .p-footer {
    padding-block: 1.875rem 3.75rem;
  }
  .p-footer.p-footer--contact {
    padding-block: 1rem;
  }
}

.p-footer__inner {
  padding-inline: 2rem;
}

.p-footer__logo a {
  display: block;
  transition: opacity var(--duration);
}
@media (any-hover: hover) {
  .p-footer__logo a:hover {
    opacity: 0.8;
  }
}
.p-footer__logo img {
  display: block;
  width: 20rem;
  height: 4.4375rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-footer__logo img {
    width: 17.998125rem;
    height: 4rem;
  }
}

.p-footer__nav {
  max-width: 58.75rem;
  margin-block-start: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-footer__nav {
    margin-block-start: 2rem;
  }
}

.p-footer__nav-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-footer__nav-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9375rem 1rem;
  }
}

.p-footer__nav-link {
  display: flex;
  column-gap: 0.5rem;
  justify-content: space-between;
  align-items: center;
  padding-block-end: 0.5rem;
  padding-inline-end: 0.75rem;
  border-block-end: 1px solid var(--color-white);
  color: var(--color-white);
  transition: opacity var(--duration);
}
.p-footer__nav-link:hover .p-footer__nav-icon {
  translate: 0.25rem 0;
}
@media screen and (max-width: 767px) {
  .p-footer__nav-link {
    padding-block-end: 0.5rem;
    padding-inline: 0.375rem 0.25rem;
  }
}

.p-footer__nav-text {
  font-size: 1rem;
  font-weight: var(--fw-medium);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-footer__nav-text {
    font-size: 0.75rem;
    line-height: 1.3333333333;
  }
}

.p-footer__nav-icon {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.125rem;
  height: 1.125rem;
  background-color: var(--color-white);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-footer__nav-icon {
    width: 1rem;
    height: 1rem;
  }
}

.p-footer__copyright {
  margin-block-start: 4rem;
  color: var(--color-white);
  font-family: var(--en-font-family);
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-footer__copyright {
    margin-block-start: 2rem;
    font-size: 0.625rem;
    letter-spacing: 0.03em;
  }
}

.p-header {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
  background: var(--color-white);
}
.p-header.p-header--contact .p-header__nav,
.p-header.p-header--contact .p-header__btns,
.p-header.p-header--contact .p-header__hamburger, .p-header.p-header--thanks .p-header__nav,
.p-header.p-header--thanks .p-header__btns,
.p-header.p-header--thanks .p-header__hamburger {
  display: none;
}
.p-header.p-header--contact .p-header__logo span, .p-header.p-header--thanks .p-header__logo span {
  display: flex;
  align-items: center;
}

.p-header__inner {
  display: flex;
  align-items: center;
  height: var(--header-height);
  max-width: 120rem;
  margin-inline: auto;
  padding-inline: 2rem;
}
@media screen and (max-width: 767px) {
  .p-header__inner {
    padding-inline: 1rem 1.5rem;
  }
}

.p-header__logo {
  flex-shrink: 0;
}
.p-header__logo a {
  display: flex;
  align-items: center;
  transition: opacity var(--duration) var(--ease-in-out);
}
@media (any-hover: hover) {
  .p-header__logo a:hover {
    opacity: 0.8;
  }
}
.p-header__logo img {
  width: 15.75rem;
  height: 3.5rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .p-header__logo img {
    width: 9rem;
    height: 2rem;
  }
}

.p-header__nav {
  display: flex;
  margin-inline: auto 2rem;
}
@media screen and (max-width: 767px) {
  .p-header__nav {
    display: none;
  }
}

.p-header__nav-list {
  display: flex;
  column-gap: 2rem;
  align-items: center;
}

.p-header__nav-link {
  position: relative;
  display: inline-block;
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
}
.p-header__nav-link.p-header__drawer-link-megamenu {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}
.p-header__nav-link::after {
  content: "";
  position: absolute;
  bottom: -0.25rem;
  left: 50%;
  width: 100%;
  height: 0.125rem;
  background: var(--color-navy);
  opacity: 0;
  translate: -50%;
  transition: opacity var(--duration);
}
.p-header__nav-link:hover::after {
  opacity: 1;
}

.p-header__nav-link-megamenu-arrow {
  display: inline-block;
  width: 0.8125rem;
  height: 0.5rem;
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='13'%20height='8'%20viewBox='0%200%2013%208'%20fill='none'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12.524%200.465375C13.1587%201.08587%2013.1587%202.0919%2012.524%202.7124L7.64905%207.47907C7.01445%208.09957%205.98555%208.09957%205.35095%207.47907L0.475952%202.7124C-0.158651%202.0919%20-0.158651%201.08587%200.475952%200.465374C1.11055%20-0.155125%202.13945%20-0.155125%202.77405%200.465374L6.5%204.10853L10.226%200.465375C10.8606%20-0.155125%2011.8894%20-0.155125%2012.524%200.465375Z'%20fill='%230068D0'%20/%3e%3c/svg%3e");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: rotate var(--duration) var(--ease-in-out);
}

.p-header__btns {
  display: flex;
  column-gap: 1rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-header__btns {
    display: none;
  }
}

.p-header__btn {
  display: flex;
  column-gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: 12.5rem;
  height: 3.5rem;
  border-radius: 8px;
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  white-space: nowrap;
}

.p-header__btn--contact {
  position: relative;
  background: transparent;
}
.p-header__btn--contact::before, .p-header__btn--contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-header__btn--contact::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-header__btn--contact::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-header__btn--contact > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-header__btn--contact:hover::before {
    opacity: 0;
  }
  .p-header__btn--contact:hover::after {
    opacity: 1;
  }
}

.p-header__btn--catalog {
  position: relative;
  background: transparent;
}
.p-header__btn--catalog::before, .p-header__btn--catalog::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-header__btn--catalog::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-header__btn--catalog::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-header__btn--catalog > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-header__btn--catalog:hover::before {
    opacity: 0;
  }
  .p-header__btn--catalog:hover::after {
    opacity: 1;
  }
}

.p-header__btn-icon {
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--color-white);
}

.p-header__hamburger {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 1.5rem;
  height: 1rem;
  padding: 0;
  border: none;
  background: transparent;
}
@media screen and (max-width: 767px) {
  .p-header__hamburger {
    display: flex;
    margin-inline-start: auto;
  }
}
.p-header__hamburger span {
  display: block;
  width: 100%;
  height: 2px;
  background: var(--color-black);
  transform-origin: center;
  transition: translate var(--duration), rotate var(--duration), opacity var(--duration);
}

.p-header__hamburger.is-open span:nth-child(1) {
  translate: 0 0.4375rem;
  rotate: 40deg;
}

.p-header__hamburger.is-open span:nth-child(2) {
  opacity: 0;
}

.p-header__hamburger.is-open span:nth-child(3) {
  translate: 0 -0.5rem;
  rotate: -40deg;
}

.p-header__drawer {
  position: fixed;
  top: var(--header-height);
  right: 0;
  overflow-y: auto;
  width: 100%;
  height: calc(100dvh - var(--header-height));
  background: linear-gradient(161deg, #003367 37.5%, #336597 100%);
  translate: 100%;
  transition: translate 0.3s ease;
  z-index: 910;
}
.p-header__drawer.is-open {
  translate: 0;
}

.p-header__drawer-body {
  padding: 2rem;
}

.p-header__drawer-list {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  margin-block-end: 2rem;
}

.p-header__drawer-link {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  min-height: 3rem;
  padding-block: 0.375rem;
  padding-inline: 0.5rem;
  background: var(--color-white);
  font-size: 1.125rem;
  transition: opacity var(--duration);
}
.p-header__drawer-link::before {
  content: "";
  display: block;
  width: 0.25rem;
  height: 2.25rem;
  background: var(--color-navy);
}
.p-header__drawer-link::after {
  content: "";
  display: block;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  margin-inline-start: auto;
  background-color: var(--color-navy);
}
.p-header__drawer-link:hover {
  opacity: 0.8;
}

.p-header__drawer-accordion {
  padding-block: 0.375rem;
  padding-inline: 0.5rem;
  background: var(--color-white);
}
.p-header__drawer-accordion::details-content {
  content-visibility: unset;
  display: block grid;
  overflow: hidden;
}
@media (prefers-reduced-motion: no-preference) {
  .p-header__drawer-accordion::details-content {
    transition-duration: 300ms;
    transition-property: grid-template-rows;
  }
}
.p-header__drawer-accordion:not([open])::details-content {
  grid-template-rows: 0fr;
}
.p-header__drawer-accordion[open]::details-content {
  grid-template-rows: 1fr;
}

.p-header__drawer-accordion-summary {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  min-height: 2.25rem;
  list-style: none;
  font-size: 1.125rem;
  cursor: pointer;
  transition: opacity var(--duration);
}
.p-header__drawer-accordion-summary::-webkit-details-marker {
  display: none;
}
.p-header__drawer-accordion-summary::before {
  content: "";
  display: block;
  width: 0.25rem;
  height: 2.25rem;
  background: var(--color-navy);
}
.p-header__drawer-accordion-summary::after {
  content: "";
  display: block;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  margin-inline-start: auto;
  background-color: var(--color-navy);
  rotate: 90deg;
  transition: rotate var(--duration) var(--ease-in-out);
}
.p-header__drawer-accordion-summary:hover {
  opacity: 0.8;
}

.p-header__drawer-accordion-summary-link {
  display: flex;
  align-items: center;
  align-self: stretch;
}

.p-header__drawer-accordion[open] .p-header__drawer-accordion-summary::after {
  rotate: -90deg;
}

.p-header__drawer-accordion-body {
  min-width: 0;
  min-height: 0;
}

.p-header__drawer-accordion-inner {
  padding-block: 0.5rem 0.625rem;
}

.p-header__drawer-accordion-featured {
  display: grid;
  row-gap: 0.5rem;
}

.p-header__drawer-accordion-card {
  display: grid;
  grid-template-columns: 5rem minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  padding-block-end: 0.5rem;
  border-block-end: 0.0625rem solid var(--color-navy);
}

.p-header__drawer-accordion-card-img {
  aspect-ratio: 80/45;
}
.p-header__drawer-accordion-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-header__drawer-accordion-card-text {
  display: grid;
  row-gap: 0.25rem;
}

.p-header__drawer-accordion-card-title {
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  line-height: var(--lh-normal);
}

.p-header__drawer-accordion-card-subtitle {
  color: var(--color-muted);
  font-size: 0.625rem;
  font-weight: var(--fw-medium);
  line-height: var(--lh-normal);
}

.p-header__drawer-accordion-list {
  display: grid;
  row-gap: 0.75rem;
  padding-block-start: 0.75rem;
}

.p-header__drawer-accordion-link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  padding-block-end: 0.75rem;
  border-block-end: 0.0625rem solid var(--color-navy);
}

.p-header__drawer-accordion-list li:last-child .p-header__drawer-accordion-link {
  padding-block-end: 0;
  border-block-end: none;
}

.p-header__drawer-accordion-link-text {
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  line-height: var(--lh-normal);
}

.p-header__drawer-accordion-arrow {
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1rem;
  height: 1rem;
  background-color: var(--color-navy);
}

.p-header__drawer-btns {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
}

.p-header__drawer-btn {
  display: inline-grid;
  grid-template-columns: max-content 1fr max-content;
  column-gap: 0.5rem;
  align-items: center;
  min-height: 4rem;
  padding-block: 0.625rem;
  padding-inline: 0.5rem;
  border-radius: 4px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.16);
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  text-align: center;
  transition: opacity var(--duration);
  --arrow-width: calc(20 / 16 * 1rem);
  --arrow-height: calc(20 / 16 * 1rem);
}
.p-header__drawer-btn::before {
  content: "";
  display: block;
  width: var(--arrow-width);
  height: var(--arrow-height);
}
.p-header__drawer-btn:hover {
  opacity: 0.85;
}

.p-header__drawer-btn--contact {
  background: var(--gradient-contact);
}

.p-header__drawer-btn--catalog {
  background: var(--gradient-catalog);
}

.p-header__drawer-btn-icon {
  display: block;
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: var(--arrow-width);
  height: var(--arrow-height);
  background-color: var(--color-white);
}

.p-lowerPage-fv {
  margin-block-start: var(--header-height);
  padding-block: 3.875rem 3.75rem;
  background: url("data:image/webp;base64,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") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-lowerPage-fv {
    padding-block: 1.625rem;
    background: url("data:image/webp;base64,UklGRqwCAABXRUJQVlA4IKACAABQKgCdASrQAqAAPm02lkmkIqGhICiAgA2JaW7gwgKZTMYwjbrwor4p4AxYtD+3YwArRK8QuMAupqAmMQuL0yua/tv1yMRD5baZ3U1ATISH/zXMycVsATGMrAJRV/eyZFxCslX1DpNSTVirvfWyHP8P+Q4MebQ8p0x5bDD3p0k2aYTqDZ3YOjhfxRBPK6UefmqZ1NpL/5QxgnQ3GFSMNdSaN6OvYhCE6JEfZUgvVyHfYfepHVIFoEUFk20akcxcYB5yw4ibbJEfZUgvd91zjfeyyNK6fbSRnYznzZ7XbMbbTTJFAiWRzJxkMaaF/gwBHYJBcToMeOVkCPV8Z2ywMmoQweY5REg/MkR9lSC9/lBfWFoO3bUKmdzjlp1TShs7qagJjJ2IQhL2X9CNJ2M6ywpBrq1DL0czetHdJHUOk8HgiQfmL3/5ZGQXv/oqwFyMHfSY5EvndTVQ5SH8AAD+q/r/+rvJ3k6pn/6FaJ6mk8JNmZxVZi4Kts0zK9w1KFl0UsiQNgegouDmJqbn/k85CCknrRan6s2TlNunhtbuBpaQvLuf/YdGm4AckqRHGlJjJxz6JP0glgjPNyoVP2fcsbrPUe7ISXSYPg03N4CHaVyxBHXC0W5aYVE16VFeS/Ewg/YwniTyToQFTLmrIqCmu25/E5qgjgSQIt82ab++AMSOKZZanzayK1omscXuTwAQEwirdvVKDmzCNEyPJ8KeUVoqA+1IFEeFqsB8Zn6rGDJFF2kogMdO/vlAS77JEqEGrfTwC2+IINt7Db2HPFR7FFAgEx54H1NIDchcDgQwy8B52qqog2bCy6IpjgInZe5hrRGdtJlKhnhKWkEA9EOeQwcEm7yCcWpg6MtRdMfHoMNHUBTtibpLrS5bzyTTMwwAAAA=") var(--bg-cover);
  }
}

.p-lowerPage-fv__inner {
  padding-inline: var(--padding-inner);
}

.p-lowerPage-fv__title {
  color: var(--color-white);
  font-size: 4rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  text-align: center;
  text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .p-lowerPage-fv__title {
    font-size: 1.375rem;
    line-height: 1.2727272727;
  }
}

.p-megamenu {
  position: absolute;
  top: 100%;
  left: 0;
  visibility: hidden;
  width: 100%;
  background: var(--gradient-navy);
  opacity: 0;
  transition: opacity var(--duration) var(--ease-in-out), visibility var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-megamenu {
    display: none;
  }
}

.p-header__nav-item--megamenu:hover .p-megamenu, .p-header__nav-item--megamenu:focus-within .p-megamenu {
  visibility: visible;
  opacity: 1;
}
.p-header__nav-item--megamenu:hover .p-header__nav-link-megamenu-arrow, .p-header__nav-item--megamenu:focus-within .p-header__nav-link-megamenu-arrow {
  rotate: 180deg;
}

.p-megamenu__inner {
  display: grid;
  grid-template-columns: 37.3125rem 1fr;
  column-gap: 4.125rem;
  padding-block: 4rem;
}

.p-megamenu__featured {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2.3125rem;
}

.p-megamenu__featured-link {
  display: block;
  color: var(--color-white);
}
@media (any-hover: hover) {
  .p-megamenu__featured-link:hover .p-megamenu__featured-img img {
    scale: 1.05;
  }
  .p-megamenu__featured-link:hover .p-megamenu__arrow {
    translate: 0.25rem 0;
  }
}

.p-megamenu__featured-img {
  overflow: hidden;
  aspect-ratio: 280/158;
}
.p-megamenu__featured-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale var(--duration) var(--ease-in-out);
}

.p-megamenu__featured-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  margin-block-start: 0.75rem;
  padding-block-end: 1rem;
  border-block-end: 0.125rem solid var(--color-white);
}

.p-megamenu__featured-text {
  display: grid;
  row-gap: 0.5rem;
}

.p-megamenu__featured-title {
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1.1818181818;
}

.p-megamenu__featured-subtitle {
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  line-height: 1.2142857143;
}

.p-megamenu__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: min-content;
  gap: 1.5rem 2.3125rem;
}

.p-megamenu__link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  padding-block-end: 0.75rem;
  border-block-end: 0.125rem solid var(--color-white);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .p-megamenu__link:hover .p-megamenu__arrow {
    translate: 0.25rem 0;
  }
}

.p-megamenu__link-text {
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1.1818181818;
  letter-spacing: 0.05em;
}

.p-megamenu__arrow {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1rem;
  height: 1rem;
  background-color: var(--color-white);
  transition: translate var(--duration) var(--ease-in-out);
}

.p-privacy {
  padding-block: 4rem;
}
@media screen and (max-width: 767px) {
  .p-privacy {
    padding-block: 2rem 3rem;
  }
}

.p-privacy__inner {
  max-width: calc(52.5rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
  line-height: 1.9;
}

.p-privacy__lead {
  margin-block-end: 2rem;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .p-privacy__lead {
    font-size: 0.9375rem;
  }
}

.p-privacy__section {
  margin-block-start: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-privacy__section {
    margin-block-start: 2rem;
  }
}

.p-privacy__section:first-of-type {
  margin-block-start: 0;
}

.p-privacy__h2 {
  margin-block-end: 0.75rem;
  color: var(--color-navy);
  font-size: 1.1875rem;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .p-privacy__h2 {
    font-size: 1.0625rem;
  }
}

.p-privacy__p {
  margin-block-end: 0.875rem;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .p-privacy__p {
    font-size: 0.9375rem;
  }
}

.p-privacy__p:last-child {
  margin-block-end: 0;
}

.p-privacy__list {
  margin-block: 0.5rem 0.875rem;
  padding-inline-start: 1.375rem;
  list-style: none;
}

.p-privacy__list > li {
  margin-block-end: 0.25rem;
}

.p-privacy__contact {
  margin-block-start: 0.75rem;
  padding-block: 1.5rem;
  padding-inline: 1.75rem;
  border: 0.0625rem solid var(--color-border);
  border-radius: 0.625rem;
  background: #f5f5f5;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .p-privacy__contact {
    padding: 1.25rem;
    font-size: 0.9375rem;
  }
}

.p-privacy__contact-name {
  margin-block-end: 0.5rem;
  font-weight: var(--fw-bold);
}

.p-privacy__contact p {
  margin-block-end: 0.25rem;
}

.p-privacy__contact p:last-child {
  margin-block-end: 0;
}

.p-privacy__contact-mail {
  color: var(--color-link);
  word-break: break-all;
  text-decoration: underline;
  transition: opacity var(--duration) ease;
}
@media (any-hover: hover) {
  .p-privacy__contact-mail:hover {
    opacity: 0.7;
    text-decoration: underline;
  }
}

.p-privacy__date {
  margin-block-start: 3rem;
  color: var(--color-muted);
  font-size: 0.875rem;
  text-align: right;
}

.p-privacy__date p {
  margin-block-end: 0.125rem;
}

.p-product {
  overflow: clip;
  padding-block: 4rem 0;
}
@media screen and (max-width: 767px) {
  .p-product {
    padding-block: 1.875rem 0;
  }
}

.p-product__introText {
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-product__introText {
    font-size: 0.9375rem;
    text-align: left;
  }
}

.p-product__intro-navList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem 2.5rem;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-product__intro-navList {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.5rem;
    margin-block-start: 1.5rem;
    padding-inline: 1rem;
  }
}

.p-product__intro-navLink {
  display: grid;
  grid-template-columns: 1fr minmax(0, max-content) 1fr;
  column-gap: 0.625rem;
  align-items: center;
  min-height: 5rem;
  padding-inline: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
  position: relative;
  background: transparent;
}
.p-product__intro-navLink::before, .p-product__intro-navLink::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-product__intro-navLink::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-product__intro-navLink::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-product__intro-navLink > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-product__intro-navLink:hover::before {
    opacity: 0;
  }
  .p-product__intro-navLink:hover::after {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .p-product__intro-navLink {
    min-height: 3rem;
    padding-inline: 1rem;
    border-radius: 0.25rem;
  }
}

.p-product__intro-navLink-text {
  grid-column: 2;
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-product__intro-navLink-text {
    font-size: 0.9375rem;
    letter-spacing: 0;
  }
}

.p-product__intro-navLink-icon {
  grid-column: 3;
  justify-self: end;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--color-white);
  rotate: 90deg;
}
@media screen and (max-width: 767px) {
  .p-product__intro-navLink-icon {
    width: 1rem;
    height: 1rem;
  }
}

.p-product__list {
  width: 100vw;
  margin-block-start: 4rem;
  margin-inline-start: calc(50% - 50vw);
}
@media screen and (max-width: 767px) {
  .p-product__list {
    margin-block-start: 2rem;
  }
}

.p-product__item {
  position: relative;
  padding-block: 3.625rem 5rem;
  scroll-margin-top: calc(var(--header-height) + 1.25rem);
}
.p-product__item:nth-child(odd) {
  background: url("../images/product__item-bg1.webp") var(--bg-cover);
}
.p-product__item:nth-child(odd) .p-product__item-title {
  color: var(--color-white);
}
.p-product__item:nth-child(1) {
  background: url("../images/product__item-bg1.webp") var(--bg-cover);
}
.p-product__item:nth-child(3) {
  background: url("../images/product__item-bg2.webp") var(--bg-cover);
}
.p-product__item:nth-child(even)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: 64rem;
  height: auto;
  aspect-ratio: 1/1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-product__item {
    padding-block: 1.75rem 2rem;
  }
  .p-product__item:nth-child(odd) {
    background: url("../images/product__item-bg1-sp.webp") var(--bg-cover);
  }
  .p-product__item:nth-child(1) {
    background: url("../images/product__item-bg1-sp.webp") var(--bg-cover);
  }
  .p-product__item:nth-child(3) {
    background: url("../images/product__item-bg2-sp.webp") var(--bg-cover);
  }
  .p-product__item:nth-child(even)::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1/1;
    background: url("../images/top-product-bg.webp") var(--bg-cover);
    pointer-events: none;
  }
  .p-product__item:nth-child(even)::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1/1;
    background: url("../images/top-product-bg.webp") var(--bg-cover);
    pointer-events: none;
    rotate: -180deg;
  }
}

.p-product__item-title {
  color: var(--color-navy);
  font-size: 3rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-product__item-title {
    font-size: 1.625rem;
  }
}

.p-product__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  margin-block-start: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-product__cards {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1rem;
    margin-block-start: 1.75rem;
  }
}

.p-product__card {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  overflow: hidden;
  border: 0.125rem solid var(--color-blue);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
  transition: box-shadow var(--duration) var(--ease-in-out);
}
@media (any-hover: hover) {
  .p-product__card:hover .c-btnCard__icon {
    translate: 0.125rem 0;
  }
  .p-product__card:hover .p-product__card-img img {
    scale: 1.05;
  }
}
@media screen and (max-width: 767px) {
  .p-product__card {
    grid-template-columns: minmax(0, 1fr);
    border-radius: 0.5rem;
  }
}

.p-product__card-img {
  overflow: hidden;
  width: 18.5rem;
  height: 100%;
  aspect-ratio: 296/360;
}
.p-product__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-product__card-img {
    width: 100%;
    aspect-ratio: 328/200;
  }
}

.p-product__card-body {
  position: relative;
  display: flex;
  flex-direction: column;
  padding-block: 1.375rem 4.375rem;
  padding-inline: 1.5rem 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-product__card-body {
    padding-block: 0.75rem 0.875rem;
    padding-inline: 0.8125rem 0.625rem;
  }
}

.p-product__card-head {
  display: grid;
  grid-template-columns: 0.25rem 1fr;
  grid-template-rows: auto auto;
  column-gap: 1rem;
}
.p-product__card-head::before {
  content: "";
  grid-column: 1;
  grid-row: 1/3;
  align-self: end;
  width: 0.25rem;
  height: 100%;
  background: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-product__card-head {
    column-gap: 0.5rem;
  }
}

.p-product__card-title {
  grid-column: 2;
  grid-row: 1;
  color: var(--color-navy);
  font-size: 2rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-product__card-title {
    font-size: 1.5rem;
  }
}

.p-product__card-category {
  grid-column: 2;
  grid-row: 2;
  margin-block-start: 0.5rem;
  color: #666;
  font-size: 1.125rem;
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-product__card-category {
    margin-block-start: 0.25rem;
    font-size: 0.9375rem;
  }
}

.p-product__card-desc {
  margin-block-start: 1.125rem;
  padding-inline-end: 0.875rem;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-product__card-desc {
    margin-block-start: 1rem;
    padding-inline-end: 0.25rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-product__card-body .c-btnCard {
  position: absolute;
  right: 1.375rem;
  bottom: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-product__card-body .c-btnCard {
    position: static;
    margin-block-start: 0.75rem;
    margin-inline-end: 0.125rem;
  }
}

.p-singleProductCase {
  position: relative;
  padding-block: 4rem 5rem;
}
.p-singleProductCase::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: auto;
  height: 100%;
  aspect-ratio: 1/1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase {
    padding-block: 2rem;
  }
  .p-singleProductCase::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1/1;
    background: url("../images/top-product-bg.webp") var(--bg-cover);
    pointer-events: none;
  }
  .p-singleProductCase::after {
    width: 22.5rem;
    height: auto;
    rotate: -180deg;
  }
}

.p-singleProductCase__cards {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 2.5rem;
  justify-content: center;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 0.5rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductCase__cards > .c-caseCard {
  width: calc((100% - 5rem) / 3);
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__cards > .c-caseCard {
    width: auto;
  }
}

.p-singleProductCase__blocks {
  display: grid;
  row-gap: 1.5rem;
  margin-block-start: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__blocks {
    margin-block-start: 1.5rem;
  }
}

.p-singleProductCase__block {
  padding-block: 2rem;
  padding-inline: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-pale-blue);
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__block {
    padding-block: 0.9375rem;
    padding-inline: 0.9375rem;
  }
}

.p-singleProductCase__block-title {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__block-title {
    font-size: 1.125rem;
    line-height: 1.5555555556;
    letter-spacing: 0.05em;
  }
}

.p-singleProductCase__block-text {
  margin-block-start: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__block-text {
    margin-block-start: 1rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductCase__btnWrap {
  display: flex;
  justify-content: center;
  margin-block-start: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__btnWrap {
    margin-block-start: 1.5rem;
  }
}

.p-singleProductCase__btn {
  display: flex;
  column-gap: 0.75rem;
  align-items: center;
  min-width: 27.625rem;
  min-height: 5rem;
  padding-inline: 2rem 0.625rem;
  border: 0.125rem solid transparent;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: linear-gradient(var(--color-navy), var(--color-navy)) padding-box, var(--gradient-navy) border-box;
  transition: background var(--duration) var(--ease-in-out);
}
@media (any-hover: hover) {
  .p-singleProductCase__btn:hover {
    background: linear-gradient(var(--color-navy-hover), var(--color-navy-hover)) padding-box, var(--gradient-navy) border-box;
  }
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__btn {
    column-gap: 0.5rem;
    min-width: 15rem;
    min-height: 4rem;
    padding-inline: 1.375rem 0.5rem;
    border-width: 0;
    border-radius: 0.25rem;
    box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.08);
    background: var(--color-blue);
  }
}
@media screen and (max-width: 767px) and (any-hover: hover) {
  .p-singleProductCase__btn:hover {
    background: var(--color-navy-hover);
  }
}

.p-singleProductCase__btn-text {
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__btn-text {
    flex: 1;
    font-size: 0.9375rem;
    line-height: 1.3333333333;
    letter-spacing: normal;
    text-align: center;
  }
}

.p-singleProductCase__btn-icon {
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductCase__btn-icon {
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
  }
}

.p-singleProductContent {
  padding-block: 4rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent {
    padding-block: 2rem 4rem;
  }
}

.p-singleProductContent__inner {
  max-width: calc(67.5rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.p-singleProductContent__title {
  margin-block-end: 4rem;
}

@media screen and (max-width: 767px) {
  .p-singleProductContent__title {
    margin-block-end: 2rem;
  }
}
.p-singleProductContent__lead {
  margin-block-end: 4rem;
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.6666666667;
}
.p-singleProductContent__lead p + p {
  margin-block-start: 0.25rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead {
    margin-block-end: 2rem;
    font-size: 0.9375rem;
    font-weight: var(--fw-regular);
    line-height: 1.7333333333;
  }
}

.p-singleProductContent__lead mark[style]:not([style*="rgba(0"]) {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.75rem, transparent 0.75rem);
  background-color: transparent !important;
  color: var(--color-text) !important;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"]) {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="000000"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--black) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="000000"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--black) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=abb8c3] {
  background-image: linear-gradient(to top, var(--wp--preset--color--cyan-bluish-gray) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=abb8c3] {
    background-image: linear-gradient(to top, var(--wp--preset--color--cyan-bluish-gray) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=ffffff] {
  background-image: linear-gradient(to top, var(--wp--preset--color--white) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=ffffff] {
    background-image: linear-gradient(to top, var(--wp--preset--color--white) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=f78da7] {
  background-image: linear-gradient(to top, var(--wp--preset--color--pale-pink) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=f78da7] {
    background-image: linear-gradient(to top, var(--wp--preset--color--pale-pink) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=cf2e2e] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-red) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=cf2e2e] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-red) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=ff6900] {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-orange) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=ff6900] {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-orange) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=fcb900] {
  background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*=fcb900] {
    background-image: linear-gradient(to top, var(--wp--preset--color--luminous-vivid-amber) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="7bdcb5"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--light-green-cyan) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="7bdcb5"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--light-green-cyan) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="00d084"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-green-cyan) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="00d084"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-green-cyan) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="8ed1fc"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--pale-cyan-blue) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="8ed1fc"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--pale-cyan-blue) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="0693e3"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-cyan-blue) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="0693e3"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-cyan-blue) 0.5rem, transparent 0.5rem);
  }
}
.p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="9b51e0"] {
  background-image: linear-gradient(to top, var(--wp--preset--color--vivid-purple) 0.75rem, transparent 0.75rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__lead mark[style]:not([style*="rgba(0"])[style*="9b51e0"] {
    background-image: linear-gradient(to top, var(--wp--preset--color--vivid-purple) 0.5rem, transparent 0.5rem);
  }
}

.p-singleProductContent__main > * {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main > * {
    margin-block-start: 1.5rem;
  }
}

.p-singleProductContent__main > :first-child {
  margin-block-start: 0;
}

.p-singleProductContent__main h2 {
  margin-block-start: 4rem;
  padding-block: 0.625rem;
  padding-inline-start: 1.25rem;
  border-inline-start: 0.25rem solid var(--color-navy);
  background: #e7f9ff;
  color: var(--color-navy);
  font-size: 2rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main h2 {
    margin-block-start: 2rem;
    padding-block: 0.4375rem;
    padding-inline-start: 0.5rem;
    font-size: 1.5rem;
  }
  .p-singleProductContent__main h2 + h3 {
    margin-block-start: 1.125rem;
  }
}

.p-singleProductContent__main h3 {
  margin-block-start: 4rem;
  padding-block: 0.6875rem 0.75rem;
  padding-inline-start: 0.5rem;
  background-image: var(--gradient-blue), var(--gradient-blue);
  background-position: top, bottom;
  background-size: 100% 0.25rem, 100% 0.25rem;
  background-repeat: no-repeat;
  color: var(--color-navy-hover);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
.p-singleProductContent__main h3 + h4 {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main h3 {
    margin-block-start: 2rem;
    padding-block: 0.375rem 0.625rem;
    background-size: 100% 0.125rem, 100% 0.125rem;
    font-size: 1.25rem;
  }
  .p-singleProductContent__main h3 + h4 {
    margin-block-start: 1.25rem;
  }
}

.p-singleProductContent__main h4 {
  margin-block-start: 2rem;
  padding-block: 0.25rem;
  padding-inline-start: 1rem;
  border-inline-start: 0.25rem solid var(--color-navy);
  color: var(--color-navy);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
.p-singleProductContent__main h4 + ul,
.p-singleProductContent__main h4 ol {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main h4 {
    margin-block-start: 2rem;
    padding-block: 0.1875rem;
    padding-inline-start: 0.75rem;
    font-size: 1.125rem;
  }
  .p-singleProductContent__main h4 + p {
    margin-block-start: 0.75rem;
  }
  .p-singleProductContent__main h4 + ul,
  .p-singleProductContent__main h4 ol {
    margin-block-start: 0.75rem;
  }
}

.p-singleProductContent__main > h2 + *,
.p-singleProductContent__main > h3 + *,
.p-singleProductContent__main > h4 + * {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main > h2 + *,
  .p-singleProductContent__main > h3 + *,
  .p-singleProductContent__main > h4 + * {
    margin-block-start: 0.5rem;
  }
}

.p-singleProductContent__main strong {
  font-weight: var(--fw-bold);
}

:where(.p-singleProductContent__main) p {
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  :where(.p-singleProductContent__main) p {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-singleProductContent__main p a,
.p-singleProductContent__main li a,
.p-singleProductContent__main td a,
.p-singleProductContent__main th a {
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity var(--duration) ease;
}

@media (any-hover: hover) {
  .p-singleProductContent__main p a:hover,
  .p-singleProductContent__main li a:hover,
  .p-singleProductContent__main td a:hover,
  .p-singleProductContent__main th a:hover {
    opacity: 0.75;
  }
}
.p-singleProductContent__main ul,
.p-singleProductContent__main ol {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
  margin-block-start: 1rem;
}
.p-singleProductContent__main ul + p,
.p-singleProductContent__main ol + p {
  margin-block-start: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main ul,
  .p-singleProductContent__main ol {
    row-gap: 0.25rem;
    margin-block-start: 0.875rem;
  }
  .p-singleProductContent__main ul + p,
  .p-singleProductContent__main ol + p {
    margin-block-start: 0.75rem;
  }
}

.p-singleProductContent__main li > ul,
.p-singleProductContent__main li > ol {
  margin-block-start: 0.375rem;
  padding-inline-start: 1rem;
}

.p-singleProductContent__main ul li {
  padding-inline-start: 1.375rem;
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main ul li {
    padding-inline-start: 1.125rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-singleProductContent__main ul li::before {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  margin-inline: -1.375rem 0.5rem;
  border-radius: 100vmax;
  background: var(--gradient-blue);
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main ul li::before {
    width: 0.625rem;
    height: 0.625rem;
    margin-inline: -1.125rem 0.5rem;
  }
}

.p-singleProductContent__main ol {
  counter-reset: ol-counter;
}

.p-singleProductContent__main ol li {
  padding-inline-start: 1.75rem;
  counter-increment: ol-counter;
  font-size: 1.125rem;
  font-weight: var(--fw-regular);
  line-height: 1.5555555556;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main ol li {
    padding-inline-start: 1.125rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-singleProductContent__main ol li::before {
  content: counter(ol-counter) ".";
  display: inline-block;
  width: 1.75rem;
  margin-inline-start: -1.75rem;
  background: var(--gradient-blue);
  background-clip: text;
  color: transparent;
  font-weight: var(--fw-black);
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main ol li::before {
    width: 1.125rem;
    margin-inline-start: -1.125rem;
    font-weight: var(--fw-bold);
  }
}

.p-singleProductContent__main .wp-block-table,
.p-singleProductContent__main .wp-block-flexible-table-block-table {
  overflow-x: auto;
  margin-block-start: 4rem;
}
.p-singleProductContent__main .wp-block-table:not(:has(th)),
.p-singleProductContent__main .wp-block-flexible-table-block-table:not(:has(th)) {
  margin-block-start: 4rem;
}
.p-singleProductContent__main .wp-block-table + .wp-block-table, .p-singleProductContent__main .wp-block-table + .wp-block-flexible-table-block-table,
.p-singleProductContent__main .wp-block-flexible-table-block-table + .wp-block-table,
.p-singleProductContent__main .wp-block-flexible-table-block-table + .wp-block-flexible-table-block-table {
  margin-block-start: 1rem;
}
.p-singleProductContent__main .wp-block-table + p,
.p-singleProductContent__main .wp-block-flexible-table-block-table + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-table,
  .p-singleProductContent__main .wp-block-flexible-table-block-table {
    margin-block-start: 2rem;
  }
  .p-singleProductContent__main .wp-block-table:not(:has(th)),
  .p-singleProductContent__main .wp-block-flexible-table-block-table:not(:has(th)) {
    margin-block-start: 1rem;
  }
}

.p-singleProductContent__main table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.p-singleProductContent__main th,
.p-singleProductContent__main td {
  padding-block: 0.8125rem !important;
  padding-inline: 1rem !important;
  border: 0.0625rem solid var(--color-muted) !important;
  font-size: 1.125rem !important;
  line-height: 1.5555555556 !important;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main th,
  .p-singleProductContent__main td {
    padding-block: 0.1875rem !important;
    padding-inline: 0.5rem !important;
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
  }
}

.p-singleProductContent__main td {
  background: var(--color-white) !important;
  font-weight: var(--fw-regular) !important;
}

.p-singleProductContent__main thead th {
  background: var(--gradient-blue) !important;
  color: var(--color-white) !important;
  font-weight: var(--fw-bold) !important;
}

.p-singleProductContent__main .wp-block-flexible-table-block-table th {
  background: var(--color-navy-hover) !important;
  color: var(--color-white) !important;
  font-weight: var(--fw-bold) !important;
}

.p-singleProductContent__main .has-text-align-center {
  text-align: center !important;
}

.p-singleProductContent__main .has-text-align-right {
  text-align: right !important;
}

.p-singleProductContent__main .has-text-align-left {
  text-align: left !important;
}

.p-singleProductContent__main .p-columnSingle__archiveLink {
  max-width: 56.25rem;
  margin-block-start: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .p-columnSingle__archiveLink {
    margin-block-start: 2rem !important;
  }
}

.p-singleProductContent__main .wp-block-quote {
  margin-block-start: 4rem;
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-quote {
    margin-block-start: 2rem;
    padding-block: 0.625rem 0.875rem;
    padding-inline: 1rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductContent__main .wp-block-quote cite {
  display: block;
  display: flex;
  justify-content: end;
  align-items: center;
  margin-block-start: 0.875rem;
  color: var(--color-muted);
  font-size: 1rem;
  font-style: normal;
}
.p-singleProductContent__main .wp-block-quote cite::before {
  content: "引用元：";
  color: #999;
  font-style: normal;
  font-weight: var(--fw-regular);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-quote cite {
    margin-block-start: 0.625rem;
    font-size: 0.75rem;
  }
}

.p-singleProductContent__main .wp-block-quote cite a {
  display: block;
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.p-singleProductContent__main .wp-block-image {
  max-width: 56.25rem;
  margin-block-start: 4rem;
  margin-inline: auto;
  width: fit-content;
}
.p-singleProductContent__main .wp-block-image + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-image {
    margin-block-start: 2rem;
  }
  .p-singleProductContent__main .wp-block-image + p {
    margin-block-start: 0.5rem;
  }
}

.p-singleProductContent__main .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
}

.p-singleProductContent__main .wp-block-image figcaption {
  margin-block-start: 0.5rem;
  color: var(--color-muted);
  font-size: 0.875rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-image figcaption {
    font-size: 0.75rem;
  }
}

.p-singleProductContent__main .wp-block-embed + p {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-embed {
    margin-block-start: 1rem;
  }
}

.p-singleProductContent__main .wp-block-embed__wrapper {
  display: grid;
  overflow: hidden;
  max-width: 56.25rem;
  aspect-ratio: 16/9;
  margin-block-start: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-embed__wrapper {
    margin-block-start: 2rem;
  }
}

.p-singleProductContent__main .wp-block-embed iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.p-singleProductContent__main .wp-block-button {
  text-align: center;
}

.p-singleProductContent__main .wp-block-buttons {
  margin-block-start: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-buttons {
    margin-block-start: 2rem;
  }
}

.p-singleProductContent__main .wp-block-button__link {
  display: inline-grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  column-gap: 0.5rem;
  align-items: center;
  min-width: 16.875rem;
  min-height: 4.5rem;
  padding-block: 0.75rem;
  padding-inline: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-navy);
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  text-align: center;
  transition: opacity var(--duration) ease;
}
.p-singleProductContent__main .wp-block-button__link::before {
  content: "";
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-button__link {
    min-width: 15rem;
    min-height: 3rem;
    padding-inline: 0.5rem;
    border-radius: 0.25rem;
    background: var(--color-blue);
    font-size: 0.9375rem;
  }
  .p-singleProductContent__main .wp-block-button__link::before {
    width: 1rem;
    height: 1rem;
  }
}

.p-singleProductContent__main .wp-block-button__link::after {
  content: "";
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  background: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=") center/contain no-repeat;
  transition: translate var(--duration) ease;
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .wp-block-button__link::after {
    width: 1rem;
    height: 1rem;
  }
}

@media (any-hover: hover) {
  .p-singleProductContent__main .wp-block-button__link:hover {
    opacity: 0.85;
  }
  .p-singleProductContent__main .wp-block-button__link:hover::after {
    translate: 2px 0;
  }
}
@media screen and (max-width: 767px) {
  .p-singleProductContent__main .p-columnSingle__headingBlock {
    margin-block-start: 1rem;
  }
}

.p-singleProductFaq {
  padding-block: 4rem 5rem;
  background: var(--color-pale-blue);
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq {
    padding-block: 2rem;
  }
}

.p-singleProductFaq__inner {
  max-width: calc(67.5rem + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.p-singleProductFaq__list {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
  margin-block-start: 4rem;
  padding-inline: 0;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__list {
    row-gap: 1.875rem;
    margin-block-start: 2.25rem;
  }
}

.p-singleProductFaq__q {
  display: flex;
  column-gap: 1.5rem;
  align-items: center;
  padding-block-end: 0.5rem;
  background-image: var(--gradient-navy);
  background-position: left bottom;
  background-size: 100% 0.1875rem;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__q {
    column-gap: 0.5rem;
    align-items: flex-start;
    padding-block-end: 0.625rem;
  }
}

.p-singleProductFaq__a {
  display: flex;
  column-gap: 1.5rem;
  align-items: flex-start;
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__a {
    column-gap: 0.5rem;
    margin-block-start: 0.5rem;
  }
}

.p-singleProductFaq__mark {
  flex-shrink: 0;
  width: 2.4375rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 3rem;
  font-weight: var(--fw-black);
  line-height: 1.1666666667;
  text-align: center;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__mark {
    width: 1.625rem;
    margin-block-start: 0.125rem;
    font-size: 2rem;
    line-height: 1.25;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFaq__mark--a {
  width: 2.4375rem;
  height: 3.5rem;
  background: url("data:image/webp;base64,UklGRjgEAABXRUJQVlA4WAoAAAAQAAAATQAASQAAQUxQSNUBAAABgFDbVh3nSUACEiIBCZEQB8VBIwEH1MHUARJSB0hAwu03ve++ERARjty2kaR4Nt6S6u7p5QlG54IrxdTJ8FWXV3V1mrCSugZ2X1NF7uVbMDmPnz6dDLCTcvvqRFfbP2XS+jBzU3vIJPNT6nczAcUWUGw/m9KafVdrCaWWUGkNhZZkoggtosyaKlhxfs0kNeY6riQlHkwzGwbJKJ9YiWSQL2AnGeMMoJOM8YEPLItgIv3A8d0wyQgbkBtaBB+cdwwrmCwD3FHNFtdRQwvwxGb2hkpS74LpGHChyN3Qf/eUSMp9ofw5Akj67DlVVHSWYh94vzkBkRT6n5WdKBynx76Famgspd4x7sYneZK1k+6od+NnJTt5/p64xp8sVAXdI99nsBQ6l39iJGkrwpK0pFhSvkxSLNk9MJCkA8k5kpwjmSmHknEoB+Mn4vzx87D8OJrPZEvf9Ps4yWzG5A2n2xlsmpud7OzApH43LDcnNvrUyZ4xnCyY/M7LnjFYOl1w8QccTdL3s7H9JpL1xtqr34HKLpVr+M1xYVN5Jo8ruufJGk2PB3bXgwmWvy2/cz/RaPI+MIyvDYvfKwpWpvLwXXFM7FSrLxjfppN9f8p00phsPDYrk84BAFZQOCA8AgAAUA8AnQEqTgBKAD5pMI9FpCMhGFu2VEAGhLQDLAvAEAAfgBpAH4AWf/lkX4B+AFkAwI8PSD9byK/5N5vOA4q9CHoA8wD/G9ADxdPVZ/3fqA8knrAPQA6Uj/Cedjq57g2fLjPoJEU/nVmx0RB+Iy4EZ1NBrnCXkfJT2kJG2D/NQsLPFAAA/v6lPV64vBo+0TbqMzo7lzcuIMYlcJLqgjDcVN/BQNgcK2vB5LFgAfpg0vNZomCQXqyEX4WC3OQsnV7h0uZ/jAn+aPuAXHeHsH+H+WdANMb8zl/mBlOlH5rMsQOvzzTh02XWl4gL0787h80bCciqroKRl1A25db97unn7j0rBE52oOF/TKYxz/cBT9xTbZj/QE8TYlcDXa61BffR+UDJDvYXR/O98gTjhaHPVYy28ZR42jmetnyVI2wV4FYXIjQKhIzaNBgepg6M+QI7wmQukIEpENFe15PPChAC7nhuU7z6IW2F/bOnE15KRAMjpD8Hj6plORsfuqzQ8f8f9fNCV7/u90LFIk/bPQWfdXuQ46QrNJ3mH/EOkQ1YF6C5w/TDk/f8XqT/Ty08RtdGB/q0Haggr8oG2eRfU3IzwFaW+Xmpsg1LIfb5N8xLO4IRnWIVAURz+M58SiZ4d7DUyFSt4Oe9CkCR1eMCdG/Im+c0vy+rqX6M0j0n9RfIotsxfdcJ33q6Hh3d5/xoOKNLD4xjW9OCk7v6cs8AnwJr3g1qenFS6RO+5w/67bHwH+MWLUc09+xOkmtB4AA=") no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__mark--a {
    width: 1.625rem;
    height: 2.5rem;
    margin-block-start: 0;
  }
}

.p-singleProductFaq__qText {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__qText {
    padding-block-start: 0.5625rem;
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: 0.05em;
  }
}

.p-singleProductFaq__aText {
  padding-block-start: 0.8125rem;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductFaq__aText {
    padding-block-start: 0.4375rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFaq__link {
  color: var(--color-link);
  text-decoration: underline;
}

.p-singleProductFeature {
  position: relative;
  padding-block: 3.875rem 4rem;
}
.p-singleProductFeature::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: auto;
  height: 100%;
  aspect-ratio: 1/1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature {
    padding-block: 2rem;
  }
  .p-singleProductFeature::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1/1;
    background: url("../images/top-product-bg.webp") var(--bg-cover);
  }
  .p-singleProductFeature::after {
    width: 22.5rem;
    height: auto;
    rotate: -180deg;
  }
}

.p-singleProductFeature__container {
  margin-block-start: 4rem;
  padding-block: 1.875rem;
  padding-inline: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  background: var(--color-pale-blue);
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__container {
    margin-block-start: 2rem;
    padding-block: 1.375rem;
    padding-inline: 0.875rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductFeature__container + .p-singleProductFeature__container {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__container + .p-singleProductFeature__container {
    margin-block-start: 1rem;
  }
}

.p-singleProductFeature__containerTitle {
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__containerTitle {
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}

.p-singleProductFeature__cargoList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin-block-start: 2rem;
}
.p-singleProductFeature__cargoList:first-child {
  margin-block-start: 0;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoList {
    grid-template-columns: minmax(0, 1fr);
    margin-block-start: 1rem;
  }
}

.p-singleProductFeature__cargoCard {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: 1.625rem 2rem;
  padding-inline: 2rem;
  border-radius: 1rem;
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoCard {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem 0.5rem;
    align-items: center;
    padding-block: 1rem;
    padding-inline: 1rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductFeature__equipCard {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  padding-block: 2rem;
  padding-inline: 1.375rem;
  border-radius: 1rem;
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__equipCard {
    row-gap: 0.375rem;
    padding-block: 0.75rem 1rem;
    padding-inline: 0.875rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductFeature__cargoIcon {
  display: grid;
  place-items: center;
}
.p-singleProductFeature__cargoIcon img {
  width: 4rem;
  height: 4rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoIcon {
    align-self: center;
  }
  .p-singleProductFeature__cargoIcon img {
    width: 2rem;
    height: 2rem;
  }
}

.p-singleProductFeature__cargoHeading {
  width: 100%;
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoHeading {
    font-size: 1.125rem;
    line-height: 1.5555555556;
    letter-spacing: 0.05em;
  }
}

.p-singleProductFeature__cargoCard .p-singleProductFeature__cargoHeading {
  margin-block-start: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoCard .p-singleProductFeature__cargoHeading {
    width: auto;
    margin-block-start: 0;
    text-align: left;
  }
}

.p-singleProductFeature__cargoText {
  width: 100%;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.p-singleProductFeature__cargoText a {
  color: var(--color-link);
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-singleProductFeature__cargoText a:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoText {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFeature__cargoCard .p-singleProductFeature__cargoText {
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__cargoCard .p-singleProductFeature__cargoText {
    grid-column: 1/-1;
    margin-block-start: 0;
  }
}

.p-singleProductFeature__images {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 0.6875rem;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__images {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1rem;
    margin-block-start: 1rem;
  }
}

.p-singleProductFeature__imageItem {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__imageItem {
    row-gap: 0.5rem;
  }
}

.p-singleProductFeature__imageFig {
  overflow: hidden;
  width: 100%;
  border-radius: 1rem;
}
.p-singleProductFeature__imageFig img {
  width: 100%;
  height: auto;
  aspect-ratio: 603/339;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__imageFig {
    border-radius: 0.5rem;
  }
}

.p-singleProductFeature__imageLabel {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__imageLabel {
    font-size: 1.125rem;
    line-height: 1.5555555556;
    letter-spacing: 0.05em;
  }
}

.p-singleProductFeature__imageText {
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductFeature__imageText {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFlow {
  padding-block: 4rem 5rem;
  background: center/cover no-repeat url("../images/product-flow-bg.webp");
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow {
    padding-block: 2rem;
    background: center/cover no-repeat url("data:image/webp;base64,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");
  }
}

.p-singleProductFlow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 3.5625rem;
  align-items: stretch;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__steps {
    flex-direction: column;
    row-gap: 2.25rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductFlow__step {
  position: relative;
  display: flex;
  flex-direction: column;
  row-gap: 0.625rem;
  align-items: center;
  width: 13.125rem;
  min-height: 14.5rem;
  padding-block: 1.5rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-singleProductFlow__step:not(:last-child)::after {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: calc(100% + 0.25rem);
  mask-image: url("data:image/svg+xml,%3csvg%20width='40'%20height='41'%20viewBox='0%200%2040%2041'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M19.9681%2038.9277L36.0126%2020.4508L19.9681%201.97398'%20stroke='white'%20stroke-width='6.02191'%20stroke-miterlimit='10'/%3e%3cpath%20d='M36.0123%2020.5298H0'%20stroke='white'%20stroke-width='6.02191'%20stroke-miterlimit='10'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 2.25rem;
  height: 2.3125rem;
  background-color: var(--color-white);
  translate: 0 -50%;
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__step {
    flex-direction: row;
    column-gap: 0.75rem;
    align-items: center;
    width: auto;
    min-height: 5rem;
    padding-block: 0.5rem;
    padding-inline-start: 1rem;
    border-width: 0;
    border-radius: 0.5rem;
  }
  .p-singleProductFlow__step:not(:last-child)::after {
    inset-block-start: calc(100% - 0.125rem);
    inset-inline-start: 50%;
    width: 1.75rem;
    height: 1.875rem;
    translate: -50% 0;
    rotate: 90deg;
  }
}

.p-singleProductFlow__stepIcon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 6.75rem;
  height: 6.75rem;
  border-radius: 100vmax;
  background: var(--color-pale-blue);
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__stepIcon {
    flex-shrink: 0;
    width: 4rem;
    height: 4rem;
  }
}

.p-singleProductFlow__stepLabel {
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 1.125rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  letter-spacing: 0.03em;
  text-align: center;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__stepLabel {
    margin-block-start: 0.375rem;
    font-size: 0.625rem;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFlow__stepNum {
  margin-block-start: -0.375rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 3rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  letter-spacing: 0.03em;
  text-align: center;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__stepNum {
    margin-block-start: 0rem;
    font-size: 1.75rem;
    letter-spacing: 0.03em;
  }
}

.p-singleProductFlow__stepText {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFlow__stepText {
    font-size: 1.25rem;
    line-height: 1.2;
    letter-spacing: 0.05em;
    text-align: left;
  }
}

.p-singleProductFv {
  position: relative;
  overflow: hidden;
  min-height: min(40vw, 48rem);
  margin-block-start: var(--header-height);
  padding-block: min(3.3333333333vw, 4rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding-block: 1.5rem 1rem;
  }
}

.p-singleProductFv__inner {
  position: relative;
  z-index: 1;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__inner {
    display: contents;
  }
}

.p-singleProductFv__content {
  width: min(38.75vw, 46.5rem);
  margin-inline-start: min(8.3333333333vw, 10rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__content {
    display: contents;
  }
}

.p-singleProductFv__lead {
  font-size: min(1.25vw, 1.5rem);
  font-weight: var(--fw-bold);
  line-height: 1.6666666667;
  text-align: center;
  text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__lead {
    margin-inline: var(--padding-inner);
    font-size: 1rem;
    font-weight: var(--fw-black);
    line-height: 1.5;
  }
}

.p-singleProductFv__titleGroup {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-block-start: min(1.0416666667vw, 1.25rem);
  padding-block: min(0.9375vw, 1.125rem) min(1.875vw, 2.25rem);
  background-image: var(--gradient-blue), var(--gradient-blue);
  background-position: top, bottom;
  background-size: 100% min(0.5208333333vw, 0.625rem);
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__titleGroup {
    margin-block-start: 0.625rem;
    margin-inline: var(--padding-inner);
    padding-block: 0.875rem 1rem;
    background-size: 100% 0.3125rem;
  }
}

.p-singleProductFv__subTitle {
  color: var(--color-navy);
  font-size: min(2.0833333333vw, 2.5rem);
  font-weight: var(--fw-black);
  line-height: 1.4;
  text-align: center;
  text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__subTitle {
    font-size: 1.5rem;
    line-height: 1.1666666667;
  }
}

.p-singleProductFv__title {
  display: inline-block;
  margin-block-start: min(0.5208333333vw, 0.625rem);
  color: var(--color-black);
  font-size: min(3.3333333333vw, 4rem);
  font-weight: var(--fw-black);
  line-height: 1.125;
  text-align: center;
  text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__title {
    font-size: 2.5rem;
    line-height: 1.05;
  }
}

.p-singleProductFv__features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: min(0.625vw, 0.75rem);
  justify-content: center;
  margin-block-start: min(1.6666666667vw, 2rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__features {
    position: relative;
    z-index: 1;
    column-gap: 0.25rem;
    margin-block-start: 0.625rem;
    margin-inline: 0.5rem;
  }
}

.p-singleProductFv__feature {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto;
  aspect-ratio: 1;
  padding-block-end: min(0.625vw, 0.75rem);
  padding-inline: min(0.4166666667vw, 0.5rem);
  border-radius: 100vmax;
  background: var(--gradient-navy);
  color: var(--color-white);
  font-size: min(1.4583333333vw, 1.75rem);
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__feature {
    width: 100%;
    padding-block-end: 0.5rem;
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-singleProductFv__btns {
  display: flex;
  column-gap: min(0.8333333333vw, 1rem);
  align-items: center;
  margin-block-start: min(1.5625vw, 1.875rem);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__btns {
    order: 1;
    flex-direction: row;
    column-gap: 0.25rem;
    margin-block-start: 0.625rem;
    margin-inline: 0.625rem;
  }
}

.p-singleProductFv__btn {
  display: flex;
  column-gap: min(0.4166666667vw, 0.5rem);
  justify-content: center;
  align-items: center;
  width: min(18.75vw, 22.5rem);
  min-height: min(4.5833333333vw, 5.5rem);
  padding-block: max(0.8333333333vw, 1rem);
  padding-inline: min(0.625vw, 0.75rem);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
}
.p-singleProductFv__btn.p-singleProductFv__btn--contact {
  position: relative;
  background: transparent;
}
.p-singleProductFv__btn.p-singleProductFv__btn--contact::before, .p-singleProductFv__btn.p-singleProductFv__btn--contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-singleProductFv__btn.p-singleProductFv__btn--contact::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-singleProductFv__btn.p-singleProductFv__btn--contact::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-singleProductFv__btn.p-singleProductFv__btn--contact > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-singleProductFv__btn.p-singleProductFv__btn--contact:hover::before {
    opacity: 0;
  }
  .p-singleProductFv__btn.p-singleProductFv__btn--contact:hover::after {
    opacity: 1;
  }
}
.p-singleProductFv__btn.p-singleProductFv__btn--catalog {
  position: relative;
  background: transparent;
}
.p-singleProductFv__btn.p-singleProductFv__btn--catalog::before, .p-singleProductFv__btn.p-singleProductFv__btn--catalog::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-singleProductFv__btn.p-singleProductFv__btn--catalog::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-singleProductFv__btn.p-singleProductFv__btn--catalog::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-singleProductFv__btn.p-singleProductFv__btn--catalog > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-singleProductFv__btn.p-singleProductFv__btn--catalog:hover::before {
    opacity: 0;
  }
  .p-singleProductFv__btn.p-singleProductFv__btn--catalog:hover::after {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__btn {
    flex: 1;
    column-gap: 0.625rem;
    justify-content: end;
    width: auto;
    min-width: 0;
    min-height: 3.5rem;
    max-width: none;
    padding-block: 0.375rem;
    padding-inline: 0.375rem;
    border-radius: 0.25rem;
  }
  .p-singleProductFv__btn.p-singleProductFv__btn--contact .p-singleProductFv__btn-text {
    margin-inline-end: -0.5rem;
  }
}

.p-singleProductFv__btn-text {
  color: var(--color-white);
  font-size: min(1.25vw, 1.5rem);
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__btn-text {
    font-size: 1rem;
    line-height: 1.25;
  }
}

.p-singleProductFv__btn-icon {
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: min(1.25vw, 1.5rem);
  height: min(1.25vw, 1.5rem);
  margin-block-start: 0.125rem;
  background-color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__btn-icon {
    mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
    width: 1.25rem;
    height: 1.25rem;
  }
}

.p-singleProductFv__splide {
  width: 100%;
  height: 100%;
}
.p-singleProductFv__splide .splide__track {
  width: 100%;
  height: 100%;
}
.p-singleProductFv__splide:not(.is-initialized) {
  visibility: visible;
}
.p-singleProductFv__splide:not(.is-initialized) .splide__list {
  display: block;
  height: 100%;
}
.p-singleProductFv__splide:not(.is-initialized) .splide__slide {
  width: 100%;
}

.p-singleProductFv__slide {
  position: relative;
  height: 100%;
}

.p-singleProductFv__image picture {
  display: block;
}
.p-singleProductFv__image {
  position: absolute;
  right: 0;
  inset-block: 0;
  z-index: 0;
  width: min(63.5416666667vw, 76.25rem);
}
.p-singleProductFv__image img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1220/768;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__image {
    position: relative;
    z-index: 0;
    width: 100%;
    margin-block-start: -2.3125rem;
  }
  .p-singleProductFv__image img {
    height: auto;
    aspect-ratio: 360/180;
  }
}

.p-singleProductFv__imageCaption {
  position: absolute;
  right: min(3.3333333333vw, 4rem);
  bottom: min(3.4375vw, 4.125rem);
  z-index: 2;
  width: min(39.5833333333vw, 47.5rem);
  padding-block: min(0.625vw, 0.75rem) min(0.8333333333vw, 1rem);
  padding-inline: min(0.8333333333vw, 1rem);
  background: color-mix(in srgb, var(--color-white) 80%, transparent);
  color: var(--color-black);
  font-size: min(1.0416666667vw, 1.25rem);
  font-weight: var(--fw-medium);
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductFv__imageCaption {
    position: static;
    width: auto;
    padding-block: 0.375rem 0.3125rem;
    padding-inline: var(--padding-inner);
    background: #eee;
    font-size: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: left;
  }
}

.p-singleProductMedia {
  padding-block: 1.75rem 2.5rem;
  background: url("../images/product-media-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia {
    padding-block: 2rem;
    background: url("data:image/webp;base64,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") var(--bg-cover);
  }
}

.p-singleProductMedia__title {
  color: var(--color-white);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__title {
    font-size: 1.25rem;
    letter-spacing: 0.05em;
  }
}

.p-singleProductMedia__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
  margin-block-start: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__list {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.375rem;
    margin-block-start: 0.875rem;
  }
}

.p-singleProductMedia__item {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  overflow: hidden;
  min-height: 10rem;
  border: 0.125rem solid var(--color-blue);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__item {
    min-height: 4.25rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductMedia__thumb {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 11.625rem;
  aspect-ratio: 186/157;
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__thumb {
    width: 5rem;
    aspect-ratio: 80/68;
  }
}

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

.p-singleProductMedia__thumb-img {
  width: 6.5rem;
  height: 8.6875rem;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__thumb-img {
    width: 2.6875rem;
    height: 3.5625rem;
  }
}

.p-singleProductMedia__text {
  align-self: start;
  padding-block: 0.875rem;
  padding-inline: 1rem 0.625rem;
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.4545454545;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductMedia__text {
    padding-block: 0.625rem;
    padding-inline: 0.375rem 1rem;
    font-size: 0.8125rem;
    line-height: 1.3846153846;
    letter-spacing: normal;
  }
}

.p-singleProductMerit {
  position: relative;
  padding-block: 3.75rem 5rem;
  background: url("../images/product-merit-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit {
    padding-block: 2rem;
    background: url("../images/product-merit-bg-sp.webp") var(--bg-cover);
  }
}

.p-singleProductMerit__cards {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cards {
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductMerit__card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 39rem;
  column-gap: 2rem;
  padding-block: 2rem 1.875rem;
  padding-inline: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardNum-label {
  margin-block-start: -0.1875rem;
  margin-inline-start: -0.625rem;
}
.p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardNum-value {
  margin-block-start: -0.6875rem;
  margin-inline-start: -0.4375rem;
}
.p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardHead {
  column-gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__card {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1rem;
    padding-block: 1rem 0.875rem;
    padding-inline: 0.9375rem;
    border-radius: 0.5rem;
  }
  .p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardNum-label {
    margin-block-start: 0;
    margin-inline-start: -0.125rem;
  }
  .p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardNum-value {
    margin-block-start: -0.1875rem;
    margin-inline-start: -0.1875rem;
  }
  .p-singleProductMerit__card:nth-child(n+2) .p-singleProductMerit__cardHead {
    column-gap: 1.375rem;
  }
}

.p-singleProductMerit__card--full {
  grid-template-columns: minmax(0, 1fr);
}

.p-singleProductMerit__cardHead {
  position: relative;
  display: flex;
  column-gap: 2.9375rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardHead {
    column-gap: 1.625rem;
  }
}

.p-singleProductMerit__cardNum {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  text-align: center;
}

.p-singleProductMerit__cardNum-label {
  margin-inline-start: 0.125rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 1.5rem;
  font-weight: var(--fw-black);
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardNum-label {
    margin-block-start: 0.125rem;
    margin-inline-start: 0;
    font-size: 0.9375rem;
    letter-spacing: 0.03em;
  }
}

.p-singleProductMerit__cardNum-value {
  margin-block-start: -0.625rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 4.5rem;
  font-weight: var(--fw-black);
  line-height: 1.2083333333;
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardNum-value {
    margin-block-start: -0.25rem;
    font-size: 2.5rem;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-singleProductMerit__cardDivider {
  position: absolute;
  top: -0.125rem;
  left: 6.75rem;
  flex-shrink: 0;
  width: 0.25rem;
  height: calc(100% - 0.25rem);
  background: var(--gradient-navy-vertical);
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardDivider {
    top: 0;
    left: 3.75rem;
    height: 100%;
  }
}

.p-singleProductMerit__cardTitle {
  margin-block-start: -0.5rem;
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardTitle {
    margin-block-start: -0.125rem;
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: normal;
  }
}

.p-singleProductMerit__cardText {
  margin-block-start: 0.625rem;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__cardText {
    margin-block-start: 0.875rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductMerit__img {
  overflow: hidden;
  border-radius: 1rem;
}
.p-singleProductMerit__img picture {
  display: block;
}
.p-singleProductMerit__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-singleProductMerit__img {
    border-radius: 0.5rem;
  }
}

.p-singleProductReason {
  position: relative;
  padding-block: 4rem 5rem;
}
.p-singleProductReason::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: 60.625rem;
  height: 100%;
  aspect-ratio: 1/1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason {
    padding-block: 2rem;
  }
  .p-singleProductReason::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 22.5rem;
    height: auto;
    aspect-ratio: 1/1;
    background: url("../images/top-product-bg.webp") var(--bg-cover);
    pointer-events: none;
  }
  .p-singleProductReason::after {
    width: 22.5rem;
    height: auto;
    rotate: -180deg;
  }
}

.p-singleProductReason__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cards {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1.125rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductReason__card {
  position: relative;
  display: block;
  padding-block: 2rem 5rem;
  padding-inline: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-pale-blue);
  color: inherit;
  text-decoration: none;
}
@media (any-hover: hover) {
  .p-singleProductReason__card:hover .c-btnCard__icon {
    translate: 0.125rem 0;
  }
}
.p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardHead {
  column-gap: 3.125rem;
}
.p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardNum-label {
  margin-inline-start: 0.375rem;
}
.p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardDivider {
  left: 7.625rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__card {
    padding-block: 1rem 0.75rem;
    padding-inline: 0.9375rem;
    border-radius: 0.5rem;
  }
  .p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardHead {
    column-gap: 1.375rem;
  }
  .p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardNum {
    margin-inline-start: -0.125rem;
  }
  .p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardNum-label {
    margin-inline-start: 0.125rem;
  }
  .p-singleProductReason__card:nth-child(n+2) .p-singleProductReason__cardDivider {
    left: 3.75rem;
  }
}

.p-singleProductReason__cardHead {
  position: relative;
  display: flex;
  column-gap: 3.25rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardHead {
    column-gap: 1.625rem;
  }
}

.p-singleProductReason__cardNum {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
}

.p-singleProductReason__cardNum-label {
  margin-block-start: 0.3125rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 1.25rem;
  font-weight: var(--fw-black);
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardNum-label {
    font-size: 0.6875rem;
    letter-spacing: 0.03em;
  }
}

.p-singleProductReason__cardNum-value {
  display: inline-block;
  margin-block-start: -0.5rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 4.5rem;
  font-weight: var(--fw-black);
  line-height: 1.2083333333;
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardNum-value {
    margin-block-start: -0.1875rem;
    font-size: 2.5rem;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-singleProductReason__cardDivider {
  position: absolute;
  top: -0.125rem;
  left: 7.125rem;
  flex-shrink: 0;
  width: 0.25rem;
  height: 100%;
  background: var(--gradient-navy-vertical);
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardDivider {
    top: -0.125rem;
    left: 3.6875rem;
    height: calc(100% + 0.5rem);
  }
}

.p-singleProductReason__cardTitle {
  margin-block-start: -0.5rem;
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.25;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardTitle {
    margin-block-start: 0;
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: normal;
  }
}

.p-singleProductReason__cardText {
  margin-block-start: 0.875rem;
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardText {
    margin-block-start: 1.25rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductReason__checkList {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  margin-block-start: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__checkList {
    row-gap: 0.25rem;
    margin-block-start: 0.75rem;
  }
}

.p-singleProductReason__checkItem {
  display: flex;
  column-gap: 0.9375rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__checkItem {
    column-gap: 0.5625rem;
  }
}

.p-singleProductReason__checkIcon {
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 0.25rem;
  background: var(--color-white);
}
.p-singleProductReason__checkIcon img {
  width: 1.25rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__checkIcon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .p-singleProductReason__checkIcon img {
    width: 0.9375rem;
  }
}

.p-singleProductReason__checkText {
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__checkText {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductReason__cardBtn {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductReason__cardBtn {
    position: static;
    margin-block-start: 0.75rem;
    margin-inline-end: -0.125rem;
    text-align: right;
  }
}

.p-singleProductSpec {
  padding-block: 4rem 4.5rem;
  background: bottom center/cover no-repeat url("../images/product-spec-bg.webp");
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec {
    padding-block: 2rem 1.75rem;
    background: bottom center/cover no-repeat url("../images/product-spec-bg-sp.webp");
  }
}

.p-singleProductSpec__container {
  padding-block: 2rem;
  padding-inline: 4rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__container {
    padding-block: 0.8125rem;
    padding-inline: 0.875rem;
    border-radius: 0.5rem;
  }
}

.p-singleProductSpec__accordion::details-content {
  content-visibility: unset;
  display: block grid;
  overflow: hidden;
}
@media (prefers-reduced-motion: no-preference) {
  .p-singleProductSpec__accordion::details-content {
    transition-duration: 300ms;
    transition-property: grid-template-rows;
  }
}
.p-singleProductSpec__accordion:not([open])::details-content {
  grid-template-rows: 0fr;
}
.p-singleProductSpec__accordion[open]::details-content {
  grid-template-rows: 1fr;
}

.p-singleProductSpec__summary {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  list-style: none;
  cursor: pointer;
}
.p-singleProductSpec__summary::-webkit-details-marker {
  display: none;
}

.p-singleProductSpec__summaryText {
  grid-column: 2;
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__summaryText {
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}

.p-singleProductSpec__summaryIcon {
  display: grid;
  grid-column: 3;
  place-items: center;
  justify-self: end;
  width: 2rem;
  height: 2rem;
}
.p-singleProductSpec__summaryIcon::before, .p-singleProductSpec__summaryIcon::after {
  content: "";
  grid-area: 1/1;
  width: 2rem;
  height: 0.1875rem;
  background: var(--color-navy);
}
.p-singleProductSpec__summaryIcon::after {
  rotate: 90deg;
  transition: rotate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__summaryIcon {
    width: 1.125rem;
    height: 1.125rem;
  }
  .p-singleProductSpec__summaryIcon::before, .p-singleProductSpec__summaryIcon::after {
    width: 1.125rem;
    height: 0.125rem;
  }
}

.p-singleProductSpec__accordion[open] .p-singleProductSpec__summaryIcon::after {
  rotate: 0deg;
}

.p-singleProductSpec__content {
  min-width: 0;
  min-height: 0;
}

.p-singleProductSpec__specList {
  display: grid;
  grid-template-columns: 18.75rem minmax(0, 1fr);
  column-gap: 0.625rem;
  margin-block-start: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specList {
    grid-template-columns: 3.875rem minmax(0, 1fr);
    column-gap: 1rem;
    margin-block-start: 0.3125rem;
  }
}

.p-singleProductSpec__specRow {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
  padding-block: 1.5rem 1.4375rem;
  border-block-end: 0.0625rem solid var(--color-border);
}
.p-singleProductSpec__specRow:last-child {
  border-block-end: none;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specRow {
    padding-block: 0.75rem;
  }
}

.p-singleProductSpec__specLabel {
  color: var(--color-navy);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specLabel {
    font-size: 0.9375rem;
    line-height: 1.3333333333;
    letter-spacing: 0.03em;
  }
}

.p-singleProductSpec__specValue {
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specValue {
    font-size: 0.9375rem;
    line-height: 1.3333333333;
    letter-spacing: 0.03em;
  }
}

.p-singleProductSpec__specRow--media .p-singleProductSpec__specValue {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specRow--media .p-singleProductSpec__specValue {
    row-gap: 0.5rem;
  }
}

.p-singleProductSpec__specImg {
  overflow: hidden;
  width: 37.6875rem;
  border-radius: 1rem;
}
.p-singleProductSpec__specImg img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__specImg {
    width: 100%;
    border-radius: 0.5rem;
  }
}

.p-singleProductSpec__tableScroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-block-start: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__tableScroll {
    margin-block-start: 1rem;
    padding-block-end: 0.5rem;
    scrollbar-color: var(--color-black-sub) var(--color-black-sub-sub);
    scrollbar-width: thin;
  }
  .p-singleProductSpec__tableScroll::-webkit-scrollbar {
    height: 0.375rem;
    appearance: none;
  }
  .p-singleProductSpec__tableScroll::-webkit-scrollbar-track {
    border-radius: 0.1875rem;
    background-color: var(--color-black-sub-sub);
  }
  .p-singleProductSpec__tableScroll::-webkit-scrollbar-thumb {
    border-radius: 0.1875rem;
    background-color: var(--color-black-sub);
  }
}

.p-singleProductSpec__table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.p-singleProductSpec__table th,
.p-singleProductSpec__table td {
  padding-block: 1rem;
  padding-inline: 1rem;
  border-block-end: 0.0625rem solid var(--color-muted);
  border-inline-end: 0.0625rem solid var(--color-muted);
  font-size: 1rem;
  vertical-align: middle;
}
.p-singleProductSpec__table th span,
.p-singleProductSpec__table td span {
  display: inline;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__table th,
  .p-singleProductSpec__table td {
    padding-block: 0.75rem;
    padding-inline: 0.75rem;
    font-size: 0.9375rem;
  }
}

.p-singleProductSpec__table tr:first-child th,
.p-singleProductSpec__table tr:first-child td {
  border-block-start: 0.0625rem solid var(--color-muted);
}

.p-singleProductSpec__table th:first-child,
.p-singleProductSpec__table td:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  border-inline-start: 0.0625rem solid var(--color-muted);
}

.p-singleProductSpec__table th {
  border-inline-end-color: var(--color-white);
  background: var(--color-blue);
  color: var(--color-white);
  font-weight: var(--fw-bold);
  white-space: nowrap;
}

.p-singleProductSpec__table th:first-child {
  border-inline-start-color: var(--color-white);
}

.p-singleProductSpec__table td:first-child {
  background: #f5f5f5;
  color: var(--color-black);
  font-weight: var(--fw-bold);
  white-space: nowrap;
}

.p-singleProductSpec__table td {
  background: var(--color-white);
  color: var(--color-black);
  font-weight: var(--fw-regular);
}

.p-singleProductSpec__diagram {
  margin-block-start: 2.5rem;
  padding-block-end: 2rem;
}
.p-singleProductSpec__diagram img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__diagram {
    margin-block-start: 0.3125rem;
    padding-block-end: 1rem;
  }
}

.p-singleProductSpec__video {
  max-width: 67.5rem;
  margin-block-start: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__video {
    margin-block-start: 1.5rem;
  }
}

.p-singleProductSpec__videoTitle {
  color: var(--color-navy);
  font-size: 1.75rem;
  font-weight: var(--fw-black);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__videoTitle {
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}

.p-singleProductSpec__videoFrame {
  aspect-ratio: 16/9;
  margin-block-start: 2rem;
}
.p-singleProductSpec__videoFrame iframe {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-singleProductSpec__videoFrame {
    margin-block-start: 1rem;
  }
}

.p-singleProductValue {
  padding-block: 4rem 5rem;
  background: center/cover no-repeat url("../images/product-value-bg.webp");
}
@media screen and (max-width: 767px) {
  .p-singleProductValue {
    padding-block: 2rem;
    background: center/cover no-repeat url("../images/product-value-bg-sp.webp");
  }
}

.p-singleProductValue__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: repeat(2, auto minmax(10rem, auto));
  gap: 1.875rem 2.5rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cards {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductValue__card {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  row-gap: 0;
  padding-block: 2rem;
  padding-inline: 1.5rem 1.375rem;
  border: 0.125rem solid var(--color-navy);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardHead {
  column-gap: 1.125rem;
}
.p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardNum-label {
  margin-inline-start: 0.125rem;
}
.p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardNum-value {
  margin-inline-start: 0.125rem;
}
.p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardTitle {
  margin-inline-start: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__card {
    grid-template-rows: none;
    grid-row: auto;
    padding-block: 1rem 0.875rem;
    padding-inline: 0.875rem;
    border-radius: 0.5rem;
  }
  .p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardHead {
    column-gap: 0.375rem;
  }
  .p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardNum-label {
    margin-inline-start: 0;
  }
  .p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardNum-value {
    margin-inline-start: -0.125rem;
  }
  .p-singleProductValue__card:nth-child(n+2) .p-singleProductValue__cardTitle {
    margin-inline-start: 0.375rem;
  }
}

.p-singleProductValue__cardHead {
  display: flex;
  column-gap: 1.375rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardHead {
    column-gap: 0.625rem;
  }
}

.p-singleProductValue__cardNum {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
}

.p-singleProductValue__cardNum-label {
  margin-inline-start: 0.625rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 1.125rem;
  font-weight: var(--fw-black);
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardNum-label {
    margin-block-start: 0.25rem;
    margin-inline-start: 0;
    font-size: 0.625rem;
    letter-spacing: 0.03em;
    text-align: left;
  }
}

.p-singleProductValue__cardNum-value {
  margin-block-start: -0.5rem;
  margin-inline-start: 0.375rem;
  background: var(--gradient-navy);
  background-clip: text;
  font-family: var(--en-font-family);
  font-size: 4.5rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  letter-spacing: 0.03em;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardNum-value {
    margin-block-start: 0;
    margin-inline-start: 0;
    font-size: 2.5rem;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-singleProductValue__cardDivider {
  flex-shrink: 0;
  width: 0.25rem;
  height: calc(100% - 0.625rem);
  margin-block-start: -0.5rem;
  background: var(--gradient-navy-vertical);
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardDivider {
    align-self: stretch;
    height: 100%;
    margin-block-start: -0.125rem;
  }
}

.p-singleProductValue__cardTitle {
  margin-block-start: -0.625rem;
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-black);
  line-height: 1.2727272727;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardTitle {
    margin-block-start: -0.25rem;
    margin-inline-start: 0.25rem;
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: normal;
  }
}

.p-singleProductValue__cardText {
  align-self: start;
  margin-block-start: 0.375rem;
  color: var(--color-black);
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-singleProductValue__cardText {
    margin-block-start: 0.875rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductVoice {
  position: relative;
  padding-block: 4rem 5rem;
  background: center/cover no-repeat url("../images/product-voice-bg.webp");
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice {
    padding-block: 2rem;
  }
}

.p-singleProductVoice__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem 2.5rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice__cards {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1rem;
    margin-block-start: 2rem;
  }
}

.p-singleProductVoice__card {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  row-gap: 1rem;
  padding-block: 1.5rem 2rem;
  padding-inline: 1.5rem;
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice__card {
    grid-template-rows: none;
    grid-row: auto;
    row-gap: 1rem;
    padding-block: 0.875rem;
    padding-inline: 0.75rem;
    border: 0.125rem solid var(--color-blue);
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.08);
  }
}

.p-singleProductVoice__cardQuote h3 {
  position: relative;
  padding-inline-start: 1rem;
  color: var(--color-navy);
  font-size: 1.5rem;
  font-weight: var(--fw-black);
  line-height: 1.3333333333;
}
.p-singleProductVoice__cardQuote h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.25rem;
  height: calc(100% + 0.375rem);
  background: var(--gradient-navy-vertical);
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice__cardQuote h3 {
    padding-inline-start: 0.75rem;
    font-size: 1.25rem;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .p-singleProductVoice__cardQuote h3::before {
    height: calc(100% + 0.25rem);
  }
}

.p-singleProductVoice__cardText {
  font-size: 1.125rem;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice__cardText {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}

.p-singleProductVoice__cardAuthor {
  margin-block-start: -0.25rem;
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
}
@media screen and (max-width: 767px) {
  .p-singleProductVoice__cardAuthor {
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-sitemap {
  padding-block: 4rem;
}
@media screen and (max-width: 767px) {
  .p-sitemap {
    padding-block: 2rem 3rem;
  }
}

.p-sitemap__group {
  margin: 0;
  padding-block-start: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-sitemap__group {
    padding-block-start: 2.8125rem;
  }
}

.p-sitemap__group:first-child {
  padding-block-start: 0;
}

.p-sitemap__head {
  margin-block-end: 1rem;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
  background: var(--color-navy);
  color: var(--color-white);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-sitemap__head {
    margin-block-end: 0.75rem;
    padding-block: 0.4375rem;
    padding-inline: 0.75rem;
    font-size: 1.125rem;
  }
}

.p-sitemap__head:has(.p-sitemap__head-link) {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-sitemap__head:has(.p-sitemap__head-link) {
    padding-block: 0;
  }
}

.p-sitemap__head-link {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  width: 100%;
  padding-block: 0.625rem;
  padding-inline: 1.25rem;
  color: inherit;
  text-decoration: none;
  transition: background var(--duration);
}
@media (any-hover: hover) {
  .p-sitemap__head-link:hover {
    background: var(--color-navy-hover);
  }
  .p-sitemap__head-link:hover .p-sitemap__arrow {
    translate: 0.25rem 0;
  }
}
@media screen and (max-width: 767px) {
  .p-sitemap__head-link {
    padding-block: 0.4375rem;
    padding-inline: 0.75rem;
  }
}

.p-sitemap__head-link .p-sitemap__arrow {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.75rem;
  height: 1.75rem;
  background-color: var(--color-white);
  transition: translate var(--duration);
}
@media screen and (max-width: 767px) {
  .p-sitemap__head-link .p-sitemap__arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.p-sitemap__block {
  margin: 0;
}

.p-sitemap__block + .p-sitemap__block {
  margin-block-start: 1.5rem;
}

.p-sitemap__subhead {
  position: relative;
  margin-block-end: 0.75rem;
  padding-inline-start: 1rem;
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-sitemap__subhead {
    font-size: 1rem;
  }
}

.p-sitemap__subhead::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  border-width: 0.375rem 0 0.375rem 0.5rem;
  border-style: solid;
  border-color: transparent transparent transparent var(--color-navy);
  transform: translateY(-50%);
}

.p-sitemap__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 0;
  column-gap: 1.5rem;
  margin: 0;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .p-sitemap__list {
    grid-template-columns: 1fr;
    column-gap: 0;
  }
}

.p-sitemap__list > li {
  margin: 0;
}

.p-sitemap__list > li > a {
  height: 100%;
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding-block: 0.875rem;
  border-bottom: 0.0625rem solid var(--color-border);
  color: var(--color-black-sub);
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
  text-decoration: none;
  transition: color var(--duration);
}
@media (any-hover: hover) {
  .p-sitemap__list > li > a:hover {
    color: var(--color-navy);
  }
  .p-sitemap__list > li > a:hover .p-sitemap__arrow {
    translate: 0.25rem 0;
  }
}
@media screen and (max-width: 767px) {
  .p-sitemap__list > li > a {
    padding-block: 0.75rem;
    font-size: 1rem;
  }
}

.p-sitemap__label {
  min-width: 0;
  overflow-wrap: anywhere;
}

.p-sitemap__list > li > a .p-sitemap__arrow {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  margin-left: auto;
  background-color: var(--color-navy);
  transition: translate var(--duration);
}

body.page-template-page-thanks,
body.page-template-page-download-thanks {
  display: flex;
  flex-direction: column;
  min-block-size: 100dvh;
}
body.page-template-page-thanks .p-lowerPage-fv,
body.page-template-page-download-thanks .p-lowerPage-fv {
  margin-block-start: 0;
}

.l-main--thanks .p-thanks {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.p-thanks {
  padding-block: 4rem;
}
.p-thanks::before, .p-thanks::after {
  content: "";
  display: block;
}
.p-thanks::before {
  flex-grow: 2;
}
.p-thanks::after {
  flex-grow: 3;
}
@media screen and (max-width: 767px) {
  .p-thanks {
    padding-block: 2rem 3rem;
  }
}

.p-thanks__title {
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  line-height: 1.5;
  color: var(--color-navy);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-thanks__title {
    font-size: 1.25rem;
  }
}

.p-thanks__text {
  margin-block-start: 1.5rem;
  line-height: 1.9;
  text-align: center;
  color: var(--color-black-sub);
}
@media screen and (max-width: 767px) {
  .p-thanks__text {
    margin-block-start: 1rem;
    text-align: left;
  }
}

.p-thanks__btn-wrap {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-thanks__btn-wrap {
    margin-block-start: 1.5rem;
  }
}

.p-top-about {
  overflow-x: clip;
}

.p-top-about__content {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
}
@media screen and (max-width: 767px) {
  .p-top-about__content {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-top-about__content-img {
  display: block;
}
.p-top-about__content-img img {
  width: min(45.5208333333vw, 54.625rem);
}
@media screen and (max-width: 767px) {
  .p-top-about__content-img img {
    width: 100%;
    height: auto;
  }
}

.p-top-about__content-body {
  padding-block: min(4rem, 3.3333333333vw) min(5rem, 4.1666666667vw);
  padding-inline-start: min(5rem, 4.1666666667vw);
  background: url("../images/top-about-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-top-about__content-body {
    padding-block: 2rem;
    padding-inline: 0.625rem;
    background: url("data:image/webp;base64,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") var(--bg-cover);
  }
}

.p-top-about__content-title {
  margin-inline-start: 0.375rem;
}
.p-top-about__content-title .c-sectionTitle__main {
  font-size: min(5.2083333333vw, 6.25rem);
}
.p-top-about__content-title .c-sectionTitle__sub {
  font-size: min(1.6666666667vw, 2rem);
}
@media screen and (max-width: 767px) {
  .p-top-about__content-title .c-sectionTitle__main {
    font-size: 2.5rem;
  }
  .p-top-about__content-title .c-sectionTitle__sub {
    font-size: 1.125rem;
  }
}

.p-top-about__content-text {
  width: 40.5rem;
  margin-block-start: min(4.375rem, 3.6458333333vw);
}
.p-top-about__content-text p {
  color: var(--color-white);
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.p-top-about__content-text p + p {
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__content-text {
    width: 100%;
    margin-block-start: 2rem;
    padding-inline: 0.375rem;
  }
  .p-top-about__content-text p {
    font-size: 0.9375rem;
  }
  .p-top-about__content-text p + p {
    margin-block-start: 1.5rem;
  }
}

.p-top-about__btn-wrap {
  margin-block-start: min(2rem, 1.6666666667vw);
}
@media screen and (max-width: 767px) {
  .p-top-about__btn-wrap {
    margin-block-start: 2rem;
  }
}

.p-top-case {
  overflow-x: clip;
  padding-block: 4.25rem;
  background: url("../images/top-case-bg.webp") var(--bg-cover);
}
@media screen and (max-width: 767px) {
  .p-top-case {
    padding-block: 1.875rem 2rem;
    background: url("../images/top-case-bg-sp.webp") var(--bg-cover);
  }
}

.p-top-case__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 2.5rem;
  margin-block-start: 4rem;
}
@media screen and (max-width: 767px) {
  .p-top-case__cards {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1rem;
    margin-block-start: 1.875rem;
  }
}

.p-top-case__btn-wrap {
  display: flex;
  justify-content: center;
  margin-block-start: 2rem;
}
@media screen and (max-width: 767px) {
  .p-top-case__btn-wrap {
    margin-block-start: 1.5rem;
  }
  .p-top-case__btn-wrap .c-btn__text {
    margin-inline-start: 0.625rem;
  }
}

.p-top-fv {
  overflow-x: clip;
  margin-block-start: var(--header-height);
}

.p-top-fv__inner {
  position: relative;
  max-width: 120rem;
  margin-inline: auto;
  padding-block-end: min(2.125rem, 1.7708333333vw);
}
@media screen and (max-width: 767px) {
  .p-top-fv__inner {
    padding-block-start: 0.8125rem;
  }
}

.p-top-fv__head {
  padding-inline-start: min(2rem, 1.6666666667vw);
  background: var(--gradient-navy);
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: var(--en-font-family);
  font-size: min(10.4166666667vw, 12.5rem);
  font-weight: var(--fw-black);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-top-fv__head {
    padding-inline-start: 0;
    font-size: 3.5rem;
    line-height: 1;
    letter-spacing: 0.0357142857em;
    text-align: center;
  }
}

.p-top-fv__title {
  margin-block-start: min(-0.125rem, -0.1041666667vw);
  padding-inline-start: min(10rem, 8.3333333333vw);
  font-size: min(3.3333333333vw, 4rem);
  font-weight: var(--fw-black);
  line-height: 1.375;
  text-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .p-top-fv__title {
    margin-block-start: 0.5rem;
    padding-inline-start: 1rem;
    font-size: 1.25rem;
  }
}

.p-top-fv__title-small {
  font-size: min(2.5vw, 3rem);
  font-weight: var(--fw-black);
}
@media screen and (max-width: 767px) {
  .p-top-fv__title-small {
    font-size: 1.125rem;
  }
}

.p-top-fv__subText {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-top-fv__subText {
    display: block;
    margin-block-start: 0.625rem;
    padding-inline-start: 1rem;
    font-size: 0.875rem;
    font-weight: var(--fw-bold);
    line-height: 1.4285714286;
    letter-spacing: 0.0321428571em;
  }
}

.p-top-fv__splide-container {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  overflow: hidden;
  width: min(63.5416666667vw, 76.25rem);
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-top-fv__splide-container {
    position: relative;
    width: 100%;
    height: auto;
    margin-block-start: -1.25rem;
  }
}

.p-top-fv__splide {
  width: 100%;
  height: 100%;
}
.p-top-fv__splide .splide__track {
  width: 100%;
  height: 100%;
}

.p-top-fv__slide {
  position: relative;
}

.p-top-fv__slide-img img {
  display: block;
}
@media screen and (max-width: 767px) {
  .p-top-fv__slide-img img {
    height: auto;
    aspect-ratio: 360/220;
  }
}

.p-top-fv__slide-content {
  position: absolute;
  right: min(1.5625rem, 1.3020833333vw);
  bottom: min(10rem, 8.3333333333vw);
  width: fit-content;
  padding-block: min(0.75rem, 0.625vw);
  padding-inline: min(1rem, 0.8333333333vw);
  background: color-mix(in srgb, var(--color-white) 80%, transparent);
}
@media screen and (max-width: 767px) {
  .p-top-fv__slide-content {
    position: static;
    width: 100%;
    padding-block: 0.25rem 0.375rem;
    padding-inline: 1rem;
    background: #eee;
  }
}

.p-top-fv__slide-text {
  font-size: min(1.0416666667vw, 1.25rem);
  font-weight: var(--fw-medium);
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-align: center;
  min-width: min(39.5833333333vw, 47.5rem);
}
@media screen and (max-width: 767px) {
  .p-top-fv__slide-text {
    font-size: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: left;
    min-width: 0;
    width: 100%;
  }
}

.p-top-fv__box {
  display: flex;
  column-gap: max(2.375rem, 1.9791666667vw);
  align-items: center;
  margin-block-start: min(2.5rem, 2.0833333333vw);
  padding-inline-start: min(10.3125rem, 8.59375vw);
}
@media screen and (max-width: 767px) {
  .p-top-fv__box {
    column-gap: 1rem;
    justify-content: center;
    margin-inline-start: -0.3125rem;
    padding-inline: 1.25rem;
  }
}

.p-top-fv__box-img img {
  width: min(5.625vw, 6.75rem);
  height: auto;
  aspect-ratio: 3/4;
}
@media screen and (max-width: 767px) {
  .p-top-fv__box-img img {
    width: 3.15rem;
  }
}

.p-top-fv__box-text {
  padding-block-end: max(1rem, 0.8333333333vw);
  border-block-end: 1px solid #000;
  font-size: min(1.1458333333vw, 1.375rem);
  font-weight: var(--fw-bold);
  line-height: 1.4545454545;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-top-fv__box-text {
    display: none;
  }
}

.p-top-fv__box-note {
  margin-block-start: max(1rem, 0.8333333333vw);
  font-family: var(--en-font-family);
  font-size: min(0.8333333333vw, 1rem);
  font-weight: var(--fw-bold);
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-top-fv__box-note {
    margin-block-start: 0;
    font-size: 0.875rem;
    font-weight: var(--fw-bold);
    line-height: 1.4285714286;
  }
}

.p-top-fv__btns {
  display: flex;
  column-gap: min(1rem, 0.8333333333vw);
  align-items: center;
  margin-block-start: min(1.375rem, 1.1458333333vw);
  padding-inline-start: min(10rem, 8.3333333333vw);
}
@media screen and (max-width: 767px) {
  .p-top-fv__btns {
    display: none;
  }
}

.p-top-fv__btn {
  display: flex;
  column-gap: min(0.5rem, 0.4166666667vw);
  justify-content: center;
  align-items: center;
  width: min(18.75vw, 22.5rem);
  min-height: min(4.5833333333vw, 5.5rem);
  padding-block: min(0.8333333333vw, 1rem) max(0.8333333333vw, 1rem);
  padding-inline: min(0.75rem, 0.625vw);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.16);
  text-align: center;
}
.p-top-fv__btn.p-top-fv__btn--contact {
  position: relative;
  background: transparent;
}
.p-top-fv__btn.p-top-fv__btn--contact::before, .p-top-fv__btn.p-top-fv__btn--contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-top-fv__btn.p-top-fv__btn--contact::before {
  background: var(--gradient-contact);
  opacity: 1;
}
.p-top-fv__btn.p-top-fv__btn--contact::after {
  background: var(--gradient-overlay-hover), var(--gradient-contact-hover);
  opacity: 0;
}
.p-top-fv__btn.p-top-fv__btn--contact > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-top-fv__btn.p-top-fv__btn--contact:hover::before {
    opacity: 0;
  }
  .p-top-fv__btn.p-top-fv__btn--contact:hover::after {
    opacity: 1;
  }
}
.p-top-fv__btn.p-top-fv__btn--catalog {
  position: relative;
  background: transparent;
}
.p-top-fv__btn.p-top-fv__btn--catalog::before, .p-top-fv__btn.p-top-fv__btn--catalog::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  transition: opacity var(--duration-gradient-hover) var(--ease-in-out);
}
.p-top-fv__btn.p-top-fv__btn--catalog::before {
  background: var(--gradient-catalog);
  opacity: 1;
}
.p-top-fv__btn.p-top-fv__btn--catalog::after {
  background: var(--gradient-overlay-hover), var(--gradient-catalog-hover);
  opacity: 0;
}
.p-top-fv__btn.p-top-fv__btn--catalog > * {
  position: relative;
  z-index: 1;
}
@media (any-hover: hover) {
  .p-top-fv__btn.p-top-fv__btn--catalog:hover::before {
    opacity: 0;
  }
  .p-top-fv__btn.p-top-fv__btn--catalog:hover::after {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .p-top-fv__btn {
    justify-content: end;
    width: 100%;
    min-height: 4rem;
    margin-block-start: 0.25rem;
    padding-inline: 0.4375rem;
    border-radius: 0;
  }
  .p-top-fv__btn.p-top-fv__btn--catalog {
    column-gap: 0.625rem;
  }
}

.p-top-fv__btn-text {
  color: var(--color-white);
  font-size: min(1.25vw, 1.5rem);
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .p-top-fv__btn-text {
    font-size: 1.125rem;
    line-height: 1.3333333333;
  }
}

.p-top-fv__btn-icon {
  flex-shrink: 0;
  mask-image: url("data:image/webp;base64,UklGRtQBAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSGUBAAABgFXbbt1IEAQhEAIhTGIGNYMJg4aBwyDDoBAMQRAEQR92pat5/kaEArdtlG7H1O3oD/QPyVZvUTPt97F9AfhDzRVpSzL3NEBSmYcaJFJgvNVqKysT8VquN95PsNtrtqKyS6bIRKYzgj71qDGdOukLbRXIp4tgjWUyF9yCZbK4huSdPJzVoE8b1BMbvGhYtYSWgpNxlIpHY1fZIx1VR0SjRDR2IFHvJkwsPKjFyoPK9o7DzFqwqYBevmPvqYxoyOTTP4IrJXX1d0KnXUoq+64dlIggVSKfWw77gEQIClCwghZkdMFC1KUHE0Ehnsg/ZS0ZqPkHdwvvlQCBgnNIGl0jBUKJNumIaBTRgtyj5oHT9/QRX/tzNGfeAQs3gliT7wxCqubfsfjxPrPv5Anwec3vMPpXdALAHfk1uMr8bDNBcsb/SFMzoDX6NSDRzIFYLgTn6JbKBB30YMrLdtxdzVTuutH/IwQAVlA4IEgAAAAwBACdASowADAAPm0uk0YkIqGhLigAgA2JaQAAbSEYxLoNfIenx9irZCAA/vFEf/5BX/+P5P//HoBf/LUAbf/WQEX//4h0AAA=");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: min(1.25vw, 1.5rem);
  height: min(1.25vw, 1.5rem);
  margin-block-start: 0.125rem;
  background-color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-top-fv__btn-icon {
    width: 1.25rem;
    height: 1.25rem;
  }
}

.p-top-fv__news {
  position: absolute;
  right: 0;
  bottom: min(1rem, 0.8333333333vw);
  display: flex;
  column-gap: min(1rem, 0.8333333333vw);
  width: min(25vw, 30rem);
  padding-block: min(0.875rem, 0.7291666667vw);
  padding-inline: min(1rem, 0.8333333333vw) min(1.125rem, 0.9375vw);
  border-block: 2px solid #014284;
  border-inline-start: 2px solid #014284;
  background: #fff;
}
@media (any-hover: hover) {
  .p-top-fv__news:hover .p-top-fv__news-title {
    color: var(--color-blue);
  }
  .p-top-fv__news:hover .p-top-fv__news-img img {
    scale: 1.02;
  }
}
@media screen and (max-width: 767px) {
  .p-top-fv__news {
    position: static;
    column-gap: 0.5rem;
    align-items: center;
    width: 100%;
    margin-block-start: 0.375rem;
    padding-block: 0.375rem;
    padding-inline: 1rem;
    border-inline-start: none;
  }
}

.p-top-fv__news-img {
  flex-shrink: 0;
  overflow: hidden;
  border: 1px solid rgba(221, 221, 221, 0.87);
  border-radius: 4px;
}
.p-top-fv__news-img img {
  width: min(6.09375vw, 7.3125rem);
  height: auto;
  aspect-ratio: 4/3;
  transition: scale var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-top-fv__news-img img {
    width: 5rem;
  }
}

.p-top-fv__news-title {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: min(1.0416666667vw, 1.25rem);
  font-weight: var(--fw-medium);
  line-height: 1.4;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  transition: color var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-top-fv__news-title {
    font-size: 0.75rem;
    line-height: 1.3333333333;
  }
}

.p-top-logoSlider {
  overflow: hidden;
  width: 100%;
  padding-block: 1.875rem;
  border-block: 1px solid #ddd;
}
@media screen and (max-width: 767px) {
  .p-top-logoSlider {
    padding-block: 0.375rem 1rem;
    border: none;
  }
}
@media screen and (max-width: 767px) {
  .p-top-logoSlider.p-top-logoSlider--product {
    padding-block: 0.75rem;
    border-block: 1px solid #ddd;
  }
}

.p-top-logoSlider__items {
  display: flex;
  column-gap: 3.875rem;
  width: max-content;
  white-space: nowrap;
  animation: infinity-scroll 55s linear infinite;
}
@media screen and (max-width: 767px) {
  .p-top-logoSlider__items {
    column-gap: 1.125rem;
    animation: infinity-scroll 35s linear infinite;
  }
}

.p-top-logoSlider__item img {
  display: block;
  width: 120.75rem;
  height: 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-logoSlider__item img {
    width: 77.28rem;
    height: 4rem;
  }
}

@keyframes infinity-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.p-top-news {
  overflow-x: clip;
  padding-block: 3.75rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-top-news {
    padding-block: 2rem;
  }
}

.p-top-news__inner {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 7.5rem;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .p-top-news__inner {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1.5rem;
  }
}

.p-top-news__content {
  margin-block-start: 1.375rem;
}
@media screen and (max-width: 767px) {
  .p-top-news__content {
    margin-block-start: 0.75rem;
  }
}

.p-top-news__list {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  gap: 1.375rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-news__list {
    display: block;
  }
}

.p-top-news__item {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: auto auto;
  grid-column: 1/-1;
  row-gap: 0.5rem;
  padding-block-end: 1rem;
  padding-inline-end: 0.625rem;
  border-block-end: 1px solid var(--color-border);
}
@media screen and (max-width: 767px) {
  .p-top-news__item {
    display: block;
    padding-block-end: 0.75rem;
    padding-inline-end: 0;
  }
  .p-top-news__item + .p-top-news__item {
    margin-block-start: 0.9375rem;
  }
}

.p-top-news__link {
  display: contents;
}
@media (any-hover: hover) {
  .p-top-news__link:hover .p-top-news__icon {
    translate: 0.125rem 0;
  }
  .p-top-news__link:hover .p-top-news__item-title {
    color: var(--color-blue);
    text-decoration-color: var(--color-blue);
  }
}
@media screen and (max-width: 767px) {
  .p-top-news__link {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    gap: 0.3125rem 0.5rem;
  }
}

.p-top-news__label {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}

.p-top-news__date {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  color: var(--color-blue);
  font-family: var(--en-font-family);
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.3333333333;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-top-news__date {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    font-size: 0.9375rem;
    line-height: 1.3333333333;
  }
}

.p-top-news__item-title {
  position: relative;
  display: -webkit-box;
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-inline-start: 0.75rem;
  font-size: 1.25rem;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  white-space: normal;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.125rem;
  transition: color var(--duration) var(--ease-in-out), text-decoration-color var(--duration) var(--ease-in-out);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
@media screen and (max-width: 767px) {
  .p-top-news__item-title {
    grid-column: 1/3;
    grid-row: 2;
    margin-inline-start: 0;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-top-news__icon {
  grid-column: 3;
  grid-row: 2;
  align-self: start;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 2rem;
  height: 2rem;
  background-color: var(--color-navy);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-top-news__icon {
    align-self: center;
    width: 1.25rem;
    height: 1.25rem;
  }
}

.p-top-news__btn-wrap {
  display: flex;
  justify-content: center;
  margin-block-start: 2.375rem;
}
@media screen and (max-width: 767px) {
  .p-top-news__btn-wrap {
    margin-block-start: 1.5rem;
  }
}

.p-top-products {
  position: relative;
  overflow: clip;
  padding-block: 3.75rem 5rem;
}
.p-top-products::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: min(120rem, 100vw);
  height: auto;
  aspect-ratio: 1;
  background: url("../images/top-product-bg.webp") var(--bg-cover);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-top-products {
    padding-block: 2rem;
  }
  .p-top-products::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 22.5rem;
    height: 22.5rem;
    background-image: url("../images/top-product-bg-sp.webp");
    pointer-events: none;
  }
  .p-top-products::after {
    right: 0;
    bottom: 0;
    width: 22.5rem;
    height: 22.5rem;
    background-image: url("../images/top-product-bg-sp.webp");
    rotate: -180deg;
  }
}

.p-top-products__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 3.25rem 2rem;
  margin-block-start: 4.375rem;
}
@media screen and (max-width: 767px) {
  .p-top-products__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 0.5rem;
    margin-block-start: 1.75rem;
  }
}

.p-top-products__item--large {
  grid-column: span 2;
}

.p-top-products__item:nth-child(2) .p-top-products__card-desc {
  margin-block-start: 0.75rem;
}
.p-top-products__item:nth-child(2) .c-btnCard {
  margin-block-start: 1.75rem;
}
.p-top-products__item.p-top-products__item--small {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}
.p-top-products__item.p-top-products__item--small .p-top-products__card {
  display: grid;
  grid-template-rows: inherit;
  grid-row: inherit;
  row-gap: 0;
}
@media screen and (max-width: 767px) {
  .p-top-products__item:nth-child(2) {
    margin-block: 0.25rem;
  }
  .p-top-products__item:nth-child(2) .p-top-products__card-desc {
    margin-block-start: 1rem;
  }
  .p-top-products__item:nth-child(2) .c-btnCard {
    margin-block-start: 0.75rem;
  }
}

.p-top-products__card {
  display: block;
  overflow: hidden;
  border: 0.125rem solid var(--color-blue);
  border-radius: 1rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
  background: var(--color-white);
}
.p-top-products__card:hover .p-top-products__card-chevron,
.p-top-products__card:hover .c-btnCard__icon {
  translate: 0.125rem 0;
}
.p-top-products__card:hover .p-top-products__card-img img {
  scale: 1.05;
}
@media screen and (max-width: 767px) {
  .p-top-products__card {
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.08);
  }
}

.p-top-products__card--large {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-top-products__card--large {
    grid-template-columns: 1fr;
  }
}
.p-top-products__card--large .p-top-products__card-img {
  width: 18.5rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-top-products__card--large .p-top-products__card-img {
    width: 100%;
  }
  .p-top-products__card--large .p-top-products__card-img img {
    aspect-ratio: 328/200;
  }
}

.p-top-products__card-img {
  overflow: hidden;
}
.p-top-products__card-img img {
  width: 100%;
  height: auto;
  transition: scale var(--duration) var(--ease-in-out);
}

.p-top-products__item--small .p-top-products__card-img {
  aspect-ratio: 592/334;
}
.p-top-products__item--small .p-top-products__card-img img {
  height: 100%;
  object-fit: cover;
}

.p-top-products__card-foot {
  display: inline-grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  align-items: center;
  width: 100%;
  padding-block: 0.8125rem 1.125rem;
  padding-inline: 1rem;
}
.p-top-products__card-foot::before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-foot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-block: 0.5rem 0.625rem;
    padding-inline: 0.625rem 0.3125rem;
  }
  .p-top-products__card-foot::before {
    display: none;
  }
}

.p-top-products__card-name {
  color: var(--color-navy);
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-name {
    font-size: 1rem;
    line-height: var(--lh-normal);
    text-align: left;
  }
}

.p-top-products__card-chevron {
  flex-shrink: 0;
  mask-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%204C7.58172%204%204%207.58172%204%2012C4%2016.4183%207.58172%2020%2012%2020C16.4183%2020%2020%2016.4183%2020%2012C20%207.58172%2016.4183%204%2012%204ZM2%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012ZM10.2929%208.29289C10.6834%207.90237%2011.3166%207.90237%2011.7071%208.29289L14.7071%2011.2929C15.0976%2011.6834%2015.0976%2012.3166%2014.7071%2012.7071L11.7071%2015.7071C11.3166%2016.0976%2010.6834%2016.0976%2010.2929%2015.7071C9.90237%2015.3166%209.90237%2014.6834%2010.2929%2014.2929L12.5858%2012L10.2929%209.70711C9.90237%209.31658%209.90237%208.68342%2010.2929%208.29289Z'%20fill='white'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  margin-block-start: 0.125rem;
  background-color: var(--color-navy);
  transition: translate var(--duration) var(--ease-in-out);
}
@media screen and (max-width: 767px) {
  .p-top-products__card-chevron {
    width: 1.125rem;
    height: 1.125rem;
  }
}

.p-top-products__card-body {
  position: relative;
  display: flex;
  flex-direction: column;
  padding-block: 1.375rem 4.375rem;
  padding-inline: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-body {
    padding-block: 0.75rem;
    padding-inline: 0.8125rem;
  }
}

.p-top-products__card-head {
  display: grid;
  grid-template-columns: 0.25rem 1fr;
  grid-template-rows: auto auto;
  column-gap: 1rem;
}
.p-top-products__card-head::before {
  content: "";
  grid-column: 1;
  grid-row: 1/3;
  align-self: end;
  width: 0.25rem;
  height: 100%;
  background: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-top-products__card-head {
    column-gap: 0.5rem;
  }
}

.p-top-products__card-title {
  grid-column: 2;
  grid-row: 1;
  color: var(--color-navy);
  font-size: 2rem;
  font-weight: var(--fw-black);
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-title {
    font-size: 1.5rem;
  }
}

.p-top-products__card-category {
  grid-column: 2;
  grid-row: 2;
  margin-block-start: 0.3125rem;
  color: #666;
  font-size: 1.125rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-category {
    margin-block-start: 0.125rem;
    font-size: 0.9375rem;
  }
}

.p-top-products__card-desc {
  margin-block-start: 1.1875rem;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-desc {
    margin-block-start: 0.875rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-top-products__card-body .c-btnCard {
  position: absolute;
  right: 1.5rem;
  bottom: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-top-products__card-body .c-btnCard {
    position: static;
    right: auto;
    bottom: auto;
    margin-block-start: 0.75rem;
  }
}

:root {
  --clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
  --clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
  --clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
  --clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
  --clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
  --clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
  --clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
  --clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
}

@media (width <= 767px) {
  [data-only-device=md] {
    display: none;
  }
}

@media (width >= 768px) {
  [data-only-device=sm] {
    display: none;
  }
}

.u-sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

:root {
  --wp--preset--color--black: #000;
  --wp--preset--color--cyan-bluish-gray: #abb8c3;
  --wp--preset--color--white: #fff;
  --wp--preset--color--pale-pink: #f78da7;
  --wp--preset--color--vivid-red: #cf2e2e;
  --wp--preset--color--luminous-vivid-orange: #ff6900;
  --wp--preset--color--luminous-vivid-amber: #fcb900;
  --wp--preset--color--light-green-cyan: #7bdcb5;
  --wp--preset--color--vivid-green-cyan: #00d084;
  --wp--preset--color--pale-cyan-blue: #8ed1fc;
  --wp--preset--color--vivid-cyan-blue: #0693e3;
  --wp--preset--color--vivid-purple: #9b51e0;
}

.has-black-color {
  color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-color {
  color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-color {
  color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-color {
  color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-color {
  color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-color {
  color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-color {
  color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-color {
  color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-color {
  color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-color {
  color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-color {
  color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-color {
  color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-background-color {
  background-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-background-color {
  background-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-background-color {
  background-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-background-color {
  background-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-background-color {
  background-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-background-color {
  background-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-background-color {
  background-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-background-color {
  background-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-background-color {
  background-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-background-color {
  background-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-background-color {
  background-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-background-color {
  background-color: var(--wp--preset--color--vivid-purple) !important;
}