@charset "UTF-8";
/* contents---------------
	 1.

		------------ */
:root {
  /* カラー */
  --color-bg: #ffffff;
  --color-bg-secondary: #F7F7F7;
  --color-text-primary: #0B2A3A;
  --color-text-secondary:#546A75;
  --color-primary: #CC0000;
  --color-secondary: #0B2A3A;
  --color-link: #0063BE;
  --color-fill: #EAF3F6;
  --color-gray: #CACACA;
  --color-gray2: #D7E0E4;
  --color-button-primary:#0B2A3A;
  --color-button-secondary:#637985;
  --color-button-disable:#F3F4F4;
  --color-button-disable2:#DBDBDB;
  --color-button-focus:#3382CB;
  --color-texticon-primary:#0B2A3A;
  --color-texticon-secondary:#546A75;
  --color-texticon-tertiary:#7C929C;
  --color-texticon-disable:#A6A6A6;
  --color-separate-primary:#CACACA;
  --color-separate-secondary:#E9E9E9;
  --color-aleat:#C8395B;
  --color-aleatlight:#FEF8F9;
  --color-lightblue:#BDDFEB;
  --color-lightpink:#FFF3F2;
  /* スペーシング用トークンを定義 */
  --X4S: 4px;
  --X3S: 8px;
  --X2S: 12px;
  --XS: 16px;
  --S: 20px;
  --M: 24px;
  --L: 32px;
  --XL: 40px;
  --X2L: 48px;
  --X3L: 64px;
  --X4L: 80px;
  --X5L: 128px;
  /* テキストサイズ */
  --font-xxxs: 0.625rem; /* 10px */
  --font-xxs: 0.75rem; /* 12px */
  --font-xs: 0.875rem; /* 14px */
  --font-s: 1rem; /* 16px */
  --font-m: 1.125rem; /* 18px */
  --font-l: 1.25rem; /* 20px */
  --font-xl: 1.5rem; /* 24px */
  --font-head-xs:1.125rem; /* 18px */
  --font-head-s:1.375rem; /* 22px */
  --font-head-m:1.625rem; /* 26px */
  --font-head-l:2.25rem; /* 36px */
  --font-head-xl:2.75rem; /* 44px */
  --font-head-xxl:3.25rem; /* 52px */
  --shadow-level0: none;
  --shadow-level1: 0px 2px 4px 0px rgba(11, 42, 58, 0.12);
  --shadow-level2: 0px 4px 8px 0px rgba(11, 42, 58, 0.12);
  --shadow-level3: 0px 8px 10px 0px rgba(11, 42, 58, 0.12);
  --shadow-level4: 0px 10px 14px 0px rgba(11, 42, 58, 0.12);
  --shadow-level5: 0px 14px 18px 0px rgba(11, 41, 58, 0.12);
  --shadow-bottom: 0px -8px 12px 0px rgba(11, 41, 58, 0.05);
  --shadow-object-red: 0px 14px 18px 0px rgba(202, 70, 49, 0.18);
  --radius-s:4px;
  --radius-m:8px;
  --radius-l:12px;
  --radius-full:999999px;
}

/*----------------------------------------------------------
	Common Module
--------------------------------------------------------- */
/* パンくずリスト
--------------------------------------------------------- */
#path-box {
  background: var(--color-bg-secondary);
  /* sp */
}
#path-box ul {
  max-width: 1164px;
  margin: auto;
  padding: var(--X3S) 0;
}
#path-box ul li {
  display: inline-block;
  color: var(--color-texticon-secondary);
}
#path-box ul li:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  font-size: 0.9em;
  position: relative;
  top: 0.05em;
  margin-left: 0.5em;
  color: var(--color-texticon-secondary);
}
#path-box ul li:last-child:after {
  content: none;
}
@media screen and (max-width: 767px) {
  #path-box ul {
    line-height: 2;
  }
}

main.page {
  padding-bottom: var(--X4L);
}

@media screen and (max-width: 767px) {
  main.page {
    padding-bottom: 0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  main.page .pagebody {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  main.page #path-box {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: var(--X4L);
    padding: var(--XS) var(--M) var(--L);
  }
  main.page.top {
    padding-bottom: var(--X4L);
  }
} /* sp */
/* タグカルーセル
--------------------------------------------------------- */
/* 追記・修正ポイントだけ */
.tag-carousel {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 0.5rem 1fr 0.5rem auto;
  grid-template-columns: auto 1fr auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  margin: auto;
  padding: 5px 3%;
}
.tag-carousel .tag-nav {
  inline-size: 2rem;
  block-size: 2.7rem;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 999px;
  font-size: 1.25rem;
  line-height: 1;
  display: -ms-grid;
  display: grid;
  place-items: center;
  cursor: pointer;
}
.tag-carousel .tag-nav:disabled {
  opacity: 0.4;
  cursor: default;
}
.tag-carousel ul.tag-track {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: -webkit-max-content;
  grid-auto-columns: max-content;
  gap: 0.5rem;
  overflow-x: auto;
  scroll-behavior: smooth;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  padding-inline: 0.5rem; /* 端で切れない余白 */
  scroll-padding-inline: 0.5rem; /* スナップ基準点の余白 */
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.tag-carousel ul.tag-track::-webkit-scrollbar {
  display: none;
}

.tag-carousel ul.tag-track > li {
  scroll-snap-align: start; /* 先頭でピタッと止まる */
}

.tag-carousel a {
  text-decoration: none;
  color: var(--color-text-primary);
}

.tag-carousel .tag-chip {
  display: inline-block;
  white-space: nowrap;
  -webkit-transition: background 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  transition: background 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  transition: background 0.2s, box-shadow 0.2s, border-color 0.2s;
  transition: background 0.2s, box-shadow 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  padding: 9px var(--XS);
  border: 1px solid var(--color-separate-primary);
  border-radius: 3rem;
  max-width: 100%;
  text-overflow: ellipsis;
}

.tag-carousel .tag-chip:hover {
  background: var(--color-bg-secondary);
}

.tag-carousel .tag-chip:focus-visible {
  outline: none;
  -webkit-box-shadow: 0 0 0 2px rgba(100, 150, 255, 0.35);
          box-shadow: 0 0 0 2px rgba(100, 150, 255, 0.35);
  border-color: var(--color-button-focus);
}

/*----------------------------------------------------------
	Link
--------------------------------------------------------- */
/* 枠線リンクボックス
--------------------------------------------------------- */
.linkboxBorder.autoheight {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.linkboxBorder.autoheight .clm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
}
.linkboxBorder.autoheight .clm .link {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.linkboxBorder.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--M);
}
.linkboxBorder.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--M);
}
.linkboxBorder.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--M);
}
.linkboxBorder > .clm.span2 {
  -ms-grid-column-span: 2;
  grid-column: span 2;
}
.linkboxBorder > .clm.span2 .inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--M);
}
.linkboxBorder > .clm.span3 {
  -ms-grid-column-span: 3;
  grid-column: span 3;
}
.linkboxBorder > .clm.span3 .inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--M);
}
.linkboxBorder > .clm.span4 {
  -ms-grid-column-span: 4;
  grid-column: span 4;
}
.linkboxBorder > .clm.span4 .inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--M);
}
.linkboxBorder > .clm {
  -ms-grid-column-span: 1;
  grid-column: span 1;
}
.linkboxBorder > .clm h3 {
  border-top: 1px solid var(--color-separate-secondary);
  padding-top: var(--XS);
}
.linkboxBorder .link {
  border: 1px solid var(--color-separate-primary);
  padding: var(--S);
  border-radius: var(--radius-l);
  position: relative;
}
.linkboxBorder .link .tag {
  background: var(--color-fill);
  position: absolute;
  right: var(--S);
  top: var(--S);
  font-size: var(--font-xs);
  color: var(--color-texticon-secondary);
  padding: var(--X4S) var(--X3S);
}
.linkboxBorder .link > .thumb {
  margin-bottom: var(--X2S);
  width: 70px;
}
.linkboxBorder .link > .thumb img {
  max-width: 70px;
}
.linkboxBorder .link a[target=_blank] .title:after {
  font-family: "icon-jp-post2025";
  content: "\e917";
  font-weight: normal;
  font-size: 1em;
  position: relative;
  top: 0.1em;
}
.linkboxBorder .link .head {
  margin-bottom: var(--X2S);
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-decoration: none;
}
.linkboxBorder .link .head .title {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: var(--font-l);
  font-weight: 700;
  color: var(--color-text-primary);
}
.linkboxBorder .link .head .title:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  position: relative;
  font-weight: normal;
  top: 0em;
  font-size: 0.8em;
  margin-left: 0.3em;
}
.linkboxBorder .link .head .title:hover {
  text-decoration: underline;
}
.linkboxBorder .link .head .thumb {
  -ms-flex-preferred-size: 72px;
      flex-basis: 72px;
}
.linkboxBorder .link .head .thumb.blue {
  border-radius: var(--radius-m);
  padding: 4px;
  text-align: center;
  background: var(--color-fill);
}
.linkboxBorder .link .min5 {
  min-height: 5.5em;
}
.linkboxBorder .link p {
  font-size: var(--font-xs);
  color: var(--color-texticon-secondary);
}
.linkboxBorder .link p.bold {
  font-weight: 700;
}
.linkboxBorder .link hr.dot {
  margin: var(--S) 0;
}
.linkboxBorder .link ul.sublink li {
  display: inline-block;
  color: var(--color-texticon-secondary);
}
.linkboxBorder .link ul.sublink li:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  position: relative;
  top: 0.05em;
  margin-left: 0.3em;
  color: var(--color-texticon-secondary);
  font-size: 0.9em;
}
.linkboxBorder .link ul.sublink li {
  margin-right: 0.5em;
  margin-bottom: 0.4em;
}
.linkboxBorder .link ul.sublink li:last-child {
  margin-right: 0;
}
.linkboxBorder .link ul.support-badges {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--X3S) 1fr var(--X3S) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--XS) var(--X3S);
  font-size: var(--font-xxs);
  background: var(--color-bg-secondary);
  padding: var(--X2S) 3%;
  border-radius: var(--radius-m);
  margin-top: var(--X2S);
}
.linkboxBorder .link ul.support-badges li {
  font-weight: 500;
  position: relative;
  padding-left: 2.2em;
  color: var(--color-texticon-disable);
}
.linkboxBorder .link ul.support-badges li:before {
  font-family: "icon-jp-post2025";
  content: "\e91e";
  position: absolute;
  left: 0;
  top: -0.1em;
  font-size: 2em;
}
.linkboxBorder .link ul.support-badges li.is-active {
  color: var(--color-text-primary);
}
.linkboxBorder .link ul.support-badges li.is-active:before {
  font-family: "icon-jp-post2025";
  content: "\e91d";
}
.linkboxBorder .link ul.support-badges.border {
  background: #FFF;
  border: 1px solid var(--color-separate-primary);
}
.linkboxBorder .link ul.support-badges.clm2 {
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}
.linkboxBorder .link .head2 {
  font-size: var(--font-m);
  font-weight: 700;
  margin-bottom: var(--X2S);
}
.linkboxBorder .link .btnArea.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--X2S) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--X2S);
}
.linkboxBorder .link .btnArea a.btn {
  padding-left: 0;
  padding-right: 0;
  min-width: auto;
}
.linkboxBorder .link .btnArea a[target=_blank]:after {
  font-family: "icon-jp-post2025";
  content: "\e917";
  font-weight: normal;
  font-size: 1em;
  position: relative;
  top: 0.1em;
}

@media screen and (max-width: 767px) {
  .linkboxBorder.clm2, .linkboxBorder.clm3, .linkboxBorder.clm4 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
  .linkboxBorder > .clm.span2 .inner, .linkboxBorder > .clm.span3 .inner, .linkboxBorder > .clm.span4 .inner {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .linkboxBorder > .clm .link .head .title {
    font-size: var(--font-s);
  }
  .linkboxBorder .link.flexsp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .linkboxBorder .link.flexsp .head {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .linkboxBorder .link.flexsp .thumb {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    max-width: 56px;
  }
  .linkboxBorder .link.flexsp .head + p {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .linkboxBorder .link p.min5 {
    min-height: auto;
  }
  .linkboxBorder .min5 {
    min-height: auto;
  }
} /* sp */
/* テキスト＋アイコン、スリムボックスリンク
--------------------------------------------------------- */
.linktextBorder {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--S) 1fr var(--S) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--S);
  /* sp */
}
.linktextBorder img {
  max-width: 100%;
}
.linktextBorder.clm1 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--M);
}
.linktextBorder.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--M);
}
.linktextBorder.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--S) 1fr var(--S) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--S);
}
.linktextBorder.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--S) 1fr var(--S) 1fr var(--S) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--S);
}
.linktextBorder a.link {
  display: block;
  border: 2px solid var(--color-button-primary);
  text-align: center;
  font-weight: 700;
  padding: 1rem 2.3rem;
  color: var(--color-button-primary);
  border-radius: var(--radius-l);
  position: relative;
  text-decoration: none;
}
.linktextBorder a.link:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  position: absolute;
  right: 1rem;
  height: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
}
.linktextBorder a.link:hover {
  background: var(--color-fill);
}
.linktextBorder a.link.ic-popup:after {
  font-family: "icon-jp-post2025";
  content: "\e917";
  font-weight: normal;
  font-size: 1.3rem;
  height: 1.3rem;
}
.linktextBorder.light a.link {
  border: 1px solid #DBDBDB;
}
@media screen and (max-width: 767px) {
  .linktextBorder {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .linktextBorder.spclm1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .linktextBorder.spclm2 {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}

/* サムネイル付きリンク
--------------------------------------------------------- */
.thumbLinkM {
  /* sp */
}
.thumbLinkM img {
  max-width: 100%;
}
.thumbLinkM.clm1 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--M);
}
.thumbLinkM.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--M);
}
.thumbLinkM.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--S) 1fr var(--S) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--S);
}
.thumbLinkM.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--S) 1fr var(--S) 1fr var(--S) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--S);
}
.thumbLinkM .link .thumb img {
  border-radius: var(--XL) var(--X2S);
}
.thumbLinkM .link .title {
  margin-top: var(--XS);
}
.thumbLinkM .link .title a {
  color: var(--color-text-primary);
  text-decoration: none;
  font-weight: bold;
  font-size: var(--font-head-s);
}
.thumbLinkM .link .title a:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  font-size: 0.8em;
  font-weight: normal;
  margin-left: 0.2em;
  display: inline-block;
  text-decoration: none;
}
.thumbLinkM .link .title a:hover {
  text-decoration: underline;
}
.thumbLinkM .link .title p {
  margin-top: var(--X2S);
}
.thumbLinkM.border .link {
  outline: 1px solid var(--color-gray);
  border-radius: var(--XL) var(--X2S);
}
.thumbLinkM.border .link .thumb img {
  border-radius: 0;
}
.thumbLinkM.border .link .title {
  padding: var(--M);
  margin: 0;
}
@media screen and (max-width: 767px) {
  .thumbLinkM.clm2, .thumbLinkM.clm3, .thumbLinkM.clm4 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
}

.thumbLinkS {
  /* sp */
}
.thumbLinkS img {
  max-width: 100%;
}
.thumbLinkS.clm1 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbLinkS.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbLinkS.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbLinkS.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr var(--L) 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbLinkS a {
  text-decoration: none;
}
.thumbLinkS .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.thumbLinkS .link .thumb {
  -ms-flex-preferred-size: 70px;
      flex-basis: 70px;
}
.thumbLinkS .link .thumb.pink {
  background: var(--color-lightpink);
  border-radius: var(--radius-m);
}
.thumbLinkS .link .title {
  padding-left: var(--XS);
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.thumbLinkS .link .title span {
  color: var(--color-text-primary);
  text-decoration: none;
  font-weight: bold;
}
.thumbLinkS .link .title span:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  font-size: 0.8em;
  font-weight: normal;
  margin-left: 0.2em;
  display: inline-block;
  text-decoration: none;
}
.thumbLinkS .link .title span:hover {
  text-decoration: underline;
}
.thumbLinkS .link > .clm1 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-top: var(--XS);
}
.thumbLinkS .link > .clm1 a {
  text-decoration: underline;
}
.thumbLinkS.border .link {
  outline: 1px solid var(--color-gray);
  border-radius: var(--XL) var(--X2S);
}
.thumbLinkS.border .link .thumb img {
  border-radius: 0;
}
.thumbLinkS.border .link .title {
  padding: var(--M);
  margin: 0;
}
@media screen and (max-width: 767px) {
  .thumbLinkS.clm2, .thumbLinkS.clm3, .thumbLinkS.clm4 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
}

/* サイズ表 */
.sizeboxList {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr var(--L) 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  /* sp */
}
.sizeboxList .box {
  border: 1px solid var(--color-gray);
  border-radius: var(--radius-l);
}
.sizeboxList .box .img {
  background: var(--color-fill);
  border-radius: var(--radius-l) var(--radius-l) 0 0;
  text-align: center;
}
.sizeboxList .box .cont {
  padding: var(--S);
}
.sizeboxList .box .cont .head {
  font-size: var(--font-head-s);
  font-weight: 700;
}
.sizeboxList .box .cont .price {
  background: var(--color-bg-secondary);
  padding: var(--X2S);
  border-radius: var(--radius-m);
  text-align: center;
  font-size: var(--font-head-m);
  font-weight: 700;
  margin: var(--X2S) auto;
}
.sizeboxList .box .cont .discount {
  font-size: var(--font-xs);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .sizeboxList {
    -ms-grid-columns: 1fr var(--XS) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: var(--XS);
  }
  .sizeboxList .box .img img {
    max-height: 90px;
  }
  .sizeboxList .box .cont {
    padding: var(--X2S);
  }
  .sizeboxList .box .cont .discount {
    font-size: var(--font-xxs);
  }
}

/* ミニリンクボタンリスト
--------------------------------------------------------- */
.miniLinkList a {
  font-size: var(--font-xs);
  color: var(--color-texticon-secondary);
  border: 2px solid var(--color-texticon-secondary);
  border-radius: var(--radius-s);
  padding: var(--X4S) var(--X3S);
  display: inline-block;
  font-weight: 700;
  background: #FFF;
  text-decoration: none;
}
.miniLinkList a:hover {
  background: var(--color-fill);
}
.miniLinkList a:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  position: relative;
  top: 0em;
  margin-left: 0.3em;
  font-size: 0.9em;
}
.miniLinkList a.arrow-b:after {
  font-family: "icon-jp-post2025";
  content: "\e900";
  position: relative;
  top: 0.1em;
  margin-left: 0.3em;
  font-size: 0.9em;
}

/* ステップボックスエリア
--------------------------------------------------------- */
.boxStep {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  /* sp */
}
.boxStep .step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
}
.boxStep.clm1 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--M);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.boxStep.clm1 .step:not(:first-child):before {
  content: "";
  width: 1px;
  background: var(--color-button-disable2);
  display: block;
  position: absolute;
  height: var(--M);
  top: calc(-1 * var(--M) - 1px);
  left: 0;
  bottom: auto;
  right: 0;
  margin: auto;
}
.boxStep.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--M);
}
.boxStep.clm2 .step:not(:first-child):before {
  content: "";
  height: 1px;
  background: var(--color-button-disable2);
  display: block;
  position: absolute;
  width: var(--M);
  left: calc(-1 * var(--M) - 1px);
  top: 0;
  bottom: 0;
  margin: auto;
}
.boxStep.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--M);
}
.boxStep.clm3 .step:not(:first-child):before {
  content: "";
  height: 1px;
  background: var(--color-button-disable2);
  display: block;
  position: absolute;
  width: var(--M);
  left: calc(-1 * var(--M) - 1px);
  top: 0;
  bottom: 0;
  margin: auto;
}
.boxStep.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--M) 1fr var(--M) 1fr var(--M) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--M);
}
.boxStep.clm4 .step:not(:first-child):before {
  content: "";
  height: 1px;
  background: var(--color-button-disable2);
  display: block;
  position: absolute;
  width: var(--M);
  left: calc(-1 * var(--M) - 1px);
  top: 0;
  bottom: 0;
  margin: auto;
}
.boxStep .step {
  border: 1px solid var(--color-button-disable2);
  border-radius: var(--radius-l);
  position: relative;
}
.boxStep .step .no {
  background: var(--color-text-primary);
  color: #FFF;
  font-weight: 700;
  border-radius: var(--radius-l) 0 var(--radius-l) 0;
  padding: var(--X2S) var(--XS);
  line-height: 1;
  display: inline-block;
  position: absolute;
  left: -1px;
  top: -1px;
}
.boxStep .step .cont {
  padding: var(--L) var(--S);
  margin-top: var(--X2S);
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.boxStep .step .cont .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-right: 0.5rem;
}
.boxStep .step .cont .img img {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .boxStep {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
  .boxStep.spclm1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
  .boxStep.spclm1 .step:not(:first-child):before {
    content: "";
    width: 1px;
    background: var(--color-button-disable2);
    display: block;
    position: absolute;
    height: var(--M);
    top: calc(-1 * var(--M) - 1px);
    left: 0;
    bottom: auto;
    right: 0;
    margin: auto;
  }
  .boxStep.spclm2 {
    -ms-grid-columns: 1fr var(--M) 1fr;
    grid-template-columns: 1fr 1fr;
    gap: var(--M);
  }
  .boxStep.spclm2 .step:not(:first-child):before {
    content: "";
    height: 1px;
    background: var(--color-button-disable2);
    display: block;
    position: absolute;
    width: var(--M);
    left: calc(-1 * var(--M) - 1px);
    top: 0;
    bottom: 0;
    margin: auto;
  }
}

/* ボタン風リンクエリア
--------------------------------------------------------- */
.thumbBnrS {
  /* sp */
}
.thumbBnrS.clm1 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbBnrS.clm2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbBnrS.clm3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbBnrS.clm4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr var(--L) 1fr var(--L) 1fr var(--L) 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--L);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.thumbBnrS a {
  display: block;
  text-decoration: none;
  color: var(--color-text-primary);
}
.thumbBnrS .link {
  border: var(--color-separate-primary) 1px solid;
  background: #FFF;
  border-radius: var(--radius-l);
  padding: var(--XS) 2.5rem var(--XS) var(--XS);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 70px 1fr;
  grid-template-columns: 70px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.thumbBnrS .link:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  position: absolute;
  right: 0.8rem;
  height: 1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
  font-size: 1.5rem;
}
.thumbBnrS .link i {
  font-size: 60px;
}
.thumbBnrS .link .title {
  font-weight: bold;
  font-size: var(--font-m);
  padding-left: var(--X3S);
}
.thumbBnrS .link i, .thumbBnrS .link .thumb img {
  height: 70px;
  line-height: 70px;
}
.thumbBnrS .link .thumb.pink {
  background: var(--color-lightpink);
  border-radius: var(--radius-m);
}
.thumbBnrS .link .thumb.blue {
  background: var(--color-fill);
  border-radius: var(--radius-m);
}
.thumbBnrS a[target=_blank]:after {
  content: "\e916";
}
.thumbBnrS .link + .link {
  margin-top: var(--XS);
}
.thumbBnrS.clm2 .link + .link, .thumbBnrS.clm3 .link + .link, .thumbBnrS.clm4 .link + .link {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .thumbBnrS.clm2, .thumbBnrS.clm3, .thumbBnrS.clm4 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: var(--M) 0;
  }
}

/* 角丸バナー風リンクエリア
--------------------------------------------------------- */
.photoBnrArea {
  /* sp */
}
.photoBnrArea a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.photoBnrArea a:hover {
  opacity: 0.7;
}
.photoBnrArea .bnrbody {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1.2fr 1fr;
  grid-template-columns: 1.2fr 1fr;
}
.photoBnrArea .bnrbody.imgsizeXL {
  -ms-grid-columns: 30% 70%;
  grid-template-columns: 30% 70%;
}
.photoBnrArea .bnrbody.imgsizeL {
  -ms-grid-columns: 35% 65%;
  grid-template-columns: 35% 65%;
}
.photoBnrArea .bnrbody.imgsizeM {
  -ms-grid-columns: 50% 50%;
  grid-template-columns: 50% 50%;
}
.photoBnrArea .bnrbody.imgsizeS {
  -ms-grid-columns: 60% 40%;
  grid-template-columns: 60% 40%;
}
.photoBnrArea .bnrbody.imgsizeSS {
  -ms-grid-columns: 70% 30%;
  grid-template-columns: 70% 30%;
}
.photoBnrArea .head {
  font-size: var(--font-head-s);
  font-weight: 700;
}
.photoBnrArea .arrow:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
}
.photoBnrArea .main {
  padding: var(--XL) 0 var(--XL) var(--XL);
}
.photoBnrArea .aside {
  padding: var(--L) var(--XL) var(--L) 0;
  min-height: 240px;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: var(--XL) var(--X2S) var(--XL) 0;
}
.photoBnrArea .aside picture img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
  -o-object-position: left top;
     object-position: left top;
}
.photoBnrArea .aside .inner {
  position: relative;
  z-index: 1;
  padding-left: 100px;
}
.photoBnrArea .icontext li {
  font-weight: 700;
  border-bottom: 1px solid #FFF;
  padding: 0.6em 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.photoBnrArea .icontext li i {
  font-size: 160%;
  position: relative;
  top: 0.2em;
  -ms-flex-preferred-size: 1.5em;
      flex-basis: 1.5em;
}
.photoBnrArea.noheight .aside {
  min-height: auto;
}
@media screen and (max-width: 767px) {
  .photoBnrArea {
    /* スマホでは写真を上に表示 */
  }
  .photoBnrArea .bnrbody {
    display: block;
  }
  .photoBnrArea .head {
    font-size: var(--font-head-xs);
  }
  .photoBnrArea .main {
    padding: var(--XL) var(--XS);
  }
  .photoBnrArea .aside {
    padding: var(--M) var(--M) var(--XL) var(--M);
    border-radius: 0 0 var(--XL) var(--X2S);
  }
  .photoBnrArea .aside .inner {
    padding-left: 0;
  }
  .photoBnrArea ul.inline li {
    display: block;
  }
  .photoBnrArea ul.inline li + li {
    margin-left: 0;
    margin-top: 0.5rem;
  }
  .photoBnrArea ul.appbtn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--X2S);
  }
  .photoBnrArea ul.appbtn li + li {
    margin-top: 0;
  }
  .photoBnrArea.spimgTop .bnrbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .photoBnrArea.spimgTop .bnrbody .main {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    padding: var(--M) var(--XS) var(--XL);
  }
  .photoBnrArea.spimgTop .bnrbody .aside {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    min-height: auto;
    padding: 0;
    border-radius: var(--XL) var(--X2S) 0 0;
  }
  .photoBnrArea.spimgTop .bnrbody .aside picture img {
    height: auto;
    position: relative;
  }
  .photoBnrArea.spimgNone .bnrbody .aside {
    display: none;
  }
  .photoBnrArea.spimgNone .bnrbody .aside picture {
    display: none;
  }
}

/* 紹介エリア
--------------------------------------------------------- */
.bnrinfoWide {
  display: -ms-grid;
  display: grid;
  gap: var(--M);
  /* sp */
}
.bnrinfoWide .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid var(--color-separate-primary);
  border-radius: var(--radius-l);
  padding: var(--XS);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bnrinfoWide .box .thumb {
  -ms-flex-preferred-size: 70px;
      flex-basis: 70px;
  width: 70px;
}
.bnrinfoWide .box .head {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  border-right: 1px solid var(--color-separate-secondary);
  padding: 0 var(--L);
}
.bnrinfoWide .box .head .copy {
  background: var(--color-bg-secondary);
  color: var(--color-primary);
  padding: var(--X3S);
  font-weight: 700;
  margin-bottom: var(--X4S);
  text-align: center;
}
.bnrinfoWide .box .head a {
  text-decoration: none;
}
.bnrinfoWide .box .head .title {
  color: var(--color-text-primary);
  font-size: var(--font-head-s);
  font-weight: 700;
}
.bnrinfoWide .box .head .title:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  font-weight: normal;
}
.bnrinfoWide .box .cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 var(--L);
}
@media screen and (max-width: 767px) {
  .bnrinfoWide .box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .bnrinfoWide .box .thumb {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -ms-flex-preferred-size: 70px;
        flex-basis: 70px;
  }
  .bnrinfoWide .box .head {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    border-right: none;
    padding: 0;
  }
  .bnrinfoWide .box .head .copy {
    display: inline-block;
    font-size: var(--font-xxs);
  }
  .bnrinfoWide .box .head .title {
    display: block;
  }
  .bnrinfoWide .box .cont {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    padding: 0;
    margin-top: var(--S);
  }
}

/* バッジ風表示
--------------------------------------------------------- */
.badgeOuter {
  position: relative;
}
.badgeOuter .badge {
  position: absolute;
  display: inline-block;
  background: var(--color-button-primary);
  color: #FFF;
  line-height: 1;
  padding: 0.7em 1em;
  border-radius: 2em;
  font-weight: 700;
}
.badgeOuter .badge.upper-r {
  right: var(--M);
  top: var(--M);
}
.badgeOuter .badge.upper-l {
  left: var(--M);
  top: var(--M);
}
.badgeOuter .badge.red {
  background: var(--color-primary);
  color: #FFF;
}

/* ページ内リンク
--------------------------------------------------------- */
.anchorNav {
  /* sp */
}
.anchorNav ul {
  border-radius: var(--radius-l);
  border: 1px solid var(--color-separate-secondary);
  padding: var(--X2S);
  font-size: var(--font-xs);
}
.anchorNav ul li {
  display: inline-block;
  margin-right: 0.8em;
}
.anchorNav ul li a {
  position: relative;
  padding-right: 1.8em;
}
.anchorNav ul li a:after {
  font-family: "icon-jp-post2025";
  content: "\e90c";
  display: inline-block;
  text-decoration: none;
  font-size: 1.6em;
  position: absolute;
  right: 0;
  height: 1rem;
  line-height: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
}
.anchorNav ul li:last-child {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .anchorNav ul {
    padding: var(--X3S) var(--X2S);
  }
  .anchorNav ul li {
    display: block;
    margin-right: 0;
  }
  .anchorNav ul li a {
    display: block;
    padding: 0.8em 2em 0.8em 0;
  }
  .anchorNav ul li + li {
    border-top: 2px dotted var(--color-gray2);
  }
}

/* タブ切り替え
--------------------------------------------------------- */
.tabArea {
  /* sp */
}
.tabArea .btnList {
  margin-bottom: var(--XL);
  background: var(--color-fill);
  border-radius: var(--radius-full);
  padding: var(--X4S);
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.tabArea .btnList [role=tab] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: var(--X2S);
  text-align: center;
  border-radius: var(--radius-full);
  border: none;
  background: var(--color-fill);
  color: var(--color-button-secondary);
  font-size: var(--font-xs);
  cursor: pointer;
}
.tabArea .btnList [role=tab][aria-selected=true] {
  background: var(--color-button-primary);
  color: #FFF;
}
@media screen and (max-width: 767px) {
  .tabArea .btnList {
    margin-bottom: var(--S);
  }
}

/* トグルボックス
--------------------------------------------------------- */
.toggleBox .toggleHead {
  cursor: pointer;
}
.toggleBox .toggleBody {
  overflow: hidden;
  height: 0;
  -webkit-transition: height 260ms ease;
  transition: height 260ms ease;
}
.toggleBox.arrowicon .toggleHead {
  position: relative;
  padding-right: 35px;
}
.toggleBox.arrowicon .toggleHead:after {
  font-family: "icon-jp-post2025";
  content: "\e900";
  position: absolute;
  right: 0;
  font-size: 30px;
  height: 30px;
  height: 0;
  top: 0;
  margin: auto;
}
.toggleBox.arrowicon .toggleHead[aria-expanded=true]:after {
  font-family: "icon-jp-post2025";
  content: "\e903";
}
.toggleBox.plusicon .toggleHead {
  position: relative;
  padding-right: 35px;
}
.toggleBox.plusicon .toggleHead:after {
  font-family: "icon-jp-post2025";
  content: "\e955";
  position: absolute;
  right: 0;
  font-size: 30px;
  height: 30px;
  height: 0;
  top: 0;
  margin: auto;
}
.toggleBox.plusicon .toggleHead[aria-expanded=true]:after {
  font-family: "icon-jp-post2025";
  content: "\e95d";
}

/* 動きが苦手な人の環境ではアニメーション無効 */
@media (prefers-reduced-motion: reduce) {
  .toggleBody {
    -webkit-transition: none !important;
    transition: none !important;
  }
}
/* トグルボックス（SPのみ）
--------------------------------------------------------- */
.sptoggleBox .toggleHead {
  display: none;
}

.sptoggleBox .toggleBody {
  height: auto;
  overflow: visible;
  -webkit-transition: none;
  transition: none;
}

@media screen and (max-width: 767px) {
  .sptoggleBox .toggleHead {
    display: block;
  }
  .sptoggleBox .toggleBody {
    overflow: hidden;
    height: 0;
    -webkit-transition: height 0.28s ease;
    transition: height 0.28s ease;
  }
  .sptoggleBox.is-open .toggleBody {
    height: auto;
  }
} /* sp */
/* スライダー
--------------------------------------------------------- */
.sliderArea {
  /* sp */
}
.sliderArea img {
  max-width: 100%;
}
.sliderArea .swiper-slide.text {
  position: relative;
}
.sliderArea .swiper-slide.text .inner {
  position: absolute;
  z-index: 10;
  top: var(--L);
  left: var(--L);
}
.sliderArea .swiper-slide.text .inner .title {
  font-size: var(--font-head-m);
  font-weight: 700;
}
.sliderArea .swiper-slide.text .inner .title.arrow:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  font-size: 0.7em;
  margin-left: 0.3em;
  font-weight: normal;
  position: relative;
  top: -0.1em;
}
.sliderArea .swiper-slide.text .inner .lead {
  margin-top: 0.8rem;
}
.sliderArea .swiper-slide.text.white {
  color: #FFF;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.sliderArea .swiper-slide.text.white a {
  color: #FFF;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
}
.sliderArea .radius .swiper-slide img {
  border-radius: var(--XL) var(--X2S);
}
.sliderArea .control {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: var(--M);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--X2S);
}
.sliderArea .swiper-button-next, .sliderArea .swiper-button-prev {
  position: relative;
  color: var(--color-button-secondary);
  padding: var(--M);
  border-radius: var(--radius-l);
  border: 1px solid var(--color-button-secondary);
  background: #FFF;
  left: 0;
  right: auto;
  margin-top: 0;
  font-size: 1rem;
}
.sliderArea .swiper-button-next:after, .sliderArea .swiper-button-prev:after {
  content: none;
}
.sliderArea .swiper-button-next:before, .sliderArea .swiper-button-prev:before {
  font-size: var(--font-s);
}
.sliderArea .swiper-button-next:hover, .sliderArea .swiper-button-prev:hover {
  background: var(--color-fill);
}
.sliderArea .swiper-button-next:before {
  font-family: "icon-jp-post2025";
  content: "\e902";
}
.sliderArea .swiper-button-prev:before {
  font-family: "icon-jp-post2025";
  content: "\e901";
}
.sliderArea .swiper-pagination {
  margin-left: 0.5rem;
  position: relative;
  width: auto !important;
  left: 0 !important;
  top: auto !important;
  bottom: auto !important;
}
.sliderArea .swiper-pagination .swiper-pagination-bullet {
  background: var(--color-texticon-tertiary);
  opacity: 1;
  margin: 0 6px !important;
}
.sliderArea .swiper-pagination .swiper-pagination-bullet-active {
  background: var(--color-texticon-primary);
  width: 10px;
  height: 10px;
  top: 1px;
  position: relative;
}
.sliderArea .swiper_toggle {
  cursor: pointer;
  border: 1px solid var(--color-button-secondary);
  background: #FFF;
  color: var(--color-button-secondary);
  border-radius: 3rem;
  line-height: 0;
  font-size: 1rem;
  padding: 0.6rem;
}
.sliderArea .swiper_toggle:hover {
  background: var(--color-fill);
}
@media screen and (max-width: 767px) {
  .sliderArea .control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .sliderArea .control .swiper-pagination {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    text-align: right;
  }
}

/* ユーザー履歴関連
--------------------------------------------------------- */
.lastUsermenu {
  /* sp */
}
.lastUsermenu ul li {
  display: inline-block;
}
.lastUsermenu ul li a {
  font-size: var(--font-xs);
  text-decoration: none;
  display: block;
  white-space: nowrap;
  -webkit-transition: background 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  transition: background 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  transition: background 0.2s, box-shadow 0.2s, border-color 0.2s;
  transition: background 0.2s, box-shadow 0.2s, border-color 0.2s, -webkit-box-shadow 0.2s;
  padding: 10px var(--XS) 10px;
  border: 1px solid var(--color-separate-primary);
  border-radius: 3rem;
  max-width: 100%;
  text-overflow: ellipsis;
  line-height: 1;
}
.lastUsermenu ul li a:before {
  font-family: "icon-jp-post2025";
  content: "\e91a";
  font-size: 120%;
  line-height: 0;
  position: relative;
  top: 0.1em;
  margin-right: 0.3em;
}
.lastUsermenu ul li a:hover {
  background: var(--color-bg-secondary);
}
.lastUsermenu ul li:focus-visible {
  outline: none;
  -webkit-box-shadow: 0 0 0 2px rgba(100, 150, 255, 0.35);
          box-shadow: 0 0 0 2px rgba(100, 150, 255, 0.35);
  border-color: var(--color-button-focus);
}
.lastUsermenu ul li + li {
  margin-left: 0.5em;
}
@media screen and (max-width: 767px) {
  .lastUsermenu ul li {
    margin-bottom: 0.8rem;
  }
}

/* 記事一覧
--------------------------------------------------------- */
.newsList {
  /* sp */
}
.newsList article.item {
  padding: var(--L) 0;
  border-top: 1px solid var(--color-gray2);
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.newsList article.item .meta {
  -ms-flex-preferred-size: 18ch;
      flex-basis: 18ch;
}
.newsList article.item .meta time {
  color: var(--color-text-primary);
  font-weight: 700;
}
.newsList article.item .meta span.category {
  display: block;
  font-size: var(--font-xxs);
  margin-top: 0.5em;
}
.newsList article.item .meta span.category a {
  color: var(--color-text-primary);
  text-decoration: none;
}
.newsList article.item .meta span.category a:before {
  content: "";
  background: var(--color-primary);
  height: 0.4rem;
  width: 0.4rem;
  border-radius: 2rem;
  display: inline-block;
  margin-right: 0.3em;
  position: relative;
  top: -0.1em;
}
.newsList article.item .content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-left: 1px solid var(--color-gray2);
  padding-left: var(--XL);
  position: relative;
}
.newsList article.item .content .title {
  font-size: var(--font-m);
  font-weight: 700;
}
.newsList article.item .content .title a {
  color: var(--color-text-primary);
  text-decoration: none;
}
.newsList article.item .content .title a:hover {
  text-decoration: underline;
}
.newsList article.item .content .title a:after {
  font-family: "icon-jp-post2025";
  content: "\e902";
  height: 1em;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  font-weight: normal;
}
.newsList article.item .content .title a[target=_blank]:after {
  content: "\e917";
}
.newsList article.item .content ul.tags {
  margin-top: var(--X2S);
}
.newsList article.item .content ul.tags li {
  display: inline-block;
}
.newsList article.item .content ul.tags li a {
  text-decoration: none;
  font-size: var(--font-xs);
  background: var(--color-fill);
  padding: 0.3em 0.8em;
  line-height: 1;
  border-radius: var(--radius-s);
}
.newsList article.item .content ul.tags li a:hover {
  text-decoration: underline;
}
.newsList article.item .content ul.tags li + li {
  margin-left: 0.5em;
}
.newsList article.item:last-child {
  border-bottom: 1px solid var(--color-gray2);
}
@media screen and (max-width: 767px) {
  .newsList article.item {
    display: block;
  }
  .newsList article.item .meta span.category {
    display: inline-block;
    margin-left: 1rem;
    margin-top: 0;
  }
  .newsList article.item .content {
    margin-top: var(--X2S);
    padding-left: 0;
    border-left: 0;
  }
}

/*----------------------------------------------------------
	一時対応
--------------------------------------------------------- */