@charset "UTF-8";
/*----------------------*/
/* Noto Sans JP */
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Thin.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-ExtraLight.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Light.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-ExtraBold.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/files/fonts/NotoSansJP-Black.woff2") format("woff2");
}
/*----------------------*/
/* Montserrat */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/Montserrat.woff2") format("woff2");
}
/*----------------------*/
/* Lato */
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("/media/files/fonts/Lato-Thin.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/media/files/fonts/Lato-Light.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/files/fonts/Lato-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/media/files/fonts/Lato-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/files/fonts/Lato-Black.woff2") format("woff2");
}
/*-- foundationフォルダの中の_index.scss --*/
body,
h1,
h2,
h3,
h4,
h5,
table,
th,
td,
ul,
li,
ol,
dl,
dt,
dd,
form,
p,
figure,
fieldset {
  margin: 0px;
  padding: 0px;
  font-weight: unset;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: unset;
  line-height: unset;
  letter-spacing: unset;
  text-underline-offset: 3px;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}
a img {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

input,
textArea,
select,
button {
  background: none;
  margin: 0px;
  outline: none;
  padding: 0px;
  font-weight: initial;
  font-family: initial;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  -webkit-appearance: none;
}

select {
  -webkit-appearance: button;
  appearance: button;
}

button {
  cursor: pointer;
}

* {
  box-sizing: border-box;
}

/*                link
======================================================= */
a {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
table,
th,
td,
ul,
li,
ol,
dl,
dt,
dd,
form,
button,
label,
div,
p,
span {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}

/*-- layoutフォルダの中の_index.scss --*/
html {
  font-size: 0.0625vw;
}
@media screen and (max-width: 1271px) {
  html {
    font-size: 0.1302083333vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 0.2336448598vw;
  }
}

.is-sp-menu-opened {
  overflow: hidden;
}

.l-wrap {
  position: relative;
}

.l-main {
  position: relative;
  min-height: 700rem;
  padding-top: 128rem;
  background-color: #f3f5f6;
}
@media screen and (max-width: 1271px) {
  .l-main {
    padding-top: 104rem;
  }
}

.l-main__content {
  padding: 48rem 0;
}

/*                link
======================================================= */
button,
a {
  color: #2b2d31;
  transition: all 0.3s linear 0s;
}
@media (hover: hover) and (pointer: fine) {
  button:hover,
  a:hover {
    opacity: 0.5;
  }
}

.l-hd {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 200;
  height: 128rem;
  align-content: center;
}
@media screen and (max-width: 1271px) {
  .l-hd {
    height: 100rem;
  }
}
.l-hd .l-hd__inner {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20rem 40rem;
  background-color: #ffffff;
  height: 88rem;
  margin: 0 auto;
  border-radius: 100em;
  width: calc(100% - 40rem);
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__inner {
    padding: 10rem 80rem 10rem 24rem;
    background-color: #ffffff;
    height: 80rem;
    margin: 0 auto;
    border-radius: 100em;
    width: calc(100% - 40rem);
  }
}
@media screen and (max-width: 767px) {
  .l-hd .l-hd__inner {
    width: 404rem;
  }
}
.l-hd .l-hd__logo {
  flex-shrink: 2;
}
.l-hd .l-hd__logo .l-hd__logo-link {
  display: flex;
  gap: 13rem;
  flex-shrink: 2;
  align-items: end;
  margin-top: 3rem;
}
@media (hover: hover) and (pointer: fine) {
  .l-hd .l-hd__logo .l-hd__logo-link:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__logo .l-hd__logo-link {
    gap: 12rem;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .l-hd .l-hd__logo .l-hd__logo-link {
    gap: 12rem;
    align-items: center;
  }
}
.l-hd .l-hd__logo .l-hd__logo-link h1 {
  flex-shrink: 2;
}
.l-hd .l-hd__logo .l-hd__logo-link .l-hd__logo-img {
  display: block;
  width: 203rem;
  height: auto;
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__logo .l-hd__logo-link .l-hd__logo-img {
    width: 203rem;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .l-hd .l-hd__logo .l-hd__logo-link .l-hd__logo-img {
    width: 82rem;
    height: auto;
  }
}
.l-hd .l-hd__logo .l-hd__logo-txt {
  font-size: 24rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  font-weight: 700;
  display: block;
  height: 1em;
}
@media screen and (max-width: 767px) {
  .l-hd .l-hd__logo .l-hd__logo-txt {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 100%;
  }
}
.l-hd .l-hd__logo .l-hd__tagline {
  margin-top: 10rem;
  font-size: 12rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__logo .l-hd__tagline {
    display: none;
  }
}
.l-hd .l-hd__menu .l-hd__menu-list {
  display: flex;
}
.l-hd .l-hd__menu .l-hd__menu-list.--Upper {
  justify-content: end;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  gap: 12rem;
}
.l-hd .l-hd__menu .l-hd__menu-list.--Lower {
  justify-content: space-between;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  margin-top: 13rem;
  gap: 19rem;
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__menu .l-hd__menu-list.--Lower,
  .l-hd .l-hd__menu .l-hd__menu-list .--contact {
    display: none;
  }
  .l-hd .l-hd__menu .l-hd__menu-list .--search {
    text-indent: -9999px;
    line-height: 0;
    font-size: 0;
    overflow: hidden;
  }
  .l-hd .l-hd__menu .l-hd__menu-list .--search a {
    width: 24rem;
    height: 24rem;
    padding: 0;
  }
  .l-hd .l-hd__menu .l-hd__menu-list .--search a::after {
    position: relative;
    top: auto;
    right: auto;
    transform: none;
    width: 100%;
    height: 100%;
  }
}
.l-hd .l-hd__menu .l-hd__menu-list .l-hd__menu-link a:not(.m-icon) {
  position: relative;
  display: block;
  padding-right: 18rem;
}
.l-hd .l-hd__menu .l-hd__menu-list .l-hd__menu-link a:not(.m-icon)::after {
  content: "";
  display: block;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url("/media/images/common/icon-link_arrow01.svg");
  background-color: #0071BE;
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: calc(50% + 0.5rem);
  right: 0;
  transform: translateY(-50%);
}
.l-hd .l-hd__menu .l-hd__menu-list.--Lower .l-hd__menu-link a::before {
  content: "";
  display: block;
  height: 4rem;
  width: 60rem;
  background-color: #005da0;
  position: absolute;
  bottom: -24rem;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: all 0.3s ease;
  pointer-events: none;
}
.l-hd .l-hd__menu .l-hd__menu-list.--Lower .l-hd__menu-link a:hover {
  opacity: 1;
  color: #005da0;
}
.l-hd .l-hd__menu .l-hd__menu-list.--Lower .l-hd__menu-link a:hover::before {
  opacity: 1;
  transition: all 0.5s ease-in;
}
.l-hd .l-hd__sp-btn {
  display: none;
}
@media screen and (max-width: 1271px) {
  .l-hd .l-hd__sp-btn {
    position: absolute;
    top: 32rem;
    right: 42rem;
    cursor: pointer;
    display: block;
    width: 40rem;
    height: 38rem;
  }
}
@media screen and (max-width: 767px) {
  .l-hd .l-hd__sp-btn {
    right: 36rem;
  }
}
.l-hd .l-hd__sp-btn .--toggle {
  position: relative;
  width: 100%;
  height: 20rem;
  transition: all 0.3s linear 0s;
}
.l-hd .l-hd__sp-btn .--toggle span {
  position: absolute;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #0071BE;
  top: 50%;
  border-radius: 2rem;
  transition: all 0.3s linear 0s;
  overflow: hidden;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
}
.l-hd .l-hd__sp-btn .--toggle .line-1 {
  transform: translate(-50%, -5rem);
}
.l-hd .l-hd__sp-btn .--toggle .line-2 {
  transform: translate(-50%, 5rem);
}
body.is-sp-menu-opened .l-hd .l-hd__sp-btn .--toggle {
  top: 10rem;
}
body.is-sp-menu-opened .l-hd .l-hd__sp-btn .--toggle .line-1 {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
body.is-sp-menu-opened .l-hd .l-hd__sp-btn .--toggle .line-2 {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.l-hd .l-hd__sp-btn .--txt {
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size: 12rem;
  text-align: center;
  color: #0071BE;
  transition: all 0.3s linear 0s;
}
body.is-sp-menu-opened .l-hd .l-hd__sp-btn .--txt {
  opacity: 0;
}

.l-ft {
  padding: 0 40rem;
}
@media screen and (max-width: 767px) {
  .l-ft {
    padding: 0 24rem;
  }
}
.l-ft .l-ft-cont {
  display: flex;
  justify-content: space-between;
  align-items: start;
  padding: 80rem 0 40rem;
  width: 1408rem;
  margin: 0 auto;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-cont {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-cont {
    padding-top: 64rem;
    padding-bottom: 18rem;
  }
}
.l-ft .l-ft-logo {
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-logo {
    margin: 0 auto;
  }
}
.l-ft .l-ft-logo img {
  width: 255rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-logo img {
    width: 222rem;
  }
}
.l-ft .l-ft-logo .l-ft-logo-link {
  opacity: 1;
}
.l-ft .l-ft-menu {
  width: 888rem;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-menu {
    width: 100%;
  }
}
.l-ft .l-ft-menu__list {
  margin-top: 40rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30rem 46rem;
  width: 100%;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-menu__list {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 120%;
    gap: 16rem 24rem;
  }
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-menu__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 29rem 24rem;
    margin-top: 47rem;
  }
}
.l-ft .l-ft-menu__list .l-ft-menu__item {
  font-size: 18rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  font-weight: 700;
  color: #2b2d31;
}
.l-ft .l-ft-menu__list .l-ft-menu__link {
  position: relative;
  padding-left: 22rem;
  display: block;
}
.l-ft .l-ft-menu__list .l-ft-menu__link::before {
  content: "";
  display: block;
  width: 20rem;
  height: 20rem;
  position: absolute;
  top: calc(50% - 10rem);
  left: 0;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url("/media/images/common/icon-link_arrow02-g.svg");
  background-color: #CBD1D4;
  transition: all 0.3s linear 0s;
}
@media (hover: hover) and (pointer: fine) {
  .l-ft .l-ft-menu__list .l-ft-menu__link:hover {
    opacity: 1;
    color: #005da0;
  }
  .l-ft .l-ft-menu__list .l-ft-menu__link:hover::before {
    background-color: #005da0;
  }
}
.l-ft .l-ft-banner {
  width: 400rem;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-banner {
    width: auto;
    display: flex;
    margin-top: 48rem;
    gap: 8rem;
  }
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-banner__item {
    width: calc(50% - 4rem);
  }
}
.l-ft .l-ft-banner__item:not(:first-of-type) {
  margin-top: 12rem;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-banner__item:not(:first-of-type) {
    margin-top: 0;
  }
}
.l-ft .l-ft-banner__item .l-ft-banner__btn {
  min-height: 80rem;
  position: relative;
  border-radius: 4rem;
  border: 1px solid #000;
  box-sizing: border-box;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12rem 16rem;
  gap: 4rem;
  text-align: center;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  height: 100%;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-banner__item .l-ft-banner__btn {
    min-height: 69rem;
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
    text-align: left;
    justify-content: left;
  }
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-banner__item .l-ft-banner__btn {
    padding: 8rem 14rem;
    gap: 2rem;
    justify-content: space-between;
  }
}
.l-ft .l-ft-banner__item .l-ft-banner__btn::after {
  content: "";
  display: block;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
}
.l-ft .l-ft-banner__item.--anytime .l-ft-banner__btn {
  background-color: #2b2d31;
  color: #fff;
}
.l-ft .l-ft-banner__item.--anytime .l-ft-banner__btn::after {
  mask-image: url("/media/images/common/icon-btn_arrow01.svg");
  background-color: #ffffff;
  width: 24rem;
  height: 24rem;
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-banner__item.--anytime .l-ft-banner__btn::after {
    width: 20rem;
    height: 20rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-ft .l-ft-banner__item.--anytime .l-ft-banner__btn:hover {
    opacity: 1;
    background-color: #000000;
  }
}
.l-ft .l-ft-banner__item.--fullten .l-ft-banner__btn {
  background-color: #fff;
  color: #2b2d31;
}
.l-ft .l-ft-banner__item.--fullten .l-ft-banner__btn::after {
  mask-image: url("/media/images/common/icon-link_arrow02.svg");
  background-color: #000000;
  width: 20rem;
  height: 20rem;
}
@media (hover: hover) and (pointer: fine) {
  .l-ft .l-ft-banner__item.--fullten .l-ft-banner__btn:hover {
    opacity: 1;
    background-color: #cbd1d4;
    color: #2b2d31;
  }
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-banner__item.--fullten .l-ft-banner__btn {
    border: 1px solid #005da0;
    color: #005da0;
  }
}
.l-ft .l-ft-link_list {
  padding: 0rem 0 0rem;
  width: 1408rem;
  margin: 22rem auto 0;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-link_list {
    display: block;
    width: 100%;
  }
}
.l-ft .l-ft-link {
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  gap: 19rem 27rem;
  width: fit-content;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-link {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
  }
}
.l-ft .l-ft-link.--company {
  margin-top: 0;
}
.l-ft .l-ft-link.--affiliates {
  margin-top: 39rem;
  width: 80%;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-link.--affiliates {
    width: auto;
  }
}
.l-ft .l-ft-info {
  display: flex;
  justify-content: right;
  align-items: center;
  padding: 36rem 55rem 40rem;
  font-size: 12rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-info {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .l-ft .l-ft-info {
    display: block;
    padding: 36rem 0 40rem;
  }
}
.l-ft .l-ft-info .l-ft-info__mark {
  display: flex;
  align-items: center;
  gap: 20rem;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-info .l-ft-info__mark {
    display: block;
  }
}
.l-ft .l-ft-info .info__mark-item {
  display: flex;
  align-items: center;
  gap: 10rem;
}
.l-ft .l-ft-info .info__mark-item .info__mark-icon {
  flex-shrink: 0;
}
.l-ft .l-ft-info .info__mark-item .info__mark-txt {
  flex-shrink: 1;
}
.l-ft .l-ft-info .info__mark-item.--privacymark .info__mark-icon {
  width: 75rem;
}
.l-ft .l-ft-info .info__mark-item.--yuryomark {
  gap: 0;
}
.l-ft .l-ft-info .info__mark-item.--yuryomark .info__mark-icon {
  width: 100rem;
}
@media screen and (max-width: 1271px) {
  .l-ft .l-ft-info .info__mark-item.--yuryomark .info__mark-icon {
    width: 75rem;
  }
}
.l-ft .l-ft-copyright {
  display: block;
  text-align: center;
  font-size: 12rem;
  line-height: 1.6;
}

.l-sp-menu-list-cntr {
  max-height: calc(100dvh - 100rem);
  overflow-y: scroll;
  padding: 16rem 32rem 40rem;
}
@media screen and (max-width: 1271px) {
  .l-sp-menu-list-cntr {
    max-height: calc(100dvh - 109rem);
  }
}
.l-sp-menu {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 104rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 102;
  background-color: #2b2d31;
  transition: all 0.3s linear 0s;
  color: #ffffff;
  width: auto;
  border-radius: 8rem;
}
@media screen and (max-width: 1271px) {
  .l-sp-menu {
    width: calc(100% - 40rem);
  }
}
@media screen and (max-width: 767px) {
  .l-sp-menu {
    width: 404rem;
  }
}
@media screen and (max-width: 1271px) {
  body.is-sp-menu-opened .l-sp-menu {
    opacity: 1;
    pointer-events: auto;
  }
}
.l-sp-menu .l-sp-menu__item:not(:first-of-type) {
  border-top: 1px solid #fff;
}
.l-sp-menu .l-sp-menu__item .l-sp-menu__link {
  display: block;
  color: #ffffff;
  padding: 23.5rem 36rem 23.5rem 0;
  position: relative;
}
.l-sp-menu .l-sp-menu__item .l-sp-menu__link::after {
  content: "";
  display: block;
  width: 24rem;
  height: 24rem;
  position: absolute;
  top: 50%;
  right: 8rem;
  transform: translateY(-50%);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center center;
  mask-image: url("/media/images/common/icon-btn_arrow01.svg");
  background-color: #599BC8;
}
.l-sp-menu .l-sp-menu__item .l-sp-menu__link.--blank::after {
  mask-image: url("/media/images/common/icon-blank.svg");
}
.l-sp-menu .l-sp-menu__btn-wrap {
  display: flex;
  gap: 4rem;
  margin-top: 8rem;
}
.l-sp-menu .l-sp-menu__btn {
  width: calc(50% - 2rem);
  min-height: 60rem;
}
.l-sp-menu .l-sp-menu__btn .l-sp-menu__btn--link {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 4rem;
  background-color: #fff;
  border: 1px solid #0071BE;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12rem 16rem;
  gap: 0;
  text-align: center;
  font-size: 16rem;
  color: #2b2d31;
}
.l-sp-menu .l-sp-menu__ttl {
  margin-top: 33rem;
}
.l-sp-menu .l-sp-menu__ttl .l-sp-menu__logo {
  width: 282rem;
  margin: 0 auto;
}
.l-sp-menu .l-sp-menu__ttl .l-sp-menu__tagline {
  margin-top: 12rem;
  font-size: 12rem;
  letter-spacing: 0.05em;
  line-height: 140%;
  text-align: center;
}

.l-page-top {
  position: absolute;
  right: 20rem;
}

/*-- componentフォルダの中の_index.scss --*/
@media screen and (min-width: 1272px) {
  .u-hide-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) and (max-width: 1271px) {
  .u-hide-tb {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .u-hide-sp {
    display: none;
  }
}

.u-visible-pc {
  display: none;
}
@media screen and (min-width: 1272px) {
  .u-visible-pc {
    display: block;
  }
  .u-visible-pc.--inline {
    display: inline;
  }
  .u-visible-pc.--inlineblock {
    display: inline-block;
  }
}

@media screen and (min-width: 1272px) {
  br.u-visible-pc {
    display: inline-block;
  }
}

.u-visible-tb {
  display: none;
}
@media screen and (min-width: 768px) and (max-width: 1271px) {
  .u-visible-tb {
    display: block;
  }
  .u-visible-tb.--inline {
    display: inline;
  }
  .u-visible-tb.--inlineblock {
    display: inline-block;
  }
}

@media screen and (min-width: 768px) and (max-width: 1271px) {
  br.u-visible-tb {
    display: inline-block;
  }
}

.u-visible-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-visible-sp {
    display: block;
  }
  .u-visible-sp.--inline {
    display: inline;
  }
  .u-visible-sp.--inlineblock {
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  br.u-visible-sp {
    display: inline-block;
  }
}

/*                brの代用
======================================================= */
i.u-br {
  display: block;
  font-size: 0;
  height: 0;
  line-height: 0;
  width: 0;
}

/*                c-index_list
======================================================= */
.c-lineup_list,
.c-products_list,
.c-index_list {
  display: flex;
  flex-wrap: wrap;
  gap: 49rem 24rem;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list,
  .c-products_list,
  .c-index_list {
    gap: 40rem 20rem;
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list,
  .c-products_list,
  .c-index_list {
    gap: 25rem 8rem;
  }
}
.c-lineup_list .c-list-item,
.c-products_list .c-list-item,
.c-index_list .c-list-item {
  width: 312rem;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list .c-list-item,
  .c-products_list .c-list-item,
  .c-index_list .c-list-item {
    width: calc((100% - 40rem) / 3);
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item,
  .c-products_list .c-list-item,
  .c-index_list .c-list-item {
    width: calc(50% - 4rem);
  }
}
.c-lineup_list .c-list-item .item-pic,
.c-products_list .c-list-item .item-pic,
.c-index_list .c-list-item .item-pic {
  position: relative;
  z-index: 0;
}
.c-lineup_list .c-list-item .item-pic img,
.c-products_list .c-list-item .item-pic img,
.c-index_list .c-list-item .item-pic img {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
  border: solid 1px #dfe3e5;
  border-radius: 8rem;
  aspect-ratio: 100/100;
  object-fit: contain;
  width: 100%;
  height: auto;
}
.c-lineup_list .c-list-item .item-pic .--notice_mark,
.c-products_list .c-list-item .item-pic .--notice_mark,
.c-index_list .c-list-item .item-pic .--notice_mark {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 2rem;
}
.c-lineup_list .c-list-item .item-pic .--new,
.c-products_list .c-list-item .item-pic .--new,
.c-index_list .c-list-item .item-pic .--new {
  position: relative;
  border: 1px solid #e6001b;
  box-sizing: border-box;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5rem 7rem;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  background-color: #e6001b;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item .item-pic .--new,
  .c-products_list .c-list-item .item-pic .--new,
  .c-index_list .c-list-item .item-pic .--new {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 4rem 5rem;
  }
}
.c-lineup_list .c-list-item .item-info,
.c-products_list .c-list-item .item-info,
.c-index_list .c-list-item .item-info {
  margin-top: 16rem;
}
.c-lineup_list .c-list-item .item-info .--meta,
.c-products_list .c-list-item .item-info .--meta,
.c-index_list .c-list-item .item-info .--meta {
  display: flex;
  align-items: center;
  gap: 4rem;
  flex-wrap: wrap;
}
.c-lineup_list .c-list-item .item-info .--ttl,
.c-products_list .c-list-item .item-info .--ttl,
.c-index_list .c-list-item .item-info .--ttl {
  margin-top: 0;
  font-size: 24rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  font-weight: 700;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list .c-list-item .item-info .--ttl,
  .c-products_list .c-list-item .item-info .--ttl,
  .c-index_list .c-list-item .item-info .--ttl {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 130%;
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item .item-info .--ttl,
  .c-products_list .c-list-item .item-info .--ttl,
  .c-index_list .c-list-item .item-info .--ttl {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 130%;
  }
}
.c-lineup_list .c-list-item .item-info .--cate,
.c-products_list .c-list-item .item-info .--cate,
.c-index_list .c-list-item .item-info .--cate {
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  text-align: center;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list .c-list-item .item-info .--cate,
  .c-products_list .c-list-item .item-info .--cate,
  .c-index_list .c-list-item .item-info .--cate {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 130%;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item .item-info .--cate,
  .c-products_list .c-list-item .item-info .--cate,
  .c-index_list .c-list-item .item-info .--cate {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 130%;
    margin-top: 4rem;
  }
}
.c-lineup_list .c-list-item .item-info .--tag,
.c-products_list .c-list-item .item-info .--tag,
.c-index_list .c-list-item .item-info .--tag {
  margin-top: 10rem;
}
.c-lineup_list .c-list-item .item-info .--brand span,
.c-products_list .c-list-item .item-info .--brand span,
.c-index_list .c-list-item .item-info .--brand span {
  display: block;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  padding: 5rem 7rem;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  width: fit-content;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list .c-list-item .item-info .--brand span,
  .c-products_list .c-list-item .item-info .--brand span,
  .c-index_list .c-list-item .item-info .--brand span {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 4rem 6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item .item-info .--brand span,
  .c-products_list .c-list-item .item-info .--brand span,
  .c-index_list .c-list-item .item-info .--brand span {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 3rem 5rem;
  }
}
.c-lineup_list .c-list-item .item-info .--badge-red,
.c-products_list .c-list-item .item-info .--badge-red,
.c-index_list .c-list-item .item-info .--badge-red {
  display: block;
  position: relative;
  background-color: #fff;
  border: 1px solid #e6001b;
  box-sizing: border-box;
  padding: 5rem 7rem;
  text-align: left;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  color: #e6001b;
  width: fit-content;
}
@media screen and (max-width: 1271px) {
  .c-lineup_list .c-list-item .item-info .--badge-red,
  .c-products_list .c-list-item .item-info .--badge-red,
  .c-index_list .c-list-item .item-info .--badge-red {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 4rem 6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-lineup_list .c-list-item .item-info .--badge-red,
  .c-products_list .c-list-item .item-info .--badge-red,
  .c-index_list .c-list-item .item-info .--badge-red {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 3rem 5rem;
  }
}
/*                c-archive
======================================================= */
.c-archive_index-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.c-archive_list {
  display: flex;
  flex-wrap: wrap;
  gap: 28rem;
}
@media screen and (max-width: 1271px) {
  .c-archive_list {
    justify-content: space-between;
  }
}
.c-archive_list .c-archive-item {
  width: min(100%, 326rem);
}
@media screen and (max-width: 1271px) {
  .c-archive_list .c-archive-item {
    width: calc(50% - 14rem);
  }
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item {
    width: 100%;
  }
}
.c-archive_list .c-archive-item .item-pic {
  position: relative;
  z-index: 0;
}
.c-archive_list .c-archive-item .item-pic img {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
  border: solid 1px #dfe3e5;
  border-radius: 8rem;
  aspect-ratio: 100/100;
  object-fit: cover;
  width: 100%;
  height: auto;
}
.c-archive_list .c-archive-item .item-pic .--notice_mark {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 2rem;
}
.c-archive_list .c-archive-item .item-pic .--pickup,
.c-archive_list .c-archive-item .item-pic .--imp,
.c-archive_list .c-archive-item .item-pic .--new {
  position: relative;
  border: 1px solid #e6001b;
  box-sizing: border-box;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5rem 7rem;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  background-color: #e6001b;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-pic .--pickup,
  .c-archive_list .c-archive-item .item-pic .--imp,
  .c-archive_list .c-archive-item .item-pic .--new {
    font-size: 10rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 4rem 6rem;
  }
}
.c-archive_list .c-archive-item .item-info {
  margin-top: 15rem;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-info {
    margin-top: 16rem;
  }
}
.c-archive_list .c-archive-item .item-info .--meta {
  display: flex;
  align-items: center;
  gap: 8rem;
}
.c-archive_list .c-archive-item .item-info .--cate {
  position: relative;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  padding: 6rem 7rem;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  color: #2b2d31;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-info .--cate {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 4rem 5rem;
  }
}
.c-archive_list .c-archive-item .item-info .--ttl {
  margin-top: 10rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-info .--ttl {
    margin-top: 5rem;
  }
}
.c-archive_list .c-archive-item .item-info .--txt {
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 160%;
  color: #2b2d31;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-top: 5rem;
}
.c-archive_list .c-archive-item .item-info .--tag {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-info .--tag {
    margin-top: 8rem;
  }
}
.c-archive_list .c-archive-item .item-info .--tag ul {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem;
}
.c-archive_list .c-archive-item .item-info .--tag .--tag-name span {
  position: relative;
  border-radius: 999em;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6rem 10rem;
  font-size: 14rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  color: #2b2d31;
}
@media screen and (max-width: 767px) {
  .c-archive_list .c-archive-item .item-info .--tag .--tag-name span {
    font-size: 12rem;
    letter-spacing: 0.05em;
    line-height: 100%;
    padding: 6rem 7rem;
  }
}

/*                c-aside
======================================================= */
.c-aside .c-aside_menu .--menu-link {
  border-top: 1px solid #cbd1d4;
}
.c-aside .c-aside_menu .--menu-link a {
  display: block;
  width: 100%;
  min-height: 59rem;
  position: relative;
  padding: 8rem 0;
  align-content: center;
  box-sizing: border-box;
  text-align: left;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  padding-left: 18rem;
}
.c-aside .c-aside_menu .--menu-link a::after {
  content: "";
  display: block;
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: calc(50% - 10rem);
  left: 0;
  background-image: url(/media/images/common/icon-link_arrow02-g.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.c-view-category--sp {
  margin-top: 34rem;
  display: none;
}
@media screen and (max-width: 1271px) {
  .c-view-category--sp {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .c-view-category--sp {
    display: block;
  }
}
.c-view-category--sp .menu-open_btn {
  width: fit-content;
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: center;
  gap: 11rem;
  cursor: pointer;
  transition: all 0.3s linear 0s;
}
.c-view-category--sp .menu-open_btn .--txt {
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 150%;
}
.c-view-category--sp .menu-open_btn .--toggle {
  position: relative;
  width: 10rem;
  height: 10rem;
}
.c-view-category--sp .menu-open_btn .--toggle span {
  display: none;
}
.c-view-category--sp .menu-open_btn .--toggle::before, .c-view-category--sp .menu-open_btn .--toggle::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #000000;
  position: absolute;
  top: 50%;
  left: 50%;
}
.c-view-category--sp .menu-open_btn .--toggle::before {
  transform: translate(-50%, -50%);
}
.c-view-category--sp .menu-open_btn .--toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
@media (hover: hover) and (pointer: fine) {
  .c-view-category--sp .menu-open_btn:hover {
    opacity: 0.5;
  }
}
.c-view-category--sp .menu-list {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.3s linear 0s;
}
.c-view-category--sp .menu-list ul {
  margin-top: 25rem;
}
.c-view-category--sp .--menu-link {
  border-top: 1px solid #cbd1d4;
}
.c-view-category--sp .--menu-link a {
  display: block;
  width: 100%;
  min-height: 59rem;
  position: relative;
  padding: 8rem 0;
  align-content: center;
  box-sizing: border-box;
  text-align: left;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  padding-left: 18rem;
}
.c-view-category--sp .--menu-link a::after {
  content: "";
  display: block;
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: calc(50% - 10rem);
  left: 0;
  background-image: url(/media/images/common/icon-link_arrow02-g.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
.c-view-category--sp.open .menu-list {
  max-height: 500rem;
  /* 内容量に応じて十分大きい値に設定 */
  opacity: 1;
}

/*                c-archive
======================================================= */
.c-float-area {
  /*
  position: sticky;
  z-index: 2;
  top: 50%;
  left: 100%;
  // right: 0;
  // margin-left: auto;
  transform: translate(40rem, -50%);
  height: 0;
  width: fit-content;
  margin-bottom: 0;
  */
  position: absolute;
  top: 0;
  right: -140rem;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
@media screen and (max-width: 1271px) {
  .c-float-area {
    right: -40rem;
  }
}
@media screen and (max-width: 767px) {
  .c-float-area {
    right: -24rem;
  }
}
.c-float-area .c-float-sticky {
  position: sticky;
  z-index: 2;
  top: 40%;
  left: 100%;
  pointer-events: visible;
}
@media screen and (max-width: 1271px) {
  .c-float-area .c-float-sticky {
    top: 70%;
    transform: translateY(100%);
  }
}
/*                c-link-btn01
======================================================= */
.c-link-btn01 {
  width: fit-content;
  margin: 0 auto;
}
.c-link-btn01 a.--bt-link {
  width: 100%;
  min-width: 300rem;
  height: 100%;
  min-height: 80rem;
  position: relative;
  border-radius: 4rem;
  background-color: #2b2d31;
  display: flex;
  gap: 8rem;
  align-items: center;
  justify-content: center;
  padding: 12rem;
}
@media screen and (max-width: 767px) {
  .c-link-btn01 a.--bt-link {
    min-height: 60rem;
  }
}
.c-link-btn01 a.--bt-link .--name {
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  color: #ffffff;
  display: block;
}
.c-link-btn01 a.--bt-link::after {
  content: "";
  display: block;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url("/media/images/common/icon-btn_arrow01.svg");
  width: 24rem;
  height: 24rem;
  background-color: #ffffff;
}
@media (hover: hover) and (pointer: fine) {
  .c-link-btn01 a.--bt-link:hover {
    opacity: 1;
    background-color: #000000;
  }
}

/*                c-tab_menu
======================================================= */
.c-tab_menu .c-tab_menu_inr {
  display: flex;
  justify-content: space-between;
  gap: 0;
  height: 80rem;
  width: 100%;
  position: relative;
  border-radius: 10em;
  background-color: #dfe3e5;
  overflow: hidden;
  z-index: 0;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}
@media screen and (max-width: 767px) {
  .c-tab_menu .c-tab_menu_inr {
    height: 60rem;
  }
}
.c-tab_menu .c-tab_menu_btn {
  width: 300rem;
}
.c-tab_menu .--btn-link {
  border-radius: 10em;
  display: block;
  align-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  padding: 12rem;
  box-sizing: border-box;
  cursor: pointer;
  text-align: center;
  font-size: 16rem;
  color: #585b67;
  background-color: #dfe3e5;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .c-tab_menu .--btn-link {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
    padding: 10rem;
  }
}
.c-tab_menu .--btn-link.btn-active {
  background-color: #2b2d31;
  color: #fff;
  pointer-events: none;
  padding: 12rem;
}

.c-page-head {
  padding: 0;
}
.c-page-head .c-page-head__inr {
  position: relative;
  height: 100%;
  min-height: 200rem;
  padding: 30rem 40rem;
  text-align: center;
  align-content: center;
}
@media screen and (max-width: 767px) {
  .c-page-head .c-page-head__inr {
    min-height: 114rem;
    padding: 10rem 20rem;
  }
}
.c-page-head .c-page-head_ttl {
  position: relative;
  z-index: 1;
}
.c-page-head .c-page-head_ttl .--en {
  display: block;
  font-size: 28rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  color: #005da0;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-page-head .c-page-head_ttl .--en {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 130%;
  }
}
.c-page-head .c-page-head_ttl .--jp {
  display: block;
  font-size: 48rem;
  letter-spacing: 0.03em;
  line-height: 130%;
  color: #2b2d31;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-page-head .c-page-head_ttl .--jp {
    font-size: 28rem;
    letter-spacing: 0.03em;
    line-height: 130%;
  }
}
.c-page-head.--bgimg {
  padding: 0;
}
.c-page-head.--bgimg .c-page-head__inr {
  padding: 0;
  min-height: 380rem;
}
@media screen and (max-width: 767px) {
  .c-page-head.--bgimg .c-page-head__inr {
    min-height: 200rem;
  }
}
.c-page-head.--bgimg .c-page-head_ttl .--en {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-page-head.--bgimg .c-page-head_ttl .--en {
    font-size: 20rem;
    letter-spacing: 0.05em;
    line-height: 130%;
  }
}
.c-page-head.--bgimg .c-page-head_ttl .--jp {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-page-head.--bgimg .c-page-head_ttl .--jp {
    font-size: 32rem;
    letter-spacing: 0.03em;
    line-height: 130%;
  }
}
.c-page-head.--bgimg .c-page-head_bg {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-page-head.--bgimg .c-page-head_bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-sec-ttl {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 14rem;
  position: relative;
  padding-top: 20rem;
}
@media screen and (max-width: 767px) {
  .c-sec-ttl {
    display: block;
  }
}
.c-sec-ttl::before {
  content: "";
  display: block;
  background-color: #e6001b;
  height: 7rem;
  width: 60rem;
  position: absolute;
  top: 0;
  left: 0;
}
.c-sec-ttl .--large,
.c-sec-ttl .--en {
  font-size: 38rem;
  letter-spacing: 0.03em;
  line-height: 130%;
  color: #2b2d31;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-sec-ttl .--large,
  .c-sec-ttl .--en {
    font-size: 28rem;
    letter-spacing: 0.03em;
    line-height: 130%;
    display: block;
  }
}
.c-sec-ttl .--small,
.c-sec-ttl .--jp {
  font-size: 18rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  color: #2b2d31;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-ttl .--small,
  .c-sec-ttl .--jp {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 130%;
    display: block;
    margin-top: 5rem;
  }
}

.c-post-head {
  color: #2b2d31;
}
.c-post-head .post-ttl {
  font-size: 38rem;
  letter-spacing: 0.03em;
  line-height: 130%;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-post-head .post-ttl {
    font-size: 28rem;
    letter-spacing: 0.03em;
    line-height: 130%;
  }
}
.c-post-head .company-name {
  font-size: 24rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  font-weight: 700;
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .c-post-head .company-name {
    font-size: 18rem;
    letter-spacing: 0.05em;
    line-height: 130%;
    margin-top: 12rem;
  }
}

.c-heading-bor_left .--ttl {
  display: block;
  position: relative;
  font-size: 32rem;
  letter-spacing: 0.03em;
  line-height: 130%;
  font-weight: 700;
  padding-left: 20rem;
}
@media screen and (max-width: 767px) {
  .c-heading-bor_left .--ttl {
    font-size: 24px;
    letter-spacing: 0.03em;
    line-height: 110%;
  }
}
.c-heading-bor_left .--ttl::before {
  content: "";
  display: block;
  width: 4rem;
  height: 32rem;
  background-color: #0071BE;
  position: absolute;
  left: 0;
  top: 6rem;
}
@media screen and (max-width: 767px) {
  .c-heading-bor_left .--ttl::before {
    height: 26rem;
    top: 1rem;
  }
}

.c-heading-square .--ttl {
  display: block;
  position: relative;
  font-size: 28rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  font-weight: 700;
  padding-left: 22rem;
}
.c-heading-square .--ttl::before {
  content: "";
  display: block;
  width: 10rem;
  height: 10rem;
  background-color: #e6001b;
  position: absolute;
  left: 0;
  top: 14rem;
}
@media screen and (max-width: 767px) {
  .c-heading-square .--ttl {
    font-size: 20rem;
    letter-spacing: 0.05em;
    line-height: 130%;
  }
  .c-heading-square .--ttl::before {
    top: 7rem;
  }
}
.c-heading-square.--blue .--ttl::before {
  background-color: #0071BE;
}

.c-heading-bg .--ttl {
  display: block;
  position: relative;
  font-size: 24rem;
  letter-spacing: 0.05em;
  line-height: 130%;
  font-weight: 700;
  padding: 6rem 12rem;
  background-color: #dfe3e5;
}

button .m-icon, button.m-icon,
label .m-icon,
label.m-icon,
span .m-icon,
span.m-icon,
a .m-icon,
a.m-icon {
  display: block;
  position: relative;
  padding-right: 18rem;
}
button .m-icon::after, button.m-icon::after,
label .m-icon::after,
label.m-icon::after,
span .m-icon::after,
span.m-icon::after,
a .m-icon::after,
a.m-icon::after {
  content: "";
  display: block;
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center center;
}
button .m-icon.--i-arrow-r, button.m-icon.--i-arrow-r,
label .m-icon.--i-arrow-r,
label.m-icon.--i-arrow-r,
span .m-icon.--i-arrow-r,
span.m-icon.--i-arrow-r,
a .m-icon.--i-arrow-r,
a.m-icon.--i-arrow-r {
  padding-right: 24rem;
}
button .m-icon.--i-arrow-r::after, button.m-icon.--i-arrow-r::after,
label .m-icon.--i-arrow-r::after,
label.m-icon.--i-arrow-r::after,
span .m-icon.--i-arrow-r::after,
span.m-icon.--i-arrow-r::after,
a .m-icon.--i-arrow-r::after,
a.m-icon.--i-arrow-r::after {
  mask-image: url("/media/images/common/icon-link_arrow02.svg");
  background-color: #0071BE;
}
button .m-icon.--i-search::after, button.m-icon.--i-search::after,
label .m-icon.--i-search::after,
label.m-icon.--i-search::after,
span .m-icon.--i-search::after,
span.m-icon.--i-search::after,
a .m-icon.--i-search::after,
a.m-icon.--i-search::after {
  mask-image: url("/media/images/common/icon-search.svg");
  background-color: #0071BE;
}
button .m-icon.--i-mail::after, button.m-icon.--i-mail::after,
label .m-icon.--i-mail::after,
label.m-icon.--i-mail::after,
span .m-icon.--i-mail::after,
span.m-icon.--i-mail::after,
a .m-icon.--i-mail::after,
a.m-icon.--i-mail::after {
  mask-image: url("/media/images/common/icon-mail.svg");
  background-color: #0071BE;
}
button .m-icon.--i-blank::after, button.m-icon.--i-blank::after,
label .m-icon.--i-blank::after,
label.m-icon.--i-blank::after,
span .m-icon.--i-blank::after,
span.m-icon.--i-blank::after,
a .m-icon.--i-blank::after,
a.m-icon.--i-blank::after {
  mask-image: url("/media/images/common/icon-blank.svg");
  background-color: #0071BE;
}

.c-sec {
  padding: 0 40rem;
}
@media screen and (max-width: 767px) {
  .c-sec {
    padding: 0 24rem;
  }
}
.c-sec + .c-sec {
  margin-top: 96rem;
}
@media screen and (max-width: 767px) {
  .c-sec + .c-sec {
    margin-top: 60rem;
  }
}

.c-sec__inr {
  width: min(100%, 1320rem);
  margin: 0 auto;
}

.c-article {
  padding: 0 40rem;
}
@media screen and (max-width: 767px) {
  .c-article {
    padding: 0 24rem;
  }
}

.c-article__inr {
  width: min(100%, 1320rem);
  margin: 0 auto;
}

.c-swiper {
  position: relative;
  z-index: 0;
  padding-bottom: 35rem;
}
.c-swiper .swiper-main {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}
.c-swiper .swiper-pagination {
  z-index: 1;
  pointer-events: none;
}
.c-swiper .swiper-pagination-bullet {
  opacity: 1;
  background-color: #cbd1d4;
  pointer-events: visible;
  width: 8rem;
  height: 8rem;
}
.c-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #2b2d31;
  transform: scale(1.5);
}
.c-swiper .swiper-horizontal > .swiper-pagination-bullets,
.c-swiper .swiper-pagination-bullets.swiper-pagination-horizontal,
.c-swiper .swiper-pagination-custom,
.c-swiper .swiper-pagination-fraction {
  bottom: 0;
}
.c-swiper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.c-swiper .swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet,
.c-swiper .swiper-pagination-custom .swiper-pagination-bullet,
.c-swiper .swiper-pagination-fraction .swiper-pagination-bullet {
  margin: 0 8rem;
}
.c-swiper .swiper-button-prev {
  left: 0;
  transform: translateX(-100%);
}
.c-swiper .swiper-button-next {
  right: 0;
  transform: translateX(100%);
}

.c-accordion-wrap .c-accordion-trigger {
  cursor: pointer;
  position: relative;
  padding-right: 50rem;
  min-height: 30rem;
  align-content: center;
  transition: all 0.3s linear 0s;
}
@media (hover: hover) and (pointer: fine) {
  .c-accordion-wrap .c-accordion-trigger:hover {
    opacity: 0.5;
  }
}
.c-accordion-wrap .c-accordion-trigger .--toggle {
  display: block;
  position: absolute;
  right: 5rem;
  top: calc(50% - 1rem);
  transform: translateY(-50%);
  width: 22rem;
  height: 22rem;
}
@media screen and (max-width: 767px) {
  .c-accordion-wrap .c-accordion-trigger .--toggle {
    top: 15rem;
  }
}
.c-accordion-wrap .c-accordion-trigger .--toggle span {
  display: none;
}
.c-accordion-wrap .c-accordion-trigger .--toggle::before, .c-accordion-wrap .c-accordion-trigger .--toggle::after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  border-radius: 3px;
  background-color: #0071BE;
  position: absolute;
  top: 50%;
  left: 0;
  transition: all 0.3s linear 0s;
}
.c-accordion-wrap .c-accordion-trigger .--toggle::before {
  transform: translateY(-50%) rotate(0deg);
}
.c-accordion-wrap .c-accordion-trigger .--toggle::after {
  transform: translateY(-50%) rotate(90deg);
}
.c-accordion-wrap .c-accordion-main {
  opacity: 0;
  height: 0;
  overflow: hidden;
  transition: all 0.4s ease 0s;
}
.c-accordion-wrap.open .c-accordion-trigger .--toggle::before {
  transform: translateY(-50%) rotate(180deg);
}
.c-accordion-wrap.open .c-accordion-trigger .--toggle::after {
  transform: translateY(-50%) rotate(0deg);
}
.c-accordion-wrap.open .c-accordion-main {
  opacity: 1;
  height: auto;
}
.c-label-text input[type=text] {
  position: relative;
  border-radius: 4rem;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  padding: 8rem 14rem;
  width: 100%;
  height: 61rem;
  text-align: left;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 767px) {
  .c-label-text input[type=text] {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
  }
}
.c-label-text input[type=text]::placeholder {
  color: #a2a5b1;
}

.c-label-select {
  position: relative;
}
.c-label-select::after {
  content: "";
  display: block;
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: 50%;
  right: 16rem;
  transform: translateY(-50%);
  z-index: 1;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url("/media/images/common/icon-down_arrow.svg");
  background-color: #000000;
}
.c-label-select select {
  appearance: none;
  position: relative;
  border-radius: 4rem;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  padding: 8rem 38rem 8rem 15rem;
  width: 100%;
  height: 61rem;
  text-align: left;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 767px) {
  .c-label-select select {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
  }
}

.c-form-btn01 {
  position: relative;
  border-radius: 4rem;
  margin: 0 auto;
  width: min(100%, 180rem);
  height: 61rem;
  background-color: #2b2d31;
  color: #ffffff;
  display: flex;
  gap: 4rem;
  align-items: center;
  justify-content: center;
  padding: 12rem;
  transition: all 0.3s linear 0s;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media (hover: hover) and (pointer: fine) {
  .c-form-btn01:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 1271px) {
  .c-form-btn01 {
    min-width: auto;
  }
}
@media screen and (max-width: 767px) {
  .c-form-btn01 {
    min-height: 60rem;
  }
}
.c-form-btn01::after {
  content: "";
  display: block;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url("/media/images/common/icon-btn_arrow01.svg");
  width: 24rem;
  height: 24rem;
  background-color: #ffffff;
}

/*                c-searchbox
======================================================= */
.c-searchbox {
  display: flex;
  gap: 20rem;
  align-items: center;
  width: fit-content;
  margin: 30rem auto 0;
}
@media screen and (max-width: 767px) {
  .c-searchbox {
    flex-wrap: wrap;
    gap: 14rem;
  }
}
.c-searchbox .--ttl {
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
  color: #2b2d31;
}
@media screen and (max-width: 767px) {
  .c-searchbox .form-wrap {
    width: 100%;
  }
}
.c-searchbox .form-wrap .input-area {
  position: relative;
  width: fit-content;
}
@media screen and (max-width: 1271px) {
  .c-searchbox .form-wrap .input-area {
    width: 100%;
  }
}
.c-searchbox .form-wrap .input-area .input-label {
  border-radius: 9999rem;
  background-color: #fff;
  border: 1px solid #cbd1d4;
  box-sizing: border-box;
  display: block;
  align-items: center;
  padding: 8rem 100rem 8rem 15rem;
  gap: 8rem;
  min-width: 380rem;
  text-align: left;
  color: #a2a5b1;
  height: 78rem;
}
@media screen and (max-width: 1271px) {
  .c-searchbox .form-wrap .input-area .input-label {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .c-searchbox .form-wrap .input-area .input-label {
    min-width: auto;
  }
}
.c-searchbox .form-wrap .input-area .--inpu-text {
  font-size: 16rem;
  width: 100%;
  height: 100%;
  padding: 8rem;
}
.c-searchbox .form-wrap .input-area .--inpu-text::placeholder {
  letter-spacing: 0.05em;
}
.c-searchbox .form-wrap .input-area .--submit-btn {
  display: block;
  position: absolute;
  right: 8rem;
  top: 10rem;
  cursor: pointer;
  border-radius: 9999rem;
  background-color: #2b2d31;
  width: 89rem;
  padding: 18rem 10rem;
  box-sizing: border-box;
  text-align: center;
  font-size: 16rem;
  color: #fff;
}
.c-searchbox .form-wrap .input-area .--submit-btn.--search {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4rem;
}
.c-searchbox .form-wrap .input-area .--submit-btn.--search::after {
  content: "";
  display: block;
  width: 20rem;
  height: 20rem;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center center;
  mask-image: url("/media/images/common/icon-search.svg");
  background-color: #ffffff;
}

/*                c-searchblock-row
======================================================= */
.c-searchblock-row form {
  display: flex;
  align-items: end;
  gap: 8rem;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .c-searchblock-row form {
    flex-wrap: wrap;
    gap: 15rem 12rem;
    justify-content: space-between;
  }
}
.c-searchblock-row form .c-label-text input[type=text],
.c-searchblock-row form .c-label-select select {
  width: 100%;
}
.c-searchblock-row .search-brand dt,
.c-searchblock-row .search-word dt {
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 767px) {
  .c-searchblock-row .search-brand dt,
  .c-searchblock-row .search-word dt {
    font-size: 14rem;
    letter-spacing: 0.05em;
    line-height: 120%;
  }
}
.c-searchblock-row .search-brand dd,
.c-searchblock-row .search-word dd {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .c-searchblock-row .search-brand dd,
  .c-searchblock-row .search-word dd {
    margin-top: 5rem;
  }
}
.c-searchblock-row .search-brand {
  width: min(100%, 326rem);
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-searchblock-row .search-brand {
    width: 100%;
  }
}
.c-searchblock-row .search-word {
  width: min(100%, 510rem);
}
@media screen and (max-width: 767px) {
  .c-searchblock-row .search-word {
    width: min(100%, 233rem);
  }
}
.c-searchblock-row .c-form-btn01 {
  margin: 0 0 0 4rem;
  background-color: #0071be;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-searchblock-row .c-form-btn01 {
    margin: 0;
    width: min(100%, 135rem);
  }
}

.c-pagenation {
  margin-top: 118rem;
}
@media screen and (max-width: 767px) {
  .c-pagenation {
    margin-top: 63rem;
  }
}
.c-pagenation ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8rem;
  position: relative;
}
.c-pagenation ul.pagination li a,
.c-pagenation ul.pagination li span {
  display: block;
}
.c-pagenation ul.pagination li.disabled {
  pointer-events: none;
  opacity: 0.5;
}
.c-pagenation ul.pagination li.page span,
.c-pagenation ul.pagination li.page a {
  width: 44rem;
  height: 44rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
}
.c-pagenation ul.pagination li.page.active span,
.c-pagenation ul.pagination li.page.active a {
  background-color: #0071BE;
  color: #ffffff;
}
.c-pagenation ul.pagination li.prev, .c-pagenation ul.pagination li.prev-first {
  margin-right: 10rem;
}
.c-pagenation ul.pagination li.prev span,
.c-pagenation ul.pagination li.prev a, .c-pagenation ul.pagination li.prev-first span,
.c-pagenation ul.pagination li.prev-first a {
  display: block;
  position: relative;
  padding-left: 22rem;
}
.c-pagenation ul.pagination li.prev span::before,
.c-pagenation ul.pagination li.prev a::before, .c-pagenation ul.pagination li.prev-first span::before,
.c-pagenation ul.pagination li.prev-first a::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 7rem);
  left: 0;
  mask-size: cover;
  mask-repeat: no-repeat;
  width: 16rem;
  height: 16rem;
  background-color: #2b2d31;
}
.c-pagenation ul.pagination li.prev span::before,
.c-pagenation ul.pagination li.prev a::before {
  mask-image: url(/media/images/common/icon-pagination-prev.svg);
}
.c-pagenation ul.pagination li.prev-first span::before,
.c-pagenation ul.pagination li.prev-first a::before {
  mask-image: url(/media/images/common/icon-pagination-prev_first.svg);
}
.c-pagenation ul.pagination li.next, .c-pagenation ul.pagination li.next-last {
  margin-left: 10rem;
}
.c-pagenation ul.pagination li.next span,
.c-pagenation ul.pagination li.next a, .c-pagenation ul.pagination li.next-last span,
.c-pagenation ul.pagination li.next-last a {
  position: relative;
  padding-right: 22rem;
}
.c-pagenation ul.pagination li.next span::before,
.c-pagenation ul.pagination li.next a::before, .c-pagenation ul.pagination li.next-last span::before,
.c-pagenation ul.pagination li.next-last a::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 7rem);
  right: 0;
  mask-size: cover;
  mask-repeat: no-repeat;
  width: 16rem;
  height: 16rem;
  background-color: #2b2d31;
}
.c-pagenation ul.pagination li.next span::before,
.c-pagenation ul.pagination li.next a::before {
  mask-image: url(/media/images/common/icon-pagination-next.svg);
}
.c-pagenation ul.pagination li.next-last span::before,
.c-pagenation ul.pagination li.next-last a::before {
  mask-image: url(/media/images/common/icon-pagination-next_last.svg);
}
@media screen and (max-width: 767px) {
  .c-pagenation ul.pagination {
    padding-bottom: 47rem;
  }
  .c-pagenation ul.pagination li.prev, .c-pagenation ul.pagination li.prev-first, .c-pagenation ul.pagination li.next, .c-pagenation ul.pagination li.next-last {
    position: absolute;
    bottom: 0;
  }
  .c-pagenation ul.pagination li.prev {
    left: 116rem;
  }
  .c-pagenation ul.pagination li.prev-first {
    left: 26rem;
  }
  .c-pagenation ul.pagination li.next {
    right: 116rem;
  }
  .c-pagenation ul.pagination li.next-last {
    right: 26rem;
  }
}
.c-pagenation .pagenumber {
  text-align: center;
  margin-top: 17rem;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
@media screen and (max-width: 767px) {
  .c-pagenation .pagenumber {
    margin-top: 21rem;
  }
}

.c-post-navigation .nav-links {
  display: flex;
  justify-content: space-between;
  gap: 16rem;
}
.c-post-navigation .nav-links .nav-prev,
.c-post-navigation .nav-links .nav-next {
  max-width: 50%;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 120%;
}
.c-post-navigation .nav-links .nav-prev.disabled,
.c-post-navigation .nav-links .nav-next.disabled {
  pointer-events: none;
  opacity: 0.5;
  visibility: hidden;
}
.c-post-navigation .nav-links .nav-prev {
  margin-right: auto;
}
.c-post-navigation .nav-links .nav-prev span,
.c-post-navigation .nav-links .nav-prev a {
  display: block;
  position: relative;
  padding-left: 25rem;
  text-align: left;
}
.c-post-navigation .nav-links .nav-prev span::before,
.c-post-navigation .nav-links .nav-prev a::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 10rem);
  left: 0;
  mask-image: url(/media/images/common/icon-pagination-prev.svg);
  mask-size: cover;
  mask-repeat: no-repeat;
  width: 20rem;
  height: 20rem;
  background-color: #2b2d31;
}
.c-post-navigation .nav-links .nav-next {
  margin-left: auto;
}
.c-post-navigation .nav-links .nav-next span,
.c-post-navigation .nav-links .nav-next a {
  display: block;
  position: relative;
  padding-right: 25rem;
  text-align: right;
}
.c-post-navigation .nav-links .nav-next span::before,
.c-post-navigation .nav-links .nav-next a::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 10rem);
  right: 0;
  mask-image: url(/media/images/common/icon-pagination-next.svg);
  mask-size: cover;
  mask-repeat: no-repeat;
  width: 20rem;
  height: 20rem;
  background-color: #cbd1d4;
}

/*---------------------------------
ハブスポット用
-----------------------------------*/
.c-column-index-head {
  padding: 0;
  margin-top: 47rem;
}
.c-column-index-head .c-column-index-head__inr {
  position: relative;
  height: 100%;
  padding: 30rem 40rem;
  text-align: center;
  align-content: center;
}
@media screen and (max-width: 767px) {
  .c-column-index-head .c-column-index-head__inr {
    min-height: 114rem;
    padding: 10rem 20rem;
  }
}
.c-column-index-head .c-column-index-head_ttl {
  position: relative;
  z-index: 1;
}
.c-column-index-head .c-column-index-head_ttl .--ttl {
  display: block;
  font-size: 64rem;
  letter-spacing: 0.03em;
  line-height: 110%;
  color: #00406f;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-column-index-head .c-column-index-head_ttl .--ttl {
    font-size: 28rem;
    letter-spacing: 0.03em;
    line-height: 130%;
  }
}

.c-column-detail-head {
  position: absolute;
  right: 177rem;
  top: 0;
  margin-top: 0;
}
@media screen and (max-width: 1271px) {
  .c-column-detail-head {
    position: relative;
    top: auto;
    right: auto;
  }
}
@media screen and (max-width: 767px) {
  .c-column-detail-head {
    position: relative;
  }
}
.c-column-detail-head .c-column-detail-head_ttl {
  position: relative;
  z-index: 1;
}
.c-column-detail-head .c-column-detail-head_ttl .--ttl {
  display: block;
  font-size: 48rem;
  letter-spacing: 0.03em;
  line-height: 110%;
  color: #00406f;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
@media screen and (max-width: 1271px) {
  .c-column-detail-head .c-column-detail-head_ttl .--ttl {
    writing-mode: horizontal-tb;
    text-orientation: initial;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-column-detail-head .c-column-detail-head_ttl .--ttl {
    font-size: 28rem;
    letter-spacing: 0.03em;
    line-height: 130%;
  }
}

body {
  -webkit-text-size-adjust: none;
  color: #2b2d31;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16rem;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.l-main {
  background-image: url(/media/images/column/column-bg.webp);
  background-size: 100% auto;
  background-position: top center;
}
.pankuzu-wrap {
  padding: 0 40rem;
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .pankuzu-wrap {
    padding: 0 24rem;
  }
}
.pankuzu-wrap .pankuzu {
  display: flex;
  gap: 26rem;
  scrollbar-width: none;
  white-space: nowrap;
  overflow-x: scroll;
  align-items: center;
  overflow-x: scroll;
  width: min(100%, 1320rem);
  margin: 0 auto;
}
.pankuzu-wrap .pankuzu li a {
  display: block;
  position: relative;
  font-size: 12rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 150%;
  font-family: "Noto Sans JP";
  color: #444;
  transition: all 0.3s linear 0s;
}
.pankuzu-wrap .pankuzu li:first-of-type a {
  position: relative;
  width: 16rem;
  height: 17rem;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}
.pankuzu-wrap .pankuzu li:first-of-type a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 16rem;
  height: 17rem;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url(/media/images/common/pankuzu-home.svg);
  background-color: #ffffff;
}
.pankuzu-wrap .pankuzu li a.last {
  pointer-events: none;
}
.pankuzu-wrap .pankuzu li a:not(.last):after {
  pointer-events: none;
  position: absolute;
  content: "";
  display: block;
  right: -20rem;
  top: calc(50% + 1rem);
  transform: translateY(-50%);
  width: 16rem;
  height: 16rem;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: url(/media/images/common/pankuzu-arrow.svg);
  background-color: #ffffff;
}/*# sourceMappingURL=hb_common.css.map */