@import url("https://use.typekit.net/bnf7jzd.css");

@font-face {
  font-family: "classical-garamond-bt";
  src: url(../fonts/classical_garamond_bt.ttf) format("truetype"), url(../fonts/classical_garamond_bt.woff) format("woff");
  }

/* ==========================================================================
    Typograpgy
   ========================================================================== */
   @media only screen and (min-width: 768px) and (max-width: 1600px) {
    html {
      font-size: calc(10* (100vw / 1600))!important;

    }
  }

   @media (max-width: 767px) {
    .lp * {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
    }
  }

  @media (min-width: 768px) {
  .sp {
    display: none!important;
  }

  #underTopLogo {
    width: 50rem;
  }

}

  html {
    font-size: 62.5%;
  }

  * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  img,
  video,
  svg {
    width: 100%;
    height: auto;
  }

/* for pc*/

  body{
    background: #e4e4e4;
  }

  #Contents {
    width: 160rem;
    /*width: 100%;*/
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center -156px;
    height: auto;
    margin: 0 auto;
  }

/*basic*/

#main_footer .footer_cat a{
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", sans-serif;
}

  .main_container {
    margin: 0 auto;
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", sans-serif;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.1em;
    color: #555555;
    text-align: left;
    font-feature-settings: "palt";
    -ms-font-feature-settings: "normal";
  }

  .main_container a{
    color: #555555;
  }

  .font_eng{
    font-family: "jaf-bernina-sans", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.14em;
  }

/*ヘッド部分*/
  .heading{
    width: 90rem;
    margin: auto;
    margin-bottom: 9rem;
    text-align: center;
  }

  .heading_img{
    margin-bottom: 6.7rem;
  }

  .heading_ttl{
    margin-bottom: 2.6rem;
    font-size: 2.3rem;
    line-height: 2;
    letter-spacing: 0.15em;
    font-weight: 400;
  }

  .heading_ttl .ttl01{
    font-size: 1.9rem;
    letter-spacing: 0.125em;
  }

  .heading_ttl .kakko{
    font-size: 1.5rem;
    letter-spacing: 0.125em;
  }

  .heading_ttl .ttl02{
    font-size: 1.6rem;
    letter-spacing: 0.075em;
  }

  .heading_ttl .ttl03{
    font-size: 1.8rem;
    line-height: 2.33333;
    letter-spacing: 0.125em;
  }

  .heading_txt{
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.1em;
  }


  /*basic*/
  .section{
    width: 68rem;
    margin: auto;
  }

  .content_list{
    display: flex;
  }

  .content_txt{
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.045em;
    text-align: justify;
  }


/*1段目*/

  .sec01{
    margin-bottom: 12rem;
  }

  .sec01 .content_list,
  .sec02 .content_list{
    gap: 4rem;
    text-align: left;
  }

  .sec01 .content_img,
  .sec02 .content_img{
    width: 33rem;
  }

  .sec01 .content_ttl,
  .sec02 .content_ttl{
    position: relative;
    margin-bottom: 0.4rem;
    font-size: 2.2rem;
    line-height: 2.2;
    letter-spacing: 0.12em;
    color: #aeaeae;
  }

  .sec01 .content_ttl .number,
  .sec02 .content_ttl .number{
    font-size: 2.3rem;
  }

  .sec01 .content_inner{
    width: 31rem;
    padding-top: 3.6rem;
  }

  .sec01 .item_ttl{
    margin-bottom: 2.2rem;
    font-size: 1.8rem;
    line-height: 1.9;
    letter-spacing: 0.035em;
    text-align: justify;
    font-weight: 400;
  }

  .sec01 .item_ttl .sub_ttl{
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.055em;
  }

/*2段目*/

  .sec02{
    margin-bottom: 10.8rem;
  }

  .sec02 .content_inner{
    width: 31rem;
    padding-top: 3.6rem;
  }

  .sec02 .content_ttl{
    margin-left: -0.3rem;
    letter-spacing: 0.125em;
  }

  .sec02 .item_ttl{
    margin-bottom: 2.2rem;
    font-size: 1.8rem;
    line-height: 1.9;
    letter-spacing: 0.055em;
    text-align: justify;
    font-weight: 400;
  }

  .sec02 .item_ttl .sub_ttl{
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.1em;
  }

/*3段目*/

  .sec03{
    margin-bottom: 11.2rem;
  }

  .sec03 .content_ttl_area{
    position: relative;
  }

  .sec03 .content_ttl_area::after{
    content: "";
    width: 100%;
    position: absolute;
    bottom: 2rem;
    border-bottom: 0.2rem solid #c9c9c9;
  }

  .sec03 .content_ttl{
    position: relative;
    width: 27rem;
    margin: auto;
    margin-bottom: 5rem;
    background: #e4e4e4;
    font-size: 1.9rem;
    line-height: 1.9;
    letter-spacing: 0.16em;
    text-align: center;
    font-weight: 400;
    z-index: 1;
  }

  .sec03 .content_ttl .sub_ttl{
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.14em;
  }

  .sec03 .content_list{
    margin-bottom: 5.3rem;
    text-align: center;
    gap: 5.6rem;
  }

  .sec03 .content_inner{
    width: 31rem;
  }

  .sec03 .content_img{
    width: 31.6rem;
    margin-bottom: 1.2rem;
  }

  .sec03 .item_ttl{
    margin-bottom: 0.2rem;
    font-size: 1.4rem;
    line-height: 2.2857;
    word-break: break-all;
  }

  .sec03 .item_ttl.ttl01{
    margin-bottom: 0.8rem;
    line-height: 2;
  }

  .sec03 .content_price{
    font-size: 1.4rem;
    line-height: 1.8571;
    letter-spacing: 0.085em;
  }

  .sec03 .content_txt{
    margin-top: 6.8rem;
    text-align: center;
    letter-spacing: 0.1em;
  }



/*all_item*/
  .all_item_btn{
    width: 44rem;
    margin:0 auto;
    margin-bottom: 12rem;
  }



/* ====== TABLET ===== */

@media only screen and (max-width: 1200px) {


}






/* ====== SP ===== */
@media only screen and (max-width: 750px) {

  a{
    color: #555555;
  }

  .bredlist.lp {
    line-height: 5.33333vw;
    font-size: 2.66667vw;
    margin: 3.33333vw auto;
    width: 92.592%;
    text-align: left;
    padding: 0;
  }

 #Contents {
    max-width: calc(750* (100vw/750));
    background-position: center calc(198* (100vw/750));
    background: #e4e4e4;
  }

/*basic*/

  .lp{
    padding-bottom: calc(68 * (100vw / 750));
  }

  .pc {
    display: none!important;
  }
/*basic*/

.main_container {
  font-size: calc(24* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.1em;
  overflow-x: hidden;
}

/*ヘッド部分*/
.heading{
  width: 100%;
  margin: auto;
  margin-bottom: calc(100* (100vw / 750));
  text-align: center;
}

.heading_img{
  margin-bottom: calc(68* (100vw / 750));
}

.heading_ttl{
  margin-bottom: calc(50* (100vw / 750));
  font-size: calc(40* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.12em;
}

.heading_ttl .ttl01{
  font-size: calc(33* (100vw / 750));
  letter-spacing: 0.15em;
}

.heading_ttl .kakko{
  font-size: calc(26* (100vw / 750));
  letter-spacing: 0.1em;
}

.heading_ttl .ttl02{
  font-size: calc(27* (100vw / 750));
  letter-spacing: 0.1em;
}

.heading_ttl .ttl03{
  font-size: calc(30* (100vw / 750));
  line-height: 2.33333;
  letter-spacing: 0.14em;
}

.heading_txt{
  font-size: calc(24* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.1em;
}


/*basic*/
.section{
  width: 100%;
  margin: auto;
}

.content_list{
  display: flex;
  flex-direction: column;
}

.content_txt{
  font-size: calc(24* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.065em;
  text-align: justify;
}


/*1段目*/

.sec01{
  margin-bottom: calc(96* (100vw / 750));
}

.sec01 .content_list,
.sec02 .content_list{
  gap: 0;
  text-align: center;
}

.sec01 .content_img,
.sec02 .content_img{
  width: calc(646* (100vw / 750));
  margin: auto;
  order: 1;
}

.sec01 .content_ttl,
.sec02 .content_ttl{
  margin-bottom: calc(18* (100vw / 750));
  font-size: calc(40* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.125em;
  text-align: center;
}

.sec01 .content_ttl .number,
.sec02 .content_ttl .number{
  font-size: calc(45* (100vw / 750));
}

.sec01 .content_inner{
  width: calc(654* (100vw / 750));
  margin: auto;
  padding-top: calc(30* (100vw / 750));
  order: 2;
}

.sec01 .item_ttl{
  margin-bottom: calc(34* (100vw / 750));
  font-size: calc(33* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.12em;
  text-align: center;
}

.sec01 .item_ttl .sub_ttl{
  font-size: calc(28* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.055em;
}

/*2段目*/

.sec02{
  margin-bottom: calc(116* (100vw / 750));
}

.sec02 .content_inner{
  width: calc(654* (100vw / 750));
  margin: auto;
  padding-top: calc(30* (100vw / 750));
  order: 2;
}

.sec02 .content_ttl{
  margin-left: 0;
  margin-bottom: calc(22* (100vw / 750));
  letter-spacing: 0.125em;
}

.sec02 .item_ttl{
  margin-bottom: calc(28* (100vw / 750));
  font-size: calc(33* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.12em;
  text-align: center;
}


.sec02 .item_ttl .sub_ttl{
  font-size: calc(28* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.055em;
}

/*3段目*/

.sec03{
  margin-bottom: calc(128* (100vw / 750));
}

.sec03 .content_ttl_area{
  position: relative;
}

.sec03 .content_ttl_area::after{
  content: "";
  width: calc(654* (100vw / 750));
  position: absolute;
  left: 6%;
  bottom: calc(36* (100vw / 750));
  border-bottom: 0.2rem solid #c9c9c9;
}

.sec03 .content_ttl{
  width: calc(510* (100vw / 750));
  margin-bottom: calc(76* (100vw / 750));
  font-size: calc(37* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.155em;
}

.sec03 .content_ttl .sub_ttl{
  font-size: calc(28* (100vw / 750));
  line-height: 2;
  letter-spacing: 0.15em;
}

.sec03 .content_list{
  width: calc(650* (100vw / 750));
  margin: auto;
  display: flex;
  flex-direction: inherit;
  margin-bottom: calc(65* (100vw / 750));
  text-align: center;
  gap: calc(20* (100vw / 750));
}

.sec03 .content_list.list02{
  margin-bottom: calc(74* (100vw / 750));
}

.sec03 .content_list.list03{
  margin-bottom: calc(68* (100vw / 750));
}

.sec03 .content_list.list04{
  margin-bottom: calc(70* (100vw / 750));
}

.sec03 .content_inner{
  width: calc(315* (100vw / 750));
}

.sec03 .content_img{
  width: calc(316* (100vw / 750));
  margin-bottom: calc(21* (100vw / 750));
}

.sec03 .item_ttl{
  margin-bottom: calc(-8* (100vw / 750));
  font-size: calc(22* (100vw / 750));
  line-height: 2.2857;
  letter-spacing: 0.075em;
}

.sec03 .item_ttl.ttl01{
  margin-bottom: 0;
  line-height: 1.83333;
  letter-spacing: 0.045em;
  word-break: break-all;
}

.sec03 .item_ttl.ttl01sp{
  margin-bottom: calc(8* (100vw / 750));
  line-height: 1.9;
  letter-spacing: 0.045em;
  word-break: break-all;
}

.sec03 .item_ttl.ttl01.ls25{
  letter-spacing: 0.025em;
}

.sec03 .item_ttl.ttl01 .ls0{
  letter-spacing: 0;
}

.sec03 .content_price{
  font-size: 1.4rem;
  line-height: 1.8571;
  letter-spacing: 0.085em;
}

.sec03 .content_txt{
  margin-top: calc(124* (100vw / 750));
  text-align: center;
  letter-spacing: 0.14em;
}

/*all_item*/
.all_item_btn{
  width: calc(536* (100vw / 750));
  margin:0 auto;
}



  }

  /************ fade **********/
.fade {
  -webkit-transition-duration: 2s;
  -o-transition-duration: 2s;
  transition-duration: 2s;
  opacity: 0;
  -webkit-transform: translateY(5px);
  -ms-transform: translateY(5px);
  transform: translateY(5px);
}

.fade.onView {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}


.fade._02 {
  -webkit-transition-duration: 2s;
  -o-transition-duration: 2s;
  transition-duration: 2s;
  transition-delay: 1s;
  opacity: 0;
  -webkit-transform: translateY(5px);
  -ms-transform: translateY(5px);
  transform: translateY(5px);
}

.fade._02.onView {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}


/* 追加 css 0515 */


/* =======================================
  PC only
=======================================*/

@media (min-width: 768px) {
  .content_txt.txt01 {
    letter-spacing: 0.085em;
    font-feature-settings: "palt";
    text-align: justify;
    width: 32rem;
  }

  .content_txt.txt02 {
    text-align: justify;
    font-feature-settings: "palt";
    width: 68rem;
    height: auto;
    letter-spacing: 0.1em;
  }

  .content_txt.txt03 {
    letter-spacing: 0.078em;
    font-feature-settings: "palt";
    text-align: justify;
    width: 68rem;
  }

  .content_txt.txtArea01 {
    text-align: justify;
    letter-spacing: 0.01em;
  }

  .item_price.txtArea04__item_price {
    margin-bottom: 1rem;
  }

  span.DBRW_txt {
    margin-left: 0.8rem;
  }

}


/* =======================================
  SP only
=======================================*/

@media (max-width: 767px) {
  .content_txt {
    text-align: justify;
  }

  .main_container .slick-prev {
    height: 40px;
    top: 50%;
    left: calc(20* (100vw/750));
    z-index: 99;
  }

  .main_container .slick-prev:before{
    background-size: contain;
    content: "";
    display: block;
    width: calc(30* (100vw/750));
    height: calc(47* (100vw/750));
    background-repeat: no-repeat;
    background-image: url(../../../../../../../page/lp/mensboxers/230524/img/prev.png);
  }

  .main_container .slick-next {
    height: 40px;
    top: 50%;
    right: calc(8* (100vw/750));
    z-index: 99;
  }

  .main_container .slick-next:before {
      background-size: contain;
      content: "";
      display: block;
      width: calc(30* (100vw/750));
      height: calc(47* (100vw/750));
      background-repeat: no-repeat;
      background-image: url(../../../../../../../page/lp/mensboxers/230524/img/next.png);
  }

}


