.main-area {
  --title-png-width: 90.6rem;
  --anchor-jpg-width: 34.5rem;
  --title-background: #000;
}

/* base
------------------------------------------------------------- */
html {
  font-size: 62.5%;
}

.main-area {
  max-width: 120rem;
  margin: 0 auto;
  color: #000;
}

.main-area picture {
  display: block;
}

.main-area img {
  width: 100%;
  height: auto;
}

/* Components
------------------------------------------------------------- */
/**
 * #c-main-item__title
 */
.c-main-item__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 9.695rem;
  text-align: center;
  line-height: 1.2582774626;
  letter-spacing: 0;
}

/**
 * #c-main-item__model
 */
.c-main-item__model {
  position: relative;
  margin-top: 4.5rem;
}

.c-main-item__model-ja-title {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 73.3rem;
  height: 5.8rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.76rem;
  color: #fff;
  line-height: 1.0163043478;
  letter-spacing: 0.26em;
  font-feature-settings: "palt";
  background-color: #619371;
}

/**
 * #c-main-item__catch
 */
.c-main-item__catch {
  transform: translateZ(0);
  width: 102.5rem;
  margin: -7rem auto 0;
  padding-top: 6.6rem;
  background-color: #fff;
}

.c-main-item__catch-text {
  width: 87.5rem;
  margin: 0 auto;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 5.169rem;
  text-align: center;
  line-height: 1.3391371639;
  letter-spacing: 0;
  border-bottom: 1px solid #000;
}

/**
 * #c-main-item__lead
 */
.c-main-item__lead {
  width: 87.5rem;
  margin: 4.3rem auto 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.682;
  letter-spacing: 0.12em;
  font-feature-settings: "palt";
}

/**
 * #c-main-item__product
 */
.c-main-item__product {
  display: block;
  width: 87.5rem;
  margin: 7rem auto 0;
}

.c-main-item__detail {
  width: 71.6rem;
  margin: 0 auto;
}

.c-main-item__detail-name,
.c-main-item__detail-price-taxin {
  font-feature-settings: "palt";
}

.c-main-item__detail-name {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.194rem;
  letter-spacing: 0.12em;
}

.c-main-item__detail-price {
  margin-top: 1.8rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 3.802rem;
  letter-spacing: 0.02em;
}

.c-main-item__detail-price-taxin {
  font-size: 2.438rem;
}

.c-main-item__detail-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 10.119rem;
  margin-top: 3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.268rem;
  color: #fff;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
  background-color: #000;
}

/**
 * #c-main-item__credit-item
 */
.c-main-item__credit-item {
  width: 100%;
  height: 8.7rem;
  padding: 0 0.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 2.217rem;
  letter-spacing: 0.12em;
  font-feature-settings: "palt";
  border-bottom: 1px solid #000;
}

.c-main-item__credit-item--link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.c-main-item__credit-item--link::after {
  content: "";
  display: block;
  width: 0.9rem;
  height: 1.3rem;
  background: url(../img/components/arrow-right.png) center/100% no-repeat;
}

.c-main-item__credit-item--nolink {
  display: flex;
  align-items: center;
}

.c-main-item__credit-item--reference {
  display: flex;
  align-items: center;
  border-bottom: none;
}

/* Modules
------------------------------------------------------------- */
/**
 * #m-main-item
 */
.m-main-item {
  padding: 10.7rem 0 2.7rem;
}

.m-main-item--bt {
  border-top: 1px solid #333;
}

.m-main-item--last {
  padding-bottom: 20.2rem;
}

/**
 * #m-main-item__gallery
 */
.m-main-item__gallery {
  width: 87.4rem;
  margin: 9.5rem auto 0;
}

/**
 * #m-main-item__credit
 */
.m-main-item__credit {
  width: 87.4rem;
  margin: 6.5rem auto 0;
}

/**
 * #m-main-item__credit-title
 */
.m-main-item__credit-title-en {
  margin-right: 1.8rem;
  font-family: "Noto Serif SC", serif;
  font-weight: 600;
  font-size: 3.489rem;
  color: #8b3801;
}

.m-main-item__credit-title-ja {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 2.16rem;
}

/**
 * #m-main-item__credit-main
 */
.m-main-item__credit-main {
  margin-top: 0.2rem;
}

/* Page
------------------------------------------------------------- */
.p-top-area__title {
  margin-top: 9.3rem;
}

.p-top-area__title-title {
  width: var(--title-png-width);
  margin: 0 auto;
}

.p-top-area__title-lead {
  margin-top: 5.4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 3.2rem;
  text-align: center;
  line-height: 1.388125;
  letter-spacing: 0.08em;
}

.p-anchor-area {
  margin-top: 2.5rem;
}

.p-anchor-area__main {
  display: flex;
  justify-content: center;
}

.p-anchor-area__main--count4,
.p-anchor-area__main--count6 {
  flex-wrap: wrap;
  row-gap: 1.1rem;
}

.p-anchor-area__main--count4 {
  width: 85.5rem;
  margin: 0 auto;
}

.p-anchor-area__main--count4 .p-anchor-area__item {
  width: 37.5rem;
}

.p-anchor-area__item {
  position: relative;
  width: var(--anchor-jpg-width);
}

.p-anchor-area__item--borderRight {
  margin-right: 2rem;
}

.p-anchor-area__item--borderRight::after {
  content: "";
  position: absolute;
  top: 9.8rem;
  right: -0.8rem;
  z-index: 1;
  width: 1px;
  height: 19.6rem;
  background-color: #494949;
}

.p-column {
  margin-top: 7rem;
}

.p-main {
  margin-top: 12rem;
}

@media only screen and (max-width: 1200px) {
  html {
    font-size: calc(10 * (100vw / 1200));
  }
}

@media screen and (min-width: 768px) {
  .breadcrumb__list {
    padding-bottom: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .c-main-item__lead {
    font-size: 3rem;
  }

  .c-main-item__product {
    width: 86.951rem;
  }

  .c-main-item__detail {
    width: 86.75rem;
  }

  .c-main-item__detail-name {
    font-size: 3.291rem;
  }

  .c-main-item__detail-price {
    font-size: 5.703rem;
  }

  .c-main-item__detail-price-taxin {
    font-size: 3.657rem;
  }

  .c-main-item__detail-link {
    height: 16.1904rem;
    font-size: 3.402rem;
  }

  .c-main-item__credit-item {
    height: 13.92rem;
    padding: 0 0.9rem;
    font-size: 3.3255rem;
  }

  .c-main-item__credit-item--link::after {
    width: 1.35rem;
    height: 1.95rem;
  }

  .m-main-item__gallery {
    width: 107.25rem;
  }

  .m-main-item__credit {
    width: 107.25rem;
  }

  .m-main-item__credit-title-en {
    margin-right: 2.7rem;
    font-size: 5.2335rem;
  }

  .m-main-item__credit-title-ja {
    font-size: 3.24rem;
  }

  .m-main-item__credit-main {
    margin-top: 0.3rem;
  }

  .p-anchor-area__item--borderRight::after {
    right: -1rem;
  }
}
