/* CSS Document */

/* 代表プロフィールメッセージ欄 */
.profile-bg{
  background-color: #0F94D4;
  padding-top: 5rem;
}

.profile h3{
  font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
  font-weight: 600;
  text-align: center;
  font-size: clamp(2.2rem, 2.8vw + 1rem, 3.2rem);
  color: #fff;
  line-height: 2.5;
  margin: 6rem 0 0 0;
  padding-bottom: 3rem;
}
.profile h3 span{
  color: #FFD600;
}

/* 基本データ欄 */
.date-bg{
  background-color: #FFFDE6;
}

.white-bg {
  background-color: #fff;
}

.white-bg .row{
  align-items: center;
  padding: 4.2rem 0; /* 余白を少し狭める */
}

.profile-photo{
  width: 50%;
  max-width: 320px; /* 画像を少し小さくして間を狭める */
  height: auto;
  display: block;
}

.profile-text{
  padding: 0 0.6rem; /* テキスト側の内側余白を小さく */
  font-family: 'Noto Sans JP', 'Zen Maru Gothic', sans-serif;
}

.profile-text .catch{
  color: #0F94D4; 
  font-size: 2.0rem;
  font-size: 20px; 
  font-weight: bold;
  line-height: 1.5; 
  display: block;
  margin-bottom: 3rem;
}

.profile-text .role{
  color: #000;
  font-size: 2rem;
  font-size: 20px;
  font-weight: 500;
  margin: 0 0 0.1rem 0;
}

.profile-text .name{
  display: block;
  font-weight: 700;
  font-size: 3rem; 
  font-size: 30px;
  margin: 0.2rem 0 0 0;
}

.profile-text .furigana{
  font-size: 2rem; 
  font-size: 20px; 
  color: #000;
  margin-top: 0.2rem;
}
.date{
  padding-top: 8rem;
  padding-bottom: 8rem;
}

/* 基本データ表 */
.date-table{
  margin-top: 6rem;
  padding-bottom: 13rem;
}
.date-table dl{
    display: flex;
    flex-wrap: wrap;
    line-height: 1;
    font-size: 16px;
    font-size: 1.6rem;
    width: 80%;
    margin: 5rem auto 3rem;
}
.date-table dt{
    border-bottom: solid 1.5px rgba(146, 146, 146, 0.5);
    width: 25%;
    font-weight: 800;
    color: #0F94D4;
    padding: 0 0 1.5rem 2rem;
    margin-bottom: 2.2rem;
    line-height: 2;
}
.date-table dd{
    border-bottom: solid 1.5px rgba(146, 146, 146, 0.5);
    width: 75%;
    font-weight: 400;
    padding: 0 0 2rem 2rem;
    margin-bottom: 2.2rem;
    line-height: 2;
}
.date-table dl{ margin: 0; }
.date-table dl dt{
  position: relative;
  padding-left: 32px;
  margin-top: 0.75rem;
  font-weight: 600;
}
.date-table dl dt::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-image: url("../img/circle_arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.date-table dl dd{ margin: 0 0 1rem 0; padding-left: 32px; }


.data-list{ margin: 0; }
.data-item{
  display: flex;
  align-items: flex-start;
  border-bottom: 1.5px solid #C4C4C4;
  padding: 1.5rem 0;
  gap: 1rem;
}
.data-label{
  display:flex;
  align-items:center;
  gap:0.6rem;
  min-width: 160px; /* ラベル列の幅（調整可） */
}
.data-label .dt-text{
  color: #0F94D4;
  font-weight: 700;
}
.dt-icon{ width:20px; height:20px; display:inline-block; }
.data-value{ flex:1; color:#333; text-align: justify;}


/* 経歴欄 */
.about-bg{
  background-color: #B8E8FF;
  padding-bottom: 8rem;
}
.about-bg p{
  margin-bottom: 9rem;
  line-height: 2.3;
  text-align: justify;
}

.history-bg {
  background-color: #fff;
}

.history-heading{
  font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
  font-weight: 700;
  color: #109DE0;
  font-size:clamp(2rem, 2.8vw + 1rem, 2.2rem);
  margin-bottom: 0rem;
}

.history-heading.mb-h4{
  margin-bottom: 2rem;
}

.history-row{
  align-items: center;
}
.history-row p {
  text-align: justify;
  line-height: 2.0;
}
.history-emphasis{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  color: #DE6641;
  font-size: 1.8rem;
  font-size: 18px;
}

.history-photo{
  max-width: 100%;
  height: auto;
}
.history-space {
  margin-bottom: 13rem;
}

/* 取得資格一覧 */
.qualification-bg{
  background-color: #B8E8FF;
  padding-bottom: 8rem;
}
.qualification-list {
  background-color: #fff;
  padding-top: 8rem;
  padding-bottom: 8rem;
  border-radius: 5rem;
  padding-left: 8rem;
}
.qualification-list li{
  font-family: 'Noto Sans JP', sans-serif;
  font-size: clamp(1.7rem, 2vw, 2rem);
  color: #231815;
  margin-bottom: 1.5rem;
  font-weight: 500;
}
@media only screen and (max-width: 991px){
.history-heading{
  margin-bottom: 2rem;
}}
@media only screen and (max-width: 767px){
  .profile-flex{ flex-direction: column-reverse; text-align: center; }
  .profile-left{ width: 100%; }
  .profile-right{ width: 100%; }
  .profile-text{ padding: 1rem 0; }
  .profile-photo{ max-width: 260px; margin: 0 auto; }
}

@media only screen and (max-width: 767px){
  .data-item{ flex-direction: column; align-items: flex-start; }
  .data-label{ min-width: auto; margin-bottom: 0.4rem; }
}

/* スマホ幅で履歴・お問い合わせの画像を中央揃え */
@media only screen and (max-width: 767px){
  .history-photo,
  .contact-photo{
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 575px){
.qualification-list {
  padding-left: 0.5rem;
}}
