@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: 1200px) {
    html {
      font-size: calc(10* (100vw / 1200))!important;

    }
  }
   @media (max-width: 767px) {
    .lp * {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
    }
  }
  html {
    font-size: 62.5%;
  }

  * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  img,
  video,
  svg {
    width: 100%;
    height: auto;
  }


/* IE11とEdge表示用のCSS　*/
_:-ms-lang(x)::-ms-backdrop, .selector {
  property: value;
}

/* for pc*/


  .sp {
    display: none;
  }

  .pc {
    display: block;
  }

  #Contents {
    max-width: 1600px;
    width: 100%;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center -138px;
    height: auto;
    margin: 0 auto;
    background-image: url(./img/page_pc.png);
  }

/*basic*/

  .main_container {
    margin: 0 auto;
    /*margin-top: 60px;*/
    width: 100rem;
    height: 100%;
    -ms-font-feature-settings: "normal";
    font-weight: 400;
    font-style: normal;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.12em;
    color: #343434;
    text-align: center;
    font-feature-settings: "palt";
  }

  del{
    color:#e61e19;
  }

  .text_color{
    color: #343434;
  }

  .off{
    color: #e61e19;
    margin-left: 0.7rem;
  }

/*ヘッド部分*/

  .heading{
    margin-bottom: 7rem;
  }

  .heading_subttl{
    position: relative;
    margin-bottom: -0.9rem;
    font-family: acumin-pro,sans-serif;
    font-weight: 200;
    font-style: normal;
    font-size: 2.4rem;
    line-height: 2.7272;
    letter-spacing: 0.14em;
  }

  .heading_subttl::before{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 19.9rem;
    height: 1rem;
    left: 40rem;
    bottom: 1.75rem;
    z-index: -1;
  }


  .heading_ttl{
    margin-bottom: 2.9rem;
    font-family: acumin-pro,sans-serif;
    font-weight: 200;
    font-style: normal;
    font-size: 3.8rem;
    line-height: 1.5789;
    letter-spacing: 0.14em;
  }

/*コンテンツ部分*/
  .content_ttl{
    position: relative;
    font-size: 2.4rem;
    letter-spacing: 0.16em;
  }

  .content_inner{
    display: flex;
    flex-direction: column;
  }

  .inner_list{
    min-height: 0%;
  }

  .content_price{
    margin-bottom: 3.6rem;
    text-align: right;
    font-size: 1.2rem;
    letter-spacing: 0.12em;
  }

  .up{
    margin-bottom: 2rem;
  }

  .mb{
    margin-bottom: 1rem;
  }

  .ml{
    margin-left: 2rem;
  }

  .price_bottom{
    margin-bottom: 5rem;
  }

  /*1段目*/
  .sec01{
    width: 100rem;
    display: inline-block;
    margin-bottom: 10.8rem;
    padding-bottom: 11.2rem;
    border-bottom: 0.1rem #999999 solid;
  }

  .sec01 .content_ttl{
    margin-bottom: 5.1rem;
  }

  .sec01 .content_ttl::before{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 36.3rem;
    height: 1rem;
    left: 31.9rem;
    bottom: 0.8rem;
    z-index: -1;
  }

  .sec01 .content_ttl::after{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 19.3rem;
    height: 1rem;
    left: 39.9rem;
    bottom: 5.6rem;
    z-index: -1;
  }

  .sec01 .content_list{
    width: 65.4rem;
    display: flex;
    margin:0 auto;
    margin-bottom: 1.5rem;
  }

  .sec01 .content_img{
    width: 34rem;
  }

  .sec01 .content_list .content_inner .inner_img{
    min-height: 0%;
  }

  .sec01 .content_inner .inner_list{
    width: 29.5rem;
  }

  .sec01 .content_price{
    width: 82.7rem;
  }

  /*2段目*/
  .sec02{
    width: 100rem;
    margin:0 auto;
    margin-bottom: 10.7rem;
    padding-bottom: 11.2rem;
    border-bottom: 0.1rem #999999 solid;
  }

  .sec02 .content_ttl{
    margin-bottom: 3.7rem;
  }

  .sec02 .content_ttl::before{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 38rem;
    height: 1rem;
    left: 31.1rem;
    bottom: 0.8rem;
    z-index: -1;
  }

  .sec02 .content_ttl::after{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 27.7rem;
    height: 1rem;
    left: 36.1rem;
    bottom: 5.9rem;
    z-index: -1;
  }

  .sec02 .content_wrap{
    width: 65.5rem;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    margin-bottom: 1.4rem;
  }

  .sec02 .content_list{
    margin-bottom: 1.5rem;
  }

  .sec02 .inner_list{
    display: flex;
    justify-content: space-between;
  }

  .sec02 .content_img{
    width: 30.7rem;
  }

  .sec02 .inner_img{
    width: 14.8rem;
    min-height: 0%;
  }

/*3段目*/
  .sec03{
    width: 100rem;
    margin:0 auto;
    margin-bottom: 10.6rem;
    padding-bottom: 11.2rem;
    border-bottom: 0.1rem #999999 solid;
  }

  .sec03 .content_ttl{
    margin-bottom: 5.1rem;
  }

  .sec03 .content_ttl::before{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 39.5rem;
    height: 1rem;
    left: 30.2rem;
    bottom: 1rem;
    z-index: -1;
  }

  .sec03 .content_ttl::after{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 23.4rem;
    height: 1rem;
    left: 38.2rem;
    bottom: 5.7rem;
    z-index: -1;
  }

  .sec03 .content_list{
    width: 65.4rem;
    display: flex;
    margin:0 auto;
    margin-bottom: 1.3rem;
  }

  .sec03 .content_img{
    width: 34rem;
  }

  .sec03 .content_inner .inner_list{
    width: 29.5rem;
  }

  .sec03 .content_price{
    width: 82.7rem;
  }

/*4段目*/
  .sec04{
    width: 100rem;
    margin:0 auto;
    margin-bottom: 14.2rem;
  }

  .sec04 .content_ttl{
    margin-bottom: 4.9rem;
  }

  .sec04 .content_ttl::before{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 32rem;
    height: 1rem;
    left: 34rem;
    bottom: 1rem;
    z-index: -1;
  }

  .sec04 .content_ttl::after{
    position: absolute;
    content: "";
    background-color: #f0f0f0;
    width: 20rem;
    height: 1rem;
    left: 40rem;
    bottom: 5.8rem;
    z-index: -1;
  }

  .sec04 .content_wrap_Area{
    width: 65.5rem;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
  }

  .sec04 .content_wrap{
    width: 65.5rem;
    justify-content: space-between;
    margin: 0 auto;
    margin-bottom: 1.4rem;
  }

  .sec04 .content_list{
    width: 30.7rem;
    margin-bottom: 1.4rem;
  }

  .sec04 .inner_list{
    display: flex;
    justify-content: space-between;
  }

  .sec04 .inner_img {
    width: 14.8rem;
    min-height: 0%;
}

  .sec04 .content_wrap_Area .content_wrap .wrap_inner .content_price{
    width: 30.7rem;
  }

  .sec04 .content_img{
    width: 30.7rem;
  }

/*all_item*/
  .all_item_btn{
    width: 46rem;
    margin:0 auto;
  }

/* ====== TABLET ===== */







/* ====== SP ===== */
@media only screen and (max-width: 750px) {

  .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(767* (100vw/750));
    background-position: center calc(176* (100vw/750));
    background-image: url(./img/page_sp.png);
  }

/*basic*/

  .sp {
    display: block;
  }

  .pc {
    display: none;
  }

  .main_container {
    width: 100%;
    font-size: calc(24* (100vw / 750));
    letter-spacing: 0.1em;
  }

  .off{
    margin-left: calc(19* (100vw / 750));
  }

/*ヘッド部分*/

  .heading{
    margin-bottom: calc(74* (100vw / 750));
  }

  .heading_subttl{
    margin-bottom: calc(-11* (100vw / 750));
    font-size: calc(40* (100vw / 750));
    line-height: 2.2;
    letter-spacing: 0.15em;
  }

  .heading_subttl::before{
    width: calc(350* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(208* (100vw / 750));
    bottom: calc(20* (100vw / 750));
  }

  .heading_ttl{
    margin-bottom: calc(42* (100vw / 750));
    font-size: calc(64* (100vw / 750));
    line-height: 1.4062;
    letter-spacing: 0.08em;
  }

/*コンテンツ部分*/
  .content_ttl{
    font-size: calc(39.5* (100vw / 750));
    letter-spacing: 0.125em;
    margin-left: calc(13* (100vw / 750));
  }

  .content_price{
    margin-bottom: calc(52* (100vw / 750));
    font-size: calc(22* (100vw / 750));
    letter-spacing: 0.11em;
  }

  .content_txt{
    width: calc(576* (100vw / 750));
    margin: 0 auto;
    text-align: left;
    line-height: 2;
    letter-spacing: 0.14em;
  }

  .up{
    margin-bottom: 0;
  }

  .mb{
    margin-bottom: calc(20* (100vw / 750));
  }

  .ml{
    margin-left: 0;
  }

  .price_bottom{
    margin-bottom: calc(31* (100vw / 750));
  }

  .ml_2{
    margin-left: calc(15* (100vw / 750));
  }

  .up_2{
    margin-bottom: calc(17* (100vw / 750));
  }

  .inner_right{
    order: 2;
  }

  .inner_right{
    order: 1;
  }

  /*1段目*/
  .sec01{
    width: calc(650* (100vw / 750));
    margin-bottom: calc(97* (100vw / 750));
    padding-bottom: calc(114* (100vw / 750));
    border-bottom: calc(2* (100vw / 750)) #999999 solid;
  }

  .sec01 .content_ttl{
    margin-bottom: calc(45* (100vw / 750));
  }

  .sec01 .content_ttl::before{
    background-color: #f0f0f0;
    width: calc(609* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(16* (100vw / 750));
    bottom: calc(13* (100vw / 750));
  }

  .sec01 .content_ttl::after{
    width: calc(312* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(164* (100vw / 750));
    bottom: calc(94* (100vw / 750));
  }

  .sec01 .content_list{
    width: calc(570* (100vw / 750));
    display: flex;
    flex-direction: column;
    margin:0 auto;
    margin-bottom: calc(5* (100vw / 750));
  }

  .sec01 .content_img{
    width: calc(570* (100vw / 750));
    margin-bottom: calc(30* (100vw / 750));
  }

  .sec01 .content_img{
    order: 1;
  }

  .sec01 .content_inner{
    order: 2;
  }

  .sec01 .content_inner .inner_list{
    width: calc(570* (100vw / 750));
    display: flex;
    justify-content: space-between;
  }

  .sec01 .content_inner .inner_list .inner_img{
    width: calc(270* (100vw / 750));
  }

  .sec01 .content_price{
    width: calc(610* (100vw / 750));
    margin-bottom: calc(54* (100vw / 750));
  }

  .sec01 .content_price.price_bottom{
    margin-bottom: calc(41* (100vw / 750));
  }

  /*2段目*/
  .sec02{
    width: calc(650* (100vw / 750));
    margin-bottom: calc(101* (100vw / 750));
    padding-bottom: calc(110* (100vw / 750));
    border-bottom: calc(2* (100vw / 750)) #999999 solid;
  }

  .sec02 .content_ttl{
    margin-bottom: calc(48* (100vw / 750));
  }

  .sec02 .content_ttl::before{
    background-color: #f0f0f0;
    width: calc(609* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(16* (100vw / 750));
    bottom: calc(15* (100vw / 750));
  }

  .sec02 .content_ttl::after{
    width: calc(459* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(91* (100vw / 750));
    bottom: calc(93* (100vw / 750));
  }

  .sec02 .content_wrap{
    width: calc(570* (100vw / 750));
    display: flex;
    justify-content: normal;
    flex-direction: column;
    margin: 0 auto;
    margin-bottom: calc(49* (100vw / 750));
  }

  .sec02 .content_list{
    display: flex;
    justify-content: normal;
    margin:0 auto;
    margin-bottom: calc(-15* (100vw / 750));
  }

  .sec02 .inner_list{
    display: flex;
    flex-direction: column;
    justify-content: normal;
  }

  .sec02 .content_img{
    width: calc(337* (100vw / 750));
  }

  .sec02 .inner_img{
    width: calc(215* (100vw / 750));
    min-height: 0%;
  }

  .sec02 .content_price{
    margin-bottom: calc(32* (100vw / 750));
  }

  .sec02 .content_price.price_bottom2{
    margin-bottom: calc(-8* (100vw / 750));
  }

  .sec02 .content_txt{
    letter-spacing: 0.125em;
  }

/*3段目*/
  .sec03{
    width: calc(650* (100vw / 750));
    margin-bottom: calc(101* (100vw / 750));
    padding-bottom: calc(114* (100vw / 750));
    border-bottom: calc(2* (100vw / 750)) #999999 solid;
  }

  .sec03 .content_ttl{
    margin-bottom: calc(45* (100vw / 750));
  }

  .sec03 .content_ttl::before{
    background-color: #f0f0f0;
    width: calc(460* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(82* (100vw / 750));
    bottom: calc(97* (100vw / 750));
  }

  .sec03 .content_ttl::after{
    width: calc(380* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(131* (100vw / 750));
    bottom: calc(175* (100vw / 750));
  }

  .maker{
    display: inline-block;
    background: linear-gradient(transparent 61%, #f0f0f0 0%, #F0F0F0 81%, transparent 78%)
  }

  .sec03 .content_list{
    width: calc(570* (100vw / 750));
    display: flex;
    flex-direction: column;
    margin:0 auto;
    margin-bottom: calc(2* (100vw / 750));
  }

  .sec03 .content_img{
    width: calc(570* (100vw / 750));
    margin-bottom: calc(30* (100vw / 750));
  }

  .sec03 .content_inner .inner_list{
    width: calc(570* (100vw / 750));
    display: flex;
    justify-content: space-between;
  }

  .sec03 .content_inner .inner_list .inner_img{
    width: calc(270* (100vw / 750));
  }

  .sec03 .content_img{
    order: 1;
  }

  .sec03 .content_inner{
    order: 2;
  }

  .sec03 .content_price{
    width: calc(610* (100vw / 750));
  }

  .sec03 .content_price.price_bottom{
    margin-bottom: calc(45* (100vw / 750));
  }

  /*4段目*/
  .sec04{
    width: calc(650* (100vw / 750));
    margin-bottom: calc(141* (100vw / 750));
  }

  .sec04 .content_ttl{
    margin-bottom: calc(45* (100vw / 750));
  }

  .sec04 .content_ttl::before{
    background-color: #f0f0f0;
    width: calc(529* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(56* (100vw / 750));
    bottom: calc(15* (100vw / 750));
  }

  .sec04 .content_ttl::after{
    width: calc(330* (100vw / 750));
    height: calc(15* (100vw / 750));
    left: calc(147* (100vw / 750));
    bottom: calc(93* (100vw / 750));
  }

  .sec04 .content_wrap_Area{
    width: calc(655* (100vw / 750));
    display: flex;
    flex-direction: column;
    justify-content: normal;
    margin: 0 auto;
  }

  .sec04 .content_wrap{
    width: calc(655* (100vw / 750));
    justify-content: normal;
    margin: 0 auto;
    margin-bottom: 0;
  }

  .sec04 .content_list{
    width: calc(570* (100vw / 750));
    display: flex;
    margin: 0 auto;
    margin-bottom: calc(-15* (100vw / 750));
  }

  .sec04 .inner_list{
    display: flex;
    flex-direction: column;
    justify-content: normal;
  }

  .sec04 .content_wrap_Area .content_wrap .wrap_inner .content_price{
    width: calc(610* (100vw / 750));
  }

  .sec04 .content_wrap_Area .content_wrap .wrap_inner .content_price{
    margin-bottom: calc(54* (100vw / 750));
  }

  .sec04 .content_img{
    width: calc(337* (100vw / 750));
  }

  .sec04 .inner_img{
    width: calc(215* (100vw / 750));
    min-height: 0%;
  }

  .sec04 .content_wrap_Area .content_wrap .wrap_inner .content_price.price_bottom3{
    margin-bottom: calc(40* (100vw / 750));
  }

  /*all_item*/
  .all_item_btn{
    width: calc(570* (100vw / 750));
  }

  }

  @media all and (-ms-high-contrast: none) {
    /* ここに書く */
    .content_ttl {
      letter-spacing: 0.01em;
    }
  }


/* fade */
.fade {
  transition-property: opacity, transform;
  transition-duration: 1.5s;
  opacity: 0;
  transform: translateY(1.5rem);
}

.fade.onView {
  opacity: 1;
  transform: translateY(0);
}