/* ==========================================
   business.css
   事業内容ページ固有スタイル
   ========================================== */

body {
  padding-top: 80px;
}

@media (max-width: 560px) {
  body {
    padding-top: 64px;
  }
}

/* ──────────────────────────────────────
   漁業関連事業 セクション
────────────────────────────────────── */
.business-fishing,
.business-other {
  background-color: #fff;
}
.business-fishing {
  margin-top: 30px;
}
.business-other {
  margin-top: 40px;
}
.business-fishing__hero,
.business-other__hero {
  position: relative;
}

.business-fishing__hero-img,
.business-other__hero-img {
  width: 100%;
  height: 400px;
}

.business-fishing__text-box,
.business-other__text-box {
  position: relative;
  margin: -168px 12% 0 17%;
  background-color: #fff;
  padding: 106px 0 20px 0;
  max-width: 1032px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.business-fishing__title,
.business-other__title {
  font-family: "Shippori Mincho", serif;
  font-size: 40px;
  font-weight: 400;
  color: #1d2e45;
  text-align: center;
  letter-spacing: 1.2px;
  line-height: 1.8;
  margin: 0 0 24px;
  margin-bottom: 40px;
}

.business-fishing__bar,
.business-other__bar {
  width: 70px;
  height: 2px;
  background-color: #968971;
  margin: 0 auto 48px;
}

.business-fishing__lead,
.business-other__lead {
  font-family: "Shippori Mincho", serif;
  font-size: 24px;
  font-weight: 600;
  color: #1d2e45;
  text-align: center;
  letter-spacing: 0.72px;
  line-height: 1.8;
  margin: 0 0 30px;
}

.business-fishing__lead-break--sp {
  display: none;
}

.business-other__lead-break--sp {
  display: none;
}

.business-fishing__body,
.business-other__body {
  font-family: "Shippori Mincho", serif;
  font-size: 18px;
  font-weight: 600;
  color: #1d2e45;
  letter-spacing: 0.54px;
  line-height: 1.8;
  max-width: 803px;
  width: 803px;
  margin: 0 auto;
}

/* ──────────────────────────────────────
   漁業事業 アイテム一覧
────────────────────────────────────── */
.fishing-items {
  max-width: 1160px;
  margin: 0 auto;
  padding: 80px 0;
}

.fishing-item + .fishing-item {
  margin-top: 80px;
}

/* 写真＋テキスト 横並び行 */
.fishing-item__row {
  display: flex;
  align-items: flex-start;
  gap: 62px;
  margin-bottom: 50px;
}

/* 写真：右レイアウト（偶数番目） */
.fishing-item--reverse .fishing-item__row {
  flex-direction: row-reverse;
}

.fishing-item__photo {
  flex-shrink: 0;
  width: 550px;
}

.fishing-item__img {
  display: block;
  width: 550px;
  height: 410px;
  object-fit: cover;
}

.fishing-item__text {
  flex: 1;
}

.fishing-item__title {
  font-family: "Shippori Mincho", serif;
  font-size: 36px;
  font-weight: 600;
  color: #1d2e45;
  line-height: 1.5;
  letter-spacing: 1.08px;
  margin: 0 0 15px;
}

.fishing-item__bar {
  width: 100%;
  height: 2px;
  background-color: #968971;
  margin: 0 0 28px;
}

.fishing-item__lead {
  font-family: "Shippori Mincho", serif;
  font-size: 20px;
  font-weight: 600;
  color: #1d2e45;
  line-height: 1.8;
  letter-spacing: 0.6px;
  margin: 0 0 24px;
}

.fishing-item__lead-break--sp {
  display: none;
}

.fishing-item__body {
  font-family: "Shippori Mincho", serif;
  font-size: 17px;
  font-weight: 600;
  color: #1d2e45;
  line-height: 1.8;
  letter-spacing: 0.51px;
  margin: 0;
}

/* 製品・サービスバー（全幅 1160px / h 104px） */
.fishing-item__service-bar {
  display: flex;
  align-items: center;
  background-color: #f1f3f4;
  height: 104px;
  padding: 34px 50px;
  gap: 70px;
  padding-right: 62px;
  position: relative;
}
.gyogun {
  width: 208px;
  height: 120px;
  position: absolute;
  top: 44px;
  right: -80px;
}

.fishing-item__service-label {
  font-family: "Shippori Mincho", serif;
  font-size: 22px;
  font-weight: 600;
  color: #1d2e45;
  line-height: 1.5;
  letter-spacing: 0.66px;
  white-space: nowrap;
  flex-shrink: 0;
  margin: 0;
}

.fishing-item__service-divider {
  width: 2px;
  height: 48px;
  background-color: #1d2e45;
  flex-shrink: 0;
}

.fishing-item__service-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #1d2e45;
  line-height: 1.6;
  letter-spacing: 3px;
  margin: 0;
}

.fishing-item__btns {
  display: flex;
  gap: 20px;
  justify-content: center;
  width: 100%;
  margin-top: 50px;
}

.fishing-item__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 240px;
  height: 52px;
  border: 1px solid #1d2e45;

  text-decoration: none;
  font-size: 15px;
  font-weight: 400;
  justify-content: flex-start;
  color: #07344d;
  font-family: "Shippori Mincho";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 25.6px */
  letter-spacing: 0.48px;
  padding-left: 20px;
  transition:
    background-color 0.3s,
    color 0.3s;
  position: relative;
}

.fishing-item__btn:hover {
  background-color: #1d2e45;
  color: #fff;
}

.fishing-item__btn-break--sp {
  display: none;
}

.fishing-item__btn-arrow {
  width: 20px;
  height: 8px;
  flex-shrink: 0;
  position: absolute;
  right: 20px;
  transition: right 0.3s;
}
.fishing-item__btn:hover .fishing-item__btn-arrow {
  right: 10px;
}
.matsu {
  width: 151px;
  height: 67px;
  position: absolute;
  left: -51px;
  top: -47px;
}
.nami {
  width: 260px;
  height: 46px;
  position: absolute;
  right: -76px;
  bottom: -22px;
}
/* ──────────────────────────────────────
   その他の事業 アイテム一覧
────────────────────────────────────── */
.other-items {
  max-width: 1160px;
  margin: 0 auto;
  padding: 80px 0 100px;
}

.other-item + .other-item {
  margin-top: 80px;
}

/* 3枚グリッド（ホテル写真など） */
.other-item__gallery {
  display: flex;
  gap: 40px;
  margin-top: 48px;
}

.other-item__gallery-item {
  flex: none;
  text-align: center;
}
.other-item__gallery--2col {
  gap: 60px;
}
.other-item__gallery--2col .other-item__gallery-item {
  width: 550px;
}
.other-item__gallery-img {
  display: block;
  width: 360px;
  height: 380px !important;
  object-fit: cover;
  margin-bottom: 16px;
}

.other-item__gallery-caption {
  text-align: center;
  font-family: "Shippori Mincho";
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%; /* 33px */
  letter-spacing: 0.66px;
  color: #1d2e45;
  text-align: center;
  font-family: "Shippori Mincho";
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%; /* 33px */
  letter-spacing: 0.66px;
}

.other-item__gallery-caption-break--sp {
  display: none;
}

/* 2枚グリッド（コンビニ・不動産など） */
.other-item__gallery--2col .other-item__gallery-item {
  flex: 1;
}

.other-item__gallery--2col .other-item__gallery-img {
  width: 100%;
  height: 380px !important;
}
.other-item.last {
  padding-bottom: 10px;
}
/* グレー背景セクション（漁撈機械・養殖装置など） */
.fishing-bg--gray {
  background-color: #f1f3f4;
}

.fishing-bg--gray .fishing-item__service-bar {
  background-color: #fff;
}

/* 装飾イラスト（波紋） */
.fishing-item__deco {
  display: block;
  width: 80px;
  margin-top: 24px;
}

/* ==========================================
   SP レスポンシブ（〜560px）
   Figma: SP_03_事業内容
   ========================================== */
@media (max-width: 560px) {
  /* 漁業関連事業 / その他の事業 hero + text-box */
  .business-fishing {
    margin-top: 30px;
  }
  .business-other {
    margin-top: 30px;
  }

  .business-fishing__hero-img,
  .business-other__hero-img {
    height: 260px;
  }

  .business-fishing__text-box,
  .business-other__text-box {
    margin-top: -40px;
    max-width: 331px;
    padding: 30px 0 0;
  }

  .business-fishing__title,
  .business-other__title {
    font-size: 24px;
    line-height: 1.6;
    letter-spacing: 0.72px;
    margin: 0 0 20px;
  }

  .business-fishing__bar,
  .business-other__bar {
    margin: 0 auto 24px;
  }

  .business-fishing__lead,
  .business-other__lead {
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: 0.54px;
    margin: 0 0 24px;
  }

  .business-fishing__lead-break--sp {
    display: inline;
  }

  .business-other__lead-break--sp {
    display: inline;
  }

  .business-fishing__body,
  .business-other__body {
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 0.45px;
    width: 100%;
    max-width: 100%;
  }

  /* 漁業事業 / その他の事業 アイテム 共通レイアウト */
  .fishing-items {
    max-width: none;
    padding: 50px 22px;
  }

  .other-items {
    max-width: none;
    padding: 30px 22px;
    margin-top: 40px;
  }

  .fishing-bg--gray .other-items {
    margin-top: 0;
    padding-top: 49px; /* グレー帯の上端 → 写真 49px */
  }

  .fishing-item + .fishing-item,
  .other-item + .other-item {
    margin-top: 0;
  }

  .fishing-item__row,
  .fishing-item--reverse .fishing-item__row {
    flex-direction: column;
    gap: 0;
    margin-bottom: 30px;
  }

  .fishing-item__photo {
    width: 100%;
  }

  .fishing-item__img {
    width: 100%;
    height: 230px;
  }

  .fishing-item__text {
    margin-top: 30px;
  }

  .fishing-item__title {
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.72px;
    margin: 0 0 16px;
  }

  .fishing-item__bar {
    margin: 0 0 20px;
  }

  .fishing-item__lead {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.48px;
    margin: 0 0 20px;
  }

  .fishing-item__lead-break--sp {
    display: inline;
  }

  .fishing-item__body {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: 0.45px;
  }

  /* 装飾イラスト：SPでは製品・サービスボックス右下に小さく配置 */
  .fishing-item__deco {
    display: none;
  }

  .gyogun,
  .matsu,
  .nami {
    top: auto;
    left: auto;
    position: absolute;
  }

  .gyogun {
    width: 125px;
    height: 72px;
    right: -17px;
    bottom: -14px;
  }

  .matsu {
    width: 100px;
    height: 44px;
    right: -10px;
    bottom: -14px;
  }

  .nami {
    width: 176px;
    height: 31px;
    right: -8px;
    bottom: -4px;
  }

  /* 製品・サービス ボックス：横並び → 縦積み */
  .fishing-item__service-bar {
    flex-direction: column;
    align-items: flex-start;
    height: auto;
    padding: 30px 20px;
    gap: 0;
    margin-top: 30px;
  }

  .fishing-item__service-label {
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.54px;
    margin: 0 0 12px;
  }

  .fishing-item__service-divider {
    width: 46px;
    height: 1px;
    margin: 0 0 20px;
  }

  .fishing-item__service-text {
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 2px;
  }

  /* ボタン */
  .fishing-item__btns {
    gap: 17px;
    margin-top: 30px;
  }

  .fishing-item__btn {
    width: 157px;
    height: 52px;
    padding-left: 16px;
    font-size: 15px;
    line-height: 1.3;
    letter-spacing: 0.45px;
  }

  .fishing-item__btn-break--sp {
    display: inline;
  }

  .fishing-item__btn-arrow {
    right: 16px;
  }
  .fishing-item__btn:hover .fishing-item__btn-arrow {
    right: 8px;
  }

  /* ギャラリー（ホテル3枚 / コンビニ・不動産2枚 共通で縦積み） */
  .other-item__gallery {
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin-top: 30px;
  }

  .other-item__gallery-item,
  .other-item__gallery--2col .other-item__gallery-item {
    width: 260px;
  }

  .other-item__gallery-item + .other-item__gallery-item {
    margin-top: 30px;
  }

  .other-item__gallery-img,
  .other-item__gallery--2col .other-item__gallery-img {
    width: 260px;
    height: 260px !important;
    margin-bottom: 8px;
  }

  .other-item__gallery--2col .other-item__gallery-img {
    height: 200px !important;
  }

  .other-item__gallery-caption {
    font-size: 17px;
    line-height: 1.5;
    letter-spacing: 0.51px;
  }

  .other-item__gallery-caption-break--sp {
    display: inline;
  }
}

/* 管理画面の [sp] / [pc] 改行（スマホのみ／PCのみ） */
.business-br--sp {
  display: none;
}

.business-br--pc {
  display: inline;
}

@media (max-width: 560px) {
  .business-br--sp {
    display: inline;
  }

  .business-br--pc {
    display: none;
  }
}
