
/* ---------------------------------代表挨拶---------------------------------
------------------------------------------------------------------ */


/* 代表挨拶セクション */
.greeting-section {

  max-width: 90%;
  margin: 0 auto;
}

/* 代表挨拶のコンテンツ(画像とテキストを横並び) */
.greeting-content {
  display: flex;
  gap: 80px;                    /* 画像とテキストの間隔を広げる */
  align-items: flex-start;
 
}

/* 代表の画像 */
.greeting-image {
  flex-shrink: 0;
}

.greeting-image img {
  width: 300px;
  height: auto;
  border-radius: 16px;         
}

/* 挨拶文 */
.greeting-text {
  flex: 1;
  padding-top: 20px;           
}

.greeting-text p {
  line-height: 2.0;             /* 行間を広げる */
  margin-bottom: 40px;          
}

/* 署名 */
.greeting-signature {
  margin-top: 150px;             /* 署名の上の余白を広げる */
  text-align: right;
  font-weight: bold;

  color: #213E3C;
}


/* ---------------------------------代表挨拶終わり---------------------------------
------------------------------------------------------------------ */
/* ---------------------------------会社概要---------------------------------
------------------------------------------------------------------ */

/* 会社概要セクション */
.company-overview {
 
  max-width: 90%;
  margin: 0 auto;
  
}

/* 会社概要 - 2カラムレイアウト */
.company-info-wrapper {
  display: flex;
  gap: 60px;
  margin: 40px auto 0;  /* 上40px、左右auto（中央寄せ）、下0 */
  align-items: flex-start;
  max-width: 90%;    /* 2カラムの最大幅を制限 */
}

.company-info-column {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.company-info-column dt {
  font-weight: bold;
  margin-bottom: 5px;
  color: #213E3C;
}

.company-info-column dd {
  line-height: 1.6;
}

/* 左列のdd */
.company-info-column:first-child dd {
  margin: 0 0 9px 0;
}

/* 右列のdd */
.company-info-column:last-child dd {
  margin: 0 0 20px 0;
}

/* 左列の最後の項目（TEL）を右列のFAXと揃える */
.company-info-column:first-child dt:nth-of-type(4) {
  margin-top: auto;
}



/* ---------------------------------会社概要終わり---------------------------------
------------------------------------------------------------------ */



/* ---------------------------------アクセス---------------------------------
------------------------------------------------------------------ */

/* アクセスセクション */
.access-section {

  max-width: 90%;
  margin: 0 auto;
  margin-bottom: 180px;
}

/* アクセスコンテンツ（地図と情報を横並び） */
.access-content {
  position: relative;  /* お問い合わせボタンの基準位置 */
  display: flex;
  gap: 60px;
  margin-top: 40px;
  align-items: flex-start;
}

/* 地図 */
.access-map {
  flex-shrink: 0;
}

.access-map iframe {
  width: 526px;
  height: 451px;
  border-radius: 8px;
}

/* アクセス情報 */
.access-info {
  flex: 1;
  padding-top: 20px;
}

.access-info dt {
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 30px;
  
  font-size: 18px;
}

.access-info dt:first-of-type {
  margin-top: 0;
}

.access-info dd {
  line-height: 1.8;

  margin-left: 0;
}

.About-text-contact {
  position: absolute;
  bottom: -25%; 
  right: 10%;  

  
}
/* ---------------------------------アクセス終わり---------------------------------
------------------------------------------------------------------ */

/* ---------------------------------Abouot_Us_1300px---------------------------------
------------------------------------------------------------------ */
  

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

  .access-map iframe {
  width: 400px;
  height: 350px;

}


}
/* ---------------------------------About_Us_1024px---------------------------------
------------------------------------------------------------------ */
  
@media screen and (max-width: 1024px){


.access-map iframe {
width: 300px;
height: 250px;
}
}
/* ---------------------------------About_Us_1024終わりpx---------------------------------
------------------------------------------------------------------ */
  
/* ---------------------------------About_Us_768px---------------------------------
------------------------------------------------------------------ */
  
@media screen and (max-width: 768px){

  /* 代表挨拶 - スマホ対応 */
  .greeting-content {
    flex-direction: column; /* 縦並びに変更 */
    align-items: center; /* 中央揃え */
    gap: 30px; /* 画像とテキストの間隔を調整 */
  }

  .greeting-image img {
    width: 250px; /* スマホ用に画像サイズを調整 */
  }

  .greeting-text {
    padding-top: 0; /* パディングをリセット */
   
  }

  .greeting-signature {
    margin-top: 40px; /* 署名の上の余白を調整 */
   
  }

/* ---------------------------------会社概要-768px---------------------------------
------------------------------------------------------------------ */
  .company-info-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 2列グリッド */
    gap: 15px 20px;
    width: 100%;
  }

  .company-info-column {
    display: contents; /* 子要素を直接グリッドに配置 */
  }

  /* 会社名（左） */
  .company-info-column:first-child dt:nth-of-type(1) {
    grid-column: 1;
    grid-row: 1;
  }
  .company-info-column:first-child dd:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
  }

  /* 設立年（右） */
  .company-info-column:last-child dt:nth-of-type(1) {
    grid-column: 2;
    grid-row: 1;
  }
  .company-info-column:last-child dd:nth-of-type(1) {
    grid-column: 2;
    grid-row: 2;
  }

  /* 代表取締役（全幅） */
  .company-info-column:first-child dt:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 3;
  }
  .company-info-column:first-child dd:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 4;
  }

  /* 従業員数（全幅） */
  .company-info-column:first-child dt:nth-of-type(3) {
    grid-column: 1 / -1;
    grid-row: 5;
  }
  .company-info-column:first-child dd:nth-of-type(3) {
    grid-column: 1 / -1;
    grid-row: 6;
  }

  /* 所在地（全幅） */
  .company-info-column:last-child dt:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 7;
  }
  .company-info-column:last-child dd:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 8;
  }

  /* 主な事業内容（全幅） */
  .company-info-column:first-child dt:nth-of-type(4) {
    grid-column: 1 / -1;
    grid-row: 9;
  }
  .company-info-column:first-child dd:nth-of-type(4) {
    grid-column: 1 / -1;
    grid-row: 10;
  }

  /* TEL（左） */
  .company-info-column:first-child dt:nth-of-type(5) {
    grid-column: 1;
    grid-row: 11;
  }
  .company-info-column:first-child dd:nth-of-type(5) {
    grid-column: 1;
    grid-row: 12;
  }

  /* FAX（右） */
  .company-info-column:last-child dt:nth-of-type(3) {
    grid-column: 2;
    grid-row: 11;
  }
  .company-info-column:last-child dd:nth-of-type(3) {
    grid-column: 2;
    grid-row: 12;
  }

  /* スタイル調整 */
  .company-info-column dt {
    font-weight: bold;
    margin: 0;
    padding-top: 10px;
  }

  .company-info-column dd {
    margin: 0;
    padding-bottom: 10px;
  }


/* ---------------------------------会社概要-768px終わり---------------------------------
------------------------------------------------------------------ */

  
/* ---------------------------------アクセス情報-768px---------------------------------
------------------------------------------------------------------ */

  /* アクセスセクション - スマホ対応 */
  .access-content {
    flex-direction: column; /* 縦並びに変更 */
    align-items: stretch; /* 幅いっぱいに広げる */
    gap: 30px; /* 地図と情報の間隔 */
  }

 

  .access-map iframe {
    width: 100%; /* 画面幅いっぱいに */
    height: 500px; /* 高さを調整 */
  }

  /* アクセス情報 - スマホ対応 */
  .access-info {
    padding-top: 0;
  }

  .access-info dt {
    font-size: 16px; /* フォントサイズを調整 */
    margin-top: 20px;
  }

  /* お問い合わせボタン - スマホ対応 */
.About-text-contact {
  position: absolute;
  bottom: -15%;
  right: 10%;
}

  .About-text-contact svg {
    max-width: 100%; /* SVGを画面幅に収める */
    height: auto;
  }
  .About-text-Tel_SP {
    font-size: 28px;
    font-weight: bold;
  }



/* ---------------------------------アクセス情報-768px終わり---------------------------------
------------------------------------------------------------------ */
}




@media screen and (max-width: 460px) {
    .About-text-contact {
 right: 5%;
    }
}