﻿@charset "UTF-8";

.branding-wrap{
  max-width: 1000px;
  margin: 0 auto;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;
  line-height: 1.8;
  color: #1a1a1a;
}

.branding-wrap img{
  width: 100%;
  height: auto;
  display: block;
}

.branding-wrap h2{
  margin: 0 0 12px;
  font-size: 104px;
  letter-spacing: 0.02em;
  line-height: 1.35;
  font-family: Yu Mincho, 游明朝, "Hiragino Mincho ProN", "ヒラギノ明朝 ProN",
               "MS Mincho", "ＭＳ 明朝", "MS PMincho", "ＭＳ Ｐ明朝", serif;
  font-weight: 600;
}

.branding-wrap h3{
  margin: 0 0 18px;
  font-size: 38px;
  letter-spacing: 0.02em;
  line-height: 1.35;
  font-family: Yu Mincho, 游明朝, "Hiragino Mincho ProN", "ヒラギノ明朝 ProN",
               "MS Mincho", "ＭＳ 明朝", "MS PMincho", "ＭＳ Ｐ明朝", serif;
  font-weight: 600;
}

.branding-wrap p{
  margin: 0;
  font-size: 18px;
  color: #333;
}

/* KV */
.branding-content-kv{
  background: url("/Contents/ProductDetailImages/branding/branding-img-kv.jpg") center / cover no-repeat;
  min-height: 480px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
  padding: 32px 16px;
  position: relative;
}
.branding-content-kv::before{
  content: none;
}
.branding-content-kv > *{
  position: relative;
  z-index: 1;
}

.branding-content-kv p{
  background: #6b4a1c;
  color: #fff;
  display: inline-block;
  padding: 8px 16px;
  font-size: 34px;
  letter-spacing: 0.08em;
}

.branding-content-kv h2{
  margin-top: 16px;
  letter-spacing: 0.08em;
  color: #222;
}

/* Two-column sections */
.branding-content-environment,
.branding-content-berkshire,
.branding-content-feed,
.branding-content-trust{
  display: flex;
  gap: 0;
  align-items: stretch;
}

.branding-content-environment-text,
.branding-content-berkshire-text,
.branding-content-feed-text,
.branding-content-trust-text{
  flex: 1 1 50%;
  background: #dfe7de;
  padding: 28px 60px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.branding-content-environment-img,
.branding-content-berkshire-img,
.branding-content-feed-img,
.branding-content-trust-img{
  flex: 1 1 50%;
  position: relative;
  overflow: hidden;
}

.branding-content-environment-img img,
.branding-content-berkshire-img img,
.branding-content-feed-img img,
.branding-content-trust-img img{
  height: 100%;
  object-fit: cover;
}

/* Shironiku */
.branding-content-shironiku{
  background: url("/Contents/ProductDetailImages/branding/branding-img-02.jpg") center / cover no-repeat;
  min-height: 510px;
  padding: 34px 60px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.branding-content-shironiku::before{
  content: none;
}
.branding-content-shironiku > *{
  position: relative;
  z-index: 1;
  max-width: 520px;
}
.branding-content-shironiku h3,
.branding-content-shironiku p{
  color: #fff;
}
.branding-content-shironiku p{
  color: rgba(255,255,255,0.92);
}

/* Layout（画像左・テキスト右） */
.branding-content-environment,
.branding-content-berkshire,
.branding-content-trust{
  flex-direction: row-reverse;
}

.branding-content-feed-text{
  background: #ffffff;
}

.branding-content-environment,
.branding-content-shironiku,
.branding-content-berkshire,
.branding-content-feed,
.branding-content-trust{
  margin: 0;
}
.branding-content-environment + .branding-content-shironiku,
.branding-content-shironiku + .branding-content-berkshire,
.branding-content-berkshire + .branding-content-feed,
.branding-content-feed + .branding-content-trust{
  margin-top: 0;
}

/* Mobile */
@media (max-width: 768px){
  .branding-wrap{
    max-width: 100%;
  }

  .branding-content-kv{
    min-height: 280px;
    padding: 22px 14px;
  }
  .branding-content-kv h2{
    font-size: 48px;
  }

  /* SP：2カラムは重ねず「テキスト→画像」 */
  .branding-content-environment,
  .branding-content-berkshire,
  .branding-content-feed,
  .branding-content-trust{
    display: flex;
    flex-direction: column;
  }

  .branding-content-environment-text,
  .branding-content-berkshire-text,
  .branding-content-feed-text,
  .branding-content-trust-text{
    position: static;
    padding: 18px 14px;
    background: #ffffff;
    border-radius: 12px;
    margin: 12px 12px 0;
    box-sizing: border-box;
  }

  .branding-content-environment-img,
  .branding-content-berkshire-img,
  .branding-content-feed-img,
  .branding-content-trust-img{
    width: 100%;
    margin-top: 12px;
    overflow: hidden;
  }

  .branding-content-environment-img img,
  .branding-content-berkshire-img img,
  .branding-content-feed-img img,
  .branding-content-trust-img img{
    width: 100%;
    height: auto;
    object-fit: cover;
  }

  /* SP：白肉は背景を見せるため左寄せ */
  .branding-content-shironiku{
    padding: 14px 12px;
    min-height: 250px;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .branding-content-shironiku > *{
    max-width: 80%;
  }
  .branding-content-shironiku > h3,
  .branding-content-shironiku > p{
    padding: 12px 12px;
    color: #fff;
  }
  .branding-content-shironiku > h3{
    margin: 0;
    padding-bottom: 8px;
  }
  .branding-content-shironiku > p{
    margin: 0;
    padding-top: 0;
    color: #fff;
  }

  .branding-wrap h3{
    font-size: 20px;
    margin-bottom: 8px;
  }

  .branding-wrap p{
    font-size: 16px;
  }

  .branding-content-shironiku{
    min-height: 220px;
    padding: 22px 14px;
  }
}