@charset "UTF-8";
:root {
  --rem: calc(1rem / 16);
  --color-01: #f7931e;
  --color-02: #f2f2f2;
  --color-03: #f15a24;
  --color-04: #e9d4e8;
  --color-05: #d0e8ff;
  --color-06: #d08e7b;
  --color-07: #a67c52;
  --color-08: #008e7b;
  --color-09: #0071bc;
  --color-10: #00456b;
  --color-11: #bfbfbf;
  --gradient-01: linear-gradient(#4d4d4d 50%, #231815 50%);
  --gradient-02: linear-gradient(#f00 50%, #db3435 50%);
  --font-size: var(--_font-size);
  --leading-trim: calc((1em - 1lh) / 2);
  --duration: .25s;
  --scrollbar: 0;
  --max: var(--_inline-viewport);
  --gap: calc(var(--_gap) * var(--rem));
  --nav: calc(var(--_nav) * var(--rem));
  --footer: calc(var(--_footer) * var(--rem));
  --heading-adjust: calc(2 * var(--rem));
}
@media (max-width: 767.98px) {
  :root {
    --_basis: 375;
    --_max: 767;
    --_gap: 20;
    --_nav: 60;
    --_inline-viewport: 100cqi;
    --_font-size: calc(16 / var(--_basis) * 100cqi);
  }
}
@media (min-width: 768px) {
  :root {
    --_basis: 1460;
    --_max: var(--_basis);
    --_gap: 0;
    --_nav: 125;
    --_inline-viewport: calc(var(--_basis) * var(--rem));
    --_font-size: min(16 / var(--_basis) * 100cqi, 16px);
  }
}
:root:is(.safari, .firefox) {
  --heading-adjust: calc(4 * var(--rem));
}
:root:is(.mobile.ios.safari.touch) {
  --heading-adjust: calc(3 * var(--rem));
}

:where(html) {
  interpolate-size: allow-keywords;
  font-size: var(--font-size);
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
   -ms-text-size-adjust: none;
       text-size-adjust: none;
  word-break: normal;
  color: #000;
  background-color: var(--color-05);
  overflow-wrap: anywhere;
  line-break: strict;
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: transparent;
}
@media (min-width: 768px) {
  :where(html) {
    container-type: inline-size;
  }
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:where(body) {
  inline-size: 100cqi;
  min-block-size: 100dvh;
}

:where(a) {
  text-decoration: none;
  text-underline-offset: 0.125em;
  word-break: break-all;
  color: inherit;
}

:where(a, [tabindex]) {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

:where(h1, h2, h3, h4, h5, h6) {
  font-weight: 700;
  font-size: inherit;
  line-height: 1.2;
  overflow-wrap: break-word;
  text-wrap: balance;
}

:where(ul, ol)[role=list] {
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  list-style: none;
}

:where(canvas, img, picture, svg, video) {
  display: block;
  max-inline-size: 100%;
  block-size: auto;
}

:where(svg:not([fill])) {
  fill: currentColor;
}

:where(iframe) {
  inline-size: 100%;
  border: none;
}

:where(input, button, select, textarea) {
  font: inherit;
  color: inherit;
  border-width: 1px;
  border-style: solid;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type=file] {
  border-width: 0;
  border-style: none;
}

:where(button) {
  background-color: rgba(0, 0, 0, 0);
}

:where([type=checkbox], [type=radio], [type=reset], [type=submit], button, label[for], select, summary) {
  cursor: pointer;
}

:focus-visible {
  outline-style: solid;
  outline-color: currentColor;
}

::-webkit-input-placeholder {
  color: var(--gray-01, darkGray);
}

::-moz-placeholder {
  color: var(--gray-01, darkGray);
}

:-ms-input-placeholder {
  color: var(--gray-01, darkGray);
}

::-ms-input-placeholder {
  color: var(--gray-01, darkGray);
}

::placeholder {
  color: var(--gray-01, darkGray);
}

:target {
  scroll-margin-block-start: var(--nav);
}

@media (max-width: 767.98px) {
  .layout.no-sidebar .l-side-start,
.layout.no-sidebar .l-side-end {
    display: none;
  }
  :root.is-open :is(.header_main, .l-main, .l-footer, .sticky-cta) {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-gutter: stable;
  }
  .l-main {
    -webkit-padding-before: var(--nav);
            padding-block-start: var(--nav);
  }
}
@media (min-width: 768px) {
  .layout {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 13rem 1fr 13rem;
  }
  .layout:not(.no-sidebar) {
    grid-template-areas: "header header   header" "side-s contents side-e" "footer footer   footer";
  }
  .layout.no-sidebar {
    grid-template-areas: "header   header   header  " "contents contents contents" "footer   footer   footer  ";
  }
  .l-main {
    display: contents;
  }
  .l-header {
    grid-area: header;
  }
  .l-contents {
    grid-area: contents;
    inline-size: 65.25rem;
    padding-inline: 0.625rem;
    background-color: var(--color-05);
  }
  .layout.no-sidebar .l-contents {
    inline-size: 100%;
  }
  .layout.no-sidebar :is(.l-side-start, .l-side-end) {
    display: none;
  }
  .l-side-start {
    grid-area: side-s;
  }
  .l-side-end {
    grid-area: side-e;
  }
  .l-footer {
    grid-area: footer;
  }
}
@media (min-width: 1460px) {
  .layout {
    grid-template-columns: 1fr 13rem min(100cqi, 65.25rem - var(--scrollbar)) 13rem 1fr;
  }
  .layout:not(.no-sidebar) {
    grid-template-areas: "header header header   header header" "...    side-s contents side-e ...   " "footer footer footer   footer footer";
  }
  .layout.no-sidebar {
    grid-template-areas: "header header   header   header   header" "...    contents contents contents ...   " "footer footer   footer   footer   footer";
  }
}
/* layout
-------------------------------------------------------------------------------- */
.m-container {
  display: flow-root;
  contain: layout;
  inline-size: calc(var(--max) - var(--gap) * 2);
  margin-inline: auto;
}
.m-container :is(.fluid, .contain) {
  inline-size: 100cqi;
  margin-inline: calc(50% - 50cqi);
}
.m-container .contain {
  padding-inline: calc(50cqi - 50%);
}
@media (min-width: 768px) {
  .m-container.\--520md {
    --max: calc((520 + var(--gap) * 2) * var(--rem));
  }
  .m-container.\--650md {
    --max: calc((650 + var(--gap) * 2) * var(--rem));
  }
  .m-container.\--740md {
    --max: calc((740 + var(--gap) * 2) * var(--rem));
  }
  .m-container.\--860md {
    --max: calc((860 + var(--gap) * 2) * var(--rem));
  }
}

/* screen reader text
-------------------------------------------------------------------------------- */
.m-sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  padding: 0;
  white-space: nowrap;
  border-width: 0;
}

/* indent
-------------------------------------------------------------------------------- */
.m-indent {
  padding-left: calc(var(--indent, 1) * 1em);
  text-indent: calc(var(--indent, 1) * -1em);
}

/* ellipsis
-------------------------------------------------------------------------------- */
.m-ellipsis {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
}

/* line clamp
-------------------------------------------------------------------------------- */
.m-line-clamp {
  overflow: clip;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  block-size: min(100%, var(--line-clamp, 2) * 1lh);
  -webkit-line-clamp: var(--line-clamp, 2);
  line-clamp: var(--line-clamp, 2);
}

/* button
-------------------------------------------------------------------------------- */
.m-btn-border {
  border-style: solid;
  border-color: var(--_m-btn-border);
}
@media (max-width: 767.98px) {
  .m-btn-border {
    border-width: 0.1875rem 0.5625rem 0.375rem 0;
  }
}
@media (min-width: 768px) {
  .m-btn-border {
    border-width: 0.0625rem 0.3125rem 0.1875rem 0;
  }
}

/* gradient heading
-------------------------------------------------------------------------------- */
.m-gradient-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  inline-size: 100%;
  block-size: 2.375rem;
  padding-inline: 1em;
  -webkit-padding-after: var(--heading-adjust);
          padding-block-end: var(--heading-adjust);
  font-weight: 700;
  color: #fff;
  background-image: var(--gradient-01);
}
.m-gradient-heading_more {
  --_data-hover-color-1: var(--color-05);
  display: grid;
  grid-template-columns: auto -webkit-max-content;
  grid-template-columns: auto max-content;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
  color: #fff;
}
.m-gradient-heading_more > svg {
  inline-size: 0.5rem;
  block-size: 0.75rem;
}

@media (max-width: 767.98px) {
  .m-heading-fluid:not(.\--md) {
    inline-size: calc(100% + 3.125rem);
    margin-inline: -1.5625rem;
  }
}
@media (min-width: 768px) {
  .m-heading-fluid {
    inline-size: calc(100% + 1.25rem);
    margin-inline: -0.625rem;
  }
}

/* ユーザーがモーションを希望しない場合
-------------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  ::-webkit-backdrop {
    background-attachment: scroll !important;
    -webkit-animation-duration: 1ms !important;
            animation-duration: 1ms !important;
    -webkit-animation-delay: 0s !important;
            animation-delay: 0s !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 1ms !important;
            transition-duration: 1ms !important;
    -webkit-transition-delay: 0s !important;
            transition-delay: 0s !important;
    scroll-behavior: auto !important;
  }
  *, *::before, *::after, ::backdrop {
    background-attachment: scroll !important;
    -webkit-animation-duration: 1ms !important;
            animation-duration: 1ms !important;
    -webkit-animation-delay: 0s !important;
            animation-delay: 0s !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 1ms !important;
         -o-transition-duration: 1ms !important;
            transition-duration: 1ms !important;
    -webkit-transition-delay: 0s !important;
         -o-transition-delay: 0s !important;
            transition-delay: 0s !important;
    scroll-behavior: auto !important;
  }
}
/* hover できる場合
-------------------------------------------------------------------------------- */
@media (any-hover: hover) {
  [data-hover]:not([data-hover=image]) {
    -webkit-transition-duration: var(--duration);
         -o-transition-duration: var(--duration);
            transition-duration: var(--duration);
    will-change: auto;
  }
  [data-hover=opacity] {
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity;
  }
  [data-hover=opacity]:is(:hover, :focus-visible) {
    outline: none;
    opacity: 0.5;
    will-change: opacity;
  }
  [data-hover=color] {
    -webkit-transition-property: color;
    -o-transition-property: color;
    transition-property: color;
  }
  [data-hover=color]:is(:hover, :focus-visible) {
    outline: none;
    color: var(--_data-hover-color-1);
    will-change: color;
  }
  [data-hover=image] {
    overflow: hidden;
  }
  [data-hover=image]:is(:hover, :focus-visible) [data-hover=target] {
    scale: 1.1;
    will-change: scale;
  }
  [data-hover=target] {
    -webkit-transition-property: scale;
    -o-transition-property: scale;
    transition-property: scale;
  }
  [data-hover=button] {
    -webkit-transition-property: color, background-color;
    -o-transition-property: color, background-color;
    transition-property: color, background-color;
  }
  [data-hover=button]:is(:hover, :focus-visible) {
    color: var(--_data-hover-color-2);
    background-color: var(--_data-hover-color-1);
    will-change: color, background-color;
  }
  [data-hover=underline]:is(:hover, :focus-visible) {
    text-decoration: underline;
  }
}
[data-hover=button] {
  color: var(--_data-hover-color-1);
  border: 1px solid var(--_data-hover-color-2);
  background-color: var(--_data-hover-color-2);
}

.c-conditional-search {
  display: grid;
  row-gap: 0.625rem;
  background-color: #fff;
}
.c-conditional-search .label {
  display: block;
}
.c-conditional-search .label::-webkit-details-marker {
  display: none;
}
.c-conditional-search .item {
  --_data-hover-color-1: var(--color-10);
  display: grid;
  grid-template-columns: -webkit-max-content 1fr;
  grid-template-columns: max-content 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
  -webkit-margin-after: 0.3125rem;
          margin-block-end: 0.3125rem;
  -webkit-padding-after: 0.3125rem;
          padding-block-end: 0.3125rem;
  font-size: 0.875rem;
  -webkit-border-after: 1px dotted var(--color-11);
          border-block-end: 1px dotted var(--color-11);
}
.c-conditional-search .image {
  inline-size: 1.875rem;
  block-size: 1.875rem;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767.98px) {
  .c-conditional-search {
    padding: 1.25rem 1.25rem 0;
    -webkit-border-before: 1px solid var(--color-11);
            border-block-start: 1px solid var(--color-11);
  }
  .c-conditional-search .list[open] .label > svg {
    scale: 1 -1;
  }
  .c-conditional-search .label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-block: 0.625rem;
    font-weight: 600;
    -webkit-border-before: 1px solid;
            border-block-start: 1px solid;
  }
  .c-conditional-search .label > span {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .c-conditional-search .label > svg {
    inline-size: 0.75rem;
    block-size: auto;
  }
}
@media (min-width: 768px) {
  .c-conditional-search {
    -ms-flex-line-pack: start;
        align-content: start;
    block-size: 100%;
    padding-inline: 0.625rem;
    -webkit-padding-after: 0.625rem;
            padding-block-end: 0.625rem;
  }
  .c-conditional-search .list {
    scrollbar-width: thin;
    overflow-y: auto;
    display: grid;
    -ms-scroll-chaining: none;
        overscroll-behavior: contain;
  }
}

.c-cta {
  display: grid;
  -ms-flex-line-pack: center;
      align-content: center;
  block-size: 100%;
  padding-inline: 1.125rem;
  font-style: normal;
  font-size: 0.875rem;
  line-height: 1;
}
.c-cta_head {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.125em 0.5em;
  -webkit-margin-after: 0.125rem;
          margin-block-end: 0.125rem;
  -webkit-padding-after: 0.3125rem;
          padding-block-end: 0.3125rem;
  -webkit-border-after: 1px dotted var(--color-11);
          border-block-end: 1px dotted var(--color-11);
}
.c-cta_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-cta_item.\--tel {
  -webkit-column-gap: 0.125em;
     -moz-column-gap: 0.125em;
          column-gap: 0.125em;
  font-weight: 900;
  font-size: 1.5rem;
}
.c-cta_item.\--mail {
  -webkit-column-gap: 0.25em;
     -moz-column-gap: 0.25em;
          column-gap: 0.25em;
  font-weight: 600;
}
.c-cta_item > svg {
  inline-size: auto;
  block-size: 1.25rem;
}
.c-cta_item > span {
  -webkit-padding-after: 0.25rem;
          padding-block-end: 0.25rem;
}
.c-cta_notice {
  grid-area: 2/span 2;
  font-size: 0.625rem;
}
@media (min-width: 768px) {
  .c-cta {
    -webkit-border-start: 1px solid var(--color-11);
            border-inline-start: 1px solid var(--color-11);
  }
}

@media (max-width: 767.98px) {
  .sticky-cta {
    position: fixed;
    inset-block-end: 0;
    z-index: 9;
    inline-size: 100%;
    block-size: 5.625rem;
    background-color: #fff;
  }
  .sticky-cta .top {
    position: absolute;
    inset-inline-end: 1.25rem;
    inset-block-start: -2.4375rem;
    overflow: clip;
    display: grid;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    inline-size: 2.5rem;
    block-size: 2.4375rem;
    border: 1px solid;
    -webkit-border-after: 0;
            border-block-end: 0;
    border-top-left-radius: 0.625rem;
    border-top-right-radius: 0.625rem;
    background-color: #fff;
  }
  .sticky-cta .top > svg {
    inline-size: 1.875rem;
    block-size: auto;
  }
}
.c-product-list-wrapper {
  inline-size: 62.5rem;
  margin-inline: auto;
}
@media (max-width: 767.98px) {
  .c-product-list-wrapper {
    inline-size: 100%;
  }
}

.c-product-list {
  display: flow-root;
  background-color: #fff;
  contain: layout;
}
.c-product-list_wrapper {
  display: grid;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-product-list_wrapper .item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}
.c-product-list_wrapper .media {
  overflow: clip;
  display: grid;
  -ms-flex-line-pack: center;
      align-content: center;
  border: 1px solid #707070;
  aspect-ratio: 1;
}
.c-product-list_wrapper .image {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-product-list_wrapper .body {
  display: grid;
  -webkit-margin-before: 0.25em;
          margin-block-start: 0.25em;
}
.c-product-list_wrapper .foot {
  font-weight: 600;
  text-align: end;
  color: #f00;
}
.c-product-list_wrapper .price {
  font-size: 1.5rem;
}
.c-product-list_wrapper .tax {
  font-size: 0.75rem;
}
@media (max-width: 767.98px) {
  .c-product-list {
    -webkit-margin-before: 1.25rem;
            margin-block-start: 1.25rem;
    padding: 1.25rem;
  }
  .c-product-list_wrapper {
    grid-template-columns: repeat(2, 10rem);
    row-gap: 1.25rem;
    -webkit-margin-before: 0.625rem;
            margin-block-start: 0.625rem;
  }
  .c-product-list_wrapper .item {
    row-gap: 0.25em;
  }
  .c-product-list_wrapper .media {
    inline-size: 10rem;
    block-size: 10rem;
  }
  .c-product-list_wrapper .body {
    font-size: 0.8125rem;
  }
}
@media (min-width: 768px) {
  .c-product-list {
    -webkit-margin-before: 2.1875rem;
            margin-block-start: 2.1875rem;
  }
  .c-product-list_wrapper {
    grid-template-columns: repeat(5, 11.25rem);
    padding: 1.25rem;
    /*
    //商品が6個未満の場合は最後の商品が表示されて欲しいのでこちらを使わず、is-hidden-on-pcを使う
    .item:last-of-type {
      display: none;
    }
    */
  }
  .c-product-list_wrapper .is-hidden-on-pc {
    display: none !important;
  }
  .c-product-list_wrapper .media {
    inline-size: 11.25rem;
    block-size: 11.25rem;
  }
  .c-product-list_wrapper .body {
    font-size: 0.875rem;
  }
}
.c-product-list .product_attention {
  padding: 1.25rem;
  font-size: 0.875rem;
  color: #00456b;
}
@media (max-width: 767.98px) {
  .c-product-list .product_attention {
    border: 1px solid #707070;
  }
}
.c-product-list .product_attention dl dt {
  font-size: 1.1875rem;
  font-weight: 600;
}
.c-product-list .product_attention dl dd {
  font-size: 0.875rem;
}

.c-search {
  --_c-search-bg: #949494;
  inline-size: min(100%, 19.75rem);
}
.c-search_wrapper {
  overflow: clip;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  block-size: calc(var(--_search-block-size) * var(--rem));
  margin-inline: auto;
  border: 1px solid var(--_c-search-bg);
  border-radius: 0.3125rem;
}
.c-search_wrapper:has(.c-search_input:is(:hover, :focus-visible)) {
  border-color: var(--color-10);
}
.c-search_wrapper:has(.c-search_input:is(:hover, :focus-visible)) .c-search_button {
  background-color: var(--color-10);
}
.c-search :is(.c-search_input, .c-search_button) {
  border: none;
}
.c-search_input {
  inline-size: 100%;
  padding-inline: 0.5em;
  border-radius: 0;
  background-color: #fff;
}
.c-search_button {
  block-size: 100%;
  outline: none;
  background-color: var(--_c-search-bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m15.02 16-5.85-5.84c-.46.39-.99.7-1.55.9A5.706 5.706 0 0 1 .33 7.61C.11 6.99 0 6.34 0 5.69 0 2.55 2.54 0 5.68 0s5.69 2.54 5.7 5.68c0 .64-.1 1.26-.31 1.86-.21.6-.53 1.17-.93 1.67l5.87 5.82-.98.98Zm-9.31-5.96a4.13 4.13 0 0 0 3.07-1.28 4.376 4.376 0 0 0 0-6.16c-.8-.83-1.91-1.3-3.07-1.28-2.41 0-4.37 1.94-4.38 4.35 0 2.41 1.96 4.36 4.37 4.36' fill='%23fff'/%3E%3C/svg%3E%0A");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 1rem;
  aspect-ratio: 1;
}
.c-search_button:is(:hover, :focus-visible) {
  background-color: var(--color-10);
}
@media (max-width: 767.98px) {
  .c-search {
    --_search-block-size: var(--_search-block-size-sm);
  }
}
@media (min-width: 768px) {
  .c-search {
    --_search-block-size: var(--_search-block-size-md);
  }
}

.header {
  display: flow-root;
  inline-size: 100cqi;
  contain: layout;
}
.header_nav_item.\--search {
  position: relative;
  cursor: pointer;
  outline: none;
}
.header_nav_item.\--search .lng_sele {
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header_nav_item.\--search .lng_dwn {
  position: absolute;
  inset-inline: 0;
  visibility: hidden;
  overflow: hidden;
  block-size: 0;
  color: #fff;
  border: 1px solid var(--color-11);
  background-color: var(--color-10);
  -webkit-transition: visibility 0s var(--duration), block-size var(--duration);
  -o-transition: visibility 0s var(--duration), block-size var(--duration);
  transition: visibility 0s var(--duration), block-size var(--duration);
}
.header_nav_item.\--search .lng_dwn > ul {
  display: grid;
  row-gap: 0.5em;
  padding: 1em;
  text-align: start;
  list-style-type: "";
}
@media (any-hover: hover) {
  .header_nav_item.\--search .lng_dwn > ul a:is(:hover, :focus-visible) {
    text-decoration: underline;
  }
}
.header_nav_item.\--search.is-open .lng_dwn {
  visibility: visible;
  block-size: auto;
  -webkit-transition: visibility 0s, block-size var(--duration);
  -o-transition: visibility 0s, block-size var(--duration);
  transition: visibility 0s, block-size var(--duration);
}

@media (max-width: 767.98px) {
  .header {
    position: fixed;
    inset-block-start: 0;
    z-index: 10;
    background-color: #fff;
  }
  .header_main {
    display: grid;
    grid-template-columns: auto -webkit-max-content -webkit-max-content;
    grid-template-columns: auto max-content max-content;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    block-size: var(--nav);
    -webkit-padding-start: 1.25rem;
            padding-inline-start: 1.25rem;
    border-bottom: 1px solid var(--color-11);
  }
  .header_main_link {
    inline-size: 9.75rem;
  }
  .header_control_item {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    display: grid;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    inline-size: 1.75rem;
    block-size: 100%;
    padding-inline: 1.4375rem;
  }
  .header_control_item > span.has_product {
    display: inline-block;
    position: relative;
  }
  .header_control_item > span.has_product .product_count {
    font-size: 9px;
    color: #fff;
    background: #ff1212;
    width: 13px;
    height: auto;
    display: inline-block;
    text-align: center;
    border-radius: 50%;
    font-weight: bold;
    position: absolute;
    top: 12px;
    right: -6px;
    z-index: 5;
  }
  .header_button {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    display: grid;
    -ms-flex-line-pack: justify;
        align-content: space-between;
    inline-size: 1.75rem;
    block-size: 1.125rem;
    padding: 1.3125rem 1.4375rem;
    border: none;
    -webkit-border-start: 1px solid var(--color-11);
            border-inline-start: 1px solid var(--color-11);
  }
  .header_button > span {
    inline-size: 100%;
    block-size: 1px;
    background-color: #000;
    -webkit-transition-property: rotate, scale, translate;
    -o-transition-property: rotate, scale, translate;
    transition-property: rotate, scale, translate;
    -webkit-transition-duration: calc(var(--duration) * 2);
         -o-transition-duration: calc(var(--duration) * 2);
            transition-duration: calc(var(--duration) * 2);
  }
  .header_button.is-open > span:nth-of-type(1) {
    rotate: 45deg;
    translate: 0 0.53125rem;
  }
  .header_button.is-open > span:nth-of-type(2) {
    scale: 0 1;
  }
  .header_button.is-open > span:nth-of-type(3) {
    rotate: -45deg;
    translate: 0 -0.53125rem;
  }
  .header-nav {
    position: fixed;
    inset-block-start: var(--nav);
    visibility: hidden;
    overflow-y: scroll;
    display: grid;
    grid-template-rows: repeat(2, -webkit-min-content) 1fr;
    grid-template-rows: repeat(2, min-content) 1fr;
    inline-size: 100%;
    block-size: calc(100dvh - var(--nav) - 108 * var(--rem));
    padding: 1.875rem 1.25rem;
    -webkit-border-after: 1px solid var(--color-11);
            border-block-end: 1px solid var(--color-11);
    background-color: #fff;
    -webkit-transition-property: visibility, translate, opacity;
    -o-transition-property: visibility, translate, opacity;
    transition-property: visibility, translate, opacity;
    -webkit-transition-duration: calc(var(--duration) * 2);
         -o-transition-duration: calc(var(--duration) * 2);
            transition-duration: calc(var(--duration) * 2);
    -webkit-transition-delay: calc(var(--duration) * 2) 0s 0s;
         -o-transition-delay: calc(var(--duration) * 2) 0s 0s;
            transition-delay: calc(var(--duration) * 2) 0s 0s;
    translate: 50% 0;
    opacity: 0;
    will-change: visibility, translate, opacity;
  }
  .header-nav.is-open {
    visibility: visible;
    -webkit-transition-delay: 0s;
         -o-transition-delay: 0s;
            transition-delay: 0s;
    translate: 0;
    opacity: 1;
  }
  .header_row {
    display: grid;
    row-gap: 1.25rem;
  }
  .header_row:first-of-type {
    -webkit-margin-after: 1.25rem;
            margin-block-end: 1.25rem;
    -webkit-padding-after: 1.25rem;
            padding-block-end: 1.25rem;
    -webkit-border-after: 1px solid;
            border-block-end: 1px solid;
  }
  .header_row_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    block-size: 2.875rem;
    padding-inline: 1.25rem;
    font-weight: 600;
    font-size: 1.5rem;
    background-color: var(--arrow-bg);
  }
  .header_row_item.\--1 {
    --arrow-bg: var(--color-10);
    color: #fff;
  }
  .header_row_item.\--2 {
    --arrow-bg: var(--color-05);
    color: var(--color-10);
  }
  .header_row_item.\--3 {
    --arrow-bg: var(--color-04);
    color: var(--color-03);
  }
  .header_row_item.\--4 {
    --arrow-bg: var(--color-01);
    color: #fff;
  }
  .header_row_item.\--5 {
    --arrow-bg: #999;
    color: #fff;
  }
  .header_row_item > span {
    -webkit-padding-after: 0.125rem;
            padding-block-end: 0.125rem;
  }
  .header_row_item > svg {
    inline-size: 1.25rem;
    block-size: 1.25rem;
  }
  .header_nav {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-auto-rows: -webkit-max-content;
    grid-auto-rows: max-content;
    align-self: end;
    gap: 1.25rem 3.125rem;
    -webkit-margin-before: 1.25rem;
            margin-block-start: 1.25rem;
    -webkit-padding-before: 1.25rem;
            padding-block-start: 1.25rem;
    -webkit-border-before: 1px solid;
            border-block-start: 1px solid;
  }
  .header_nav_item {
    display: grid;
    grid-template-columns: 1.75rem auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 0.5em;
       -moz-column-gap: 0.5em;
            column-gap: 0.5em;
    font-size: 1.125rem;
    color: var(--color-09);
  }
  .header_nav_item.\--search {
    grid-template-columns: -webkit-max-content;
    grid-template-columns: max-content;
    grid-column: span 2;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    color: var(--color-10);
  }
  .header_nav_item.\--search > svg {
    grid-area: 1/-1;
    margin-inline: auto 0.625rem;
    scale: 0.5;
  }
  .header_nav_item.\--search > svg:first-of-type {
    display: none;
  }
  .header_nav_item.\--search .lng_sele {
    grid-area: 1/-1;
    block-size: 3.125rem;
    padding-inline: 1.25rem;
    font-weight: 700;
    font-size: 1.125rem;
    border-color: var(--color-10);
    border-radius: 0.625rem;
    background-color: rgba(0, 0, 0, 0);
  }
  .header_nav_item.\--search .lng_dwn {
    inset-block-start: 3.3125rem;
    border-color: var(--color-10);
  }
  .header_nav_item.\--search .lng_dwn li {
    display: grid;
  }
  .header_nav_item > svg {
    justify-self: center;
    inline-size: auto;
    block-size: 1.75rem;
    color: var(--color-10);
  }
  [lang=ja] .header_nav_item > span {
    -moz-text-align-last: justify;
         text-align-last: justify;
  }
  :not([lang=ja]) .header_nav_item > span {
    word-break: auto-phrase;
  }
}
@media (min-width: 768px) {
  .c-search {
    margin-inline: auto;
  }
  .header {
    --_data-hover-color-1: var(--color-10);
    position: sticky;
    inset-block-start: 0;
    z-index: 10;
  }
  .header_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    inline-size: 100%;
    block-size: 2.5rem;
    font-size: 0.75rem;
    color: var(--color-10);
    background-color: #e6e6e6;
  }
  .header_nav_item {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 0.5em;
       -moz-column-gap: 0.5em;
            column-gap: 0.5em;
    block-size: 100%;
    -webkit-transition-property: background-color, opacity;
    -o-transition-property: background-color, opacity;
    transition-property: background-color, opacity;
    -webkit-transition-duration: var(--duration);
         -o-transition-duration: var(--duration);
            transition-duration: var(--duration);
  }
  .header_nav_item:not(.\--search) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-inline: 1.25em;
  }
  .header_nav_item.\--search {
    display: grid;
    border: none;
  }
  .header_nav_item.\--search > svg {
    grid-area: 1/-1;
    -webkit-margin-start: 1.25em;
            margin-inline-start: 1.25em;
  }
  .header_nav_item.\--search > svg.arrow {
    inline-size: 0.75rem;
    block-size: 0.5rem;
    margin-inline: auto 1.25em;
  }
  .header_nav_item.\--search .lng_sele {
    grid-area: 1/-1;
    block-size: 100%;
    padding-inline: 2.75em 2.5em;
    -webkit-padding-after: 0.125rem;
            padding-block-end: 0.125rem;
    outline: none;
    border-inline: 1px solid var(--color-11);
    border-block: none;
    background-color: rgba(0, 0, 0, 0);
  }
  .header_nav_item.\--search .lng_dwn {
    inset-block-start: 2.5rem;
  }
  .header_nav_item > svg {
    inline-size: auto;
    block-size: 1rem;
  }
  .header_nav_item > span {
    -webkit-padding-after: 0.125rem;
            padding-block-end: 0.125rem;
  }
  .header_nav_item:is(:hover, :focus-visible) {
    color: #fff;
    outline: none;
    background-color: var(--color-10);
  }
  .header_main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
    block-size: 5.3125rem;
    -webkit-border-after: 1px solid var(--color-11);
            border-block-end: 1px solid var(--color-11);
    background-color: #fff;
  }
  .header_main_link {
    inline-size: 16rem;
    margin-inline: 0.625rem 17.846875rem;
  }
  .header_control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
    font-size: 0.75rem;
  }
  .header_control_item {
    display: grid;
    justify-items: center;
    row-gap: 0.25em;
  }
  .header_control_item:nth-of-type(2) {
    position: relative;
    -webkit-margin-end: 1.3125rem;
            margin-inline-end: 1.3125rem;
  }
  .header_control_item:nth-of-type(2)::after {
    position: absolute;
    inset-inline: auto -1.25rem;
    inset-block: 0;
    -webkit-border-end: 1px solid;
            border-inline-end: 1px solid;
    content: "";
  }
  .header_control_item > svg {
    inline-size: auto;
    block-size: 1.25rem;
  }
  .header_control_item > svg.is-login {
    scale: 1 -1;
  }
  .header_control_item > span.has_product {
    display: inline-block;
    position: relative;
  }
  .header_control_item > span.has_product .product_count {
    font-size: 9px;
    color: #fff;
    background: #ff1212;
    width: 13px;
    height: auto;
    display: inline-block;
    text-align: center;
    border-radius: 50%;
    font-weight: bold;
    position: absolute;
    top: -3px;
    right: -18px;
    z-index: 5;
  }
}
.footer {
  inline-size: 100cqi;
  background-color: #fff;
}
.footer_foot {
  display: grid;
  place-items: center;
  font-size: 0.75rem;
  color: #fff;
  background-color: #000;
}
@media (max-width: 767.98px) {
  .footer_nav {
    display: grid;
    row-gap: 0.5rem;
    padding: 1.25rem;
    font-size: 1rem;
  }
  .footer_foot {
    padding-block: 0.75rem 6.375rem;
  }
}
@media (min-width: 768px) {
  .footer_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    block-size: 10.625rem;
    padding: 1.25rem 2.5rem;
  }
  .footer_link {
    -ms-flex-item-align: center;
        align-self: center;
    inline-size: 20.625rem;
  }
  .footer_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: end;
        align-self: flex-end;
    -webkit-column-gap: 2em;
       -moz-column-gap: 2em;
            column-gap: 2em;
    font-size: 0.75rem;
  }
  .footer_nav > a {
    position: relative;
  }
  .footer_nav > a ~ a::before {
    position: absolute;
    inset-inline-start: calc(-1em - 1.615px);
    inset-block-start: -0.078125rem;
    content: "|";
    pointer-events: none;
  }
  .footer_foot {
    block-size: 2.5rem;
  }
}

.side {
  display: grid;
}
.side.\--start .side_heading {
  color: #336a89;
}
.side.\--start .side_box.\--2 {
  color: var(--color-10);
}
.side.\--start .side_box.\--2 .link {
  --_m-btn-border: #006382;
  --arrow-bg: var(--color-10);
  background-color: var(--color-10);
}
.side.\--end {
  background-color: var(--color-04);
}
.side.\--end .side_heading {
  color: var(--color-03);
}
.side.\--end .side_box.\--2 {
  color: #a67c52;
}
.side.\--end .side_box.\--2 .link {
  --_m-btn-border: #fa7713;
  --arrow-bg: var(--_m-btn-border);
  background-color: #fa8c01;
}
.side_heading {
  display: grid;
  justify-items: center;
  font-weight: 700;
}
.side_heading > svg {
  inline-size: 2.25rem;
  block-size: auto;
}
.side_box {
  display: grid;
  row-gap: 0.625rem;
  background-color: #fff;
}
.side_box.\--2 .title {
  -webkit-padding-after: 0.25rem;
          padding-block-end: 0.25rem;
  font-weight: 700;
  text-align: center;
  -webkit-border-after: 3px solid;
          border-block-end: 3px solid;
}
.side_box.\--2 .list {
  display: grid;
}
.side_box.\--2 .list dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
}
.side_box.\--2 .list dt > sup {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.side_box.\--2 .link {
  display: grid;
  place-items: center;
  color: #fff;
  background-color: var(--color-10);
}
.side_box.\--2 .link > span {
  grid-column-start: 2;
}
.side_box.\--2 .link > svg {
  grid-column-start: 3;
  justify-self: start;
}
.side_banner {
  display: grid;
}
.side_catch {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-image: var(--gradient-02);
}
.side_link-box {
  display: grid;
}
.side_link-box > img {
  grid-area: 1/1/3/2;
}
.side_link-box .link {
  z-index: 1;
  -webkit-transition: -webkit-backdrop-filter var(--duration);
  transition: -webkit-backdrop-filter var(--duration);
  -o-transition: backdrop-filter var(--duration);
  transition: backdrop-filter var(--duration);
  transition: backdrop-filter var(--duration), -webkit-backdrop-filter var(--duration);
}
.side_link-box .link:is(:hover, :focus-visible) {
  -webkit-backdrop-filter: brightness(1.5);
          backdrop-filter: brightness(1.5);
}
.side_link-box .link.\--1 {
  grid-area: 1/1;
}
.side_link-box .link.\--2 {
  grid-area: 2/1;
}

@media (max-width: 767.98px) {
  .side {
    row-gap: 3rem;
    padding: 3.75rem 1.25rem;
  }
  .side.is-hide {
    display: none;
  }
  .side .full-image {
    inline-size: 100%;
    block-size: auto;
  }
  .side_heading {
    row-gap: 0.625rem;
    -webkit-margin-after: -1.5rem;
            margin-block-end: -1.5rem;
    font-size: 1.75rem;
  }
  .side_box.\--2 {
    padding-inline: 1.5rem;
    -webkit-padding-before: 2.5rem;
            padding-block-start: 2.5rem;
  }
  .side_box.\--2 .title {
    font-size: 2.1875rem;
  }
  .side_box.\--2 .title > span {
    font-size: 3.1875rem;
  }
  .side_box.\--2 .list {
    row-gap: 3rem;
    -webkit-margin-after: 0.75rem;
            margin-block-end: 0.75rem;
  }
  .side_box.\--2 .list dt {
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    font-size: 2.0625rem;
  }
  .side_box.\--2 .list dt > span {
    font-size: 3rem;
  }
  .side_box.\--2 .list dt > sup {
    font-size: 70%;
    translate: -0.75rem 0.75rem;
  }
  .side_box.\--2 .list dd {
    font-size: 1.25rem;
  }
  .side_box.\--2 .link {
    grid-template-columns: 3.5rem 1fr 3.5rem;
    block-size: 3.75rem;
    -webkit-padding-before: 0.125rem;
            padding-block-start: 0.125rem;
    font-size: 1.5625rem;
  }
  .side_box.\--2 .link > svg {
    inline-size: 1.75rem;
    block-size: 1.75rem;
  }
  .side_banner {
    row-gap: 1.25rem;
  }
  .side_banner img {
    inline-size: 100%;
    block-size: auto;
  }
  .side_catch {
    block-size: 4rem;
    font-size: 1.5rem;
  }
  .side_link-box {
    grid-template-rows: auto 5.125rem;
  }
  .side_link-box > img {
    inline-size: 100%;
    block-size: auto;
  }
}
@media (min-width: 768px) {
  .side {
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
    row-gap: 1.5625rem;
    inline-size: 13rem;
    padding: 1.875rem 0.625rem;
  }
  .side.\--start {
    grid-template-rows: -webkit-max-content 62.375rem auto;
    grid-template-rows: max-content 62.375rem auto;
    -ms-flex-line-pack: start;
        align-content: start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
  .side_heading {
    row-gap: 0.25rem;
    font-size: 1.1875rem;
  }
  .side_box {
    padding-inline: 0.625rem;
  }
  .side_box.\--2 {
    -webkit-padding-before: 1.25rem;
            padding-block-start: 1.25rem;
  }
  .side_box.\--2 .title {
    font-size: 1.1875rem;
  }
  .side_box.\--2 .title > span {
    font-size: 1.75rem;
  }
  .side_box.\--2 .list {
    row-gap: 1.25rem;
  }
  .side_box.\--2 .list dt {
    -webkit-column-gap: 0.5rem;
       -moz-column-gap: 0.5rem;
            column-gap: 0.5rem;
    font-size: 1.1875rem;
  }
  .side_box.\--2 .list dt > span {
    font-size: 1.5rem;
  }
  .side_box.\--2 .list dt > sup {
    -webkit-margin-start: -0.5rem;
            margin-inline-start: -0.5rem;
  }
  .side_box.\--2 .list dd {
    font-size: 0.875rem;
  }
  .side_box.\--2 .list dd > span {
    font-size: 0.625rem;
    color: #000;
  }
  .side_box.\--2 .link {
    grid-template-columns: 1.875rem 1fr 1.875rem;
    block-size: 1.875rem;
    font-size: 0.875rem;
  }
  .side_box.\--2 .link > svg {
    inline-size: 0.9375rem;
    block-size: 0.9375rem;
  }
  .side_banner {
    row-gap: 0.625rem;
  }
  .side_catch {
    block-size: 2.375rem;
  }
  .side_link-box {
    grid-template-rows: auto 2.875rem;
  }
}
.swiper {
  display: flow-root;
  background-color: #fff;
  contain: layout;
}
.swiper-slide > img {
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: 527/210;
  -o-object-fit: cover;
     object-fit: cover;
}
.swiper-pagination {
  position: revert !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  -webkit-column-gap: 0.5rem !important;
     -moz-column-gap: 0.5rem !important;
          column-gap: 0.5rem !important;
  margin-block: 0.625rem !important;
}
.swiper-pagination-bullet {
  --swiper-pagination-bullet-inactive-color: #999;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-color: #000;
}
:is(.swiper-button-prev, .swiper-button-next) {
  inset-block: 0;
  inline-size: 1.875rem !important;
  block-size: 1.875rem !important;
  margin-block: auto;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M30 15c0-8.28-6.72-15-15-15S0 6.72 0 15s6.72 15 15 15 15-6.72 15-15m-18.69-.05 9.55 9.55-2.12 2.12L7.07 14.95 18.64 3.38l2.12 2.12-9.45 9.45Z' fill='%23fff'/%3E%3C/svg%3E%0A");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
:is(.swiper-button-prev, .swiper-button-next)::after {
  display: none;
}
.swiper-button-prev {
  inset-inline-start: 1.25rem;
}
.swiper-button-next {
  inset-inline-end: 1.25rem;
  scale: -1 1;
}
@media (max-width: 767.98px) {
  :is(.swiper-button-prev, .swiper-button-next) {
    translate: 0 -0.875rem;
  }
}
@media (min-width: 768px) {
  .swiper {
    -webkit-padding-before: 1.875rem;
            padding-block-start: 1.875rem;
  }
  .swiper-slide {
    padding-inline: 0.46875rem;
  }
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 !important;
}

.home-news {
  --_news-gap: calc(20 / 16 * 1rem);
  display: flow-root;
  background: #fff;
  contain: layout;
}
.home-news_wrapper {
  -webkit-column-gap: var(--_news-gap);
     -moz-column-gap: var(--_news-gap);
          column-gap: var(--_news-gap);
  padding: var(--_news-gap);
  padding-bottom: 0;
}
.home-news_heading > span:nth-of-type(1) {
  font-weight: 900;
  font-size: 1.625rem;
  color: var(--color-10);
}
.home-news_heading > span:nth-of-type(2) {
  font-size: 0.875rem;
}
.home-news_list {
  display: grid;
  list-style: "";
}
.home-news_link_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: var(--_news-gap);
  padding-bottom: var(--_news-gap);
}
.home-news_link_wrapper > a {
  text-decoration: underline;
}
.home-news_link {
  --_data-hover-color-1: var(--color-10);
}
@media (max-width: 767.98px) {
  .home-news_wrapper {
    display: grid;
    row-gap: 1em;
  }
  .home-news_heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-column-gap: 0.5rem;
       -moz-column-gap: 0.5rem;
            column-gap: 0.5rem;
  }
  .home-news_list {
    row-gap: 1em;
    padding-block: 1em;
    border-block: 1px solid;
  }
  .home-news_list > li:nth-of-type(n + 3) {
    display: none;
  }
  .home-news_link {
    display: grid;
  }
}
@media (min-width: 768px) {
  .home-news_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .home-news_heading {
    display: grid;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-line-pack: center;
        align-content: center;
    justify-items: center;
    row-gap: 0.25em;
  }
  .home-news_list {
    row-gap: 0.25em;
    padding-block: 0.5em;
    -webkit-border-start: 1px solid;
            border-inline-start: 1px solid;
  }
  .home-news_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: var(--_news-gap);
       -moz-column-gap: var(--_news-gap);
            column-gap: var(--_news-gap);
    inline-size: -webkit-fit-content;
    inline-size: -moz-fit-content;
    inline-size: fit-content;
    -webkit-padding-start: var(--_news-gap);
            padding-inline-start: var(--_news-gap);
  }
  .home-news_link > time {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

/* helper
-------------------------------------------------------------------------------- */
@media (max-width: 767.98px) {
  .sm {
    display: block;
  }
  .smf {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .smg {
    display: grid;
  }
  :is(.md, .mdf, .mdg) {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .md {
    display: block;
  }
  .mdf {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .mdg {
    display: grid;
  }
  :is(.sm, .smf, .smg) {
    display: none !important;
  }
}
.upper {
  text-transform: uppercase;
}
