/*adobeフォントロード
------------------------------*/
html {
    visibility: hidden;
}
html.wf-active,
html.loading-delay {
    visibility: visible;
}

/*ページトップ画像
------------------------*/
.page_top_wrap {
  padding-top: 65px;
}
.page_top {
  position: relative;
  background-image: url(../../img/concept/concept_1.jpg);
  background-position: 50% 81%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.page_top::before {
  content: '';
  display: block;
  padding-top: 36.9%;
}

/*コンテンツ
------------------------*/
.concept {
  padding-top: 120px;
  padding-bottom: 235px;
}
.intro {
  padding-bottom: 60px;
  /*border-bottom: 1px solid #333;*/
}
.instraction p span{
  font-size: 16px;
  letter-spacing: 3.2px;
}
.divider {
  height: 1px;
  background-color: #333;
}
.concept_container {
  padding-top: 120px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .concept_container {
      max-width: 900px;
      padding-left: 60px;
      padding-right: 60px;
  }
}
@media screen and (max-width: 959px) {
  .concept_container {
      max-width: 840px;
      padding-left: 30px;
      padding-right: 30px;
  }
}

.concept h2 {
  font-size: 28px;
  letter-spacing: 5.6px;
  margin-bottom: 50px;
}

.concept_item {
  margin-bottom: 70px;
}
.concept_container h3 {
  text-align: center;
  font-size: 18px;
  letter-spacing: 3.6px
  padding-top: 200px;
  margin-bottom: 80px;
} 
.concept_container .image_wrap {
  position: relative;
  margin-bottom: 70px;
} 
.concept_item .image_wrap::before {
  content: '';
  display: block;
  padding-top: 100%;
}
.concept_item .image_wrap .concept_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.concept_item .image_wrap .image_wrap_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*画像１枚目*/
.concept_item.pic_1 .image_wrap::before {
  padding-top: 100%;
}
/*画像２枚目*/
.concept_item.pic_2 .image_wrap::before {
  padding-top: 53.8%;
}
/*画像３枚目*/
.concept_item.pic_3 .image_wrap::before {
  padding-top: 100%;
}
.concept_item.pic_3 .concept_img {
  object-position: 50% 80%;
}
/*画像４枚目*/
.concept_item.pic_4 .image_wrap::before {
  padding-top: 69.2%;
}
/*.concept_item.pic_4 .image_wrap {
  background-color: #F0F3F4;
}*/
.concept_item.pic_4 .image_wrap_inner {
/*  padding: 12.8% 15.3%;*/
  display: flex;
/*  gap: 20px;*/
}
.concept_item.pic_4 .image_wrap_inner_left{
  overflow: hidden;
}
.concept_item.pic_4 .zoom_wrap {
  width: 100%;
}
.concept_item.pic_4 .concept_img_small {
  height: 100%;
  object-fit: cover;
}
.concept_item.pic_4 .zoom_wrap:nth-child(2) .concept_img_small{
  object-position: 72% 50%;
}
/*画像５枚目*/
.concept_item.pic_5 .image_wrap::before {
  padding-top: 53.8%;
}
/*画像６枚目*/
.concept_item.pic_6 .image_wrap::before {
  padding-top: 100%;
}
.concept_item.pic_6 .image_wrap img {
  object-position: 5% 50%;
}
/*画像７枚目*/
.concept_item.pic_7 .image_wrap::before {
  padding-top: 69.2%;
}
.concept_item.pic_7 {
/*  background-color: #F0F3F4;*/
}
.concept_item.pic_7 .image_wrap_inner {
  /*padding: 12.8% 15.3%;*/
/*  width: calc(100% - 30.6%);
  height: calc(100% - 35%);*/
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.concept_item.pic_7 .concept_img_small {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*ロゴの説明*/
.concept_item.log {
  margin-top: 150px;
}
.concept_item.logo .image_container {
  width: 350px;
  margin: 0 auto;
  margin-top: 150px;
  margin-bottom: 75px;
}
.concept_item.logo .image_wrap::before {
  padding-top: 0%;
}



/*画像８枚目*/
.concept_item.pic_8 .image_wrap::before {
  padding-top: 53.8%;
}


div.concept_item:last-child  {
  margin-bottom: 0;
}

.concept_item_title {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1.92px;
  line-height: 1.875;
  margin-bottom: 70px;
} 
.concept_item_title .main {
  margin-right: 15px;
}
.concept_item_title .sub {
  display: inline-block;
  font-size: 10px;
  letter-spacing: 1.2px;
} 
.concept_item_para {
  font-size: 14px;
  letter-spacing: 1.68px;
}


.br_768 {
  display: none;
}
@media screen and (max-width: 768px) {
  .br_768 {
    display: block;
  }
  .nobr_768 {
    display: none;
  }
  .concept_container {
    padding-top: 80px;
  }
  .concept_container h3 {
    font-size: 16px;
    letter-spacing: 3.2px;
    line-height: 1.75;
    margin-bottom: 65px;

    /* width: 228px;*/
    width: 50%;
    min-width: 260px;
    margin-left: auto;
    margin-right: auto;
  }
  /*画像１枚目*/
  .concept_item.pic_1 .image_wrap {
    width: 76%;
    max-width: 490px;
    margin: 0 auto;
  }
  /*画像２枚目*/
  .concept_item.pic_2,
  .concept_item.pic_4,
  /*div.concept_item:nth-of-type(5),*/
  .concept_item.pic_6,
  .concept_item.pic_7 {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-bottom: 80px;
  }
  .concept_item.pic_3 {
    margin-bottom: 70px;
  }

  .concept_item.pic_4 .image_wrap::before{
    padding-top: 71.1%;
  }
  .concept_item.pic_4 .image_wrap_inner_left,
  .pic_4_right{
    width: 100%;
  }
  .image_wrap_inner_left .zoom_wrap{
    height: 50%;
  }

  .concept_item.pic_5 .image_wrap {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-bottom: 40px;
  }
  .concept_item.logo .image_container {
    width: 250px;
    margin: 0 auto;
    margin-top: 100px;
    margin-bottom: 50px;
  }
  .concept_item_para.para_text_2 {
    padding-left: 30px;
    padding-right: 30px;
}

  .concept {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .intro {
    padding-bottom: 55px;
  }
  .concept h2 {
    margin-bottom: 25px;
  }
  .sentece_last {
    display: block;
    margin-top: 30px;
  }

  .concept_container .image_wrap {
    margin-bottom: 70px;
  }
  .concept_item_title {
    margin-bottom: 30px;
  }

  div.concept_item:nth-of-type(1) .image_wrap {
    margin-bottom: 70px;
  }
  div.concept_item:nth-of-type(1) {
    margin-bottom: 40px;
  }
}

.br_650 {
  display: none;
}
@media screen and (max-width: 650px) {
  .br_650 {
    display: block;
  }
}
.br_530 {
  display: none;
}
@media screen and (max-width: 530px) {
  .br_530 {
    display: block;
  }
}
.br_380 {
  display: none;
}
@media screen and (max-width: 380px) {
  .instraction {
    font-size: 12px;
  }
  .nobr_380 {
    display: none;
  }
  .br_380 {
    display: block;
  }
}


