@charset "utf-8";

/* ======================================================
 * biomass.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Page Component
 * - Clearfix
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - Page Component
 * - Clearfix
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Page Component
  ------------------------------------------------------ */
  /* ----- ec-button ----- */
  .ec-heading {
    position: relative;
    padding-right: 100px;
  }
  .heading-ec-button {
    position: absolute;
    display: inline-block;
    width: 88px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .ec-button {
    display: inline-block;
    max-width: 300px;
    min-width: 88px;
    margin-top: 10px;
  }
  .ec-button_link {
    display: inline-block;
    padding: 5px 25px 7px;
    background-color: #fff;
    border: 2px solid #418fde;
    border-radius: 6px;
    color: #418fde!important;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1;
    font-family: "Noto Sans CJK JP", "Noto Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .ec-button_link:hover {
    background-color: #daebfc;
  }
  
  /* ----- biomass-hero ----- */
  .biomass-hero {
    position: relative;
  }
  .biomass-hero > .hero_detail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: min(calc((68 / 1200) * 100vw), 68px) min(calc((40 / 1200) * 100vw), 40px);
    z-index: 1;
  }
  .biomass-hero .hero_lead {
    padding: 0 10px;
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((36 / 1200) * 100vw), 36px);
    font-weight: 700;
    line-height: 1.6;
  }
  .biomass-hero .hero_lead > em {
    display: inline;
    margin: 0 -.3em;
    padding: 0 .3em;
    background: linear-gradient(0deg, rgba(165,207,76,0) 0%, rgba(165,207,76,0) 10%, rgba(165,207,76,1) 10%, rgba(165,207,76,1) 60%, rgba(165,207,76,0) 60%, rgba(165,207,76,0) 100%);
    font-style: normal;
  }
  .biomass-hero .hero_release {
    width: min(calc((340 / 1200) * 100vw), 340px);
    margin: min(calc((29 / 1200) * 100vw), 29px) 0 0;
    padding: .4em 1.0em .3em;
    background-color: #fff;
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((18 / 1200) * 100vw), 18px);
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
  }
  
  /* ----- biomass-box ----- */
  .biomass-box {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    margin: min(calc((60 / 1200) * 100vw), 60px) 0 0;
    padding: min(calc((34 / 1200) * 100vw), 34px) 0 min(calc((36 / 1200) * 100vw), 36px);
    background-color: #ebf3d7;
    border-radius: 40px;
    overflow: hidden;
  }
  .biomass-box > .box_head {
    width: min(calc((536 / 1200) * 100vw), 536px);
    flex-shrink: 0;
    padding: 0 min(calc((26 / 1200) * 100vw), 26px);
  }
  .biomass-box > .box_body {
    width: 100%;
  }
  
  /* ----- biomass-description ----- */
  .biomass-description {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .biomass-description > .description_head {
    width: min(calc((150 / 1200) * 100vw), 150px);
    flex-shrink: 0;
    margin-right: min(calc((30 / 1200) * 100vw), 30px);
  }
  .biomass-description > .description_body {
    width: 100%;
    padding: 0 min(calc((40 / 1200) * 100vw), 40px);
  }
  .biomass-description > .description_head + .description_body {
    padding-left: 0;
  }
  .biomass-description .description_detail > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-description .description_heading {
    margin: min(calc((10 / 1200) * 100vw), 10px) 0;
  }
  .biomass-description .description_heading > .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((28 / 1200) * 100vw), 28px);
    font-weight: 700;
    line-height: 1.4;
    color: #006733;
  }
  .biomass-description .description_text {
    line-height: 1.6;
  }
  .biomass-description .description_nest {
    margin-top: min(calc((34 / 1200) * 100vw), 34px);
  }
  /* v2 */
  .biomass-description-v2 {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-description-v2 > .description-v2_head {
    width: min(calc((128 / 1200) * 100vw), 128px);
    flex-shrink: 0;
    margin-right: min(calc((20 / 1200) * 100vw), 20px);
  }
  .biomass-description-v2 > .description-v2_body {
    width: 100%;
  }
  .biomass-description-v2 > .description-v2_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-description-v2 .description-v2_heading {
    margin: min(calc((5 / 1200) * 100vw), 5px) 0;
  }
  .biomass-description-v2 .description-v2_heading > .heading_title {
    font-size: min(calc((20 / 1200) * 100vw), 20px);
    font-weight: 700;
    line-height: 1.4;
  }
  .biomass-description-v2 .description-v2_text {
    line-height: 1.6;
  }
  .biomass-description-v2 .description-v2_caption {
    font-size: min(calc((12 / 1200) * 100vw), 12px);
    line-height: 1.6;
  }
  
  /* ----- biomass-heading ----- */
  .biomass-heading {
    margin: min(calc((60 / 1200) * 100vw), 60px) 0 min(calc((32 / 1200) * 100vw), 32px);
    padding: min(calc((11 / 1200) * 100vw), 11px) min(calc((22 / 1200) * 100vw), 22px) min(calc((10 / 1200) * 100vw), 10px);
    background-color: #d7e7af;
  }
  .biomass-heading > .heading_inner {
    display: flex;
    align-items: center;
  }
  .biomass-heading .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((28 / 1200) * 100vw), 28px);
    font-weight: 700;
    line-height: 1.4;
    color: #006733;
  }
  .biomass-heading .heading_category {
    margin-left: min(calc((28 / 1200) * 100vw), 28px);
  }
  .biomass-heading .heading_category > .category_list {
    display: flex;
    flex-flow: row wrap;
    margin-right: -10px;
    margin-bottom: -10px;
  }
  .biomass-heading .heading_category > .category_list > li {
    width: 110px;
    margin-right: 10px;
    margin-bottom: 10px;
  }
  
  /* ----- biomass-media ----- */
  .biomass-media {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-media > .media_head {
    width: min(calc((380 / 1200) * 100vw), 380px);
    flex-shrink: 0;
    margin-right: min(calc((30 / 1200) * 100vw), 30px);
  }
  .biomass-media > .media_body {
    width: 100%;
  }
  .biomass-media > .media_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-media .media_image {
    text-align: center;
  }
  
  /* ----- biomass-product-wrap ----- */
  .biomass-product-wrap {
    margin: min(calc((40 / 1200) * 100vw), 40px) 0 0;
  }
  .biomass-product-wrap[data-product-pc]:not([data-product-pc="1"]) {
    display: flex;
    flex-flow: row wrap;
  }
  .biomass-product-wrap[data-product-pc]:not([data-product-pc="1"]) > * {
    margin-left: 30px;
  }
  .biomass-product-wrap[data-product-pc="2"] > *:nth-child(2n+1),
  .biomass-product-wrap[data-product-pc="3"] > *:nth-child(3n+1),
  .biomass-product-wrap[data-product-pc="4"] > *:nth-child(4n+1) {
    margin-left: 0;
  }
  .biomass-product-wrap[data-product-pc="1"] > * + *,
  .biomass-product-wrap[data-product-pc="2"] > *:nth-child(n+3),
  .biomass-product-wrap[data-product-pc="3"] > *:nth-child(n+4),
  .biomass-product-wrap[data-product-pc="4"] > *:nth-child(n+5) {
    margin-top: 1.25em;
  }
  .biomass-product-wrap[data-product-pc="2"] > * { width: calc((100% - (30px * 1)) / 2); }
  .biomass-product-wrap[data-product-pc="3"] > * { width: calc((100% - (30px * 2)) / 3); }
  .biomass-product-wrap[data-product-pc="4"] > * { width: calc((100% - (30px * 3)) / 4); }
  
  /* ----- biomass-product ----- */
  .biomass-product > .product_heading {
    margin: 0 0 min(calc((20 / 1200) * 100vw), 20px);
    padding: 0 0 min(calc((12 / 1200) * 100vw), 12px);
    border-bottom: 1px solid #333;
  }
  .biomass-product > .product_heading > .heading_inner {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
  }
  .biomass-product > .product_heading .heading_head {
    margin-right: min(calc((20 / 1200) * 100vw), 20px);
  }
  .biomass-product > .product_heading .heading_body {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }
  .biomass-product > .product_heading .heading_body > *:first-child {
    margin-left: 0 !important;
  }
  .biomass-product > .product_heading .heading_category {
    width: min(calc((54 / 1200) * 100vw), 54px);
  }
  .biomass-product > .product_heading .heading_button {
    margin-left: min(calc((10 / 1200) * 100vw), 10px);
  }
  .biomass-product > .product_heading .heading_button > * {
    margin-top: 0;
  }
  .biomass-product > .product_heading .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((24 / 1200) * 100vw), 24px);
    font-weight: 700;
    line-height: 1.4;
  }
  .biomass-product > .product_heading-v2 {
    margin: 0 0 min(calc((10 / 1200) * 100vw), 10px);
    padding-top: min(calc((16 / 1200) * 100vw), 16px);
    border-top: 1px solid #333;
  }
  .biomass-product > .product_heading-v2 .heading-v2_title {
    font-size: min(calc((20 / 1200) * 100vw), 20px);
    font-weight: bold;
    line-height: 1.3;
  }
  .biomass-product > .product_media {
    display: flex;
    flex-flow: row nowrap;
    flex-direction: row-reverse;
  }
  .biomass-product > .product_media > .media_head {
    width: calc((100% - (min(calc((30 / 1200) * 100vw), 30px) * 1)) / 2);
    flex-shrink: 0;
    margin-left: min(calc((30 / 1200) * 100vw), 30px);
  }
  .biomass-product > .product_media > .media_body {
    width: calc((100% - (min(calc((30 / 1200) * 100vw), 30px) * 1)) / 2);
  }
  .biomass-product > .product_media > .media_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-product .product_feature {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-product .product_feature > .feature_head {
    width: min(calc((170 / 1200) * 100vw), 170px);
    flex-shrink: 0;
    margin-right: min(calc((20 / 1200) * 100vw), 20px);
  }
  .biomass-product .product_feature > .feature_body {
    width: 100%;
  }
  .biomass-product .product_feature > .feature_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-product .product_feature .feature_lead {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((18 / 1200) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.3;
  }
  .biomass-product .product_price {
    line-height: 1.6;
  }
  .biomass-product .product_price > .price_num {
    display: inline-block;
    margin: 0 .25em;
    font-style: normal;
    font-size: min(calc((20 / 1200) * 100vw), 20px);
    font-weight: bold;
    line-height: 1.3;
  }
  .biomass-product .product_spec {
    margin: .5em 0 0;
  }
  .biomass-product .product_spec > .spec_list {
    display: flex;
    flex-flow: row nowrap;
    line-height: 1.6;
  }
  .biomass-product .product_spec > .spec_list > dt {
    min-width: 4.2em;
    flex-shrink: 0;
  }
  .biomass-product .product_spec > .spec_list > dd {
    position: relative;
    width: 100%;
    padding-left: 1.0em;
  }
  .biomass-product .product_spec > .spec_list > dd::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1.0em;
    height: 1.0em;
    content: "：";
  }
  .biomass-product .product_size {
    display: flex;
    flex-flow: row wrap;
    margin: min(calc((14 / 1200) * 100vw), 14px) 0 0;
  }
  .biomass-product > .product_media > .media_body .product_size {
    margin-top: min(calc((64 / 1200) * 100vw), 64px) !important;
  }
  .biomass-product .product_size > .size_badge {
    min-width: min(calc((89 / 1200) * 100vw), 89px);
    height: min(calc((32 / 1200) * 100vw), 32px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .3em .125em .125em;
    background-color: #1d2088;
    border-radius: 4px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
    color: #fff;
    overflow: hidden;
  }
}

/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 768px) and (max-width: 1270px) {
  .biomass-product-wrap[data-product-pc]:not([data-product-pc="1"]) > .biomass-product > .product_heading > .heading_inner {
    display: block;
  }
}


/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ----- ec-button ----- */
  .ec-heading {
    position: relative;
    padding-right: 80px;
  }
  .heading-ec-button {
    position: absolute;
    display: inline-block;
    width: 70px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .ec-button {
    margin-top: 17px;
    text-align: center;
  }
  .ec-button_link {
    display: inline-block;
    padding: 2px 19px;
    background-color: #fff;
    border: 2px solid #418fde;
    border-radius: 5px;
    color: #418fde!important;
    font-weight: bold;
    font-size: 1.4rem;
    font-family: "Noto Sans CJK JP", "Noto Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  
  /* ----- biomass-hero ----- */
  .biomass-hero {
    margin-left: -15px;
    margin-right: -15px;
  }
  .biomass-hero > .hero_image {
    text-align: center;
  }
  .biomass-hero > .hero_detail {
    padding: 0 min(calc((15 / 375) * 100vw), 15px);
  }
  .biomass-hero > .hero_image + .hero_detail {
    margin-top: min(calc((5 / 375) * 100vw), 5px);
  }
  .biomass-hero .hero_inner {
    padding: 0 min(calc((18 / 375) * 100vw), 18px);
  }
  .biomass-hero .hero_lead {
    padding: 0 min(calc((5 / 375) * 100vw), 5px);
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((23 / 375) * 100vw), 23px);
    font-weight: 700;
    line-height: 1.6;
  }
  .biomass-hero .hero_lead > em {
    display: inline;
    margin: 0 min(calc((-5 / 375) * 100vw), -5px);
    padding: 0 min(calc((5 / 375) * 100vw), 5px);
    background: linear-gradient(0deg, rgba(165,207,76,0) 0%, rgba(165,207,76,0) 5%, rgba(165,207,76,1) 5%, rgba(165,207,76,1) 60%, rgba(165,207,76,0) 60%, rgba(165,207,76,0) 100%);
    font-style: normal;
  }
  .biomass-hero .hero_release {
    width: min(calc((205 / 375) * 100vw), 205px);
    margin: min(calc((14 / 375) * 100vw), 14px) 0 0;
    padding: .3em 1.0em .43em;
    background-color: #eeeeee;
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((14 / 375) * 100vw), 14px);
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
  }
  
  /* ----- biomass-box ----- */
  .biomass-box {
    margin: min(calc((40 / 375) * 100vw), 40px) 0 0;
    padding: min(calc((22 / 375) * 100vw), 22px) 0 min(calc((25 / 375) * 100vw), 25px);
    background-color: #ebf3d7;
    border-radius: 30px;
    overflow: hidden;
  }
  .biomass-box > .box_head {
    padding: 0 min(calc((50 / 375) * 100vw), 50px);
  }
  .biomass-box > .box_body {
    padding: 0 min(calc((20 / 375) * 100vw), 20px);
  }
  .biomass-box > .box_head + .box_body {
    margin-top: min(calc((14 / 375) * 100vw), 14px);
  }
  .biomass-box .box_image {
    text-align: center;
  }
  
  /* ----- biomass-description ----- */
  .biomass-description {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-description > .description_head {
    width: min(calc((75 / 375) * 100vw), 75px);
    flex-shrink: 0;
    margin-right: min(calc((16 / 375) * 100vw), 16px);
  }
  .biomass-description > .description_body {
    width: 100%;
  }
  .biomass-description .description_detail {
    min-height: 122px;
  }
  .biomass-description .description_detail > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-description .description_heading {
    margin: min(calc((6 / 375) * 100vw), 6px) 0;
  }
  .biomass-description .description_heading > .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((20 / 375) * 100vw), 20px);
    font-weight: 700;
    line-height: 1.4;
    color: #006733;
  }
  .biomass-description .description_text {
    line-height: 1.6;
  }
  .biomass-description .description_nest {
    margin-top: calc((22 / 375) * 100vw);
    margin-left: -90px;
  }
  /* v2 */
  .biomass-description-v2 {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-description-v2 > .description-v2_head {
    width: min(calc((64 / 375) * 100vw), 64px);
    flex-shrink: 0;
    margin-right: min(calc((10 / 375) * 100vw), 10px);
  }
  .biomass-description-v2 > .description-v2_body {
    width: 100%;
  }
  .biomass-description-v2 > .description-v2_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-description-v2 .description-v2_heading {
    margin: min(calc((6 / 375) * 100vw), 6px) 0;
  }
  .biomass-description-v2 .description-v2_heading > .heading_title {
    font-size: min(calc((16 / 375) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.4;
  }
  .biomass-description-v2 .description-v2_text {
    line-height: 1.6;
  }
  .biomass-description-v2 .description-v2_caption {
    font-size: min(calc((12 / 375) * 100vw), 12px);
    line-height: 1.6;
  }
  
  /* ----- biomass-heading ----- */
  .biomass-heading {
    margin: min(calc((40 / 375) * 100vw), 40px) 0 min(calc((15 / 375) * 100vw), 15px);
    padding: min(calc((8 / 375) * 100vw), 8px) min(calc((10 / 375) * 100vw), 10px);
    background-color: #d7e7af;
  }
  .biomass-heading .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((20 / 375) * 100vw), 20px);
    font-weight: 700;
    line-height: 1.4;
    color: #006733;
  }
  .biomass-heading .heading_category {
    margin-top: min(calc((6 / 375) * 100vw), 6px);
  }
  .biomass-heading .heading_category > .category_list {
    display: flex;
    flex-flow: row wrap;
    margin-right: -10px;
    margin-bottom: -10px;
  }
  .biomass-heading .heading_category > .category_list > li {
    width: 77px;
    margin-right: 10px;
    margin-bottom: 10px;
  }
  
  /* ----- biomass-media ----- */
  .biomass-media > .media_head {
    margin-bottom: min(calc((19 / 375) * 100vw), 19px);
    padding: 0 min(calc((30 / 375) * 100vw), 30px);
  }
  .biomass-media > .media_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-media .media_image {
    text-align: center;
  }
  
  /* ----- biomass-product-wrap ----- */
  .biomass-product-wrap {
    margin: min(calc((34 / 375) * 100vw), 34px) 0 0;
  }
  .biomass-product-wrap[data-product-sp]:not([data-product-sp="1"]) {
    display: flex;
    flex-flow: row wrap;
  }
  .biomass-product-wrap[data-product-sp]:not([data-product-sp="1"]) > * {
    margin-left: min(calc((15 / 375) * 100vw), 15px);
  }
  .biomass-product-wrap[data-product-sp="2"] > *:nth-child(2n+1),
  .biomass-product-wrap[data-product-sp="3"] > *:nth-child(3n+1) {
    margin-left: 0;
  }
  .biomass-product-wrap[data-product-sp="1"] > * + *,
  .biomass-product-wrap[data-product-sp="2"] > *:nth-child(n+3),
  .biomass-product-wrap[data-product-sp="3"] > *:nth-child(n+4) {
    margin-top: min(calc((9 / 375) * 100vw), 9px);
  }
  .biomass-product-wrap[data-product-sp="2"] > * { width: calc((100% - (min(calc((15 / 375) * 100vw), 15px) * 1)) / 2); }
  .biomass-product-wrap[data-product-sp="3"] > * { width: calc((100% - (min(calc((15 / 375) * 100vw), 15px) * 2)) / 3); }
  
  /* ----- biomass-product ----- */
  .biomass-product > .product_heading {
    margin: 0 0 min(calc((14 / 375) * 100vw), 14px);
    padding: 0 0 min(calc((12 / 375) * 100vw), 12px);
    border-bottom: 1px solid #333;
  }
  .biomass-product > .product_heading > .heading_inner {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
  }
  .biomass-product > .product_heading .heading_head {
    margin-right: min(calc((20 / 375) * 100vw), 20px);
  }
  .biomass-product > .product_heading .heading_body {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }
  .biomass-product > .product_heading .heading_body > *:first-child {
    margin-left: 0 !important;
  }
  .biomass-product > .product_heading .heading_category {
    width: min(calc((41 / 375) * 100vw), 41px);
  }
  .biomass-product > .product_heading .heading_button {
    margin-left: min(calc((10 / 375) * 100vw), 10px);
  }
  .biomass-product > .product_heading .heading_button > * {
    margin-top: 0;
  }
  .biomass-product > .product_heading .heading_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((18 / 375) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.4;
  }
  .biomass-product > .product_heading-v2 {
    margin: 0 0 min(calc((12 / 375) * 100vw), 12px);
    padding-top: min(calc((18 / 375) * 100vw), 18px);
    border-top: 1px solid #333;
  }
  .biomass-product > .product_heading-v2 .heading-v2_title {
    font-size: min(calc((17 / 375) * 100vw), 17px);
    font-weight: bold;
    line-height: 1.3;
  }
  .biomass-product > .product_media {
    display: flex;
    flex-direction: column-reverse;
  }
  .biomass-product > .product_media + * {
    margin-top: min(calc((32 / 375) * 100vw), 32px) !important;
  }
  .biomass-product > .product_media > .media_head {
    margin-top: min(calc((30 / 375) * 100vw), 30px);
    padding: 0 min(calc((25 / 375) * 100vw), 25px) 0 min(calc((36 / 375) * 100vw), 36px);
  }
  .biomass-product > .product_media > .media_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-product .product_feature {
    display: flex;
    flex-flow: row nowrap;
  }
  .biomass-product .product_feature > .feature_head {
    width: min(calc((128 / 375) * 100vw), 128px);
    flex-shrink: 0;
    margin-right: min(calc((13 / 375) * 100vw), 13px);
  }
  .biomass-product .product_feature > .feature_body {
    width: 100%;
  }
  .biomass-product .product_feature > .feature_body > *:first-child {
    margin-top: 0 !important;
  }
  .biomass-product .product_feature .feature_lead {
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: min(calc((14 / 375) * 100vw), 14px);
    font-weight: 700;
    line-height: 1.3;
  }
  .biomass-product .product_price {
    line-height: 1.6;
  }
  .biomass-product .product_price > .price_num {
    display: inline-block;
    margin: 0 .3em;
    font-style: normal;
    font-size: min(calc((18 / 375) * 100vw), 18px);
    font-weight: bold;
    line-height: 1.3;
  }
  .biomass-product .product_spec {
    margin: min(calc((10 / 375) * 100vw), 10px) 0 0;
  }
  .biomass-product .product_spec > .spec_list {
    display: flex;
    flex-flow: row nowrap;
    line-height: 1.6;
  }
  .biomass-product .product_spec > .spec_list > dt {
    min-width: 4.5em;
    flex-shrink: 0;
  }
  .biomass-product .product_spec > .spec_list > dd {
    position: relative;
    width: 100%;
    padding-left: 1.0em;
  }
  .biomass-product .product_spec > .spec_list > dd::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1.0em;
    height: 1.0em;
    content: "：";
  }
  .biomass-product .product_size {
    display: flex;
    flex-flow: row wrap;
    margin: min(calc((14 / 375) * 100vw), 14px) 0 0;
  }
  .biomass-product .product_size > .size_badge {
    min-width: min(calc((84 / 375) * 100vw), 84px);
    height: min(calc((29 / 375) * 100vw), 29px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .3em .125em .125em;
    background-color: #1d2088;
    border-radius: 4px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
    color: #fff;
    overflow: hidden;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP Media Queries
====================================================== */
/***
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}

@media only screen and (max-width: 375px) {
}
***/
@media only screen and (max-width: 374px) {
}
@media only screen and (max-width: 370px) {
}
/***
@media only screen and (max-width: 320px) {
}



/* ======================================================
 * Print
====================================================== */
@media print {
}