/* ===============================
   基本設定
================================ */

.takuhai figure {
 margin: 0;
}
.takuhai img {
 max-width: 100%;
 height: auto;
 display: block;
}
.takuhai a {
 color: inherit;
 text-decoration: none;
}
section.takuhai {
 width: 100%;
 overflow: hidden;
 font-family: "shippori-mincho-b1", sans-serif;
 font-weight: 500;
 font-style: normal;
}

/* 共通インナー */
.takuhai_main, .takuhai_read, .takuhai_feature, .takuhai_flow, .takuhai_set, .takuhai_cp, .takuhai_kimono, .takuhai_ranking, .takuhai_scene, .kimono_point, .kimono_voice, .kimono_support, .kimono_faq, .kimono_guide {
 padding: 120px 0;
}

/* ===============================
   キャンペーン・ランキング（スライダー枠）
================================ */

.slider ul {
 max-width: 1200px;
 margin: 0 auto;
 display: flex;
}
.ttl_yoko2 {
 max-width: 1200px;
 margin: 0 auto 70px auto;
 display: flex;
 justify-content: flex-start;
 align-items: center;
}
.ttl_yoko2 h2 {
 padding: 0 30px 0 0 !important;
 margin-bottom: 0 !important;
 font-family: "shippori-mincho-b1", sans-serif;
 font-size: 48px !important;
 font-weight: 600 !important;
 line-height: 1.7 !important;
 color: #30363e !important;
 margin: 0 0 0 0;
 background: none !important;
 letter-spacing: 0.15em;
}
.ttl_yoko2 p {
 font-size: 16px;
 padding-left: 15px;
 border-left: #30363e 1px solid;
 line-height: 1;
}
/* スライダー全体 */
/* --- 共通設定 --- */
.swiper {
 width: 100%;
 overflow: visible !important; /* 右側を画面端まで突き抜けさせる */
 box-sizing: border-box;
 margin-bottom: 60px; /* スライダー間の隙間 */
}
.swiper-wrapper {
 padding: 0;
 margin: 0;
}
.swiper-slide {
 list-style: none;
}
.swiper-slide img {
 width: 100%;
 object-fit: cover;
 display: block;
}
/* --- 1つ目：キャンペーン用 (400x300) --- */
.slider-cp {
 padding-left: 80px; /* 左側の固定余白 */
}
.slider-cp .swiper-slide {
 width: 400px;
}
.slider-cp .swiper-slide img {
 height: 300px;
}
/* --- 2つ目：ランキング用 (245x380) --- */
.slider-ranking {
 padding-left: 80px; /* 左側の固定余白 */
}
.slider-ranking .swiper-slide {
 width: 245px;
}
.slider-ranking .swiper-slide img {
 height: 380px;
}

.cp_bnr{
	max-width: 1200px;
  margin: 0 auto 70px auto;
	padding-left: 80px;
}

.cp_bnr a{
	display: block;
width: 450px!important;
}
@media screen and (max-width: 767px) {
 .takuhai_ranking {
  padding-top: 20vw;
 }
 .slider ul {
  max-width: auto;
  margin: 0 5vw;
  display: flex;
 }
 .ttl_yoko2 {
  max-width: auto;
  margin: 0 5vw 8vw 5vw;
  display: flex;
  justify-content: flex-start;
  align-items: center;
 }
 .ttl_yoko2 h2 {
  padding: 0 6vw 0 0 !important;
  margin-bottom: 0 !important;
  font-family: "shippori-mincho-b1", sans-serif;
  font-size: 5vw !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  color: #30363e !important;
  margin: 0 0 0 0;
  background: none !important;
  letter-spacing: 0.15em;
 }
 .ttl_yoko2 p {
  font-size: 3vw;
  padding-left: 4vw;
  border-left: #30363e 1px solid;
  line-height: 1;
 }
 /* スライダー全体 */
 /* --- 共通設定 --- */
 .swiper {
  width: 100%;
  overflow: visible !important; /* 右側を画面端まで突き抜けさせる */
  box-sizing: border-box;
  margin-bottom: 10vw; /* スライダー間の隙間 */
 }
 .swiper-wrapper {
  padding: 0;
  margin: 0;
 }
 .swiper-slide {
  list-style: none;
 }
 .swiper-slide img {
  width: 100%;
  object-fit: cover;
  display: block;
 }
 /* --- 1つ目：キャンペーン用 (400x300) --- */
 .slider-cp {
  padding-left: 5vw; /* 左側の固定余白 */
 }
 .slider-cp .swiper-slide {
  width: 400px;
 }
 .slider-cp .swiper-slide img {
  height: 300px;
 }
 /* --- 2つ目：ランキング用 (245x380) --- */
 .slider-ranking {
  padding-left: 5vw; /* 左側の固定余白 */
 }
 .slider-ranking .swiper-slide {
  width: 245px;
 }
 .slider-ranking .swiper-slide img {
  height: 380px;
 }
	
	.cp_bnr{
	padding-left: 5vw;
	width: auto;
}
	
	.cp_bnr{
	max-width: auto;
  margin: 0 5vw 70px 5vw;
	padding-left: 0;
}

.cp_bnr a{
	display: block;
width:auto!important;
}
}
/* ===============================
   お客様の声
================================ */
.kimono_voice {
 padding-top: 20px;
}
/* --- お客様の声専用設定 --- */
.slider-voice {
 padding-left: 85px; /* 【指定】最初の左余白を85pxに設定 */
 margin-bottom: 80px;
}
.slider-voice .swiper-slide {
 width: 724px; /* 指定の横幅 */
 height: 320px; /* 指定の縦幅 */
 background: #fff;
 list-style: none;
 box-sizing: border-box;
}
.voice_detial {
 width: 668px;
 height: 320px;
 background: #e6eef0;
 position: relative;
 padding: 50px 50px 0 45px;
 box-sizing: border-box;
}
.voice_cat {
 display: flex;
 justify-content: flex-start;
 align-items: center;
 color: #fff;
 line-height: 1;
 position: absolute;
 top: -10px;
 left: 15px;
}
.voice_cat strong {
 font-size: 44px;
 display: inline-block;
 margin-right: 30px;
 font-family: "cormorant-garamond", serif;
 font-weight: 400;
 font-style: normal;
}
.voice_cat span {
 display: inline-block;
 padding-top: 15px;
 font-size: 14px;
 font-family: "shippori-mincho-b1", sans-serif;
 font-weight: 600;
 font-style: normal;
}
.voice_txt {
 width: 450px;
 font-size: 14px;
 line-height: 1.8;
 margin-bottom: 10px;
}
.voice_txt .fcred {
 font-size: 14px;
 color: #d1a1a1;
}
.voice_txt .fbig {
 font-size: 21px;
 letter-spacing: 3px;
}
.voice_point {
 width: 580px;
 font-size: 21px;
 letter-spacing: 3px;
 margin-bottom: 10px;
}
.voice_img {
 width: 200px;
 height: 170px;
 position: absolute;
 top: 30px;
 right: -55px;
}
@media screen and (max-width: 767px) {
 .kimono_voice {
  padding-top: 0;
 }
 /* --- お客様の声専用設定 --- */
 .slider-voice {
  padding-left: 5vw; /* 【指定】最初の左余白を85pxに設定 */
  margin-bottom: 5vw;
 }
 .slider-voice .swiper-slide {
  width: 85vw; /* 指定の横幅 */
  height: 100vw; /* 指定の縦幅 */
  background: #fff;
  list-style: none;
  box-sizing: border-box;
 }
 .voice_detial {
  width: 80vw;
  height: 100vw;
  background: #e6eef0;
  position: relative;
  padding: 8vw 3vw 0 3vw;
  box-sizing: border-box;
 }
 .voice_cat {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #fff;
  line-height: 1;
  position: absolute;
  top: -10px;
  left: 15px;
 }
 .voice_cat strong {
  font-size: 5vw;
  display: inline-block;
  margin-right: 30px;
  font-family: "cormorant-garamond", serif;
  font-weight: 400;
  font-style: normal;
 }
 .voice_cat span {
  display: inline-block;
  padding-top: 15px;
  font-size: 3vw;
  font-family: "shippori-mincho-b1", sans-serif;
  font-weight: 600;
  font-style: normal;
 }
 .voice_txt {
  width: 55vw;
  font-size: 3vw;
  line-height: 1.8;
  margin-bottom: 10px;
 }
 .voice_txt .fcred {
  font-size: 3vw;
  color: #d1a1a1;
 }
 .voice_txt .fbig {
  font-size: 3.7vw;
  letter-spacing: 3px;
 }
 .voice_point {
  width: 65vw;
  font-size: 3.7vw;
  letter-spacing: 3px;
  margin-bottom: 10px;
 }
 .voice_img {
  width: 30vw;
  height: 170px;
  position: absolute;
  top: 3vw;
  right: -10vw;
 }
}