@charset "UTF-8";

/* SCSS Document */
/* 東リファブリックフロア | カーペット・ラグ＆マット */
/* リキッドページ用 */
/* トップページ用 */
/* .c-footer */
.c-footer {
  padding-top: 16vw;
  padding-bottom: 5.3333333333vw;
}

@media only screen and (min-width: 768px) {
  .c-footer {
    padding-top: 3.75vw;
    padding-bottom: 1.25vw;
  }
}

@media only screen and (min-width: 1600px) {
  .c-footer {
    padding-top: 60px;
    padding-bottom: 20px;
  }
}

/* topページ */
.p-top {
  position: relative;
  /* トップ背景 */
  /* 背景動画 */
  /* コンテンツ */
}

@media only screen and (min-width: 768px) {
  .p-top {
    width: 100%;
    min-width: 1205px;
  }
}

.p-top .c-header {
  display: flex;
  align-items: center;
  height: 47.976011994vh;
}

@media only screen and (min-width: 768px) {
  .p-top .c-header {
    width: 100%;
    height: 100vh;
    transform-origin: top center;
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
    opacity: 0.01;
    transform: translateY(75px);
  }
}

.p-top .c-header.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-header>span {
  width: 40%;
  margin: 0 auto;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .p-top .c-header>span {
    width: 21.8887262079%;
  }
}

.p-top .c-header>span>span {
  display: block;
  text-align: center;
}

.p-top .c-header>span>span:nth-of-type(1) {
  width: 41.6666666667%;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .p-top .c-header>span>span:nth-of-type(1) {
    width: 39%;
  }
}

.p-top .c-header>span>span:nth-of-type(2) {
  width: 100%;
  margin-top: 3.6vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-header>span>span:nth-of-type(2) {
    margin-top: 1.5625vw;
  }
}

.p-top__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}

.p-top__bg:before,
.p-top__bg:after {
  content: "";
  display: block;
  width: 100%;
}

.p-top__bg:before {
  /* height: 47.976011994vh;
  background: url(../img/img_top_mv_01.jpg) top center no-repeat;
  background-size: cover; */
}

.p-top__bg:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  height: 47.976011994vh;
  background: url(../img/img_top_header_bg_s.svg) top center no-repeat;
  background-size: 100% auto;
}

@media only screen and (min-width: 768px) {
  .p-top__bg:after {
    background-image: url(../img/img_top_header_bg.svg);
  }
}

.p-top__mv {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 47.976011994vh;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top__mv {
    display: block;
    height: 100vh;
  }
}

.p-top__mv video {
  position: absolute;
  min-width: 100vw;
  min-height: 100vh;
  top: 50%;
  left: 50%;
  width: auto;
  height: inherit;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.p-top .c-main {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-main {
    background: url(../img/img_top_bg.png) top center no-repeat;
    background-size: 100% auto;
  }
}

.p-top .c-page {
  /**/
}

.p-top .c-page__contents {
  position: relative;
  width: 89.3333333333%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents {
    min-width: 1205px;
    width: 100%;
  }
}

@media only screen and (min-width: 1205px) {
  .p-top .c-page__contents {
    max-width: 1205px;
  }
}

@media only screen and (min-width: 1366px) {
  .p-top .c-page__contents {
    width: 88.2137628111%;
    max-width: none;
  }
}

@media only screen and (min-width: 1810px) {
  .p-top .c-page__contents {
    /* 内寸最大　*/
    max-width: 1600px;
  }
}

.p-top .c-page__contents h2 {
  text-align: center;
  letter-spacing: 0.392vw;
  font-size: 2.6666666667vw;
  font-weight: normal;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents h2 {
    letter-spacing: 0.18375rem;
    font-size: 0.75rem;
  }
}

@media only screen and (min-width: 1600px) {
  .p-top .c-page__contents h2 {
    letter-spacing: 1.76px;
  }
}

.p-top .c-page__contents h2.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents h2>span {
  display: block;
  margin-bottom: 1.8666666667vw;
  text-transform: uppercase;
  font-family: "Libre Baskerville", serif;
  font-size: 290%;
  font-weight: bold;
  letter-spacing: 0.1546666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents h2>span {
    margin-bottom: 0.75rem;
    font-size: 350%;
    letter-spacing: 0.0525rem;
  }
}

.p-top .c-page__contents h2>span:after {
  content: "\A";
  white-space: pre;
}

.p-top .c-page__contents h2+P {
  margin-top: 6.9333333333vw;
  width: 88.3582089552%;
  line-height: 2.23;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents h2+P {
    margin-top: 0;
    padding-top: 3.8067349927%;
    width: auto;
    line-height: 2.38;
    text-align: center;
  }
}

.p-top .c-page__contents h2+P.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents h2+P>strong {
  display: block;
  margin-bottom: 4.2666666667vw;
  text-align: center;
  line-height: 1.93;
  letter-spacing: 0.4613333333vw;
  font-size: 4vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents h2+P>strong {
    margin-bottom: 1.75rem;
    line-height: 1.73;
    letter-spacing: 0.201875em;
    font-size: 1.375rem;
  }
}

.p-top .c-page__contents h2+P>strong>span:before {
  content: "\A";
  white-space: pre;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents h2+P>strong>span:before {
    content: none;
  }
}

.p-top .c-page__contents p {
  letter-spacing: 0.416vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents p {
    letter-spacing: 0.146875rem;
  }
}

.p-top .c-page__contents_abstract {
  /*c-page__contents_abstract */
  padding-top: 58.6666666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract {
    padding-top: 9.3704245974%;
  }
}

.p-top .c-page__contents_abstract.is_active>figure,
.p-top .c-page__contents_abstract.is_active>p,
.p-top .c-page__contents_abstract.is_active:before,
.p-top .c-page__contents_abstract.is_active:after {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_abstract:before,
.p-top .c-page__contents_abstract:after {
  content: "";
  display: block;
  position: absolute;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

.p-top .c-page__contents_abstract:before {
  top: 0;
  right: 0.8955223881%;
  width: 39.1044776119%;
  height: 50vw;
  background-image: url(../img/img_top_bg_s.svg);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract:before {
    right: 1.3278008299%;
    background-image: url(../img/img_top_bg_01.svg);
    min-width: 40px;
    width: 3.3195020747%;
    height: 0;
    padding-top: 11.867219917%;
  }
}

.p-top .c-page__contents_abstract:after {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract:after {
    display: block;
    top: 79.25%;
    right: 4%;
    min-width: 243px;
    width: 20.965975%;
    height: 0;
    padding-top: 13.041909%;
    background-image: url(../img/img_top_bg_02.svg);
  }
}

.p-top .c-page__contents_abstract>figure {
  position: absolute;
  left: 0;
  top: -14.6666666667vw;
  width: 45.8208955224%;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract>figure {
    top: -18.2142857143%;
    min-width: 380px;
    width: 31.5352697095%;
  }
}

.p-top .c-page__contents_abstract>p {
  width: 88.3582089552%;
  line-height: 2.31;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract>p {
    width: 56.7634854772%;
    margin-right: 0;
    font-size: 1.125rem;
    letter-spacing: 0.135rem;
  }
}

.p-top .c-page__contents_abstract>p.is_active {
  opacity: 1;
  transform: translateY(0);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract>p>span:before {
    content: "\A";
    white-space: pre;
  }
}

.p-top .c-page__contents_abstract>p>strong {
  display: block;
  margin-bottom: 9.3333333333vw;
  text-align: right;
  line-height: 1.85;
  letter-spacing: 1.2266666667vw;
  font-size: 5.3333333333vw;
  font-weight: 700;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_abstract>p>strong {
    margin-bottom: 0;
    padding-bottom: 4.3859649123%;
    text-align: left;
    line-height: 1.76;
    letter-spacing: 0.48875rem;
    font-size: 2.125rem;
  }
}

.p-top .c-page__contents_concept {
  /* c-page__contents_concept */
  margin-top: 26.9333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_concept {
    margin-top: 0;
    padding-top: 16.5446559297%;
  }
}

.p-top .c-page__contents_conceptKeyWord {
  margin-top: 16.1333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord {
    display: flex;
    align-items: flex-start;
    margin-top: 0;
    padding-top: 5.8091286307%;
  }
}

.p-top .c-page__contents_conceptKeyWord>div {
  position: relative;
  width: 88.0597014925%;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div {
    width: 26.887966805%;
    margin-left: 4.8132780083%;
    margin-right: 4.8132780083%;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div:nth-of-type(1) {
    margin-left: auto;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div:nth-of-type(3) {
    margin-right: auto;
  }
}

.p-top .c-page__contents_conceptKeyWord>div.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_conceptKeyWord>div h3 {
  width: 59.7014925373%;
  margin-right: 0;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div h3 {
    margin-right: auto;
  }
}

.p-top .c-page__contents_conceptKeyWord>div h3>span {
  display: inline-block;
  padding: 0 0.2666666667vw 1.2vw;
  text-transform: uppercase;
  font-size: 3.4666666667vw;
  font-family: "Libre Baskerville", serif;
  letter-spacing: 0.44vw;
  border-bottom: 1px solid #221815;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div h3>span {
    padding: 0 0.125rem 0.1875rem;
    font-size: 0.9375rem;
    letter-spacing: 0.09375rem;
  }
}

.p-top .c-page__contents_conceptKeyWord>div h3+p {
  display: flex;
  align-items: flex-start;
  margin-top: 5.6vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord>div h3+p {
    flex-wrap: wrap;
    margin-top: 0;
    padding-top: 6.1728395062%;
  }
}

.p-top .c-page__contents_conceptKeyWord>div h3+p>span {
  display: block;
}

.p-top .c-page__contents_conceptKeyWordNum {
  position: relative;
  width: 53.3333333333vw;
  height: 53.3333333333vw;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  order: 2;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWordNum {
    width: 100%;
    height: 0;
    padding-top: 100%;
  }
}

.p-top .c-page__contents_conceptKeyWordNum>span {
  display: block;
  position: absolute;
  top: -2.8vw;
  right: -2.8vw;
  font-family: "Libre Baskerville", serif;
  font-weight: bold;
  font-size: 8vw;
  letter-spacing: 0.216vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWordNum>span {
    right: auto;
    top: -4.6296296296%;
    left: 90.7407407407%;
    font-size: 2.5rem;
    letter-spacing: 0.0625rem;
  }
}

.p-top .c-page__contents_conceptKeyWordTxt {
  width: 25.3333333333vw;
  text-align: center;
  order: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWordTxt {
    width: 100%;
    padding-bottom: 12.3456790123%;
  }
}

.p-top .c-page__contents_conceptKeyWordTxt>span {
  display: inline-block;
  font-size: 4vw;
  font-weight: bold;
  text-align: left;
  line-height: 1.67;
  letter-spacing: 0.588vw;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  vertical-align: middle;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWordTxt>span {
    font-size: 1.25rem;
    text-align: center;
    line-height: 1.8;
    letter-spacing: 0.18375rem;
    -ms-writing-mode: rl-tb;
    writing-mode: horizontal-tb;
  }
}

.p-top .c-page__contents_conceptKeyWordTxt>span>span:before {
  content: "\A";
  white-space: pre;
}

.p-top .c-page__contents_conceptKeyWord_01 {
  margin-top: 0;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_01 {
    margin-top: 0;
  }
}

.p-top .c-page__contents_conceptKeyWord_01 .c-page__contents_conceptKeyWordNum {
  background-image: url(../img/img_top_concept_01.jpg);
}

.p-top .c-page__contents_conceptKeyWord_02 {
  margin-top: 14vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_02 {
    margin-top: 5.8091286307%;
  }
}

.p-top .c-page__contents_conceptKeyWord_02 h3 {
  margin-left: 0;
  margin-right: auto;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_02 h3 {
    margin-left: auto;
  }
}

.p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordNum {
  background-image: url(../img/img_top_concept_02.jpg);
  order: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordNum {
    order: 2;
  }
}

.p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordNum>span {
  right: auto;
  left: -2.8vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordNum>span {
    left: 90.7407407407%;
  }
}

.p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordTxt {
  order: 2;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_02 .c-page__contents_conceptKeyWordTxt {
    order: 1;
  }
}

.p-top .c-page__contents_conceptKeyWord_03 {
  margin-top: 14vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptKeyWord_03 {
    margin-top: 11.6182572614%;
  }
}

.p-top .c-page__contents_conceptKeyWord_03 .c-page__contents_conceptKeyWordNum {
  background-image: url(../img/img_top_concept_03.jpg);
}

.p-top .c-page__contents_conceptLink {
  margin-top: 13.7333333333vw;
  width: 59.7014925373%;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptLink {
    width: 100%;
    margin-top: 2.489626556%;
  }
}

.p-top .c-page__contents_conceptLink.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_conceptLink a:hover .c-link__txt {
  opacity: 1;
  border-color: #221815;
}

.p-top .c-page__contents_conceptLink .c-link__txt {
  width: 100%;
  height: 13.3333333333vw;
  border: 1px solid #ccc;
  background-color: #fff;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptLink .c-link__txt {
    width: 260px;
    height: 60px;
    margin: 0 auto;
    box-sizing: border-box;
  }
}

.p-top .c-page__contents_conceptLink .c-link__txt>span {
  font-family: "Lato", sans-serif;
  font-size: 2.9333333333vw;
  letter-spacing: 0.4306666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_conceptLink .c-link__txt>span {
    font-size: 0.75rem;
    letter-spacing: 0.208125rem;
  }
}

.p-top .c-page__contents_qa {
  /* .c-page__contents_qa */
  margin-top: 16vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qa {
    width: 100%;
    margin-top: 0;
    padding-top: 7.3206442167%;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qa>div {
    width: calc(670 / 1600 * 100%);
    padding-top: calc(285 / 1600 * 100%);
    position: relative;
  }
}

.p-top .c-page__contents_qa a {
  color: #ffffff;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qa a:hover div {
    opacity: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qa a:hover div:before {
    transform: scale(1.1);
  }
}

.p-top .c-page__contents_qaLink {
  position: relative;
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 100%;
  height: 38vw;
  overflow: hidden;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qaLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.p-top .c-page__contents_qaLink:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/img_top_qa_s.jpg) center center no-repeat;
  background-size: cover;
  transform-origin: center center;
  transition: transform 0.3s ease-in;
}

.p-top .c-page__contents_qaLink.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_qaLink h2,
.p-top .c-page__contents_qaLink p {
  width: 100%;
  text-align: center;
  color: #ffffff;
}

.p-top .c-page__contents_qaLink h2 {
  font-size: 6.6666666667vw;
  font-family: "Libre Baskerville", serif;
  letter-spacing: 0.1333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qaLink h2 {
    font-size: 2.25rem;
    letter-spacing: 0.045rem;
  }
}

.p-top .c-page__contents_qaLink h2+p {
  width: 100%;
  margin: 2.6666666667vw auto 0;
  line-height: 1.8;
  letter-spacing: 0.3733333333vw;
  font-size: 3.2vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_qaLink h2+p {
    margin-top: 0;
    padding-top: 1.4705882353%;
    line-height: 1.88;
    letter-spacing: 0.208125rem;
    font-size: 1rem;
  }
}

.p-top .c-page__contents_gallery {
  /* c-page__contents_gallery */
  width: 100%;
  margin-top: 26.6666666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallery {
    min-width: 1205px;
    width: 100%;
    margin-top: 0;
    padding-top: 11.9326500732%;
  }
}

@media only screen and (min-width: 1205px) {
  .p-top .c-page__contents_gallery {
    max-width: 1205px;
  }
}

@media only screen and (min-width: 1366px) {
  .p-top .c-page__contents_gallery {
    width: 88.2137628111%;
    max-width: none;
  }
}

@media only screen and (min-width: 1810px) {
  .p-top .c-page__contents_gallery {
    /* 内寸最大　*/
    max-width: 1600px;
  }
}

.p-top .c-page__contents_gallery h2 {
  /* */
}

.p-top .c-page__contents_gallery h2+p {
  width: 78.9333333333%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallery h2+p {
    width: 100%;
    padding-top: 2.196193265%;
  }
}

.p-top .c-page__contents_galleryList {
  margin-top: 10.6666666667vw;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryList {
    margin-top: 0;
    padding-top: 3.2210834553%;
    width: 100%;
  }
}

@media only screen and (min-width: 1810px) {
  .p-top .c-page__contents_galleryList {
    /* 内寸最大　*/
  }
}

.p-top .c-page__contents_galleryList.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_galleryList a {
  color: #ffffff;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryList a:hover>div {
    opacity: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryList a:hover .c-page__contents_gallerySample_10 .c-link__txt:before {
    transform: scale(1.1);
  }
}

.p-top .c-page__contents_gallerySample {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.p-top .c-page__contents_gallerySample>span {
  width: 33.3333333333%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample>span {
    width: 20%;
  }
}

.p-top .c-page__contents_gallerySample_04,
.p-top .c-page__contents_gallerySample_05,
.p-top .c-page__contents_gallerySample_06,
.p-top .c-page__contents_gallerySample_07 {
  display: none;
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_gallerySample_04,
  .p-top .c-page__contents_gallerySample_05,
  .p-top .c-page__contents_gallerySample_06,
  .p-top .c-page__contents_gallerySample_07 {
    display: block;
  }
}

.p-top .c-page__contents_gallerySample_10 {
  /**/
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample_10 {
    position: relative;
    height: 0;
    padding-top: 20%;
  }
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt {
  align-items: flex-start;
  width: 100%;
  height: 33.3333333333vw;
  background-color: rgba(34, 24, 21, 0.8);
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample_10 .c-link__txt {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/img_top_gallery_10_s.jpg) center center no-repeat;
  background-size: cover;
  transform-origin: center center;
  transition: transform 0.3s ease-in;
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt>span {
  margin-top: 12.1333333333vw;
  font-family: "Libre Baskerville", serif;
  font-size: 3.2vw;
  letter-spacing: 0.152vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample_10 .c-link__txt>span {
    margin-top: 0;
    padding-top: 39.8340248963%;
    font-size: 0.875rem;
    letter-spacing: 0.0525rem;
  }
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt>span.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt>span:before,
.p-top .c-page__contents_gallerySample_10 .c-link__txt>span:after {
  content: "";
  display: block;
  position: absolute;
  background-color: #fff;
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt>span:before {
  left: 15.0666666667vw;
  top: 19.7333333333vw;
  width: 3.3333333333vw;
  height: 0.2666666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample_10 .c-link__txt>span:before {
    top: 56.846473029%;
    left: 46.4730290456%;
    width: 7.8838174274%;
    height: 1px;
  }
}

.p-top .c-page__contents_gallerySample_10 .c-link__txt>span:after {
  top: 18.1333333333vw;
  left: 16.5333333333vw;
  width: 0.2666666667vw;
  height: 3.3333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_gallerySample_10 .c-link__txt>span:after {
    top: 53.112033195%;
    left: 50.2074688797%;
    width: 1px;
    height: 7.8838174274%;
  }
}

.p-top .c-page__contents_galleryMenu {
  margin-top: 16vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu {
    display: flex;
    align-items: flex-start;
    margin-top: 0;
    padding-top: 9.8755186722%;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu a:hover>div {
    opacity: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu a:hover .c-page__contents_galleryMenuDetail>span:before {
    transform: scale(1.1);
  }
}

.p-top .c-page__contents_galleryMenu>div {
  width: 64%;
  padding: 2.2666666667vw;
  box-sizing: border-box;
  border: 1px solid #ccc;
  background-color: #fff;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu>div {
    width: 31.5352697095%;
    padding: 0.9128630705%;
  }
}

.p-top .c-page__contents_galleryMenu>div.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_galleryMenuDetail {
  position: relative;
  padding-top: 39.8666666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail {
    padding-top: 67.0391061453%;
  }
}

.p-top .c-page__contents_galleryMenuDetail:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  border-right: 1px solid #221815;
  border-bottom: 1px solid #221815;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail:before {
    width: 4.1899441341%;
    height: 0;
    padding-top: 4.1899441341%;
  }
}

.p-top .c-page__contents_galleryMenuDetail>span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 39.8666666667vw;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail>span {
    height: 0;
    padding-top: 67.0391061453%;
  }
}

.p-top .c-page__contents_galleryMenuDetail>span:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transform-origin: center center;
  transition: transform 0.3s ease-in;
}

.p-top .c-page__contents_galleryMenuDetail h3 {
  position: absolute;
  left: 0;
  top: -4.5333333333vw;
  width: 100%;
  font-weight: normal;
  font-family: "Libre Baskerville", serif;
  font-size: 6.6666666667vw;
  letter-spacing: 0.1253333333vw;
  text-align: center;
  text-transform: uppercase;
  transform-origin: center bottom;
  transition: transform 0.3s ease-in;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail h3 {
    top: -6.1452513966%;
    letter-spacing: 0.0475rem;
    font-size: 2.375rem;
  }
}

.p-top .c-page__contents_galleryMenuDetail p {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 24vw;
  background-color: #fff;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail p {
    height: auto;
    padding: 7.2625698324% 0;
  }
}

.p-top .c-page__contents_galleryMenuDetail p>span {
  margin-left: 2vw;
  line-height: 2;
  letter-spacing: 0.384vw;
  font-size: 3.2vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenuDetail p>span {
    margin-left: auto;
    margin-right: auto;
    letter-spacing: 0.12rem;
    font-size: 1rem;
    text-align: center;
  }
}

.p-top .c-page__contents_galleryMenuDetail p>span>span {
  font-feature-settings: "palt" 1;
}

.p-top .c-page__contents_galleryMenu_01 {
  margin-left: 10.6666666667%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu_01 {
    margin-right: auto;
    margin-left: 2.9045643154%;
    order: 2;
  }
}

.p-top .c-page__contents_galleryMenu_01 .c-page__contents_galleryMenuDetail>span:before {
  background-image: url(../img/img_top_gallery_11.jpg);
}

.p-top .c-page__contents_galleryMenu_02 {
  margin-top: 17.6%;
  margin-right: 10.6666666667%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_galleryMenu_02 {
    order: 1;
    margin-top: 6.6390041494%;
    margin-left: auto;
    margin-right: 2.9045643154%;
  }
}

.p-top .c-page__contents_galleryMenu_02 .c-page__contents_galleryMenuDetail>span:before {
  background-image: url(../img/img_top_gallery_12.jpg);
}

.p-top .c-page__contents_contact {
  /* c-page__contents_contact */
  width: 100%;
  margin-top: 24.2666666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contact {
    position: relative;
    margin-top: 0;
    padding-top: 11.7130307467%;
  }
}

.p-top .c-page__contents_contact:before {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contact:before {
    content: "";
    display: block;
    position: absolute;
    left: 15.856515%;
    top: 11.026354%;
    width: calc(278 / 1205 * 100%);
    height: 0;
    padding-top: calc(166 / 1205 * 100%);
    background: url(../img/img_top_contact_03.svg) center center no-repeat;
    background-size: cover;
    transform-origin: top center;
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
    opacity: 0.01;
    transform: translateY(75px);
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contact.is_active:before {
    opacity: 1;
    transform: translateY(0);
  }
}

.p-top .c-page__contents_contactMenu {
  /* c-page__contents_contactMenu */
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 10.4vw;
  border-top: 1px solid #ccc;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu {
    margin-top: 0;
    padding-top: 4.39238653%;
    border-top-width: 0;
  }
}

.p-top .c-page__contents_contactMenu>div {
  width: 50%;
  box-sizing: border-box;
  background-color: #fff;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}


@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu>div {
    position: relative;
    width: 22%;
    height: 0;
    margin: 0 1.756954612%;
    padding-top: 16.1054172767%;
  }
}

.p-top .c-page__contents_contactMenu>div.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_contactMenu>div.c-page__contents_contactMenu_03,
.p-top .c-page__contents_contactMenu>div.c-page__contents_contactMenu_04 {
  width: 100%;
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu>div.c-page__contents_contactMenu_03,
  .p-top .c-page__contents_contactMenu>div.c-page__contents_contactMenu_04 {
    width: 22%;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu>div:nth-of-type(1) {
    margin-left: auto;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu>div:nth-of-type(3) {
    margin-right: auto;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu>div a:hover>div {
    opacity: 1;
    border-color: #221815;
  }
}

.p-top .c-page__contents_contactMenuDetail {
  position: relative;
  display: flex;
  align-items: flex-start;
  align-content: start;
  flex-wrap: wrap;
  width: 100%;
  height: 52.1333333333vw;
  padding-top: 10.9333333333vw;
  box-sizing: border-box;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenuDetail {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    padding-top: 16.2337662338%;
    border: 1px solid #ccc;
    transition: border 0.3s ease-in;
  }
}

.p-top .c-page__contents_contactMenuDetail:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2.2666666667vw;
  right: 3.6vw;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/product_carpet/fabric_floor/common/img/ico_common_arw_another_window.svg);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenuDetail:after {
    bottom: 6.8181818182%;
    right: 5.1948051948%;
    width: 3.2467532468%;
    height: 0;
    padding-top: 3.2467532468%;
  }
}

.p-top .c-page__contents_contactMenuDetail h3 {
  width: 100%;
  text-align: center;
  font-size: 4vw;
  letter-spacing: 0.588vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenuDetail h3 {
    font-size: 1.125rem;
    letter-spacing: 0.165625rem;
  }
}

.p-top .c-page__contents_contactMenuDetail h3+p {
  margin-top: 3.7333333333vw;
  font-size: 3.2vw;
  line-height: 1.92;
  letter-spacing: 0.4706666667vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenuDetail h3+p {
    margin-top: 0;
    padding-top: 6.4935064935%;
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.12875rem;
  }
}

.p-top .c-page__contents_contactMenu_01 {
  border-right: 1px solid #ccc;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_01 {
    border-right-width: 0;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_01 p>span:nth-of-type(1):before {
    content: "\A";
    white-space: pre;
  }
}

.p-top .c-page__contents_contactMenu_01 p>span:nth-of-type(2):before {
  content: "\A";
  white-space: pre;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_01 p>span:nth-of-type(2):before {
    content: none;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_02 p {
    padding-left: 8.4415584416%;
    padding-right: 8.4415584416%;
  }
}

.p-top .c-page__contents_contactMenu_02 p>span:before {
  content: "\A";
  white-space: pre;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_02 p>span:before {
    content: none;
  }
}

.p-top .c-page__contents_contactMenu_02 p>span:nth-of-type(1):after {
  content: "\A";
  white-space: pre;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contactMenu_02 p>span:nth-of-type(1):after {
    content: none;
  }
}

.p-top .c-page__contents_contactMenu_03 a,
.p-top .c-page__contents_contactMenu_04 a {
  color: #ffffff;
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 a:hover,
  .p-top .c-page__contents_contactMenu_04 a:hover {
    color: #221815;
  }
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 a:hover .c-page__contents_contactMenuDetail,
  .p-top .c-page__contents_contactMenu_04 a:hover .c-page__contents_contactMenuDetail {
    background-color: #fff;
    border-width: 1px;
  }
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 a:hover .c-page__contents_contactMenuDetail:after,
  .p-top .c-page__contents_contactMenu_04 a:hover .c-page__contents_contactMenuDetail:after {
    border-right-color: #221815;
    border-bottom-color: #221815;
  }
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 a:hover .c-page__contents_contactMenuDetail h3,
  .p-top .c-page__contents_contactMenu_03 a:hover .c-page__contents_contactMenuDetail p,
  .p-top .c-page__contents_contactMenu_04 a:hover .c-page__contents_contactMenuDetail h3,
  .p-top .c-page__contents_contactMenu_04 a:hover .c-page__contents_contactMenuDetail p {
    color: #221815;
  }
}

.p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail,
.p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail {
  height: 39.7333333333vw;
  background-color: #221815;
  transition: background-color 0.3s ease-in;
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail,
  .p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail {
    height: 100%;
    padding-top: 16.2337662338%;
    border-width: 0;
  }
}

.p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail:after,
.p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail:after {
  bottom: 2.6666666667vw;
  right: 2.6666666667vw;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  background-image: none;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail:after,
  .p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail:after {
    bottom: 4.5454545455%;
    right: 3.2467532468%;
    width: 4.8701298701%;
    height: 0;
    padding-top: 4.8701298701%;
  }
}

.p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail h3,
.p-top .c-page__contents_contactMenu_03 .c-page__contents_contactMenuDetail p,
.p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail h3,
.p-top .c-page__contents_contactMenu_04 .c-page__contents_contactMenuDetail p {
  color: #ffffff;
}

.p-top .c-page__contents_subMenu {
  /* c-page__contents_contactSubMenu */
  width: 100%;
  background: url(../img/img_top_contact_bg_s.jpg) center center no-repeat;
  background-size: cover;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu {
    max-width: none;
    background-image: none;
    /* margin-top: 14.6412884334%; */
  }
  .p-top .store-section{
    margin-top: 8%;
  }
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_subMenu.is_menu_01:before,
  .p-top .c-page__contents_subMenu.is_menu_02:before,
  .p-top .c-page__contents_subMenu.is_menu_03:before {
    opacity: 0;
  }
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_subMenu.is_menu_01:after,
  .p-top .c-page__contents_subMenu.is_menu_02:after,
  .p-top .c-page__contents_subMenu.is_menu_03:after {
    opacity: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu.is_menu_01:after {
    background-image: url(../img/img_top_contact_bg_01.jpg);
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu.is_menu_02:after {
    background-image: url(../img/img_top_contact_bg_02.jpg);
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu.is_menu_03:after {
    background-image: url(../img/img_top_contact_bg_03.jpg);
  }
}

.p-top .c-page__contents_subMenu.is_active {
  opacity: 1;
  transform: translateY(0);
}

.p-top .c-page__contents_subMenu.is_active>div>div>div {
  opacity: 1;
  transform: translateY(0);
}

@media only screen and (min-width: 768px) {

  .p-top .c-page__contents_subMenu:before,
  .p-top .c-page__contents_subMenu:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 0;
    padding-top: 30.229868%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transform-origin: center center;
    transition: opacity 0.3s ease-in;
  }
}

.p-top .c-page__contents_subMenu:before {
  background-image: url(../img/img_top_contact_bg.jpg);
}

.p-top .c-page__contents_subMenu:after {
  opacity: 0;
  background-image: url(../img/img_top_contact_bg.jpg), url(../img/img_top_contact_bg_01.jpg), url(../img/img_top_contact_bg_02.jpg), url(../img/img_top_contact_bg_03.jpg);
}

.p-top .c-page__contents_subMenu>div {
  /* height: 122.5333333333vw; */
  /* height: 222.533333vw; */
  height: 180.533333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div {
    position: relative;
    /* max-width: 1600px; */
    max-width: 1200px;
    width: 100%;
    height: 0;
    padding-top: 30.229868%;
  }
}

.p-top .c-page__contents_subMenu>div>div {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div {
    align-items: center;
    flex-direction: row;
  }
}

.p-top .c-page__contents_subMenu>div>div>div {
  width: 89.3333333333%;
  margin: 0 auto;
  background-color: #fff;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
  transform: translateY(75px);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div>div {
    position: relative;
    width: 32.5256222548%;
    height: 0;
    padding-top: 13.980966325%;
    margin: 0 1.4641288433%;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div>div.p-tam-footer__banner {

    height: auto;
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div>div:nth-of-type(1) {
    /* margin-left: auto; */
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div>div:nth-of-type(3) {
    /* margin-right: auto; */
  }
}

.p-top .c-page__contents_subMenu>div>div>div:nth-of-type(n + 2) {
  margin-top: 5.3333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu>div>div>div:nth-of-type(n + 2) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu a:hover>div {
    opacity: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu a:hover>div>span:before {
    transform: scale(1.1);
  }
}

.p-top .c-page__contents_subMenuContents {
  position: relative;
  display: flex;
  align-items: center;
  padding: 2.6666666667vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 1.329787234%;
  }
}

.p-top .c-page__contents_subMenuContents>span {
  position: relative;
  display: block;
  width: 26.6666666667vw;
  height: 26.6666666667vw;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents>span {
    width: 39.234043%;
    height: 0;
    padding-top: 39.234043%;;
  }
}

.p-top .c-page__contents_subMenuContents>span:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transform-origin: center center;
  transition: transform 0.3s ease-in;
}

.p-top .c-page__contents_subMenuContents>div {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents>div {
    width: 59.7883597884%;
  }
}

.p-top .c-page__contents_subMenuContents>div h3 {
  font-family: "Libre Baskerville", serif;
  font-size: 5.3333333333vw;
  letter-spacing: 0.1066666667vw;
  text-transform: uppercase;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents>div h3 {
    width: 100%;
    text-align: center;
    font-size: 1.625rem;
    letter-spacing: 0.0325rem;
  }
}

.p-top .c-page__contents_subMenuContents>div p {
  margin-top: 2.6666666667vw;
  font-size: 2.6666666667vw;
  line-height: 1.8;
  letter-spacing: 0.32vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents>div p {
    margin-top: 0.75rem;
    font-size: 0.875rem;
    letter-spacing: 0.12875rem;
    line-height: 1.71;
  }
}

.p-top .c-page__contents_subMenuContents>div p .c-icon {
  position: absolute;
  right: 1.3333333333vw;
  bottom: 1.3333333333vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenuContents>div p .c-icon {
    right: 0.7320644217vw;
    bottom: 0.5856515373vw;
  }
}

.p-top .c-page__contents_subMenu_01 {
  /**/
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_subMenu_01 .c-page__contents_subMenuContents>span {
    box-sizing: border-box;
    border: 1px solid #ccc;
  }
}

.p-top .c-page__contents_subMenu_01 .c-page__contents_subMenuContents>span:before {
  background-image: url(../img/img_top_contact_01.jpg);
}

.p-top .c-page__contents_subMenu_02 {
  /**/
}

.p-top .c-page__contents_subMenu_02 .c-page__contents_subMenuContents>span:before {
  background-image: url(../img/img_top_contact_02.png);
}

.p-top .c-page__contents_subMenu_03 {
  /**/
}

.p-top .c-page__contents_subMenu_03 .c-page__contents_subMenuContents>span:before {
  background-image: url(../img/img_top_contact_03.png);
}

/* 241001 TAM追記スタイル */

.p-top .c-page__contents_life {
  margin-top: 16vw;
  transform-origin: top center;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.01;
}

.p-top .c-page__contents_life.is_active {
  opacity: 1;
  transform: translateY(0);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life {
      margin-top: 160px;
  }
}

.p-top .c-page__contents_life_inner {
  width: 89.3333333333%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 8vw;
}

.p-top .c-page__contents_life_inner img {
  height: auto;
  transition: transform 0.3s ease-in;
  transform: scale(1);
  opacity: 1;
}
.p-top .c-page__contents_life_inner img:hover {
  transform: scale(1.1);
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_inner {
      max-width: 1600px;
      display: flex;
      flex-direction: row;
      margin-top: 66px;
  }
}

.p-top .c-page__contents_life_gallery {
  position: relative;
  display: block;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_gallery {
      
  }
}

.p-top .c-page__contents_life_text_wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_text_wrapper {
      /* Add your responsive styles here */
  }
}

.p-top .c-page__contents_life_title {
  font-family: "Libre Baskerville", serif;
  font-style: normal;
  font-weight: 700;
  line-height: 123.628%; /* 39.561px */
  text-decoration-line: underline;
  color: #fff;
  text-align: center;
  font-size: calc(25 / 375 * 100vw);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_title {
    font-size: calc(32 / 1810 * 100vw);
  }
}

.p-top .c-page__contents_life_text {
  font-style: normal;
  font-weight: 500;
  line-height: 200%; /* 44px */
  margin-top: 29px;
  color: #fff;
  text-align: center;
  font-size: calc(12 / 375 * 100vw);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_text {
    font-size: calc(22 / 1810 * 100vw);
  }
}

.p-top .c-page__contents_life_life {
  position: relative;
  display: block;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_life_life {
      /* Add your responsive styles here */
  }
}

.p-top .c-page__contents_contents {
    margin-top: 16vw;
    transform-origin: top center;
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
    opacity: 0.01;
}  

.p-top .c-page__contents_contents.is_active {
  opacity: 1;
  transform: translateY(0);
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents {
  margin-top: 144px;
  }
}

.p-top .c-page__contents_contents_inner {
  display: flex;
  flex-direction: column;
  width: 89.3333333333%;
  margin-left: auto;
  margin-right: auto;
  row-gap: 30px;
  padding: 30px 20px;
  box-sizing: border-box;
  background: #D9D9D9;
  margin-top: 8vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents_inner {
    margin-top: 66px;
    max-width: 1810px;
    flex-direction: row;
    column-gap: 80px;
    
    padding: calc(80 / 1810 * 100vw) calc(100 / 1810 * 100vw);
  }
}

.p-top .c-page__contents_contents_item {
  flex: 1;
  position: relative;
  display: block;
  overflow: hidden;
}

.p-top .c-page__contents_contents_item img {
  height: auto;
  transition: transform 0.3s ease-in;
  transform: scale(1);
  opacity: 1;
}

.p-top .c-page__contents_contents_item:hover img  {
  height: auto;
  transform: scale(1.1);
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents_item {
  }
}

.p-top .c-page__contents_contents_text_wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents_text_wrapper {
  }
}

.p-top .c-page__contents_contents_title {
  font-family: "Libre Baskerville", serif;
  color: #fff;
  text-align: center;
  font-size: calc(22 / 375 * 100vw);
  font-style: normal;
  font-weight: 400;
  line-height: 123.628%; /* 34.616px */
  text-decoration-line: underline;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents_title {
    font-size: calc(28 / 1810 * 100vw);
  }
}

.p-top .c-page__contents_contents_text {
  color: #FFF;
  text-align: center;
  font-family: "Libre Baskerville", serif;
  font-style: normal;
  font-weight: 500;
  line-height: 180%; /* 32.4px */
  margin-top: 21px;
  font-size: calc(12 / 375 * 100vw);
  font-feature-settings: "palt";
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_contents_text {
    font-size: calc(18 / 1810 * 100vw);
  }
}

.p-top .c-page__contents_lineup {
  margin-top: 16vw;
}


@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_lineup {
    margin-top: 92px;
  }
}

.p-top .c-page__contents_lineup:after {
  content: "";
  display: block;
  position: absolute;
  top: -0.1%;
  right: -2%;
  width: calc(88 / 335 * 100%);
  padding-top: calc(74 / 335 * 100%);
  height: 0;
  background-image: url(../img/img_top_bg_03.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_lineup:after  {
    top: -2%;
    right: 28%;
    width: calc(186 / 1600 * 100%);
    padding-top: calc(144 / 1600 * 100%);
  }
}

.p-top .c-page__contents_lineup_inner {
  margin-top: 8vw;
}

.p-top .c-page__contents_lineup_inner {
  margin-top: 8vw;
}

@media only screen and (min-width: 768px) {
  .p-top .c-page__contents_lineup_inner {
    margin-top: 66px;
  }
}

/* gxスタイル調整 start*/

.p-top .products-list-row {
	display: flex;
	flex-wrap: wrap;
  margin: 152px -24px 0;
  row-gap: 80px;
}

.p-top .products-list-col {
	width: 33.33333333%;
	margin: 0;
	padding: 0 24px;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
	
	.p-top .products-list-row {
		margin: 50px 0 0;
    row-gap: 40px;
	}

	.p-top .products-list-col {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	
}

.p-top .products-list-box {
	display: block;
}

.p-top .products-list-box__photo {
	margin: 0 0 32px;
}

@media screen and (max-width: 768px) {
	
	.p-top .products-list-box__photo {
		margin-bottom: 16px;
	}
	
}

.p-top .products-list-box__sup {
	display: flex;
	align-items: center;
	margin: 0 -4px 10px;
}

.p-top .products-list-box__sup-num {
	padding: 0 4px;
	font-size: 16px;
	line-height: 1;
  margin-left: 0;
  margin-right: 0;
}

.p-top .products-list-box__sup-ja {
	padding: 0 4px;
	font-size: 14px;
	line-height: 1;
  margin-left: 0;
  margin-right: 0;
}

.p-top .products-list-box__head {
  display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 12px;
	padding: 0;
  border-bottom: none;
}

.p-top .products-list-box__title {
	font-size: 20px;
	line-height: 1.4;
  margin-left: 0;
  margin-right: 0;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
	
	.p-top .products-list-box__title {
		font-size: 16px;
	}
	
}

.p-top .products-list-box__title-sup {
	font-size: 16px;
}

@media screen and (max-width: 768px) {
	
	.p-top .products-list-box__title-sup {
		display: block;
		margin-top: 4px;
	}
	
}

.p-top .products-list-box__badge  {
	margin-left: 0;
  margin-right: 0;
  flex-shrink: 0;
}

.p-top .products-list-box__badge ul {
	display: flex;
	align-items: center;
	margin: 0 -2px -4px;
	padding: 0;
	list-style: none;
  column-gap: 5px;
}

.p-top .products-list-box__badge li {
	margin: 0 0 4px;
	padding: 0 2px;
}

@media screen and (max-width: 768px) {
	
	.p-top .products-list-box__badge {
		width: initial;
	}
	
	.p-top .products-list-box__badge ul {
		flex-direction: column;
    row-gap: 4px;
		margin-bottom: -3px;
	}
	
	.p-top .products-list-box__badge li {
		width: 100%;
		margin: 0 0 3px;
	}
	
	.p-top .products-list-box__badge .badge {
		display: block;
		width: 100%;
		padding-right: 10px;
		padding-left: 10px;
		text-align: center;
		font-size: 10px;
    box-sizing: border-box;
	}
	
}

.p-top .products-list-box__footer {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.p-top .products-list-box__price {
	margin: 0 0 30px;
	font-size: 16px;
}

@media screen and (max-width: 768px) {

	.p-top .products-list-box__price {
		font-size: 14px;
	}	
}

.label-ls { width: 60px; }
.label-vary { width: 36px; }

.p-top .products-list-box__price-num {
	font-size: 22px;
}

.p-top .products-list-box__color ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin: 0 -2px -4px;
	padding: 0;
	list-style: none;
}

.p-top .products-list-box__color li {
	margin-bottom: 4px;
	padding: 0 2px;
	line-height: 1;
  margin-left: 0;
  margin-right: 0;
}

.p-top .products-list-box__footer-price {
	width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.p-top .badge {
	display: inline-block;
	padding: 6px;
	background-color: #b63b2d;
	font-size: 12px;
	line-height: 1;
	color: #fff;
	white-space: nowrap;
}

.p-top .badge--new { background-color: #b63b2d;}
.p-top .badge--nano { background-color: #4879b8;}
.p-top .badge--empty { background-color: transparent; padding-right: 0; padding-left: 0;}

.p-top .badge--size-small {
	padding: 4px 6px;
	font-size: 8px;
}

.p-top .new-line {
	width: 100%;
	height: 0 !important;
	margin: 0 !important;
}

@media screen and (max-width: 1120px) {
	
	.new-line { display: none !important; }
	.new-line--sp { display: block!important; }
	
}

.p-top .color-thumb {
	display: block;
	width: 25px;
	aspect-ratio: 1 / 1;
}

.p-top .color-thumb--large {
	width: 37.5px;
}

.p-top .color-thumb--rectangle {
	width: 50px;
	aspect-ratio: 3 / 1;
}

a.products-list-box:hover>div,
a.products-list-box:hover>picture,
a.products-list-box:hover>img,
a.products-list-box:hover>span {
  opacity: 1;
}

.p-top .headingLv2-wrapper {
  margin-top: 50px;
}

.p-top .headingLv2-wrapper + .products-list-row{
}

@media screen and (min-width: 768px) {
  .p-top .headingLv2-wrapper + .products-list-row{
    margin-top: 68px;
  }
}

.p-top .headingLv2 {
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 147.556%;
  text-align: center;
}

@media screen and (min-width: 768px) {
	.p-top .headingLv2 {
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 147.556%;
  }
}

.p-top .grid__item-list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 11px;
  margin: 0;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-list {
  }
}

.p-top .grid__item-list img {
  height: auto;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-list img {
  }
}

.p-top .grid__item-list-wrapper {
  display: flex;
  column-gap: 40px;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-list-wrapper {
  }
}

.p-top .grid__item-label {
  min-width: 60px;
  margin: 0;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-label {
  }
}

.p-top .grid__item-label {
  min-width: 60px;
  margin: 0;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-label {
  }
}

.p-top .grid__item-label img {
  height: auto;
}

@media screen and (min-width: 768px) {
	.p-top .grid__item-label img {
  }
}


.p-top .learn-more {
	position: relative;
	display: block;
	height: auto;
	padding: 0 2rem 0 0;
	background: transparent;
	border: 0;
	font-size: 1.8rem;
	vertical-align: middle;
	text-decoration: none;
	cursor: pointer;
	outline: none;
}


.p-top .learn-more .circle {
	position: absolute;
	display: block;
	width: 3rem;
	height: 3rem;
	margin: 0;
	background: #000;
	border-radius: 99999px;
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
}

.p-top .learn-more .circle .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #fff;
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
}

.p-top .learn-more .circle .icon.arrow {
	left: 0.9rem;
	width: 1.125rem;
	height: 0.125rem;
	background: #fff;
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
}

.p-top .learn-more .circle .icon.arrow::before {
	content: "";
	position: absolute;
	top: -0.29rem;
	right: 0.0625rem;
	width: 0.625rem;
	height: 0.625rem;
	border-top: 0.125rem solid #fff;
	border-right: 0.125rem solid #fff;
	transform: rotate(45deg);
}

.p-top .learn-more .button-text {
	position: relative;
	z-index: 2;
	display: block;
	margin: 0 0 0 4rem;
	padding: 0;
	color: #000;
	line-height: 3rem;
	text-align: left;
	white-space: nowrap;
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
}

.p-top .learn-more:hover .circle {
	width: 100%;
}

.p-top .learn-more:hover .circle .icon.arrow {
	background: #fff;
	transform: translate(1rem, 0);
}

.p-top .learn-more:hover .button-text {
	color: #fff;
}

@media screen and (max-width: 768px) {
	
	.p-top .learn-more {
		font-size: 1.4rem;
	}

	.p-top .learn-more .circle {
		width: 2.4rem;
		height: 2.4rem;
	}

	.p-top .learn-more .circle .icon.arrow {
		left: 0.75rem;
		width: 1rem;
		height: 0.125rem;
	}

	.p-top .learn-more .circle .icon.arrow::before {
		top: -0.29rem;
		right: 0.0625rem;
		width: 0.625rem;
		height: 0.625rem;
		border-top: 0.125rem solid #fff;
		border-right: 0.125rem solid #fff;
	}

	.p-top .learn-more .button-text {
		margin: 0 0 0 3.4rem;
		line-height: 2.4rem;
	}
	
}


/* gxスタイル調整 end*/