/* common */
a.pi_btn {
  background-color: #202020;
  color: #fff;
  text-align: center;
}

.pi_main a {
  display: block;
}

.pi_main img {
  vertical-align: middle;
}

.pi_main li {
  list-style: none;
}

.pi_flex {
  display: flex;
}


/* font */
.pi_main,
.pi_main h2,
.pi_main h4 {
  color: #202020;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Helvetica, Arial, sans-serif;
  font-feature-settings: "palt";
  text-align: center;
}

.pi_font {
  font-family: freight-display-pro, serif;
  font-style: normal;
  letter-spacing: 0.1em;
}



/* ------------------
フェードイン設定
--------------------- */
@keyframes fadeInUpsmall {
  0% {
    opacity: 0;
    transform: translate3d(0, 10%, 0)
  }

  to {
    opacity: 1;
    transform: none
  }
}

.fadeInUpsmall {
  animation-name: fadeInUpsmall
}

@keyframes fadeInDownsmall {
  0% {
    opacity: 0;
    transform: translate3d(0, -10%, 0)
  }

  to {
    opacity: 1;
    transform: none
  }
}

.fadeInDownsmall {
  animation-name: fadeInDownsmall
}

@keyframes fadeInRightsmall {
  0% {
    opacity: 0;
    transform: translate3d(10%, 0, 0)
  }

  to {
    opacity: 1;
    transform: none
  }
}

.fadeInRightsmall {
  animation-name: fadeInRightsmall
}

@keyframes fadeInLeftsmall {
  0% {
    opacity: 0;
    transform: translate3d(-10%, 0, 0)
  }

  to {
    opacity: 1;
    transform: none
  }
}

.fadeInLeftsmall {
  animation-name: fadeInLeftsmall
}


/* SP
----------------------------------*/
.pi_lead_tx {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  /* margin: 8.5% auto 16.5%; */
  /* margin: 8.5% auto 20.5%; */
  margin: 8.5% auto;
}

/* navi */
nav ul {
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px 8px;
  margin: 0 auto 16%;
}

nav ul li {
  width: 24%;
}

.pi_nav_tx {
  font-size: 1.2rem;
  line-height: 1.2;
  margin-top: 5%;
}

/* section */
.pi_secbox {
  margin-bottom: 32%;
}

.pi_sechead {
  border-top: solid 1px #202020;
  font-size: 2.4rem;
  font-weight: 300;
  letter-spacing: 0.1em;
  text-align: left;
  padding-top: 2.5%;
  padding-left: 4%;
  margin-bottom: 7%;
}

.pi_item_main {
  padding: 0 4%;
  position: relative;
}

.pi_item_main::before {
  position: absolute;
  font-family: Times New Roman, Linux Libertine, 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif;
  font-size: 6.4rem;
  line-height: 1;
  top: -30px;
  right: 3%;
  z-index: 10;
}

/* number */
.sec01 .pi_item_main::before {
  content: "01";
}

.sec02 .pi_item_main::before {
  content: "02";
}

.sec03 .pi_item_main::before {
  content: "03";
}

.sec04 .pi_item_main::before {
  content: "04";
}

.sec05 .pi_item_main::before {
  content: "05";
}

.pi_item_main img {
  margin-bottom: 10%;
}

.pi_item_credit {
  flex-direction: column;
  gap: 18px;
}

.pi_item_name {
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  text-align: left !important;
  margin: 0 2.17%;
}

.pi_item_product {
  align-items: center;
  gap: 0 20px;
  margin: 2% 2.17% 0;
}

.pi_item_size {
  font-size: 1.2rem;
  line-height: 1;
}

.pi_item_main a.pi_btn {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.7;
  width: 71px;
  height: 22px;
}

.pi_item_tx {
  font-size: 1.1rem;
  letter-spacing: 0.15em;
  text-align: left;
  margin: 7.5% 2.17% 0;
}

/* main styling */
.pi_main-style {
  margin: 12% auto 0;
}

/* slider ここから */
.slider img {
  width: 100%;
}

.full-screen li {
  position: relative;
}

.slick-slide {
  margin: 0 0.235%;
  /* スライド間余白 */
  transition: all ease-in-out .2s;
  opacity: .5;
}

.slick-active {
  opacity: 1;
}

.slick-current {
  opacity: 1;
}

/* 余白打ち消し */
.full-screen .slick-track {
  line-height: 1;
  font-size: 0;
}

/* arrow */
.slick-arrow:before {
  content: "" !important;
  /* デフォルト削除 */
}

.slick-prev,
.slick-next {
  border-top: 1px solid #666 !important;
  border-right: 1px solid #666 !important;
  width: 15px !important;
  height: 15px !important;
  position: absolute !important;
  z-index: 3;
}

.slick-prev {
  top: 48% !important;
  left: 11% !important;
  transform: rotate(-135deg) !important;
}

.slick-next {
  top: 48% !important;
  right: 11% !important;
  transform: rotate(45deg) !important;
}

/* slider ここまで */

.pi_main-style a.pi_btn {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 2.2;
  margin: 6% auto 0;
  width: 240px;
  height: 38px;
}


/* sub styling */
.pi_sub-style {
  align-items: flex-start;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin: 21% 4.66% 0;
  padding: 3.8% 2.35% 4.2% 4%;
}

.bg_f8f8f8 {
  background-color: #f8f8f8;
}

.pi_styling_ttl {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.2;
  writing-mode: vertical-rl;
}

.pi_styling_img {
  gap: 2.5%;
  width: 90.45%;
}

a.pi_link {
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: underline;
  margin-top: 10px;
  /* animation: line 0.6s cubic-bezier(0.64, 0.36, 1, 1) 1 forwards;
	background: linear-gradient(rgba(255, 255, 255, 0) 94%, #202020 0%);
	background-size: 0% 100%;
	background-repeat: no-repeat; */
}

/* animation */
@keyframes line {
  0% {
    background-size: 0% 100%;
  }

  100% {
    background-size: 100% 100%;
  }
}


/* profile */
.pi_prof {
  border-top: solid 1px #202020;
  border-bottom: solid 1px #202020;
  padding: 6.5% calc(100% - 95.5%);
  /* margin: -11% calc(100% - 94%) 22%; */
  margin: 15% calc(100% - 94%) 22%;
}

.pi_prof img {
  width: 43.89%;
}

.pi_prof_name {
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  margin-top: 4.5%;
}

.pi_prof_tx {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  text-align: left;
  margin: 3.5% auto 0;
}

.pi_prof ul {
  flex-flow: column;
  gap: 13px;
  margin: 5% auto 0;
}

.pi_prof ul li {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: left;
}

.pi_prof ul li a {
  display: inline-block;
}


/* 一覧ボタン */
a.pi_item_list {
  background-color: #eee;
  color: #202020;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 10px;
  margin: 0 auto 5.3%;
  width: 64%;
}

a.pi_item_list:last-child {
  margin: 0 auto 10%;
}



/* アンカー */
.anchor-flex-box {
  display: flex;
  margin: auto;
  text-align: center;
  margin-bottom: 15%;
}

.anchor-1st-low {
  margin-bottom: 6%;
}

.anchor-last-img {
  width: 40%;
  text-align: left;
  margin-left: 20px;
}

.anchor-flex-box p {
  margin: auto;
  text-align: center;
  font-family: futura-pt, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.3rem;
  letter-spacing: 0.06em;
}

.anchor-flex-box img {
  width: 83%;
  margin-bottom: 8%;
}


/* PC
----------------------------------*/
@media screen and (min-width: 768px) {

  .w_500 {
    width: 500px;
    margin: 0 auto;
  }

}