@media print, screen and (min-width: 768px) {

  .c-mv {

    height: 26.7rem;

  }

}

.c-mv-txt {

  bottom: 0;

}

.c-mv img.c-mv-bg {

  top: 9rem;

  right: calc(50% - 57.5rem);

  width: 49.2rem;

}



.itemlist {

  display: -ms-grid;

  display: grid;

  -ms-grid-columns: (1fr)[3];

  grid-template-columns: repeat(3, 1fr);

  border-left: 1px solid #e5e5e5;

  margin-bottom: 12.5rem;

}

@media screen and (max-width: 767px) {

  .itemlist {

    -ms-grid-columns: (1fr)[2];

    grid-template-columns: repeat(2, 1fr);

  }

}

.itemlist li {

  border-top: 1px solid #e5e5e5;

  border-right: 1px solid #e5e5e5;

  border-bottom: 1px solid #e5e5e5;

  text-align: center;

  list-style: none;

}

.itemlist li a {

  display: block;

  padding: 1.5rem 2rem 1rem;

  position: relative;

}

@media screen and (max-width: 767px) {

  .itemlist li a {

    padding: 2.6666666667vw;

  }

}

@media print, screen and (min-width: 768px) {

  .itemlist li a {

    -webkit-transition: 0.3s;

    transition: 0.3s;

  }

  .itemlist li a:hover {

    background: #f1f1f1;

  }

}

.itemlist li .ttl {

  font-size: 1.6rem;

  font-weight: bold;

  text-align: left;

  line-height: 1.4;

}

@media screen and (max-width: 767px) {

  .itemlist li .ttl {

    font-size: 3.4666666667vw;

  }

}

.itemlist li .img {

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: center;

  -webkit-box-pack: center;

          justify-content: center;

  -ms-flex-align: center;

  -webkit-box-align: center;

          align-items: center;

  height: 18rem;

  width: 27rem;

  margin: 1rem 0;

}

@media screen and (max-width: 767px) {

  .itemlist li .img {

    margin: 0 auto;

    width: auto;

    height: 32vw;

  }

  .itemlist li .img img {

    width: auto;

  }

}

.itemlist li p {

  text-align: left;

}

.itemlist li p.m-name {

  font-size: 1.6rem;

  margin-top: 1.6rem;

  font-weight: bold;

  line-height: 1.5;

}

@media screen and (max-width: 767px) {

  .itemlist li p.m-name {

    font-size: 3.4666666667vw;

    margin-top: 0;

  }

}

@media screen and (max-width: 767px) {

  .itemlist li p.m-ex {

    font-size: 2.6666666667vw;

  }

}

@media print, screen and (min-width: 768px) {

  .itemlist li:nth-of-type(n+4) {

    border-top: none;

  }

}

@media screen and (max-width: 767px) {

  .itemlist li:nth-of-type(n+3) {

    border-top: none;

  }

}

.itemlist li .icn {

  position: absolute;

  right: 2rem;

  bottom: 2rem;

}

@media screen and (max-width: 767px) {

  .itemlist li .icn {

    position: static;

    display: block;

    margin: 0.5rem 0 0 auto;

  }

}

.itemlist li .icn.m-912 {

  width: 24px;

}

.itemlist li .icn.m-1418 {

  width: 36px;

}

.itemlist-ttl {

  font-size: 2rem;

  font-weight: bold;

  padding-left: 2.5rem;

  position: relative;

  margin-bottom: 1rem;

}

@media screen and (max-width: 767px) {

  .itemlist-ttl {

    font-size: 3.7333333333vw;

    padding-left: 5.3333333333vw;

    margin-bottom: 2.6666666667vw;

  }

}

.itemlist-ttl:before {

  content: "";

  background: url(../img/icn_itemlist.svg) no-repeat left top/contain;

  width: 2rem;

  height: 2rem;

  position: absolute;

  left: 0;

  top: 50%;

  -webkit-transform: translateY(-50%);

          transform: translateY(-50%);

}

@media screen and (max-width: 767px) {

  .itemlist-ttl:before {

    width: 3.7333333333vw;

    height: 3.7333333333vw;

    margin-top: 0.2666666667vw;

  }

}



.p-item {

  padding: 0.5rem 0 15rem;

}

@media screen and (max-width: 767px) {

  .p-item {

    padding: 0 0 18.6666666667vw 0;

  }

}

.p-item-anchor {

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: justify;

  -webkit-box-pack: justify;

          justify-content: space-between;

  -ms-flex-align: center;

  -webkit-box-align: center;

          align-items: center;

  gap: 2rem;

  margin-bottom: 13rem;

}

@media screen and (max-width: 767px) {

  .p-item-anchor {

    gap: 5.3333333333vw;

    margin-bottom: 13.3333333333vw;

  }

}

.p-item-anchor li {

  width: 100%;

}

.p-item-anchor li .btn .arrow {

  -webkit-transform: rotate(135deg);

          transform: rotate(135deg);

}

.p-item-headline {

  font-size: 2rem;

  color: #fff;

  background: #111;

  margin: 0 0 11rem;

  padding: 0.5rem 2rem;

}

@media screen and (max-width: 767px) {

  .p-item-headline {

    font-size: 3.7333333333vw;

    margin-bottom: 8vw;

    padding: 1.3333333333vw 5.3333333333vw;

  }

}

.p-item-nav {

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: start;

  -webkit-box-pack: start;

          justify-content: flex-start;

  -ms-flex-align: stretch;

  -webkit-box-align: stretch;

          align-items: stretch;

  margin-bottom: 11.5rem;

}

@media screen and (max-width: 767px) {

  .p-item-nav {

    margin-bottom: 18.6666666667vw;

  }

}

.p-item-nav li {

  border: 1px solid #e5e5e5;

}

@media screen and (max-width: 767px) {

  .p-item-nav li {

    width: 25%;

  }

}

.p-item-nav li + li {

  border-left: none;

}

.p-item-nav li a {

  padding-top: 1.7rem;

  display: block;

  position: relative;

  -webkit-transition: 0.3s;

  transition: 0.3s;

}

@media print, screen and (min-width: 768px) {

  .p-item-nav li a:hover {

    opacity: 0.7;

  }

}

@media screen and (max-width: 767px) {

  .p-item-nav li a {

    padding: 2.6666666667vw 0;

  }

}

.p-item-nav li a .c-icnset-txt {

  margin-top: 0.4rem;

  line-height: 1.4;

}

@media screen and (max-width: 767px) {

  .p-item-nav li a .c-icnset-txt {

    margin-top: 1.0666666667vw;

  }

}

.p-item-nav li a:after {

  content: "";

  width: 0.6rem;

  height: 0.6rem;

  margin: 0 auto;

  position: absolute;

  left: 0;

  right: 0;

  bottom: 1rem;

  border-top: 1px solid #e5e5e5;

  border-right: 1px solid #e5e5e5;

  -webkit-transform: rotate(135deg);

          transform: rotate(135deg);

}

@media screen and (max-width: 767px) {

  .p-item-nav li a:after {

    width: 1.0666666667vw;

    height: 1.0666666667vw;

    bottom: 2.1333333333vw;

  }

}

.p-item-content {

  position: relative;

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: justify;

  -webkit-box-pack: justify;

          justify-content: space-between;

  -ms-flex-align: start;

  -webkit-box-align: start;

          align-items: flex-start;

}

@media screen and (max-width: 767px) {

  .p-item-content {

    display: block;

  }

}

.p-item-content .main {

  margin-left: 4.5rem;

  -webkit-box-flex: 1;

      -ms-flex: 1;

          flex: 1;

}

@media screen and (max-width: 767px) {

  .p-item-content .main {

    margin-left: 0;

  }

}

.p-item-content .side {

  width: 13rem;

  position: sticky;

  top: 8rem;

  left: 0;

  border-top: 1px solid #111;

  padding-top: 2.3rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .side {

    position: static;

    width: 100%;

    margin: 0 0 6.6666666667vw;

    padding-top: 3.7333333333vw;

  }

}

.p-item-content .side .p-item-content-ttl .c-icnset-txt {

  margin-top: 0.4rem;

  line-height: 1.4;

}

@media screen and (max-width: 767px) {

  .p-item-content .side .p-item-content-ttl .c-icnset-txt {

    margin-top: 1.0666666667vw;

  }

}

@media screen and (max-width: 767px) {

  .p-item-content .side .p-item-content-ttl .c-icnset {

    display: -ms-flexbox;

    display: -webkit-box;

    display: flex;

    -ms-flex-pack: start;

    -webkit-box-pack: start;

            justify-content: flex-start;

    -ms-flex-align: center;

    -webkit-box-align: center;

            align-items: center;

    padding-left: 4vw;

    text-align: left;

  }

  .p-item-content .side .p-item-content-ttl .c-icnset img {

    height: 10.6666666667vw;

  }

  .p-item-content .side .p-item-content-ttl .c-icnset-txt {

    text-align: left;

    -webkit-transform: none;

            transform: none;

    font-size: 3.7333333333vw;

    padding-left: 5.3333333333vw;

  }

}

.p-item-content .information {

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: justify;

  -webkit-box-pack: justify;

          justify-content: space-between;

  -ms-flex-align: stretch;

  -webkit-box-align: stretch;

          align-items: stretch;

  margin-bottom: 7rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information {

    display: block;

    margin-bottom: 10.6666666667vw;

  }

}

.p-item-content .information .img {

  width: 43rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .img {

    width: 100%;

  }

}

.p-item-content .information .txt {

  -webkit-box-flex: 1;

      -ms-flex: 1;

          flex: 1;

  margin-left: 5rem;

  position: relative;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt {

    margin: 8vw 0 0 0;

  }

}

.p-item-content .information .txt .set .ttl {

  line-height: 1;

  margin: 2rem 0 0.6rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt .set .ttl {

    margin-bottom: 2.6666666667vw;

  }

}

.p-item-content .information .txt .set .ttl span {

  font-weight: bold;

  display: inline-block;

  line-height: 1;

  border-left: 1px solid #111;

  border-right: 1px solid #111;

  padding: 0 0.5rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt .set .ttl span {

    font-size: 4vw;

  }

}

.p-item-content .information .txt .set p {

  line-height: 1.7;

}

.p-item-content .information .txt .set.m-use p {

  font-size: 1.6rem;

  word-break: break-word;

  line-break: strict;

  letter-spacing: -0.04rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt .set.m-use p {

    font-size: 1.4rem;

  }

}

.p-item-content .information .txt .set.m-products {

  /*position: absolute;*/

  bottom: 0;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt .set.m-products {

    position: static;

    margin-top: 5.3333333333vw;

  }

}

.p-item-content .information .txt .set.m-products p {

  font-size: 1.4rem;

}

.p-item-content .information .txt .set.m-products p + p {

  margin-top: 1rem;

}

.p-item-content .information .txt .set.m-products p.m-note {

  font-size: 1.2rem;

}

@media screen and (max-width: 767px) {

  .p-item-content .information .txt .set.m-products p.m-note {

    font-size: 3.2vw;

  }

}

.p-item-btn {

  margin-top: 6rem;

}

.p-item-btn a {

  margin: 0 auto;

  width: 56rem;

  height: 5rem;

  display: -ms-flexbox;

  display: -webkit-box;

  display: flex;

  -ms-flex-pack: center;

  -webkit-box-pack: center;

          justify-content: center;

  -ms-flex-align: center;

  -webkit-box-align: center;

          align-items: center;

  border: 1px solid #e5e5e5;

  position: relative;

}

@media screen and (max-width: 767px) {

  .p-item-btn a {

    width: 100%;

    height: 17.3333333333vw;

  }

}

@media print, screen and (min-width: 768px) {

  .p-item-btn a {

    -webkit-transition: 0.3s;

    transition: 0.3s;

  }

  .p-item-btn a:hover {

    background: #f1f1f1;

  }

}

.p-item-btn a:before {

  content: "";

  position: absolute;

  left: 6rem;

  bottom: 0;

  width: 10.9rem;

  height: 6rem;

  background: url(../img/icn_item_btn.svg) no-repeat left top/contain;

}

@media screen and (max-width: 767px) {

  .p-item-btn a:before {

    width: 13.8666666667vw;

    height: 8vw;

    left: 5.3333333333vw;

    bottom: auto;

    top: 50%;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);

  }

}

.p-item-btn a:after {

  content: "";

  position: absolute;

  right: 1.5rem;

  top: 50%;

  -webkit-transform: translateY(-50%) rotate(45deg);

          transform: translateY(-50%) rotate(45deg);

  width: 0.6rem;

  height: 0.6rem;

  border-top: 1px solid #bebebe;

  border-right: 1px solid #bebebe;

}

.p-item-btn a span {

  font-size: 1.2rem;

  margin-left: 13rem;

}

@media screen and (max-width: 767px) {

  .p-item-btn a span {

    font-size: 3.4666666667vw;

    line-height: 1.4;

    margin-left: 12vw;

  }

}

.p-repair-content {
  margin-bottom:40px;
}

.p-repair-content-head {

  position: relative;

}

@media screen and (max-width: 767px) {

  .p-repair-content-head {

    margin-bottom: 8vw;

  }

}

.p-repair-content-head .m-note {

  position: absolute;

  right: 0;

  bottom: 0.9rem;

  text-align: right;

  font-size: 1.2rem;

}

@media screen and (max-width: 767px) {

  .p-repair-content-head .m-note {

    position: static;

    font-size: 2.9333333333vw;

    text-align: left;

    margin-top: -2.6666666667vw;

  }

}

.p-repair-content-headline {

  border-bottom: 1px solid #111;

  position: relative;

  padding: 0 0 1rem 6rem;

  font-size: 2rem;

  font-weight: bold;

  margin-bottom: 7rem;

}

@media screen and (max-width: 767px) {

  .p-repair-content-headline {

    font-size: 4.2666666667vw;

    padding: 0 0 1.3333333333vw 10.6666666667vw;

    margin-bottom: 5.3333333333vw;

  }

}

.p-repair-content-headline .icn {

  position: absolute;

  left: 1rem;

  bottom: -1px;

}

@media screen and (max-width: 767px) {

  .p-repair-content-headline .icn {

    width: 5.3333333333vw;

  }

  .p-repair-content-headline .icn img {

    width: 100%;

  }

}

.p-repair-content .itemlist {

  border: none;

  gap: 5.5rem;

  margin-bottom: 0;

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist {

    display: block;

  }

}

.p-repair-content .itemlist li {

  border: none;

}

.p-repair-content .itemlist li a {

  border: 1px solid #e5e5e5;

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li .ttl {

    font-size: 4vw;

  }

}

.p-repair-content .itemlist li .img {

  margin: 2.5rem auto;

  width: 29rem;

  height: auto;

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li .img {

    margin: 0 0 8vw;

    width: 100%;

  }

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li p.m-name {

    font-size: 4vw;

  }

}

.p-repair-content .itemlist li .products {

  margin-top: 3rem;

  position: relative;

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li .products {

    margin-top: 0;

    padding: 2.6666666667vw;

  }

}

.p-repair-content .itemlist li .products-ttl {

  text-align: left;

}

.p-repair-content .itemlist li .products-ttl span {

  font-weight: bold;

  display: inline-block;

  line-height: 1;

  border-left: 1px solid #111;

  border-right: 1px solid #111;

  padding: 0 0.5rem;

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li .products-ttl {

    font-size: 3.4666666667vw;

  }

}

@media screen and (max-width: 767px) {

  .p-repair-content .itemlist li + li {

    margin-top: 10.6666666667vw;

  }

}



.associated .l-header-menu li:nth-child(6) a {

  color: #d32b2b;

}

@media screen and (max-width: 767px) {

  .associated .l-header-menu li:nth-child(6) a {

    color: #111;

  }

}