@charset "UTF-8";
/* CSS Document */
/* =========================== */
/* 共通ヘッダー部分 */
/* =========================== */
.desired-header {
  width: 100%;
  margin-top: 120px; /* ヘッダーの高さ分を確保 */
}

.desired-header-img {
  width: 100%;
  height: auto; /* アスペクト比を保持 */
  display: block;
}

.desired-header-sp {
  width: 100%;
  height: auto;
  display: block;
}

/* =========================== */
/* セクションタイトル共通スタイル */
/* =========================== */
.section-title {
  text-align: center;
  color: #008E44;
  font-size: 50px;
  margin-bottom: 1rem;
  font-family: 'Square Peg', cursive;
  letter-spacing: 0.1em; /* 文字間を少し広げる */
  line-height: 1.2;
}
.section-subtitle {
  text-align: center;
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 0.8rem;
}
.section-title-box {
  width: 700px;
  height: 92px;
  max-width: 100%;
  font-size: 32px;
  font-weight: normal;
  color: #000000;
  background-color: #C9E9DC;
  padding: 10px 20px;
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: center;
  margin:0 auto 60px auto;
}
/* =========================== */
/* 求められる人財像とは？セクション */
/* =========================== */
/* セクション1: 求められる人財像とは？ */
.desired-container {
  margin-bottom: 100px;
}

.desired-concept-image-container {
  margin: 3rem 0;
  text-align: center;
}

.desired-concept-pc {
  width: 100%;
  max-width: 1013px;
  height: auto;
}

.desired-concept-sp {
  width: 100%;
  max-width: 276px;
  height: auto;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .section-title-box {
    font-size: 22px;
    margin-bottom: 20px;
  }
  
  .desired-concept-image-container {
    margin: 2rem 0;
  }
}
/* =========================== */
/* セクション共通設定 */
/* =========================== */
.mind-section, .philosophy-section, .attitude-section {
  padding-top: 2rem;
  background-color: #fff;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}
.mind-section .container {
  padding: 10px;
}
.mind-section div.watercolor-bottom, .philosophy-section div.watercolor-bottom, .attitude-section div.watercolor-bottom {
  width: 100%;
  height: 120px;
  background-image: url('/rcs-newgrad/assets/images/desired/watercolor_bottom.png');
  background-size: cover;
  background-repeat: no-repeat;
}
/* =========================== */
/* MINDセクション */
/* =========================== */
.mind-section {
  padding-top: 2rem;
  background-color: #fff;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}

.mind-section .container {
  padding: 0;
  max-width: 1200px;
}

.mind-section .section-title {
  text-align: center;
  color: #008E44;
  font-size: 50px;
  margin-bottom: 1rem;
  font-family: 'Square Peg', cursive;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.mind-section .section-subtitle {
  text-align: center;
  margin-bottom: 30px;
  font-weight: bold;
  font-size: 18px;
}

.mind-content-row {
  margin-top: 20px;
}

.mind-text-col {
  display: flex;
  justify-content: center;
}

.mind-text {
  width: 100%;
  max-width: 570px;
  padding: 0 15px;
}

.mind-text p {
  margin-bottom: 20px;
  line-height: 2;
  font-size: 16px;
  text-align: left;
}

.mind-logo-col {
  display: flex;
  justify-content: center;
}

.mind-logo {
  width: 100%;
  max-width: 450px;
  border: 1px solid #008E44;
  padding: 30px 20px;
}

.symbol-logo {
  text-align: center;
  margin-bottom: 20px;
}

.symbol-logo img {
  width: 100px;
  height: auto;
}

.mind-logo p {
  margin-bottom: 10px;
  line-height: 1.7;
  font-size: 16px;
  text-align: left;
}

.mind-section .watercolor-bottom {
  width: 100%;
  height: 120px;
  background-image: url('/rcs-newgrad/assets/images/desired/watercolor_bottom.png');
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 60px;
}


@media (max-width: 768px) {
  .mind-section {
    margin-bottom: 40px;
    padding-top: 30px;
  }
  
  .mind-section .section-title {
    font-size: 38px;
  }
  
  .mind-section .section-subtitle {
    font-size: 16px;
	margin-bottom: 35px!important;
  }
  .mind-text-col, .mind-logo-col {
    max-width: 310px!important;
	padding: 0!important;
  }
 
  .mind-text p {
    font-size: 16px;
    line-height: 1.8;
  }
  
  .symbol-logo img {
    width: 80px;
	height: auto;
  }
  
  .mind-logo p {
    font-size: 14px;
  }
  
  .mind-section .watercolor-bottom {
    height: 80px;
    margin-top: 40px;
  }
}
/* =========================== */
/* PHILOSOPHYセクション */
/* =========================== */
.philosophy-section {
  padding-top: 2rem;
  background-color: #fff;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}

.philosophy-section .container {
  padding: 10px;
  max-width: 1200px;
  margin: 0 auto;
}

.philosophy-section .section-title {
  text-align: center;
  color: #008E44;
  font-size: 50px;
  margin-bottom: 1rem;
  font-family: 'Square Peg', cursive;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.philosophy-section .section-subtitle {
  text-align: center;
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 0.8rem;
}

.philosophy-content {
  max-width: 900px;
  margin: 0 auto;
}

.philosophy-title {
  font-size: 18px;
  font-weight: bold;
  margin: 30px 0;
}

.philosophy-blocks {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}

.philosophy-blocks .col-md-5 {
  flex: 0 0 auto;
  width: 100%;
  max-width: 375px;
  display: flex;
  justify-content: center;
}

.philosophy-blocks picture {
  width: 100%;
  max-width: 375px;
}

.philosophy-blocks img {
  max-width: 100%;
  height: auto;
}

.philosophy-section div.watercolor-bottom {
  width: 100%;
  height: 120px;
  background-image: url('/rcs-newgrad/assets/images/desired/watercolor_bottom.png');
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 60px;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .philosophy-section {
    margin-bottom: 50px;
  }

  .philosophy-section .section-title {
    font-size: 2rem;
  }

  .philosophy-blocks {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  .philosophy-blocks .col-md-5 {
    max-width: 320px;
  }

  .philosophy-blocks picture {
    max-width: 320px;
  }

  .philosophy-title {
    font-size: 16px;
    margin: 20px 0;
  }

  .philosophy-section div.watercolor-bottom {
    height: 80px;
    margin-top: 40px;
  }
}
/* =========================== */
/* ATTITUDEセクション */
/* =========================== */
.attitude-section {
  padding-top: 2rem;
  background-color: #fff;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}

.attitude-section .container {
  padding: 10px;
  max-width: 1200px;
}

.attitude-section .section-title {
  text-align: center;
  color: #008E44;
  font-size: 50px;
  margin-bottom: 1rem;
  font-family: 'Square Peg', cursive;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.attitude-section .section-subtitle {
  text-align: center;
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 0.8rem;
}

.attitude-intro {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin-bottom: 60px;
}

.attitude-content-row {
  margin: 0 auto;
}

.attitude-diagram {
  text-align: right;
}

.attitude-diagram img {
  max-width: 100%;
  height: auto;
}

.attitude-explanations {
  padding: 0 15px;
}

.attitude-item {
  margin-bottom: 20px;
}

.attitude-item-title {
  color: #7685AC;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}

.attitude-item p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 15px;
}

.attitude-section .watercolor-bottom {
  width: 100%;
  height: 120px;
  background-image: url('/rcs-newgrad/assets/images/desired/watercolor_bottom.png');
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 60px;
}
	/* 追加のフッター余白対策 */
	.footer-section {
	  margin-top: 200px !important;
	}

/* タブレット対応 */
@media (max-width: 991px) {
  .attitude-section {
    margin-bottom: 60px;
  }
  
  .attitude-section .section-title {
    font-size: 40px;
  }
  .attitude-diagram {
  text-align: center;
}

  .attitude-intro {
    font-size: 16px;
    margin-bottom: 30px;
  }
  
  .attitude-diagram-col {
    margin-bottom: 30px;
  }
  
  .attitude-diagram img {
    max-width: 80%;
  }
}

/* スマホ対応 */
@media (max-width: 768px) {
  .attitude-section {
    margin-bottom: 40px;
    padding-top: 30px;
  }
  
  .attitude-section .section-title {
    font-size: 32px;
  }
  
  .attitude-section .section-subtitle {
    font-size: 14px;
  }
  
  .attitude-intro {
    font-size: 15px;
    margin-bottom: 47px!important;
  }
  
  .attitude-diagram-col {
    margin-bottom: 25px;
  }
   .attitude-diagram {
  text-align: center;
}
 
  .attitude-item {
    margin-bottom: 15px;
  }
  
  .attitude-item-title {
    font-size: 15px;
    margin-bottom: 8px;
  }
  
  .attitude-item p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 10px;
  }
  
  .attitude-section .watercolor-bottom {
    height: 80px;
    margin-top: 40px;
  }
}
/* =========================== */
/* スマホ対応 */
/* =========================== */
@media (max-width: 768px) {
  /* ヘッダー画像をスマホ用に */
  .desired-header-bg img {
    content: url("/rcs-newgrad/assets/images/desired/bg_desired_top_sp.png");
  }
  /* パンくずリスト非表示 */
  .breadcrumb-container {
    display: none;
  }
  /* セクションタイトル調整 */
  .section-title {
    font-size: 2rem;
  }
  .section-title-box {
    padding: 0.5rem 2rem;
  }
	/* 追加のフッター余白対策 */
	.footer-section {
	  margin-top: 60px !important;
	}

}