@charset "UTF-8";
/*!
 * =================================================
 * !!このCSSはSASSから生成されており、CSSを直接編集すると破たんします!!
 * =================================================
 *
 * Author and Copyright
 */
/*!
 * Created   :  2023.02
 * Modified  :  *******
 */
/*!
 * SASS  :  sass/fb-font-setting.scss
 * Modified  :  *******
 */
/* font setting */
/*!
 * google font weights
 * 'Noto Sans' : NotoSans-Regular normal, NotoSans-Italic normal, NotoSans-Medium 500, NotoSans-Bold bold, NotoSans-SemiBold 600, NotoSans-SemiBoldItalic 600,
 * 'Noto Sans JP' : NotoSansJP-Regular normal, NotoSansJP-SemiBold 600,
  */
html {
  /*font-size: 16px;*/
  line-height: var(--line-height-base, 1.5);
}

body {
  font-size: calc(0.875rem - 1px);
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  color: var(--text-color);
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
  /* END for Tablet over */
  /* END for lg */
}
@media screen and (max-width: 359px) {
  body { /* for sm */
    font-size: 0.75rem;
  }
}
@media print, (min-width: 768px) {
  body { /* for Tablet over */
    font-size: calc(1rem - 1px);
  }
}
@media print, (min-width: 992px) {
  body { /* for lg */
    font-size: 1rem;
    font-weight: 400;
  }
}

.montserrat {
  font-family: "Montserrat", sans-serif;
}

/* Noto+Sans+JP font-weight:400,700 */
/* Barlow+Condensed font-weight:400 */
h1, h2, h3, h4, h5, h6,
.palt {
  font-feature-settings: "palt";
  line-height: var(--line-height-sm, 1.25);
}

h3 {
  font-size: 1.25em;
  font-weight: 500;
}

/*!
 * SASS  :  sass/fb-base-setting.scss
 * Modified  :  *******
 */
/* size Definition */
/*
sm =  ( < 992 )
lg =  ( 992 =< (1280) )
xlg = ( 1281 < )
*/
/* media querys Definition */
/* base setting */
/* CSS custom properties for cascading variables */
/* IEではサポートされていないので使用注意 */
:root {
  --contents-max-width: 1366px;
  --text-color: #222;
  --logo-color: #003D5C;
  --gray-color: #ccc;
  --gray-eee-color: #eee;
  --gray-dark-color: #666;
  --gray-mid-color: #999;
  --gray-safe-color: #767676;
  --gray-pure-color: #7F7F7F;
  --gray-light-color: #F8F9FE;
  --gray-blue-text-color: #54798f;
  --gray-blue-color: #9BA4B8;
  --gray-blue-mid-color: #bac2d5;
  --gray-blue-light-color: #E1E6F1;
  --accent-color: #E2E0D7;
  --red-text-color: #C50000;
  --red-dark-color: #A70000;
  --blue-pick-color: #0070C0;
  --red-pick-color: #FF0000;
  --yellow-pick-color: #FED533;
  --green-pick-color: #77933C;
  --purple-pick-color: #7030A0;
  --orange-pick-color: #FF6600;
  --brown-pick-color: #984807;
  --pink-pick-color: #F0728F;
  --skin-pick-color: #FCD5B5;
  --line-height-sm: 1.25;
  --line-height-base: 1.5;
  --list-padding-y: 0.25rem;
  --scroll-offset: 120px;
  /*
    --primary-color: #3f3f3f;
    --dark-gray-color: #989898;
    // --gray-color: #c0c0c0;
    --light-gray-color: #efefef;
    --x-light-gray-color: #f3f3f3;
    --xx-light-gray-color: #f8f8f8;
    --white-color: #fff;
    --black-color: #202020;
    --moderate-color: #E8DFDA;
    --base-color: #EDEAE8;
    --pink-color: #F835E0;
    --light-blue-color: #5B98D2;
    --light-green-color: #8FCD50;
  */
  --z-index--1: -1;
  --z-index-0: 0;
  --z-index-1: 1;
  --z-index-low: 1;
  --z-index-middle: 2;
  --z-index-high: 3;
  /*
  * // .splide__track, .controller-track が z:0
  * // スライダーコントローラーのbtnが z:1
  * // .to-top が z:1
  * // .search-bar が z:2
  * // .sm-menu が z:3
  * // .sticky-message-bar .message-bar が z:3
  * // .site-header .menu-trigger が z:3
  * // .sticky-header-nav .header-nav が z:3
  * // .site-header が z:4 （.account-summary-panel-container, .sm-menu をz:3より上に表示するため）
  */
}

/* normalize over write */
button, input, optgroup, select, textarea {
  line-height: 1.25;
}

[type=button]:focus-visible, [type=reset]:focus-visible, [type=submit]:focus-visible, button:focus-visible {
  outline-width: medium;
  outline-style: auto;
  outline-color: currentcolor;
}

/* SAMPLE */
.sample-title {
  color: var(--key-color, #E4731C); /* IEではフォールバック値を設定するも無効となる ※カスタムプロパティ自体がサポートされていない為 ※フォールバックは変数を指定していない時用 */
}

*, ::after, ::before {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--scroll-offset);
}

@media print, (min-width: 992px) {
  :root {
    --scroll-offset: 160px;
  }
}
html:has(.form-control:focus),
html:has(body.scroll-padding-top-none) {
  scroll-padding-top: 0;
}

main {
  display: block; /* IEではmainがinline要素と認識される */
}
@media print, (min-width: 992px) {
  main { /* for lg */
    min-height: 40vh;
  }
}

@media print, (min-width: 992px) { /* for lg */
  .contents.-space-ctrl,
  .contents.page-cart {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
main > section {
  padding: 6rem 0 7rem;
}

@media print, (min-width: 992px) {
  .contents.-space-ctrl > .related-items,
  .contents.page-cart > .related-items,
  .contents.px-1\.25rem-lg > .related-items { /* for lg */
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}

@media print, (min-width: 992px) {
  .contents.-space-ctrl > .bg-color-gray-light,
  .contents.page-cart > .bg-color-gray-light,
  .contents.px-1\.25rem-lg > .bg-color-gray-light { /* for lg */
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

ul, ol, dl {
  padding: 0;
  margin: 0;
}

ul {
  list-style: none;
}

[class*=list] {
  list-style: none;
}

ul.list-disc {
  list-style: disc;
  margin-block: 0.75rem;
  padding-inline: 1.25rem 0.75rem;
}

.li {
  padding-top: var(--list-padding-y);
  padding-bottom: var(--list-padding-y);
}

ul.list-disc li.li-info {
  list-style: none;
}

ul.list-disc li.li-info::before {
  content: "※";
}

h1, h2, h3, h4, h5, h6, p {
  margin-bottom: 0;
}

.h1_hide_visually {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

p {
  margin-top: 1em;
}

figure,
dd {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

iframe {
  max-width: 100%;
  vertical-align: top;
}

dialog {
  overscroll-behavior-y: none;
  border: none;
}

a {
  text-decoration: none;
  color: var(--logo-color, #003D5C);
  font-weight: 500;
  transition: all 0.16s;
}

.text-feedback a,
.color-red a {
  color: var(--red-text-color, #C50000);
}

p > a,
p > span > a {
  text-decoration: underline;
}

.link {
  color: #000;
}

.weight-normal {
  font-weight: normal;
}

.wrapper {
  overflow: hidden;
}

.container {
  width: var(--contents-max-width, 1366px);
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

@media print, (min-width: 992px) {
  .container.max-w750 { /* for lg */
    width: 750px;
  }
}

@media print, (min-width: 992px) {
  .container.max-w1200 { /* for lg */
    width: 1200px;
  }
}

@media print, (min-width: 992px) {
  .container.max-w1024 { /* for lg */
    width: 1024px;
  }
}

@media print, (min-width: 992px) {
  .container.max-w1400 { /* for lg */
    width: 1400px;
  }
}

@media print, (min-width: 992px) {
  .contents-main.min-w986 { /* for lg */
    min-width: 1066px;
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media print, (min-width: 992px) {
  .min-w-1366 { /* for lg */
    min-width: var(--contents-max-width, 1366px);
    overflow-x: auto;
    overflow-y: visible;
  }
}

/* accessibility */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.visually-hidden:focus,
.visually-hidden:active {
  position: relative;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
  overflow: visible;
  white-space: normal;
  background-color: #fff;
  color: var(--logo-color, #003D5C);
  padding: 0.5em;
  text-decoration: underline;
  z-index: 1000;
}

/* hover */
.hover-bg-color:hover img {
  filter: brightness(0%) invert(100%);
}

@media print, (min-width: 992px) { /* for lg */
  a:not(.hover-has-button):not(.hover-bg-color):not(.a-hover-none):hover,
  .hover-animation:hover {
    animation: hover 0.2s ease-out forwards;
  }
  a.hover-color:hover {
    color: var(--logo-color);
  }
  .prev-button:hover,
  .next-button:hover {
    background-color: rgba(255, 255, 255, 0.85);
  }
  button.btn-primary:hover {
    opacity: 0.9;
  }
  a.ui-button.btn-primary:hover {
    color: #fff;
  }
  a.hover-has-button:hover img,
  a.hover-has-button:hover .hover-text {
    animation: hover 0.2s ease-out forwards;
  }
  .hover-bg-color:hover {
    background-color: var(--logo-color, #003D5C);
    border: transparent;
    color: #fff;
    transition: background-color 0.16s ease;
  }
  label:not(.hover-none):hover {
    cursor: pointer;
  }
  .form-conf label:hover {
    cursor: auto;
  }
  .colors-item:hover {
    cursor: pointer;
  }
  select.front-form-control:hover,
  select.form-control:hover {
    cursor: pointer;
  }
} /* END for lg */
/* animation keyframes */
@keyframes hover {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 0.8;
  }
}
@keyframes hover-brightness {
  0% {
    filter: brightness(1.2);
  }
  100% {
    filter: brightness(1.05);
  }
}
@keyframes on {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
  }
}
@keyframes off {
  0% {
    opacity: 1;
  }
  60% {
    opacity: 0.3;
  }
  100% {
    opacity: 0;
  }
}
@keyframes scale-115 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
@keyframes display-flex-none {
  99% {
    display: flex;
  }
  100% {
    display: none;
  }
}
@keyframes display-inline-none {
  99% {
    display: inline-block;
  }
  100% {
    display: none;
  }
}
@keyframes reload-icon-rotate {
  0% {
    rotate: 0deg;
  }
  100% {
    rotate: 3600deg;
  }
}
@keyframes form-attention {
  0% {
    background-color: rgba(255, 193, 7, 0);
  }
  10% {
    background-color: rgba(255, 193, 7, 0.2);
  }
  90% {
    background-color: rgba(255, 193, 7, 0.2);
  }
  100% {
    background-color: rgba(255, 193, 7, 0);
  }
}
/* loading-spinner */
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes opacity-0-to-1 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes display-none-to-flex {
  from {
    display: none;
  }
  to {
    display: flex;
  }
}
@keyframes display-flex-to-none {
  from {
    display: flex;
  }
  to {
    display: none;
  }
}
@keyframes opacity-1-to-0 {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/*!
 * SASS  :  sass/fb-grid-system.scss
 * Modified  :  *******
 */
/* grid system */
.row {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.row-s {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

/* flex */
.flex {
  /* END for lg */
}
@media print, (min-width: 992px) {
  .flex { /* for lg */
    display: flex;
  }
}

.flex- {
  display: flex;
}

@media screen and (max-width: 991.98px) {
  .flex-sm { /* for sm */
    display: flex;
  }
}

.flex-center {
  align-items: center;
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.justify-around {
  justify-content: space-around;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-column {
  flex-direction: column;
}

.flex-column-reverse {
  flex-direction: column-reverse;
}

.align-start {
  align-items: flex-start;
}

.align-center {
  align-items: center;
}

.align-end {
  align-items: flex-end;
}

.justify-end {
  justify-content: flex-end;
}

.align-stretch,
.align-stretch > .item {
  align-items: stretch;
}

.justify-center {
  justify-content: center;
}

@media print, (min-width: 992px) {
  .justify-center-lg { /* for lg */
    justify-content: center;
  }
}

.flex-fix {
  flex-grow: 0;
  flex-shrink: 0;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-grow-1 {
  flex-grow: 1;
}

.align-self-start {
  align-self: flex-start;
}

.align-self-end {
  align-self: flex-end;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .flex-column-sm {
    flex-direction: column;
  }
}
/* grid */
.grid {
  display: grid;
}

.grid-cols-2,
.grid-cols-2-auto {
  grid-template-columns: repeat(2, auto);
}

.grid-cols-2-1fr {
  grid-template-columns: repeat(2, 1fr);
}

.grid-cols-auto {
  grid-auto-columns: auto;
}

.place-center {
  place-items: center;
}

.grid-center {
  display: grid;
  place-items: center;
}

/* grid template */
.grid-span-3 {
  grid-column: span 3;
}

.grid-span-2 {
  grid-column: span 2;
}

.grid-span-1 {
  grid-column: span 1;
}

/* cols */
.cols-3,
.cols-4,
.cols-5 {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .cols-3 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .cols-3 > .item {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .cols-3 > .item,
  .cols-4 > .item {
    width: 50%;
  }
  .-sm-cols-3 > .item {
    width: 33.3333%;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .cols-3-lg,
  .cols-4-lg {
    display: flex;
    flex-wrap: wrap;
  }
  .cols-3 > .item,
  .cols-3-lg > .item {
    width: 33.3333%;
  }
  .cols-4 > .item {
    width: 25%;
  }
  .cols-5 > .item {
    width: 20%;
  }
} /* END for lg */
/* gap */
.gap-2em {
  gap: 2em;
}

.gap-0\.5rem {
  gap: 0.5rem;
}

.gap-0\.75rem {
  gap: 0.75rem;
}

.gap-1rem {
  gap: 1rem;
}

.gap-1\.25rem {
  gap: 1.25rem;
}

.gap-1\.5rem {
  gap: 1.5rem;
}

.gap-1\.875rem {
  gap: 1.875rem;
}

.gap-2rem {
  gap: 2rem;
}

.gap-2\.5rem {
  gap: 2.5rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .gap-0\.5rem-sm {
    gap: 0.5rem;
  }
  .row-gap-0\.25rem-sm {
    row-gap: 0.25rem;
  }
}
@media print, (min-width: 992px) { /* for print, for lg */
  .gap-1\.5rem-lg {
    gap: 1.5rem;
  }
  .gap-1\.75rem-lg {
    gap: 1.75rem;
  }
  .gap-1\.875rem-lg {
    gap: 1.875rem;
  }
  .gap-60px-lg {
    gap: 60px;
  }
}
/* col */
.col {
  padding-left: 1rem;
  padding-right: 1rem;
}

.col-equal {
  flex: 1 1 0%;
}

.col-1- {
  width: 8.3333%;
}

.col-2- {
  width: 16.6666%;
}

.col-3- {
  width: 25%;
}

.col-4- {
  width: 33.3333%;
}

.col-5- {
  width: 41.6666%;
}

.col-6-, .half- {
  width: 50%;
}

.col-7- {
  width: 58.3333%;
}

.col-8- {
  width: 66.6666%;
}

.col-9- {
  width: 75%;
}

.col-10- {
  width: 83.3333%;
}

.col-11- {
  width: 91.6666%;
}

.col-12-, .full- {
  width: 100%;
}

.offset-05- {
  margin-left: 4.1666%;
}

.offset-1- {
  margin-left: 8.3333%;
}

.offset-2- {
  margin-left: 16.6666%;
}

.offset-3- {
  margin-left: 25%;
}

.offset-4- {
  margin-left: 33.3333%;
}

.offset-6- {
  margin-left: 50%;
}

.w-40\%- {
  width: 40%;
}

.w-60\%- {
  width: 60%;
}

/* order */
.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .flex-wrap-sm {
    flex-wrap: wrap;
  }
  .flex-column-sm {
    flex-direction: column;
  }
  .flex-column-reverse-sm {
    flex-direction: column-reverse;
  }
  .align-center-sm {
    align-items: center;
  }
  .justify-center-sm {
    justify-content: center;
  }
  .flex-end-sm {
    justify-content: flex-end;
  }
  .between-sm {
    justify-content: space-between;
  }
  .flex-fix-sm {
    flex-grow: 0;
    flex-shrink: 0;
  }
  .flex-shrink-0-sm {
    flex-shrink: 0;
  }
  .flex-grow-1-sm {
    flex-grow: 1;
  }
  .col-3-sm {
    width: 25%;
  }
  .col-4-sm {
    width: 33.3333%;
  }
  .col-6-sm, .half-sm {
    width: 50%;
  }
  .col-12-sm, .full-sm {
    width: 100%;
  }
  .col-min-9-sm {
    min-width: 75%;
  }
  .order-1-sm {
    order: 1;
  }
  .order-2-sm {
    order: 2;
  }
  .order-3-sm {
    order: 3;
  }
  .order-4-sm {
    order: 4;
  }
}
@media print, (min-width: 992px) { /* for print, for lg */
  .row-lg {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .flex-wrap-lg {
    flex-wrap: wrap;
  }
  .flex-row-reverse-lg {
    flex-direction: row-reverse;
  }
  .flex-column-reverse-lg {
    flex-direction: column-reverse;
  }
  .column-lg {
    flex-direction: column;
  }
  .center-lg {
    justify-content: center;
  }
  .between-lg {
    justify-content: space-between;
  }
  .around-lg {
    justify-content: space-around;
  }
  .align-center-lg {
    align-items: center;
  }
  .align-end-lg {
    align-items: flex-end;
  }
  .flex-fix-lg {
    flex-grow: 0;
    flex-shrink: 0;
  }
  .flex-shrink-0-lg {
    flex-shrink: 0;
  }
  .flex-grow-1-lg {
    flex-grow: 1;
  }
  .col-lg {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .col-1 {
    width: 8.3333%;
  }
  .col-2 {
    width: 16.6666%;
  }
  .col-3 {
    width: 25%;
  }
  .col-4 {
    width: 33.3333%;
  }
  .col-5 {
    width: 41.6666%;
  }
  .col-6, .half {
    width: 50%;
  }
  .col-7 {
    width: 58.3333%;
  }
  .col-8 {
    width: 66.6666%;
  }
  .col-9 {
    width: 75%;
  }
  .col-10 {
    width: 83.3333%;
  }
  .col-11 {
    width: 91.6666%;
  }
  .col-12, .full {
    width: 100%;
  }
  .col-500 {
    width: 500px;
  }
  .offset-05 {
    margin-left: 4.1666%;
  }
  .offset-1 {
    margin-left: 8.3333%;
  }
  .offset-2 {
    margin-left: 16.6666%;
  }
  .offset-3 {
    margin-left: 25%;
  }
  .offset-4 {
    margin-left: 33.3333%;
  }
  .offset-6 {
    margin-left: 50%;
  }
  .order-1-lg {
    order: 1;
  }
  .order-2-lg {
    order: 2;
  }
  .order-3-lg {
    order: 3;
  }
  .order-4-lg {
    order: 4;
  }
  .order--1-lg {
    order: -1;
  }
  .order--2-lg {
    order: -2;
  }
  .order--3-lg {
    order: -3;
  }
  .order--4-lg {
    order: -4;
  }
  .order--5-lg {
    order: -5;
  }
  .order--6-lg {
    order: -6;
  }
  .w-40\% {
    width: 40%;
  }
  .w-60\% {
    width: 60%;
  }
}
/*!
 * SASS  :  sass/fb-btns.scss
 * Modified  :  *******
 */
/* btns */
.btn {
  background-color: #fff;
  border: solid 1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  padding: 0.75em 1.25em;
  font-size: calc(1rem - 1px);
  color: var(--gray-blue-color, #9BA4B8);
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  border-radius: 100vmax;
}
@media print, (min-width: 992px) {
  .btn { /* for lg */
    font-size: 1rem;
  }
}

.btn:not(.next-button, .prev-button):hover,
a:hover .btn {
  background-color: var(--logo-color, #003D5C);
  border-color: transparent;
  color: #fff;
  transition: background-color 0.16s ease;
}

.btn-sm {
  min-width: 80px;
  height: 30px;
  padding: 0.5em 1.25em;
  font-size: 0.75rem;
}

.btn-more {
  width: 255px;
  height: 70px;
}

.btn-more .reload-icon {
  transform-origin: 46% 50%;
}

.btn-more.loading .reload-icon {
  animation: reload-icon-rotate 20s linear forwards;
}

.btn-close {
  background: none transparent;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
}

.btn-close.item-delete {
  width: 36px;
  height: 36px;
  border-radius: 100vmax;
}
@media print, (min-width: 992px) {
  .btn-close.item-delete { /* for lg */
    width: 40px;
    height: 40px;
  }
}

.btn-close.item-delete:hover {
  background-color: var(--logo-color, #003D5C);
}

.btn-close.item-delete:hover .icon-close {
  filter: brightness(0%) invert(100%);
}
@media screen and (max-width: 991.98px) {
  .btn-close.item-delete:hover .icon-close { /* for sm */
    width: 10px;
    height: 10px;
  }
}

.btn-outline {
  display: flex;
  max-width: 100%;
  padding: 0.75em 0.75em;
  color: var(--logo-color, #003D5C);
}
@media print, (min-width: 992px) {
  .btn-outline { /* for lg */
    padding: 0.75rem 1.125rem;
  }
}

.btn-outline.color-white {
  border-color: var(--logo-color, #003D5C);
}

.btn-outline.color-red:hover {
  background-color: var(--red-text-color, #C50000);
}

.btn-outline.color-red.a-hover-none:hover {
  background-color: #fff;
  border-color: var(--red-text-color, #C50000);
  color: var(--red-text-color, #C50000);
}

.btn-outline.backcolor-red {
  border-color: #d83827;
  background-color: #d83827;
}

.btn-outline.backcolor-red:not(.is-no-stock):hover {
  border-color: #d83827;
  background-color: #fff;
  color: #d83827;
}

.btn-outline.color-logo.a-hover-none:hover {
  background-color: #fff;
  border-color: var(--logo-color, #003D5C);
  color: var(--logo-color, #003D5C);
}

.btn-outline.color-red.a-hover-none:hover .icon {
  filter: none;
}

.btn.highlighted-link-button {
  display: flex;
  width: 225px;
  height: 56px;
  padding: 0.75em 0.75em;
  color: var(--logo-color, #003D5C);
}
@media print, (min-width: 992px) {
  .btn.highlighted-link-button { /* for lg */
    width: 255px;
    height: 70px;
    padding: 0.75rem 1.125rem;
  }
}

.btn.highlighted-link-button:hover {
  color: #fff;
}

.btn.has-arw-r,
.btn.has-arw-l {
  justify-content: space-between;
}

.btn.has-arw-r::before,
.btn.has-arw-l::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 14px;
}

.btn.has-arw-r::before,
.has-arw-r .icon-arw-next {
  margin: 0 0.5rem;
}
@media print, (min-width: 992px) {
  .btn.has-arw-r::before,
  .has-arw-r .icon-arw-next { /* for lg */
    margin: 0 0.75rem;
  }
}

.btn.has-arw-l::after,
.has-arw-l .icon-arw-prev {
  margin: 0 0.5rem;
}
@media print, (min-width: 992px) {
  .btn.has-arw-l::after,
  .has-arw-l .icon-arw-prev { /* for lg */
    margin: 0 0.75rem;
  }
}

.has-arw-r > .icon-arw-next {
  rotate: 180deg;
}

.btn.has-arw-r:hover > .icon-arw-next,
a:hover .btn > .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

.btn.cta-button,
.btn.cta-button-lg {
  display: flex;
  width: 255px;
  height: 60px;
  padding: 0.75em 0.75em;
  font-size: 1rem;
  color: var(--logo-color, #003D5C);
}
.btn.cta-button:hover,
.btn.cta-button-lg:hover {
  color: #fff;
}

@media print, (min-width: 992px) { /* for lg */
  .btn.cta-button {
    width: 300px;
    height: 80px;
    padding: 0.75rem 1.125rem;
    font-size: 1.125rem;
  }
}
.btn-info {
  background: none transparent;
  border: none;
}
.btn-info:hover {
  cursor: pointer;
}

.btn-hover {
  background: none transparent;
  border: none;
  padding: 0.5rem;
}

.btn-hover:hover {
  cursor: pointer;
}

.btn-reversal {
  background-color: var(--logo-color, #003D5C);
  color: #fff;
}

.btn-reversal:hover {
  background-color: #fff;
  border-color: var(--logo-color, #003D5C);
  color: var(--logo-color, #003D5C);
}

.btn.has-icon-before::after {
  content: "";
  display: inline-flex;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: auto;
}

.btn.has-icon-before .button-label {
  margin-left: auto;
  margin-right: auto;
  padding: 0 0.75rem;
}

.btn.has-icon-before .icon {
  margin-right: auto;
}

.btn.has-icon-before:hover .icon,
.btn .icon-white {
  filter: brightness(0%) invert(100%);
}

.btn.has-icon-after::before {
  content: "";
  display: inline-flex;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: auto;
}

.btn.has-icon-after .button-label {
  margin-left: auto;
  margin-right: auto;
  padding: 0 0.75rem;
}

.btn.has-icon-after .icon {
  margin-left: auto;
}

.btn.has-icon-after:hover .icon {
  filter: brightness(0%) invert(100%);
}

button.text-underline {
  background-color: transparent;
  border: none;
  cursor: pointer;
  color: var(--logo-color, #003D5C);
}

button.text-underline:hover {
  text-decoration: none;
}

.btn-q {
  background-color: var(--logo-color, #003D5C);
  border: none;
  flex-grow: 0;
  flex-shrink: 0;
  width: 1.875rem;
  height: 1.875rem;
  padding: 0;
  font-size: 1.25rem;
  font-weight: normal;
  color: #fff;
  border-radius: 99vmax;
}
.btn-q:hover {
  cursor: pointer;
}

.btn.is-no-stock {
  background-color: var(--gray-safe-color, #767676) !important;
  border-color: var(--gray-safe-color, #767676) !important;
}

.btn.is-no-stock:hover {
  animation: none !important;
  cursor: default;
}

/* btn utility */
.btn.h-80-60 {
  height: 60px;
}
@media print, (min-width: 992px) {
  .btn.h-80-60 { /* for lg */
    height: 80px;
  }
}

.cta-block.gap-60-30 {
  gap: 30px;
}
@media print, (min-width: 992px) {
  .cta-block.gap-60-30 { /* for lg */
    gap: 60px;
  }
}

.btn.is-disabled,
.btn:disabled {
  opacity: 0.45;
  filter: grayscale(0.66);
}

.prev-button:disabled,
.next-button:disabled {
  opacity: 0;
  cursor: auto;
}

@media print, (min-width: 992px) {
  .cta-block .btn.min-w-340px { /* for lg */
    width: auto;
    min-width: 340px;
  }
}

@media print, (min-width: 992px) {
  .btn.min-h-60px { /* for lg */
    height: auto;
    min-height: 60px;
  }
}

/*!
 * SASS  :  sass/fb-global-top.scss
 * Modified  :  *******
 */
/* global-top
---------------------------------------------------- */
:root {
  --mountain-height-sm: calc(16vw + 82px - 13px + 1.25rem - 2px);
}

/* global-top */
.global-bg {
  background-color: #E1E6F1;
  padding-top: 60px;
  min-height: 100dvh;
}

.hover-line-item .line-text,
.hover-line-item-detail .line-text-detail {
  column-gap: 7px;
}

.world-map .logo-img {
  width: 110px;
  margin-bottom: 0.25rem;
}

.global-top-text {
  max-width: 42em;
}

.hover-line-list .line-text-detail {
  background-color: rgba(255, 255, 255, 0.5);
  padding: 0.625rem 1.25rem 0.5rem;
  border-radius: 0.25rem;
  box-shadow: 0 1px 0.25rem rgba(0, 0, 0, 0.2);
  transition: background-color 0.2s;
}
@media screen and (max-width: 991.98px) {
  .hover-line-list .line-text-detail { /* for sm */
    margin-top: 1.125rem;
  }
}

.hover-line-list .line-text-detail:hover {
  background-color: rgb(255, 255, 255);
}

.hover-line-item > .line-text::before {
  background: var(--logo-color, #003D5C);
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
}

.hover-line-item > .line-text::before {
  transform-origin: right top;
  transition: transform 0.2s;
}

.hover-line-item .line-text:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.round-arrow {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  background-color: var(--logo-color, #003D5C);
  border-radius: 50px;
  transition-duration: 0.3s;
}

.world-map .round-arrow {
  width: 24px;
  height: 24px;
  margin-left: auto;
}

.world-map .round-arrow .icon-arw-next {
  width: 5px;
}

.round-arrow.-large .icon-arw-next,
.round-arrow.-large .icon-arw-down,
.line-text:hover .round-arrow.-small .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

.round-arrow.-large .icon-arw-down {
  rotate: -90deg;
  transition: 0.3s;
}

.line-text:hover .round-arrow.-large .icon-arw-next,
.line-text-detail:hover .round-arrow.-large .icon-arw-next {
  filter: unset;
}

.line-text:hover .round-arrow.-small .icon-arw-next {
  filter: unset;
}

.line-text:hover > .round-arrow.-large,
.line-text-detail:hover .round-arrow.-large {
  transform: scale(1.1);
  border: var(--logo-color, #003D5C) solid 1px;
  background-color: #fff;
}

.global-footer {
  background-color: var(--logo-color, #003D5C);
  padding: 3rem 0 2rem;
  margin-top: -19px;
}

@media print, (min-width: 992px) { /* for lg */
  .world-map {
    height: 400px;
    background-image: url(../img/globaltop/world-map.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 1.25rem auto;
    padding: 5.5rem 0 0;
  }
  .world-map .logo-img {
    width: 96px;
  }
  .hover-line-item.usa {
    position: absolute;
    left: 60px;
  }
  .hover-line-item.europe {
    position: absolute;
    left: 300px;
  }
  .hover-line-item.japan {
    position: absolute;
    left: 562px;
  }
  .global-top-main {
    min-height: calc(100vh - 3.75rem - 192px);
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .global-bg {
    display: flex;
    flex-direction: column;
    padding: 2rem 1.25rem 0;
  }
  .global-top-main {
    min-height: calc(100dvh - 2rem - var(--mountain-height-sm));
  }
  .world-map-sm {
    background-image: url(../img/globaltop/world-map.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    height: 160px;
    padding-top: 24px;
  }
  .select-sites {
    margin-top: -3.75rem;
  }
  .round-arrow {
    width: 36px;
    height: 36px;
  }
  .hover-line-item + .hover-line-item {
    margin-top: 1.5rem;
  }
  .image-mountain {
    height: var(--mountain-height-sm);
    margin: auto -1.25rem 0;
    padding-top: 1.25rem;
    overflow: hidden;
  }
  .image-mountain .mountain-img {
    width: 100%;
    height: 16vw;
    object-fit: contain;
    object-position: bottom;
    aspect-ratio: 750/117;
  }
  .global-footer {
    height: auto;
    margin-top: -13px;
    padding: 2.25rem 0 1.75rem;
  }
  .hover-line-item-detail:hover .line-text-detail::before {
    display: none;
  }
  .global-logo {
    width: 45%;
  }
}
/*!
 * SASS  :  sass/fb-site-header.scss
 * Modified  :  *******
 */
/* site-header */
@media screen and (max-width: 991.98px) { /* for sm */
  :root {
    --global-nav-height: 60px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  :root {
    --site-header: 116px;
    --global-nav-height: 76px;
  }
}
.site-header {
  background-color: #fff;
  width: 100%;
  top: 0;
  position: sticky;
  top: 0;
  z-index: 4;
}

.site-header .header-inner,
.header-inner {
  width: 100%;
  max-width: var(--contents-max-width, 1366px);
  margin-left: auto;
  margin-right: auto;
}

.site-header .header-logo {
  padding-right: 0.25rem;
}

.header-logo .link {
  align-items: flex-end;
  column-gap: 0.625rem;
  color: var(--logo-color, #003D5C);
}

.header-logo .logo-at-site {
  font-weight: bold;
  line-height: 1;
  translate: 0 2px;
}

.header-logo + .site-select-buttons .btn {
  margin-left: 0.5rem;
}

.personal-info {
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  line-height: 1.25;
}

.personal-info .icon-pin {
  translate: -2px 3px;
}

.btn-hover .icon-pin {
  translate: -3px 0px;
}

.personal-info .cart .flex {
  flex-direction: column;
  height: 30px;
}

.personal-info .items-value {
  width: 100%;
  height: 0;
  color: #C80000;
  text-align: center;
}

.account-summary-panel-container {
  position: absolute;
  top: 45px;
  right: calc((100% - 1366px) / 2);
  width: 300px;
  padding-top: 0;
  transform: scaleY(0);
  translate: 34px -30px;
  transform-origin: top center;
  opacity: 0;
  z-index: -1;
}

.hover-trigger-account-panel:hover .account-summary-panel-container {
  padding-top: 23px;
  transform: scaleY(1);
  translate: 34px 0;
  opacity: 1;
  z-index: 1;
  transition: padding 0.12s ease, opacity 0.16s ease;
}
@media print, (max-width: 1450px) {
  .hover-trigger-account-panel:hover .account-summary-panel-container { /* for 1450px */
    right: 0;
    translate: 0 0;
  }
}

.account-summary-panel-container::before {
  background-color: var(--gray-blue-light-color, #E1E6F1);
  content: "";
  display: block;
  width: 20px;
  height: 12px;
  margin-left: auto;
  margin-right: auto;
  clip-path: polygon(50% 0, 0% 100%, 100% 100%);
  translate: -50% 0;
}
@media print, (max-width: 1366px) {
  .account-summary-panel-container::before { /* for 1366px */
    translate: 8px 0;
  }
}

.account-summary-panel {
  background-color: #fff;
  border: var(--gray-blue-light-color, #E1E6F1) solid 10px;
  padding: 1.25rem 1rem;
}

.account-summary-name {
  border-bottom: var(--gray-blue-color, #9BA4B8) solid 1px;
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
  font-size: 1.25rem;
}

.account-summary-data {
  grid-template-columns: 1fr 1fr;
  row-gap: 0.5rem;
}

.account-summary-data .dt {
  padding-right: 0.25rem;
  text-align: right;
}

.account-summary-my-page-link .btn-reversal {
  width: 160px;
  height: 40px;
  padding: 0.5rem 1.25rem;
}

.message-bar {
  background-color: var(--accent-color, #E2E0D7);
  max-height: 100vmax;
  opacity: 1;
}

.sticky-message-bar .message-bar {
  position: sticky;
  z-index: 3;
}
@media screen and (max-width: 991.98px) {
  .sticky-message-bar .message-bar { /* for sm */
    top: 50px;
  }
}
@media print, (min-width: 992px) {
  .sticky-message-bar .message-bar { /* for lg */
    top: 120px;
  }
}

.message-bar.is-close {
  max-height: 0;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.2s ease-in-out, max-height 0.2s 0.15s ease;
}

.message-text {
  line-height: 20px;
}

.search-bar {
  background-color: #fff;
  border-top: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
  position: relative;
  position: sticky;
  z-index: 2;
}

.hidden-search-bar .search-bar {
  display: none;
}

.search-bar .category-list {
  flex: 1 1 20em;
}

.category-list .category-item {
  width: 100%;
  padding: 0;
}

.category-list .category-item-button {
  background: none transparent;
  border: none;
  position: relative;
  height: 100%;
  padding: 0 1rem;
  font-size: calc(1em + 2px);
  font-weight: 600;
  text-align: center;
  color: #000;
}

@media print, (min-width: 992px) {
  .category-list .category-item:hover .category-item-button::after { /* for lg */
    border-top: transparent solid 0.25rem;
    border-bottom: var(--logo-color, #003D5C) solid 0.25rem;
    content: "";
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 0;
    z-index: -1;
  }
}

@media screen and (max-width: 991.98px) {
  .category-list .category-item.active .category-item-button::after { /* for sm */
    border-top: transparent solid 0.25rem;
    border-bottom: var(--logo-color, #003D5C) solid 0.25rem;
    content: "";
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 0;
    z-index: -1;
  }
}

.category-list .sub-list {
  background-color: #fff;
  border-top: var(--gray-color, #ccc) solid 1px;
  display: grid;
  position: absolute;
  left: 0;
  top: 60px;
  width: 100%;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  cursor: auto;
  transform: scaleY(0.75);
  transform-origin: top center;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}

.category-list .active > .sub-list {
  display: grid;
  transform: scaleY(1);
  opacity: 1;
  visibility: visible;
  transition: transform 0.2s ease, opacity 0s, visibility 0s, padding 0.25s;
  z-index: 0;
}

.category-list > .sub-item {
  opacity: 0;
  transform: translateY(-10px);
  transition: transform 0.1s, opacity 0.1s;
  transition-delay: 0s;
}

.category-list .active > .sub-item,
.search-bar .hover-switch:hover > .sub-item {
  opacity: 1;
  transform: translateY(0);
  transition: transform 0.3s ease, opacity 0.2s linear;
  transition-delay: 0.2s;
}

.category-list .sub-link {
  font-weight: normal;
  color: var(--text-color, #222);
}

.category-list .sub-link:hover {
  color: var(--logo-color, #003D5C);
}

.bg-layer {
  position: fixed;
  top: 0;
  left: 100vw;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.16s ease;
}

.category-list .category-item.active .bg-layer {
  content: "";
  position: absolute;
  top: 60px;
  left: 0;
  width: 100%;
  height: 100vh;
  opacity: 0.5;
  z-index: 0;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .site-header .header-logo {
    padding-left: 14px;
  }
  .header-logo .logo-img {
    width: auto;
    height: 20px;
  }
  .header-logo .logo-at-site {
    font-size: 1rem;
  }
  /* sm-search-layer */
  body.is-search-open {
    overflow: hidden;
  }
  .sm-search-layer .search-icon {
    opacity: 1;
    transition: opacity 0.16s ease;
  }
  .site-header .search-trigger {
    background: transparent none;
    border: none;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    margin-left: auto;
    padding: 4px;
    cursor: pointer;
    box-sizing: border-box;
    appearance: none !important;
  }
  .sm-search-layer.is-open .bg-layer {
    top: 50px;
    left: 0;
    opacity: 0.5;
  }
  .sm-search {
    background-color: #fff;
    display: grid;
    place-items: center;
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    height: 0;
    padding: 0;
    translate: 0 0;
    overflow: hidden;
    z-index: 1;
    transition: height 0.16s ease;
  }
  .sm-search-layer.is-open .sm-search {
    border-top: var(--gray-color, #ccc) solid 1px;
    height: 80px;
  }
  .sm-search .search-form {
    width: calc(100% - 40px);
    margin: 20px;
  }
  .cart .items-value {
    font-size: 0.75rem;
    translate: 2px -6px;
  }
  .cart .icon-cart {
    max-width: 30px;
    height: auto;
  }
  /* menu-trigger */
  .site-header .menu-trigger {
    background-color: var(--logo-color, #003D5C);
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: none;
    width: 50px;
    height: 50px;
    margin-left: auto;
    cursor: pointer;
    box-sizing: border-box;
    appearance: none !important;
    z-index: 4;
  }
  .site-header .menu-trigger .menu-label::before,
  .site-header .menu-trigger::before,
  .site-header .menu-trigger::after {
    background-color: #fff;
    position: relative;
    display: block;
    content: "";
    width: 24px;
    height: 2px;
    transition: all 0.2s;
  }
  .site-header .menu-trigger::after {
    width: 14px;
    margin-left: -10px;
  }
  .site-header .menu-trigger::before {
    top: -6px;
  }
  .site-header .menu-trigger::after {
    top: 6px;
  }
  .site-header .menu-trigger .label-text {
    display: none;
  }
  .site-header .menu-trigger.open::before {
    top: 2px;
    transform: rotate(-45deg);
  }
  .site-header .menu-trigger.open .menu-label::before {
    opacity: 0;
  }
  .site-header .menu-trigger.open::after {
    top: -2px;
    width: 24px;
    margin-left: 0;
    transform: rotate(45deg);
  }
  /* sm-menu-layer */
  body.is-menu-open {
    overflow: hidden;
  }
  .bg-layer {
    background-color: var(--text-color, #222);
  }
  .sm-search-layer .bg-layer {
    z-index: -1;
  }
  .sm-menu-layer.is-open .bg-layer {
    left: 0;
    opacity: 0.5;
  }
  .sm-menu {
    background-color: #fff;
    position: fixed;
    top: 0;
    right: min(-100vw, -320px);
    bottom: 0;
    width: 320px;
    z-index: 3;
    overflow-x: hidden;
    overflow-y: auto;
    transition: right 0.16s ease;
  }
  .sm-menu-layer.is-open .sm-menu {
    right: 0;
  }
  .sm-menu .header-logo {
    height: 50px;
    align-content: center;
  }
  .sm-menu .sign-in-link {
    display: flex;
    height: 50px;
    margin-left: 0.75rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
  }
  .sm-menu .sign-in .icon {
    margin-right: 0.75rem;
  }
  .sm-menu .sign-in .btn:hover {
    color: #fff;
  }
  .sm-menu .sign-in .btn:hover .icon {
    filter: brightness(0%) invert(100%);
  }
  .sm-menu .nav-menu {
    background-color: #fff;
    row-gap: 1px;
  }
  .sm-menu .nav-item {
    background-color: var(--logo-color, #003D5C);
  }
  .sm-menu .nav-link {
    display: flex;
    height: 60px;
    padding: 0.25rem 3.125rem 0.25rem 1.5rem;
    font-size: 1.125rem;
    font-weight: 500;
    color: #fff;
  }
  .sm-menu .nav-link .icon-arw-next {
    filter: brightness(0%) invert(100%);
    rotate: 180deg;
    margin-left: auto;
  }
  .sm-menu .site-nav {
    padding: 1.5rem 1.5rem 2.5rem;
  }
  .sm-menu .nav-label {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    color: var(--logo-color, #003D5C);
  }
  .sm-menu .site-select-buttons .btn {
    margin-right: 0.5rem;
  }
  .sm-menu .personal-info {
    font-size: 1rem;
    color: var(--logo-color, #003D5C);
  }
  .sm-menu-icon-glove,
  .sm-menu-icon-pin {
    display: inline-block;
  }
  .sm-menu-icon-glove {
    margin-right: 2px;
  }
  .sm-menu-icon-pin {
    margin-left: 3px;
    margin-right: 5px;
  }
  .message-bar .header-inner {
    padding: 5px 20px;
  }
  .message-bar .message-text {
    display: block;
    padding-right: 1rem;
    letter-spacing: 0.5px;
  }
  .message-bar .btn-close {
    flex-shrink: 0;
    margin-right: -0.75rem;
  }
  .search-bar {
    top: 50px;
  }
  .category-list .category-item {
    height: 40px;
  }
  .category-list .category-item {
    height: 40px;
  }
  .category-list .sub-list {
    padding: 20px 40px 106px;
    top: 40px;
    grid-template-columns: repeat(1, 100%);
    width: calc(100% - 50px);
    max-height: calc(100vh - 50px - 40px);
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior-y: contain;
  }
  .category-list .category-item.active .bg-layer {
    background-color: var(--text-color, #222);
    top: 40px;
  }
  .category-list .category-item.active ~ .category-item-sub-close {
    position: absolute;
    top: 40px;
    right: 0;
    width: 50px;
    height: 50px;
  }
  .category-list .category-item.active ~ .category-item-sub-close:before,
  .category-list .category-item.active ~ .category-item-sub-close:after {
    background-color: #fff;
    content: "";
    position: absolute;
    top: 24px;
    right: 11px;
    width: 24px;
    height: 2px;
  }
  .category-list .category-item.active ~ .category-item-sub-close:before {
    rotate: 45deg;
  }
  .category-list .category-item.active ~ .category-item-sub-close:after {
    rotate: -45deg;
  }
  .category-list .sub-item {
    border-bottom: var(--gray-color, #ccc) solid 1px;
    padding: 1rem 0;
  }
  .category-list .sub-link {
    display: block;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 1rem;
  }
  .search-bar .search-box {
    display: none;
    padding: 20px 26px;
  }
  .search-box .search-box-group {
    width: calc(100% + 20px);
    margin-left: -20px;
  }
  .search-box-group .search-button {
    margin-left: -3px;
    margin-right: -1px;
  }
  .search-box-group .btn-search-close {
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 40px;
    padding: 4px;
    translate: 12px 0;
  }
  .search-box-group .search-cancel-button {
    background-color: transparent;
    padding: 4px;
  }
  .search-box-group .search-cancel-button > .close-icon {
    filter: none;
  }
  /* is-search-box-open */
  .search-bar.is-search-box-open .category-list {
    display: none;
  }
  .search-bar.is-search-box-open .search-box {
    display: block;
  }
  /* sm-menu-layer .sign-in.-login */
  .sm-menu .sign-in.-login {
    position: unset;
  }
  .login-summary-data {
    grid-template-columns: 1fr 1fr;
    height: 40px;
    border-top: var(--logo-color, #003D5C) solid 1px;
    border-bottom: var(--logo-color, #003D5C) solid 1px;
  }
  .sm-menu .sign-in.-login + .nav-menu {
    margin-top: 30px;
  }
  /* sm-menu-layer .sign-in.-logout */
  .sm-menu .sign-in.-logout .sign-in-link {
    font-size: 1rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .site-header {
    min-height: 60px;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .site-header .header-inner,
  .header-inner {
    width: 90%;
  }
  .header-logo .logo-img {
    max-width: 155px;
    max-height: 27px;
  }
  .header-logo .logo-at-site {
    font-size: 1.25rem;
  }
  .personal-info .items-value {
    translate: 2px -7px;
  }
  .cart .icon-cart {
    translate: 0 1px;
  }
  .header-nav {
    background-color: var(--logo-color, #003D5C);
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .sticky-header-nav .header-nav {
    position: sticky;
    top: 60px;
    z-index: 3;
  }
  .nav-menu .nav-item {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 60px;
    padding-left: 0.8vw;
    padding-right: 0.8vw;
    font-size: 1.1rem;
    text-wrap-mode: nowrap;
  }
  .nav-menu .nav-link {
    font-weight: 600;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .nav-menu .nav-link:hover {
    background-color: #29708F;
  }
  .message-bar {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .message-bar .header-inner::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
  }
  .message-bar .header-inner {
    padding: 10px 32px;
  }
  .message-bar .btn-close {
    margin-top: -0.5rem;
    margin-right: calc(-0.5rem - 32px);
    margin-bottom: -0.5rem;
  }
  .search-bar {
    top: 60px;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .category-list .category-item {
    height: 60px;
  }
  .category-list .sub-list {
    top: 60px;
    grid-template-columns: repeat(4, auto);
    row-gap: 1.5rem;
  }
  .category-list .active > .sub-list,
  .search-bar .hover-switch:hover > .sub-list {
    right: 0;
    width: var(--contents-max-width, 1366px);
    margin-left: auto;
    margin-right: auto;
    padding: 48px 0;
    justify-content: space-around;
    max-width: 100%;
  }
  .category-list .sub-item {
    padding: 0 1rem 0 0;
  }
  .search-bar .header-inner::before {
    content: "";
    display: inline-block;
    flex: 0 0 15em;
  }
  .search-bar .category-list::before,
  .search-bar .category-list::after {
    content: "";
    display: block;
    width: 100%;
    flex: 0 1 calc(20% + 100vw - 1366px);
  }
  .search-bar .search-box {
    flex: 0 0 15em;
    width: 240px;
  }
  .search-bar .search-box .flex-row-reverse {
    width: 240px;
  }
  .search-bar .search-box [type=search] {
    width: 240px;
  }
}
/*!
 * SASS  :  sass/fb-icons.scss
 * Modified  :  *******
 */
/* icon */
[class*=icon-] {
  position: relative;
}

.icon-search::before {
  background: var(--dark-gray-color) no-repeat center;
  background-image: url(/_assets/img/icon/icon-search-wh.svg);
  background-size: 0.875em;
  display: inline-block;
  position: relative;
  top: 0.375em;
  content: "";
  width: 1.625em;
  height: 1.625em;
  margin-right: 0.625em;
  font-size: 1em;
  line-height: 1;
  border-radius: 100vmax;
}

.row-icon [class*=icon-]::after {
  position: absolute;
  left: 0;
  background-repeat: no-repeat;
  background-position: left center;
  content: "";
  display: inline-block;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .row-icon [class*=icon-]::after {
    bottom: 0.5rem;
  }
} /* END for sm */
@media print, (min-width: 992px) { /* for lg */
  .heading [class*=icon-]::after {
    bottom: 0.7rem;
  }
} /* END for lg */
@media screen and (max-width: 991.98px) { /* for sm */
  .on-icon .on-icon-swimmer::after {
    position: absolute;
    left: 0;
    background-repeat: no-repeat;
    background-position: left center;
    content: "";
    display: inline-block;
    bottom: -0.1rem;
  }
} /* END for sm */
@media print, (min-width: 992px) { /* for lg */
  .on-icon .title[class*=icon-]::after {
    position: absolute;
    left: 0;
    background-repeat: no-repeat;
    background-position: left center;
    content: "";
    display: inline-block;
  }
  .on-icon .on-icon-swimmer::after {
    bottom: 0.3rem;
  }
} /* END for lg */
/* svg */
#i-mail .cls-1, #i-mail .cls-2 {
  fill: none;
  stroke-linejoin: round;
}
#i-mail .cls-1 {
  stroke-width: 1.5px;
}
#i-mail .cls-2 {
  stroke-width: 1.2px;
}

.i-mail {
  width: 23.5px;
  height: 23.5px;
  stroke: #fff;
  margin-top: -0.25em;
  margin-right: 0.5em;
  vertical-align: middle;
}

.i-mail.link-color {
  stroke: #1D54B3;
  margin-top: -0.35em;
}

.i-arw-down.fill-w {
  fill: #fff;
}

.i-arw-down {
  width: 9px;
  height: 6px;
  fill: #262828;
}

.i-tel {
  width: 16.14px;
  width: 24px;
  height: 18px;
  fill: #1D54B3;
  padding: 0 2px 0 4px;
}

/*!
 * SASS  :  sass/fb-heading.scss
 * Modified  :  *******
 */
/* heading
---------------------------------------------------- */
/*!
 * SASS  :  sass/fb-main.scss
 * Modified  :  *******
 */
/* main */
/* headline-news */
section.headline-news {
  padding: 0;
}

.headline-news .container {
  background-color: var(--gray-blue-light-color, #E1E6F1);
  padding: calc(0.25rem - 1px) 0.5rem;
}

.headline-controller .btn {
  background-color: transparent;
  border: none;
  flex-shrink: 0;
  padding: 0.125rem 0.25rem;
}

.next-button .icon-arw-next,
.icon-arw-next {
  rotate: 180deg;
}

.headline-list {
  width: calc(100% - 33px);
}

.headline-item {
  flex-shrink: 0;
  width: 100%;
  padding: 0.25rem 0.5rem;
  text-align: center;
}

.headline-link {
  font-weight: 500;
  letter-spacing: 0.5px;
  color: var(--text-color, #222);
}

.headline-link .date {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.headline-link .text {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .headline-news .container {
    padding: calc(0.25rem - 1px) 0.75rem;
  }
  .headline-item {
    line-height: 20px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .headline-item {
    line-height: 26px;
  }
}
/* + splide */
.headline-splide-has-arrow .splide__arrow {
  background-color: transparent;
  border: none;
  flex-shrink: 0;
  padding: 0.125rem 0.25rem;
  width: 33px;
  height: 34px;
}

.headline-splide-has-arrow .splide__arrow:hover {
  background-color: transparent;
}

@media screen and (max-width: 991.98px) {
  .headline-splide-has-arrow .splide__arrow--prev { /* for sm */
    left: 4px;
  }
}

@media screen and (max-width: 991.98px) {
  .headline-splide-has-arrow .splide__arrow--next { /* for sm */
    right: 4px;
  }
}

/* kv */
section.kv {
  padding: 0;
}

section.kv .splide__pagination,
.gp-slide-splide .splide__pagination {
  position: static;
  padding: 0;
}

section.kv .splide__pagination li,
.gp-slide-splide .splide__pagination li {
  display: flex;
}

.filter-contents .kv:not(:has(> .kv-splide > .kv-controller > .kv-list > .kv-item)) {
  margin-bottom: 0;
  padding-bottom: 0;
}

.kv-controller .prev-button,
.kv-controller .next-button {
  background-color: rgba(255, 255, 255, 0.5);
  border: none;
  display: flex;
  place-content: center;
  width: 50px;
  height: 80px;
  padding: 0.5rem;
  border-radius: 0 10px 10px 0;
  position: relative;
  z-index: 1;
  transition: background-color 0.12s ease;
}

.kv-controller .btn:hover {
  background-color: rgba(255, 255, 255, 0.85);
}

.kv-controller .next-button {
  border-radius: 10px 0 0 10px;
}

.kv-list {
  width: 100%;
}

.kv-item {
  flex-shrink: 0;
  width: 100%;
  transition: margin 0.15s ease-out;
}

.kv-link {
  display: block;
  width: 100%;
}

.kv-link:not([href]) {
  animation: none !important;
}

.kv-link:focus-visible {
  outline-offset: -2px;
}

.kv-img {
  width: 100%;
}

.nav-pager {
  padding: 0 1rem;
}

.nav-pager-button {
  background-color: #fff;
  border: var(--logo-color, #0f4671) solid 1px;
  width: 12px;
  height: 12px;
  margin: 0.875rem calc(1em - 2px) 0;
  padding: 0;
  border-radius: 100vmax;
  text-indent: -9999em;
  overflow: hidden;
}
@media print, (min-width: 992px) {
  .nav-pager-button { /* for lg */
    margin: 1rem calc(1em + 1px) 0;
  }
}

.nav-pager-button.active {
  background-color: var(--logo-color, #0f4671);
  cursor: pointer;
}

@media (hover: hover) and (pointer: fine) {
  .nav-pager-button:hover {
    background-color: var(--logo-color, #0f4671);
    cursor: pointer;
  }
}

@media screen and (max-width: 991.98px) { /* for sm */
  .kv,
  .kv.-online-top {
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 0;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .kv-controller .btn {
    height: 100px;
  }
  .nav-pager-button {
    width: 15px;
    height: 15px;
    margin: 1rem 20px 0;
  }
}
/* + splide - over wright */
.splide:has(:not(.splide__pagination)) {
  visibility: visible;
}

.splide__arrow {
  opacity: 1;
}

.splide__arrow {
  background-color: rgba(255, 255, 255, 0.5);
  border: none;
  display: flex;
  place-content: center;
  width: 50px;
  height: 80px;
  padding: 0.5rem;
  border-radius: 0 10px 10px 0;
  z-index: 1;
  transition: background-color 0.12s ease;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 1;
}

.splide__arrow:hover {
  background-color: rgba(255, 255, 255, 0.85);
}

.splide__arrow--prev {
  left: -10px;
}

.splide__arrow--next {
  right: -10px;
  border-radius: 10px 0 0 10px;
}

.splide__arrow::before {
  background-image: url(../img/icon/arrows-icon.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 9px 16px;
  content: "";
  display: block;
  width: 9px;
  height: 16px;
}

.splide__arrow--next::before {
  rotate: 180deg;
}

.splide__arrow svg {
  display: none;
}

.splide__pagination__page {
  opacity: 1;
}

.splide__pagination__page {
  background-color: #fff;
  border: var(--logo-color, #0f4671) solid 1px;
  width: 10px;
  height: 10px;
  margin: 0 calc(0.7em + 1px);
  padding: 0;
  border-radius: 100vmax;
  text-indent: -9999em;
  overflow: hidden;
}

section.kv.-toppage .splide__pagination__page {
  width: 12px;
  height: 12px;
  background: #fff;
  margin: 0 calc(0.5em + 1px);
  position: relative;
  border: var(--logo-color, #0f4671) solid 1px;
  border-radius: 50%;
  vertical-align: -2px;
}

.splide__pagination__page:hover {
  opacity: 1;
}

.splide__pagination__page.is-active {
  transform: scale(1);
}

section:not(.-toppage) .splide__pagination__page.is-active,
section:not(.-toppage) .splide__pagination__page:hover,
div.gp-block .splide__pagination__page.is-active,
div.gp-block .splide__pagination__page:hover {
  background-color: var(--logo-color, #0f4671);
}

section.kv.-toppage .splide__pagination__page.is-active::before {
  content: "";
  background-color: var(--logo-color, #0f4671);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 7px;
  height: 7px;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 991.98px) { /* for sm */
  .splide__pagination {
    bottom: calc(-10px - 0.75rem);
  }
  section.highlighted .splide__pagination__page {
    margin-bottom: 0.5em;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .splide__arrow {
    height: 100px;
  }
  .splide__arrow--prev {
    left: 0;
  }
  .splide__arrow--next {
    right: 0;
  }
  .splide__pagination__page {
    width: 10px;
    height: 10px;
    margin: 0 calc(0.5em + 1px);
  }
}
/* category-select */
section.category-select {
  padding: 0;
}

.tab-list {
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.tab-list .tab-item {
  width: 100%;
  padding: 0;
  letter-spacing: 0.5px;
}

.tab-list .tab-item-button {
  background: none transparent;
  border: none;
  position: relative;
  height: 100%;
  padding: 0 1rem;
  font-size: calc(1em + 2px);
  font-weight: 500;
  text-align: center;
  color: var(--gray-safe-color, #767676);
}

.tab-item.active .tab-item-button,
.tab-item:hover .tab-item-button {
  color: var(--text-color, #222);
}

.tab-item.active .tab-item-button::after,
.tab-item:hover .tab-item-button::after {
  border-top: transparent solid 0.125rem;
  border-bottom: var(--logo-color, #003D5C) solid 0.125rem;
  content: "";
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 0;
  z-index: -1;
}

.online-top .tab-group .sub-list:not(.show),
.tab-group .sub-list:not(.show) {
  display: none;
}

@media screen and (max-width: 991.98px) {
  .category-select .sub-list,
  .online-top .category-select .sub-list { /* for sm */
    grid-template-columns: repeat(auto-fit, 104px);
  }
}
@media screen and (max-width: 991.98px) and (max-width: 374px) {
  .category-select .sub-list,
  .online-top .category-select .sub-list { /* for sm */
    grid-template-columns: repeat(auto-fit, calc(33.3333333333% - 8px));
  }
}
@media screen and (min-width: 667px) {
  .category-select .sub-list,
  .online-top .category-select .sub-list { /* for tablet */
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  }
}

.online-top .category-select .sub-list {
  display: grid;
}

.category-select .sub-item {
  align-items: center;
  max-width: 180px;
}

@media screen and (max-width: 991.98px) {
  .category-select .sub-link { /* for sm */
    max-width: 104px;
  }
}
@media screen and (min-width: 667px) {
  .category-select .sub-link { /* for tablet */
    max-width: 180px;
  }
}

.category-select .item-name {
  background-color: #fff;
  min-height: 40px;
  margin-top: -21.5%;
  color: var(--text-color, #222);
  position: relative;
}

.category-select .sub-link:hover .item-name {
  color: var(--logo-color, #003D5C);
}

.tab-contents .tab-sr_only span,
.gp-tab-contents .tab-sr_only span {
  display: none;
}

.tab-contents .tab-sr_only.active,
.gp-tab-contents .tab-sr_only.active {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.tab-contents .tab-sr_only.active span,
.gp-tab-contents .tab-sr_only.active span {
  display: block;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .tab-list .tab-item {
    height: 40px;
  }
  .tab-list .tab-item-button {
    font-size: 1rem;
  }
  .tab-contents {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
  .category-select .sub-list {
    column-gap: max(33.3333333333% - 104px + (33.3333333333% - 104px) / 2, 10px);
    row-gap: 0.5rem;
  }
  .category-select .sub-item {
    flex: 0 0 104px;
  }
}
@media screen and (max-width: 991.98px) and (max-width: 374px) {
  .category-select .sub-item { /* for sm */
    flex-basis: calc(33.3333333333% - 8px);
  }
}
@media screen and (max-width: 991.98px) {
  .category-select .item-name {
    padding-top: 10px;
    font-size: calc(1em - 1px);
    line-height: var(--line-height-base, 1.5);
  }
}
@media screen and (max-width: 991.98px) and (min-width: 667px) { /* for tablet */
  .category-select .sub-list {
    column-gap: max(25% - 180px + (25% - 180px) / 3, 20px);
  }
  .category-select .sub-item {
    flex: 0 0 180px;
  }
}
@media screen and (max-width: 991.98px) and (min-width: 667px) and (max-width: 836px) { /* for tablet */
  .category-select .sub-list {
    column-gap: calc(33.3333333333% - 180px + (33.3333333333% - 180px) / 2);
  }
}
@media print, (min-width: 992px) { /* for lg */
  .category-select .tab-contents {
    padding-inline: 1rem;
  }
  .tab-list .tab-item {
    width: 16.6665%;
    height: 60px;
    font-size: 1.5rem;
  }
  .category-select .sub-list {
    column-gap: max(16.6666666667% - 180px + (16.6666666667% - 180px) / 5, 20px);
    row-gap: 3rem;
  }
  .category-select .sub-item {
    flex: 0 0 180px;
  }
  .category-select .item-name {
    padding-top: 20px;
    font-size: 1.125rem;
  }
}
/* highlighted */
section.highlighted {
  padding: 2px 0;
  overflow-x: hidden;
  overflow-y: visible;
}

.section-title {
  font-weight: 600;
  text-align: center;
}

@media screen and (max-width: 991.98px) {
  .slider-controller,
  .splide { /* for sm */
    touch-action: manipulation;
  }
}

.slider-controller > .btn {
  border: transparent;
  top: 185px;
  width: 70px;
  height: 70px;
  flex-shrink: 0;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  transition: width 0.12s ease, height 0.12s ease;
  z-index: 1;
}
@media screen and (max-width: 991.98px) {
  .slider-controller > .btn { /* for sm */
    position: absolute;
  }
}

.slider-controller > .btn.prev-button {
  left: 0;
  translate: -50% -50%;
}

.slider-controller > .btn.next-button {
  right: 0;
  translate: 50% -50%;
}

.slider-controller > .btn:hover {
  background-color: #fff;
  color: var(--logo-color, #003D5C);
}

.highlighted-item-title {
  min-height: 2.25em;
  color: var(--text-color, #222);
}

.highlighted-list {
  align-items: stretch;
  gap: 0;
}

.highlighted-item {
  flex: 0 0 255px;
}

.highlighted-img {
  border-radius: 10px;
}

.highlighted-link-button {
  margin-top: auto;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .section-title {
    font-size: 1.625rem;
  }
  .slider-controller > .btn {
    top: 127px;
    width: 30px;
    height: 30px;
    padding: 0;
  }
  .highlighted .slider-controller > .btn.prev-button {
    left: 30px;
  }
  .highlighted .slider-controller > .btn.next-button {
    right: 30px;
  }
  .slider-controller .icon-arw-prev {
    width: 6px;
  }
  .slider-controller .icon-arw-next {
    width: 6px;
  }
  .highlighted .slider-controller .controller-track {
    margin-left: 60px;
    margin-left: calc((100vw - 255px) / 2);
    margin-right: calc((100vw - 255px) / 2);
    margin-left: calc((100vw - 255px) / 2 - 20px);
  }
  .highlighted-list {
    justify-content: flex-start;
    gap: 20px;
  }
  .highlighted-item-title {
    margin: 10px 0;
  }
  .highlighted-item:first-of-type {
    margin-left: 20px;
  }
  .highlighted-item:not(.is-active) .highlighted-link {
    pointer-events: none;
  }
}
@media print, (min-width: 992px) { /* for lg */
  section.highlighted {
    padding: 0 36px;
  }
  .highlighted .container {
    width: 1366px;
  }
  .section-title {
    font-size: 2.5rem;
  }
  .slider-controller > .btn {
    top: 185px;
    width: 70px;
    height: 70px;
  }
  .slider-controller > .btn:hover {
    width: 90px;
    height: 90px;
  }
  .highlighted-list:has(.highlighted-item:nth-child(4)) {
    justify-content: flex-start;
  }
  @supports not selector(:has(*)) {
    .highlighted-list {
      justify-content: flex-start;
    }
  }
  @supports not selector(:has(+ *)) {
    .highlighted-list {
      justify-content: flex-start;
    }
  }
  .highlighted-item {
    flex: 0 0 33.3333333333%;
    padding-right: 47px;
  }
  .highlighted-link {
    height: 100%;
  }
  .highlighted-link:focus-visible {
    outline-offset: -2px;
  }
  .highlighted-link:focus .highlighted-link-button {
    outline: #000 solid 2px;
    outline-offset: 1px;
  }
  .highlighted-link-button {
    margin-top: auto;
  }
}
/* + splide */
/* splide再生・停止ボタン */
.splide .splide__pagination_div {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
}

#main.top .splide .splide__pagination_div {
  position: relative;
  height: clamp(25px, 24.2px + 0.23vw, 30px);
  bottom: clamp(70px, 65.26px + 1.32vw, 90px);
  right: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 5px 10px;
  margin-bottom: -40px;
}

.splide .splide__toggle {
  cursor: pointer;
  width: 22px;
  height: 22px;
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  border: 0;
  background: #fff;
  border: 1px solid var(--logo-color, #0f4671);
  border-radius: 50%;
  margin-left: calc(0.5em + 1px);
  padding: 12px;
}

#main.top .splide .splide__toggle {
  padding: 9px;
}

.splide .splide__toggle.is-active .splide__toggle__pause {
  position: sticky;
  transform: none;
  transition: all 0.2s;
  display: flex;
}

.splide .splide__toggle.is-active .splide__toggle__pause::before,
.splide .splide__toggle.is-active .splide__toggle__pause::after {
  content: "";
  display: block;
  width: 3px;
  height: 10px;
  pointer-events: none;
  background-color: var(--logo-color, #0f4671);
  margin: 0 2px;
}

.splide .splide__toggle .splide__toggle__play {
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left-width: 8px;
  border-left-style: solid;
  border-left-color: var(--logo-color, #0f4671);
  border-right: 0;
  margin-left: 2px;
}

/* splide再生・停止ボタン */
@media print, (min-width: 992px) {
  section.highlighted { /* for lg */
    margin-bottom: -5px;
    padding-bottom: 5px;
  }
}

@media screen and (max-width: 991.98px) {
  .splide.highlighted-splide-has-arrow { /* for sm */
    padding-bottom: 27px;
  }
}
@media print, (min-width: 992px) {
  .splide.highlighted-splide-has-arrow { /* for lg */
    padding-bottom: 32px;
  }
}

.has-circle-arrow .splide__arrow {
  background-color: #fff;
  border: transparent;
  position: absolute;
  top: 127px;
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  transition: width 0.12s ease, height 0.12s ease, scale 0.12s ease;
  z-index: 1;
  border-radius: 100vmax;
}
@media print, (min-width: 992px) {
  .has-circle-arrow .splide__arrow { /* for lg */
    top: 212px;
    width: 70px;
    height: 70px;
    transform-origin: center 0;
  }
}

@media screen and (max-width: 991.98px) {
  .has-circle-arrow .splide__arrow--prev { /* for sm */
    left: 15px;
  }
}
@media print, (min-width: 992px) {
  .has-circle-arrow .splide__arrow--prev { /* for lg */
    translate: -50% 0;
    translate: clamp(-80px, (100vw - 1366px) / 2 * -1, -30px) 0;
  }
}

@media screen and (max-width: 991.98px) {
  .has-circle-arrow .splide__arrow--next { /* for sm */
    right: 15px;
  }
}
@media print, (min-width: 992px) {
  .has-circle-arrow .splide__arrow--next { /* for lg */
    translate: 50% 0;
    translate: clamp(30px, (100vw - 1366px) / 2, 80px) 0;
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn.prev-button { /* for lg */
    translate: -10px -50%;
  }
}
@media print, print and (max-width: 1506px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1506px) {
  .related-items .slider-controller > .btn.prev-button { /* for lg+ : 1366 + 70 + 70 */
    margin-right: clamp(-50px, (100vw - 1506px) / 2, 0px);
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn.next-button { /* for lg */
    translate: 10px -50%;
    order: 3;
  }
}
@media print, print and (max-width: 1506px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1506px) {
  .related-items .slider-controller > .btn.next-button { /* for lg+ : 1366 + 70 + 70 */
    margin-left: clamp(-50px, (100vw - 1506px) / 2, 0px);
  }
}

@media print, (min-width: 992px) {
  .has-circle-arrow .splide__arrow:hover { /* for lg */
    scale: 1.2857;
  }
}

@media screen and (max-width: 991.98px) {
  .has-circle-arrow .splide__arrow::before { /* for sm */
    background-size: 7px auto;
  }
}

.highlighted-splide-has-arrow .splide__track {
  overflow: visible;
}
@media print, (min-width: 992px) {
  .highlighted-splide-has-arrow .splide__track { /* for lg */
    width: calc(100% + 47px);
    margin-right: -47px;
    overflow: hidden;
  }
}

@media screen and (max-width: 991.98px) {
  .highlighted-splide-has-arrow .highlighted-list { /* for sm */ }
}
@media print, (min-width: 992px) {
  .highlighted-splide-has-arrow .highlighted-list { /* for lg */
    padding-bottom: 5px !important;
  }
}

.splide.highlighted-splide-has-arrow .splide__pagination {
  display: flex;
}
@media screen and (max-width: 991.98px) {
  .splide.highlighted-splide-has-arrow .splide__pagination { /* for sm */
    bottom: 4px;
  }
}
@media print, (min-width: 992px) {
  .splide.highlighted-splide-has-arrow .splide__pagination { /* for lg */
    bottom: 0;
  }
}

/* special */
section.special {
  padding: 0;
}

.special-contents.grid {
  row-gap: 1.75rem;
}

.special-item:nth-of-type(1) {
  grid-row: span 2/span 2;
}

.special-img {
  width: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.special-item:nth-child(n+2) .special-thumb-figure {
  display: flex;
  aspect-ratio: 320/228;
  overflow: hidden;
  align-items: anchor-center;
  border-radius: 10px;
}

.special-meta {
  padding-top: 0.375rem;
  color: var(--gray-blue-color, #9BA4B8);
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.special {
    padding: 0 1.25rem;
  }
  .special-contents.grid {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
    row-gap: 30px;
  }
  .special-item:nth-of-type(1) {
    grid-column: span 2/span 2;
  }
}
@media print, (min-width: 992px) { /* for lg */
  section.special {
    padding: 0 1rem;
  }
  .special-contents.grid {
    grid-template-columns: clamp(44%, 46vw - 2rem, 615px) 1fr 1fr;
    grid-template-rows: repeat(2, auto);
    column-gap: 40px;
  }
}
/* related-items */
section.related-items {
  padding: 0;
  overflow-x: hidden;
  overflow-y: visible;
}

.section-title.border-bottom {
  border-bottom: var(--gray-dark-color, #999) solid 1px;
  padding-bottom: 1rem;
}

.related-items .slider-controller > .btn {
  top: 130px;
  z-index: 1;
}

@media print, (min-width: 992px) {
  .related-items .controller-track.overflow-hidden { /* for lg */
    padding: 2px;
    margin: -2px;
  }
}

.cols-items-list,
.controller-track .cols-list {
  display: grid;
  grid-auto-flow: column;
  transition: transform 0.3s;
}
@media screen and (max-width: 991.98px) {
  .cols-items-list,
  .controller-track .cols-list { /* for sm */
    grid-auto-columns: 160px;
  }
}
@media print, (min-width: 992px) {
  .cols-items-list,
  .controller-track .cols-list { /* for lg */
    grid-auto-columns: 240px;
  }
}

.related-items-item {
  display: grid;
  grid-row: span 4;
  grid-template-rows: subgrid;
  row-gap: 0;
}

.related-items-item-link {
  display: contents;
  font-weight: normal;
  color: var(--text-color, #222);
  display: grid;
  grid-row: span 4;
  grid-template-rows: subgrid;
}

@media print, (min-width: 992px) {
  .related-items-item:has(:not(.is-close)) ~ .related-items-item:nth-last-child(1 of :not(.is-close)) .related-items-item-link {
    translate: -3px 0;
  }
}

@media print, (min-width: 992px) {
  .related-items-item:nth-child(1 of :not(.is-close)):nth-last-child(1 of :not(.is-close)) .related-items-item-link {
    translate: 0px 0;
  }
}

.related-items-item-link:hover,
.related-items-item:has(.related-items-item-link):hover .related-items-item-link {
  color: var(--logo-color, #0f4671);
}

.related-items-item-link:hover .related-items-img {
  border-color: var(--logo-color, #0f4671);
}

.item-figure {
  margin-bottom: 1.25rem;
}

.related-items-img {
  border: var(--gray-color, #ccc) solid 1px;
  border-radius: 10px;
  margin-bottom: 1.25rem;
  transition: all 0.16s;
  width: 100%;
}

.item-figure .related-items-img {
  margin-bottom: 0;
}

.related-items-meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  column-gap: 0.625rem;
  row-gap: 0.25rem;
  min-height: 21px;
  margin-bottom: 0.25rem;
  font-feature-settings: "palt";
}
@media print, (min-width: 992px) {
  .related-items-meta { /* for lg */
    min-height: 24px;
  }
}

@media screen and (max-width: 991.98px) {
  .item-figure + .related-items-meta { /* for sm */
    margin-top: -0.375rem;
  }
}

@media print, (min-width: 992px) {
  .related-items-meta .tags-meta { /* for lg */
    font-size: 0.75rem;
  }
}

.related-items-meta .tag-item {
  background-color: var(--red-dark-color, #A70000);
  height: 21px;
  margin-left: auto;
  padding: 0.125rem 0.5rem;
  border-radius: 0.25rem;
}
@media print, (min-width: 992px) {
  .related-items-meta .tag-item { /* for lg */
    height: 24px;
    padding: 0.25rem 0.625rem;
  }
}

.related-items-item-name,
.products-item-price .primary-price {
  font-weight: 500;
}

.related-items-item-name {
  margin-top: 0.25rem;
  margin-bottom: 1rem;
}

.products-item-price {
  grid-template-columns: auto 1fr;
  column-gap: 1rem;
  row-gap: 0.25rem;
  align-items: flex-end;
  line-height: calc(1.5em - 2px);
}
@media screen and (max-width: 991.98px) {
  .products-item-price { /* for sm */
    column-gap: 0.375rem;
  }
}

.products-item-price > dd {
  white-space: nowrap;
}

.price-strike-through-line {
  position: relative;
  display: block;
  width: fit-content;
  margin-left: auto;
  font-size: 0.75rem;
  white-space: nowrap;
}

.price-strike-through-line::after {
  background-color: var(--text-color, #222);
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  translate: 0 -50%;
}

.related-items-item .btn-close {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  cursor: pointer;
}
@media screen and (max-width: 991.98px) {
  .related-items-item .btn-close { /* for sm */
    padding: 0.625rem;
    top: 0;
    right: 0;
  }
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.related-items {
    padding: 0 1.25rem;
  }
  .related-items .slider-controller > .btn {
    top: 80px;
    width: 30px;
    height: 30px;
  }
  .cols-items-list {
    column-gap: 14.5px;
  }
  .related-items-item {
    flex: 0 0 160px;
  }
  .gp-products-list-type .related-items-item {
    flex: 0 0 calc(50% - 7.25px);
  }
  .related-items-item-link {
    font-size: calc(0.75rem + 1px);
  }
}
@media screen and (max-width: 991.98px) and (max-width: 359px) {
  .related-items-item-link { /* for sm */
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 991.98px) {
  .related-items-meta {
    font-size: calc(0.625rem + 1px);
  }
  .related-items-item-name,
  .products-item-price .primary-price {
    font-size: 0.875rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  section.related-items {
    padding: 0 20px 0.125rem;
  }
  .related-items .slider-controller > .btn.prev-button {
    left: 0;
    translate: -50% -50%;
  }
  .related-items .slider-controller > .btn.next-button {
    right: 0;
    translate: 50% -50%;
  }
  .cols-items-list {
    column-gap: 41px;
  }
  .related-items-item {
    flex: 0 0 240px;
  }
  .related-items-item-link {
    font-size: 0.875rem;
  }
  .related-items-item-name,
  .products-item-price .primary-price {
    font-size: 1rem;
  }
}
/* + .js-items-slider */
@media print, (min-width: 992px) {
  .related-items .slider-controller { /* for lg */
    margin: 0 clamp(-70px, (100vw - 1366px) / 2 * -1, -20px);
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller.ml-0 { /* for lg */
    margin-left: 0;
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn { /* for lg */
    align-self: flex-start;
    margin-top: 130px;
    transition: width 0.12s ease, height 0.12s ease, scale 0.12s ease;
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn:hover { /* for lg */
    width: 70px;
    height: 70px;
    scale: 1.2857;
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn.prev-button { /* for lg */
    translate: -10px -50%;
  }
}
@media print, print and (max-width: 1506px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1506px) {
  .related-items .slider-controller > .btn.prev-button { /* for lg+ : 1366 + 70 + 70 */
    margin-right: clamp(-50px, (100vw - 1506px) / 2, 0px);
  }
}

@media print, (min-width: 992px) {
  .related-items .slider-controller > .btn.next-button { /* for lg */
    translate: 10px -50%;
    order: 3;
  }
}
@media print, print and (max-width: 1506px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1506px) {
  .related-items .slider-controller > .btn.next-button { /* for lg+ : 1366 + 70 + 70 */
    margin-left: clamp(-50px, (100vw - 1506px) / 2, 0px);
  }
}

.cols-items-list,
.controller-track .cols-list {
  width: 100%;
  max-width: 100%;
  transition: margin 0.12s ease-in-out, transform 400ms cubic-bezier(0.25, 1, 0.5, 1) 0s;
}
@media print, (min-width: 992px) {
  .cols-items-list,
  .controller-track .cols-list { /* for lg */
    transition: margin 0.16s ease-in-out, transform 400ms cubic-bezier(0.25, 1, 0.5, 1) 0s;
  }
}

.cols-items-list.is-dragging > li * {
  pointer-events: none;
}

.compare-slider .controller-track {
  max-width: 100%;
  transition: margin 0.12s ease-in-out, transform 0.12s ease-out;
}

.slider-controller.compare-slider > .btn {
  position: absolute;
}

/* + .js-item-delete */
.related-items-item.is-close {
  background-color: var(--accent-color, #E2E0D7);
  opacity: 0;
  z-index: -1;
  transition: opacity 0.2s ease-in-out;
  animation: display-flex-none 0.5s ease-out forwards;
}

.related-items-item.is-close > a {
  opacity: 0.1;
}

/* kv -toppage */
.topkv-pic-detail {
  padding: 0.6rem;
}

.kv.-toppage .kv-list {
  margin: 0;
}

.kv.-toppage .nav-pager-button {
  margin: 1.25rem 1.25rem 0;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .kv-item {
    width: 100%;
    margin: 0;
  }
  .kv-list {
    margin: 0;
  }
  .topkv-pic-detail {
    padding: 0.5rem;
    font-size: 0.75rem;
    line-height: 1.25;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .kv.-toppage .kv-img {
    max-height: 580px;
    object-fit: cover;
  }
  .kv.-online-top .kv-img {
    max-height: 450px;
    object-fit: cover;
  }
}
/* topmenu-list */
@media screen and (max-width: 991.98px) { /* for sm */
  .kv.-toppage .nav-pager-button {
    margin: 1.25rem 1rem 0;
  }
  .topmenu-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
  }
  .topmenu-list .topmenu-item {
    background-color: #003D5C;
  }
  .topmenu-item .topmenu-link {
    position: relative;
    color: #fff;
    font-size: 0.875rem;
    padding: 0.9rem;
  }
  .topmenu-link .icon-arw-next {
    filter: brightness(0%) invert(100%);
    rotate: 180deg;
    margin-left: auto;
  }
}
/* latest-news */
section.latest-news {
  padding: 0;
}

.latestnews-link {
  font-weight: normal;
  margin-bottom: 3rem;
}

.latestnews-list {
  grid-template-columns: 96px auto;
  gap: 40px 70px;
}

.latestnews-item + .latestnews-item {
  margin-top: 2rem;
}

.latestnews-list .news-date {
  color: var(--logo-color, #003D5C);
  font-size: 1.125rem;
}

.latestnews-list .news-title {
  color: #222222;
  font-size: 1.125rem;
}

.latestnews-banner {
  width: 320px;
  margin-left: 4em;
  flex-shrink: 0;
}

.latestnews-banner-item + .latestnews-banner-item {
  margin-top: 2em;
}

.latestnews-banner-item .banner-name {
  font-size: 1.2em;
  margin-top: 0.5em;
  font-weight: normal;
  color: #222222;
}

@media print, (min-width: 992px) { /* for lg */
  section.latest-news {
    padding: 0 1rem;
  }
  .latestnews-list {
    display: grid;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.latest-news {
    padding: 0 1.25rem;
  }
  .latestnews-list .news-date,
  .latestnews-list .news-title {
    font-size: calc(1rem - 1px);
  }
}
@media screen and (max-width: 991.98px) and (max-width: 359px) {
  .latestnews-list .news-date,
  .latestnews-list .news-title { /* for sm */
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 991.98px) {
  .latestnews-list .news-date {
    margin-bottom: 0.625rem;
  }
  .latestnews-item + .latestnews-item {
    margin-top: 1.8rem;
  }
  .latestnews-banner {
    padding: 0 1.25rem;
    width: 100%;
    margin: 3.7rem auto 0;
  }
  .latestnews-banner-item .banner-name {
    font-size: 1rem;
  }
}
/* initiatives */
section.initiatives {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: -160px;
  background-color: #F6F7F8;
  overflow-x: hidden;
  overflow-y: visible;
}

.initiatives-item {
  background-color: #fff;
}

.initiatives-item > a.flex- {
  width: 100%;
  padding: 1.25rem;
  font-weight: 400;
  color: var(--text-color);
}

.initiatives-box-link:focus-visible {
  outline-offset: -2px;
}

.initiatives-item img {
  width: 100%;
}

.initiatives-item .link-details {
  color: #003D5C;
  border-bottom: solid 3px;
  font-size: 1rem;
  font-weight: bold;
  margin: auto 0 0 auto;
}

.initiatives h3 {
  line-height: 1.7;
}

.initiatives .initiatives-text {
  font-size: calc(1rem - 1px);
  line-height: 1.75;
}
@media screen and (max-width: 359px) {
  .initiatives .initiatives-text { /* for sm */
    font-size: 0.875rem;
  }
}

@media print, (min-width: 992px) { /* for lg */
  section.initiatives {
    padding: 0 1rem;
  }
  .initiatives-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
  }
  .info-splide.is-initialized:not(.is-active) .splide__list {
    display: grid;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.initiatives {
    margin-bottom: -100px;
  }
  .initiatives h2 {
    padding: 0 1.25rem;
  }
  .initiatives-list {
    gap: 20px;
  }
  .initiatives-list .initiatives-item {
    flex: 0 0 295px;
  }
  .initiatives .controller-track {
    margin-left: 2.5rem;
  }
  .initiatives .slider-controller > .btn.prev-button {
    top: 50%;
    left: 5px;
    translate: unset;
  }
  .initiatives .slider-controller > .btn.next-button {
    top: 50%;
    right: 5px;
    translate: unset;
  }
  /* .info-splide */
  .info-splide.has-circle-arrow .splide__arrow {
    top: 50%;
  }
  .info-splide.has-circle-arrow .splide__arrow--next {
    right: 5px;
  }
  .info-splide.has-circle-arrow .splide__arrow--prev {
    left: 5px;
  }
  .info-splide .splide__track {
    margin-left: calc(2.5rem - 10px);
    margin-bottom: 2em;
    overflow: visible;
  }
  .info-splide .initiatives-list {
    gap: 0;
  }
  .info-splide .initiatives-item {
    background-color: transparent;
    display: flex;
    flex: 0 0 315px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .info-splide .initiatives-box-link {
    background-color: #fff;
  }
  .info-splide .splide__pagination {
    position: static;
  }
}
/*!
 * SASS  :  sass/fb-site-footer.scss
 * Modified  :  *******
 */
/* connection */
.connection-label {
  margin-top: -0.25rem;
  font-weight: normal;
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.connection {
    margin-top: 100px;
  }
  .connection-item {
    border-top: var(--logo-color, #003D5C) solid 1px;
    height: 76px;
  }
  .connection-link {
    grid-template-columns: 1fr 3fr;
    column-gap: 1.5rem;
  }
  .connection-img {
    width: 46px;
    height: 46px;
  }
  .connection-label {
    justify-self: flex-start;
    font-size: 1.125rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  section.connection {
    border-top: var(--logo-color, #003D5C) solid 1px;
    margin-top: 160px;
  }
  .connection .container {
    border-left: var(--logo-color, #003D5C) solid 1px;
  }
  .connection-item {
    border-right: var(--logo-color, #003D5C) solid 1px;
    height: 200px;
  }
  .connection-link {
    width: 100%;
    height: 100%;
    padding: 0.75rem;
  }
  .connection-label {
    margin-bottom: auto;
    font-size: 1.5rem;
    transform: translateY(-10px);
  }
  .connection-link .connection-img {
    margin-top: auto;
    transform: translateY(-3px);
  }
}
/* site-footer */
.site-footer {
  border-top: var(--logo-color, #003D5C) solid 1px;
}

.footer-nav {
  background-color: var(--gray-light-color, #F8F9FE);
}

.footer-nav-inner {
  width: var(--contents-max-width, 1366px);
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.footer-menu-col .text-link {
  font-weight: normal;
}

.footer-nav .personal-area .btn-hover {
  display: grid;
  grid-template-columns: 21px auto;
  margin-left: -0.25rem;
  text-align: left;
}

.footer-nav .personal-area .btn-hover .icon-glove {
  translate: -3px -2px;
}

.footer-nav .personal-area .btn-hover .icon-pin {
  translate: -1px 0px;
  margin-right: 5px;
}

.sub-footer-menu {
  background-color: var(--gray-blue-light-color, #E1E6F1);
  border-top: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
  padding-left: 1rem;
  padding-right: 1rem;
  color: var(--gray-dark-color, #999);
}

.sub-menu-link {
  color: var(--text-color, #222);
  font-weight: normal;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}

.sub-menu-link:hover {
  color: var(--logo-color, #003D5C);
}

.copyright {
  letter-spacing: 0.5px;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .footer-nav {
    padding-top: 80px;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .footer-menu {
    justify-content: space-between;
    row-gap: 2.5rem;
  }
  .footer-logo {
    margin-bottom: 60px;
    text-align: center;
  }
  .site-footer .logo-img {
    height: auto;
  }
  .footer-menu-col {
    row-gap: 1.125rem;
    padding-right: 1rem;
  }
  .footer-menu .text-link {
    font-size: 0.875rem;
  }
  .footer-sns {
    border-top: var(--gray-color, #ccc) solid 1px;
    border-bottom: var(--gray-color, #ccc) solid 1px;
    margin-top: 38px;
    padding: 20px;
    font-size: 0.875rem;
    letter-spacing: 0.5px;
    text-align: center;
  }
  .footer-sns .sns-link {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .personal-nav .personal-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .personal-nav .personal-area {
    padding-left: 1rem;
  }
  .sub-footer-menu {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .sub-menu-link {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
  }
  .copyright {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .footer-nav {
    padding-top: 100px;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 100px;
  }
  .footer-menu {
    column-gap: calc(20px + 5vw);
    padding-left: 2rem;
  }
  .footer-menu-col {
    row-gap: 2rem;
  }
  .personal-nav {
    border-left: var(--gray-color, #ccc) solid 1px;
    margin-left: 80px;
    padding-left: 60px;
    padding-right: 1rem;
  }
  .personal-nav .personal-info {
    margin-top: auto;
  }
  .footer-nav .personal-area .btn-hover .icon-glove {
    translate: -3px -1px;
  }
  .sub-footer-menu {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .sub-menu-link {
    font-size: 0.875rem;
    letter-spacing: 0.5px;
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
  .copyright {
    padding-top: 2.25rem;
    padding-bottom: 3.25rem;
    font-size: 0.875rem;
  }
}
/* to-top */
.to-top {
  position: fixed;
  bottom: 36px;
  transition: none;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
  z-index: 1;
  opacity: 0;
  transition: opacity 0.25s ease-in-out;
  visibility: hidden;
  pointer-events: none;
}
@media screen and (max-width: 991.98px) {
  .to-top { /* for sm */
    width: 40px;
    height: 40px;
    right: 3vw;
  }
}
@media print, (min-width: 992px) {
  .to-top { /* for lg */
    right: 6vw;
    width: 60px;
    height: 60px;
    transform: translateX(100%);
  }
}

.to-top.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.to-top .to-top-link {
  position: relative;
  display: block;
  rotate: 90deg;
  width: 100%;
  height: 100%;
  transition: opacity 0.25s ease-in-out;
}

.to-top-link .icon-arw-top {
  position: absolute;
  left: 48%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/*!
 * SASS  :  sass/fb-breadcrumbs.scss
 * Modified  :  *******
 */
/* breadcrumbs
---------------------------------------------------- */
/* breadcrumbs */
.breadcrumbs {
  list-style: none;
  line-height: 1.5rem;
}

.breadcrumbs .breadcrumbs-link {
  font-weight: 400;
  text-decoration: underline;
  color: var(--color-text, #222);
}

.breadcrumbs .breadcrumbs-link:hover {
  text-decoration: none;
}

.breadcrumbs .breadcrumbs-item:not(.home)::before {
  content: "/";
  display: inline-block;
  padding-left: 0.5em;
  padding-right: 0.5em;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .breadcrumbs {
    width: 100%;
    font-size: 0.875rem;
  }
}
/* /breadcrumbs */
/*!
 * SASS  :  sass/fb-contents.scss
 * Modified  :  *******
 */
/* lower contents
---------------------------------------------------- */
/* common */
.panel {
  padding: 10px;
  border-radius: 10px;
}

.accordion-head {
  padding-bottom: 1rem;
  font-size: 1rem;
  overflow: hidden;
}

.has-arw-b .icon-arw-bottom {
  margin-left: auto;
  rotate: -90deg;
}

.js-accordion.is-open .icon-arw-bottom {
  margin-left: auto;
  rotate: 90deg;
}

@media print, (min-width: 992px) {
  .accordion-head .icon-arw-bottom:hover { /* for lg */
    cursor: pointer;
  }
}

.js-accordion .accordion-body {
  max-height: 0;
  transform: scaleY(0);
  transform-origin: top center;
  overflow: hidden;
  transition: transform 0.12s ease, max-height 0.12s ease;
}

.js-accordion.is-open .accordion-body {
  overflow: visible;
  transform: scaleY(1);
}

.js-accordion .input-group-list {
  opacity: 0;
}

.js-accordion.is-open .input-group-list {
  opacity: 1;
  transition: opacity 0.16s ease;
}

.js-accordion.is-open .when-open-arrow {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.accordion-head.when-open-arrow .icon-arw-bottom {
  display: none;
}

.js-accordion.is-open .when-open-arrow .icon-arw-bottom {
  display: inline-block;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .panel {
    padding: 20px;
  }
}
.box-title {
  line-height: 1.25;
}
@media screen and (max-width: 991.98px) {
  .box-title { /* for sm */
    padding: 0.5rem 0.625rem;
    line-height: calc(1em + 6px);
  }
}
@media print, (min-width: 992px) {
  .box-title { /* for lg */
    padding: 0.625rem 0.875rem;
  }
}

@media print, (min-width: 992px) {
  h2.box-title { /* for lg */
    padding: calc(1rem - 1px) 0.875rem;
  }
}

.box-title-icon {
  margin-right: 0.25rem;
}
@media print, (min-width: 992px) {
  .box-title-icon { /* for lg */
    margin-right: 0.825rem;
  }
}

@media screen and (max-width: 991.98px) {
  .box-title .icon-img { /* for sm */
    width: 26px;
  }
}
@media print, (min-width: 992px) {
  .box-title .icon-img { /* for lg */
    margin-top: 0.375rem;
    margin-left: 0.25rem;
    margin-bottom: 0.375rem;
  }
}

@media screen and (max-width: 991.98px) {
  .box-title-icon ~ .box-title-sub { /* for sm */
    margin-left: calc(26px + 0.5rem);
  }
}
@media print, (min-width: 992px) {
  .box-title-icon ~ .box-title-sub { /* for lg */
    margin-right: 0.25rem;
  }
}

/* - page-products
---------------------------------------------------- */
/* products-filter */
.tags-filter .tag-delete-button {
  background-color: transparent;
  border: none;
  margin-left: 0.625rem;
  padding: 0.25rem;
}
.tags-filter .tag-delete-button:hover {
  cursor: pointer;
}

.has-filter + .connection {
  margin-top: 0;
}

.filter-group {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.js-accordion .accordion-head:hover {
  cursor: pointer;
}

.filter-group.is-open .accordion-body {
  max-height: 80em;
}

.input-group-item {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.input-group-item.filter-checkbox-hidden label:hover,
.input-group-item:not(:has(input)) label:hover {
  cursor: default;
}

.input-group-item .form-control {
  margin-right: 0.625rem;
}

.input-group-item .form-control + .front-form-label-radio {
  margin-left: -0.625rem;
  padding-left: 0.625rem;
}

.input-group-list.type-select-size {
  column-gap: 1.25rem;
  row-gap: 0.5rem;
}

.input-group-list.type-select-color {
  row-gap: 0.25rem;
}

.type-select-color .input-group-item {
  align-items: center;
  flex-grow: 0;
  width: 40px;
  text-align: center;
}

.input-group-list.type-select-size .in-label {
  border: var(--logo-color, #003D5C) solid 1px;
  display: grid;
  min-width: 40px;
  border-radius: 5px;
}

.input-group-list.type-select-size .in-label.is-disabled:not(:has(:checked)) {
  opacity: 0.68;
  filter: grayscale(0.66);
}

.input-group-list.type-select-size .in-label.is-disabled:has(:checked) {
  border: var(--gray-safe-color, #767676) solid 1px;
}

.input-group-list.type-select-size .in-label.is-disabled > .form-control:checked {
  background-color: var(--gray-safe-color, #767676);
  border-color: var(--gray-safe-color, #767676);
}

.type-select-size > .input-group-item > .in-label.is-disabled > .cover-label {
  position: relative;
}

.type-select-size > .input-group-item > .in-label.is-disabled > .cover-label::before {
  background-color: #222;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2em;
  height: 1px;
  transform: translate(-50%, -50%) rotate(295deg);
}

.type-select-size > .input-group-item > .in-label.is-disabled:has(:checked) > .cover-label::before {
  background-color: var(--gray-safe-color, #767676);
}

.input-group-list.type-select-size .in-label > .form-control,
.input-group-list.type-select-size .in-label .cover-label {
  position: relative;
  grid-area: 1/1;
  width: auto;
  border-radius: 0;
}

.input-group-list.type-select-size .in-label > .form-control {
  border-radius: 4px;
  outline-offset: 3px;
}

.select-size-container .type-select-size .in-label > .form-control:checked {
  outline-offset: 4px;
}

.input-group-list.type-select-size .form-control,
.input-group-list.type-select-color .form-control {
  border: none;
  min-width: 40px;
  height: 40px;
  margin-right: 0;
}

.input-group-list.type-select-color .bg-bright-colors {
  border: var(--gray-pure-color, #7F7F7F) solid 1px;
}

.type-select-size > .input-group-item > .in-label > .cover-label {
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--logo-color, #003D5C);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.type-select-color > .input-group-item > .in-label > .form-control {
  margin-bottom: 0.25rem;
  border-radius: 100vmax;
}

.type-select-color .form-control + .cover-label > .icon-check {
  opacity: 0;
}

.type-select-color .form-control:checked + .cover-label > .icon-check {
  opacity: 1;
}

.bg-bright-colors + .cover-label > .icon-check {
  filter: brightness(30%);
}

.type-select-color .input-group-item .color-name {
  font-size: 0.75rem;
  white-space: nowrap;
}

@media screen and (max-width: 991.98px) {
  .btn-filter .icon-setting { /* for sm */
    margin-right: 0.875em;
  }
}
@media screen and (max-width: 374px) {
  .btn-filter .icon-setting { /* for sm */
    margin-right: 0.75em;
  }
}
@media print, (min-width: 992px) {
  .btn-filter .icon-setting { /* for lg */
    margin-right: 1.25em;
  }
}

@media screen and (max-width: 991.98px) { /* for sm */
  .sm-filter-layer {
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 100vw;
    bottom: 0;
    width: 88vw;
    padding-top: 50px;
    padding-bottom: 52px;
    z-index: 4;
    opacity: 0;
    overflow-x: hidden;
    overflow-y: auto;
    transition: right 0.16s ease;
  }
  .sm-filter-layer.is-filter-open {
    right: 12vw;
    opacity: 1;
  }
  .sm-filter-layer .bg-layer {
    left: -100vw;
    transition: left 0.16s ease;
  }
  .sm-filter-layer.is-filter-open .bg-layer {
    left: 88vw;
    width: 12vw;
    opacity: 0.5;
  }
  .sm-filter-layer .btn-close {
    background-color: var(--logo-color, #003D5C);
    position: fixed;
    top: 0;
    right: 100vw;
    display: flex;
    width: 50px;
    height: 50px;
    margin-left: auto;
    cursor: pointer;
    border-radius: 0;
    z-index: 4;
    transition: right 0.16s ease;
  }
  .sm-filter-layer.is-filter-open .btn-close {
    right: 12vw;
  }
  .sm-filter-layer .btn-close .icon-close {
    filter: brightness(0%) invert(100%);
  }
  .filter-container {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .filter-container .filter-header {
    margin-top: -40px;
    padding-bottom: 0.75rem;
  }
  .tags-filter .tag-delete-button {
    margin: -0.25rem -0.25rem -0.25rem 0.625rem;
  }
  .filter-header .tags-filter:empty + .btn {
    display: none;
  }
  .input-group-item {
    font-size: 1rem;
  }
  .input-group-item .form-control {
    margin-right: 0.625rem;
  }
  .input-group-list.type-select-color {
    column-gap: 2.5rem;
  }
  .filter-container .sticky-footer {
    background-color: #ffF;
    position: fixed;
    left: -100vw;
    bottom: 0;
    display: flex;
    align-items: center;
    width: 88vw;
    height: 68px;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    z-index: 1;
    transition: left 0.16s ease;
  }
  .sticky-footer .btn-filter-results {
    width: calc(100% + 2.5rem);
    max-width: calc(100% + 2.5rem);
    height: 46px;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    translate: 0 -1px;
    font-size: 1rem;
  }
  .sm-filter-layer.is-filter-open .sticky-footer {
    left: 0;
  }
  .utility-ctrl .btn-filter {
    height: 40px;
    white-space: nowrap;
    padding: 0.75em 1.125em;
  }
  /* filterボタンの追従 */
}
@media screen and (max-width: 991.98px) and (max-width: 374px) {
  .utility-ctrl .btn-filter { /* for sm */
    padding: 0.75em 1em;
  }
}
@media screen and (max-width: 991.98px) {
  .search-bar + .utility-ctrl {
    position: fixed;
    bottom: 36px;
    padding: 0px 0.625rem;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.25s ease-in-out;
    visibility: hidden;
    pointer-events: none;
  }
  .search-bar + .utility-ctrl.over-scroll {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .search-bar + .utility-ctrl .btn-filter .icon-setting {
    flex-shrink: 0;
  }
  .utility-ctrl.original.over-scroll {
    opacity: 0.1;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .has-filter .contents-main {
    width: calc(100vw - 304px);
    min-width: min(1132px, 100vw - 304px);
  }
  .products-filter {
    position: sticky;
    top: 120px;
    flex-shrink: 0;
    width: 304px;
    max-width: 100%;
    max-height: calc(100dvh - 120px);
    padding-bottom: 4rem;
    overflow-x: visible;
    overflow-y: scroll;
  }
  .scrollbar-control::-webkit-scrollbar {
    width: 7px;
  }
  .scrollbar-control::-webkit-scrollbar-track {
    background-color: var(--gray-color, #ccc);
    border-left: #fff solid 3px;
    border-right: #fff solid 3px;
  }
  .scrollbar-control::-webkit-scrollbar-thumb {
    background-color: var(--logo-color, #003D5C);
    border-left: #fff solid 3px;
    border-right: #fff solid 3px;
  }
  .scrollbar-control {
    scrollbar-width: thin;
    scrollbar-color: #003D5C #ccc;
  }
  .filter-container {
    padding-left: 1.875rem;
    padding-right: 1.625rem;
  }
  .input-group-item {
    font-size: 0.875rem;
    transform: translateY(1px);
  }
  .input-group-item [type=checkbox] {
    transform: translateY(-1px);
  }
  .input-group-item [type=checkbox],
  label [type=checkbox] {
    cursor: pointer;
  }
  .type-select-size .input-group-item [type=checkbox] {
    transform: translateY(0);
  }
  .type-select-color > .input-group-item {
    width: 33.333%;
    font-size: 0.875rem;
    text-align: center;
  }
  .input-group-list.type-select-color {
    margin-left: calc((33.3333% - 40px) / 2 * -1);
  }
  .type-select-color > .input-group-item > .in-label {
    justify-content: center;
  }
  .utility-ctrl .btn-filter {
    height: 48px;
  }
}
/* /products-filter */
.filter-contents {
  max-width: 1750px;
}

.products-head-meta {
  column-gap: 1.25rem;
}
@media print, (min-width: 992px) and (max-width: 1200px) {
  .products-head-meta { /* for lg */
    flex: 1 0 14rem;
  }
}
@media print, (min-width: 1201px) {
  .products-head-meta { /* for lg */
    flex-shrink: 0;
  }
}

@media screen and (max-width: 991.98px) {
  .products-head-meta .dropdown { /* for sm */
    height: 40px;
  }
}
@media print, (min-width: 992px) {
  .products-head-meta .dropdown { /* for lg */
    height: 48px;
    margin-left: auto;
  }
}

.filter-hit-value {
  padding: 0.25rem 0 0 0.5rem;
  font-size: 0.875rem;
}

.tags {
  gap: 0.625rem;
}

.tags-filter {
  width: 100%;
}

.tag-item {
  background-color: var(--gray-dark-color, #999);
  border: none;
  display: flex;
  align-items: center;
  padding: 0.5rem 0.625rem 0.5rem 2rem;
  color: #fff;
  border-radius: 4px;
}

.tag-item .icon-close {
  filter: brightness(0%) invert(100%);
}

.products-item .item-img {
  border: var(--gray-color) solid 1px;
}

.item-figure .item-img {
  border-radius: 10px;
  width: 100%;
}

.item-figure .tags-products {
  gap: 0.25rem;
  position: absolute;
  right: 0;
  bottom: 0;
}

.tags-products .tag-item {
  background-color: var(--logo-color, #003D5C);
  height: 23px;
  padding: 0.25rem 0.875rem;
  font-size: 0.6875rem;
  color: #fff;
  border-radius: 4px;
}
@media screen and (max-width: 991.98px) {
  .tags-products .tag-item { /* for sm */
    height: 21px;
  }
}

.btn-favorite {
  background-color: var(--gray-blue-light-color, #E1E6F1);
  border: none;
  display: grid;
  place-items: center;
  position: absolute;
  padding-top: 2px;
  border-radius: 100vmax;
  cursor: pointer;
}

.btn-favorite.active {
  background-color: var(--logo-color, #003D5C);
}

.btn-favorite.active .icon-favorite {
  filter: brightness(0%) invert(100%);
}

.colors-controller .btn,
.cols-controller .btn {
  border: none;
  padding: 0.375rem;
  border-radius: 0.25rem;
}

.colors-controller .btn {
  flex-shrink: 0;
}

.js-colors-slide-origin {
  margin-left: 0;
  transition: margin 0.3s;
}

.colors-item .colors-img,
.cols-img {
  border: var(--gray-color) solid 1px;
}

.colors-item.active .colors-img,
.cols-item.active .cols-img {
  border: var(--logo-color) solid 2px;
}

.products-meta {
  gap: 0.625rem;
}

.products-meta .tag-item {
  background-color: var(--red-dark-color, #A70000);
  height: 21px;
  padding: 0.25rem 0.625rem;
  border-radius: 0.25rem;
}
@media screen and (max-width: 991.98px) {
  .products-meta .tag-item { /* for sm */
    text-align: center;
    line-height: 1.125;
  }
}
@media print, (min-width: 992px) {
  .products-meta .tag-item { /* for lg */
    height: 24px;
  }
}

.products-item-name {
  margin-top: 0;
  line-height: 1.25;
}

.products-item .products-item-price {
  background-color: var(--gray-light-color, #F8F9FE);
}

.products-item {
  container-type: inline-size;
  container-name: produsts-item;
}

@media print, (min-width: 992px) {
  @container produsts-item (max-width: 14.9rem) { /* 15remより小さい場合：文字サイズが16pxの時にコンテナが15remなら240px、文字サイズが17px以上の時にコンテナが240pxなら14.9remを下回るため、あてはまる */
    .products-item-price {
      grid-template-columns: none;
    }
  }
  @container produsts-item (max-width: 17rem) { /* 17remより小さい場合：文字サイズが16pxの時にコンテナが18remなら289px、文字サイズが17px以上の時にコンテナが289pxなら17remを下回るため、あてはまる */
    .fav-products .products-item-price {
      grid-template-columns: none;
    }
  }
  @container produsts-item (max-width: 16rem) { /* 16remより小さい場合：文字サイズが22pxの時にコンテナが16remなら352px、文字サイズが22px以上の時にコンテナが340pxなら16remを下回るため、あてはまる */
    .compare-list .products-item-price {
      grid-template-columns: none;
    }
  }
}
/* modal - quick view */
.modal {
  display: none;
  overscroll-behavior-y: contain;
}

.modal.is-open {
  display: block;
}

.modal-bg-layer {
  position: fixed;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 5;
}
@media screen and (max-width: 991.98px) {
  .modal-bg-layer { /* for sm */
    background-color: #fff;
    padding: 1.5rem 1.25rem;
  }
}
@media print, (min-width: 992px) {
  .modal-bg-layer { /* for lg */
    background-color: rgba(0, 0, 0, 0.6);
    padding: 2rem 1.25rem;
  }
}

/* - .modal-bg-layer close event */
@media screen and (max-width: 991.98px) {
  .micromodal:not(.zoom-modal-dialog, .popup-min) { /* for sm */ }
  .micromodal:not(.zoom-modal-dialog, .popup-min) .modal-bg-layer {
    margin: -1.5rem -1.25rem;
  }
  .micromodal:not(.zoom-modal-dialog, .popup-min) .modal-dialog {
    margin: -1.5rem 0;
  }
  .micromodal:not(.zoom-modal-dialog, .popup-min) .modal-panel {
    padding: calc(16px + 1.5rem) 1.25rem;
  }
  .micromodal:not(.zoom-modal-dialog, .popup-min) .modal-close-button {
    top: 0.25rem;
    right: 1rem;
  }
}

.modal-dialog {
  background-color: #fff;
  width: 1400px;
  max-width: 100%;
  max-height: 100%;
  border-radius: 1rem;
  padding: 0;
}

@media screen and (max-width: 991.98px) {
  .modal-panel { /* for sm */
    padding: 16px 0;
  }
}
@media print, (min-width: 992px) {
  .modal-panel { /* for lg */
    padding: 84px 100px 92px;
    padding: 84px clamp(67px, 7vw, 100px) 92px;
  }
}
@media print, print and (max-width: 1024px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1024px) {
  .modal-panel {
    padding: 84px 67px 92px;
  }
}

@media print, (min-width: 992px) {
  .w-1200px-lg .modal-panel,
  .w-1024px-lg .modal-panel { /* for lg */
    padding: 72px 88px 80px;
  }
}
@media print, print and (max-width: 1024px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1024px) {
  .w-1200px-lg .modal-panel,
  .w-1024px-lg .modal-panel {
    padding: 72px 56px 80px;
  }
}

@media print, (min-width: 992px) {
  .modal.flame-slim .modal-panel { /* for lg */
    padding: 48px 60px 40px;
  }
}
@media print, print and (max-width: 1024px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1024px) {
  .modal.flame-slim .modal-panel {
    padding: 48px 32px 40px;
  }
}

@media screen and (max-width: 991.98px) {
  .modal.flame-slim .modal-content { /* for sm */
    height: auto;
  }
}
@media print, (min-width: 992px) {
  .modal.flame-slim .modal-content { /* for lg */
    max-height: calc(100dvh - 2rem - 2rem - 48px - 40px - 40px);
  }
}

.modal-close-button {
  background-color: var(--color-logo, #003D5C);
  border: none;
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.5rem;
}
@media screen and (max-width: 991.98px) {
  .modal-close-button { /* for sm */
    width: 36px;
    height: 36px;
  }
}
@media print, (min-width: 992px) {
  .modal-close-button { /* for lg */
    width: 40px;
    height: 40px;
    transform: translate(50%, -50%);
  }
}

.modal-close-button .icon-close {
  filter: brightness(0%) invert(100%);
}
@media screen and (max-width: 991.98px) {
  .modal-close-button .icon-close { /* for sm */
    width: 14px;
    height: 14px;
  }
}

.modal-content {
  padding: 2px;
  overflow-x: visible;
  overflow-y: auto;
  height: auto;
  max-height: calc(100dvh - 1.5rem - 1.5rem - 16px - 16px - 27px);
}
@media print, (min-width: 992px) {
  .modal-content { /* for lg */
    max-height: calc(100dvh - 2rem - 2rem - 84px - 92px - 36px);
  }
}

@media print, (min-width: 992px) {
  .modal-content.scrollbar-control { /* for lg */
    margin-right: -1.25rem;
    padding-right: 1.25rem;
  }
}

@media print, (min-width: 992px) {
  .scrollbar-control .scrollbar-expansion { /* for lg */
    margin-right: -7px;
  }
}

@media print, (min-width: 992px) {
  .modal-content .detail-grid { /* for lg */
    grid-template-areas: "visual data-1" "visual data-2" "visual data-3" "visual data-4";
    grid-template-columns: calc(50% - 72px - 9px) 1fr;
    grid-template-columns: clamp(210px, 50% - 72px - 9px, 540px) 1fr;
    grid-template-rows: auto auto auto auto;
  }
}

.modal-content .price-info .btn-info {
  display: none;
}

.modal-content .Delivery-price-attention .text-right,
.modal-content .delivery-price-attention .text-right {
  display: none;
}

/* /modal - quick view */
/* modal - zoom-modal-dialog */
@media screen and (max-width: 991.98px) {
  .zoom-modal-dialog .modal-bg-layer { /* for sm */
    background-color: rgba(0, 0, 0, 0.6);
    padding: 1.5rem 0;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-modal-dialog .modal-dialog { /* for sm */
    border-radius: 0;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-modal-dialog .modal-panel { /* for sm */
    padding: 30px 0px;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-modal-dialog .modal-close-button { /* for sm */
    top: -1.5rem;
    right: 0.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-modal-dialog .modal-content { /* for sm */
    margin-left: -0.375rem;
    margin-right: -0.375rem;
  }
}
@media print, (min-width: 992px) {
  .zoom-modal-dialog .modal-content { /* for lg */
    overflow-y: visible;
  }
}

.zoom-slider-container {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media print, (min-width: 992px) {
  .zoom-slider-container { /* for lg */
    padding-bottom: 8px;
  }
}

.zoom-slider-container,
.zoom-slider-container .kv-controller,
.zoom-slider-container .kv-list {
  height: 100%;
}

.zoom-slider-container .kv-list {
  /*align-items: stretch;*/
}

@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller .prev-button,
  .zoom-slider-container .kv-controller .next-button { /* for sm */
    width: 32px;
    z-index: 102;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller .prev-button { /* for sm */
    margin-right: -32px;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller .next-button { /* for sm */
    margin-left: -32px;
  }
}

.zoom-slider-container .kv-controller {
  max-height: 924px;
}
@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller { /* for sm */
    width: 100%;
  }
}

.zoom-slider-container .kv-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  /*height: 100%;*/
}

.zoom-slider-container .kv-controller .item-img {
  height: 100%;
  max-height: calc(100dvh - 2rem - 2rem - 48px - 40px - 40px - 52px);
  width: auto;
  object-fit: cover;
}
@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller .item-img { /* for sm */
    width: 100%;
  }
}

@media screen and (max-width: 991.98px) {
  .zoom-slider-container .kv-controller .caption { /* for sm */
    padding-left: calc(1rem - 1px);
    padding-right: calc(1rem - 1px);
  }
}

.zoom-slider-container .kv-controller .product-movie {
  width: 100%;
}

.kv-controller .item-img:has(iframe) {
  display: flex;
  align-items: center;
}

.kv-controller .product-movie iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 560/315;
}

@media print, (min-width: 992px) {
  .zoom-slider-container .kv-controller .item-img:has(+ .caption) { /* for lg */
    max-height: calc(100dvh - 2rem - 2rem - 48px - 40px - 40px - 52px);
    height: auto;
    margin-top: auto;
    margin-bottom: auto;
  }
}

.zoom-slider-container .kv-controller .img-360 {
  object-fit: contain;
}

.zoom-slider-container .item-img.cloudimage-360 {
  width: 100%;
  max-width: 1000px;
}

.zoom-slider-container .cloudimage-360-inner-box {
  display: flex;
  place-content: center;
  height: 100%;
}

.zoom-slider-container .zoom-button {
  display: none;
}

/* /modal - zoom-modal-dialog */
/* modal - popup-min */
.popup-min .modal-bg-layer {
  background-color: rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 991.98px) {
  .popup-min .modal-content { /* for sm */
    max-height: calc(100dvh - 1.5rem - 1.5rem - 3.25rem - 3.25rem - 36px);
  }
}

@media screen and (max-width: 991.98px) { /* for sm */
  .popup-min .modal-panel {
    padding: 3.25rem 1.25rem;
  }
  .popup-min .modal-close-button {
    transform: translate(12px, -12px);
  }
}
/* /modal - popup-min */
/* modal-bg-expansion */
.modal-dialog .bg-color-gray-light-expansion {
  background-color: var(--gray-light-color, #F8F9FE);
  position: relative;
}

/* /modal-bg-expansion */
@media screen and (max-width: 991.98px) { /* for sm */
  .contents-main .kv-item {
    padding-left: 10px;
    padding-right: 10px;
  }
  .products-head {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .products-head .dropdown {
    flex-grow: 1;
  }
  .tags-filter .tag-item {
    height: 28px;
    font-size: 0.625rem;
  }
  .products-body {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
  .products-list {
    grid-template-columns: repeat(2, calc(50% - 7.5px));
    column-gap: calc(1rem - 1px);
  }
  .products-item {
    margin-bottom: 36px;
  }
  .btn-favorite {
    top: 0.25rem;
    right: 0.25rem;
    width: 26px;
    height: 26px;
  }
  .products-list .icon-favorite {
    width: 14px;
    height: 12px;
    position: absolute;
  }
  .colors-controller,
  .cols-controller {
    gap: 0.25rem;
  }
  .products-item .colors-list,
  .cols-list {
    flex-grow: 1;
    flex-shrink: 1;
  }
  .products-item .colors-item,
  .cols-item {
    flex-shrink: 0;
    width: 36px;
  }
  .colors-controller .colors-list,
  .cols-controller .cols-list {
    gap: 0.5rem;
    overflow-x: auto;
  }
  .colors-controller .colors-list {
    padding-bottom: 0.25rem;
    margin-bottom: -0.25rem;
  }
  /* .colors-controller.show-controller */
  /* .colors-controller.show-fade-sm */
  .colors-controller.show-fade-sm {
    position: relative;
    overflow: hidden;
  }
  .colors-controller.show-fade-sm .btn {
    position: absolute;
    width: 1.125rem;
    height: 36px;
    border-radius: 0;
  }
  .colors-controller.show-fade-sm .prev-button {
    background: linear-gradient(to right, rgb(255, 255, 255) 10%, rgba(255, 255, 255, 0) 100%);
    left: 0;
  }
  .colors-controller.show-fade-sm .next-button {
    background: linear-gradient(to left, rgb(255, 255, 255) 10%, rgba(255, 255, 255, 0) 100%);
    right: 0;
  }
  .colors-controller.show-fade-sm .btn .icon-arw-prev,
  .colors-controller.show-fade-sm .btn .icon-arw-next {
    display: none;
  }
  .colors-controller.show-fade-sm .colors-item:first-child {
    margin-left: auto;
  }
  .colors-controller.show-fade-sm .colors-item:last-child {
    margin-right: auto;
  }
  /* /.colors-controller.show-fade-sm */
  .products-meta {
    font-size: calc(0.625rem + 1px);
  }
  .products-meta .tags-meta {
    font-size: calc(0.625rem + 1px);
  }
  .products-item-name {
    min-height: 35px;
    font-size: 0.875rem;
  }
  .products-item .products-item-price {
    row-gap: 0.375rem;
    padding: 0.5rem 0.5rem;
    font-size: calc(0.625rem + 1px);
    border-radius: 5px;
  }
  .products-item .products-item-price .primary-price {
    font-size: calc(0.75rem + 1px);
  }
  .products-item [type=checkbox] {
    width: 18px;
    height: 18px;
    margin-right: 0.25rem;
    border-radius: 3px;
  }
  .products-body .box-title {
    grid-column: span 2/span 2;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .filter-contents .kv .splide {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
  }
  .tags-filter .tag-item {
    height: 36px;
    font-size: 0.875rem;
  }
  .tags-filter .tag-delete-button {
    display: flex;
    align-items: center;
    margin-right: -0.25rem;
  }
  .products-list {
    grid-template-columns: repeat(4, clamp(240px, (100% - 90px) / 4, 316px));
    column-gap: 34px;
  }
}
@media print, print and (max-width: 1452px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1452px) {
  .products-list {
    grid-template-columns: repeat(3, clamp(240px, (100% - 68px) / 3, 328px));
  }
}
@media print, print and (max-width: 1168px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1168px) {
  .products-list {
    grid-template-columns: repeat(2, clamp(240px, (100% - 34px) / 2, 375px));
  }
}
@media print, (min-width: 992px) {
  .filter-contents .products-list {
    container-type: inline-size;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .products-item {
    margin-bottom: 80px;
  }
  .products-list .products-item {
    flex: 0 0 clamp(287px, (100vw - 304px - 80px - 34px) / 2, 447px);
  }
  .is-y-scrollbar-visible .products-list .products-item {
    flex: 0 0 clamp(287px, (100vw - 17px - 304px - 80px - 34px) / 2, 447px);
  }
  @container (min-width:929px) {
    .products-list .products-item {
      flex: 0 0 clamp(287px, (100vw - 304px - 80px - 68px) / 3, 432px);
    }
    .is-y-scrollbar-visible .products-list .products-item {
      flex: 0 0 clamp(287px, (100vw - 17px - 304px - 80px - 68px) / 3, 432px);
    }
  }
  @container (min-width:1366px) {
    .products-list .products-item {
      flex: 0 0 clamp(287px, (100vw - 304px - 80px - 102px) / 4, 316px);
    }
    .is-y-scrollbar-visible .products-list .products-item {
      flex: 0 0 clamp(287px, (100vw - 17px - 304px - 80px - 102px) / 4, 316px);
    }
  }
  .btn-favorite {
    top: 0.625rem;
    right: 0.625rem;
    width: 40px;
    height: 40px;
  }
  .colors-controller,
  .cols-controller {
    gap: 0.625rem;
  }
  .colors-controller .colors-list,
  .cols-controller .cols-list {
    gap: 0.625rem;
  }
  .colors-controller .colors-list {
    margin: -2px;
    padding: 2px;
  }
  .colors-controller .colors-item {
    flex-shrink: 0;
  }
  .colors-controller .colors-item:focus-visible {
    outline-offset: -1px;
  }
  .colors-controller.show-fade-sm .colors-item:first-child {
    margin-left: auto;
  }
  .colors-controller.show-fade-sm .colors-item:last-child {
    margin-right: auto;
  }
  .products-meta {
    font-size: 0.875rem;
  }
  .products-meta .tags-meta {
    font-size: 0.75rem;
  }
  .products-item-name {
    min-height: 60px;
    font-size: 1.5rem;
  }
  .products-item .products-item-price {
    row-gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-radius: 10px;
  }
  .products-item .products-item-price .primary-price {
    font-size: 1.25rem;
    line-height: var(--line-height-sm, 1.25);
  }
  .products-item .products-item-price .color-red {
    display: block;
    margin-top: -1px;
  }
  .products-item .primary-price .color-red {
    margin-top: -3px;
  }
  .filter-contents .products-item-price ~ .row .btn-outline {
    flex-shrink: 1;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .filter-contents .products-item-price ~ .row .btn-outline + label {
    flex-shrink: 0;
    padding-left: 0.875rem;
  }
  .products-body .box-title {
    grid-column: span 3/span 3;
  }
}
/* compare-panel */
.compare-panel {
  background-color: #fff;
  border-top: var(--color-logo, #003D5C) solid 2px;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: 169px;
  padding: 0.625rem;
  translate: 0 100%;
  transition: translate 0.25s ease-in-out;
}
@media screen and (max-width: 991.98px) {
  .compare-panel { /* for sm */
    z-index: 1;
  }
}
@media print, (min-width: 992px) {
  .compare-panel { /* for lg */
    gap: 45px;
    height: 160px;
    padding: 1.25rem;
  }
}

.compare-panel.is-open {
  translate: 0 0;
  z-index: var(--z-index-middle);
}

.compare-panel .panel-tab {
  border: none;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  top: 0;
  width: 148px;
  height: 36px;
  padding: 0.5rem 0.75rem;
  color: #fff;
  border-radius: 10px 10px 0 0;
  translate: 0 -100%;
  cursor: pointer;
}
@media print, (min-width: 992px) {
  .compare-panel .panel-tab { /* for lg */
    width: 176px;
    left: max(324px, (100vw - 1750px) / 2 + 314px);
  }
}

@media print, (min-width: 992px) {
  .is-y-scrollbar-visible .compare-panel .panel-tab { /* for lg */ }
}
@media print, print and (max-width: 1454px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1454px) {
  .is-y-scrollbar-visible .compare-panel .panel-tab {
    left: max(304px, 100vw - 1132px);
  }
}

@media print, (min-width: 992px) {
  .fav-products ~ .compare-panel .panel-tab { /* for lg */
    translate: -384px -100%;
    left: auto;
  }
}

.bg-color-logo .icon-arw-bottom {
  filter: brightness(0%) invert(100%);
}

.compare-panel:not(.is-open) .bg-color-logo .icon-arw-bottom {
  rotate: 90deg;
}

.compare-panel .cols-controller {
  margin-left: -5px;
  margin-right: -5px;
}
@media print, (min-width: 992px) {
  .compare-panel .cols-controller { /* for lg */
    width: 832px;
  }
}

.compare-panel .cols-controller > .btn {
  flex-shrink: 0;
}

@media screen and (max-width: 991.98px) {
  .compare-panel .controller-track { /* for sm */
    width: calc(100vw - 10px - 8px - 42px);
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, (min-width: 992px) {
  .compare-panel .controller-track { /* for lg */
    width: 770px;
  }
}

.compare-panel .cols-list {
  max-width: 770px;
}
@media screen and (max-width: 991.98px) {
  .compare-panel .cols-list { /* for sm */
    grid-auto-columns: 100px;
    gap: calc(0.5rem - 1px);
    overflow-x: visible;
    transition: margin 0.12s ease-in-out, transform 0.12s ease-out;
  }
}
@media print, (min-width: 992px) {
  .compare-panel .cols-list { /* for lg */
    grid-auto-columns: 120px;
  }
}

.compare-panel .cols-item {
  flex: 0 0 100px;
}
@media screen and (max-width: 991.98px) {
  .compare-panel .cols-item { /* for sm */
    width: 100px;
  }
}
@media print, (min-width: 992px) {
  .compare-panel .cols-item { /* for lg */
    flex-basis: 120px;
  }
}

.cols-item.is-close {
  background-color: var(--accent-color, #E2E0D7);
  opacity: 0;
  z-index: -1;
  transition: opacity 0.2s ease-in-out;
  animation: display-flex-none 0.5s ease-out forwards;
}

.compare-panel .cols-img {
  border-radius: 10px;
}

.compare-panel .cols-item .btn-close {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  width: 24px;
  height: 24px;
  cursor: pointer;
}
@media print, (min-width: 992px) {
  .compare-panel .cols-item .btn-close { /* for lg */
    width: 28px;
    height: 28px;
  }
}

@media print, (min-width: 992px) {
  .compare-panel-operation { /* for lg */
    width: 200px;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-panel-operation .btn-compare { /* for sm */
    width: 148px;
    height: 36px;
    font-size: 0.875rem;
  }
}

.compare-panel .cols-item:hover {
  position: relative;
}

.compare-panel .cols-item:hover:before {
  background-color: var(--color-text, #222);
  content: "";
  display: grid;
  position: absolute;
  inset: 0;
  border-radius: 10px;
}

.compare-panel .cols-item:hover:after {
  content: attr(data-hover-title);
  display: grid;
  position: absolute;
  top: calc(50% + 0.25rem);
  max-height: 60px;
  margin: auto;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  color: #fff;
  translate: 0 -50%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media print, (min-width: 992px) {
  .compare-panel .cols-item:hover:after { /* for lg */
    font-size: calc(0.75rem + 1px);
    max-height: 65px;
  }
}

.compare-panel .cols-item:hover .cols-img {
  opacity: 0.66;
}

/* - page-products - detail
---------------------------------------------------- */
.kv-controller .item-img {
  border: var(--gray-color, #ccc) solid 1px;
  width: 100%;
  aspect-ratio: 1/1;
}

.zoom-modal-dialog .kv-controller .item-img {
  border: none;
}

.visual-container .kv-controller video {
  height: auto !important;
}

@media (hover: hover) and (pointer: fine) {
  .kv-controller video:hover {
    cursor: pointer;
  }
}
.modal-content .visual-container .kv-controller video {
  height: 100% !important;
}

.modal-content .visual-container .kv-controller video,
.modal-content .visual-container .kv-controller iframe {
  pointer-events: auto;
}

.kv-controller .item-img.img-360 {
  background-color: var(--gray-dark-color, #999);
  padding: 8%;
}

.cloudimage-360-inner-box canvas {
  width: auto !important;
  vertical-align: top;
  aspect-ratio: 1/1;
  max-width: 100%;
}
@media screen and (max-width: 991.98px) {
  .cloudimage-360-inner-box canvas { /* for sm */
    height: auto !important;
  }
}
@media print, (min-width: 992px) {
  .cloudimage-360-inner-box canvas { /* for lg */
    height: 100% !important;
  }
}

.visual-container .cloudimage-360-icons-container,
.visual-container .cloudimage-360-view-360-icon {
  z-index: auto;
}

.kv-pager .btn {
  border: none;
  padding: 0.375rem;
  border-radius: 0.25rem;
}

.kv-pager .btn.prev-button,
.kv-pager .btn.next-button {
  display: none;
  flex: 0 0 24px;
}

.visual-container .zoom-button {
  background-color: #fff;
  border: none;
  position: absolute;
  top: 0;
  right: 10px;
  width: 40px;
  height: 40px;
  margin-top: calc(100% - 10px);
  transform: translateY(-100%);
  border-radius: 5px;
}

[data-micromodal-trigger] {
  cursor: pointer;
}

.modal-dialog [data-micromodal-trigger] {
  cursor: auto;
}

.modal .zoom-button {
  display: none;
}

.detail-meta {
  flex-direction: column;
  column-gap: 1.5em;
  row-gap: 0.25rem;
}

@media screen and (max-width: 991.98px) {
  .detail-meta .product-code { /* for sm */
    align-self: flex-start;
  }
}

.detail-meta.not-column {
  flex-direction: unset;
}

.tags-detail:has([style*="display: none"] + [style*="display: none"] + [style*="display: none"]) {
  margin-bottom: 0;
}

.tags-detail .tag-item {
  background-color: var(--logo-color, #003D5C);
  height: 24px;
  padding: 0.25rem 0.625rem;
  font-size: 0.75rem;
  border-radius: 0.25rem;
}

.tag-item.bg-color-dark-red {
  background-color: var(--red-dark-color, #A70000);
}

.products-detail-name {
  font-weight: 500;
}
@media screen and (max-width: 991.98px) {
  .products-detail-name { /* for sm */
    font-size: 1.625rem;
  }
}
@media print, (min-width: 992px) {
  .products-detail-name { /* for lg */
    font-size: 2.25rem;
  }
}

.colors-item > label > .form-control {
  position: absolute;
  transform: translate(50%, 50%);
}

.colors-list.overflow-hidden:has(.colors-item-button) {
  margin: -2px;
  padding: 2px;
}

.colors-item > label > .colors-img {
  position: relative;
  z-index: -1;
}

.colors-information .item-img {
  border: var(--gray-color, #003D5C) solid 1px;
}

.delivery-price .row {
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.delivery-price .operation .is-back-order {
  padding-left: 0.75rem;
  padding-right: 0.25rem;
}

.delivery-price .operation .has-icon-before::after {
  width: 0.5em;
}

.product-features .article-li {
  list-style: initial;
  margin-left: 20px;
}

.product-detail .new_model_link {
  text-align: center;
  text-align: -webkit-center;
}

.product-detail .new_model_link .new_model_link_div {
  border: 2px solid #003D5C;
  background-color: #F8F9FE;
  margin: 20px 1.25rem 0;
  max-width: 1366px;
  border-radius: 0.5rem;
}
@media screen and (max-width: 991.98px) {
  .product-detail .new_model_link .new_model_link_div { /* for sm */
    margin: 10px 1.25rem -0.5rem;
  }
}

/* article-group */
.article-title.accordion-head {
  margin-top: 0;
  font-weight: 600;
}

.article-body.accordion-body {
  line-height: 2;
}

.js-panel-link-details.hover-animation:hover {
  cursor: pointer;
}

.article-body a {
  text-decoration: underline;
}

.js-panel-link-details .link-details {
  text-decoration: none;
}

.article-body .text-underline.color-logo:hover {
  animation: hover 0.2s ease-out forwards;
}

.article-body > a,
.article-body .article-row > a {
  text-decoration: none;
}

.article-body a:hover {
  text-decoration: none;
}

.js-accordion.is-open .accordion-body {
  max-height: 2000rem;
}
@media print, (min-width: 992px) {
  .js-accordion.is-open .accordion-body { /* for lg */
    max-height: 1200rem;
  }
}

.pager-item {
  cursor: pointer;
}

.link-details.inline-block {
  color: #003D5C;
  border-bottom: solid 3px;
  font-size: 1rem;
  font-weight: bold;
  margin: auto 0 0 auto;
}

.article-row .category-select .sub-item:last-child {
  margin-right: auto;
}

/* table */
.table-p0 th,
.table-p0 td {
  padding: 0;
}

@media screen and (max-width: 991.98px) {
  .table-specs { /* for sm */
    margin-left: 1.125rem;
    line-height: 1.5rem;
  }
}
@media print, (min-width: 992px) {
  .table-specs { /* for lg */
    line-height: 1.75rem;
  }
}

.table-specs th {
  padding-top: 0.125rem;
}
@media print, (min-width: 992px) {
  .table-specs th { /* for lg */
    padding-right: min(3vw, 3rem);
    padding-bottom: 0.375rem;
    white-space: nowrap;
  }
}

.table-specs td {
  padding-top: 0.125rem;
  padding-bottom: 0.375rem;
}

.table-hint {
  position: relative;
}

.table-hint table {
  border-collapse: collapse;
}

.table-hint .scroll-hint {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease-in-out;
  width: 70px;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 10px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
}

.table-hint .scroll-hint.scroll-hint--show {
  opacity: 1;
}

.delivery-price .table-head.delivery-head {
  background-color: #E2DFD6;
  padding: 5px 15px;
  border-radius: 6px;
  margin-bottom: 1.75rem;
}

.delivery-price .delivery-price-cont {
  background-color: #E2DFD6;
  padding: 5px 6px;
  border-radius: 6px;
  margin-right: 10px;
}

.kv-controller.has_one_image .prev-button,
.kv-controller.has_one_image .next-button {
  display: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .detail-grid {
    display: block;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .detail-compare {
    display: block;
    width: max-content;
    margin: -0.625rem -0.375rem -1.75rem 0;
    padding: 0.625rem 0.375rem;
    text-align: end;
    text-decoration: underline;
  }
  .detail-compare .form-control {
    width: 18px;
    height: 18px;
  }
  .visual-container .prev-button,
  .visual-container .next-button {
    border: transparent 1px;
    padding: 0.25rem;
    width: 32px;
    height: 40px;
  }
  .visual-container .prev-button {
    padding-right: 0.75rem;
    transform: translateX(1px);
  }
  .visual-container .next-button {
    padding-left: 0.75rem;
    transform: translateX(-1px);
  }
  .visual-container .kv-controller.has-arrow:not(.has_one_image) .kv-list {
    margin-left: -32px;
    margin-right: -32px;
  }
  .visual-container .kv-item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .visual-container .btn-favorite {
    top: 0.625rem;
    right: 0.625rem;
    width: 40px;
    height: 40px;
  }
  .kv-pager {
    gap: 0.25rem;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .kv-pager .pager-list {
    flex-shrink: 1;
    gap: 0.5rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
  }
  .pager-list.scroll-x-auto {
    margin-bottom: 0.25rem;
    padding-bottom: 1.25rem;
    overflow-x: auto;
  }
  .kv-pager .pager-item {
    background-color: #fff;
    border: var(--logo-color, #0f4671) solid 1px;
    flex-shrink: 0;
    width: 10px;
    height: 10px;
    margin: 0.875rem calc(1em - 2px) 0;
    padding: 0;
    border-radius: 100vmax;
    text-indent: -9999em;
    overflow: hidden;
    transition: margin 0.2s;
  }
  .pager-item.thumb-movie {
    border: none;
    width: 12px;
    height: 12px;
    margin-left: calc(1em - 2px);
    margin-right: calc(1em - 4px);
    border-radius: 0;
  }
  .pager-item.thumb-movie::before {
    background: url(../img/icon/triangle-border.svg) no-repeat center/contain;
    content: "";
    display: block;
    width: 11px;
    height: 11px;
  }
  .pager-item.thumb-360 {
    border: none;
    display: flex;
    width: 21px;
    height: 13px;
    margin: 0.75rem calc(1em - 10px) 0;
    text-indent: 0;
    overflow: visible;
  }
  .pager-item.thumb-360::before {
    content: "360";
    display: block;
    font-size: 0.75rem;
    color: var(--color-logo, #0f4671);
    transform: translateY(-1px);
  }
  .kv-pager .pager-item.active {
    background-color: var(--logo-color, #0f4671);
    cursor: pointer;
  }
  .pager-item.thumb-movie.active,
  .pager-item.thumb-360.active {
    background-color: transparent;
  }
  .pager-item.thumb-movie.active::before {
    background: url(../img/icon/triangle-fill.svg) no-repeat center/contain;
  }
  .pager-item.thumb-360.active::before {
    font-weight: 800;
  }
  .visual-container .pager-img,
  .visual-container .icon-movie {
    display: none;
  }
  .colors-information .colors-item {
    width: 60px;
  }
  .select-size-container .type-select-size {
    column-gap: 1.125rem;
    row-gap: 0.375rem;
  }
  .delivery-price .row {
    margin-bottom: 0.5rem;
  }
  .delivery-price .operation .btn {
    width: 100%;
    height: 60px;
  }
  .cart-in-container .btn.has-icon-before .button-label {
    margin-left: 0;
    margin-right: 0;
    padding: 0 0.875rem;
  }
  .article-group {
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
  }
  .article-group:not(.is-open) + .article-group {
    margin-top: 0.75rem;
  }
  .article-title.accordion-head {
    margin-bottom: 1rem;
    font-size: 1.25rem;
  }
  .article-body.accordion-body {
    font-size: calc(0.875rem + 1px);
  }
}
@media screen and (min-width: 1201px) {
  .delivery-price .table-head.delivery-head::after {
    content: "";
    display: block;
    width: calc(var(--operation_ele_width) - 20px);
  }
  .delivery-price .operation .btn {
    width: var(--operation_ele_width);
    transform: translateY(1px);
    white-space: nowrap;
  }
  .delivery-price .delivery-head-quick + .row .delivery-info {
    width: 30%;
  }
  .delivery-price .delivery-head-quick + .row .operation .btn {
    white-space: unset;
  }
}
@media screen and (max-width: 1200px) {
  .delivery-price .operation .btn {
    width: 100% !important;
  }
  .delivery-price .row:not(.table-head) {
    flex-wrap: wrap;
    column-gap: 28px;
    row-gap: 1.125rem;
    padding-bottom: 1.25rem;
  }
  .delivery-price .row:not(.table-head) .delivery-info {
    width: calc(56% - 14px);
  }
  .delivery-price .row:not(.table-head) .price-info {
    width: calc(44% - 14px);
  }
  .delivery-price .row.shipping_impossible .delivery-info {
    width: 100%;
  }
  .delivery-price .row.shipping_impossible .price-info {
    display: none;
  }
  .delivery-price .row:not(.table-head) .operation {
    width: 100%;
  }
}
@media print, (min-width: 992px) {
  .detail-compare { /* for lg */
    padding: 0.4rem 2rem;
    color: var(--logo-color, #003D5C);
    border: solid 1px;
    border-color: var(--logo-color, #003D5C);
    height: fit-content;
    border-radius: 50px;
  }
}
.detail-compare:hover {
  cursor: pointer;
}

@media print, (min-width: 992px) { /* for lg */
  /* grid setting */
  .detail-grid {
    grid-template-areas: "breadcrumb breadcrumb compare" "visual data-1 data-1" "visual data-2 data-2" "visual data-3 data-3" "visual data-4 data-4";
    grid-template-columns: clamp(210px, 50% - 72px - 9px, 540px) 1fr auto;
    grid-template-rows: auto auto auto auto auto;
    column-gap: 72px;
  }
  .visual-container {
    grid-area: visual;
    grid-row: span 4;
  }
  .detail-meta-group {
    grid-area: data-1;
  }
  .colors-information {
    grid-area: data-2;
  }
  .select-size-container {
    grid-area: data-3;
  }
  .cart-in-container {
    grid-area: data-4;
  }
  /* /grid setting */
  .visual-container .prev-button,
  .visual-container .next-button {
    display: none;
  }
  .detail-grid .kv-controller .kv-list {
    margin: 0;
  }
  .kv-pager {
    gap: 0.625rem;
  }
  .kv-pager .btn {
    display: none;
  }
  .kv-pager .pager-list {
    gap: 0.75rem;
    margin: -1px;
    padding: 1px;
  }
  .kv-pager .pager-item {
    width: 80px;
    height: 80px;
    display: grid;
    place-items: center;
  }
  .kv-pager .pager-item:focus-visible,
  .colors-list .colors-item:focus-visible {
    outline-offset: -1px;
  }
  .pager-item .pager-img {
    box-sizing: content-box;
  }
  .pager-item.active:not(.thumb-360) .pager-img,
  .pager-item.thumb-360.active {
    border: var(--logo-color, #003D5C) solid 2px;
  }
  .pager-item:not(.thumb-360) .pager-img {
    border: var(--gray-color, #ccc) solid 1px;
  }
  .pager-item.thumb-movie {
    display: grid;
    grid-template-areas: "one";
    place-items: center;
  }
  .pager-item.thumb-movie:has(.icon-movie)::after {
    grid-area: one;
    background-color: var(--color-text, #222);
    content: "";
    display: block;
    width: 78px;
    height: 78px;
    opacity: 0.2;
  }
  .pager-item.thumb-movie:not(:has(.icon-movie))::before {
    grid-area: one;
    border: var(--gray-color, #ccc) solid 1px;
    content: "";
    display: block;
    width: 78px;
    height: 78px;
    opacity: 1;
  }
  .pager-item.thumb-movie:not(:has(.icon-movie))::after {
    grid-area: one;
    content: "";
    display: block;
    width: 80px;
    height: 80px;
  }
  .pager-item.thumb-movie.active:not(:has(.icon-movie))::after {
    border: var(--logo-color, #003D5C) solid 2px;
  }
  .pager-item.thumb-movie:not(:has(.icon-movie)) .pager-img {
    border: none !important;
    width: 44px;
    height: 44px;
    filter: brightness(0.45);
  }
  .pager-item.thumb-movie .pager-img {
    grid-area: one;
  }
  .pager-item.thumb-movie .icon-movie {
    grid-area: one;
    position: relative;
    z-index: 1;
  }
  .pager-item.thumb-360 {
    background-color: var(--gray-dark-color, #999);
    display: grid;
    place-items: center;
    width: 78px;
    height: 78px;
  }
  .select-size-container .btn-outline {
    height: auto;
    padding: 0.5rem 1.75rem;
    font-size: 0.875rem;
  }
  .select-quantity .form-control {
    min-width: 5rem;
    padding: 0.5rem 2.25rem 0.5rem 1.375rem;
    font-size: 1.125rem;
  }
  .select-quantity .select-label + .form-control {
    margin-left: 1.25rem;
  }
  .delivery-price .row {
    gap: 1.4rem;
    margin-bottom: 1.125rem;
    padding-bottom: 1.5rem;
  }
  .delivery-price .delivery-info {
    flex: 1 1 auto;
  }
  .delivery-price .price-info {
    white-space: nowrap;
  }
  .modal-dialog .delivery-price .price-info {
    white-space: normal;
  }
  .modal-content .table-head .price-info {
    margin-right: 0;
  }
  .article-group {
    margin-top: 4.5rem;
  }
  .article-title.accordion-head {
    margin-bottom: 2rem;
    font-size: 2.25rem;
  }
  .accordion-body .article-row + .article-row {
    margin-top: 64px;
  }
  .cta-buttons .btn-more {
    width: 255px;
    height: 70px;
  }
  .delivery-price .table-head.delivery-head.delivery-head-quick::after {
    width: calc(var(--operation_ele_width) - 20px);
  }
}
/* - page-products - compare
---------------------------------------------------- */
section.compare {
  padding: 0;
  overflow-x: hidden;
  overflow-y: visible;
}
@media print, (min-width: 992px) {
  section.compare {
    padding: 0 36px;
  }
}

.compare .nav-pager {
  height: 26px;
}

.compare .nav-pager-button {
  pointer-events: none;
}

.compare .nav-pager-button:nth-last-child(1 of :not(.is-close)) {
  display: none;
}

.compare-slider {
  max-width: 1200px;
}
@media screen and (max-width: 991.98px) {
  .compare-slider { /* for sm */
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
}
@media print, (min-width: 992px) {
  .compare-slider {
    margin-left: auto;
    margin-right: auto;
    padding-left: 50px;
    padding-right: 50px;
  }
}

.compare-slider > .btn.over-scroll.fixed-end,
.compare-slider .products-item-name.over-scroll.fixed-end {
  opacity: 0;
  z-index: -1;
  transform: translateY(-100%);
}

.compare-slider > .btn.over-scroll:disabled {
  opacity: 0;
  z-index: -1;
}

.compare .product-features .article-li {
  list-style: initial;
  margin-left: 20px;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .compare-slider > .btn.prev-button {
    left: 20px;
  }
  .compare-slider > .btn.next-button {
    right: 20px;
  }
  .slider-controller.compare-slider > .btn {
    display: none;
  }
  .compare-slider > .btn.over-scroll {
    position: fixed;
    top: 200px;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.1s ease-in-out, transform 0.25s ease-in-out;
  }
  .compare-slider .products-item-name.over-scroll {
    background-color: #fff;
    position: fixed;
    top: 90px;
    width: calc((100vw - 20px) / 2.5 - 7.5px);
    border-top: #fff solid 14px;
    padding-bottom: 0;
    box-sizing: content-box;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.1s ease-in-out, transform 0.25s ease-in-out;
  }
  .compare-slider .products-item-name.over-scroll + .row-line {
    margin-top: 68px;
  }
}
@media print, (min-width: 992px) {
  .compare-slider > .btn.over-scroll {
    position: fixed;
    top: 395px;
    opacity: 1;
    transition: width 0.12s ease, height 0.12s ease, opacity 0.1s ease-in-out, transform 0.25s ease-in-out;
  }
  .compare-slider > .prev-button.over-scroll {
    left: 50%;
    translate: calc(-600px - 50%) -50%;
  }
}
@media print, print and (max-width: 1200px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1200px) {
  .compare-slider > .prev-button.over-scroll {
    left: 0;
    translate: 0 -50%;
  }
}
@media print, (min-width: 992px) {
  .compare-slider > .next-button.over-scroll {
    right: 50%;
    translate: calc(600px + 50%) -50%;
  }
}
@media print, print and (max-width: 1200px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1200px) {
  .compare-slider > .next-button.over-scroll {
    right: 0;
    translate: 0 -50%;
  }
}
@media screen and (max-width: 991.98px) {
  .compare-slider .controller-track { /* for sm */
    /*transform: translate(-380px, 0);*/
  }
}
@media print, (min-width: 992px) {
  .compare-slider .controller-track {
    /*transform: translate(-380px, 0);*/
  }
}

.compare-list {
  --show-compare-rows-repeat-lg: 19;
  --show-compare-rows-repeat-sm: 18;
  grid-auto-flow: column;
}
@media screen and (max-width: 991.98px) {
  .compare-list { /* for sm */
    grid-template-columns: repeat(99, calc((100vw - 20px) / 2.5 - 7.5px));
    column-gap: calc(1rem - 1px);
  }
}
@media print, (min-width: 992px) {
  .compare-list {
    grid-template-columns: repeat(99, 340px);
    column-gap: 40px;
  }
}

.compare-list .products-item {
  margin-bottom: 0;
}
@media print, (min-width: 992px) {
  .compare-list .products-item {
    flex: 0 0 340px;
    margin-bottom: 1rem;
  }
}

/* + .js-item-delete */
.products-item.is-close,
.nav-pager-button.is-close {
  background-color: var(--accent-color, #E2E0D7);
  opacity: 0;
  z-index: -1;
  transition: opacity 0.2s ease-in-out;
  animation: display-flex-none 0.5s ease-out forwards;
}

.compare .products-item.is-close {
  animation: display-inline-none 0.5s ease-out forwards;
}

.js-item-delete-all {
  opacity: 1;
}

.js-item-delete-all.off-animation,
.compare .nav-pager.off-animation,
.related-items.off-animation {
  opacity: 0;
  z-index: -1;
  transition: opacity 0.2s ease-in-out;
  animation: off 0.5s ease-out forwards;
  pointer-events: none;
}

.compare-list .move-btn,
.compare-list .remove-btn {
  background-color: transparent;
  border: none;
  padding: 4px;
}

.compare-list .move-btn:hover {
  cursor: move;
}

@media screen and (max-width: 991.98px) {
  .compare-list .move-btn,
  .compare-list .move-btn .event-none { /* for sm */
    user-select: none;
  }
}

.compare-list .remove-btn:hover {
  cursor: pointer;
}

.compare-list .item-figure {
  display: block;
}

.compare-list .item-img {
  border: var(--gray-color) solid 1px;
}

@media screen and (max-width: 991.98px) {
  .compare-list .colors-item { /* for sm */
    flex-shrink: 0;
    width: 36px;
  }
}

.compare-list .products-item-price {
  background-color: var(--gray-light-color, #F8F9FE);
}
@media screen and (max-width: 991.98px) {
  .compare-list .products-item-price { /* for sm */
    row-gap: 0.375rem;
    padding: 0.5rem 0.625rem;
    font-size: calc(0.625rem + 1px);
    border-radius: 5px;
  }
}
@media print, (min-width: 992px) {
  .compare-list .products-item-price {
    row-gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-radius: 10px;
  }
}

@media print, (min-width: 992px) {
  .compare-list .products-item-price .primary-price {
    max-height: 1.75rem;
    font-size: 1.25rem;
  }
}

.row-line {
  min-height: auto;
  margin-bottom: 1.125rem;
  padding-bottom: 1.125rem;
  font-size: 0.875rem;
}

.compare-list .row-line.border-none {
  padding-bottom: 0;
}

@media screen and (max-width: 991.98px) {
  .row-line.flex- { /* for sm */
    display: block;
  }
}

.row-label {
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
}
@media screen and (max-width: 991.98px) {
  .row-label { /* for sm */
    padding-bottom: 0.25rem;
  }
}

@media print, (min-width: 992px) {
  .row-line.flex- .row-label {
    width: 50%;
    padding-right: 0.75rem;
    padding-bottom: 0;
  }
}

.row-line.flex- .row-detail {
  word-break: break-all;
}
@media print, (min-width: 992px) {
  .row-line.flex- .row-detail {
    width: 50%;
    padding-left: 0.75rem;
  }
}

@media print, (min-width: 992px) {
  .row-line .products-item-price {
    font-size: 1rem;
  }
}

.products-item-price .delivery-from {
  grid-column: span 2/span 2;
  padding-bottom: 0.125rem;
  font-size: 0.875rem;
}

.list-style .li {
  display: flex;
  line-height: 1.75;
}
@media screen and (max-width: 991.98px) {
  .list-style .li { /* for sm */
    padding-top: calc(0.25rem - 1px);
    padding-bottom: calc(0.25rem - 1px);
  }
}

.list-style .li::before {
  background-color: var(--text-color, #222);
  content: "";
  display: block;
  flex: 0 0 2px;
  width: 2px;
  height: 2px;
  margin-top: calc(0.5em + 0.125rem);
  margin-right: 3px;
  border-radius: 1rem;
}

/* START - 240624 slider update - */
.compare-slider .controller-track {
  overflow-x: auto;
  overflow-y: hidden;
  transform: translateX(0px) !important;
}
@media screen and (max-width: 991.98px) {
  .compare-slider .controller-track { /* for sm */ }
}
@media print, (min-width: 992px) {
  .compare-slider .controller-track {
    max-width: 100vw;
    padding-left: max((100vw - 1100px) / 2, 36px);
    padding-right: max((100vw - 1100px) / 2, 36px);
  }
}

@media print, (min-width: 992px) {
  .is-y-scrollbar-visible .compare-slider .controller-track {
    max-width: calc(100vw - 17px);
    padding-left: max((100vw - 17px - 1100px) / 2, 36px);
    padding-right: max((100vw - 17px - 1100px) / 2, 36px);
  }
}

.compare-slider .compare-list {
  display: table;
  white-space: nowrap;
}
@media screen and (max-width: 991.98px) {
  .compare-slider .compare-list { /* for sm */
    margin-left: 0;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .compare-list:has(.products-item:not(.is-close) ~ .products-item:not(.is-close) ~ .products-item:not(.is-close)) { /* for sm */
    padding-right: calc((100vw - 20px) / 5 - 1rem + 1px);
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item { /* for sm */
    display: inline-block;
    vertical-align: top;
    white-space: normal;
    width: calc((100vw - 20px) / 2.5 - 8px + 1rem - 1px);
    padding-right: calc(1rem - 1px);
  }
}
@media print, (min-width: 992px) {
  .compare-slider .products-item {
    display: inline-block;
    vertical-align: top;
    white-space: normal;
    width: 340px;
    margin-right: 40px;
    padding-top: 0.125rem;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item:nth-last-child(1 of .is-close) { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px);
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item.is-close { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px + 1rem - 1px) !important;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item:nth-last-child(1 of :not(.is-close)) { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px + 1rem - 1px);
  }
}
@media print, (min-width: 992px) {
  .compare-slider .products-item:nth-last-child(1 of :not(.is-close)) {
    margin-right: 0;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item:nth-last-child(1 of :not(.is-close)):nth-child(1 of :not(.is-close)) { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px);
    padding-right: 0;
  }
}

.products-item.is-close.off {
  display: none;
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item:nth-child(2 of :not(.is-close)):nth-last-child(1 of :not(.is-close)),
  .compare-slider .products-item:nth-child(2 of :not(.is-close)):has(+ .sortable-drag) { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px);
    padding-right: 0;
  }
}

@media screen and (max-width: 991.98px) {
  .compare-slider .products-item > * { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px);
    user-select: none;
  }
}

/* /END - 240624 slider update - */
/* Sortable - fallback ドラッグ中のアイテムのスタイル */
@media screen and (max-width: 991.98px) {
  .products-item.sortable-fallback { /* for sm */
    width: calc((100vw - 20px) / 2.5 - 8px + 1rem - 1px);
    padding-right: calc(1rem - 1px);
    list-style: none;
  }
}

.products-item.sortable-fallback .move-btn,
.products-item.sortable-fallback .remove-btn {
  background-color: transparent;
  border: none;
  padding: 4px;
}

.products-item.sortable-fallback .item-figure {
  display: block;
}

/* /Sortable - fallback */
/* - page-cart
---------------------------------------------------- */
@media screen and (max-width: 991.98px) {
  .page-cart .max-w1200 { /* for sm */
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

/* cart-flow */
.cart-flow::before {
  background-color: var(--gray-blue-color, #9BA4B8);
  content: "";
  position: absolute;
  top: 8px;
  display: block;
  width: 99%;
  height: 2px;
  z-index: -1;
}

.cart-flow-item {
  background-color: #fff;
  border: var(--color-logo, #003D5C) solid 2px;
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  color: var(--color-logo, #003D5C);
  border-radius: 100vmax;
}

.cart-flow-item.active {
  background-color: var(--color-logo, #003D5C);
  position: relative;
}

.active ~ .cart-flow-item {
  background-color: var(--gray-light-color, #F8F9FE);
  border-color: var(--gray-blue-color, #9BA4B8);
}

.cart-payment-flow-item.active ~ .icon-arw-next {
  opacity: 0.4;
  filter: grayscale(100%);
}

.cart-flow-label {
  letter-spacing: -0.1px;
  /*white-space: nowrap;*/
}

@media screen and (max-width: 991.98px) { /* for sm */
  .cart-flow {
    margin-left: -1rem;
    margin-right: -1rem;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 2.25rem;
    width: 90%;
  }
  .cart-flow-item.active {
    background-color: var(--color-logo, #003D5C);
    position: relative;
    font-weight: 600;
  }
  .cart-flow-label {
    display: inline-block;
    position: absolute;
    width: 19vw;
    text-align: center;
    line-height: 1.15;
    white-space: normal;
    translate: 0 1.75rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .cart-flow-item {
    background-color: #fff;
    border-width: 4px;
    width: 160px;
    height: 160px;
    padding: 0.5rem;
    flex: 1 1 auto;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    min-width: 164px;
    max-width: min(17.5vw, 7.25em);
  }
  .cart-flow::before {
    top: 50%;
    height: 4px;
  }
  .cart-flow-item.active {
    color: #fff;
  }
  .cart-flow-label {
    font-size: clamp(20px, 1em, 1.25rem);
    display: grid;
    place-items: center;
  }
  .cart-flow-label > .use-multilingual_caption {
    width: max-content;
  }
}
/* cart-item */
@media print, (min-width: 992px) {
  .cart-shipping-items { /* for lg */
    gap: 60px;
  }
}

.order-history-container .cart-shipping-items {
  width: 100%;
}
@media print, (min-width: 992px) {
  .order-history-container .cart-shipping-items { /* for lg */
    display: grid;
    grid-template-columns: 55% 95%;
  }
}

.order-history-container .cart-shipping-items .delivery_address {
  width: calc(100% - 120px - 20px);
  position: relative;
  justify-self: right;
}
@media print, (min-width: 992px) {
  .order-history-container .cart-shipping-items .delivery_address { /* for lg */
    width: calc(100% - 200px - 40px);
  }
}

@media print, (min-width: 992px) {
  .cart-shipping-info.col-5 { /* for lg */
    gap: 40px;
  }
}

.cart-item {
  gap: 20px;
}
@media print, (min-width: 992px) {
  .cart-item { /* for lg */
    gap: 40px;
  }
}

.cart-item + .cart-item {
  border-top: var(--gray-color) solid 1px;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
}
@media print, (min-width: 992px) {
  .cart-item + .cart-item { /* for lg */
    margin-top: 2.5rem;
    padding-top: 2.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .cart-item-visual { /* for sm */
    width: 120px;
  }
}
@media print, (min-width: 992px) {
  .cart-item-visual { /* for lg */
    width: 200px;
  }
}

.cart-item-img {
  border: var(--gray-color) solid 1px;
  border-radius: 10px;
}

.cart-item-control {
  column-gap: 0.875rem;
  row-gap: 0.625rem;
}

.cart-item-remove-button,
.cart-item-later-button {
  background-color: transparent;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 2px 1px;
  font-size: 0.875rem;
  color: var(--color-logo, #003D5C);
  letter-spacing: -0.1px;
  white-space: nowrap;
}
.cart-item-remove-button:hover,
.cart-item-later-button:hover {
  cursor: pointer;
}

@media screen and (max-width: 991.98px) {
  .cart-item-remove-button .icon-remove,
  .cart-item-later-button .icon-favorite { /* for sm */
    width: 24px;
    height: 17px;
    padding-right: 4px;
  }
}

.cart-item-later-button .icon-favorite {
  translate: 1px 0;
}

.cart-item-later-button.active .icon-favorite {
  background: url(../img/icon/favorite-icon-fill.svg) no-repeat left center/contain;
}

.cart-item-detail {
  flex: 1 1 auto;
}
@media screen and (max-width: 991.98px) {
  .cart-item-detail { /* for sm */
    max-width: calc(100% - 120px - 20px);
  }
}
@media print, (min-width: 992px) {
  .cart-item-detail { /* for lg */
    width: calc(100% - 200px - 40px);
  }
}

.modal .cart-item-detail {
  width: auto;
  max-width: none;
}

@media screen and (max-width: 991.98px) {
  .select-quantity select.form-control { /* for sm */
    background-position: right 0.25rem center;
    min-width: 3.5rem;
    height: 32px;
    padding: 0.25rem 1.5rem 0.25rem 0.75rem;
  }
}

.gift-options {
  background-color: var(--gray-light-color, #F8F9FE);
  padding: 0.75rem 0.875rem;
  border-radius: 10px;
}
@media print, (min-width: 992px) {
  .gift-options { /* for lg */
    padding: 1rem 1.25rem;
  }
}

.gift-options dt,
.gift-options dd {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.gift-options dt {
  font-weight: 500;
}
@media screen and (max-width: 991.98px) {
  .gift-options dt { /* for sm */
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
  }
}

.info-bordered {
  border: var(--gray-color, #ccc) solid 1px;
  border-top: var(--logo-color, #003D5C) solid 7px;
}

.info-bordered .row:not(:first-of-type) {
  border-top: var(--gray-color, #ccc) solid 1px;
}

.info-bordered-dt,
.info-bordered-dd {
  padding: 0.5rem 1.125rem;
}
@media print, (min-width: 992px) {
  .info-bordered-dt,
  .info-bordered-dd { /* for lg */
    padding: 0.625rem 2rem;
  }
}

.info-bordered-dt + .info-bordered-dd {
  white-space: nowrap;
}

.info-bordered .row.flex- > .info-bordered-dd {
  padding-left: 0;
}

.info-bordered .sub {
  padding-top: 0.5rem;
  font-size: calc(1em - 2px);
}

.page-cart .cta-block {
  gap: 30px;
}
@media print, (min-width: 992px) {
  .page-cart .cta-block { /* for lg */
    gap: 60px;
  }
}

.is-gift-options {
  height: 60px;
  padding: 0.75rem 1.75rem;
}

.page-cart .cta-block .btn {
  height: 60px;
}
@media print, (min-width: 992px) {
  .page-cart .cta-block .btn { /* for lg */
    height: 80px;
  }
}

.cart-shipping-items + .box-title {
  margin-top: 40px;
}
@media print, (min-width: 992px) {
  .cart-shipping-items + .box-title { /* for lg */
    margin-top: 80px;
  }
}

@media print, (min-width: 992px) {
  .modal.cart-option .layout-l-lg { /* for lg */
    width: calc(100% - 200px - 3rem);
  }
}

.check-on-trigger:not(:checked) + .gift-massage-checkbox-label {
  margin-bottom: 0;
}

.check-on-trigger:not(:checked) ~ .check-on-content {
  display: none;
}

@media print, (min-width: 992px) {
  .gift-massage-figure { /* for lg */
    width: 240px;
    flex-shrink: 0;
  }
}

@media print, (min-width: 992px) {
  .gift-massage-write { /* for lg */
    width: calc(100% - 240px);
  }
}

.gift-massage-write .textarea-label {
  flex-grow: 0;
  flex-shrink: 0;
}

.gift-massage-write .textarea {
  flex-grow: 0;
  flex-shrink: 1;
  height: auto;
}

@media print, (min-width: 992px) {
  .gift-massage-group + .box-title { /* for lg */
    margin-top: 4rem;
  }
}

/* cart-address */
.cart-address {
  gap: 1.25rem;
}
@media print, (min-width: 992px) {
  .cart-address { /* for lg */
    gap: 1.5rem;
  }
}

.cart-address-box {
  border: var(--color-logo, #003D5C) solid 2px;
  width: 100%;
  padding: 24px 30px 20px;
  border-radius: 10px;
}
@media print, (min-width: 992px) {
  .cart-address-box { /* for lg */
    width: 50%;
    padding: 36px 40px 32px;
  }
}

.cart-address-head {
  flex-shrink: 0;
}

.cart-address-body {
  height: 100%;
}

.cart-address-letter {
  margin-bottom: auto;
}

@media screen and (max-width: 991.98px) {
  .cart-address-body .btn { /* for sm */
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.cart-address-newsletter .newsletter-icon {
  margin-left: -0.5rem;
}

button.accordion-head {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  text-align: left;
}

.scrollbar-control .card-list-item:not(.not-use).checked {
  outline: currentColor none medium;
}

/* cart-payment */
@media print, (min-width: 992px) {
  .cart-payment-flow { /* for lg */
    margin-top: -3rem;
  }
}

.balloon {
  background-color: var(--gray-blue-light-color, #F8F9FE);
  padding: 1rem;
  border-radius: 10px;
}
@media print, (min-width: 992px) {
  .balloon { /* for lg */
    padding: 2rem 60px 48px;
  }
}

.balloon-bordered {
  border: var(--gray-blue-color, #9BA4B8) solid 2px;
}

.balloon-bordered.tail-on-top::before {
  background-color: var(--gray-blue-light-color, #F8F9FE);
  border-top: var(--gray-blue-color, #9BA4B8) solid 2px;
  border-right: var(--gray-blue-color, #9BA4B8) solid 2px;
  content: "";
  position: absolute;
  top: -15px;
  left: 66.6%;
  left: calc(75vw - 60px);
  width: 30px;
  height: 30px;
  transform: scaleX(0.8) rotate(-45deg);
}
@media print, (min-width: 992px) {
  .balloon-bordered.tail-on-top::before { /* for lg */
    top: -20px;
    left: 70.6%;
    width: 40px;
    height: 40px;
  }
}

.is-y-scrollbar-visible .balloon-bordered.tail-on-top::before {
  left: calc(75vw - 60px - 12px);
}
@media print, (min-width: 992px) {
  .is-y-scrollbar-visible .balloon-bordered.tail-on-top::before { /* for lg */
    left: calc(70.6% - 12px);
  }
}

.cart-payment-flow-list {
  gap: 7px;
}
@media print, (min-width: 992px) {
  .cart-payment-flow-list { /* for lg */
    gap: 20px;
  }
}

.cart-payment-flow-item {
  background-color: var(--gray-pure-color, #707070);
  width: calc(33.3333% - 14px);
  padding: 0.75rem 0.25rem;
  color: #fff;
  border-radius: 10px;
}
@media screen and (max-width: 359px) {
  .cart-payment-flow-item .fz-13px-sm {
    font-size: 0.75rem;
  }
}
@media print, (min-width: 992px) {
  .cart-payment-flow-item { /* for lg */
    width: calc(33.3333% - 25px);
    padding: 1.75rem 1.5rem 2rem;
  }
}

@media screen and (max-width: 991.98px) {
  .cart-payment-flow-list .icon-arw-next { /* for sm */
    width: 6px;
    align-self: center;
  }
}

.cart-payment-flow-item {
  background-color: #fff;
  border-color: var(--color-logo, #003D5C);
  border: var(--color-logo, #003D5C) solid 2px;
  color: var(--color-logo, #003D5C);
}
@media print, (min-width: 992px) {
  .cart-payment-flow-item { /* for lg */
    border-width: 4px;
  }
}

.cart-payment-flow-item.active ~ .cart-payment-flow-item {
  background-color: var(--gray-light-color, #F8F9FE);
  border-color: var(--gray-blue-color, #9BA4B8);
}

.cart-payment-flow-item.active {
  font-weight: 600;
  opacity: 1;
  color: #FFF;
  background-color: var(--color-logo, #003D5C);
}

.cart-payment-flow-item.active .status {
  color: #FFF;
}

.cart-payment-flow-item .status {
  color: var(--color-logo, #003D5C);
}

@media print, (min-width: 668px) {
  .balloon.ctrl-step-item-2 { /* for lg */
    width: 66.6666%;
    margin-left: auto;
    margin-right: auto;
  }
}

.balloon.ctrl-step-item-2 .cart-payment-flow-item {
  width: calc(50% - 25px);
}

.cart-item-head + .cart-item {
  margin-top: 1.5rem;
}

@media print, (min-width: 992px) {
  .cart-order-number { /* for lg */
    margin-top: -0.25rem;
  }
}

.cart-item + .cart-item-head,
.cart-order-number + .cart-item-head {
  border-top: var(--gray-color) solid 1px;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
}
@media print, (min-width: 992px) {
  .cart-item + .cart-item-head,
  .cart-order-number + .cart-item-head { /* for lg */
    margin-top: 2.5rem;
    padding-top: 2.25rem;
  }
}

.cart-order-number + .cart-item-head {
  margin-top: 1rem;
}
@media print, (min-width: 992px) {
  .cart-order-number + .cart-item-head { /* for lg */
    margin-top: 1.75rem;
  }
}

.paying-points {
  padding-bottom: 1rem;
}
@media print, (min-width: 992px) {
  .paying-points { /* for lg */
    gap: 3.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

@media screen and (max-width: 991.98px) {
  .card-list-set .w-380px-lg { /* for sm */
    width: 100%;
  }
}
@media print, (min-width: 992px) {
  .card-list-set .w-380px-lg { /* for lg */
    max-width: calc(33.3333% - 21px);
  }
}

.card-list-item {
  background-color: #fff;
  border: var(--color-logo, #003D5C) solid 1px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: 144px;
  padding: 20px 20px 15px;
}
@media print, (min-width: 992px) {
  .card-list-item { /* for lg */
    border-width: 2px;
    width: 380px;
    max-width: 100%;
    min-height: 240px;
    padding: 1.875rem;
  }
}

@media screen and (max-width: 991.98px) {
  .card-list-item.single { /* for sm */
    min-width: 220px;
  }
}

@media screen and (max-width: 991.98px) {
  .card-list-item .icon-remove { /* for sm */
    width: 18px;
    height: 21px;
  }
}

.cta-block .btn.h-100px-lg {
  font-size: 1rem;
}
@media print, (min-width: 992px) {
  .cta-block .btn.h-100px-lg { /* for lg */
    height: 100px;
    font-size: 1.125rem;
  }
}

@media print, (min-width: 992px) {
  label.not-use:hover { /* for lg */
    cursor: default;
  }
}

.front-form-group.-point .front-form-control {
  width: 12em;
  margin-right: 0.75rem;
  font-size: 1rem;
}
@media print, (min-width: 992px) {
  .front-form-group.-point .front-form-control { /* for lg */
    font-size: 1.125rem;
  }
}

.js-radio-accordion .radio-label-group .radio-accordion-content {
  display: none;
}

.js-radio-accordion .radio-label-group.is-active .radio-accordion-content {
  display: block;
}

.security-code-grid {
  margin-top: 1.25rem;
}
@media print, (min-width: 992px) {
  .security-code-grid { /* for lg */
    grid-template-areas: "date date info" "name name info" "register register info" ". . info";
    margin-top: 1.875rem;
  }
}

@media print, (min-width: 992px) { /* for lg */
  .grid-date {
    grid-area: date;
  }
  .grid-info {
    grid-area: info;
  }
  .grid-register {
    grid-area: register;
  }
}
.js-accordion.is-open .box-absolute-guide {
  max-height: 0;
  transform: scaleY(0);
  transform-origin: top center;
  overflow: hidden;
  transition: transform 0.12s ease, max-height 0.12s ease;
}

@media print, (min-width: 992px) {
  .modal-dialog .box-absolute-guide.col-6 { /* for lg */
    width: calc(100vw - 28rem - 4rem - 2rem - 200px - 2.5rem - 28px);
    max-width: 50%;
  }
}
@media print, print and (max-width: 1024px), print and (min-width: 992px), (min-width: 992px) and (max-width: 1024px) {
  .modal-dialog .box-absolute-guide.col-6 {
    width: calc(100vw - 28rem - 4rem - 2rem - 200px - 2.5rem - 28px + 4rem);
    font-size: calc(1em - 1px);
  }
}

.js-accordion.is-open > .box-absolute-guide,
.security-code-grid.js-accordion.is-open .box-absolute-guide {
  overflow: visible;
  transform: scaleY(1);
  max-height: 260em;
}

.btn-q.accordion-head {
  padding: 0;
  text-align: center;
  font-size: 1.25rem;
}

@media print, (min-width: 992px) { /* for lg */
  .box-absolute-guide {
    left: 28rem;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .box-absolute-guide .image_cvn {
    width: 375px;
    height: auto;
  }
}
/* montbell-stores */
@media screen and (max-width: 991.98px) {
  .stores-area ~ .stores-area.box-title { /* for sm */
    margin-top: 40px;
  }
}
@media print, (min-width: 992px) {
  .stores-area ~ .stores-area.box-title { /* for lg */
    margin-top: 60px;
  }
}

@media screen and (max-width: 991.98px) {
  .stores-area ~ .row.border-bottom { /* for sm */
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
@media print, (min-width: 992px) {
  .stores-area ~ .row.border-bottom { /* for lg */
    margin-bottom: 1.5rem;
    padding-bottom: 2rem;
  }
}

@media screen and (max-width: 991.98px) {
  .stores-area ~ .row.border-bottom + .row.border-bottom { /* for sm */
    margin-top: 2rem;
  }
}
@media print, (min-width: 992px) {
  .stores-area ~ .row.border-bottom + .row.border-bottom { /* for lg */
    margin-top: 2rem;
  }
}

.stores-area ~ .row.border-bottom:last-child,
.stores-area ~ .row.border-bottom:has(+ [id]),
.row.border-bottom:has(+ .stores-area) {
  border-bottom: none;
  padding-bottom: 0;
}

.stores-list {
  grid-template-columns: auto 1fr;
  gap: 5px 10px;
}

.stores-list dd {
  text-indent: -10px;
  padding-left: 10px;
}

.stores-list dd::before {
  content: ": ";
  margin-right: 5px;
}

@media print, (min-width: 992px) { /* for lg */
  .store-more .btn {
    width: 100%;
  }
  .japan-store-list {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 0 2.5rem;
    margin-left: 3em;
    height: 280px;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .store-more .btn {
    width: 240px;
    height: 60px;
  }
  .japan-store-list {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px 15px;
  }
}
/* montbell-stores - detail */
.general-html .gp-container {
  width: 100%;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .store-detail.detail-grid {
    padding-left: 0;
    padding-right: 0;
  }
}
@media print, (min-width: 992px) { /* for lg */
  /* grid setting */
  .store-detail.detail-grid {
    grid-template-areas: "visual data-1" "visual data-2";
    grid-template-columns: clamp(210px, 50% - 72px - 9px, 540px) 1fr;
    grid-template-rows: auto auto;
    column-gap: 72px;
  }
  .grid-area-data-2 {
    grid-area: data-2;
  }
}
/* modal-sizing-chart */
.sizing-explanation-list dd {
  min-height: 1.5em;
  padding-left: 5.5em;
}

.tab-group.-sizingchart .tab-item {
  padding: 0.5rem;
  width: 80px;
  height: auto;
  font-size: 1rem;
  cursor: pointer;
}

.tab-group.-sizingchart .tab-list {
  border: none;
}

.tab-group.-sizingchart .tab-item.active {
  background-color: var(--color-logo, #003D5C);
  color: #FFF;
  transition: all 0.2s ease-out;
}

.tab-group.-sizingchart .tab-item:not(.active) {
  color: var(--color-logo, #003D5C);
}

.table-chart {
  width: 100%;
  border-collapse: collapse;
  overflow-x: auto;
  overflow-y: visible;
}

.table-chart th {
  padding: 0.4rem 0.6rem;
  width: 10%;
  white-space: nowrap;
}

.table-chart th:first-child {
  width: 15%;
}

.table-chart td {
  padding: 0.6rem;
  border-bottom: var(--gray-color) solid 1px;
  white-space: nowrap;
}

.table-chart.-sizing th {
  width: 10%;
}

.sticky-cell-left {
  background-color: #fff;
  position: sticky;
  left: 0;
}

.table-chart .sticky-cell-left.bg-color-logo {
  background-color: var(--color-logo, #003D5C);
}

@media print, (min-width: 992px) { /* for lg */
  .table-chart th:first-child {
    width: 15%;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .table-chart th {
    padding: 0.4rem;
  }
  .table-chart td {
    padding: 0.6rem 0.4rem;
  }
  .tab-group.-sizingchart .tab-item {
    width: 65px;
    padding: 0.4rem 0.5rem;
    font-size: 14px;
  }
}
/* news release */
section.news-release {
  padding-bottom: 0;
}

@media screen and (max-width: 991.98px) {
  .initiatives-list.-news-release { /* for sm */
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
}
@media print, (min-width: 992px) {
  .initiatives-list.-news-release {
    column-gap: 42px;
  }
}
@media print, print and (min-width: 1366px), print and (min-width: 992px), (min-width: 992px) and (min-width: 1366px) {
  .initiatives-list.-news-release {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.-news-release .initiatives-item {
  padding-left: 0;
  padding-right: 0;
}

.-news-release .initiatives-item > a.flex- {
  width: 100%;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  font-weight: 400;
  color: var(--text-color);
}

/* cart Gift Bag Option */
@media screen and (max-width: 991.98px) { /* for sm */
  .cart-item-visual.-gift {
    width: 70px;
  }
  .table.sm-table-cell td:not(.only-lg) {
    display: table-cell;
  }
  .table-th-control.-wrapping td {
    padding: 1rem;
  }
}
@media screen and (max-width: 991.98px) and (max-width: 359px) {
  .table-th-control.-wrapping td {
    padding: 0.75rem 0.5rem;
  }
}
@media screen and (max-width: 991.98px) {
  .select-quantity.-wrapping select.form-control {
    height: 28px;
  }
}
/* products-review */
.products-review-fig {
  max-width: 50%;
}

@media print, (min-width: 992px) {
  .review-item-img {
    max-width: 280px;
  }
}

/* modal-about-price */
#modal-about-price h1.title_text {
  font-weight: 500;
  font-size: 2.2rem;
  margin-bottom: 0.2rem;
}
@media screen and (max-width: 991.98px) {
  #modal-about-price h1.title_text { /* for sm */
    font-size: 1.8rem;
  }
}

#modal-about-price h2.title_text {
  color: #fff;
  font-size: calc(1.5rem - 2px);
  font-weight: 500;
  background-color: var(--logo-color, #003D5C);
  border: var(--logo-color, #003D5C) solid 2px;
  border-radius: 2px;
  margin-block-end: 1.125rem;
  padding: calc(0.625rem - 2px) calc(0.75rem - 2px);
  text-align: center;
}

/* table */
/* table */
.table {
  background-color: #fff;
  border-collapse: collapse;
  display: table;
}

.thead th {
  white-space: nowrap;
}

tbody > tr > th {
  vertical-align: top;
  text-align: left;
}

.table.normal th {
  font-weight: 400;
}

/* table layout */
@media screen and (max-width: 991.98px) { /* for sm */
  .table-th-control thead {
    display: none;
  }
  .table-th-control tbody td[data-th-text] {
    display: flex;
  }
  .table-th-control td[data-th-text]::before {
    background-color: var(--gray-light-color, #F8F9FE);
    content: attr(data-th-text);
    display: grid;
    place-items: center;
    flex-grow: 0;
    flex-shrink: 0;
    width: 7rem;
    margin: -1.5rem 1.5rem -1.5rem -1.5rem;
    padding: 0.75rem;
    text-align: center;
  }
}
/* table padding */
.table-cell-padding th,
.table-cell-padding td {
  padding: 1em 1.5rem;
}

.table-cell-padding td {
  padding: 1.5rem;
}
@media print, (min-width: 992px) {
  .table-cell-padding td { /* for lg */
    padding: 1.875rem 1.5rem;
  }
}

/* table color */
.table > thead > tr > th,
.table > tbody > tr > .th {
  background-color: var(--gray-light-color, #F8F9FE);
}

@media screen and (max-width: 991.98px) { /* for sm */
  .table,
  .table > tbody,
  .table > thead > tr,
  .table > tbody > tr,
  .table th:not(.only-lg),
  .table td:not(.only-lg) {
    display: block;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .table {
    font-size: 1em;
  }
}
/* table-bordered */
.table-bordered th,
.table-bordered td {
  border-top: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.table-bordered > thead > tr > th {
  min-height: 60px;
}

.-cell-flex .th,
.-cell-flex .td {
  display: flex;
  align-items: center;
}

.-th-bg-color .th {
  background-color: #eaeaf3;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td {
    margin-bottom: -1px;
    font-size: 0.75rem;
  }
}
/* /table */
/* popup-dialog */
/* - cookie */
.popup-dialog:not(:has(.fade-dialog)) {
  border-color: var(--gray-color, #ccc);
  border-width: 3px;
  position: fixed;
  bottom: 0;
  max-width: 600px;
  margin: 0.5rem;
  padding: 1em;
  box-shadow: 0 1px 1rem rgba(0, 0, 0, 0.2);
  z-index: 3;
}
@media print, (min-width: 992px) {
  .popup-dialog:not(:has(.fade-dialog)) { /* for lg */
    margin: 0.5rem auto;
    padding: 1em 1.5rem;
  }
}

.popup-dialog .btn {
  display: block !important;
}

/* - delivery-notice */
/* ダイアログのデフォルトスタイルを必要に応じてリセット */
.popup-dialog {
  background-color: transparent;
  position: fixed;
  bottom: 0;
  border: none;
  padding: 0;
  z-index: 3;
}

.popup-dialog.cookie {
  background-color: #fff;
}

.dialog-content.fade-dialog {
  background-color: #fff;
  border: var(--gray-color, #ccc) solid 3px;
  max-width: 600px;
  margin: 0.5rem;
  padding: 1em 1.5rem;
  box-shadow: 0 1px 1rem rgba(0, 0, 0, 0.2);
}
@media print, (min-width: 992px) {
  .dialog-content.fade-dialog { /* for lg */
    margin: 0.5rem auto;
    padding: 1em 2.5rem;
  }
}

/* 初期状態：内側のコンテンツは透明で下寄り */
.dialog-content {
  opacity: 0;
  transform: translateY(100%);
}

/* visible クラス追加でフェードイン＋スライドアップ */
.dialog-content.visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/* ダイアログを閉じるときのアニメーション例 */
.dialog-content.fade-off {
  opacity: 0;
  transform: translateY(20%);
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* /popup-dialog */
/* SVG map - japan-map */
svg {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

svg a:hover {
  animation: none !important;
}

#japan-map .st0 {
  fill: none;
  stroke: #B3B3B3;
  stroke-width: 0.6263;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

#japan-map .st1 {
  fill: #8B5BA2;
}

#japan-map .st2 {
  fill: #1A1A1A;
}

#japan-map .st4 {
  font-size: 14.2548px;
}

#japan-map .st5 {
  fill: #EC6D45;
}

#japan-map .st6 {
  fill: #FFFFFF;
}

#japan-map .st7 {
  fill: #EA6D90;
}

#japan-map .st8 {
  fill: #F7B756;
}

#japan-map .st9 {
  fill: #FDD75C;
}

#japan-map .st10 {
  fill: #009245;
}

#japan-map .st11 {
  fill: #B5D469;
}

#japan-map .st12 {
  fill: #29B5B2;
}

#japan-map .st13 {
  fill: #31A3DD;
}

#japan-map .st14 {
  fill: #5A72B6;
}

/* /SVG map - japan-map */
/* toast のスタイル */
.toast {
  display: none;
  background-color: rgba(54, 54, 54, 0.93);
  position: fixed;
  padding: 10px;
  padding-left: 15px;
  color: #fff;
  border-radius: 5px;
  box-shadow: 0 2px 0.5rem rgba(0, 0, 0, 0.2);
  z-index: 999;
  opacity: 0;
  transition: opacity 0.4s; /* 透明度変化のアニメーション */
}
@media screen and (max-width: 991.98px) {
  .toast { /* for sm */
    top: 100px;
    left: 20px;
    width: 640px;
    max-width: 90vw;
  }
}
@media print, (min-width: 992px) {
  .toast { /* for lg */
    top: 144px;
    left: 50%;
    width: fit-content;
    max-width: 90vw;
    translate: -50% 0;
  }
}

.toast.show {
  display: flex;
  opacity: 1;
}

.close-button {
  padding: 1px 0.25rem;
  font-size: 1.25rem;
  cursor: pointer;
  opacity: 0;
}
@media screen and (max-width: 991.98px) {
  .close-button { /* for sm */
    margin-top: -1px;
    margin-left: auto;
    line-height: 1.125rem;
  }
}
@media print, (min-width: 992px) {
  .close-button { /* for lg */
    margin-left: 0.5em;
    line-height: 1.375rem;
  }
}

/* /toast のスタイル */
/* loading-spinner */
.loading-spinner {
  display: flex;
  place-content: center;
  opacity: 1;
}

.loading-spinner.show {
  display: flex;
  animation: opacity-0-to-1 0.3s ease-in-out forwards, display-none-to-flex 0.3s;
  opacity: 1;
}

.loading-spinner.hide {
  opacity: 0;
  animation: display-flex-to-none 0.3s 0.3s ease-in-out forwards, opacity-1-to-0 0.3s;
  transition: opacity 0.3s;
}

.loading-spinner .spinner {
  height: 60px;
  width: 60px;
  display: inline-block;
  animation: spin 0.9s steps(9, end) infinite;
}

.spinner i {
  height: 10px;
  width: 10px;
  margin-left: -5px;
  display: flex;
  transition: height 1s;
  position: absolute;
  left: 50%;
  transform-origin: center 30px;
  box-shadow: 0 0 3px rgba(255, 255, 255, 0.7);
}

.spinner i::before {
  background: #000;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 10px;
}

.spinner i:nth-child(1) {
  opacity: 0;
}

.spinner i:nth-child(1)::before {
  scale: 0.44;
}

.spinner i:nth-child(2) {
  transform: rotate(40deg);
  opacity: 0.125;
}

.spinner i:nth-child(2)::before {
  scale: 0.51;
}

.spinner i:nth-child(3) {
  transform: rotate(80deg);
  opacity: 0.25;
}

.spinner i:nth-child(3)::before {
  scale: 0.58;
}

.spinner i:nth-child(4) {
  transform: rotate(120deg);
  opacity: 0.375;
}

.spinner i:nth-child(4)::before {
  scale: 0.65;
}

.spinner i:nth-child(5) {
  transform: rotate(160deg);
  opacity: 0.5;
}

.spinner i:nth-child(5)::before {
  scale: 0.72;
}

.spinner i:nth-child(6) {
  transform: rotate(200deg);
  opacity: 0.625;
}

.spinner i:nth-child(6)::before {
  scale: 0.79;
}

.spinner i:nth-child(7) {
  transform: rotate(240deg);
  opacity: 0.75;
}

.spinner i:nth-child(7)::before {
  scale: 0.86;
}

.spinner i:nth-child(8) {
  transform: rotate(280deg);
  opacity: 0.875;
}

.spinner i:nth-child(8)::before {
  scale: 0.93;
}

.spinner i:nth-child(9) {
  transform: rotate(320deg);
  opacity: 1;
}

.spinner i:nth-child(9)::before {
  scale: 1;
}

/* /loading-spinner */
/*!
 * SASS  :  sass/fb-mypage.scss
 * Modified  :  *******
 */
/* mypage
---------------------------------------------------- */
/* my page */
.my-page {
  padding: 1.25rem 1.25rem 0;
}
@media print, (min-width: 992px) {
  .my-page { /* for lg */
    padding-top: 2.5rem;
  }
}

main:has(.my-page) {
  min-height: unset;
}

.box-member-information {
  border: var(--gray-blue-color, #9BA4B8) solid 2px;
  border-radius: 10px;
  overflow-wrap: break-word;
}

.box-member-information.-card {
  padding: 5.5rem 2rem 4.5rem;
  margin-bottom: 3.75rem;
}

.box-member-information .card-infomation {
  width: 1024px;
  max-width: 100%;
  padding-bottom: 1.875rem;
  gap: 2.5rem;
}

.card-infomation .myname-text {
  font-size: 2.25rem;
  color: var(--logo-color, #003D5C);
  margin-bottom: 1.875rem;
}

.card-infomation .card-infomation-list li + li {
  margin-top: 0.625rem;
}

.card-infomation .card-pic {
  width: 280px;
  height: auto;
}

.box-member-information .member-infomation-list {
  width: 1024px;
  max-width: 100%;
  margin: auto;
  grid-template-columns: auto 1fr;
  gap: 20px;
  border-top: var(--gray-blue-color, #9BA4B8) solid 1px;
}
@media screen and (max-width: 991.98px) {
  .box-member-information .member-infomation-list { /* for sm */
    grid-template-columns: 1fr auto;
  }
}

.member-infomation-list dd::before {
  content: ": ";
}

.box-member-information .box-title {
  font-size: 1.25rem;
  min-height: 80px;
  padding: 1.57rem;
  border-radius: 10px 10px 0 0;
  background-color: #F8F9FE;
}

.box-member-information .box-inner {
  padding: 2.5rem;
}

.box-member-information .menulink .mypage-link-label {
  color: #222222;
  font-size: 1.25rem;
  font-weight: normal;
  margin-left: 0.625rem;
}

.member-infomation-list .link-detail {
  background-color: var(--logo-color, #003D5C);
  width: 30px;
  height: 30px;
  font-size: 1rem;
  font-weight: normal;
  color: #fff;
  border-radius: 50%;
  margin-left: 1rem;
}

.box-member-information .menulink {
  row-gap: 20px;
}

.box-member-information .menulink .menuicon {
  flex-shrink: 0;
  width: 60px;
}

.box-member-information .menulink a {
  min-height: 60px;
}

@media print, (min-width: 992px) { /* for lg */
  .my-page .group-mypage-menu {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }
  .box-member-information .box-inner > dl {
    padding-bottom: 0.25rem;
  }
  .my-page .form-white-button {
    width: 300px;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .card-infomation .card-pic {
    width: 176px;
    height: auto;
    margin: auto auto 1.25rem;
  }
  .card-infomation .myname-text {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .box-member-information.-card {
    padding: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .box-member-information .card-infomation {
    width: 100%;
    padding-bottom: 1.25rem;
  }
  .box-member-information .box-inner {
    padding: 1.25rem;
  }
  .box-member-information .member-infomation-list {
    width: 100%;
    font-size: calc(0.875rem + 1px);
    row-gap: 15px;
    column-gap: 8px;
  }
  .box-member-information .box-inner > dl > dt {
    padding-bottom: 0.25rem;
  }
  .my-page .group-mypage-menu {
    grid-template-rows: auto;
    row-gap: 20px;
  }
  .box-member-information .menulink .mypage-link-label {
    font-size: 1rem;
  }
  .box-member-information .box-title {
    font-size: 1.125rem;
    padding: 1.125rem 0.875rem;
    min-height: 60px;
  }
  .box-member-information .menulink {
    row-gap: 10px;
  }
}
/* membership reference */
.membership-reference .box-inner {
  line-height: var(--line-height-base, 1.5);
}

.membership-reference .btn.edit {
  color: var(--logo-color, #003D5C);
}

.membership-reference .btn.edit:hover {
  color: #fff;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .membership-reference {
    font-size: calc(0.875rem + 1px);
  }
  .membership-reference .box-title {
    padding: 1.125rem 0;
    height: 60px;
  }
  .membership-reference .member-points {
    margin-left: auto;
    padding-left: 1.25rem;
  }
  .membership-reference .content-head {
    font-size: 1.125rem;
    margin-bottom: 20px;
    padding: 0.625rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .membership-reference .box-title {
    padding: 1.6875rem 3.75rem;
  }
  .membership-reference .box-inner {
    padding: 2.3rem 3.75rem;
  }
  .membership-reference dt {
    width: 300px;
  }
  .membership-reference dd {
    flex-grow: 1;
  }
  .membership-reference .fz-1rem-lg {
    font-size: 1rem;
  }
  .membership-reference .content-head {
    font-size: 1.5rem;
    margin-bottom: 40px;
    padding: 1.25rem;
  }
  .membership-reference .btn.edit {
    height: 50px;
    width: 160px;
  }
}
/* membership edit */
.membership-edit #edit-address1,
.membership-edit #edit-address2 {
  resize: vertical;
  padding: 1rem 1.25rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .membership-edit {
    font-size: 0.875rem;
  }
  .membership-edit .form-item {
    margin-top: 1rem;
  }
  .membership-edit #edit-address1,
  .membership-edit #edit-address2 {
    min-height: 100px;
    padding: 1rem 1.25rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .membership-edit #edit-address1,
  .membership-edit #edit-address2 {
    min-height: 60px;
  }
}
/* mypage-mail-change */
section.mypage-mail-change {
  padding-bottom: 2.5rem;
}

@media print, (min-width: 992px) { /* for lg */
  .mypage-mail-change .front-form-inner {
    margin-top: 3.75rem;
  }
}
/* mypage-shipping-address */
section.billing-address {
  background-color: #F8F9FE;
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding: 3.75rem 1.25rem;
}

.card-design-list .list-box {
  background-color: #fff;
  border: var(--gray-blue-color, #9BA4B8) solid 1px;
  padding: 1.875rem;
  width: 380px;
}
@media print, (min-width: 992px) {
  .card-design-list .list-box { /* for lg */
    max-width: calc((100vw - 100px) / 3);
  }
}

@media print, (min-width: 992px) { /* for lg */
  .card-design-list .w-380px-lg {
    max-width: calc((100vw - 100px) / 3);
  }
}
@media print, (min-width: 992px) {
  .is-y-scrollbar-visible .card-design-list .list-box,
  .is-y-scrollbar-visible .card-design-list .w-380px-lg { /* for lg */
    max-width: calc((100vw - 100px - 17px) / 3);
  }
}

.card-design-list {
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.875rem;
}

.billing-address .card-design-list dl {
  margin-bottom: 0;
}

.card-design-list dl,
.card-design-list dt {
  margin-bottom: 1.875rem;
}

.card-design-list dd {
  line-height: 1.8;
}

.card-design-list .icon-remove,
.card-design-list .icon-document {
  height: 21px;
  display: block;
  margin: auto;
}

.card-design-list .icon-document {
  margin-right: 0.625rem;
}

.card-design-list .list-setup,
.item-setup {
  border: var(--gray-blue-color, #9BA4B8) dashed 1px;
  padding: 0;
}

.card-design-list .list-box button,
.remove-button {
  background: none;
  padding: 5px;
  margin: -5px;
  border: none;
  color: var(--logo-color);
  cursor: pointer;
}

.card-design-list .list-setup button {
  width: 100%;
  height: 100%;
  padding: 1.875rem;
  border: none;
  background: none;
  border-radius: 10px;
}

.item-setup {
  background: none;
  border-radius: 10px;
  max-width: 100%;
}
@media screen and (max-width: 991.98px) {
  .item-setup { /* for sm */
    width: 100%;
    min-height: 177px;
    padding: 20px 17px 12px;
  }
}
@media print, (min-width: 992px) {
  .item-setup { /* for lg */
    width: 380px;
    min-height: 240px;
    padding: 1.875rem;
  }
}

.card-design-list .accordion-head {
  padding-bottom: 0;
}

.card-design-list .list-setup .icon-addcircle,
.item-setup .icon-addcircle {
  margin: auto auto 1.875rem;
}

@media print, (min-width: 992px) { /* for lg */
  .billing-address .card-design-list .list-box {
    min-height: 240px;
  }
  .card-design-list .list-box {
    min-height: 280px;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.billing-address {
    padding: 2.5rem;
  }
  .card-design-list {
    grid-template-columns: 1fr;
    row-gap: 1.25rem;
  }
  .card-design-list .list-box {
    width: 100%;
    min-height: 180px;
    padding: 1.25rem;
  }
  .card-design-list dd {
    font-size: 0.875rem;
  }
  .card-design-list dt {
    margin-bottom: 1.25rem;
  }
  .card-design-list .list-setup .icon-addcircle,
  .icon-addcircle .icon-addcircle {
    margin: auto auto 1.25rem;
  }
  .card-design-list .list-setup button,
  .icon-addcircle button {
    min-height: 215px;
  }
}
/* mypage-credit-card */
.text-break-all {
  word-break: break-all;
}

.credit-checkbox [type=checkbox],
.card-list-item .checkbox {
  background: none;
  background-position: center;
  width: 25px;
  height: 25px;
  border: var(--logo-color, #003D5C) solid 2px;
  border-radius: 50px;
}

.mypage-credit-card .card-box.checked,
.card-list-item:not(.not-use).checked {
  background-color: #F8F9FE;
  outline: var(--logo-color, #003D5C) solid 1px;
  border-color: var(--logo-color, #003D5C);
}

.card-design-list .card-box {
  min-height: 240px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.card-design-list .card-box .credit-infomation {
  margin: auto 0 0 auto;
}

.card-design-list .card-box.not-use,
.card-list-item.not-use {
  position: relative;
  background-color: var(--gray-eee-color, #eee);
  border: var(--gray-mid-color, #999) solid 1px;
  color: var(--gray-mid-color, #999);
}

.card-design-list .card-box.not-use [type=checkbox],
.card-list-item.not-use .checkbox {
  display: none;
}

.card-design-list .card-box.not-use .notuse-text,
.card-list-item.not-use .notuse-text {
  max-width: 90%;
  padding: 0.5rem;
  color: #C50000;
  max-width: calc(100% + 1rem);
  margin: -0.5rem -0.5rem 0;
  padding: 0 0 0.375rem;
  font-size: clamp(0.875rem, 2vw, 1.125rem);
}
@media print, (min-width: 992px) {
  .card-design-list .card-box.not-use .notuse-text,
  .card-list-item.not-use .notuse-text { /* for lg */
    margin-top: -0.625rem;
    font-size: clamp(0.75rem, 1.4vw, 1.125rem);
  }
}

.front-form-group .front-input-list.-credit {
  grid-template-columns: 120px 120px;
  margin-right: 1.25rem;
}

.w-120px {
  width: 120px;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .credit-infomation li {
    font-size: 0.875rem;
  }
  .card-design-list .card-box {
    min-height: 177px;
    padding: 20px 17px 12px;
  }
  .card-design-list .card-box p {
    font-size: 1.25rem;
  }
  .card-design-list .card-box .icon-remove {
    width: 18px;
    height: 21px;
  }
  .credit-checkbox [type=checkbox] {
    width: 22px;
    height: 22px;
    border: var(--logo-color, #003D5C) solid 2px;
    border-radius: 50px;
  }
  .mypage-credit-card .list-setup button {
    min-height: 177px;
  }
}
/* favorite product */
.fav-products .remove-btn {
  position: absolute;
  top: -38px;
  right: 8px;
  border: none;
  background: transparent;
  padding: 4px;
}
.fav-products .remove-btn:hover {
  cursor: pointer;
}

.fav-products .products-body .btn.prev-button:hover,
.fav-products .products-body .btn.next-button:hover,
.fav-products .products-body .slide-prev-button:hover,
.fav-products .products-body .slide-next-button:hover {
  background-color: inherit;
  color: inherit;
  transition: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .fav-products .products-body {
    overflow: hidden;
  }
  .fav-products-empty[style="display: block;"] {
    margin-top: -1.875rem;
    padding-left: 0.675rem;
    padding-right: 0.675rem;
  }
  .fav-products .products-list {
    row-gap: 2.25rem;
  }
  .fav-products .products-body .slide-prev-button,
  .fav-products .products-body .slide-next-button {
    position: absolute;
    top: 118px;
    z-index: 1;
    width: 2.2em;
    height: 2.2em;
    border: none;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    padding: 0;
  }
  .fav-products .products-body .slide-prev-button {
    left: 1%;
  }
  .fav-products .products-body .slide-next-button {
    right: 1%;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .fav-products .grid-lg {
    display: grid;
  }
  .fav-products .products-body {
    container-type: inline-size;
  }
  .products-list-cols-4-lg {
    grid-template-columns: repeat(3, minmax(287px, 1fr));
  }
}
@media print, print and (min-width: 1250px), print and (min-width: 992px), (min-width: 992px) and (min-width: 1250px) {
  .products-list-cols-4-lg {
    grid-template-columns: repeat(4, minmax(274px, 1fr));
  }
}
@media print, (min-width: 992px) {
  .fav-products .products-item {
    margin-bottom: 85px;
  }
}
/* cancel-membership */
.cancel-membership .cancel-attention-list li {
  position: relative;
  padding-left: 1rem;
  word-break: break-all;
}

.cancel-membership .cancel-attention-list .indent--1rem * {
  text-indent: 0;
}

.cancel-attention-list li::before {
  content: "・";
  margin-right: -0.25rem;
}

.cancel-membership .cancel-attention-list li + li {
  margin-top: 1.875rem;
}

@media print, (min-width: 992px) { /* for lg */
  .cancel-membership .front-form-group:has(.front-form-control) {
    margin-top: 0;
  }
  .cancel-membership .front-group-radio {
    gap: 2.5rem;
    margin-top: 2.5rem;
  }
  .cancel-membership .front-form-group .btn.has-arw-r {
    width: 300px;
  }
  .cancel-membership .pin-button-group {
    gap: 3.75rem;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .cancel-membership .cancel-attention-list {
    font-size: 0.875rem;
  }
  .cancel-membership .form-white-button {
    width: 240px;
  }
}
/* 2 factor auth */
.setting-2factor .front-form-group:has(.front-form-control) {
  margin-top: 0;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .setting-2factor,
  .setting-2factor-cmpl {
    font-size: 0.875rem;
  }
  .setting-2factor .front-group-radio {
    padding: 1.25rem;
    line-height: 2;
    border-radius: 10px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .setting-2factor .front-group-radio {
    padding: 2.5rem;
    line-height: 2;
    border-radius: 20px;
  }
}
/* Newsletter */
.newsletter-setting .word-wrap {
  word-wrap: break-word;
}

.newsletter-setting .front-form-group:has(.front-form-control) {
  margin-top: 0;
}

.newsletter-setting .front-form-group .connection-img {
  transform: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .newsletter-setting,
  .newsletter-setting-cmpl {
    font-size: calc(1rem - 1px);
  }
}
@media screen and (max-width: 991.98px) and (max-width: 359px) {
  .newsletter-setting,
  .newsletter-setting-cmpl { /* for sm */
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 991.98px) {
  .newsletter-setting .front-group-radio {
    padding: 1.25rem;
    line-height: 2;
    border-radius: 10px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .newsletter-setting .front-group-radio {
    padding: 2.5rem;
    line-height: 2;
    border-radius: 20px;
  }
}
/* page-cart -history */
.item-order-number .order-cancel-button {
  background-color: transparent;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: var(--color-logo, #003D5C);
}

.cart-shipping-info .background-blue {
  background-color: #F8F9FE;
}

.cart-shipping-items .shipped-data {
  border: solid 1px;
  display: inline-block;
  height: 30px;
  padding: 3px 15px;
}

.cart-item-control .cart-item-repair-button,
.cart-item-control .cart-item-return-button {
  background-color: transparent;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 2px 1px;
  font-size: 0.875rem;
  color: var(--color-logo, #003D5C);
  letter-spacing: -0.1px;
  white-space: nowrap;
  cursor: pointer;
}

.cart-item-control.-shipped {
  column-gap: 1.25rem;
  row-gap: 0.625rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .btn-cancel-block .btn {
    width: 100%;
    height: 60px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .item-order-number {
    margin: 1.875rem auto;
  }
  .btn-cancel-block {
    gap: 60px;
  }
  .btn-cancel-block .btn {
    width: 250px;
    height: 80px;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  .btn-cancel-block .btn {
    width: 100%;
    height: 60px;
  }
}
/*!
 * SASS  :  sass/fb-cs.scss
 * Modified  :  *******
 */
/* customer-service
---------------------------------------------------- */
.order-status,
.order-status-list,
.cs-contact {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

/* order-status */
@media screen and (max-width: 991.98px) { /* for sm */
  .order-status .sub-links {
    font-size: 0.875rem;
  }
}
/* order-status-list */
.order-status-list .repurchase-button {
  background-color: transparent;
  border: none;
  outline: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .order-status-list {
    font-size: 0.875rem;
  }
  .order-status-list .return-btn,
  .order-status-list .cancel-btn {
    height: 38px;
    width: 48%;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .order-status-list > .container {
    margin-bottom: 200px;
  }
  .order-status-list .return-btn,
  .order-status-list .cancel-btn {
    height: 50px;
    width: 160px;
  }
}
.purchase-history-list .period_filter {
  grid-template-columns: 120px 30px 120px;
  gap: 20px;
}

.purchase-history-list .period_filter .filter_hyphen {
  margin-top: 50px;
}

/* cs-contact */
.cs-contact .front-form-control.topic-select,
.cs-contact .front-form-control.category-select {
  padding: 0.5rem 2.25rem 0.5rem 1rem;
  color: inherit;
}
@media print, (min-width: 992px) {
  .cs-contact .front-form-control.topic-select,
  .cs-contact .front-form-control.category-select { /* for lg */
    padding-left: 1.125rem;
    height: auto;
    min-height: 54px;
  }
}

.cs-contact .front-form-group.bg-on {
  background-color: #F8F9FE;
}

.cs-contact .opt-g.bg-blue {
  background-color: var(--gray-blue-light-color, #E1E6F1);
  font-size: 1.125rem;
  font-weight: lighter;
}

.cs-contact .opt-g.bg-blue option {
  background-color: #fff;
  font-size: 1rem;
}

.cs-contact #contact-next {
  /* ボタン有効時のスタイル */
  background-color: var(--logo-color, #003D5C);
  color: #fff;
  width: 400px;
  height: 80px;
  font-size: 1.125rem;
  transition: all 0.16s;
}

.cs-contact #contact-next:hover {
  background-color: #fff;
  color: var(--logo-color, #003D5C);
  border: solid 1px;
}

/* ボタン無効時のスタイル */
.cs-contact #contact-next:disabled {
  background-color: var(--gray-safe-color, #767676);
  opacity: 1;
  cursor: not-allowed;
}

.cs-contact #contact-next:disabled:hover {
  pointer-events: none;
  color: #ccc;
}

.cs-contact .form-blue-button.has-arw-r#contact-next:disabled:hover > .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

@media screen and (max-width: 991.98px) { /* for sm */
  .cs-contact {
    font-size: 1rem;
  }
  .cs-contact .front-form-group.bg-on {
    margin: 2.5rem -1.25rem 0;
    padding: 2.25rem 1.25rem 3.5rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .front-form-group .front-select-width.-contact {
    width: 800px;
  }
  .cs-contact .front-form-group.bg-on {
    border-radius: 20px;
    margin: 2.5rem auto 0;
    padding: 3rem 2.5rem 3.5rem;
  }
}
/* cs-contact  General */
.cs-contact .form-inner-block textarea {
  resize: vertical;
  padding: 0.75rem 1rem;
}
@media print, (min-width: 992px) {
  .cs-contact .form-inner-block textarea { /* for lg */
    padding-left: 1.125rem;
    padding-right: 1.125rem;
  }
}

.cs-contact .form-inner-block #cs-desctiption,
.cs-contact .form-inner-block #cs-question {
  height: 278px;
  line-height: 1.75;
}

.front-form-group label[for=cs-description] {
  margin-bottom: 0.25rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .cs-contact .form-inner-block #cs-desctiption {
    height: 258px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .cs-contact .form-inner-block {
    padding: 0 2.5rem;
  }
  .front-form-group label[for=cs-description],
  .front-form-group label[for=cs-question] {
    margin-bottom: 0.5rem;
  }
  .cs-contact .w-640px-lg {
    width: 640px;
  }
}
/* cs-contact general3 */
.cs-contact .upload-btn {
  line-height: 1.5;
  border: 1px solid #ffffff;
  border-radius: 5px;
}
@media print, (min-width: 992px) {
  .cs-contact .upload-btn { /* for lg */
    width: 400px;
  }
}

.cs-contact .cs-label-upload.front-form-label {
  display: block;
  margin-bottom: 0.75rem;
}

.cs-contact .cs-input-upload {
  display: inline-flex;
  width: 200px;
  padding: 10px 40px;
  color: #ffffff;
  background-color: #6B7494;
  border-radius: 5px;
  height: 45px;
  justify-content: center;
  align-items: center;
}

.cs-contact input[type=file] {
  display: none;
}

@media print, (min-width: 992px) { /* for lg */
  .cs-contact .cs-input-upload {
    width: 260px;
  }
}
/* cs-contact Return Gift */
.cs-contact.-return .mt-10px {
  margin-top: 10px;
}

/* ------ refund table ------ */
.cs-contact.-return .table-return {
  display: table;
  border: var(--gray-color) solid 1px;
  box-sizing: border-box;
  width: 944px;
  background-color: #fff;
  border-collapse: collapse;
}
@media print, (min-width: 992px) {
  .cs-contact.-return .table-return { /* for lg */
    max-width: 100%;
  }
}

.cs-contact.-return .front-form-control.h-35px-lg {
  height: 35px;
  padding: 0.25rem 0.5rem;
}

.cs-contact.-return .table-return > thead > tr > th {
  background-color: var(--logo-color, #003D5C);
  color: #fff;
  padding: 0.85rem 0.5rem;
}

.cs-contact.-return .table-return > tbody {
  background-color: #F8F9FE;
}

.cs-contact.-return .table-return > tbody > tr > td {
  padding: 0.5rem;
}

.cs-contact.-return .table-return > thead > tr > th:first-child,
.cs-contact.-return .table-return .table-row-return td:first-child {
  padding-left: 1rem;
}

.cs-contact.-return .table-return > thead > tr > th:last-child,
.cs-contact.-return .table-return .table-row-return td:last-child {
  padding-right: 1rem;
}

.cs-contact.-return .table-row-return {
  border-bottom: var(--gray-color) solid 1px;
}

/* ------ /refund table ------ */
.cs-contact.-return .form-inner-block textarea {
  resize: vertical;
  padding: 1rem 1.25rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .cs-contact.-return .x-scroll {
    overflow-x: scroll;
  }
  .cs-contact.-return .table-row-return > td {
    height: 76px;
  }
  .cs-contact.-return .scrollbar-control::-webkit-scrollbar {
    height: 3px;
  }
  .cs-contact.-return .scrollbar-control::-webkit-scrollbar-track {
    background-color: var(--gray-color, #ccc);
  }
  .cs-contact.-return .scrollbar-control::-webkit-scrollbar-thumb {
    background-color: var(--logo-color, #003D5C);
  }
  .cs-contact.-return .scrollbar-control {
    scrollbar-width: thin;
    scrollbar-color: #003D5C #ccc;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .cs-contact.-return .form-inner-block {
    padding: 0 2.5rem;
  }
  .cs-contact.-return .table-row-return {
    height: 90px;
  }
}
/* cs-contact Repair Enter */
.cs-contact .file-upload + .file-upload,
.cs-contact [id^=file-error-container] + .file-upload {
  margin-top: 1.75rem;
}

.cs-contact .file-upload input[type=file] {
  display: block;
  padding-top: 6px;
  border-radius: 5px;
  height: auto;
}
@media screen and (max-width: 991.98px) {
  .cs-contact .file-upload input[type=file] { /* for sm */
    height: 35px;
    font-size: 0.875rem;
    width: 100%;
  }
}
@media print, (min-width: 992px) {
  .cs-contact .file-upload input[type=file] { /* for lg */
    min-height: 36px;
  }
}
.cs-contact .file-upload input[type=file]:hover {
  cursor: pointer;
}

.form-control::file-selector-button {
  padding: 0.5rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 4px 0 0 4px;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.red-button {
  background-color: #C50000;
}

.red-button.-filedelete {
  border: none;
  height: 35px;
  white-space: nowrap;
}

.red-button.-filedelete:hover {
  background-color: #C50000;
}

@media screen and (max-width: 991.98px) {
  .file-upload .figure-group { /* for sm */
    margin-top: -2.125rem;
  }
}

@media screen and (max-width: 991.98px) {
  .file-upload .figure-group:has([src=""]),
  .file-upload .figure-group:has(.upload-file-img[style*="display: none"]) { /* for sm */
    margin-top: -0.25rem;
  }
}

.upload-file-fig {
  border: var(--gray-color) solid 1px;
  border-radius: 0.25rem;
  overflow: hidden;
}

.upload-file-img {
  aspect-ratio: 80/80;
  object-fit: cover;
}

.figure-group .upload-fime-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 20px;
}
@media screen and (max-width: 991.98px) {
  .figure-group .upload-fime-title { /* for sm */
    width: calc(100% - 82px - 1rem);
    max-height: 2.625rem;
    -webkit-line-clamp: 2;
  }
}
@media print, (min-width: 992px) {
  .figure-group .upload-fime-title { /* for lg */
    max-height: 80px;
    -webkit-line-clamp: 4;
  }
}

/* text1-4 */
.cs-contact .cs-text-block {
  padding: 2rem 1.25rem 2.5rem;
  border-radius: 10px;
  border: var(--logo-color, #003D5C) solid 1px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: left;
}

.cs-contact .cs-text-block p {
  line-height: 1.75;
}

@media print, (min-width: 992px) { /* for lg */
  .cs-contact .cs-text-block {
    border-radius: 20px;
    padding: 3.25rem 3.75rem 3.75rem;
  }
  .cs-contact .cs-text-block p {
    line-height: 2;
  }
  .cs-contact .cs-text-block p:first-of-type {
    margin-top: 0.5em;
  }
}
/*!
 * SASS  :  sass/fb-general.scss
 * Modified  :  *******
 */
/* general purpose
---------------------------------------------------- */
/* common */
:root {
  --contents-max-width: 1366px;
  --text-color: #222;
  --logo-color: #003D5C;
  --gray-color: #ccc;
  --gray-dark-color: #666;
  --gray-pure-color: #7F7F7F;
  --gray-light-color: #F8F9FE;
  --gray-blue-color: #9BA4B8;
  --gray-blue-light-color: #E1E6F1;
  --accent-color: #E2E0D7;
  --red-text-color: #C50000;
  --red-dark-color: #A70000;
  --blue-pick-color: #0070C0;
  --red-pick-color: #FF0000;
  --yellow-pick-color: #FED533;
  --green-pick-color: #77933C;
  --purple-pick-color: #7030A0;
  --orange-pick-color: #FF6600;
  --brown-pick-color: #984807;
  --pink-pick-color: #F0728F;
  --skin-pick-color: #FCD5B5;
  --line-height-sm: 1.25;
  --line-height-base: 1.5;
  --list-padding-y: 0.25rem;
  --z-index--1: -1;
  --z-index-0: 0;
  --z-index-low: 1;
  --z-index-middle: 2;
  --z-index-high: 3;
}

.general-page-link:hover,
[class*=link-word-id]:hover {
  cursor: pointer;
}

.gp-block {
  display: block;
  padding-block: 0.25rem;
}
@media screen and (max-width: 991.98px) {
  .gp-block { /* for sm */
    font-size: 0.875rem;
  }
}
@media print, (min-width: 992px) {
  .gp-block { /* for lg */
    padding-block: 0.5rem;
  }
}

.contents > .gp-block {
  padding-inline: 1rem;
}

.container.max-w1200-with-px-1rem {
  padding-inline: 1rem;
}
@media print, (min-width: 992px) {
  .container.max-w1200-with-px-1rem { /* for lg */
    width: calc(1200px + 2rem);
  }
}

.gp-container {
  width: var(--contents-max-width, 1366px);
  max-width: 100%;
  margin-inline: auto;
  margin-block-end: 1rem;
}

/* ブロック下の区切り線 */
.gp-container-border-bottom {
  border-bottom: #ccc solid 1px;
  padding-bottom: 1.125rem;
}
@media print, (min-width: 992px) {
  .gp-container-border-bottom { /* for lg */
    padding-bottom: 1.75rem;
  }
}

hr.gp-container-border-bottom {
  border: none;
  border-bottom: #ccc solid 1px;
  margin-block: 1.125rem;
  padding-bottom: 0;
}
@media print, (min-width: 992px) {
  hr.gp-container-border-bottom { /* for lg */
    margin-block: 1.75rem;
  }
}

/* base-style */
@media screen and (max-width: 991.98px) {
  .gp-figure { /* for sm */
    width: 100px;
    margin-block-end: 1.25rem;
  }
}
@media print, (min-width: 992px) {
  .gp-figure { /* for lg */
    margin-block-end: 1.25rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-figure .gp-img { /* for sm */
    width: 100%;
  }
}

.gp-link {
  text-decoration: underline;
}

.gp-link:hover {
  text-decoration: none;
}

.gp-img-border {
  border: var(--gray-color, #ccc) solid 1px;
}

.gp-title {
  order: 0;
  width: 100%;
}

.gp-p:first-child {
  margin-top: 0;
}

.gp-ul,
.gp-ol {
  margin-block: 0.75rem;
  padding-inline: 1.25rem 0.75rem;
}

.gp-li {
  margin-block: 0.125rem;
}

.gp-list-mark {
  list-style: disc;
}

.gp-action {
  margin-block: 1.125rem 0.625rem;
}
@media screen and (max-width: 991.98px) {
  .gp-action { /* for sm */
    margin-block-start: 0.875rem;
  }
}

.gp-action:last-child {
  margin-block-end: 0;
}

.gp-h2 + br,
.gp-h3 + br,
.gp-h4 + br,
.gp-action + br,
.gp-ul + br,
.gp-ol + br {
  display: none;
}

.gp-btn {
  --gp-btn-font-size: 0.875rem;
  background-color: var(--gray-light-color, #F8F9FE);
  border: var(--gray-blue-color, #9BA4B8) solid 1px;
  display: block;
  width: fit-content;
  max-width: 100%;
  margin: 0.25rem;
  padding: 0.375rem 1rem;
  font-size: var(--gp-btn-font-size, 0.875rem);
  border-radius: 0.25rem;
}
@media print, (min-width: 992px) {
  .gp-btn { /* for lg */
    --gp-btn-font-size: 1.125rem;
    padding: 0.5rem 1.125rem;
  }
}

/* heading */
.gp-title-text {
  font-weight: 500;
  font-size: 2.2rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 991.98px) {
  .gp-title-text { /* for sm */
    font-size: 1.8rem;
  }
}

/* デフォルト: 文字のみタイプ */
.gp-block .gp-h2:first-child,
.gp-block .gp-h3:first-child,
.gp-block .gp-h4:first-child {
  margin-block-start: 0;
}

.gp-h2 {
  --gp-font-size: 1.67rem;
  margin-block-start: 1.25rem;
  margin-block-end: 1.25rem;
  font-size: calc(var(--gp-font-size) - 2px);
  font-weight: 500;
}
@media print, (min-width: 992px) {
  .gp-h2 { /* for lg */
    --gp-font-size: 1.67rem;
    margin-block-start: 2rem;
    margin-block-end: 2rem;
  }
}

.gp-h3 {
  --gp-font-size: 1.5rem;
  margin-block-start: 1.125rem;
  margin-block-end: 1.125rem;
  font-size: calc(var(--gp-font-size) - 2px);
  font-weight: 500;
}
@media print, (min-width: 992px) {
  .gp-h3 { /* for lg */
    --gp-font-size: 1.5rem;
    margin-block-start: 1.5rem;
    margin-block-end: 1.5rem;
  }
}

.gp-h4 {
  --gp-font-size: 1.4rem;
  margin-block-start: 1rem;
  margin-block-end: 1rem;
  font-size: calc(var(--gp-font-size) - 2px);
  font-weight: 400;
}
@media print, (min-width: 992px) {
  .gp-h4 { /* for lg */
    --gp-font-size: 1.4rem;
    margin-block-start: 1.25rem;
    margin-block-end: 1.25rem;
  }
}

.gp-p + .gp-h2 {
  margin-block-start: 1.25rem;
}
@media print, (min-width: 992px) {
  .gp-p + .gp-h2 { /* for lg */
    margin-block-start: 2rem;
  }
}

.gp-p + .gp-h3 {
  margin-block-start: 1.125rem;
}
@media print, (min-width: 992px) {
  .gp-p + .gp-h3 { /* for lg */
    margin-block-start: 1.5rem;
  }
}

.gp-p + .gp-h4 {
  margin-block-start: 1rem;
}
@media print, (min-width: 992px) {
  .gp-p + .gp-h4 { /* for lg */
    margin-block-start: 1.25rem;
  }
}

/* 文字色 */
.gp-text-color {
  --gp-text-color: #222;
  color: var(--gp-text-color, #222);
}

/* 帯タイプ */
.gp-type-band, .gp-title-type_a, .gp-title-type_b, .gp-title-type_c {
  --gp-bg-color: #003D5C;
  background-color: var(--gp-bg-color, #003D5C);
  padding: 0.625rem 0.75rem;
  font-size: calc(var(--gp-font-size) - 2px);
  border-radius: 2px;
}
@media print, (min-width: 992px) {
  .gp-type-band, .gp-title-type_a, .gp-title-type_b, .gp-title-type_c { /* for lg */
    font-size: calc(var(--gp-font-size) - 2px);
  }
}

.gp-h2.gp-type-band, .gp-title-type_a {
  color: var(--gp-text-color, #fff);
}
@media screen and (max-width: 991.98px) {
  .gp-h2.gp-type-band, .gp-title-type_a { /* for sm */
    line-height: var(--line-height-sm, 1.25);
  }
}

.gp-h3.gp-type-band, .gp-title-type_b {
  --gp-bg-color: #003D5C;
  background-color: transparent;
  border: var(--gp-bg-color, #003D5C) solid 2px;
  padding: calc(0.625rem - 2px) calc(0.75rem - 2px);
  color: var(--gp-text-color, #003D5C);
}

.gp-h4.gp-type-band, .gp-title-type_c {
  --gp-bg-color: #003D5C;
  background-color: transparent;
  border-bottom: var(--gp-bg-color, #003D5C) solid 1px;
}
@media screen and (max-width: 991.98px) {
  .gp-h4.gp-type-band, .gp-title-type_c { /* for sm */
    font-size: calc(var(--gp-font-size) - 2px);
    line-height: var(--line-height-sm, 1.25);
  }
}

.gp-title-type_d {
  --gp-bg-color: #003D5C;
  border-left: solid 10px var(--gp-bg-color, #003D5C);
  padding: 0.35rem 0.75rem;
}

.gp-title-type_e {
  padding-left: 2rem;
  position: relative;
  text-indent: -1.6rem;
}

.gp-title-type_e::before {
  content: "";
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  border: 0.4rem solid var(--gp-bg-color, #003D5C); /* 外側の丸 */
  border-radius: 50%;
  margin-right: 0.5rem;
  vertical-align: -0.1em;
}

.gp-h4.gp-type-band:not([style*=background-color]),
.gp-title-type_c:not([style*=background-color]) {
  padding-inline: 0;
}
@media screen and (max-width: 991.98px) {
  .gp-h4.gp-type-band:not([style*=background-color]),
  .gp-title-type_c:not([style*=background-color]) { /* for sm */
    padding-inline: 0;
  }
}

h1 .gp-link,
h2 .gp-link,
h3 .gp-link,
h4 .gp-link,
h5 .gp-link {
  text-decoration: none;
}

.gp-figure .gp-link {
  display: block;
  text-decoration: none;
}

.gp-figure-top .gp-link,
.gp-figure-top .gp-link,
.gp-figure-top .gp-link,
.gp-figure-top .gp-link {
  width: fit-content;
}

.gp-figure-bottom .gp-link,
.gp-figure-bottom .gp-link,
.gp-figure-bottom .gp-link,
.gp-figure-bottom .gp-link {
  width: fit-content;
}

@media screen and (max-width: 991.98px) {
  .gp-article-type-1 .gp-figure-top .gp-link,
  .gp-article-type-1 .gp-figure-bottom .gp-link,
  .gp-article-type-2 .gp-figure-top .gp-link,
  .gp-article-type-2 .gp-figure-bottom .gp-link,
  .gp-article-type-3 .gp-figure-top .gp-link,
  .gp-article-type-3 .gp-figure-bottom .gp-link,
  .gp-article-type-4 .gp-figure-top .gp-link,
  .gp-article-type-4 .gp-figure-bottom .gp-link { /* for sm */
    width: auto;
  }
}

/* article */
.gp-article-type-1 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-block-end: 1.5rem;
}
@media print, (min-width: 992px) {
  .gp-article-type-1 { /* for lg */
    gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
}

.gp-article-type-2 {
  display: grid;
  gap: 1.5rem;
  margin-block-end: 1.5rem;
}
@media print, (min-width: 992px) {
  .gp-article-type-2 { /* for lg */
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3.625rem;
    row-gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
}

.gp-article-type-3 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-block-end: 1.5rem;
}
@media print, (min-width: 992px) {
  .gp-article-type-3 { /* for lg */
    grid-template-columns: repeat(3, 1fr);
    column-gap: calc(3.25rem + 1px);
    row-gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
}

.gp-article-type-4 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-block-end: 1.5rem;
}
@media print, (min-width: 992px) {
  .gp-article-type-4 { /* for lg */
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2.625rem;
    row-gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
}

.gp-article-1-item,
.gp-article-2-item,
.gp-article-3-item,
.gp-article-4-item {
  display: flex;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item,
  .gp-article-2-item,
  .gp-article-3-item,
  .gp-article-4-item { /* for sm */
    flex-direction: column;
  }
}

@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-right,
  .gp-article-2-item.gp-figure-right,
  .gp-article-3-item.gp-figure-right,
  .gp-article-4-item.gp-figure-right { /* for lg */
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-block:not(:has(.gp-title)) .gp-article-3-item.gp-figure-right,
  .gp-block:not(:has(.gp-title)) .gp-article-4-item.gp-figure-right { /* for sm */
    flex-direction: column-reverse;
    justify-content: flex-end;
  }
}

.gp-article-1-item.gp-figure-top,
.gp-article-2-item.gp-figure-top,
.gp-article-3-item.gp-figure-top,
.gp-article-4-item.gp-figure-top {
  flex-direction: column;
}

.gp-article-1-item.gp-figure-bottom,
.gp-article-2-item.gp-figure-bottom,
.gp-article-3-item.gp-figure-bottom,
.gp-article-4-item.gp-figure-bottom {
  flex-direction: column-reverse;
  justify-content: flex-end;
}

@media screen and (max-width: 991.98px) {
  .gp-article-1-item,
  .gp-article-1-item.gp-figure-right,
  .gp-article-2-item.gp-figure-right { /* for sm */
    flex-direction: column;
  }
}

@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-left,
  .gp-article-1-item.gp-figure-right,
  .gp-article-2-item.gp-figure-left,
  .gp-article-2-item.gp-figure-right,
  .gp-article-3-item.gp-figure-left,
  .gp-article-3-item.gp-figure-right,
  .gp-article-4-item.gp-figure-left,
  .gp-article-4-item.gp-figure-right { /* for lg */
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto 1fr;
  }
}

@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-left,
  .gp-article-2-item.gp-figure-left { /* for lg */
    grid-template-columns: auto 1fr;
  }
}

@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-right,
  .gp-article-2-item.gp-figure-right { /* for lg */
    grid-template-columns: 1fr auto;
  }
}

.gp-article-1-item.gp-figure-left .gp-title,
.gp-article-1-item.gp-figure-right .gp-title,
.gp-article-2-item.gp-figure-left .gp-title,
.gp-article-2-item.gp-figure-right .gp-title,
.gp-article-3-item.gp-figure-left .gp-title,
.gp-article-3-item.gp-figure-right .gp-title,
.gp-article-4-item.gp-figure-left .gp-title,
.gp-article-4-item.gp-figure-right .gp-title {
  grid-column-start: 1;
  grid-column-end: 3;
}

.gp-article-1-item.gp-figure-bottom .gp-title,
.gp-article-2-item.gp-figure-bottom .gp-title,
.gp-article-3-item.gp-figure-bottom .gp-title,
.gp-article-4-item.gp-figure-bottom .gp-title {
  order: 1;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-bottom .gp-title,
  .gp-article-2-item.gp-figure-bottom .gp-title,
  .gp-article-3-item.gp-figure-bottom .gp-title,
  .gp-article-4-item.gp-figure-bottom .gp-title { /* for sm */ }
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-bottom .gp-title,
  .gp-article-2-item.gp-figure-bottom .gp-title,
  .gp-article-3-item.gp-figure-bottom .gp-title,
  .gp-article-4-item.gp-figure-bottom .gp-title { /* for lg */ }
}

@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-left .gp-figure,
  .gp-article-1-item.gp-figure-right .gp-figure,
  .gp-article-2-item.gp-figure-left .gp-figure,
  .gp-article-2-item.gp-figure-right .gp-figure,
  .gp-article-3-item.gp-figure-top .gp-figure,
  .gp-article-3-item.gp-figure-bottom .gp-figure,
  .gp-article-4-item.gp-figure-top .gp-figure,
  .gp-article-4-item.gp-figure-bottom .gp-figure { /* for sm */
    width: 100%;
    margin-inline: 0;
  }
}

.gp-article-1-item.gp-figure-right .gp-figure,
.gp-article-2-item.gp-figure-right .gp-figure,
.gp-article-3-item.gp-figure-right .gp-figure,
.gp-article-4-item.gp-figure-right .gp-figure {
  order: 2;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-right .gp-figure,
  .gp-article-2-item.gp-figure-right .gp-figure,
  .gp-article-3-item.gp-figure-right .gp-figure,
  .gp-article-4-item.gp-figure-right .gp-figure { /* for sm */
    margin-block-start: 1.25rem;
  }
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-right .gp-figure,
  .gp-article-2-item.gp-figure-right .gp-figure,
  .gp-article-3-item.gp-figure-right .gp-figure,
  .gp-article-4-item.gp-figure-right .gp-figure { /* for lg */ }
}

@media print, (min-width: 992px) {
  .gp-article-2-item.gp-figure-left .gp-figure,
  .gp-article-2-item.gp-figure-right .gp-figure { /* for lg */
    max-width: 240px;
  }
}

.gp-article-1-item.gp-figure-top .gp-figure,
.gp-article-2-item.gp-figure-top .gp-figure,
.gp-article-3-item.gp-figure-top .gp-figure,
.gp-article-4-item.gp-figure-top .gp-figure {
  text-align: center;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-top .gp-figure,
  .gp-article-2-item.gp-figure-top .gp-figure,
  .gp-article-3-item.gp-figure-top .gp-figure,
  .gp-article-4-item.gp-figure-top .gp-figure { /* for sm */
    width: auto;
  }
}

.gp-article-1-item.gp-figure-left .gp-figure,
.gp-article-2-item.gp-figure-left .gp-figure {
  flex-grow: 0;
  flex-shrink: 0;
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-left .gp-figure,
  .gp-article-2-item.gp-figure-left .gp-figure { /* for lg */
    margin-block-end: 0.625rem;
    margin-inline-end: 2rem;
    max-width: 500px;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-article-3-item.gp-figure-left .gp-figure,
  .gp-article-4-item.gp-figure-left .gp-figure { /* for sm */
    width: auto;
    margin-inline-end: 0;
  }
}
@media print, (min-width: 992px) {
  .gp-article-3-item.gp-figure-left .gp-figure,
  .gp-article-4-item.gp-figure-left .gp-figure { /* for lg */
    width: 150px;
    margin-block-end: 0.625rem;
    margin-inline-end: 1.5rem;
  }
}

.gp-article-1-item.gp-figure-right .gp-figure,
.gp-article-2-item.gp-figure-right .gp-figure {
  flex-grow: 0;
  flex-shrink: 0;
  margin-block-end: 0.625rem;
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-right .gp-figure,
  .gp-article-2-item.gp-figure-right .gp-figure { /* for lg */
    margin-inline-start: 2rem;
    max-width: 500px;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-article-3-item.gp-figure-right .gp-figure,
  .gp-article-4-item.gp-figure-right .gp-figure { /* for sm */
    width: auto;
    margin-block-start: 1.25rem;
    margin-block-end: auto;
    margin-inline-start: 0;
  }
}
@media print, (min-width: 992px) {
  .gp-article-3-item.gp-figure-right .gp-figure,
  .gp-article-4-item.gp-figure-right .gp-figure { /* for lg */
    width: 150px;
    margin-block-end: 0.625rem;
    margin-inline-start: 1.5rem;
  }
}

@media print, (min-width: 992px) {
  .gp-article-4-item.gp-figure-left .gp-figure,
  .gp-article-4-item.gp-figure-right .gp-figure { /* for lg */
    width: 100px;
  }
}

.gp-article-1-item.gp-figure-bottom .gp-figure,
.gp-article-2-item.gp-figure-bottom .gp-figure,
.gp-article-3-item.gp-figure-bottom .gp-figure,
.gp-article-4-item.gp-figure-bottom .gp-figure {
  flex-grow: 0;
  flex-shrink: 0;
  margin-block-end: 0.625rem;
  text-align: center;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-bottom .gp-figure,
  .gp-article-2-item.gp-figure-bottom .gp-figure,
  .gp-article-3-item.gp-figure-bottom .gp-figure,
  .gp-article-4-item.gp-figure-bottom .gp-figure { /* for sm */
    width: auto;
    margin-block-start: 1.5rem;
  }
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-bottom .gp-figure,
  .gp-article-2-item.gp-figure-bottom .gp-figure,
  .gp-article-3-item.gp-figure-bottom .gp-figure,
  .gp-article-4-item.gp-figure-bottom .gp-figure { /* for lg */
    margin-block-start: 1.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-bottom:last-child .gp-figure,
  .gp-article-2-item.gp-figure-bottom:last-child .gp-figure,
  .gp-article-3-item.gp-figure-bottom:last-child .gp-figure,
  .gp-article-4-item.gp-figure-bottom:last-child .gp-figure,
  .gp-article-1-item.gp-figure-right:last-child .gp-figure,
  .gp-article-2-item.gp-figure-right:last-child .gp-figure,
  .gp-article-3-item.gp-figure-right:last-child .gp-figure,
  .gp-article-4-item.gp-figure-right:last-child .gp-figure { /* for sm */
    margin-block-end: 0.125rem;
  }
}

.gp-article-1-item .gp-title + .gp-content,
.gp-article-2-item .gp-title + .gp-content,
.gp-article-3-item .gp-title + .gp-content,
.gp-article-4-item .gp-title + .gp-content {
  grid-column: span 2;
}

.gp-article-1-item.gp-figure-right .gp-content,
.gp-article-2-item.gp-figure-right .gp-content,
.gp-article-3-item.gp-figure-right .gp-content,
.gp-article-4-item.gp-figure-right .gp-content {
  order: 1;
}
@media screen and (max-width: 991.98px) {
  .gp-article-1-item.gp-figure-right .gp-content,
  .gp-article-2-item.gp-figure-right .gp-content,
  .gp-article-3-item.gp-figure-right .gp-content,
  .gp-article-4-item.gp-figure-right .gp-content { /* for sm */ }
}
@media print, (min-width: 992px) {
  .gp-article-1-item.gp-figure-right .gp-content,
  .gp-article-2-item.gp-figure-right .gp-content,
  .gp-article-3-item.gp-figure-right .gp-content,
  .gp-article-4-item.gp-figure-right .gp-content { /* for lg */ }
}

@media screen and (max-width: 991.98px) {
  .gp-article-1-item .gp-h2 { /* for sm */
    margin-block-end: 1rem;
    --gp-font-size: 1.67rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-letter .gp-h2,
  .gp-letter .gp-h3,
  .gp-letter .gp-h4 { /* for sm */
    margin-block-end: 0.875rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-letter .gp-h2 { /* for sm */
    --gp-font-size: 1.67rem;
  }
}

/* list */
.gp-list-type-a {
  display: grid;
  column-gap: 2.625rem;
  row-gap: 1.25rem;
  margin-bottom: 2rem;
}
@media print, (min-width: 992px) {
  .gp-list-type-a { /* for lg */
    grid-template-columns: repeat(2, 1fr);
    row-gap: 2rem;
  }
}

.gp-list-a-item {
  display: grid;
  grid-template-rows: auto 1fr;
  grid-template-columns: auto auto;
}
@media screen and (max-width: 991.98px) {
  .gp-list-a-item { /* for sm */
    column-gap: 1rem;
  }
}
@media print, (min-width: 992px) {
  .gp-list-a-item { /* for lg */
    column-gap: 1.5rem;
  }
}

.gp-list-a-item:has(> .gp-figure) {
  grid-template-columns: 112px auto;
}

.gp-list-a-item .gp-figure {
  flex-grow: 0;
  flex-shrink: 0;
}
@media screen and (max-width: 991.98px) {
  .gp-list-a-item .gp-figure { /* for sm */
    width: 112px;
  }
}
@media print, (min-width: 992px) {
  .gp-list-a-item .gp-figure { /* for lg */
    max-width: 200px;
  }
}

.gp-list-title {
  --gp-font-size: 1.25rem;
  border-bottom: var(--gray-blue-light-color, #E1E6F1) solid 2px;
  margin-block-start: 0;
  margin-block-end: 1rem;
  padding-block-end: 0.625rem;
  font-size: var(--gp-font-size, 1.25rem);
  font-weight: 400;
}

.gp-list-a-item .gp-action,
.gp-list-b-item .gp-action {
  margin-block: 1rem 0.625rem;
}

.gp-list-a-item .gp-btn,
.gp-list-b-item .gp-btn {
  margin-inline-start: 0;
}
@media print, (min-width: 992px) {
  .gp-list-a-item .gp-btn,
  .gp-list-b-item .gp-btn { /* for lg */
    padding: 0.375rem 1.375rem;
    --gp-btn-font-size: 1rem;
  }
}

.gp-list-type-b {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: 1.5rem;
  row-gap: 1.5rem;
  margin-bottom: 2rem;
}
@media print, (min-width: 992px) {
  .gp-list-type-b { /* for lg */
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2.5rem;
    row-gap: 2rem;
  }
}

@media print, (min-width: 992px) {
  .gp-list-b-body { /* for lg */
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto 1fr;
    column-gap: 1.5rem;
  }
}

.gp-list-type-b .gp-list-title {
  grid-column: 1/span 2;
}

.gp-list-b-body .gp-figure {
  flex-grow: 0;
  flex-shrink: 0;
}
@media screen and (max-width: 991.98px) {
  .gp-list-b-body .gp-figure { /* for sm */
    width: 100%;
    margin-inline-end: 1rem;
  }
}
@media print, (min-width: 992px) {
  .gp-list-b-body .gp-figure { /* for lg */
    margin-block-start: 0.25rem;
  }
}

.gp-list-b-body .gp-letter {
  font-size: 0.875rem;
}

.gp-list-b-body .gp-p:first-child {
  margin-block-start: 0;
}

.gp-list-b-body .gp-btn {
  padding: 0.375rem 0.875rem;
  --gp-btn-font-size: 0.875rem;
}

/* gallery */
.gp-gallery-controller,
.gp-gallery-pager {
  width: 1024px;
  max-width: 100%;
  margin-inline: auto;
}

.gp-gallery-item {
  flex-shrink: 0;
  width: 100%;
}

.gp-gallery-img {
  border: var(--gray-color, #ccc) solid 1px;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: contain;
}
@media print, (min-width: 992px) {
  .gp-gallery-img { /* for lg */
    aspect-ratio: 16/9;
  }
}

.gp-gallery-item .caption {
  background-color: rgba(0, 0, 0, 0.54);
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 0.5rem 0.75rem;
  color: #fff;
  opacity: 1;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  transition: opacity 0.15s ease-in-out;
}

.gp-gallery-item:hover .caption {
  opacity: 0;
}

/* gallery - pager */
.gp-gallery-pager-container {
  max-width: 1124px;
}

@media screen and (max-width: 991.98px) {
  .gp-gallery-pager { /* for sm */
    max-width: calc(100% - 34px - 34px);
  }
}

.gp-gallery-pager .btn {
  display: none;
}

.gp-gallery-pager .btn {
  border: none;
  padding: 0.375rem;
  border-radius: 0.25rem;
}

.gp-gallery-pager-container .splide__arrow {
  width: 44px;
  height: 44px;
}

.gp-gallery-pager .pager-item {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
}
@media print, (min-width: 992px) {
  .gp-gallery-pager .pager-item { /* for lg */
    width: 80px;
    height: 80px;
  }
}

.splide__track--nav > .splide__list > .pager-item,
.splide__track--nav > .splide__list > .pager-item.is-active {
  border: none;
}

.gp-gallery-pager .pager-img {
  border: var(--gray-color, #ccc) solid 1px;
  width: 40px;
  height: 40px;
  aspect-ratio: 1/1;
  object-fit: contain;
  box-sizing: content-box;
}
@media print, (min-width: 992px) {
  .gp-gallery-pager .pager-img { /* for lg */
    width: 76px;
    height: 76px;
  }
}

.gp-gallery-pager .pager-item.active .pager-img,
.gp-gallery-pager .pager-item.is-active .pager-img {
  border: var(--logo-color, #003D5C) solid 2px;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .has-arrow .gp-gallery-item {
    width: calc(100% - 20px);
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .gp-gallery-controller .btn {
    height: 100px;
  }
}
/* gallery - slide */
.gp-slide-splide {
  padding-bottom: 0.5rem;
}

.gp-slide-item {
  flex-shrink: 0;
  width: 100%;
  text-align: center;
}

/* products-list */
.gp-products-list-type {
  margin-block-end: 2rem;
}
@media print, (min-width: 992px) {
  .gp-products-list-type { /* for lg */
    margin-block-end: 53px;
  }
}

.gp-products-list-type .cols-items-list {
  grid-auto-flow: row;
}
@media screen and (max-width: 991.98px) {
  .gp-products-list-type .cols-items-list { /* for sm */
    grid-template-columns: repeat(2, calc(50% - 7.5px));
    gap: 14.5px;
    column-gap: 14.5px;
    row-gap: 24px;
  }
}
@media print, (min-width: 992px) {
  .gp-products-list-type .cols-items-list { /* for lg */
    grid-template-columns: repeat(3, clamp(240px, (100% - 76px) / 3, 331px));
    column-gap: 38px;
    margin-top: -38px;
  }
}
@media print, (min-width: 1119px) {
  .gp-products-list-type .cols-items-list { /* for lg */
    grid-template-columns: repeat(4, clamp(240px, (100% - 132px) / 4, 267px));
    column-gap: 44px;
  }
}

@media print, (min-width: 992px) {
  .gp-products-list-type .related-items-item { /* for lg */
    margin-top: 53px;
  }
}

/* anchor link */
.gp-anchor-side-list {
  background-color: var(--gray-light-color, #F8F9FE);
  row-gap: 1rem;
  margin-block-end: 1.5rem;
}
@media print, (min-width: 992px) {
  .gp-anchor-side-list { /* for lg */
    margin-block-end: 2.5rem;
  }
}

.gp-anchor-side-list .anchor-side-item {
  padding: 0 16px 0 15px;
  margin-left: -1px;
}

.gp-anchor-side-list .anchor-side-item + .anchor-side-item {
  border-left: var(--gray-color, #ccc) solid 1px;
}

.anchor-arw-bottom {
  rotate: -90deg;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .gp-anchor-side-list .anchor-side-item {
    margin-right: 1px;
    padding: 0 12px 0 10px;
  }
}
.gp-anchor-contents-list {
  background-color: var(--gray-light-color, #F8F9FE);
  row-gap: 1rem;
  margin-block-end: 1.5rem;
}
@media screen and (max-width: 991.98px) {
  .gp-anchor-contents-list { /* for sm */
    width: fit-content;
    min-width: 60%;
  }
}
@media print, (min-width: 992px) {
  .gp-anchor-contents-list { /* for lg */
    max-width: 50%;
    margin-block-end: 2.5rem;
  }
}

.gp-anchor-block-list {
  gap: 2.5rem;
  margin-block-end: 1.5rem;
}
@media screen and (max-width: 991.98px) {
  .gp-anchor-block-list { /* for sm */
    gap: 0.625rem;
  }
}
@media print, (min-width: 992px) {
  .gp-anchor-block-list { /* for lg */
    gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-anchor-block-item { /* for sm */
    width: 50%;
  }
}

.gp-anchor-block-item .gp-anchor-block-link {
  background-color: var(--gray-light-color, #F8F9FE);
  border: var(--logo-color, #003D5C) solid 2px;
  border-radius: 10px;
  padding: 1.25rem;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 991.98px) {
  .gp-anchor-block-item .gp-anchor-block-link { /* for sm */
    padding: 0.625rem;
    line-height: 1.25;
  }
}
@media print, (min-width: 992px) {
  .gp-anchor-block-item .gp-anchor-block-link { /* for lg */
    min-width: 250px;
    min-height: 88px;
    padding: 1.125rem 1.25rem;
  }
}

.gp-anchor-block-item .gp-anchor-block-label {
  display: flex;
  align-items: center;
  flex-grow: 1;
}

.gp-anchor-block-item .anchor-arw-bottom {
  margin-block-start: 3px;
  margin-inline: auto;
}

@media screen and (max-width: 991.98px) {
  .gp-anchor-margin { /* for sm */
    scroll-margin-top: 120px;
  }
}
@media print, (min-width: 992px) {
  .gp-anchor-margin { /* for lg */
    scroll-margin-top: 160px;
  }
}

/* FAQ */
.gp-faq-list-type .panel {
  margin-block-start: 0;
}
@media screen and (max-width: 991.98px) {
  .gp-faq-list-type .panel { /* for sm */
    padding: 0.5rem;
  }
}

.gp-faq-list-type .accordion-head {
  padding-block-end: 0.5rem;
  color: var(--logo-color, #003D5C);
}
@media screen and (max-width: 991.98px) {
  .gp-faq-list-type .accordion-head { /* for sm */
    font-size: 0.875rem;
  }
}
@media print, (min-width: 992px) {
  .gp-faq-list-type .accordion-head { /* for lg */
    font-size: 1.125rem;
    font-weight: 600;
  }
}

.gp-faq-list-type .accordion-head::before,
.gp-faq-list-type .accordion-body::before {
  display: block;
  flex-shrink: 0;
  width: 2.25rem;
  padding-inline: 0.25rem;
  font-size: 1.375rem;
  font-weight: 500;
  text-align: center;
  translate: 0 -0.25em;
  opacity: 0.85;
}

.gp-faq-list-type .accordion-body {
  margin-block-start: 0;
  padding-inline: 0.125rem;
  transition: transform 0.12s ease, max-height 0.12s ease, margin 0.12s ease;
}
@media screen and (max-width: 991.98px) {
  .gp-faq-list-type .accordion-body { /* for sm */
    font-size: 0.875rem;
  }
}

.gp-faq-list-type .panel.is-open .accordion-body {
  margin-block-start: 1rem;
}

/* 枠囲い */
.gp-box-content-type {
  margin-inline: auto;
}

.gp-box-item {
  border: var(--gp-border-color, #003D5C) solid 2px;
  margin-block-start: 1rem;
  padding: 1.5rem 1.25rem;
  border-radius: 0.625rem;
}
@media print, (min-width: 992px) {
  .gp-box-item { /* for lg */
    padding: 2.25rem 2.25rem;
    border-radius: 0.75rem;
  }
}

.gp-box-label {
  justify-content: center;
  margin-block-start: -1.5rem;
  padding: 0.75rem;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
}
@media print, (min-width: 992px) {
  .gp-box-label { /* for lg */
    font-size: 1.25rem;
  }
}

.gp-box-item.gp-figure-top .gp-box-inner {
  flex-direction: column;
}

.gp-box-item.gp-figure-right .gp-box-inner {
  flex-direction: row-reverse;
}

.gp-box-item.gp-figure-bottom .gp-box-inner {
  flex-direction: column-reverse;
}

.gp-box-inner .gp-figure {
  flex-shrink: 0;
  margin-inline-end: 1.5rem;
  margin-block-end: 0;
}

.gp-box-item.gp-figure-top .gp-figure {
  margin: 0 auto 1.5rem;
}
@media screen and (max-width: 991.98px) {
  .gp-box-item.gp-figure-top .gp-figure { /* for sm */
    width: auto;
  }
}

.gp-box-item.gp-figure-right .gp-figure {
  margin-inline: 1.5rem 0;
}

.gp-box-item.gp-figure-bottom .gp-figure {
  margin: 1.5rem auto 0;
}
@media screen and (max-width: 991.98px) {
  .gp-box-item.gp-figure-bottom .gp-figure { /* for sm */
    width: auto;
  }
}

.gp-box-inner .gp-p:first-child {
  margin-block-start: 0;
}

.gp-box-label-on-border {
  margin-block-start: 1.625rem;
  padding-block-start: 2.5rem;
}

.gp-box-label-on-border .gp-box-label {
  background-color: #fff;
  width: fit-content;
  margin-block-start: calc(-3.25rem - 15px);
  margin-block-end: 0.5rem;
  color: var(--gp-border-color, #003D5C);
}

/* タブ表示 */
.gp-tab-type .gp-tab-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.875rem;
}
@media screen and (max-width: 991.98px) {
  .gp-tab-type .gp-tab-list { /* for sm */
    gap: 0.75rem;
  }
}
@media print, (min-width: 992px) {
  .gp-tab-type .gp-tab-list { /* for lg */
    border-bottom: var(--gray-blue-color, #9BA4B8) solid 1px;
  }
}

.gp-tab-type .gp-tab-item {
  padding: 0.875rem;
  font-weight: 600;
  border-radius: 0.375rem;
}
@media screen and (max-width: 991.98px) {
  .gp-tab-type .gp-tab-item { /* for sm */
    margin-right: -1px;
  }
}

.gp-tab-type .gp-tab-item:not(.active) {
  color: var(--logo-color, #003D5C);
  cursor: pointer;
}
@media screen and (max-width: 991.98px) {
  .gp-tab-type .gp-tab-item:not(.active) { /* for sm */
    border: var(--gray-blue-color, #9BA4B8) solid 1px;
  }
}

.gp-tab-type .gp-tab-item.active {
  border: var(--gray-blue-color, #9BA4B8) solid 1px;
}
@media screen and (max-width: 991.98px) {
  .gp-tab-type .gp-tab-item.active { /* for sm */
    background-color: var(--logo-color, #003D5C);
    color: #fff;
  }
}
@media print, (min-width: 992px) {
  .gp-tab-type .gp-tab-item.active { /* for lg */
    border-bottom: #fff solid 1px;
    margin-bottom: -1px;
    border-radius: 0.375rem 0.375rem 0 0;
  }
}

.gp-tab-content {
  max-width: 0px;
  max-height: 0px;
  padding-block: 1px;
  overflow: hidden;
}

.gp-tab-content.show {
  max-width: 100%;
  max-height: none;
  overflow: visible;
}

@media screen and (max-width: 991.98px) {
  .gp-block[style*=background-color] { /* for sm */
    padding: 0.75rem 0.75rem 0.5rem;
  }
}
@media print, (min-width: 992px) {
  .gp-block[style*=background-color] { /* for lg */
    padding: 1.25rem 1.25rem 0.75rem;
  }
}

.gp-tab-content[style*=background-color]:not(.show) {
  padding: 0;
}

/* 専用タグ */
/* * [EX] */
.gp-tag-ex {
  padding-left: 1em;
  font-size: calc(1em - 1px);
  text-indent: -0.75em;
}

.gp-tag-ex::before {
  content: "*";
}

.gp-tag-ex + br {
  display: none;
}

/* パーツ同士の余白 */
@media screen and (max-width: 991.98px) {
  .gp-box-content-type:has(+ div),
  .gp-gallery-type:has(+ div) { /* for sm */
    margin-block-end: 1.75rem;
  }
}
@media print, (min-width: 992px) {
  .gp-box-content-type:has(+ div),
  .gp-gallery-type:has(+ div) { /* for lg */
    margin-block-end: 2.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .gp-slide-type:has(+ div) { /* for sm */
    margin-block-end: 1.5rem;
  }
}
@media print, (min-width: 992px) {
  .gp-slide-type:has(+ div) { /* for lg */
    margin-block-end: 2rem;
  }
}

/* general purpose - utility
---------------------------------------------------- */
/* テキスト配置 */
.gp-text-center {
  text-align: center;
}

/* width */
.gp-w-420px {
  width: 420px;
  max-width: 100%;
}

/* border style */
.gp-border-dotted {
  border-style: dotted;
}

.gp-border-dashed {
  border-style: dashed;
}

@media screen and (max-width: 991.98px) { /* for sm */ }
@media print, (min-width: 992px) { /* for lg */ }
/*!
 * SASS  :  sass/fb-form.scss
 * Modified  :  *******
 */
/* form
---------------------------------------------------- */
/* common */
@media screen and (max-width: 991.98px) {
  [type=text].form-control,
  [type=search].form-control { /* for sm */
    font-size: 1rem;
  }
}

label.flex- {
  width: fit-content;
}

:focus-visible {
  outline-color: var(--logo-color, #003D5C);
}

.form-control {
  border: var(--gray-blue-color, #9BA4B8) solid 1px;
  height: 36px;
  padding: 0.25rem 0.75rem;
  line-height: var(--line-height-sm, 1.25);
}
@media screen and (max-width: 991.98px) {
  .form-control { /* for sm */
    height: 40px;
  }
}

[type=search] {
  border-radius: 100vmax;
}
@media screen and (max-width: 991.98px) {
  [type=search] { /* for sm */
    width: 100%;
  }
}

.flex-row-reverse [type=search] {
  padding-left: 2.5rem;
  padding-right: 1.75rem;
}
@media screen and (max-width: 991.98px) {
  .flex-row-reverse [type=search] { /* for sm */
    padding-right: 2rem;
  }
}

.search-button {
  background: transparent none;
  border: none;
  flex-shrink: 0;
  position: relative;
  padding: 4px;
  cursor: pointer;
}

.search-box .search-button {
  translate: calc(100% + 0.5rem) 0;
}

.has-input + .search-cancel-button {
  display: grid;
}

.search-cancel-button {
  background-color: var(--logo-color, #003D5C);
  border: none;
  display: none;
  place-items: center;
  border-radius: 100vmax;
}

.search-cancel-button > .close-icon {
  filter: brightness(0%) invert(100%);
}

.search-box-group .search-cancel-button {
  position: absolute;
  right: 0.375rem;
  width: 22px;
  height: 22px;
}
@media screen and (max-width: 991.98px) {
  .search-box-group .search-cancel-button { /* for sm */
    right: 0.625rem;
    width: 24px;
    height: 24px;
  }
}
.search-box-group .search-cancel-button:hover {
  cursor: pointer;
}

input[type=search i]::-webkit-search-cancel-button {
  display: none;
}

[type=checkbox],
[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  background: #fff;
  border: 0;
  padding: 0;
  flex-shrink: 0;
  margin-left: 1px;
}
[type=checkbox]:hover,
[type=radio]:hover {
  cursor: pointer;
}

.in-label [type=checkbox],
.in-label [type=radio] {
  margin-left: 0;
}

[type=checkbox]:invalid,
[type=checkbox].invalid,
[type=checkbox].form-control:invalid,
[type=checkbox].form-control.invalid,
[type=checkbox].front-form-control:invalid,
[type=checkbox].front-form-control.invalid {
  padding: 0;
  background-size: 24px 24px;
}

[type=radio]:invalid,
[type=radio].invalid,
[type=radio].form-control:invalid,
[type=radio].form-control.invalid,
[type=radio].front-form-control:invalid,
[type=radio].front-form-control.invalid {
  padding: 0;
  background-size: 22px 22px;
}

[type=checkbox],
.checkbox {
  background: #fff url(../img/icon/check-box-icon.svg) center no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  border-radius: 5px;
}

[type=checkbox]:checked,
.checkbox:checked {
  background-image: url(../img/icon/check-box-icon-checked.svg);
}

.radio-button {
  background: #fff url(../img/icon/radio-button-icon.svg) center no-repeat;
  background-size: contain;
  width: 22px;
  height: 22px;
  border-radius: 100vmax;
}

.radio-button.mr-0\.5em + .front-form-label-radio {
  margin-left: -0.5em;
  padding-left: 0.5em;
}

.radio-button:checked {
  background-image: url(../img/icon/radio-button-icon-checked.svg);
}

.in-label [type=checkbox],
.type-select-size [type=radio] {
  background-image: none;
  border: var(--logo-color, #003D5C) solid 1px;
  border-radius: 5px;
}

.in-label [type=checkbox]:not([class*=bg-]):checked,
.type-select-size [type=radio]:not([class*=bg-]):checked {
  background-color: var(--logo-color, #003D5C);
  border: var(--logo-color, #003D5C) solid 1px;
}

.in-label > .cover-label {
  position: absolute;
  inset: 0;
  bottom: auto;
  display: grid;
  height: 40px;
  place-items: center;
  color: var(--logo-color, #003D5C);
}

.in-label [type=checkbox]:checked + .cover-label,
.type-select-size [type=radio]:checked + .cover-label {
  color: #fff;
}

.dropdown {
  cursor: pointer;
}

.dropdown-show-display {
  background-color: var(--gray-light-color, #F8F9FE);
  border: var(--gray-blue-color, #9BA4B8) solid 1px;
  border-radius: 8px;
  margin-left: auto;
  padding: 10px 20px 10px 10px;
  color: var(--text-color, #222);
}
@media screen and (max-width: 991.98px) {
  .dropdown-show-display { /* for sm */
    height: 40px;
    max-width: calc(100vw - 112px - 60px);
    padding: 10px 12px 10px 10px;
  }
}
@media screen and (max-width: 374px) {
  .dropdown-show-display { /* for sm */
    height: 42px;
    max-width: calc(100vw - 112px - 40px);
    padding: 10px 10px 10px 8px;
    line-height: 1.1;
    transform: translateY(-1px);
  }
}
@media print, (min-width: 992px) {
  .dropdown-show-display { /* for lg */
    height: 48px;
  }
}

@media screen and (max-width: 390px) {
  html[lang=de] { /* for sm */ }
  html[lang=de] .dropdown-show-display {
    padding: 10px 8px 10px 5px;
  }
  html[lang=de] .nowrap:has(+ .dropdown-selected-display) {
    flex-shrink: 0;
    width: 5.2em;
    white-space: normal;
  }
}

html[lang=ja] .utility-ctrl .btn-filter {
  font-feature-settings: "palt";
}
@media screen and (max-width: 991.98px) {
  html[lang=ja] .utility-ctrl .btn-filter { /* for sm */
    letter-spacing: -1px;
  }
}

.dropdown-list {
  position: absolute;
  right: 0;
  display: none;
  border: var(--logo-color, #003D5C) solid 1px;
  border-radius: 8px;
  overflow: hidden;
  z-index: 1;
}
@media screen and (max-width: 991.98px) {
  .dropdown-list { /* for sm */
    top: 40px;
  }
}
@media print, (min-width: 992px) {
  .dropdown-list { /* for lg */
    top: 48px;
  }
}

.dropdown-list.is-open {
  display: block;
}

.dropdown-item {
  background-color: #fff;
  border: none;
  display: grid !important;
  grid-template-columns: auto 7px;
  gap: 1rem;
  width: 100%;
  padding: 1rem 1.25rem;
  text-align: left;
  color: var(--text-color, #222);
}
@media screen and (max-width: 991.98px) {
  .dropdown-item { /* for sm */
    height: 52px;
    padding: 0.875rem 1.125rem;
  }
}
@media print, (min-width: 992px) {
  .dropdown-item { /* for lg */
    height: 60px;
    padding: 1rem 1.25rem;
  }
}
.dropdown-item:hover {
  cursor: pointer;
}

.dropdown-item:not(:first-child) {
  border-top: var(--logo-color, #003D5C) solid 1px;
}

.dropdown-item:hover {
  background-color: var(--logo-color, #003D5C);
  color: #fff;
}

.dropdown-item:hover .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

select.form-control {
  background: #fff url(../img/icon/arw-bottom.svg) center no-repeat;
  background-position: right 0.5rem center;
  border: var(--logo-color, #003D5C) solid 1px;
  border-radius: 5px;
  min-width: 4rem;
  height: 40px;
  padding: 0.5rem 2rem 0.5rem 1rem;
  appearance: none !important;
}

select.form-control.invalid {
  border: var(--red-text-color, #C50000) solid 2px;
}

select.form-control.attention {
  animation: form-attention 5s ease-out forwards;
}

select.text-center {
  text-align-last: center;
}

textarea.form-control,
.textarea.form-control,
textarea.front-form-control,
.textarea.front-form-control {
  border: var(--gray-blue-color, #9BA4B8) solid 2px;
  border-radius: 5px;
  width: 100%;
  min-height: 50px;
  padding: 0.75rem 1.25rem;
  font-size: 1rem;
  color: var(--logo-color, #003D5C);
  border-radius: 5px;
}

textarea.bg-blue,
.textarea.bg-blue {
  background-color: var(--gray-light-color, #F8F9FE);
}

.textarea.form-control:empty:before {
  content: attr(placeholder);
  color: var(--gray-blue-color, #9BA4B8);
}

/* page-sign-in */
section.page-sign-in {
  padding: 0 1.25rem 2.5rem;
}

.member-form {
  background-color: #F8F9FE;
  border-radius: 20px;
  margin: 2.5rem auto 0;
  padding: 3.75rem 0;
}

.form-text-red {
  color: #C50000;
}

.member-form .member-form-inner {
  width: 400px;
  margin: auto;
}

.front-form-group .front-form-label:not(.select-label-wrapping),
.select-label-wrapping.required > .use-multilingual_caption {
  display: inline-block;
  position: relative;
  font-size: 1.125rem;
  margin-bottom: 0.25rem;
}

.front-form-group .front-form-label.col-4 {
  text-wrap-mode: wrap;
}

.front-form-group .front-form-label.cs-label-upload {
  text-wrap-mode: wrap;
}

/* required--回答必須アイコン */
.front-form-label.required:not(.select-label-wrapping)::after {
  position: absolute;
  content: "*";
  display: inline-block;
  top: 3px;
  right: -13px;
  color: #C50000;
  font-style: normal;
}

.select-label-wrapping.required > .use-multilingual_caption::after {
  position: absolute;
  content: "*";
  display: inline-block;
  top: 3px;
  right: -13px;
  color: #C50000;
  font-style: normal;
}

.front-form-group .front-form-control {
  border: var(--gray-blue-color, #9BA4B8) solid 2px;
  border-radius: 5px;
  color: var(--logo-color, #003D5C);
  padding: 0.25rem 1rem;
  font-size: 1rem;
  width: 100%;
  height: 54px;
}
@media print, (min-width: 992px) {
  .front-form-group .front-form-control { /* for lg */
    padding-left: 1.125rem;
    font-weight: 500;
  }
}

.front-form-control.-date {
  letter-spacing: 1px;
}

.front-form-group .front-form-control.h-166px {
  height: 166px;
}

.front-form-control:focus-visible {
  border: var(--logo-color, #003D5C) solid 2px;
  outline: none;
}

/* invalid--入力フォーム エラーデザイン */
.front-form-control.invalid,
.front-form-control.bg-blue.invalid,
.form-control.invalid,
.form-control.bg-blue.invalid {
  border: #C50000 solid 2px;
  background-color: #fff;
  outline: none;
}

.radio-button.invalid:focus-visible {
  outline-width: 2px;
  outline-style: solid;
}

/* text-feedback--フォーム エラーテキスト */
.front-group-radio .text-feedback,
.front-form-group .text-feedback {
  color: #C50000;
  margin-top: 0.5rem;
}

.form-blue-button {
  background-color: var(--logo-color, #003D5C);
  color: #fff;
  width: 400px;
  height: 80px;
  font-size: 1.125rem;
  transition: all 0.16s;
}

.form-blue-button:focus-visible {
  outline-offset: 2px;
  outline-color: ButtonText;
}

.form-blue-button:disabled {
  background-color: var(--gray-safe-color, #767676) !important;
  color: #fff !important;
  opacity: 1 !important;
  cursor: not-allowed;
}

.btn.has-arw-r:disabled:hover > .icon-arw-next {
  filter: brightness(0%) invert(100%) !important;
}

.form-blue-button:hover {
  background-color: #fff;
  color: var(--logo-color, #003D5C);
  border: solid 1px;
}

.btn.form-blue-button:not(.next-button, .prev-button):hover {
  background-color: #fff;
  color: var(--logo-color, #003D5C);
  border: solid 1px;
}

.form-orange-button {
  background-color: #d83827;
  color: #fff;
  height: 80px;
  font-size: 1.125rem;
  transition: all 0.16s;
}
@media screen and (max-width: 991.98px) {
  .form-orange-button { /* for sm */
    width: 100%;
  }
}
@media print, (min-width: 992px) {
  .form-orange-button { /* for lg */
    width: 400px;
  }
}

.form-orange-button:hover {
  background-color: #fff;
  color: #d83827;
  border: solid 1px;
}

.btn.form-orange-button:not(.next-button, .prev-button):hover {
  background-color: #fff;
  color: #d83827;
  border: solid 1px;
}

.member-form .front-form-group + .front-form-group {
  margin-top: 1.25rem;
}

.member-sign-in .form-blue-button {
  margin-top: 1.25rem;
}

.new-customer {
  border: var(--logo-color, #003D5C) solid 1px;
  border-radius: 20px;
  padding: 3.75rem;
}

.form-link-text {
  margin-top: 1.25rem;
}

.mt-1rem .form-link-text {
  margin-top: 0;
}

@media print, (min-width: 992px) { /* for lg */
  .member-sign-in, .new-customer {
    margin-top: 3.75rem;
  }
  .member-sign-in .form-blue-button,
  .new-customer .form-blue-button {
    width: 300px;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.page-sign-in {
    padding: 0 1.25rem;
  }
  .page-sign-in h3 {
    font-size: 1.125rem;
  }
  .member-form .member-form-inner {
    width: 100%;
    margin: auto;
  }
  .member-form {
    margin: 2.5rem -1.25rem 0;
    padding: 2.5rem 1.25rem;
    border-radius: 0;
  }
  .front-form-group .text-feedback {
    font-size: 0.875rem;
  }
  .front-form-label.required::after {
    top: 2px;
  }
  .front-form-group .front-form-label {
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }
  .form-blue-button {
    width: 100%;
    height: 60px;
    font-size: 1rem;
  }
  .new-customer {
    margin-top: 3.75rem;
    padding: 2.5rem 1.25rem;
    border-radius: 10px;
  }
  .form-link-text {
    font-size: 0.875rem;
  }
  .front-form-group .front-form-control {
    height: 48px;
  }
}
@media screen and (max-width: 359px) { /* for sm */
  .front-form-group .front-form-label {
    font-size: 0.875rem;
    margin-bottom: 0.625rem;
  }
}
/* page-sign-in-pin */
section.page-sign-in-pin {
  padding: 0 1.25rem 2.5rem;
}

.page-sign-in-pin .sign-in-address,
.my-page .sign-in-address {
  background-color: #F8F9FE;
  border-radius: 10px;
  padding: 1.25rem;
  margin-top: 2.75rem;
}

.sign-in-address dd {
  margin-left: 1.25rem;
}

.sign-in-pin .pincode-form {
  margin: 3.125rem auto 6.25rem;
}

.pincode-form .box-pincode {
  gap: 20px;
}

.box-pincode .front-form-control {
  width: 90px;
  height: 100px;
  padding: 0.375rem 1px;
  font-size: 2.5rem;
  text-align: center;
}

.box-pincode .front-form-control.bg-blue.invalid {
  color: #C50000;
}

.sign-in-pin .area-pin-button {
  width: 740px;
  margin: 6.25rem auto 3.75rem;
}

.form-white-button {
  border: var(--logo-color, #003D5C) solid 1px;
  color: var(--logo-color, #003D5C);
  height: 80px;
  font-size: 1.125rem;
  transition: all 0.16s;
}

.form-white-button:hover {
  color: #fff;
}

.area-pin-button .pin-resend-group {
  gap: 0 60px;
  margin-top: 3.75rem;
}

.pin-resend-group .form-white-button {
  height: 50px;
  font-size: 1rem;
}
@media print, (min-width: 992px) {
  .pin-resend-group .form-white-button { /* for lg */
    min-width: 200px;
  }
}

.front-form-group .btn.has-arw-l .icon-arw-next {
  rotate: 0deg;
}

.front-form-group .btn.has-arw-l,
.front-form-group .btn.has-arw-r {
  justify-content: space-between;
}

.front-form-group .btn.has-arw-l::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 14px;
}

.form-white-button.has-arw-l:hover > .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

.form-blue-button .icon-arw-next,
.form-orange-button .icon-arw-next {
  filter: brightness(0%) invert(100%);
}

.form-blue-button.has-arw-r:hover > .icon-arw-next,
.form-orange-button.has-arw-r:hover > .icon-arw-next {
  filter: unset;
}

@media print, (min-width: 992px) { /* for lg */
  .front-form-group .btn.has-arw-l::after,
  .front-form-group .has-arw-l .icon-arw-next {
    margin: 0 0.75rem;
  }
  .pin-button-group .btn {
    width: 340px;
    padding: 0 1.125rem;
  }
  .sign-in-pin .pin-button-group {
    gap: 60px;
  }
  .pin-button-group .front-form-group {
    margin-top: 0;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.page-sign-in-pin {
    padding: 0 1.25rem;
  }
  .page-sign-in-pin .sign-in-address,
  .my-page .sign-in-address {
    margin-top: 2.5rem;
  }
  .form-white-button {
    width: 100%;
    height: 60px;
    font-size: 1rem;
  }
  .pincode-form .box-pincode {
    gap: 7px;
  }
  .box-pincode .front-form-control {
    font-size: 1.5rem;
  }
  .box-pincode .front-form-control {
    width: 100%;
    height: 60px;
    max-width: 50px;
  }
  .sign-in-pin .pincode-form {
    width: 100%;
    margin: 2.5rem auto 3.75rem;
  }
  .sign-in-address dd {
    margin-left: 0;
  }
  .sign-in-pin .area-pin-button {
    width: 100%;
    margin: 3.75rem auto 2.75rem;
  }
  .area-pin-button .pin-resend-group {
    margin-top: 2.5rem;
  }
  .pin-resend-group p {
    text-align: center;
    margin-bottom: 1.25rem;
  }
  .pin-resend-group .form-white-button {
    width: 100%;
    height: 60px;
  }
  .page-sign-in-pin .guide-list li {
    font-size: 0.875rem;
  }
}
/* page-password-reset */
section.page-password-reset {
  padding: 0 1.25rem 2.5rem;
}

.front-form-group {
  margin-top: 1rem;
}
@media print, (min-width: 992px) {
  .front-form-group { /* for lg */
    margin-top: 1.375rem;
  }
}

.input-row .front-form-group {
  width: 100%;
  margin-top: 0;
}

.front-form-group:first-child {
  margin-top: 0;
}

@media print, (min-width: 992px) { /* for lg */
  .front-form-inner {
    width: 640px;
    margin: auto;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-reset {
    padding: 0 1.25rem;
  }
}
/* page-password-change-pin */
section.page-password-change-pin {
  padding: 0 1.25rem 2.5rem;
}

@media print, (min-width: 992px) { /* for lg */
  .page-password-change-pin .sign-in-pin .pincode-form {
    margin: 5rem auto 6.25rem;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-change-pin {
    padding: 0 1.25rem;
  }
  .area-pin-button .flex-column-reverse-sm .front-form-group:first-child {
    margin-top: 1.25rem;
  }
}
/* page-password-change */
section.page-password-change {
  padding: 0 1.25rem 2.5rem;
}

.front-form-group .text-detail {
  margin-top: 0.625rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-change {
    padding: 0 1.25rem;
  }
  .front-form-group .text-detail {
    font-size: 0.875rem;
  }
}
/* page-password-fix */
section.page-password-fix {
  padding: 0 1.25rem 2.5rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-fix {
    padding: 0 1.25rem;
  }
}
/* page-password-registration */
section.page-password-registration {
  padding: 0 1.25rem 2.5rem;
}

.front-form-group .text-detail {
  margin-top: 0.625rem;
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-registration {
    padding: 0 1.25rem;
  }
  .front-form-group .text-detail {
    font-size: 0.875rem;
  }
}
/* page-password-registration-fix */
section.page-password-registration-fix {
  padding: 0 1.25rem 2.5rem;
}

.customer-service-list {
  width: 100%;
  grid-template-columns: auto 1fr;
  margin-top: 2.8rem;
  border-top: var(--logo-color, #003D5C) solid 7px;
  background-color: #F8F9FE;
}

.customer-service-list dt {
  font-size: 1.125rem;
  padding: 1.5rem 2.5rem;
  border-left: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.customer-service-list dd {
  font-size: 1.125rem;
  padding: 1.5rem 2.5rem 1.5rem 0;
  border-right: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.customer-service-list dd a {
  font-weight: 400;
}

@media print, (min-width: 992px) { /* for lg */
  .customer-service {
    width: 640px;
    margin: auto;
  }
}
@media screen and (max-width: 991.98px) { /* for sm */
  section.page-password-registration-fix {
    padding: 0 1.25rem;
  }
  .page-password-registration-fix h3 {
    font-size: 1.125rem;
  }
  .customer-service-list {
    margin-top: 1.5rem;
  }
  .customer-service-list dt {
    padding: 1.25rem;
  }
  .customer-service-list dd {
    padding: 1.25rem 1.25rem 1.25rem 0;
  }
  .customer-service-list dd:last-child {
    padding-bottom: 1.875rem;
  }
  .customer-service-list dt,
  .customer-service-list dd {
    font-size: 1rem;
  }
}
/* page-membership */
section.page-membership {
  padding: 0 1.25rem 2.5rem;
}

.front-form-group .front-form-label-radio {
  font-size: 1.125rem;
}

.page-membership .front-group-radio {
  margin-bottom: 3.75rem;
}

/* ラジオボタン デザイン */
.front-form-group input[type=radio] {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  position: relative;
  margin-right: 10px;
  padding: 0;
  border: none;
}

.front-form-group input[type=radio]::before,
.front-form-group input[type=radio]::after {
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

.front-form-group input[type=radio]::before {
  background-color: #fff;
  border: var(--logo-color, #003D5C) solid 2px;
  height: 22px;
  width: 22px;
  left: 0px;
}

.front-form-group input[type=radio]::after {
  background-color: var(--logo-color, #003D5C);
  opacity: 0;
  height: 14px;
  width: 14px;
  left: 4px;
  transition: 0.2s;
}

.front-form-group input[type=radio]:checked::after {
  opacity: 1;
}

.front-form-group input[type=radio] + .front-form-label-radio {
  margin-left: -10px;
  padding-left: 10px;
}

/* ラジオボタン デザイン ここまで*/
.front-form-group .front-select-width.-country {
  width: 400px;
}

.front-select-width .icon-arw-down {
  position: absolute;
  right: 30px;
  top: 40%;
  transform: rotate(270deg);
}

.front-select-width .front-form-control {
  -webkit-appearance: none;
  appearance: none;
  padding: 0;
}

.front-select-width .front-form-control::-ms-expand {
  display: none;
}

.front-select-width .front-form-control {
  background-image: url(../img/icon/arw-bottom.svg);
  background-repeat: no-repeat;
  background-position: right 0.5rem center;
}

.front-form-group .front-input-list {
  gap: 20px;
}

.front-form-group .front-form-control::placeholder {
  color: var(--gray-blue-color, #9BA4B8);
  font-weight: 300;
}

.front-form-group .front-input-list.-tel {
  grid-template-columns: 120px 20px 220px;
}

.front-form-group .front-input-list.-tel .phone_number_label {
  font-size: 0.79rem;
}

.front-form-group .front-input-list.-tel .tel_hyphen {
  margin-top: 44px;
}

.front-input-list hr {
  height: 2px;
  border: none;
  background-color: var(--logo-color, #003D5C);
}

.front-form-group .front-input-list.-date {
  grid-template-columns: 140px 120px 120px;
}

.front-form-group .small-label {
  font-size: 0.79rem;
}

.front-form-control::-webkit-inner-spin-button,
.front-form-control::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: textfield;
}

@media screen and (max-width: 991.98px) { /* for sm */
  section.page-membership {
    padding: 0 1.25rem;
  }
  .page-membership .front-group-radio {
    margin-bottom: 2.5rem;
  }
  .front-form-group .front-form-label-radio {
    font-size: 1rem;
  }
  .front-group-radio .front-form-group .front-form-label-radio {
    padding-left: 0.625rem;
  }
  .front-form-group .front-select-width.-country {
    width: 100%;
  }
  .front-form-group .front-input-list.-tel {
    grid-template-columns: 100px 10px auto;
  }
  .front-form-group .front-input-list {
    gap: 10px;
  }
  .front-form-group .front-input-list.-date {
    grid-template-columns: 115px auto auto;
  }
  .front-select-width .icon-arw-down {
    right: 25px;
  }
  .front-form-label.-eraname {
    margin-bottom: 1.25rem;
  }
  .cancel-membership .area-pin-button .front-form-group:first-child {
    margin-top: 2.5rem;
  }
}
/* radio checked content switch */
.radio-switch-group .js-radio-switch-content:not(.show) {
  display: none;
}

/* .form-massage-box */
.form-massage-box {
  background-color: rgba(197, 0, 0, 0.05);
  background-color: rgba(226, 224, 215, 0.3);
  border: var(--red-text-color, #C50000) solid 3px;
  border-radius: 0.5rem;
  max-width: 1366px;
  margin-left: auto;
  margin-right: auto;
}
@media print, (min-width: 992px) {
  .form-massage-box { /* for lg */
    border-width: 4px;
  }
}

.contents > .form-massage-box {
  margin-top: 2.5rem;
}
@media screen and (max-width: 991.98px) {
  .contents > .form-massage-box { /* for sm */
    margin-left: 0.75rem;
    margin-right: 0.75rem;
  }
}

/* body.cannot-location-change */
.cannot-location-change .area-select,
.cannot-location-change .country-select,
.cannot-location-change .state-select {
  background-color: #a8a8a8 !important;
  color: #fff;
  opacity: 0.45;
  filter: grayscale(0.66);
  pointer-events: none;
}

.cannot-location-change .front-select-width:has(.area-select),
.cannot-location-change .front-select-width:has(.country-select),
.cannot-location-change .front-select-width:has(.state-select) {
  cursor: not-allowed;
}

.cannot-location-change .location-notion-text {
  display: block !important;
}

/* form utility */
.front-form-control.bg-blue,
.front-form-control.bg-blue:read-only {
  background-color: var(--gray-light-color, #F8F9FE);
}

.front-form-control:disabled,
.front-form-control.bg-blue:disabled,
.front-form-control.bg-blue.invalid:disabled {
  background-color: var(--gray-color, #ccc);
}

.front-form-control:read-only,
.front-form-control.bg-blue.invalid:read-only {
  background-color: #fff;
}

.front-form-control.bg-blue::placeholder {
  color: #67718E;
}

@media print, (min-width: 992px) {
  .form-bg-group { /* for lg */
    border-radius: 20px;
  }
}
@media screen and (max-width: 991.98px) {
  .form-bg-group { /* for sm */
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}

/*!
 * SASS  :  sass/fb-utility.scss
 * Modified  :  *******
 */
/* utility */
.setting,
.phase2 {
  display: none !important;
}

.event-none {
  pointer-events: none;
}

.ellipsis {
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.filter-grayscale-1 {
  filter: grayscale(1);
}

/* display */
.block,
.block-link {
  display: block;
}

.table {
  display: table;
}

.inline-block,
.inline-link {
  display: inline-block;
}

.inline-flex {
  display: inline-flex;
}

.off {
  display: none;
  z-index: -1;
}

.off-imp {
  display: none !important;
  z-index: -1;
}

@media print, (min-width: 992px) { /* for lg */
  .inline-lg {
    display: inline-block;
  }
  .block-lg {
    display: block;
  }
}
/* visibility & opacity */
.visibility-hidden {
  visibility: hidden;
}

.visibility-visible {
  visibility: visible;
}

.opacity-0 {
  opacity: 0;
}

.opacity-1 {
  opacity: 1;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .visibility-hidden-sm {
    visibility: hidden;
  }
  .visibility-visible-sm {
    visibility: visible;
  }
  .opacity-0-sm {
    opacity: 0;
  }
  .opacity-1-sm {
    opacity: 1;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .visibility-hidden-lg {
    visibility: hidden;
  }
  .visibility-visible-lg {
    visibility: visible;
  }
  .opacity-0-lg {
    opacity: 0;
  }
  .opacity-1-lg {
    opacity: 1;
  }
}
/* fade */
.fade {
  opacity: 0;
  transition: opacity 1s;
}

.fade-in {
  opacity: 1;
  -moz-transition: opacity 1.2s, transform 0.7s;
  -webkit-transition: opacity 1.2s, transform 0.7s;
  -ms-transition: opacity 1.2s, transform 0.7s;
  transition: opacity 1.2s, transform 0.7s;
}

.fade-in:nth-child(2),
.fade-in:nth-child(even) {
  transition-delay: 0.15s;
}

@media print, (min-width: 992px) { /* for lg */
  .fade-in:nth-child(3) {
    transition-delay: 0.3s;
  }
  .fade-in:nth-child(4) {
    transition-delay: 0.45s;
  }
  .fade-in:nth-child(5) {
    transition-delay: 0.6s;
  }
  .fade-in:nth-child(6) {
    transition-delay: 0.75s;
  }
  .fade-in:nth-child(7) {
    transition-delay: 0.9s;
  }
  .fade-in:nth-child(8) {
    transition-delay: 1.05s;
  }
  .fade-in:nth-child(9) {
    transition-delay: 1.2s;
  }
}
/* position */
.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fixed { /*position: fixed*/ }

/* layout */
.centered,
.x-auto {
  margin-left: auto;
  margin-right: auto;
}

.y-auto {
  margin-top: auto;
  margin-bottom: auto;
}

.margin-auto {
  margin: auto;
}

.mt-auto {
  margin-top: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

/* border */
.border-bottom {
  border-bottom: var(--gray-color) solid 1px;
}

.border-bottom-logo {
  border-bottom: var(--logo-color, #003D5C) solid 1px;
}

.border {
  border: solid 1px;
}

.border-color-light-gray {
  border-color: var(--gray-color);
}

.border-color-logo {
  border-color: var(--logo-color, #003D5C);
}

.border-bold {
  border-width: 2px;
}

.border-none,
.content .border-none {
  border: none !important;
}

.border-top {
  border-top: var(--gray-color, #ccc) solid 1px;
}

.border-y {
  border-top: var(--gray-color, #ccc) solid 1px;
  border-bottom: var(--gray-color, #ccc) solid 1px;
}

.border-radius-sm {
  border-radius: 5px;
}

.border-radius-md {
  border-radius: 10px;
}

.border-radius-lg {
  border-radius: 1rem;
}

.border-radius-xl {
  border-radius: 1.25rem;
}

/* img */
.fit-cover {
  object-fit: cover;
}

.fit-cover.height100 {
  height: 100%;
}

/* list-style */
.list-inline > .item {
  display: inline-block;
}

.list-inline > .item + .item {
  margin-left: 1.3em;
}

.list-mark {
  margin-left: 1em;
}

.list-mark::before {
  content: "・";
  display: inline-block;
  width: 1em;
  margin-left: -1em;
  margin-right: -3px;
}

.list-padding-y-0 {
  --list-padding-y: 0;
}

.list-padding-y-0\.125rem {
  --list-padding-y: 0.125rem;
}

.list-padding-y-0\.25rem {
  --list-padding-y: 0.25rem;
}

.list-padding-y-0\.375rem {
  --list-padding-y: 0.375rem;
}

/* clear */
.clear {
  clear: both;
}

.clearfix::after {
  clear: both;
  content: " ";
  display: block;
}

/* radius */
.cols-radius-large .col a {
  border-radius: 2rem;
  overflow: hidden;
}

.cols-circle-clip .col figure {
  border-radius: 50%;
  overflow: hidden;
}

/* shadow */
.shadow {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
}

.shadow-drop {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

[class*=shadow] > img {
  vertical-align: bottom;
}

/* box space */
.mt--0\.25rem {
  margin-top: -0.25rem;
}

.mt--0\.5rem {
  margin-top: -0.5rem;
}

.mp-0 {
  margin: 0 !important;
  padding: 0 !important;
}

.m-0 {
  margin: 0;
}

.mx-0 {
  margin-left: 0;
  margin-right: 0;
}

.my-0 {
  margin-top: 0;
  margin-bottom: 0;
}

.mt-0 {
  margin-top: 0;
}

.ml-0 {
  margin-left: 0;
}

.mr-0 {
  margin-right: 0;
}

.mb-0 {
  margin-bottom: 0;
}

.mt-0\.5em {
  margin-top: 0.5em;
}

.mb-0\.5em {
  margin-bottom: 0.5em;
}

.ml-0\.5em {
  margin-left: 0.5em;
}

.mr-0\.5em {
  margin-right: 0.5em;
}

.mx-1em {
  margin-left: 1em;
  margin-right: 1em;
}

.my-1em {
  margin-top: 1em;
  margin-bottom: 1em;
}

.mb-1em {
  margin-bottom: 1em;
}

.mt-1em {
  margin-top: 1em;
}

.ml-1em {
  margin-left: 1em;
}

.mr-1em {
  margin-right: 1em;
}

.mb-1\.5em {
  margin-bottom: 1.5em;
}

.mt-1\.5em {
  margin-top: 1.5em;
}

.mx-2em {
  margin-left: 2em;
  margin-right: 2em;
}

.my-2em {
  margin-top: 2em;
  margin-bottom: 2em;
}

.mb-2em {
  margin-bottom: 2em;
}

.mt-2em {
  margin-top: 2em;
}

.ml-2em {
  margin-left: 2em;
}

.mr-2em {
  margin-right: 2em;
}

.mx-3em {
  margin-left: 3em;
  margin-right: 3em;
}

.my-3em {
  margin-top: 3em;
  margin-bottom: 3em;
}

.mt-3em {
  margin-top: 3em;
}

.mb-3em {
  margin-bottom: 3em;
}

.mx-4em {
  margin-left: 4em;
  margin-right: 4em;
}

.my-4em {
  margin-top: 4em;
  margin-bottom: 4em;
}

.mt-4em {
  margin-top: 4em;
}

.mb-4em {
  margin-bottom: 4em;
}

.mt-0\.25rem {
  margin-top: 0.25rem;
}

.mb-0\.25rem {
  margin-bottom: 0.25rem;
}

.ml-0\.25rem {
  margin-left: 0.25rem;
}

.mr-0\.25rem {
  margin-right: 0.25rem;
}

.mt-0\.375rem {
  margin-top: 0.375rem;
}

.mb-0\.375rem {
  margin-bottom: 0.375rem;
}

.my-0\.5rem {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.mt-0\.5rem {
  margin-top: 0.5rem;
}

.mb-0\.5rem {
  margin-bottom: 0.5rem;
}

.ml-0\.5rem {
  margin-left: 0.5rem;
}

.mr-0\.5rem {
  margin-right: 0.5rem;
}

.my-0\.75rem {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.mt-0\.75rem {
  margin-top: 0.75rem;
}

.mb-0\.75rem {
  margin-bottom: 0.75rem;
}

.ml-0\.75rem {
  margin-left: 0.75rem;
}

.mr-0\.75rem {
  margin-right: 0.75rem;
}

.my-1rem {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.mt-1rem {
  margin-top: 1rem;
}

.mb-1rem {
  margin-bottom: 1rem;
}

.ml-1rem {
  margin-left: 1rem;
}

.mr-1rem {
  margin-right: 1rem;
}

.my-1\.25rem {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.mx-1\.25rem {
  margin-right: 1.25rem;
  margin-left: 1.25rem;
}

.mt-1\.25rem {
  margin-top: 1.25rem;
}

.mb-1\.25rem {
  margin-bottom: 1.25rem;
}

.ml-1\.25rem {
  margin-left: 1.25rem;
}

.mr-1\.25rem {
  margin-right: 1.25rem;
}

.mt-1\.5rem {
  margin-top: 1.5rem;
}

.mb-1\.5rem {
  margin-bottom: 1.5rem;
}

.ml-1\.5rem {
  margin-left: 1.5rem;
}

.mr-1\.5rem {
  margin-right: 1.5rem;
}

.mt-1\.75rem {
  margin-top: 1.75rem;
}

.mb-1\.75rem {
  margin-bottom: 1.75rem;
}

.ml-1\.75rem {
  margin-left: 1.75rem;
}

.mr-1\.75rem {
  margin-right: 1.75rem;
}

.mt-2rem {
  margin-top: 2rem;
}

.ml-2rem {
  margin-left: 2rem;
}

.mr-2rem {
  margin-right: 2rem;
}

.mb-2rem {
  margin-bottom: 2rem;
}

.my-2\.5rem {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.mt-2\.5rem {
  margin-top: 2.5rem;
}

.ml-2\.5rem {
  margin-left: 2.5rem;
}

.mb-2\.5rem {
  margin-bottom: 2.5rem;
}

.mt-3rem {
  margin-top: 3rem;
}

.mb-3rem {
  margin-bottom: 3rem;
}

.mt-4rem {
  margin-top: 4rem;
}

.mb-4rem {
  margin-bottom: 4rem;
}

.mb-10px {
  margin-bottom: 0.625rem;
}

.mb-40px {
  margin-bottom: 2.5rem;
}

.p-0 {
  padding: 0;
}

.px-0 {
  padding-left: 0;
  padding-right: 0;
}

.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.pt-0 {
  padding-top: 0;
}

.pb-0 {
  padding-bottom: 0;
}

.pl-0 {
  padding-left: 0;
}

.pr-0 {
  padding-right: 0;
}

.px-0\.5em {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.py-0\.5em {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.pt-0\.5em {
  padding-top: 0.5em;
}

.pb-0\.5em {
  padding-bottom: 0.5em;
}

.p-1em {
  padding: 1em;
}

.px-1em {
  padding-left: 1em;
  padding-right: 1em;
}

.py-1em {
  padding-top: 1em;
  padding-bottom: 1em;
}

.pt-1em {
  padding-top: 1em;
}

.pb-1em {
  padding-bottom: 1em;
}

.pl-1em {
  padding-left: 1em;
}

.pr-1em {
  padding-right: 1em;
}

.px-2em {
  padding-left: 2em;
  padding-right: 2em;
}

.py-2em {
  padding-top: 2em;
  padding-bottom: 2em;
}

.pt-2em {
  padding-top: 2em;
}

.pb-2em {
  padding-bottom: 2em;
}

.pl-2em {
  padding-left: 2em;
}

.pr-2em {
  padding-right: 2em;
}

.px-3em {
  padding-left: 3em;
  padding-right: 3em;
}

.py-3em {
  padding-top: 3em;
  padding-bottom: 3em;
}

.pt-3em {
  padding-top: 3em;
}

.pb-3em {
  padding-bottom: 3em;
}

.pt-4em {
  padding-top: 4em;
}

.pb-4em {
  padding-bottom: 4em;
}

.p-0\.25rem {
  padding: 0.25rem;
}

.py-0\.25rem {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.px-0\.25rem {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.pt-0\.25rem {
  padding-top: 0.25rem;
}

.pb-0\.25rem {
  padding-bottom: 0.25rem;
}

.pl-0\.25rem {
  padding-left: 0.25rem;
}

.pr-0\.25rem {
  padding-right: 0.25rem;
}

.p-0\.5rem {
  padding: 0.5rem;
}

.px-0\.5rem {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.pt-0\.5rem {
  padding-top: 0.5rem;
}

.pb-0\.5rem {
  padding-bottom: 0.5rem;
}

.pl-0\.5rem {
  padding-left: 0.5rem;
}

.pr-0\.5rem {
  padding-right: 0.5rem;
}

.px-0\.75rem {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.pt-0\.75rem {
  padding-top: 0.75rem;
}

.pb-0\.75rem {
  padding-bottom: 0.75rem;
}

.p-1rem {
  padding: 1rem;
}

.px-1rem {
  padding-left: 1rem;
  padding-right: 1rem;
}

.py-1rem {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.pt-1rem {
  padding-top: 1rem;
}

.pb-1rem {
  padding-bottom: 1rem;
}

.pl-1rem {
  padding-left: 1rem;
}

.pr-1rem {
  padding-right: 1rem;
}

.pt-1\.25rem {
  padding-top: 1.25rem;
}

.pb-1\.25rem {
  padding-bottom: 1.25rem;
}

.px-1\.25rem {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.pl-1\.25rem {
  padding-left: 1.25rem;
}

.pr-1\.25rem {
  padding-right: 1.25rem;
}

.pl-1\.5rem {
  padding-left: 1.5rem;
}

.pr-1\.5rem {
  padding-right: 1.5rem;
}

.px-1\.75rem {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}

.pt-1\.75rem {
  padding-top: 1.75rem;
}

.pb-1\.75rem {
  padding-bottom: 1.75rem;
}

.pl-1\.75rem {
  padding-left: 1.75rem;
}

.pr-1\.75rem {
  padding-right: 1.75rem;
}

.px-2rem {
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-2rem {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pt-2rem {
  padding-top: 2rem;
}

.pb-2rem {
  padding-bottom: 2rem;
}

.pl-2rem {
  padding-left: 2rem;
}

.pr-2rem {
  padding-right: 2rem;
}

.py-2\.5rem {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.pt-2\.5rem {
  padding-top: 2.5rem;
}

.pb-2\.5rem {
  padding-bottom: 2.5rem;
}

.px-3rem {
  padding-left: 3rem;
  padding-right: 3rem;
}

.py-3rem {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.pb-2px {
  padding-bottom: 2px;
}

/* width */
.w-fit-content {
  width: fit-content;
}

.w-40px {
  width: 40px;
}

.w-1366px {
  width: var(--contents-max-width, 1366px);
}

@media screen and (max-width: 991.98px) { /* for sm */
  .w-80px-sm {
    width: 80px;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .w-200px-lg {
    width: 200px;
  }
  .w-280px-lg {
    width: 280px;
  }
  .w-340px-lg {
    width: 340px;
  }
  .w-380px-lg {
    width: 380px;
  }
  .w-400px-lg {
    width: 400px;
  }
  .w-640px-lg {
    width: 640px;
  }
  .w-900px-lg {
    width: 900px;
  }
  .w-1024px-lg {
    width: 1024px;
    max-width: 100%;
  }
  .w-1100px-lg {
    width: 1100px;
    max-width: 100%;
  }
  .w-1200px-lg {
    width: 1200px;
    max-width: 100%;
  }
}
/* width-extension */
.x-ex-0\.5em {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

.x-ex-1em {
  margin-left: -1em;
  margin-right: -1em;
}

.x-ex-15em {
  margin-left: -1.5em;
  margin-right: -1.5em;
}

/* height */
.h-60px {
  height: 60px;
}

.h-166px {
  height: 166px;
}

@media print, (min-width: 992px) { /* for lg */
  .h-5\.75rem-lg {
    height: 5.75rem;
  }
  .h-50px-lg {
    height: 50px;
  }
  .h-72px-lg {
    height: 72px;
  }
  .h-80px-lg {
    height: 80px;
  }
  .h-90px-lg {
    height: 90px;
  }
  .h-100px-lg {
    height: 100px;
  }
}
/* font-size */
.h1 {
  font-size: 1.8rem;
}
@media print, (min-width: 992px) {
  .h1 { /* for lg */
    font-size: 2.2rem;
  }
}

.h2 {
  font-size: 1.625rem;
}
@media print, (min-width: 992px) {
  .h2 { /* for lg */
    font-size: 1.67rem;
  }
}

.h3 {
  font-size: 1.25rem;
}
@media print, (min-width: 992px) {
  .h3 { /* for lg */
    font-size: 1.625rem;
  }
}

.large {
  font-size: calc(1em + 2px);
}

.x-large {
  font-size: calc(1em + 4px);
}

.xx-large {
  font-size: calc(1em + 6px);
}

.medium {
  font-size: calc(1em - 1px);
}

.small {
  font-size: calc(1em - 2px);
}

.x-small {
  font-size: calc(1em - 4px);
}

.fz-1em {
  font-size: 1em;
}

.fz-1\.25em {
  font-size: 1.25em;
}

.fz-1\.5em {
  font-size: 1.5em;
}

.fz-1\.75em {
  font-size: 1.75em;
}

.fz-2em {
  font-size: 2em;
}

.fz-0\.875em {
  font-size: 0.875em;
}

.fz-0\.75em {
  font-size: 0.75em;
}

.fz-12 {
  font-size: 0.75rem;
}

.fz-13 {
  font-size: calc(0.75rem + 1px);
}

.fz-14 {
  font-size: 0.875rem;
}

.fz-15 {
  font-size: calc(1rem - 1px);
}

.fz-1rem {
  font-size: 1rem;
}

.fz-17 {
  font-size: calc(1rem + 1px);
}

.fz-1\.125rem {
  font-size: 1.125rem;
}

.fz-1\.25rem {
  font-size: 1.25rem;
}

.fz-1\.5rem {
  font-size: 1.5rem;
}

.fz-40 {
  font-size: 2.5rem;
}

.fz-60 {
  font-size: 3.75rem;
}

/* Character stuffing */
.stuffing {
  display: inline-block;
  margin-left: -0.35em;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .medium-sm {
    font-size: 0.9375em;
  }
  .small-sm {
    font-size: 0.875em;
  }
  .x-small-sm {
    font-size: 0.75em;
  }
  .large-sm {
    font-size: 1.1875em;
  }
  .x-large-sm {
    font-size: 1.375em;
  }
  .xx-large-sm {
    font-size: 1.625em;
  }
  .fz-2em-sm {
    font-size: 2em;
  }
  .fz-1em-sm {
    font-size: 1em;
  }
  .fz-1rem-sm {
    font-size: 1rem;
  }
  .fz-1\.5rem-sm {
    font-size: 1.5rem;
  }
  .fz-1\.8rem-sm {
    font-size: 1.8rem;
  }
  .fz-10px-sm {
    font-size: 0.625rem;
  }
  .fz-11px-sm {
    font-size: calc(0.625rem + 1px);
  }
  .fz-12px-sm {
    font-size: 0.75rem;
  }
  .fz-13px-sm {
    font-size: calc(0.75rem + 1px);
  }
  .fz-14px-sm {
    font-size: 0.875rem;
  }
  .fz-15px-sm {
    font-size: calc(0.875rem + 1px);
  }
  .fz-2rem-sm {
    font-size: 2rem;
  }
  .fz-28px-sm {
    font-size: 1.75rem;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .fz-20-lg {
    font-size: 1.25rem;
  }
  .fz-24-lg {
    font-size: 1.5rem;
  }
  .fz-36-lg {
    font-size: 2.25rem;
  }
  .fz-48-lg {
    font-size: 3rem;
  }
  .medium-lg {
    font-size: 0.9375em;
  }
  .small-lg {
    font-size: 0.875em;
  }
  .x-small-lg {
    font-size: 0.8em;
  }
  .large-lg {
    font-size: 1.125em;
  }
  .x-large-lg {
    font-size: 1.375em;
  }
  .xx-large-lg {
    font-size: 1.625em;
  }
  .fz-2em-lg {
    font-size: 2em;
  }
  .fz-1em-lg {
    font-size: 1em;
  }
}
/* text-control */
.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.letter-spacing-1 {
  letter-spacing: 1px;
}

.letter-spacing-2 {
  letter-spacing: 2px;
}

.letter-spacing--1 {
  letter-spacing: -1px;
}

.indent-1 {
  text-indent: 1em;
}

.indent-1rem {
  text-indent: 1rem;
}

.indent--05 {
  text-indent: -0.5em;
}

.indent--1 {
  text-indent: -1em;
}

.indent--1rem {
  text-indent: -1rem;
}

.line-height-sm {
  line-height: var(--line-height-sm, 1.25);
}

.line-height-base {
  line-height: var(--line-height-base, 1.5);
}

.line-14 {
  line-height: 1.4;
}

.line-18 {
  line-height: 1.8;
}

.line-28 {
  line-height: 2.8;
}

.burette {
  margin-left: -0.25em;
  margin-right: -0.25em;
}

.heavy {
  font-weight: 700;
}

.bold {
  font-weight: 600;
}

.semibold {
  font-weight: 500;
}

.fw-medium {
  font-weight: 400;
}

.normal {
  font-weight: 400;
  font-style: normal;
  white-space: normal;
}

.text-uppercase {
  text-transform: uppercase;
}

.space-normal {
  white-space: normal;
}

.nowrap {
  white-space: nowrap;
}

.word-break-all {
  word-break: break-all;
}

.hover-color:hover {
  color: var(--logo-color, #003D5C);
}

.hover-pointer {
  cursor: pointer;
}

.hover-underline:hover {
  text-decoration: underline;
}

.text-underline {
  text-decoration: underline;
}

.text-underline:hover,
button:hover .text-underline {
  text-decoration: none;
}

.nodecoration {
  text-decoration: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .text-center-sm {
    text-align: center;
  }
}
/* color */
.color-white {
  color: #fff;
}

.color-logo {
  color: var(--logo-color, #003D5C);
}

.color-red {
  color: var(--red-text-color, #C50000);
}

.color-gray-pure {
  color: var(--gray-pure-color, #7F7F7F);
}

.color-dark-gray {
  color: #666;
}

.color-mid-gray {
  color: var(--gray-dark-color, #999);
}

.color-text {
  color: var(--text-color, #222);
}

.color-gray-blue-text {
  color: var(--gray-blue-text-color, #54798f);
}

@media screen and (max-width: 991.98px) { /* for sm */
  .color-gray-sm {
    color: #999;
  }
}
/* bg-color */
.bg-color-logo {
  background-color: var(--logo-color, #003D5C);
}

.bg-color-gray-blue-light {
  background-color: var(--gray-blue-light-color, #E1E6F1);
}

.bg-color-white {
  background-color: #fff;
}

.bg-color-black {
  background-color: var(--text-color, #222);
}

.bg-color-dark-red {
  background-color: var(--red-dark-color, #A70000);
}

.bg-color-gray {
  background-color: var(--gray-pure-color, #7F7F7F);
}

.bg-color-gray-light {
  background-color: var(--gray-light-color, #F8F9FE);
}

.bg-pick-color-blue {
  background-color: var(--blue-pick-color, #0070C0);
}

.bg-pick-color-red {
  background-color: var(--red-pick-color, #FF0000);
}

.bg-pick-color-yellow {
  background-color: var(--yellow-pick-color, #FED533);
}

.bg-pick-color-green {
  background-color: var(--green-pick-color, #77933C);
}

.bg-pick-color-purple {
  background-color: var(--purple-pick-color, #7030A0);
}

.bg-pick-color-orange {
  background-color: var(--orange-pick-color, #FF6600);
}

.bg-pick-color-brown {
  background-color: var(--brown-pick-color, #984807);
}

.bg-pick-color-pink {
  background-color: var(--pink-pick-color, #F0728F);
}

.bg-pick-color-skin {
  background-color: var(--skin-pick-color, #FCD5B5);
}

/* overflow */
.overflow-auto {
  overflow: auto;
}

.overflow-x-auto {
  overflow-x: auto;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-visible {
  overflow: visible;
}

.overflow-visible-imp {
  overflow: visible !important;
}

@media screen and (max-width: 991.98px) {
  .overflow-hidden-sm { /* for sm */
    overflow: hidden;
  }
}

@media print, (min-width: 992px) {
  .overflow-hidden-lg { /* for lg */
    overflow: hidden;
  }
}

.overscroll-behavior-none {
  overscroll-behavior: none;
}

.overscroll-behavior-x-none {
  overscroll-behavior-x: none;
}

.overscroll-behavior-y-none {
  overscroll-behavior-y: none;
}

@media screen and (max-width: 991.98px) { /* for sm */
  .only-lg,
  [class*=flex].only-lg,
  [class^=btn-].only-lg,
  [class*=tag-].only-lg,
  .arw-link.only-lg,
  .btn.only-lg {
    display: none;
  }
  .table-sm {
    display: table;
  }
  html.fixed,
  .fixed body {
    overflow: hidden;
    max-height: 100%;
  }
  .border-sm {
    border: #909090 solid 1px;
  }
  .border-bottom-sm {
    border-bottom: var(--gray-color) solid 1px;
  }
  .no-border-sm {
    border: none;
  }
  .ml-auto-sm {
    margin-left: auto;
  }
  .mr-auto-sm {
    margin-right: auto;
  }
  .mb-0-sm {
    margin-bottom: 0;
  }
  .mt-0-sm {
    margin-top: 0;
  }
  .mt-0\.5em-sm {
    margin-top: 0.5em;
  }
  .mt-1em-sm {
    margin-top: 1em;
  }
  .mb-1em-sm {
    margin-bottom: 1em;
  }
  .mt-2em-sm {
    margin-top: 2em;
  }
  .mb-2em-sm {
    margin-bottom: 2em;
  }
  .mt-3em-sm {
    margin-top: 3em;
  }
  .my-3em-sm {
    margin-top: 3em;
    margin-bottom: 3em;
  }
  .ml-0\.25rem-sm {
    margin-left: 0.25rem;
  }
  .mr-0\.25rem-sm {
    margin-right: 0.25rem;
  }
  .mt-0\.5rem-sm {
    margin-top: 0.5rem;
  }
  .mb-0\.5rem-sm {
    margin-bottom: 0.5rem;
  }
  .mr-0\.5rem-sm {
    margin-right: 0.5rem;
  }
  .mt-0\.75rem-sm {
    margin-top: 0.75rem;
  }
  .mb-0\.75rem-sm {
    margin-bottom: 0.75rem;
  }
  .mr-0\.75rem-sm {
    margin-right: 0.75rem;
  }
  .mt-1rem-sm {
    margin-top: 1rem;
  }
  .mb-1rem-sm {
    margin-bottom: 1rem;
  }
  .ml-1rem-sm {
    margin-left: 1rem;
  }
  .mr-1rem-sm {
    margin-right: 1rem;
  }
  .mt-1\.125rem-sm {
    margin-top: 1.125rem;
  }
  .ml-1\.125rem-sm {
    margin-left: 1.125rem;
  }
  .mr-1\.125rem-sm {
    margin-right: 1.125rem;
  }
  .mb-1\.125rem-sm {
    margin-top: 1.125rem;
  }
  .mt-1\.25rem-sm {
    margin-top: 1.25rem;
  }
  .ml-1\.25rem-sm {
    margin-left: 1.25rem;
  }
  .mr-1\.25rem-sm {
    margin-right: 1.25rem;
  }
  .mb-1\.25rem-sm {
    margin-bottom: 1.25rem;
  }
  .mt-1\.5rem-sm {
    margin-top: 1.5rem;
  }
  .mb-1\.5rem-sm {
    margin-bottom: 1.5rem;
  }
  .mt-1\.75rem-sm {
    margin-top: 1.75rem;
  }
  .mb-1\.75rem-sm {
    margin-bottom: 1.75rem;
  }
  .mt-2rem-sm {
    margin-top: 2rem;
  }
  .mb-2rem-sm {
    margin-bottom: 2rem;
  }
  .mt-30px-sm {
    margin-top: 30px;
  }
  .mb-30px-sm {
    margin-bottom: 30px;
  }
  .mt-40px-sm {
    margin-top: 40px;
  }
  .mb-40px-sm {
    margin-bottom: 40px;
  }
  .mt-60px-sm {
    margin-top: 60px;
  }
  .mb-60px-sm {
    margin-bottom: 60px;
  }
  .mt-80px-sm {
    margin-top: 80px;
  }
  .mb-80px-sm {
    margin-bottom: 80px;
  }
  .pt-0-sm {
    padding-top: 0;
  }
  .pb-0-sm {
    padding-bottom: 0;
  }
  .px-1em-sm {
    padding-left: 1em;
    padding-right: 1em;
  }
  .pt-1em-sm {
    padding-top: 1em;
  }
  .pb-1em-sm {
    padding-bottom: 1em;
  }
  .pl-0\.25rem-sm {
    padding-left: 0.25rem;
  }
  .pr-0\.25rem-sm {
    padding-right: 0.25rem;
  }
  .py-0\.5rem-sm {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .pt-0\.5rem-sm {
    padding-top: 0.5rem;
  }
  .pb-0\.5rem-sm {
    padding-bottom: 0.5rem;
  }
  .pl-0\.5rem-sm {
    padding-left: 0.5rem;
  }
  .pr-0\.5rem-sm {
    padding-right: 0.5rem;
  }
  .px-0\.625rem-sm {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
  .py-0\.625rem-sm {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
  .px-0\.75rem-sm {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .pt-1rem-sm {
    padding-top: 1rem;
  }
  .pb-1rem-sm {
    padding-bottom: 1rem;
  }
  .px-1rem-sm {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .px-1\.25rem-sm {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .pt-1\.25rem-sm {
    padding-top: 1.25rem;
  }
  .pb-1\.25rem-sm {
    padding-bottom: 1.25rem;
  }
  .pt-3rem-sm {
    padding-top: 3rem;
  }
  .nowrap-lg {
    white-space: normal;
  }
}
@media print, (min-width: 992px) { /* for lg */
  .only-sm,
  [class*=flex].only-sm,
  [class^=btn-].only-sm {
    display: none;
  }
  .fz-19, .col .fz-19 {
    font-size: 1.9rem;
  }
  .float-left-lg {
    float: left;
  }
  .float-right-lg {
    float: right;
  }
  .text-center-lg {
    text-align: center;
  }
  .text-left-lg {
    text-align: left;
  }
  .text-right-lg {
    text-align: right;
  }
  .letter-spacing--1-lg {
    letter-spacing: -1px;
  }
  .ml-auto-lg {
    margin-left: auto;
  }
  .mr-auto-lg {
    margin-right: auto;
  }
  .mt--0\.5rem-lg {
    margin-top: -0.5rem;
  }
  .mt--1rem-lg {
    margin-top: -1rem;
  }
  .mb--3rem {
    margin-bottom: -3rem;
  }
  .mb-0-lg {
    margin-bottom: 0;
  }
  .mt-0-lg {
    margin-top: 0;
  }
  .ml-0-lg {
    margin-left: 0;
  }
  .mr-0-lg {
    margin-right: 0;
  }
  .mx-0-lg {
    margin-left: 0;
    margin-right: 0;
  }
  .mx-2em-lg {
    margin-left: 2em;
    margin-right: 2em;
  }
  .mt-1em-lg {
    margin-top: 1em;
  }
  .mb-1em-lg {
    margin-bottom: 1em;
  }
  .ml-1em-lg {
    margin-left: 1em;
  }
  .mr-1em-lg {
    margin-right: 1em;
  }
  .mt-2em-lg {
    margin-top: 2em;
  }
  .mb-2em-lg {
    margin-bottom: 2em;
  }
  .ml-2em-lg {
    margin-left: 2em;
  }
  .mr-2em-lg {
    margin-right: 2em;
  }
  .mt-3em-lg {
    margin-top: 3em;
  }
  .mb-3em-lg {
    margin-bottom: 3em;
  }
  .my-4em-lg {
    margin-top: 4em;
    margin-bottom: 4em;
  }
  .mt-4em-lg {
    margin-top: 4em;
  }
  .mb-4em-lg {
    margin-bottom: 4em;
  }
  .mt-0\.5rem-lg {
    margin-top: 0.5rem;
  }
  .mb-0\.5rem-lg {
    margin-bottom: 0.5rem;
  }
  .mt-0\.75rem-lg {
    margin-top: 0.75rem;
  }
  .mb-0\.75rem-lg {
    margin-bottom: 0.75rem;
  }
  .mr-0\.75rem-lg {
    margin-right: 0.75rem;
  }
  .mt-1rem-lg {
    margin-top: 1rem;
  }
  .mb-1rem-lg {
    margin-bottom: 1rem;
  }
  .mt-1\.25rem-lg {
    margin-top: 1.25rem;
  }
  .mb-1\.25rem-lg {
    margin-bottom: 1.25rem;
  }
  .my-1\.5rem-lg {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .mt-1\.5rem-lg {
    margin-top: 1.5rem;
  }
  .mb-1\.5rem-lg {
    margin-bottom: 1.5rem;
  }
  .my-1\.75rem-lg {
    margin-top: 1.75rem;
    margin-bottom: 1.75rem;
  }
  .mt-1\.75rem-lg {
    margin-top: 1.75rem;
  }
  .mb-1\.75rem-lg {
    margin-bottom: 1.75rem;
  }
  .mt-2rem-lg {
    margin-top: 2rem;
  }
  .mb-2rem-lg {
    margin-bottom: 2rem;
  }
  .mt-2\.5rem-lg {
    margin-top: 2.5rem;
  }
  .mb-2\.5rem-lg {
    margin-bottom: 2.5rem;
  }
  .mt-26px-lg {
    margin-top: 26px;
  }
  .mb-26px-lg {
    margin-bottom: 26px;
  }
  .mt-30px-lg {
    margin-top: 30px;
  }
  .mb-30px-lg {
    margin-bottom: 30px;
  }
  .mt-48px-lg {
    margin-top: 48px;
  }
  .mb-48px-lg {
    margin-bottom: 48px;
  }
  .mt-56px-lg {
    margin-top: 56px;
  }
  .mb-56px-lg {
    margin-bottom: 56px;
  }
  .ml-60px-lg {
    margin-left: 60px;
  }
  .mr-60px-lg {
    margin-right: 60px;
  }
  .mt-60px-lg {
    margin-top: 60px;
  }
  .mb-60px-lg {
    margin-bottom: 60px;
  }
  .mt-64px-lg {
    margin-top: 64px;
  }
  .mt-80px-lg {
    margin-top: 80px;
  }
  .mb-80px-lg {
    margin-bottom: 80px;
  }
  .mt-100px-lg {
    margin-top: 100px;
  }
  .mb-100px-lg {
    margin-bottom: 100px;
  }
  .pt-0-lg {
    padding-top: 0;
  }
  .pb-0-lg {
    padding-bottom: 0;
  }
  .px-1em-lg {
    padding-left: 1em;
    padding-right: 1em;
  }
  .pt-1em-lg {
    padding-top: 1em;
  }
  .pb-1em-lg {
    padding-bottom: 1em;
  }
  .pl-1em-lg {
    padding-left: 1em;
  }
  .pr-1em-lg {
    padding-right: 1em;
  }
  .pr-2em-lg {
    padding-right: 2em;
  }
  .pl-2em-lg {
    padding-left: 2em;
  }
  .py-0\.5rem-lg {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .pt-0\.5rem-lg {
    padding-top: 0.5rem;
  }
  .pb-0\.5rem-lg {
    padding-bottom: 0.5rem;
  }
  .pl-0\.5rem-lg {
    padding-left: 0.5rem;
  }
  .pr-0\.5rem-lg {
    padding-right: 0.5rem;
  }
  .px-1rem-lg {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .px-1\.25rem-lg {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .pt-1\.25rem-lg {
    padding-top: 1.25rem;
  }
  .pb-1\.25rem-lg {
    padding-bottom: 1.25rem;
  }
  .px-1\.5rem-lg {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .pt-1\.5rem-lg {
    padding-top: 1.5rem;
  }
  .pb-1\.5rem-lg {
    padding-bottom: 1.5rem;
  }
  .pt-1\.75rem-lg {
    padding-top: 1.75rem;
  }
  .pb-1\.75rem-lg {
    padding-bottom: 1.75rem;
  }
  .px-2rem-lg {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .pt-2rem-lg {
    padding-top: 2rem;
  }
  .pl-2rem-lg {
    padding-left: 2rem;
  }
  .pr-2rem-lg {
    padding-right: 2rem;
  }
  .pb-2rem-lg {
    padding-bottom: 2rem;
  }
  .p-2\.5rem-lg {
    padding: 2.5rem;
  }
  .pt-2\.5rem-lg {
    padding-top: 2.5rem;
  }
  .pb-2\.5rem-lg {
    padding-bottom: 2.5rem;
  }
  .py-2\.5rem-lg {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .p-3\.75rem-lg {
    padding: 3.75rem;
  }
  .py-3\.75rem-lg {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem;
  }
  .pt-3\.75rem-lg {
    padding-top: 3.75rem;
  }
  .pb-3\.75rem-lg {
    padding-bottom: 3.75rem;
  }
  .pl-3\.75rem-lg {
    padding-left: 3.75rem;
  }
  .pr-3\.75rem-lg {
    padding-right: 3.75rem;
  }
  .border-lg {
    border: #909090 solid 1px;
  }
  .no-border-lg {
    border: none;
  }
  .w-ex-1em {
    width: calc(100% + 1em);
    max-width: calc(100% + 1em);
  }
  .w-ex-2em {
    width: calc(100% + 2em);
    max-width: calc(100% + 2em);
  }
  .w-ex-3em {
    width: calc(100% + 3em);
    max-width: calc(100% + 3em);
  }
  .nowrap-lg {
    white-space: nowrap;
  }
}
/*!
 * SASS  :  sass/fb-print.scss
 * Modified  :  *******
 */
/* print
---------------------------------------------------- */
/*

// 主な印刷用紙のピクセル値（横/縦）
// （参考）https://www.plusdesign.co.jp/blog/?p=6880
// A4:　595px / 847px

@media print, (min-width:992px) {}
と、コンマ区切りでprintを加えるか、
@media screen and (max-width:767px) {}
screen限定にして対応する。

*/
@media print { /* for print */
  html {
    overflow: visible !important;
    zoom: 0.85 !important;
  }
  body {
    min-width: 1200px !important;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .content {
    min-width: 992px !important;
  }
  main {
    font-family: "Open Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    padding-top: 0 !important;
  }
  .site-header {
    position: static;
  }
  .search-bar {
    position: static;
  }
} /* END for print */
/*!
 * =================================================
 * !!このCSSはSASSから生成されており、CSSを直接編集すると破たんします!!
 * =================================================
 */

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