@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;

    }
    .content_list.sp{
      width: 0;
      padding:0;
      border:0;
    }
  }
   @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;
  }

  /* for pc*/


  .sp {
    display: none;
  }

  .sp_only {
    display: none;
  }

  .pc {
    display: block;
  }

  /*#Contents {
    max-width: 1600px;
    width: 100%;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center -163px;
    height: auto;
    margin: 0 auto;
    background-image: url(../img/page_pc.png);
  }*/

  /*basic*/

  .main_container {
    margin: 0 auto;
    /*margin-top: 60px;*/
    width: 100rem;
    -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";
    position: relative;
  }

  /*ヘッド部分*/
  .heading{
    margin-bottom: 10.7rem;
  }

  .heading_img{
    width: 100rem;
    margin:0 auto;
    margin-bottom: 7.8rem;
  }

  .heading_txt.up{
    margin-bottom: 2.9rem;
  }

  /*1段目*/

.sec01{
  margin-bottom: 5.2rem;
}

.content_ttl{
  font-family: trajan-sans-pro,sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.4rem;
  line-height: 1.666;
  letter-spacing: 0.05em;
  margin-bottom: 3.1rem;
}

.content_img{
  width: 43.5rem;
  margin:0 auto;
  margin-bottom: 3.5rem;
}

.content_name{
  font-size: 1.8rem;
  line-height: 1.7777;
  letter-spacing: 0.16em;
  margin-bottom: 2.7rem;
}

/*2段目*/
  .sec02{
    width: 80rem;
    margin:0 auto;
    margin-bottom: 11rem;
  }

  .content_list{
    width: 80rem;
    margin:0 auto;
    display: flex;
    justify-content: space-between;
    padding-top:3.5rem;
    padding-bottom: 3.6rem;
    padding-left: 6.6rem;
    padding-right: 6.5rem;
    border:0.5rem #ededed solid;
  }

  .content_inner{
    width: 18rem;
  }

  .list_ttl{
    font-family: trajan-sans-pro,sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.8rem;
    line-height: 1.777;
    letter-spacing: 0.05em;
    text-align: left;
  }

  .list_img{
    margin-bottom: 1.3rem;
  }

  .list_txt{
    text-align: left;
    letter-spacing: 0.1em;
  }

  /*3段目*/
  .sec03{
    margin-bottom: 5.2rem;
  }

  /*4段目*/
  .sec04{
    width: 80rem;
    margin:0 auto;
    margin-bottom: 15rem;
  }

  .list_txt.ls{
    letter-spacing: 0.04em;
  }

  .content_list.list2{
    padding-bottom: 2.9rem;
  }

/*all_item*/
.all_item{
  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(268* (100vw/750));
    background-image: url(../img/page_sp.png);
  }*/

  /*basic*/
  .sec01,.sec02,.sec03,.sec04{
    margin: 0 auto;
  }
.sp {
    display: block;
  }

.pc {
    display: none;
  }

  .main_container {
    width: 100%;
    font-size: calc(24* (100vw / 750));
  }

  .mb39{
    margin-bottom: calc(39* (100vw / 750));
  }

  /*ヘッド部分*/
  .heading{
    margin-bottom: calc(117* (100vw / 750));
  }

  .heading_img{
    width: 100%;
    margin-bottom: calc(67* (100vw / 750));
  }

  .heading_txt.up{
    margin-bottom: calc(45* (100vw / 750));
  }

  /*1段目*/

.sec01{
  width: calc(603* (100vw / 750));
  margin-bottom: calc(74* (100vw / 750));
}

.content_ttl{
  margin:0 auto;
  font-size: calc(42* (100vw / 750));
  line-height: 0.952;
  letter-spacing: 0.05em;
  margin-bottom: calc(53* (100vw / 750));
}

.content_txt{
  margin:0 auto;
  text-align: left;
}

.content_img{
  width: calc(600* (100vw / 750));
  margin:0 auto;
  margin-bottom: calc(45* (100vw / 750));
}

.content_name{
  font-size: calc(30* (100vw / 750));
  line-height: 1.8666;
  text-align: center;
  letter-spacing: 0.16em;
  margin-bottom: calc(43* (100vw / 750));
}

/*2段目*/
  .sec02{
    width: calc(595* (100vw / 750));
    margin-bottom: calc(125* (100vw / 750));
  }

  .content_list{
    width: calc(595* (100vw / 750));
    display: flex;
    flex-direction: column;
    justify-content: none;
    padding-top: calc(60* (100vw / 750));
    padding-bottom: calc(19* (100vw / 750));
    padding-left: calc(37* (100vw / 750));
    padding-right: calc(78* (100vw / 750));
    border: calc(8* (100vw / 750)) #ededed solid;
  }

  .content_inner{
    width: calc(500* (100vw / 750));
    margin-bottom: calc(39* (100vw / 750));
  }

  .inner_list{
    display: flex;
  }

  .inner_txt{
    margin-left: calc(28* (100vw / 750));
  }

  .list_ttl{
    font-size: calc(34* (100vw / 750));
    margin-top: calc(67* (100vw / 750));
    margin-bottom: calc(21* (100vw / 750));
    line-height: 1.3235;
    letter-spacing: 0.05em;
  }

  .list_ttl.ttl2{
    margin-top: calc(90* (100vw / 750));
  }

  .list_img{
    width: calc(280* (100vw / 750));
    margin-bottom: 0;
  }

  .list_txt{
    letter-spacing: 0.1em;
  }

  /*3段目*/
  .sec03{
    width: calc(603* (100vw / 750));
    margin-bottom: calc(68* (100vw / 750));
  }

  /*4段目*/
  .sec04{
    width: calc(595* (100vw / 750));
    margin-bottom: calc(149* (100vw / 750));
  }

  .content_list.list2{
    padding-bottom: 0;
  }

  .list_ttl.ttl3{
    margin-top: calc(48* (100vw / 750));
  }

  .list_txt.ls{
    letter-spacing: 0.04em;
  }

/*all_item*/
.all_item{
  width: calc(570* (100vw / 750));
}


.content_list.list2.pc{
  padding:0;
  width: 0;
  border:0;
}

}






/* fade */
.fade {
  transition-property: opacity, transform;
  transition-duration: 1.5s;
  opacity: 0;
  transform: translateY(1.5rem);
}

.fade.onView {
  opacity: 1;
  transform: translateY(0);
}




