/* ===============================================
  ### Foundation ###
=============================================== */

/* base style */
.main_inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin: auto;
  padding-bottom: 28.2rem;
  overflow-x: hidden;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: normal;
}

.main_inner * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main_inner *::before,
.main_inner *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main_inner img,
.main_inner svg {
  width: 100%;
  height: auto;
  overflow: visible;
}

.main_inner a {
  overflow: visible;
}

.main_inner a:hover {
  cursor: pointer;
}

.arrow--disable:after {
  content: none !important;
}

/* toggle visibility for responsive object */
.sp-component {
  display: block;
}

.pc-component {
  display: none;
}

/* ===============================================
  ### Object ###
=============================================== */
/* ===============================================
  ### Layout ###
=============================================== */
/* ===========================
  * Style of SP-view *
=========================== */
/* ===============================================
  * Heading *
=============================================== */
.heading {
  padding-bottom: 11.9rem;
  border-bottom: solid .1rem #000;
  text-align: center;
}

.heading__title-txt {
  position: relative;
  right: .5rem;
  width: 99rem;
  margin-top: 10.7rem;
  margin-right: auto;
  margin-bottom: 2.9rem;
  margin-left: 9rem;
}

.heading__desc-txt {
  position: relative;
  left: .3rem;
  font-size: 2.72rem;
  letter-spacing: .08em;
  line-height: 1.64;
}

.heading__img-wrapper--2 {
  margin-top: 9.7rem;
}

.heading__item-list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  width: 105.3rem;
  margin-top: 3.3rem;
  margin-right: auto;
  margin-left: auto;
}

.heading__item-list-content:not(:last-child) {
  width: 34rem;
}

.heading__item-list-content:nth-of-type(2) {
  margin-left: 0.7rem;
}

.heading__item-list-content:last-child {
  margin-right: -1rem;
  width: 35.4rem;
}

.heading__item-list-content--1 .item-name {
  left: -.7rem;
}

.heading__item-list-content--2 {
  position: relative;
}

.heading__item-list-content--2::before,
.heading__item-list-content--2::after {
  z-index: 2;
  position: absolute;
  top: 9.8rem;
  width: .1rem;
  height: 19.7rem;
  background-color: #494949;
  content: '';
}

.heading__item-list-content--2::before {
  left: -0.9rem;
}

.heading__item-list-content--2::after {
  right: -0.7rem;
}

.heading__item-list-content--3 .item-name {
  right: -.7rem;
}

.heading__item-list .link-wrapper {
  display: block;
}

.heading__item-list .img-wrapper {
  height: 37.4rem;
}

.heading__item-list .item-name {
  position: relative;
  margin-top: -.5rem;
  color: #45453f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.5rem;
  letter-spacing: .04em;
  line-height: 1.12;
}

.heading__item-list .item-name .en {
  position: relative;
  top: -.3rem;
  color: #a64905;
  font-size: 1.8rem;
  line-height: 1.24;
}

.heading__item-list .check-btn {
  display: block;
  width: 7.7rem;
  height: 4.7rem;
  margin-top: 1.1rem;
  margin-right: auto;
  margin-left: auto;
  line-height: 1;
}

/* ===============================================
  * Common Styles *
=============================================== */
.sec-style .modelimg-wrapper {
  z-index: -1;
  position: relative;
  width: 120rem;
  height: 135.6rem;
  margin-top: -2.1rem;
}

.sec__title-txt {
  font-family: "Noto Serif JP", serif;
  font-size: 9.7rem;
  font-weight: 600;
  line-height: 1.26;
  text-align: center;
}

.sec__title-txt .subtitle {
  display: block;
  margin-top: 1.8rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #bfa292;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.76rem;
  letter-spacing: .17em;
  line-height: 5.8rem;
}

.sec__detail-container {
  margin-top: -7rem;
  text-align: center;
}

.sec__detail-container__title-txt {
  position: relative;
  right: 1.3rem;
  width: 102rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 4.7rem;
  padding-right: 6.8rem;
  padding-left: 8.9rem;
  font-family: "Noto Serif JP", serif;
  font-size: 5.2rem;
  line-height: 1.33;
}

.sec__detail-container__title-txt::after {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: '';
}

.sec__detail-container__title-txt .underline {
  display: block;
  z-index: 2;
  position: relative;
  border-bottom: solid .2rem #000;
  font-weight: 600;
}

.sec__detail-container__desc-txt {
  -webkit-font-feature-settings: 'palt';
  z-index: 2;
  position: relative;
  margin-top: 3.3rem;
  padding-right: 16.5rem;
  padding-left: 16.5rem;
  font-feature-settings: 'palt';
  font-size: 2rem;
  letter-spacing: .12em;
  line-height: 1.7;
  text-align: left;
}

.sec__detail-container__item-container {
  position: relative;
  width: 71rem;
  margin-top: 6.5rem;
  margin-right: auto;
  margin-left: auto;
}

.sec__detail-container__item-container.function-icon:before {
  z-index: 2;
  position: absolute;
  top: .5rem;
  left: -.3rem;
  width: 11rem;
  height: 11rem;
  background-image: url("../imgs/function_washing.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  content: '';
}

.sec__detail-container__item-container .material-icon__list {
  z-index: 2;
  position: absolute;
  position: absolute;
  top: 1rem;
  right: 0;
  width: 6.7rem;
}

.sec__detail-container__item-container .material-icon__list-item {
  width: 6.7rem;
  height: 6.7rem;
  margin-bottom: 1.7rem;
}

.sec__detail-container__item-container .material-icon__list li:last-of-type {
  margin-bottom: 0;
}

.sec__detail-container__item-container .img-wrapper {
  display: block;
  z-index: 1;
  position: relative;
  width: 58rem;
  height: 63.8rem;
  margin-right: auto;
  margin-left: auto;
}

.sec__detail-container__item-container .credit-txt {
  z-index: 2;
  position: relative;
  width: 57.7rem;
  margin-top: 1.8rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: .00216em;
  line-height: 2.28;
  text-align: left;
}

.sec__detail-container__item-container .credit-txt .price {
  display: block;
  margin-top: -1.3rem;
  font-family: "Noto Serif JP", serif;
  font-size: 3.1rem;
  letter-spacing: .00062em;
}

.sec__detail-container__item-container .credit-txt .tax {
  font-size: 2.1rem;
  letter-spacing: .00042em;
}

.sec__detail-container__item-container .detail-btn {
  display: block;
  z-index: 2;
  position: relative;
  width: 57.7rem;
  height: 8.4rem;
  margin-top: 1.2rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #000;
  color: #fff;
  font-size: 1.85rem;
  font-weight: bold;
  letter-spacing: .00148em;
  line-height: 8.4rem;
}

.sec__detail-container__modelimg-wrapper {
  position: relative;
  right: .2rem;
  width: 71.5rem;
  height: 154.3rem;
  margin-top: 9.8rem;
  margin-right: auto;
  margin-left: auto;
}

.sec__detail-container__credit {
  width: 71.6rem;
  margin-top: 6.2rem;
  margin-right: auto;
  margin-left: auto;
  text-align: left;
}

.sec__detail-container__credit .coordinate-txt {
  font-size: 1.75rem;
  line-height: 1.34;
}

.sec__detail-container__credit .coordinate-txt .en {
  margin-right: 1.8rem;
  color: #8b3801;
  font-family: "Noto Serif JP", serif;
  font-size: 2.85rem;
  font-weight: 600;
  line-height: 1.32;
}

.sec__detail-container__credit .credit-list {
  position: relative;
  right: .2rem;
  margin-top: .2rem;
}

.sec__detail-container__credit .credit-list-content {
  height: 7.2rem;
  padding-left: .6rem;
  border-bottom: solid .1rem #000;
}

.sec__detail-container__credit .credit-list-content .link-wrapper {
  display: block;
  position: relative;
  height: 100%;
  font-size: 1.8rem;
  letter-spacing: .1em;
  line-height: 7.2rem;
}

.sec__detail-container__credit .credit-list-content .link-wrapper::after {
  z-index: 2;
  position: absolute;
  top: .6rem;
  right: 1.4rem;
  bottom: 0;
  width: .9rem;
  height: 1.3rem;
  margin: auto;
  background-image: url(../imgs/credit_arrow.png);
  background-repeat: no-repeat;
  background-size: 100%;
  content: '';
}

/* sec1 */
.sec1 {
  margin-top: 6.7rem;
}

.sec1 .subtitle {
  width: 71.5rem;
}

.sec1 .sec__detail-container__credit {
  margin-top: 6.4rem;
}

/* sec2 */
.sec2 {
  margin-top: 16.2rem;
}

.sec2 .subtitle {
  width: 71.5rem;
}

.sec2 .sec__detail-container__item-container {
  width: 72.8rem;
  margin-top: 6.7rem;
}

.sec2 .sec__detail-container__item-container::before {
  top: .2rem;
  left: .6rem;
}

.sec2 .sec__detail-container__item-container .material-icon__list {
  top: .7rem;
  right: .9rem;
}

.sec2 .sec__detail-container__item-container .credit-txt {
  margin-top: 1.4rem;
}

.sec2 .sec__detail-container__modelimg-wrapper {
  margin-top: 9.7rem;
}

.sec2 .sec__detail-container__credit {
  margin-top: 6.6rem;
}

/* sec3 */
.sec3 {
  margin-top: 13.8rem;
}

.sec3 .subtitle {
  width: 71.5rem;
}

.sec3 .sec__detail-container__item-container {
  margin-top: 6.2rem;
}

.sec3 .sec__detail-container__item-container .material-icon__list {
  top: 1.2rem;
  right: -.2rem;
}

.sec3 .sec__detail-container__item-container .credit-txt {
  margin-top: 2rem;
}

.sec3 .sec__detail-container__modelimg-wrapper {
  margin-top: 9.6rem;
}

.sec3 .sec__detail-container__credit {
  margin-top: 6.5rem;
}

/* sec4 */
.sec4 {
  margin-top: 17.5rem;
}

.sec4 .subtitle {
  width: 71.5rem;
}

.sec4 .sec__detail-container__item-container {
  margin-top: 6rem;
}

.sec4 .sec__detail-container__item-container.function-icon:before {
  top: .9rem;
}

.sec4 .sec__detail-container__item-container .material-icon__list {
  top: 1.4rem;
  right: -.2rem;
}

.sec4 .sec__detail-container__item-container .credit-txt {
  margin-top: 2.2rem;
}

.sec4 .sec__detail-container__modelimg-wrapper {
  margin-top: 9.8rem;
}

.sec4 .sec__detail-container__credit {
  margin-top: 6.3rem;
}

/* sec5 */
.sec5 {
  margin-top: 14.8rem;
}

.sec5 .subtitle {
  margin-top: 4rem;
  width: 71.5rem;
}

.sec5 .sec__detail-container {
  margin-top: -6.8rem;
}

.sec5 .sec__detail-container__item-container {
  margin-top: 6.4rem;
}

.sec5 .sec__detail-container__item-container.function-icon::before {
  top: .4rem;
}

.sec5 .sec__detail-container__item-container .material-icon__list {
  top: .9rem;
  right: -.2rem;
}

.sec5 .sec__detail-container__modelimg-wrapper {
  margin-top: 9.5rem;
}

.sec5 .sec__detail-container__credit {
  margin-top: 6.4rem;
}

/* sec6 */
.sec6 {
  margin-top: 14rem;
}

.sec6 .subtitle {
  margin-top: 4rem;
  width: 71.5rem;
}

.sec6 .sec__detail-container {
  margin-top: -6.8rem;
}

.sec6 .sec__detail-container__title-txt {
  padding-right: 5.8rem;
  padding-left: 8.4rem;
}

.sec6 .sec__detail-container__title-txt .underline {
  word-break: keep-all;
}

.sec6 .sec__detail-container__item-container {
  margin-top: 6.4rem;
}

.sec6 .sec__detail-container__item-container.function-icon::before {
  top: .4rem;
}

.sec6 .sec__detail-container__item-container .material-icon__list {
  top: .8rem;
  right: -.2rem;
}

.sec6 .sec__detail-container__item-container .credit-txt {
  margin-top: 1.8rem;
}

.sec6 .sec__detail-container__modelimg-wrapper {
  margin-top: 9.8rem;
}

.sec6 .sec__detail-container__credit {
  margin-top: 6.3rem;
}

@media only screen and (min-width: 768px) {

  /* ===========================
    * Style of PC-view *
  =========================== */
  .main_inner {
    max-width: 120rem;
  }

  .sp-component {
    display: none;
  }

  .pc-component {
    display: block;
  }
}

@media only screen and (max-width: 767px) {

  /* ===============================================
  * Heading *
=============================================== */
  .heading__desc-txt {
    font-size: calc(2.72rem *1.3);
  }

  /* ===============================================
  * Common Styles *
=============================================== */
  .sec__detail-container__desc-txt {
    font-size: calc(2rem * 1.5);
  }

  .sec__detail-container__item-container .credit-txt {
    width: calc(57.7rem * 1.5);
    font-size: calc(1.8rem * 1.5);
  }

  .sec__detail-container__item-container .credit-txt .price {
    margin-top: calc(-1.3rem * 1.5);
    font-size: calc(3.1rem * 1.5);
  }

  .sec__detail-container__item-container .credit-txt .tax {
    font-size: calc(2.1rem * 1.5);
  }

  .sec__detail-container__modelimg-wrapper {
    right: calc(.2rem * 1.5);
    width: calc(71.5rem * 1.5);
    height: calc(155.5rem * 1.5);
  }

  .sec__detail-container__credit {
    width: calc(71.5rem * 1.5);
  }

  .sec__detail-container__credit .coordinate-txt {
    font-size: calc(1.75rem * 1.5);
  }

  .sec__detail-container__credit .coordinate-txt .en {
    margin-right: calc(1.8rem * 1.5);
    font-size: calc(2.85rem * 1.5);
  }

  .sec__detail-container__credit .credit-list {
    right: calc(.2rem * 1.5);
    margin-top: calc(.2rem * 1.5);
  }

  .sec__detail-container__credit .credit-list-content {
    height: calc(7.2rem * 1.5);
    padding-left: calc(.6rem * 1.5);
  }

  .sec__detail-container__credit .credit-list-content .link-wrapper {
    font-size: calc(1.8rem * 1.5);
    line-height: calc(7.2rem * 1.5);
  }

  .sec__detail-container__credit .credit-list-content .link-wrapper::after {
    top: calc(.6rem * 1.5);
    right: calc(1.4rem * 1.5);
    width: calc(.9rem * 1.5);
    height: calc(1.3rem * 1.5);
  }

  .sec__detail-container__item-container .detail-btn {
    width: 100%;
    height: calc(8.4rem * 1.6);
    font-size: calc(1.85rem * 1.6);
    line-height: calc(8.4rem * 1.6);
  }

  .sec1 .subtitle {
    width: calc(55.7rem * 1.3);
  }

  .sec2 .subtitle {
    width: calc(62.4rem * 1.3);
  }

  .sec3 .subtitle {
    width: calc(55.7rem * 1.3);
  }

  .sec4 .subtitle {
    width: calc(60rem * 1.3);
  }

  .sec5 .subtitle {
    width: calc(55.7rem * 1.3);
  }

  .sec6 .subtitle {
    width: calc(55.7rem * 1.3);
  }
}
