@charset "UTF-8";
@media screen and (max-width: 768px) {
  main .child_cont div[class*=content] {
    padding-bottom: 0;
    width: auto;
  }
}
main .btnArea2 {
  width: auto !important;
  margin: 0;
  line-height: 1;
}
main .btnArea2 .base_btn {
  margin: 0 auto;
  background: #000;
  padding: 5px 50px 7px 30px;
  width: auto;
  border-radius: 30px;
  position: relative;
}
main .btnArea2 .base_btn::before, main .btnArea2 .base_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background-color: #ffffff; /* 条件：#ffffff */
  /* アニメーション用：中央から展開させる */
  transform-origin: right center;
  transition: transform 0.3s ease;
}
main .btnArea2 .base_btn::before {
  width: 15px; /* 横線の長さ（サイズに合わせて調整） */
  height: 1px; /* 線の太さ */
  margin-top: -1px; /* 太さの半分を引いて上下中央に配置 */
  right: 26px;
}
main .btnArea2 .base_btn::after {
  width: 7px;
  height: 7px;
  background-color: transparent;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: translateY(-22%) rotate(45deg);
  left: auto;
  right: 26px;
}
main .btnArea2 .base_btn:hover::before {
  transform: translateX(5px);
}
main .btnArea2 .base_btn:hover::after {
  transform: translateY(-22%) translateX(5px) rotate(45deg);
}
main .btnArea2 span {
  color: #ffffff;
}

.content {
  background: #ffffff;
  padding-top: 160px;
}

main .fv-area {
  margin: clamp(1.25rem, 1.013rem + 1.01vw, 1.875rem) auto 0;
  max-width: 1100px;
}
main .fv-area .magazine-logo {
  width: clamp(6.875rem, 4.912rem + 8.38vw, 12.063rem);
  margin: 0 0 20px auto;
}
main .fv-area .magazine-logo img {
  width: 100%;
  object-fit: cover;
  margin: 0 0 0 auto;
}
main .fv-area .magazine-logo p {
  text-align: right;
  margin-top: clamp(0.313rem, 0.194rem + 0.5vw, 0.625rem);
  font-size: clamp(0.688rem, 0.569rem + 0.5vw, 1rem);
  line-height: 1;
}
main .fv-area h1 {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
}
main .fv-area h1 img {
  width: 100%;
  object-fit: cover;
}
main .fv-area h1 .fv-img-sp {
  display: none;
}
main h2 {
  line-height: 1.5;
  text-align: center;
  font-size: clamp(1.188rem, 0.856rem + 1.41vw, 2.063rem);
  letter-spacing: 0.08em;
  margin-bottom: 50px;
}
main .main-text {
  text-align: justify;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  letter-spacing: 0.025em;
  line-height: 1.94;
  font-size: clamp(0.875rem, 0.78rem + 0.4vw, 1.125rem);
}
main .sec-introduction {
  width: 93%;
  margin: 120px auto 120px;
}
main .sec-armlesssofa {
  background: #F7F7F7;
  padding: clamp(3.875rem, 3.118rem + 3.23vw, 5.875rem) 0 0;
}
main .sec-armlesssofa .sec-armlesssofa-inner {
  width: 93%;
  max-width: 1000px;
  margin: 0 auto;
}
main .sec-armlesssofa .cat-round {
  display: block;
  width: clamp(6.875rem, 6.402rem + 2.02vw, 8.125rem);
  object-fit: cover;
  margin: 0 auto 25px;
}
main .sec-armlesssofa .bottom-text {
  margin-top: clamp(1.25rem, 1.013rem + 1.01vw, 1.875rem);
}
main .sec-armlesssofa .armless-product-slider {
  width: 48%;
  max-width: 480px;
  position: relative;
  overflow: hidden;
  margin: clamp(1.875rem, 0.692rem + 5.05vw, 5rem) auto clamp(3.125rem, 2.415rem + 3.03vw, 5rem);
  padding-bottom: 30px;
}
main .sec-armlesssofa .armless-product-slider .swiper-slide {
  width: 100%;
  position: relative;
}
main .sec-armlesssofa .armless-product-slider .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
main .sec-armlesssofa .armless-product-slider .swiper-pagination {
  position: absolute;
  bottom: -4px;
  z-index: 0;
}
main .sec-armlesssofa .armless-product-slider .swiper-button-prev,
main .sec-armlesssofa .armless-product-slider .swiper-button-next {
  position: absolute;
  bottom: -10px;
  z-index: 1;
  display: block;
  width: 10px;
  height: 30px;
  transform: scale(0.8);
}
main .sec-armlesssofa .armless-product-slider .swiper-button-prev {
  left: 30%;
}
main .sec-armlesssofa .armless-product-slider .swiper-button-next {
  right: 30%;
}
main .sec-armlesssofa .recommends {
  margin-top: 50px;
}
main .sec-armlesssofa .recommends .recommends-list {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(4, 1fr);
  justify-content: center;
  width: 100%;
}
main .sec-armlesssofa .recommends .recommends-list li {
  aspect-ratio: 1/1;
}
main .sec-armlesssofa .recommends .recommends-list a {
  background: #ffffff;
  padding: clamp(1.406rem, 0.661rem + 3.18vw, 2.188rem) 3%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  opacity: 1;
  transition: opacity 0.3s ease;
}
main .sec-armlesssofa .recommends .recommends-list a:hover {
  opacity: 0.7;
}
main .sec-armlesssofa .recommends .recommends-list .product-name {
  font-size: clamp(0.813rem, 0.765rem + 0.2vw, 0.938rem);
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
main .sec-armlesssofa .recommends .recommends-list img {
  display: block;
  width: 100%;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  main .sec-armlesssofa .sec-armlesssofa-inner {
    max-width: 640px;
  }
  main .sec-armlesssofa .armless-product-slider {
    width: 100%;
  }
  main .sec-armlesssofa .recommends {
    max-width: 470px;
    margin: 50px auto 0;
  }
  main .sec-armlesssofa .recommends .recommends-list {
    grid-template-columns: repeat(2, 1fr);
    max-width: 640px;
    margin: 0 auto;
  }
}
main .sec-product-feature.--cat {
  background: #F7F7F7;
  padding-bottom: 50px;
}
main .sec-product-feature .sec-product-feature-inner {
  width: 93%;
  max-width: 1000px;
  margin: 0 auto 50px;
  padding: clamp(3.125rem, 1.942rem + 5.05vw, 6.25rem) 0 0; /*50-100 375-1366*/
}
main .sec-product-feature .dog-round {
  display: block;
  max-width: 130px;
  width: 100%;
  object-fit: cover;
  margin: 0 auto 20px;
}
main .sec-product-feature .introduction {
  display: flex;
  justify-content: space-between;
  gap: clamp(2.188rem, 1.293rem + 3.82vw, 3.125rem);
  margin-bottom: clamp(2.188rem, 1.293rem + 3.82vw, 3.125rem); /*35-50*/
}
main .sec-product-feature .introduction > div {
  width: 68%;
}
main .sec-product-feature .introduction > div p:last-of-type {
  margin-top: clamp(1.25rem, 0.654rem + 2.54vw, 1.875rem);
}
main .sec-product-feature .introduction img {
  display: block;
  width: 31.5%;
  object-fit: cover;
}
main .sec-product-feature ul.--cat {
  display: flex;
  gap: 4%;
  align-items: flex-start;
}
main .sec-product-feature ul.--cat li {
  display: flex;
  flex-direction: column;
  width: 48%;
}
main .sec-product-feature ul.--dog {
  display: flex;
  gap: 3%;
  align-items: flex-start;
  margin-top: 50px;
}
main .sec-product-feature ul.--dog li {
  display: flex;
  flex-direction: column;
  width: 31.3333333333%;
}
main .sec-product-feature li .pc-img {
  display: block;
  width: 100%;
  object-fit: cover;
}
main .sec-product-feature .info {
  margin-top: clamp(0rem, -0.71rem + 3.03vw, 1.875rem);
}
main .sec-product-feature .info.--dog {
  justify-content: flex-start;
}
main .sec-product-feature .info.--dog .sp-img {
  display: none;
}
main .sec-product-feature .info p {
  font-size: clamp(0.75rem, 0.679rem + 0.3vw, 0.938rem);
  line-height: 1.83;
  letter-spacing: 0.025em;
  text-align: justify;
}
main .sec-product-feature .top-content .heading-wrap div:nth-of-type(1) {
  font-size: 15px;
  letter-spacing: 0.02em;
  line-height: 1;
  border: solid 1px #000000;
  display: inline-block;
  padding: 5px 15px;
}
main .sec-product-feature .top-content .heading-wrap div:nth-of-type(2) {
  font-size: clamp(1.063rem, 0.921rem + 0.61vw, 1.438rem);
  letter-spacing: 0.02em;
  line-height: 1;
  margin: 5px 0 clamp(0rem, -0.473rem + 2.02vw, 1.25rem); /*0-20 375-1366*/
}
main .sec-product-feature .bottom-content {
  display: flex;
  align-items: flex-start;
  gap: 4.1%;
}
main .sec-product-feature .bottom-content img {
  display: block;
  max-width: 110px;
  aspect-ratio: 1/1;
}
main .sec-product-feature .bottom-content img:first-of-type {
  display: none;
}
main .sec-product-feature .btnArea2 {
  margin: 5px 0 0 auto;
  text-align: right;
}
main .sec-product-feature .btnArea2.--button-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  main .sec-product-feature .sec-product-feature-inner {
    max-width: 640px;
  }
  main .sec-product-feature .sec-product-feature-inner.--cat {
    margin: 0 auto;
  }
  main .sec-product-feature .introduction {
    flex-direction: column-reverse;
  }
  main .sec-product-feature .introduction > div {
    width: 100%;
  }
  main .sec-product-feature .introduction img {
    max-width: 470px;
    width: 100%;
    margin: 0 auto;
  }
  main .sec-product-feature ul.--cat {
    flex-direction: column;
    gap: 30px;
  }
  main .sec-product-feature ul.--cat li {
    width: 100%;
  }
  main .sec-product-feature ul.--dog {
    flex-direction: column;
    gap: 30px;
  }
  main .sec-product-feature ul.--dog li {
    width: 100%;
  }
  main .sec-product-feature li .pc-img {
    display: none;
  }
  main .sec-product-feature .bottom-content {
    flex-direction: column;
    margin-top: 20px;
  }
  main .sec-product-feature .bottom-content > div:first-of-type {
    display: flex;
    width: 100%;
    margin: 0 auto;
  }
  main .sec-product-feature .bottom-content img {
    max-width: unset;
    width: 50%;
  }
  main .sec-product-feature .bottom-content img:first-of-type {
    display: block;
  }
  main .sec-product-feature .bottom-content .btnArea2 {
    margin: 30px auto 0;
  }
  main .sec-product-feature .info p {
    margin-top: 10px;
  }
  main .sec-product-feature .info.--dog .sp-img {
    display: block;
    max-width: 470px;
    width: 100%;
    margin: 20px auto 0;
  }
  main .sec-product-feature .top-content {
    display: flex;
    justify-content: space-between;
    align-items: end;
  }
  main .sec-product-feature .top-content.--dog-sp {
    display: block;
  }
  main .sec-product-feature .top-content-dog-sp {
    display: flex;
    justify-content: space-between;
    align-items: end;
  }
  main .sec-product-feature .dog-text-last {
    margin-bottom: 50px;
  }
  main .sec-product-feature .btnArea2.--button-pc {
    margin: 15px auto 0;
    text-align: center;
    display: none;
  }
  main .sec-product-feature .btnArea2.--button-sp {
    display: block;
    margin: 0 0 0 auto;
  }
}
main .sec-fabric.--cat {
  background: #F7F7F7;
}
main .sec-fabric .sec-fabric-inner {
  width: 93%;
  max-width: 1000px;
  margin: 0 auto;
  border-top: solid 1px #b0b2af;
  padding: 50px 0 clamp(3.75rem, 2.331rem + 6.05vw, 7.5rem);
}
main .sec-fabric .main-text {
  margin-bottom: 30px;
}
main .sec-fabric ul {
  display: flex;
  justify-content: space-between;
}
main .sec-fabric li {
  width: calc((100% - 21px) / 4);
}
main .sec-fabric .item-link {
  display: block;
  opacity: 1;
  transition: opacity 0.3s ease;
}
main .sec-fabric .item-link:hover {
  opacity: 0.7;
}
main .sec-fabric .series-name {
  text-align: center;
}
main .sec-fabric .series-name span:first-of-type {
  font-size: 22px;
  letter-spacing: 0.02em;
  line-height: 1;
}
main .sec-fabric .series-name span:last-of-type {
  font-size: clamp(0.688rem, 0.593rem + 0.4vw, 0.938rem);
  letter-spacing: 0.02em;
  line-height: 1;
}
main .sec-fabric img {
  display: block;
  width: 100%;
  object-fit: cover;
  height: clamp(6.25rem, 5.067rem + 5.05vw, 9.375rem); /*100-150*/
}
main .sec-fabric .color-wrap > div {
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.02em;
  margin: 15px 0 5px;
}
main .sec-fabric .color-wrap ul {
  display: flex;
  justify-content: left;
  gap: 6px;
}
main .sec-fabric .color-wrap li {
  width: clamp(0.938rem, 0.796rem + 0.61vw, 1.313rem);
  height: clamp(0.938rem, 0.796rem + 0.61vw, 1.313rem);
  border-radius: 50%;
}
main .sec-fabric .fabric-link {
  margin-top: clamp(1.875rem, 1.402rem + 2.02vw, 3.125rem); /*30-50*/
  text-align: right;
  display: flex;
  align-items: baseline;
  justify-content: right;
  gap: 15px;
  font-size: clamp(0.813rem, 0.765rem + 0.2vw, 0.938rem);
}
main .sec-fabric .fabric-link img {
  width: max(50px, 4vw);
  object-fit: contain;
  transition: opacity 0.35s ease;
  margin-bottom: 10px;
  height: auto;
}
@media screen and (max-width: 768px) {
  main .sec-fabric .sec-fabric-inner {
    max-width: 640px;
  }
  main .sec-fabric ul {
    flex-wrap: wrap;
    margin: 0 auto;
    row-gap: 30px;
  }
  main .sec-fabric li {
    width: calc((100% - 5px) / 2);
  }
  main .sec-fabric .series-name span:first-of-type {
    font-size: clamp(0.938rem, 0.52rem + 1.78vw, 1.375rem);
  }
  main .sec-fabric .fabric-link {
    align-items: center;
  }
  main .sec-fabric .fabric-link > div {
    margin-bottom: 5px;
  }
}
main .sec-favorite-places {
  background: #FAFAFF;
  padding: clamp(3.125rem, 2.415rem + 3.03vw, 5rem) 0; /*50-80 375-1366*/
}
main .sec-favorite-places .text-wrap {
  display: flex;
  gap: 4.3%;
  width: 72.2%;
  margin: 0 auto clamp(1.563rem, 1.444rem + 0.5vw, 1.875rem); /*25-30*/
}
main .sec-favorite-places h3 > div:first-of-type {
  font-size: clamp(1.25rem, 1.037rem + 0.91vw, 1.813rem);
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 10px;
  white-space: nowrap;
}
main .sec-favorite-places h3 > div:last-of-type {
  font-size: clamp(0.688rem, 0.593rem + 0.4vw, 0.938rem);
  letter-spacing: 0.08em;
  line-height: 1;
}
main .sec-favorite-places .product-name {
  font-size: clamp(0.688rem, 0.617rem + 0.3vw, 0.875rem); /*11-14*/
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: right;
  margin-top: 10px;
}
main .sec-favorite-places .favorite-slider {
  width: 86%;
  margin: 0 0 0 auto;
}
main .sec-favorite-places .favorite-places-swiper-slide img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 480/300;
}
main .sec-favorite-places .favorite-slider-pagination {
  width: 82%;
  margin-top: 15px;
  text-align: right;
}
main .sec-favorite-places .favorite-slider-button-prev {
  position: absolute;
  right: 29%;
  bottom: -5px;
}
main .sec-favorite-places .favorite-slider-button-next {
  position: absolute;
  right: 11%;
  bottom: -5px;
}
@media screen and (max-width: 768px) {
  main .sec-favorite-places .text-wrap {
    width: 93%;
    flex-direction: column;
  }
  main .sec-favorite-places p {
    margin-top: 25px;
  }
  main .sec-favorite-places .favorite-slider {
    width: 100%;
  }
}
main .sec-maintenance-service {
  margin-bottom: clamp(5rem, 3.108rem + 8.07vw, 10rem);
}
main .sec-maintenance-service .sec--maintenance-service-inner {
  width: 93%;
  max-width: 1000px;
  margin: 0 auto;
  padding: clamp(5rem, 4.054rem + 4.04vw, 7.5rem) 0 0;
}
main .sec-maintenance-service .pearltone {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(1.875rem, 1.402rem + 2.02vw, 3.125rem);
  border: solid 1px #000000;
  padding: 20px 0;
}
main .sec-maintenance-service .pearltone img {
  display: block;
  max-width: clamp(11.25rem, 10.54rem + 3.03vw, 13.125rem);
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 50%;
}
main .sec-maintenance-service .pearltone .text-wrap > div:first-of-type {
  font-size: clamp(0.688rem, 0.593rem + 0.4vw, 0.938rem);
  line-height: 1.3;
  margin-bottom: clamp(0.625rem, 0.388rem + 1.01vw, 1.25rem);
  letter-spacing: 0.08em;
}
main .sec-maintenance-service .pearltone .text-wrap h3 {
  font-size: clamp(1.125rem, 0.959rem + 0.71vw, 1.563rem);
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 20px;
}
main .sec-maintenance-service .pearltone .text-wrap p {
  font-size: clamp(0.813rem, 0.765rem + 0.2vw, 0.938rem);
  line-height: 1.2;
  letter-spacing: 0.001em;
  text-align: justify;
}
main .sec-maintenance-service .pearltone .btnArea2 {
  margin-top: 30px;
}
main .sec-maintenance-service .cleaning {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.25rem, 0.654rem + 2.54vw, 1.875rem);
  margin-top: 30px;
}
main .sec-maintenance-service .cleaning .delivery-cleaning, main .sec-maintenance-service .cleaning .visit-cleaning {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: solid 1px #000000;
}
main .sec-maintenance-service .cleaning .delivery-cleaning img, main .sec-maintenance-service .cleaning .visit-cleaning img {
  display: block;
  width: 100%;
  object-fit: cover;
}
main .sec-maintenance-service .cleaning .delivery-cleaning .text-wrap, main .sec-maintenance-service .cleaning .visit-cleaning .text-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 25px auto;
  gap: clamp(0rem, -1.183rem + 5.05vw, 3.125rem); /*0-50*/
}
main .sec-maintenance-service .cleaning .delivery-cleaning h3 > div:first-of-type, main .sec-maintenance-service .cleaning .visit-cleaning h3 > div:first-of-type {
  font-size: clamp(0.688rem, 0.593rem + 0.4vw, 0.938rem);
  line-height: 1;
  letter-spacing: 0.08em;
  margin-bottom: 10px;
}
main .sec-maintenance-service .cleaning .delivery-cleaning h3 > div:last-of-type, main .sec-maintenance-service .cleaning .visit-cleaning h3 > div:last-of-type {
  font-size: clamp(1.125rem, 0.959rem + 0.71vw, 1.563rem);
  line-height: 1;
  letter-spacing: 0.02em;
}
main .sec-maintenance-service .cleaning .delivery-cleaning .btnArea2, main .sec-maintenance-service .cleaning .visit-cleaning .btnArea2 {
  text-align: right;
}
@media screen and (max-width: 768px) {
  main .sec-maintenance-service .pearltone {
    flex-direction: column;
    padding: 20px 10px;
    margin: 0 auto;
  }
  main .sec-maintenance-service .pearltone .text-wrap h3, main .sec-maintenance-service .pearltone .text-wrap > div:first-of-type {
    text-align: center;
  }
  main .sec-maintenance-service .pearltone .btnArea2 {
    margin: 20px auto 0;
    text-align: center;
  }
  main .sec-maintenance-service .cleaning {
    grid-template-columns: 1fr;
    margin: clamp(1.25rem, 0.654rem + 2.54vw, 1.875rem) auto 0;
  }
  main .sec-maintenance-service .cleaning .delivery-cleaning h3 div:last-of-type, main .sec-maintenance-service .cleaning .visit-cleaning h3 div:last-of-type {
    text-align: center;
  }
  main .sec-maintenance-service .cleaning .delivery-cleaning .text-wrap, main .sec-maintenance-service .cleaning .visit-cleaning .text-wrap {
    flex-direction: column;
  }
  main .sec-maintenance-service .cleaning .delivery-cleaning .btnArea2, main .sec-maintenance-service .cleaning .visit-cleaning .btnArea2 {
    margin: 20px auto 0;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  main .content {
    padding-top: 80px;
  }
  main .fv-area .magazine-logo {
    margin: 0 3.5% 15px auto;
  }
  main h2 {
    margin-bottom: 35px;
  }
  main .sec-introduction {
    margin: 60px auto;
    max-width: 640px;
  }
}
@media screen and (max-width: 480px) {
  main .fv-area h1 .fv-img-pc {
    display: none;
  }
  main .fv-area h1 .fv-img-sp {
    display: block;
  }
}/*# sourceMappingURL=style.css.map */