/* カスタマイズ用CSS */
/* 共通 */
.pc.tb {
    display: inline-block
  }
  .tb {
    display: none;
  }
  .sp {
    display: none;
  }
  
h1 {
  /* font-family: 'Noto Sans JP', sans-serif; */
  font-weight: 400;
}

/* 変数 */
:root {
  --headerHight: 80px;
  --primaryColor: #d9abae;
  --secondaryColor: #e7bbbd;
  --thirdColor: #f7e8e9;
  --textColor: #db7a80;
}
/* ここまで */

/* 全体 */
.mainTopMargin {
  margin-top: 120px;
}

@media (max-width: 1024px) {
.mainTopMargin {
  margin-top: 110px;
}
}
@media (max-width: 560px) {
  .mainTopMargin {
    margin-top: 100px;
  }

.ec-headerRole__navSP {
  width: 40px;
  height: 40px;
}
}



@media (min-width: 561px) {
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
}

/* フォント関係 */
body {
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  /* font-family: 'Noto Sans JP', sans-serif; */
  font-size: 15px;
  line-height: 1.8;
}

b, strong, .bold {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
  font-weight: bold;
}

/* IEだけに適応 */
_:lang(x)::-ms-backdrop, .selector {
    font-family: "Segoe UI", Meiryo, sans-serif;
}

a {
    color: #000;
    text-decoration: none;
}

.mincho {
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.gfont {
  font-family: 'Noto Sans JP', sans-serif;
}




/* ヘッダー部 */
.ec-layoutRole__header {
    width: 100%;
    height: 80px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    background: #fff;
}

.ec-headerNaviRole {
  max-width: 1400px;
}

.ec-headerNaviRole__left {
  display: flex;
  align-items: center;
}

.ec-headerNaviRole .ec-headerNaviRole__search {
  margin-top: 0;
}

.ec-layoutRole .ec-layoutRole__contents {
    max-width: none;
}

.logoContainer {
    width: 145px;
    margin-right: 20px;
    margin-top: 1.7%;
}

.logoContainer img {
    width: 100%;
    vertical-align: bottom;
}






/* メインコンテンツ */
#fvContainer {
    width: 100%;
    height: calc(100vh - 80px);
    margin-top: 80px;
    position: relative;
  }

.fvImg {
  width: 100%;
  height: calc(100vh - 80px);
  object-fit: cover;
}

.fvImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.catch {
  font-size: 26px;
  letter-spacing: 8px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #fff;
  position: absolute;
  top: 46%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: fvAni 1s 3s both;
}

@keyframes fvAni {
  0% {opacity: 1; filter: blur(0);}
  /* 90% {opacity: 1; filter: blur(0);} */
  100% {opacity: 0; filter: blur(50px);}
}

.fvLogo {
  width: 178px;
  position: absolute;
  top: 7%;
  right: 3.6%;
  animation: fvAni2 0.7s 3s both;
}

@keyframes fvAni2 {
  0% {opacity: 0; filter: blur(20px); top: 10%;}
  /* 90% {opacity: 1; filter: blur(0);} */
  100% {opacity: 1; filter: blur(0); top: 7%;}
}

.fvLogo img {
  width: 100%;
  vertical-align: bottom;
}

.scroll {
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 4px;
  position: absolute;
  left: 50%;
  bottom: 60px;
  transform: translateX(-50%);
}

.scrollBar {
  width: 1px;
  height: 32px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -43px;
  transform: translateX(-50%);
  overflow: hidden;
}

.scrollBar::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  animation: scroll 3s infinite;
}

@keyframes scroll {
  0% {transform: translateY(-100%);}
  35% {transform: translateY(0%)}
  70% {transform: translateY(100%)}
  100% {transform: translateY(100%)}
}







#aboutContainer {
  width: 100%;
  display: flex;
}

.aboutImg {
  width: 50%;
  padding: 90px 150px;
  box-sizing: border-box;
  background: var(--secondaryColor);
  display: flex;
  justify-content: right;
  align-items: center;
}

.aboutImg img {
  width: 100%;
  max-width: 400px;
  vertical-align: bottom;
}

.aboutText {
  width: 50%;
  padding: 150px;
  box-sizing: border-box;
  background: var(--thirdColor);
}

.title {
  font-size: 50px;
  color: var(--textColor);
  letter-spacing: 3px;
  line-height: 1.4;
}

.title span {
  font-size: 15px;
  color: #000;
  display: block;
}

.aboutText p {
  margin-top: 40px;
  max-width: 400px;
  line-height: 1.8;
}






.newItemContainer {
  width: 100%;
}

.newItemTitleContainer {
  width: 100%;
  height: 500px;
  background: url(../../../template/default/assets/img/top/newItemBack.jpg) center center / cover no-repeat;
  position: relative;
}

.newItemTitleContainer .title {
  position: absolute;
  top: 50%;
  left: 33%;
  transform: translate(-50%, -50%);
}

.newItemContentsContainer {
  width: 90%;
  max-width: 900px;
  margin: 150px auto 0;
}

.newItemContents {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.newItem {
  flex: 0 1 30%;
  width: 30%;
  margin: 0 5% 60px 0;
}

.newItem:nth-of-type(3n) {
  margin-right: 0;
}

.newItemImg {
  aspect-ratio: 205 / 283;
}

.newItemImg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 0%;
}

.newItemTextContainer {
  width: 100%;
  font-size: 14px;
  margin-top: 10px;
}

.price {
  margin-top: 5px;
  font-size: 18px;
  font-weight: 500;
}

.more {
  margin: 0 0 0 auto;
  text-align: right;
  font-size: 18px;
  letter-spacing: 3px;
}

.more a {
  padding: 10px 0;
}

.more a img {
  width: 30px;
  vertical-align: bottom;
  margin-left: 12px;
}






/* カテゴリー */
#categoryItemContainer {
  width: 100%;
  margin: 130px auto 0;
  padding: 130px 0 150px;
  background: #f4f4f3;
}

.categoryItemTitle {
  text-align: center;
}

.categoryItemContents {
  width: 90%;
  max-width: 900px;
  margin: 50px auto 0;
}

.categoryItemContents > ul {
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.categoryItem {
  width: 167px;
  min-height: 102px;
  margin: 1% 0.7%;
  padding: 0;
  text-align: center;
  position: relative;
  list-style: none;
  overflow: hidden;
}
.categoryItem:hover {
  z-index: 1;
  overflow: visible;
}

.categoryItem a {
  height: 100%;
  padding: 20px 7px 15px 7px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  letter-spacing: 3px;
  color: #fff;
  background: var(--primaryColor);
  transition: 0.3s;
}
.categoryItem:hover > a {
  background: #fff;
  color: var(--textColor);
  opacity: 1;
}
.categoryItem:hover > a span::after {
  background: var(--primaryColor);
}

.categoryItem span {
  position: relative;
  margin-left: 5px;
  margin-top: -10px;
  line-height: 1.4;
}

.categoryItem span::after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
}

/* 子カテゴリー */
.categoryItem > ul {
  position: absolute;
  left: 0;
  padding: 0;
}
.categoryItemChild {
  min-height: auto;
  position: relative;
  visibility: collapse;
  margin: 0;
  opacity: 0;
  transition: 0.3s;
  transform: translateX(20px);
}
.categoryItem:hover > ul > .categoryItemChild {
  visibility: visible;
  opacity: 1;
  transform: translateX(0px);
}

.categoryItemChild a {
  height: 100%;
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild a:hover {
  background: #fff;
  color: var(--textColor);
}

.categoryItemChild span::after {
  background: var(--textColor);
}

/* 孫カテゴリー */
.categoryItemChild > ul {
  position: absolute;
  top: 0;
  left: 100%;
  padding: 0;
}

.categoryItemChild > ul > .categoryItemChild a {
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild > ul > .categoryItemChild:hover > a {
  background: #fff;
}






.cautionContainer {
  width: 90%;
  max-width: 900px;
  margin: 100px auto 0;
  padding: 50px 50px;
  box-sizing: border-box;
  background: #fff;
  display: flex;
  justify-content: center;
}

.cautionContainer dt {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.7em;
  margin-bottom: 50px;
  position: relative;
}
.cautionContainer dt::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 50%;
  bottom: -25px;
  transform: translateX(-50%);
}

.cautionContainer dd {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.5px;
}







#companyContainer {
  width: 90%;
  max-width: 900px;
  margin: 150px auto;
  display: flex;
  justify-content: space-between;
}

.companyTitle {
  margin-right: 3%;
}

.companyContents {
  width: 61.1%;
}

.company {
  margin-bottom: 20px;
}

.companyContents img {
  width: 100%;
  vertical-align: bottom;
}








/* フッター */
footer {
  width: 100%;
  margin-top: 80px;
  background: var(--primaryColor);
  padding-top: 40px;
  padding-bottom: 10px;
  color: #fff;
  text-align: center;
}

footer .ec-footerRole {
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
}

.footerLogo {
  width: 180px;
  margin: 50px auto 0;
}

.footerLogo img {
  width: 100%;
  vertical-align: bottom;
}

.copy {
  display: block;
  font-size: 10px;
  letter-spacing: 3px;
  margin-top: 40px;
  color: #fff;
}

.ec-blockTopBtn.pagetop {
  display: none!important;
}







@media(max-width: 1024px) {
/* ヘッダー部 */
/* .ec-layoutRole__header {
  width: 100%;
  height: 80px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  background: #fff;
}

.ec-headerNaviRole {
max-width: 1400px;
}

.ec-headerNaviRole__left {
display: flex;
align-items: center;
}

.ec-headerNaviRole .ec-headerNaviRole__search {
margin-top: 0;
}

.ec-layoutRole .ec-layoutRole__contents {
  max-width: none;
}

.logoContainer {
  width: 145px;
  margin-right: 20px;
  margin-top: 1.7%;
}

.logoContainer img {
  width: 100%;
  vertical-align: bottom;
} */






/* メインコンテンツ */
/* #fvContainer {
  width: 100%;
  height: calc(100vh - 80px);
  margin-top: 80px;
  position: relative;
}

.fvImg {
  width: 100%;
  height: calc(100vh - 80px);
  object-fit: cover;
}

.fvImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.catch {
  font-size: 26px;
  letter-spacing: 8px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #fff;
  position: absolute;
  top: 46%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: fvAni 1s 3s both;
}

@keyframes fvAni {
  0% {opacity: 1; filter: blur(0);}
  100% {opacity: 0; filter: blur(50px);}
}

.fvLogo {
  width: 178px;
  position: absolute;
  top: 7%;
  right: 3.6%;
  animation: fvAni2 0.7s 3s both;
}

@keyframes fvAni2 {
  0% {opacity: 0; filter: blur(20px); top: 10%;}
  100% {opacity: 1; filter: blur(0); top: 7%;}
}

.fvLogo img {
  width: 100%;
  vertical-align: bottom;
}

.scroll {
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 4px;
  position: absolute;
  left: 50%;
  bottom: 60px;
  transform: translateX(-50%);
}

.scrollBar {
  width: 1px;
  height: 32px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -43px;
  transform: translateX(-50%);
  overflow: hidden;
}

.scrollBar::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  animation: scroll 3s infinite;
}

@keyframes scroll {
  0% {transform: translateY(-100%);}
  35% {transform: translateY(0%)}
  70% {transform: translateY(100%)}
  100% {transform: translateY(100%)}
} */







#aboutContainer {
  /* width: 100%;
  display: flex; */
  flex-wrap: wrap;
}

.aboutImg {
  width: 100%;
  /* padding: 90px 150px;
  box-sizing: border-box;
  background: var(--secondaryColor);
  display: flex; */
  justify-content: center;
  /* align-items: center; */
}

/* .aboutImg img {
  width: 100%;
  max-width: 400px;
  vertical-align: bottom;
} */

.aboutText {
  width: 100%;
  /* padding: 150px;
  box-sizing: border-box;
  background: var(--thirdColor); */
}

.title {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  /* font-size: 50px;
  color: var(--textColor);
  letter-spacing: 3px;
  line-height: 1.4; */
}

/* .title span {
  font-size: 15px;
  color: #000;
  display: block;
} */

.aboutText p {
  width: 100%;
  /* max-width: 400px;
  margin-top: 40px; */
  margin-left: auto;
  margin-right: auto;
  /* line-height: 1.8; */
}






/* .newItemContainer {
  width: 100%;
}

.newItemTitleContainer {
  width: 100%;
  height: 500px;
  background: url(../../../template/default/assets/img/top/newItemBack.jpg) center center / cover no-repeat;
  position: relative;
}

.newItemTitleContainer .title {
  position: absolute;
  top: 50%;
  left: 33%;
  transform: translate(-50%, -50%);
}

.newItemContentsContainer {
  width: 90%;
  max-width: 900px;
  margin: 150px auto 0;
}

.newItemContents {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.newItem {
  flex: 0 1 30%;
  width: 30%;
  margin: 0 5% 60px 0;
}

.newItem:nth-of-type(3n) {
  margin-right: 0;
}

.newItemImg img {
  width: 100%;
  vertical-align: bottom;
}

.newItemTextContainer {
  width: 100%;
  font-size: 14px;
  margin-top: 10px;
}

.price {
  margin-top: 5px;
  font-size: 18px;
  font-weight: 500;
}

.more {
  margin: 0 0 0 auto;
  text-align: right;
  font-size: 18px;
  letter-spacing: 3px;
}

.more a {
  padding: 10px 0;
}

.more a img {
  width: 30px;
  vertical-align: bottom;
  margin-left: 12px;
} */







/* カテゴリー */
/* #categoryItemContainer {
  width: 100%;
  margin: 130px auto 0;
  padding: 130px 0 150px;
  background: #f4f4f3;
}

.categoryItemTitle {
  text-align: center;
}

.categoryItemContents {
  width: 90%;
  max-width: 900px;
  margin: 50px auto 0;
}

.categoryItemContents > ul {
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.categoryItem {
  width: 167px;
  min-height: 102px;
  margin: 1% 0.7%;
  padding: 0;
  text-align: center;
  position: relative;
  list-style: none;
  overflow: hidden;
}
.categoryItem:hover {
  z-index: 1;
  overflow: visible;
} */

/* .categoryItem a {
  height: 100%;
  padding: 20px 7px 15px 7px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  letter-spacing: 3px;
  color: #fff;
  background: var(--primaryColor);
  transition: 0.3s;
}
.categoryItem:hover > a {
  background: #fff;
  color: var(--textColor);
  opacity: 1;
}
.categoryItem:hover > a span::after {
  background: var(--primaryColor);
}

.categoryItem span {
  position: relative;
  margin-left: 5px;
  margin-top: -10px;
  line-height: 1.4;
}

.categoryItem span::after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
} */

/* 子カテゴリー */
/* .categoryItem > ul {
  position: absolute;
  left: 0;
  padding: 0;
}
.categoryItemChild {
  min-height: auto;
  position: relative;
  visibility: collapse;
  margin: 0;
  opacity: 0;
  transition: 0.3s;
  transform: translateX(20px);
}
.categoryItem:hover > ul > .categoryItemChild {
  visibility: visible;
  opacity: 1;
  transform: translateX(0px);
}

.categoryItemChild a {
  height: 100%;
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild a:hover {
  background: #fff;
  color: var(--textColor);
}

.categoryItemChild span::after {
  background: var(--textColor);
} */

/* 孫カテゴリー */
/* .categoryItemChild > ul {
  position: absolute;
  top: 0;
  left: 100%;
  padding: 0;
}

.categoryItemChild > ul > .categoryItemChild a {
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild > ul > .categoryItemChild:hover > a {
  background: #fff;
} */




/* .cautionContainer {
  width: 90%;
  max-width: 900px;
  margin: 100px auto 0;
  padding: 50px 50px;
  box-sizing: border-box;
  background: #fff;
  display: flex;
  justify-content: center;
}

.cautionContainer dt {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.7em;
  margin-bottom: 50px;
  position: relative;
}
.cautionContainer dt::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 50%;
  bottom: -25px;
  transform: translateX(-50%);
}

.cautionContainer dd {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.5px;
} */







#companyContainer {
  /* width: 90%;
  max-width: 900px;
  margin: 150px auto;
  display: flex;
  justify-content: space-between; */
  flex-wrap: wrap;
}

.companyTitle {
  width: 100%;
  margin-right: 0%;
}

.companyTitle .title {
  width: 100%;
  max-width: none;
}

.companyContents {
  width: 100%;
  margin-top: 30px;
}

.company {
  margin-bottom: 20px;
}

/* .companyContents img {
  width: 100%;
  vertical-align: bottom;
} */








/* フッター */
/* footer {
width: 100%;
margin-top: 80px;
background: var(--primaryColor);
padding-top: 40px;
padding-bottom: 10px;
color: #fff;
text-align: center;
}

footer .ec-footerRole {
margin: 0;
padding: 0;
background: transparent;
border: none;
}

.footerLogo {
width: 180px;
margin: 50px auto 0;
}

.footerLogo img {
width: 100%;
vertical-align: bottom;
}

.copy {
display: block;
font-size: 10px;
letter-spacing: 3px;
margin-top: 40px;
color: #fff;
}

.ec-blockTopBtn.pagetop {
display: none!important;
} */



}










@media(max-width: 560px) {
/* ヘッダー部 */
/* .ec-layoutRole__header {
  width: 100%;
  height: 80px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  background: #fff;
}

.ec-headerNaviRole {
max-width: 1400px;
}

.ec-headerNaviRole__left {
display: flex;
align-items: center;
}

.ec-headerNaviRole .ec-headerNaviRole__search {
margin-top: 0;
}

.ec-layoutRole .ec-layoutRole__contents {
  max-width: none;
} */

.logoContainer {
  width: 145px;
  margin-right: 20px;
  margin-top: 1.7%;
  margin-left: 50px;
}

/* .logoContainer img {
  width: 100%;
  vertical-align: bottom;
} */

.ec-cartNavi {
  padding-left: 10px;
}






/* メインコンテンツ */
/* #fvContainer {
  width: 100%;
  height: calc(100vh - 80px);
  margin-top: 80px;
  position: relative;
}

.fvImg {
  width: 100%;
  height: calc(100vh - 80px);
  object-fit: cover;
}

.fvImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
} */

.catch {
  height: 350px;
  /* font-size: 26px;
  letter-spacing: 8px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #fff;
  position: absolute;
  top: 46%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: fvAni 1s 3s both; */
}

/* @keyframes fvAni {
  0% {opacity: 1; filter: blur(0);}
  100% {opacity: 0; filter: blur(50px);}
} */

.fvLogo {
  width: 144px;
  /* position: absolute; */
  top: 100px;
  right: 50%;
  transform: translateX(50%);
  /* animation: fvAni2 0.7s 3s both; */
}

/* @keyframes fvAni2 {
  0% {opacity: 0; filter: blur(20px); top: 10%;}
  100% {opacity: 1; filter: blur(0); top: 7%;}
}

.fvLogo img {
  width: 100%;
  vertical-align: bottom;
}

.scroll {
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 4px;
  position: absolute;
  left: 50%;
  bottom: 60px;
  transform: translateX(-50%);
}

.scrollBar {
  width: 1px;
  height: 32px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -43px;
  transform: translateX(-50%);
  overflow: hidden;
}

.scrollBar::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  animation: scroll 3s infinite;
}

@keyframes scroll {
  0% {transform: translateY(-100%);}
  35% {transform: translateY(0%)}
  70% {transform: translateY(100%)}
  100% {transform: translateY(100%)}
} */







#aboutContainer {
  /* width: 100%;
  display: flex; */
  flex-wrap: wrap;
}

.aboutImg {
  /* width: 100%; */
  padding: 15% 10%;
  /* box-sizing: border-box;
  background: var(--secondaryColor);
  display: flex; */
  /* justify-content: center; */
  /* align-items: center; */
}

/* .aboutImg img {
  width: 100%;
  max-width: 400px;
  vertical-align: bottom;
} */

.aboutText {
  /* width: 100%; */
  padding: 5% 10% 10%;
  /* box-sizing: border-box;
  background: var(--thirdColor); */
}

.title {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  /* font-size: 50px;
  color: var(--textColor);
  letter-spacing: 3px;
  line-height: 1.4; */
}

/* .title span {
  font-size: 15px;
  color: #000;
  display: block;
} */

.aboutText p {
  width: 100%;
  /* max-width: 400px;
  margin-top: 40px; */
  margin-left: auto;
  margin-right: auto;
  /* line-height: 1.8; */
}






/* .newItemContainer {
  width: 100%;
} */

.newItemTitleContainer {
  /* width: 100%; */
  height: 375px;
  /* background: url(../../../template/default/assets/img/top/newItemBack.jpg) center center / cover no-repeat;
  position: relative; */
}

.newItemTitleContainer .title {
  width: 300px;
  /* position: absolute;
  top: 50%; */
  left: 50%;
  /* transform: translate(-50%, -50%); */
}

.newItemContentsContainer {
  /* width: 90%;
  max-width: 900px; */
  margin: 50px auto 0;
}

.newItemContents {
  /* width: 100%;
  display: flex;
  flex-wrap: wrap; */
  flex-wrap: wrap;
}

.newItem {
  flex: 0 1 48%;
  width: 48%;
  margin: 0 4% 40px 0;
}

.newItem:nth-of-type(3n) {
  margin-right: 4%;
}
.newItem:nth-of-type(2n) {
  margin-right: 0;
}

/* .newItemImg img {
  width: 100%;
  vertical-align: bottom;
}

.newItemTextContainer {
  width: 100%;
  font-size: 14px;
  margin-top: 10px;
}

.price {
  margin-top: 5px;
  font-size: 18px;
  font-weight: 500;
}

.more {
  margin: 0 0 0 auto;
  text-align: right;
  font-size: 18px;
  letter-spacing: 3px;
}

.more a {
  padding: 10px 0;
}

.more a img {
  width: 30px;
  vertical-align: bottom;
  margin-left: 12px;
} */







#categoryItemContainer {
  /* width: 100%; */
  margin: 60px auto 0;
  padding: 40px 0 60px;
  /* background: #f4f4f3; */
}

/* .categoryItemTitle {
  text-align: center;
} */

.categoryItemContents {
  width: 90%;
  /* max-width: 900px; */
  margin: 50px auto 0;
  /* display: flex; */
  flex-wrap: wrap;
}

.categoryItem {
  width: 100%;
  height: 80px;
  min-height: auto;
  margin: 7px 0;
  /* text-align: center;
  box-sizing: border-box;
  position: relative; */
}
/* .categoryItem:hover {
  z-index: 1;
} */

/* .categoryItem a:hover {
  background: #fff;
  color: var(--primaryColor);
} */

.categoryItem a {
  /* height: 100%; */
  height: 80px;
  /* padding: 20px 7px 15px 7px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  letter-spacing: 3px;
  color: #fff;
  background: var(--primaryColor);
  transition: 0.3s; */
}
/* .categoryItem:hover > a {
  background: #fff;
  color: var(--textColor);
  opacity: 1;
}
.categoryItem:hover > a span::after {
  background: var(--primaryColor);
}

.categoryItem span {
  position: relative;
  margin-left: 5px;
  margin-top: -10px;
  line-height: 1.4;
}

.categoryItem span::after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
} */

/* 子カテゴリー */
.categoryItem > ul {
  display: none;
  /* position: absolute;
  left: 0;
  padding: 0; */
}
/* .categoryItemChild {
  min-height: auto;
  position: relative;
  visibility: collapse;
  margin: 0;
  opacity: 0;
  transition: 0.3s;
  transform: translateX(20px);
}
.categoryItem:hover > ul > .categoryItemChild {
  visibility: visible;
  opacity: 1;
  transform: translateX(0px);
}

.categoryItemChild a {
  height: 100%;
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild a:hover {
  background: #fff;
  color: var(--textColor);
}

.categoryItemChild span::after {
  background: var(--textColor);
} */

/* 孫カテゴリー */
/* .categoryItemChild > ul {
  position: absolute;
  top: 0;
  left: 100%;
  padding: 0;
}

.categoryItemChild > ul > .categoryItemChild a {
  background: var(--thirdColor);
  color: var(--textColor);
}
.categoryItemChild > ul > .categoryItemChild:hover > a {
  background: #fff;
} */




.cautionContainer {
  /* width: 90%;
  max-width: 900px; */
  margin: 60px auto 0;
  padding: 40px 20px 20px;
  /* box-sizing: border-box;
  background: #fff;
  display: flex;
  justify-content: center; */
}

/* .cautionContainer dt {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.7em;
  margin-bottom: 50px;
  position: relative;
}
.cautionContainer dt::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 50%;
  bottom: -25px;
  transform: translateX(-50%);
}

.cautionContainer dd {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.5px;
} */







#companyContainer {
  /* width: 90%;
  max-width: 900px; */
  margin: 20px auto;
  /* display: flex;
  justify-content: space-between;
  flex-wrap: wrap; */
}

.companyTitle {
  width: 100%;
  margin-right: 0%;
}

.companyTitle .title {
  width: 100%;
  max-width: none;
}

.companyContents {
  width: 100%;
  margin-top: 30px;
}

.company {
  margin-bottom: 20px;
}

/* .companyContents img {
  width: 100%;
  vertical-align: bottom;
} */








/* フッター */
footer {
/* width: 100%; */
margin-top: 50px;
/* background: var(--primaryColor); */
padding-top: 0px;
/* padding-bottom: 10px;
color: #fff;
text-align: center; */
}

/* footer .ec-footerRole {
margin: 0;
padding: 0;
background: transparent;
border: none;
}

.footerLogo {
width: 180px;
margin: 50px auto 0;
}

.footerLogo img {
width: 100%;
vertical-align: bottom;
}

.copy {
display: block;
font-size: 10px;
letter-spacing: 3px;
margin-top: 40px;
color: #fff;
}

.ec-blockTopBtn.pagetop {
display: none!important;
} */



}















/* 商品詳細ページ */
.ec-sliderItemRole .item_nav {
  gap: 0 2%;
}

#page_product_detail .slide-item {
  aspect-ratio: 205 / 283;
}

#page_product_detail .slide-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 0%;
}

#page_product_detail .slideThumb {
  flex: 0 1 32%;
  aspect-ratio: 205 / 283;
  margin-bottom: 2%;
}

#page_product_detail .slideThumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 0%;
}