@charset "UTF-8";

.page-about{ 
  padding: 12em 0 0;
}
.page-about .section-head {
  margin-bottom: 3.5em;
}

.about-member-title {
  margin: 7em 0 5em 3em;
}

.wp-block-cover, .wp-block-cover-image{
  padding: 0 1em 4em;
}

/* 白パネル（角丸+影） */
.panel-white {
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.08);
  text-align: center;
  padding: 5.5em;
  margin: 7.5em 0 5em;
}

/* 大見出しの帯 */
.headline-main {
  display: inline-block;
  background-color: var(--color-accent-blue, #19A3A3);
  color: #fff;
  font-weight: 700;
  padding: 0.2em 0.5em;
  border-radius: 4px;
  font-size: 1.4rem;
  line-height: 1.5;
  margin: 0.2em;
}

/* 説明文 */
.description-text {
  margin-top: 2.5em;
}
.about-top-text{
  margin-bottom: 0.8em;
}
.ab-bg{
    background: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* === Columns（親） ============================== */
.wp-block-columns.member-profile{
  /* 好みでここだけ変えればOK */
  --cols: 2;         /* PCの列数 */
  --gap: 6em;       /* 列と行のすき間 */

  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --wp--style--block-gap: var(--gap);
  margin: 0 auto;
    width: 70%;
    padding: 0.5em 0 8.75em;
}

/* 各カラムの幅（等幅） */
.wp-block-columns.member-profile > .wp-block-column{
  flex: 0 1 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));
  text-align: center;           /* 中央揃え（不要なら削除） */
}

/* 画像：正円・サイズ・影など */
.wp-block-columns.member-profile .wp-block-image{
  margin: 0;                    /* WPデフォの余白を打ち消し */
}
.wp-block-columns.member-profile .wp-block-image img {
  width: 100%;
  max-width: 300px; /* 最大幅を300pxに制限 */
  aspect-ratio: 1 / 1;
  object-fit: cover;
  height: auto; /* aspect-ratioに任せる */
}


/* 英語名・日本語名・説明（任意のクラス名に合わせて） */
.wp-block-columns.member-profile .profile-en{
  color: var(--color-accent-blue, #19A3A3);
  font-weight: 600;
  margin-top: 1rem;
}
.wp-block-columns.member-profile .profile-name{
  font-weight: 700;
  font-size: 1.15rem;
  margin-top: .25rem;
}
.wp-block-columns.member-profile .profile-desc{
  font-size: .95rem;
  line-height: 1.7;
  margin-top: .5rem;
}

.company-info-section {
  margin-right: 7.5em;
  margin-bottom: 7.5em;
  margin-left: 7.5em;
  padding: 7.5em;;
  border-radius: 64px;
   box-shadow: -2px 4px 12px 6px rgba(192, 213, 213, 0.35);
}

/* まずは弱いリセット（後から簡単に上書きできる） */
:where(.wp-block-table) td,
:where(.wp-block-table) th {
  border: 0;            /* !important は付けない */
}

/* 事業者概要セクションの見た目 */
.company-info-section table {
  width: 100%;
  border-collapse: collapse;
}
.company-info-section th,
.company-info-section td {
  border: 0;                      /* いったんリセット */
  border-bottom: 1px solid #ddd;  /* 下線だけ付ける */
  padding: 0.8em 1em;
  text-align: left;
  vertical-align: top;
}
.company-info-section th { 
  font-weight: 600; 
  white-space: nowrap; 
}
.our-strength_title{
  margin: 7em 10em 3em 10em;
}
.about_small{
    font-size: 16px;
    color: #999999;
    padding-right: 0.5em;
}

/* === イメージ画像 =============================== */
wp-block-group ab-section ab-hero is-layout-flow wp-block-group-is-layout-flow {
  display: none;
}

/* === レスポンシブ =============================== */
@media (max-width: 900px){
  .wp-block-columns.member-profile{ --cols: 2; --gap: 1.5rem; }
  .wp-block-columns.member-profile .wp-block-image img{ width: 180px; }
}
@media (max-width: 600px){
  .wp-block-columns.member-profile{ --cols: 1; --gap: 1.25rem; }
  .wp-block-columns.member-profile > .wp-block-column{ flex-basis: 100%; }
  .wp-block-columns.member-profile .wp-block-image img{ width: 140px; }
}

@media (max-width: 768px){
  .page-about {
      padding: 112px 0 0;
  }

  .panel-white {
    padding: 40px 24px;
    margin: 0;
  }

  .has-paper-color{
    font-size: 18px;
  }

  .wp-block-group description-text is-layout-constrained wp-block-group-is-layout-constrained p{
    text-align: left;
  }

  .our-strength_title {
    margin: 0 0 40px;
}
      .wp-block-columns.member-profile {
        --gap: 56px;
        width: 90%;
        padding-bottom: 5em;
    }

  .company-info-section {
    margin: 0;
    padding: 80px 24px;
    border-radius:40px;
  }

  .wp-block-cover, .wp-block-cover-image {
    padding: 5em 1em;
  }

  .wp-block-cover is-light{
    padding: 4em 1em 5em;
  }

  .about-member-title {
      margin: 5em 0 2em 3em;
  }
  
  .about-company-img img{
    width: 80%;
    margin: 0 auto;
    display: block;
  }
  
  .about-company-title{
    padding-left: 1em;
  }
  .wp-block-cover {
    background-attachment: scroll !important;
  }

  .page-about .section-head {
      margin-bottom: 40px;
      margin-left: 36px;
  }
  .about_small{
    font-size: 14px;
}
}
