﻿/* パンくず 追加スタイル PC */
@media only screen and (min-width: 768px) {
  .breadcrumb__list {
    padding-bottom: 1.6rem;
  }
}

/* ページ共通___________________________*/
.main-area {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  line-height: 2.25;
  font-size: calc(16* (100vw / 375));
  padding-bottom: calc(160* (100vw / 375));
  overflow-x: hidden;
  text-align: center;
  color: #222;
}

.main-area img,
.main-area picture {
  width: 100%;
  height: auto;
}

.main-area a,
.main-area picture {
  display: inline-block;
}

@font-face {
  font-family: "monika";
  src: url("../font/Monika.TTF") format("truetype");
}

@font-face {
  font-family: "jakarta-italic";
  src: url("../font/PlusJakartaSans-Italic-VariableFont_wght.ttf") format("truetype");
}

@font-face {
  font-family: "jakarta";
  src: url("../font/PlusJakartaSans-VariableFont_wght.ttf") format("truetype");
}

@font-face {
  font-family: "Ubuntu-Medium";
  src: url("../font/Ubuntu-Medium.ttf") format("truetype");
}


.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

_:lang(x)+_:-webkit-full-screen-document,
.ff_hkg_b {
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
}


@media screen and (max-width: 767px) {
  .main-area .pcOnly {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .main-area {
    font-size: calc(20* (100vw /1920));
    padding-bottom: calc(164* (100vw /1920));
  }

  .main-area .spOnly {
    display: none;
  }

  .main-area a {
    transition: all 0.3s;
  }
}

@media screen and (min-width: 1920px) {
  .main-area {
    font-size: 20px;
    padding-bottom: 164px;
  }
}

/* ▽ sec__fv ▽ */
.sec__fv {
  position: relative;
}

.sec__fv .--logo {
  width: calc(280* (100vw /375));
  margin: calc(74* (100vw /375)) auto 0;
}

.sec__fv h3 {
  font-family: "HiraKakuProN-W3", "Hiragino Kaku Gothic ProN W3", "Hiragino Sans", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: calc(20* (100vw / 375));
  margin-top: calc(18* (100vw / 375));
  font-weight: 300;
}

.sec__fv h3+p {
  margin-top: calc(31* (100vw / 375));
}

@media screen and (max-width: 767px) {

  .style h3 {
    font-family: "jakarta-italic";
    font-size: calc(69* (100vw /375));
    font-weight: 200;
    letter-spacing: 0.02em;
    line-height: 1;
    margin: calc(83*(100vw / 375)) 0 0 calc(38*(100vw / 375));
    text-align: left;
  }

  .style+.style h3 {
    margin-top: calc(90* (100vw /375));
  }

  .style2 h3 {
    margin: calc(90*(100vw / 375)) calc(35*(100vw / 375)) 0 auto;
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  .sec__fv {
    max-width: 1920px;
    width: calc(1920* (100vw /1920));
    margin: auto;
  }

  .sec__fv .--logo {
    width: calc(593* (100vw /1920));
    margin: calc(203* (100vw /1920)) auto 0;
  }

  .sec__fv h3 {
    font-size: calc(28* (100vw /1920));
    margin-top: calc(28* (100vw /1920));
  }

  .sec__fv h3+p {
    margin-top: calc(51* (100vw /1920));
  }

  /* style___________________________*/
  .style {
    position: relative;
    display: grid;
    width: calc(1920* (100vw /1920));
    margin: calc(176* (100vw /1920)) auto 0;
    grid-template-columns: calc(140* (100vw /1920)) calc(960* (100vw /1920)) calc(133* (100vw /1920)) auto;
    grid-template-rows: calc(272* (100vw /1920)) calc(527* (100vw /1920)) auto;
  }

  .style h3 {
    position: absolute;
    font-family: "jakarta-italic";
    font-size: calc(180* (100vw /1920));
    font-weight: 200;
    letter-spacing: 0.02em;
    line-height: 1;
    width: fit-content;
    top: calc(10* (100vw /1920));
    left: calc(245* (100vw /1920));
  }


  .style+.style {
    margin: calc(353* (100vw /1920)) auto 0;
  }

  /* style2___________________________*/
  .style.style2 {
    margin: calc(404* (100vw /1920)) auto 0;
    grid-template-columns: calc(100* (100vw /1920)) calc(860* (100vw /1920)) auto;
  }

  .style2 h3 {
    left: initial;
    right: calc(318* (100vw /1920));
  }
}

@media screen and (min-width: 1920px) {
  .sec__fv .--logo {
    width: 593px;
    margin: 203px auto 0;
  }

  .sec__fv h3 {
    font-size: 28px;
    margin-top: 28px;
  }

  .sec__fv h3+p {
    margin-top: 51px;
  }

  /* style___________________________*/
  .style {
    width: 1920px;
    margin: 176px auto 0;
    grid-template-columns: 140px 960px 132px auto;
    grid-template-rows: 272px 527px auto;
  }

  .style h3 {
    font-size: 180px;
    top: 10px;
    left: 245px;
  }


  .style+.style {
    margin: 353px auto 0;
  }

  /* style2___________________________*/
  .style.style2 {
    margin: 404px auto 0;
    grid-template-columns: 100px 860px auto;
  }

  .style2 h3 {
    left: initial;
    right: 318px;
  }
}

/* ===============================================
* js-slider-slide *
=============================================== */
.js-slider-slide {
  width: calc(320* (100vw /375));
  margin: calc(30* (100vw /375)) auto 0;
}

.js-slider-slide .slide-arrow {
  cursor: pointer;
  position: absolute;
  width: calc(10* (100vw /375));
  height: calc(14* (100vw /375));
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .js-slider-slide .slide-arrow {
    top: 50%;
    transform: translateY(-50%);
  }
}

.js-slider-slide .prev-arrow {
  left: calc(-20* (100vw /375));
}

.js-slider-slide .next-arrow {
  right: calc(-20* (100vw /375));
}

.slick-dotted.slick-slider {
  margin-bottom: 0 !important;
  line-height: 0;
  font-size: 0;
}

.js-slider-slide .slick-dots {
  bottom: calc(-27* (100vw /375));
  z-index: 1;
}

/* ドット___________________________*/
.slick-dots li {
  width: calc(10* (100vw /375)) !important;
  height: calc(10* (100vw /375)) !important;
  margin: 0 calc(5* (100vw /375)) !important;
}

.slick-dots li button {
  width: calc(10* (100vw /375)) !important;
  height: calc(10* (100vw /375)) !important;
  border-radius: 50% !important;
  padding: 0 !important;
  background: initial !important;
  z-index: 1 !important;
}

.slick-dots li.slick-active button {
  background: initial;
}

.slick-dots li button:before {
  content: "" !important;
  color: transparent !important;
  border-radius: 50%;
  font-size: 0 !important;
  line-height: 0 !important;
  width: calc(10* (100vw /375)) !important;
  height: calc(10* (100vw /375)) !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: -1 !important;
  box-sizing: border-box;
}

.js-slider-slide .slick-dots li.slick-active button:before {
  opacity: 1 !important;
  background: #000;
  border: #000 calc(1* (100vw /375)) solid;
}

.js-slider-slide .slick-dots li button:before {
  opacity: 1 !important;
  border: #000 calc(1* (100vw /375)) solid;
}

@media screen and (min-width: 768px) {
  .js-slider-slide {
    width: calc(820* (100vw /1920));
    margin: 0;
    grid-area: 2/2/4/3;
  }

  .style2 .js-slider-slide {
    grid-area: 2/3/4/4;
  }

  .js-slider-slide .slide-arrow {
    width: calc(25* (100vw /1920));
    height: calc(36.7* (100vw /1920));
    top: calc(570* (100vw /1920));
  }

  .js-slider-slide .prev-arrow {
    left: calc(-43* (100vw /1920));
  }

  .js-slider-slide .next-arrow {
    right: calc(-43* (100vw /1920));
  }

  .js-slider-slide .slick-dots {
    bottom: initial !important;
    top: calc(1157* (100vw /1920)) !important;
    z-index: 1;
    position: absolute;
  }

  /* ドット___________________________*/
  .slick-dots li {
    width: calc(16* (100vw /1920)) !important;
    height: calc(16* (100vw /1920)) !important;
    margin: 0 calc(7* (100vw /1920)) !important;
  }

  .slick-dots li button {
    width: calc(16* (100vw /1920)) !important;
    height: calc(16* (100vw /1920)) !important;
  }

  .slick-dots li button:before {
    width: calc(16* (100vw /1920)) !important;
    height: calc(16* (100vw /1920)) !important;
  }

  .js-slider-slide .slick-dots li.slick-active button:before {
    border: #000 1px solid;
  }

  .js-slider-slide .slick-dots li button:before {
    border: #000 1px solid;
  }
}

@media screen and (min-width: 1920px) {
  .js-slider-slide {
    width: 819px;
  }

  .js-slider-slide .slide-arrow {
    width: 25px;
    height: 36.7px;
    top: 570px;
  }

  .js-slider-slide .prev-arrow {
    left: -43px;
  }

  .js-slider-slide .next-arrow {
    right: -43px;
  }

  .js-slider-slide .slick-dots {
    top: 1157px !important;
  }

  /* ドット___________________________*/
  .slick-dots li {
    width: 16px !important;
    height: 16px !important;
    margin: 0 7px !important;
  }

  .slick-dots li button {
    width: 16px !important;
    height: 16px !important;
  }

  .slick-dots li button:before {
    width: 16px !important;
    height: 16px !important;
  }
}

/* ===============================================
* sub__img--wrap *
=============================================== */
.sub__img--wrap {
  position: relative;
  margin-top: calc(78* (100vw /375));
}

.sub__img--wrap img {
  display: block;
  width: calc(275 * (100vw /375));
  margin-left: auto;
}

.sub__img--wrap::before,
.sub__img--wrap::after {
  content: "";
  position: absolute;
}

.sub__img--wrap::before {
  z-index: -1;
  background: url(../img/bg02.jpg) center/contain no-repeat;
  width: calc(235* (100vw /375));
  height: calc(258* (100vw /375));
  top: calc(14* (100vw /375));
  right: 0;
}

.sub__img--wrap::after {
  z-index: -2;
  background: url(../img/bg01.jpg) center/contain no-repeat;
  width: calc(300* (100vw /375));
  height: calc(188* (100vw /375));
  top: calc(40* (100vw /375));
  left: 0;
  opacity: 0.3;
}

@media screen and (min-width: 768px) {
  .sub__img--wrap {
    width: calc(687* (100vw /1920));
    margin-top: 0;
    grid-area: 1/4/3/5;
  }

  .sub__img--wrap img {
    width: calc(687* (100vw /1920));
    margin: 0;
  }

  .sub__img--wrap::before {
    width: calc(587* (100vw /1920));
    height: calc(646* (100vw /1920));
    top: calc(32* (100vw /1920));
    right: 0;
  }

  .sub__img--wrap::after {
    width: calc(783* (100vw /1920));
    height: calc(492* (100vw /1920));
    top: calc(90* (100vw /1920));
    left: calc(-640* (100vw /1920));
  }

  /* style2___________________________*/
  .style2 .sub__img--wrap {
    grid-area: 1/1/2/2;
  }

  .style2 .sub__img--wrap img {
    width: calc(687* (100vw /1920));
    margin: 0;
  }

  .style2 .sub__img--wrap::before {
    top: calc(32* (100vw /1920));
    right: initial;
    left: 0;
  }

  .style2 .sub__img--wrap::after {
    top: calc(90* (100vw /1920));
    left: initial;
    right: calc(-546* (100vw /1920));
  }
}

@media screen and (min-width: 1920px) {
  .sub__img--wrap {
    width: 687px;
  }

  .sub__img--wrap img {
    width: 687px;
  }

  .sub__img--wrap::before {
    width: 587px;
    height: 646px;
    top: 32px;
  }

  .sub__img--wrap::after {
    width: 783px;
    height: 492px;
    top: 90px;
    left: -640px;
  }

  /* style2___________________________*/
  .style2 .sub__img--wrap img {
    width: 687px;
  }

  .style2 .sub__img--wrap::before {
    top: 32px;
  }

  .style2 .sub__img--wrap::after {
    top: 90px;
    right: -546px;
  }
}

/* ===============================================
* detail__wrap *
================s=============================== */
.detail__wrap {
  width: calc(360*(100vw / 375));
  margin: calc(127*(100vw / 375)) auto 0;
}

.item__list--item+.item__list--item {
  margin-top: calc(44* (100vw /375));
}

.item__name {
  display: flex;
  align-items: baseline;
}

.item__name span {
  text-align: left;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .item__name .__product {
    width: 74%;
    padding-left: calc(8*(100vw / 375));
  }

  .item__name .__price {
    width: 16%
  }

  .item__name .__tax {
    width: 10%;
    font-size: calc(10* (100vw /375));
  }
}

/* item__color___________________________*/
.item__color {
  display: flex;
  align-items: center;
  gap: calc(14*(100vw / 375));
  margin-top: calc(11*(100vw / 375));
  padding-left: calc(8* (100vw /375));
}

.item__color p {
  font-size: calc(12* (100vw /375));
  letter-spacing: 0.02em;
}

.item__color--list {
  display: flex;
  gap: calc(12* (100vw /375));
}

.item__color--list li {
  width: calc(60* (100vw /375));
  height: calc(20* (100vw /375));
  border: #000 1px solid;
  box-sizing: border-box;
}

/* item__btn___________________________*/
.detail__wrap .item__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: calc(27* (100vw /375)) auto 0;
  width: calc(200* (100vw /375));
  height: calc(48* (100vw /375));
  background: #222;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* comment__wrap___________________________*/
.comment__wrap {
  width: calc(345*(100vw / 375));
  margin: calc(70*(100vh / 935)) auto 0;
  background: #222;
  padding: calc(20*(100vw / 375)) calc(12*(100vw / 375)) calc(17* (100vw /375)) calc(12* (100vw /375));
  display: flex;
  flex-wrap: wrap;
}

.comment__wrap * {
  color: #fff;
  text-align: left;
  letter-spacing: 0.02em;
}

.comment__wrap h4 {
  width: calc(200* (100vw /375));
  font-family: "monika";
  font-size: calc(25* (100vw /375));
  line-height: 1;
  padding: calc(48* (100vw /375)) 0 0 calc(10* (100vw /375));
}

.comment__wrap .img {
  width: calc(120* (100vw /375));
}

.comment__wrap p {
  width: calc(320* (100vw /375));
  font-weight: 600;
  line-height: 1.875;
  margin-top: calc(17* (100vw /375));
}

@media screen and (min-width: 768px) {
  .detail__wrap {
    width: calc(717* (100vw /1920));
    margin: 0;
    grid-area: 3/3/4/4;
  }

  .style2 .detail__wrap {
    grid-area: 3/2/4/3;
  }

  .item__list--item {
    display: flex;
    justify-content: space-between;
  }

  .item__list--item+.item__list--item {
    margin-top: calc(33* (100vw /1920));
  }

  .item__name {
    padding-top: calc(7* (100vw /1920));
  }

  .item__name .__product {
    padding-right: calc(20* (100vw /1920));
    font-size: calc(24* (100vw /1920));
  }

  .item__name .__price {
    padding-right: calc(10* (100vw /1920));
    font-size: calc(24* (100vw /1920));
  }

  .item__name .__tax {
    font-size: calc(12* (100vw /1920));
  }

  /* item__color___________________________*/
  .item__color {
    gap: calc(15* (100vw /1920));
    margin-top: calc(20* (100vw /1920));
    padding-left: 0;
  }

  .item__color p {
    font-size: calc(12* (100vw /1920));
  }

  .item__color--list {
    gap: calc(12* (100vw /1920));
  }

  .item__color--list li {
    width: calc(60* (100vw /1920));
    height: calc(20* (100vw /1920));
  }

  /* item__btn___________________________*/
  .detail__wrap .item__btn {
    margin: 0;
    width: calc(200* (100vw /1920));
    height: calc(60* (100vw /1920));
    font-size: calc(18* (100vw /1920));
  }

  /* comment__wrap___________________________*/
  .comment__wrap {
    width: calc(717* (100vw /1920));
    margin: calc(120* (100vw /1920)) 0 0 0;
    padding: calc(31* (100vw /1920)) calc(25* (100vw /1920)) calc(33* (100vw /1920)) calc(25* (100vw /1920));
    gap: calc(11* (100vw /1920)) calc(22* (100vw /1920));
  }

  .comment__wrap h4 {
    width: 100%;
    font-size: calc(40* (100vw /1920));
    padding: 0 0 0 calc(13* (100vw /1920));
  }

  .comment__wrap .img {
    width: calc(143* (100vw /1920));
  }

  .comment__wrap p {
    width: calc(501* (100vw /1920));
    font-size: calc(18* (100vw /1920));
    line-height: 2;
    margin-top: 0;
  }
}

@media screen and (min-width: 1920px) {
  .detail__wrap {
    width: 717px;
  }

  .item__list--item+.item__list--item {
    margin-top: 33px;
  }

  .item__name {
    padding-top: 7px;
  }

  .item__name .__product {
    padding-right: 20px;
    font-size: 24px;
  }

  .item__name .__price {
    padding-right: 10px;
    font-size: 24px;
  }

  .item__name .__tax {
    font-size: 12px;
  }

  /* item__color___________________________*/
  .item__color {
    gap: 15px;
    margin-top: 20px;
  }

  .item__color p {
    font-size: 12px;
  }

  .item__color--list {
    gap: 12px;
  }

  .item__color--list li {
    width: 60px;
    height: 20px;
  }

  /* item__btn___________________________*/
  .detail__wrap .item__btn {
    width: 200px;
    height: 60px;
    font-size: 18px;
  }

  /* comment__wrap___________________________*/
  .comment__wrap {
    width: 717px;
    margin: 120px 0 0 0;
    padding: 31px 25px 33px 25px;
    gap: 11px 22px;
  }

  .comment__wrap h4 {
    font-size: 40px;
    padding: 0 0 0 13px;
  }

  .comment__wrap .img {
    width: 143px;
  }

  .comment__wrap p {
    width: 501px;
    font-size: 18px;
  }
}

.item01 .item__color--list li:nth-of-type(1) {
  background: #000;
}

.item01 .item__color--list li:nth-of-type(2) {
  background: #626262;
}

.item01 .item__color--list li:nth-of-type(3) {
  background: #DECDB5;
}

.item02 .item__color--list li:nth-of-type(1) {
  background: #000;
}

.item02 .item__color--list li:nth-of-type(2) {
  background: #616E5A;
}

.item03 .item__color--list li:nth-of-type(1) {
  background: #000;
}

.item03 .item__color--list li:nth-of-type(2) {
  background: #FFFDF8;
}

.item04 .item__color--list li:nth-of-type(1) {
  background: #000;
}

.item04 .item__color--list li:nth-of-type(2) {
  background: linear-gradient(135deg, #B9B9B9 0%, #EBEBEB 50%, #909090 100%);
}

.item05 .item__color--list li:nth-of-type(1) {
  background: #000;
}

.item05 .item__color--list li:nth-of-type(2) {
  background: #FFFDF8;
}

.item05 .item__color--list li:nth-of-type(3) {
  background: #DECDB5;
}

.item06 .item__color--list li:nth-of-type(1) {
  background: #D0D0D0;
}

.item06 .item__color--list li:nth-of-type(2) {
  background: #DECDB5;
}

/* ===============================================
* foot__wrap *
=============================================== */
.foot__wrap .--logo {
  width: calc(267* (100vw /375));
  margin: calc(82* (100vw /375)) auto 0;
}

.foot__wrap .--inner {
  width: calc(320* (100vw /375));
  margin: calc(20* (100vw /375)) auto 0;
  text-align: left;
}

.foot__wrap .--tx h4 {
  font-size: calc(22* (100vw /375));
  line-height: 1;
  letter-spacing: 0.02em;
  margin-top: calc(34* (100vw /375));
}

.foot__wrap .--tx h4 span {
  font-size: calc(16* (100vw /375));
}

.foot__wrap .--tx h4+p,
.foot__wrap .--tx h5+p {
  margin-top: calc(20* (100vw /375));
  font-size: calc(14* (100vw /375));
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.foot__wrap .--tx h5 {
  font-family: "monika";
  margin-top: calc(55* (100vw /375));
  font-size: calc(30* (100vw /375));
  line-height: 1;
  letter-spacing: 0.02em;
  padding-left: calc(10* (100vw /375));
}

.foot__wrap .--tx h5+p {
  margin-top: calc(6* (100vw /375));
}

@media screen and (min-width: 768px) {
  .foot__wrap .--logo {
    width: calc(593* (100vw /1920));
    margin: calc(276* (100vw /1920)) auto 0;
  }

  .foot__wrap .--inner {
    width: initial;
    margin: calc(110* (100vw /1920)) auto 0;
    display: flex;
    justify-content: center;
    gap: calc(103* (100vw /1920));
    padding-right: calc(30* (100vw /1920));
  }

  .foot__wrap .--img {
    width: calc(940* (100vw /1920));
  }

  .foot__wrap .--tx {
    width: calc(648* (100vw /1920));
  }

  .foot__wrap .--tx h4 {
    font-size: calc(30* (100vw /1920));
    margin-top: calc(6* (100vw /1920));
  }

  .foot__wrap .--tx h4 span {
    font-size: calc(24* (100vw /1920));
  }

  .foot__wrap .--tx h4+p,
  .foot__wrap .--tx h5+p {
    margin-top: calc(42* (100vw /1920));
    font-size: calc(16* (100vw /1920));
    line-height: 2.25;
  }

  .foot__wrap .--tx h5 {
    margin-top: calc(90* (100vw /1920));
    font-size: calc(40* (100vw /1920));
    padding-left: calc(20* (100vw /1920));
  }

  .foot__wrap .--tx h5+p {
    margin-top: calc(33* (100vw /1920));
  }
}

@media screen and (min-width: 1920px) {
  .foot__wrap .--logo {
    width: 593px;
    margin: 276px auto 0;
  }

  .foot__wrap .--inner {
    margin: 110px auto 0;
    gap: 103px;
    padding-right: 30px;
  }

  .foot__wrap .--img {
    width: 940px;
  }

  .foot__wrap .--tx {
    width: 648px;
  }

  .foot__wrap .--tx h4 {
    font-size: 30px;
    margin-top: 6px;
  }

  .foot__wrap .--tx h4 span {
    font-size: 24px;
  }

  .foot__wrap .--tx h4+p,
  .foot__wrap .--tx h5+p {
    margin-top: 42px;
    font-size: 16px;
  }

  .foot__wrap .--tx h5 {
    margin-top: 90px;
    font-size: 40px;
    padding-left: 20px;
  }

  .foot__wrap .--tx h5+p {
    margin-top: 33px;
  }
}

/* ▽ imganime ▽ */
.js-fadeIn {
  opacity: 0;
  will-change: opacity, transform;
  transition: ease-in, opacity 2500ms, transform 1000ms;
  transform: translate3d(0, 0, 0) scale(1);
}

.showFade {
  opacity: 1;
}