@charset "UTF-8";

/*----------------------------------------
変数
-----------------------------------------*/
:root {

  /* フォント関係 */
  /* ja */
  --font-family-Notosans: 'Noto Sans', sans-serif;
  --font-family-ZenKakuGothic: "Zen Kaku Gothic New", 'Noto Sans ', sans-serif;
}

/*----------------------------------------
基本設定
-----------------------------------------*/

body {
  line-height: 1.5;
  letter-spacing: 0;
}

h2,
h3 {
  line-height: 1.15;
}

#contents {
  width: 100%;
  margin-top: calc(-1 * var(--header-height));
  padding-top: calc(2 * var(--header-height));
}

.header .logo img {
  max-width: 313px;
}

header .global_wrap .global_nav .subNavi_list li,
footer .sitemap_wrap .sitemap_nav .subNavi_list li {
  letter-spacing: 0;
  line-height: 1.35;
}

footer .contact_wrap .h2_txt {
  margin-top: -30px;
  margin-bottom: 5px;
  font-size: 60px;
}

footer .sitemap_wrap .sitemap_nav .flex>* {
  width: 41%;
}


/*----------------------------------------
子ページ
-----------------------------------------*/
.verticalL_wrap {
  display: block;
  flex-wrap: wrap;
  justify-content: space-between;

}

.verticalL_wrap .verticalL_tit {
  width: 100%;
  height: 0.95em;
  margin-bottom: 0.25em;
}

.verticalL_wrap .verticalL_txt_wrap {
  width: 100%;
  margin-left: 0px;
}

.imgBoxList_wrap li .txt_wrap .title_box {
  line-height: 1.25;
}

.read_wrap .read_txt,
.h2_txt_box .read_txt,
.read_wrap .read_txt p,
.h2_txt_box .read_txt p {
  letter-spacing: 0;
}


/*----------------------------------------
  トップ
  -----------------------------------------*/
.mv_wrap .mv_copy_wrap .mainCopy .copy_txt {
  height: 3.75vw;
}

.mv_wrap .swiper-slide .txtBox {
  width: 65%;
  bottom: 4.5em;
}

.business_wrap .imgBoxList_wrap li:first-child .list_inner {
  max-height: none;
}

.product_wrap .product_list .txt_wrap .title_box {
  line-height: 1.15;
}

.product_wrap .product_list .txt_wrap {
  min-height: 4em;
}


/*----------------------------------------
  プロテイン
  -----------------------------------------*/
.detail_wrap .detail_box dl:first-child {
  width: 37%;
}

.detail_wrap .detail_box dl {
  width: 60%;
}


.bg_img_wide .h2_txt_box .read_txt {
  letter-spacing: 0.05em;
  line-height: 1.65;
}

/*----------------------------------------
  パーパス
  -----------------------------------------*/
.purpose_wrap .h2_txt {
  letter-spacing: 0.05em;
  line-height: 1.25;
}

.purpose_wrap .message_Wrap .txt_box {
  max-width: 860px;
  letter-spacing: 0;
}


/*----------------------------------------
  トップメッセージ
  -----------------------------------------*/
.topmessage_wrap .message_box .sign_wrap,
.ceomessage_wrap .message_box .sign_wrap {
  max-width: fit-content;
}

.topmessage_wrap .message_box .sign_wrap .name,
.ceomessage_wrap .message_box .sign_wrap .name {
  font-size: 28px;
  line-height: 1.15;
  margin-top: 0.05em;
}


/*----------------------------------------
  会社概要
  -----------------------------------------*/
.info_txt_wrap .category_wrap .category {
  width: 11em;
}

.col2_border_list.sp_mb0 .info_txt_wrap .category_wrap .category {
  width: 14.5em;
}

.access_wrap .access_txt_wrap {
  align-items: flex-start;
}

/*----------------------------------------
  沿革
  -----------------------------------------*/
.history_year {
  width: 8em;
  font-weight: bold;
}

.history_txt {
  width: calc(100% - 5em);
}



/*----------------------------------------
  つよみ
  -----------------------------------------*/
.whychooseus_wrap .point_h2_wrap .sub_tit {
  font-size: 20px;
  padding-bottom: 1.45em;
  margin-left: 1.5em;
}

.whychooseus_wrap .point_h2_wrap .main_tit {
  max-width: 60%;
  width: auto;
}

.whychooseus_wrap .point_h2_wrap .main_tit picture {
  height: 1.25em;
}

.whychooseus_wrap .point_h2_wrap .main_tit img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}



/*----------------------------------------
あゆみ
-----------------------------------------*/
.history_list .history_item.yearR .txt_wrap,
.history_list .history_item .txt_wrap {
  letter-spacing: 0;
}


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

  /*----------------------------------------
  トップメッセージ
  -----------------------------------------*/

  .topmessage_wrap .message_box .sign_wrap .name,
  .ceomessage_wrap .message_box .sign_wrap .name {
    font-size: 3vw;
  }


  footer .contact_wrap .h2_txt {
    font-size: 5vw;
    margin-top: -25px;
    margin-bottom: 5px;
  }


  /*----------------------------------------
  つよみ
  -----------------------------------------*/
  .whychooseus_wrap .point_h2_wrap .sub_tit {
    font-size: 2vw;
  }

}

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


/*==========================================================================================
ここからSP
==========================================================================================*/
@media only screen and (max-width: 767px) {

  footer .contact_wrap .h2_txt {
    font-size: 10vw;
  }

  /*----------------------------------------
  子ページ
  -----------------------------------------*/
  .verticalL_wrap {
    flex-wrap: wrap;
  }

  .verticalL_wrap .verticalL_tit {
    width: 100%;
    height: auto;
    min-height: auto;
    margin-bottom: 0.25em;
  }

  /* .verticalL_wrap .verticalL_tit picture,
  .verticalL_wrap .verticalL_tit picture img {
    min-height: 8vw;
  } */


  .bg_img_wide .h2_txt_box .read_txt {
    line-height: 1.5;
  }

  .mv_wrap .mv_copy_wrap .mainCopy .copy_txt {
    height: 8.75vw;
  }

  .mv_wrap .swiper-slide .txtBox {
    bottom: 3.25em;
  }

  .verticalL_wrap .verticalL_tit picture,
  .verticalL_wrap .verticalL_tit picture img {
    height: 1.5em;
  }

  /*----------------------------------------
  トップメッセージ
  -----------------------------------------*/
  .topmessage_wrap .message_box .sign_wrap .name,
  .ceomessage_wrap .message_box .sign_wrap .name {
    font-size: 5.25vw;
  }

  .ceomessage_wrap .message_Wrap {
    padding-bottom: 46vw;
  }

  .detail_wrap .detail_box dl:first-child {
    width: 100%;
  }

  .detail_wrap .img_wrap {
    bottom: 12%;
    right: 0%;
  }


  /*----------------------------------------
  つよみ
  -----------------------------------------*/
  .whychooseus_wrap .point_h2_wrap .sub_tit {
    font-size: 3.85vw;
    margin-left: 0;
    text-align: center;
  }

  .whychooseus_wrap .point_h2_wrap .main_tit {
    max-width: 60%;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }

  .whychooseus_wrap .point_h2_wrap .main_tit picture {
    height: 2.5em;
  }


}