@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500&display=swap");

/* ====================
 - 599px：スマートフォン
 - 600px〜959px：タブレット
 - 960px〜1199px：小型PC
 - 1200px〜：大型PC
==================== */
.h2_02{
  text-align: center;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 2px;
  margin-top: 0;
  font-size: 1.9rem;
  margin-bottom: 24px;
}
@media screen and (min-width: 600px) {
  .h2_02 {
    font-size: 2.5rem;
    margin-bottom: 32px;
  }
}
.jpn{
display: block;
font-size: 12px;
margin-bottom: 1rem;
}
.contents_sec.w100_area {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
/* 任意商品表示パーツ　固定ver */
.cpt-lp_itemlist.fs-c-productListCarousel{
display: block;
}
.cpt-lp_itemlist.fs-c-slick .slick-track:before, .cpt-lp_itemlist.fs-c-slick .slick-track:after{
display: none;
}
.cpt-lp_itemlist .fs-c-productListCarousel__ctrl{
display: none !important;
}
.cpt-lp_itemlist .slick-track{
width: 100% !important;
transform: none !important;
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
grid-gap: 16px 16px;
}
.cpt-lp_itemlist .fs-c-productListCarousel__list__item{
max-width: 100%
}
@media screen and (min-width: 960px) {
.cpt-lp_itemlist .slick-track{
grid-template-columns: repeat(4, 1fr);
grid-template-rows: 1fr;
grid-gap: 32px;
}
}
/* reason */
.reason_img {
margin-top: 16px;
}
.reason_ttl {
font-size: 1.6rem !important;
font-family: "Noto Sans JP", sans-serif;
font-weight: 600;
}
.reason_ttl::after {
content: "";
display: block;
width: 20px;
height: 2px;
border-top: 2px solid #545454;
margin: 8px 0;
}
@media screen and (min-width: 960px) {
.reason_wrap{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
flex-direction: row-reverse;
gap: 32px;
}
.reason_wrap--desc,.reason_img{
  flex: 0 1 calc((100% - 32px) / 2);
}
.reason_img {
margin-top: 0px;
}
.reason_ttl {
font-size: 1.8rem !important;
}
.reason_ttl::after {
content: "";
width: 40px;
margin: 16px 0;
}

}