@charset "UTF-8";


.p-sec01 {
  padding: 200px 0 100px;
  background: url("../../../images/page/concept/bg_ptn.png")repeat;
  background-size: 200px;
}

.p-sec01-content {
  max-width: 780px;
  padding: 0 30px;
  margin: 0 auto;
}

.p-heading {
  color: #555555;
  font-size: 2.2rem;
  margin-bottom: 40px;
}

.p-heading span {
  display: block;
  color: #B21920;
  font-size: 1.4rem;
  font-family: "EB Garamond", serif;
  font-weight: 400;
  font-style: normal;
  padding: 0 0 20px;
}

.p-sec02 {
    background: #fff;
    padding: 100px 0 120px;
}

.p-block {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  display: flex;
}

.p-block + .p-block {
  margin-top: 120px;
}

.p-ttl {
    color: #555555;
    font-weight: bold;
    font-size: 2.2rem;
    font-weight: 800;
    margin: 0 0 30px;
}

.p-concept .m-heading {
  line-height: 1;
  margin-bottom: 50px;
  text-align: left;
}


@media screen and (min-width: 768px) {

  .p-sec01-content {
    display: flex;
    justify-content: space-between;
  }

  .p-sec01-content .block {
      max-width: 428px;
      width: 60%;
  }

  .p-sec01-content .logo {
      max-width: 120px;
      width: 30%;
  }

  .p-block {
    padding: 0 30px;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row-reverse;
  }
  .p-detail {
    padding: 50px 0 0;
      width: 50%;
  }

  .p-detail-inner {
    max-width: 455px;
    margin: 0 auto;
  }

  .p-pic {
      width: 50%;
      padding: 0 50px;
  }

  .p-block + .p-block {
    flex-direction: row;
  }

}

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

  .p-sec01 {
    padding: 80px 0;
  }

  .p-sec01-content {
    padding: 0 20px;
  }

  .p-sec01-content .block {
    padding: 0 20px;
  }

  .p-sec01-content .logo {
    width: 99px;
    margin: 80px auto 0;
  }

  .p-heading span {
    font-size: 1rem;
  }


  .p-heading {
    margin-bottom: 60px;
  }

  .p-sec02 {
    padding: 80px 0 160px;
  }

  .p-block {
    flex-wrap: wrap-reverse;
  }


  .p-block + .p-block {
    margin-top: 80px;
  }

  .p-pic {
    margin: 0 auto 60px;
    width: calc(100% - 40px);
  }

  .p-detail-inner {
    margin: 0 auto;
    width: calc(100% - 80px);
  }

  .p-block + .p-block .p-pic {
    margin: 0 0 60px auto;
    width: calc(100% - 20px);
  }


}
