  /* ---------- Reset ---------- */
    * { box-sizing: border-box; margin: 0; padding: 0; }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial,
        "游ゴシック体", "YuGothic", "メイリオ", Meiryo, sans-serif;
      line-height: 1.7;
      color: #222;
      background: #fff;
    }
    img { max-width: 100%; height: auto; display: block; }
    a { color: inherit; text-decoration: none; }

    /* ---------- Layout ---------- */
    .container {
      width: 100%;
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 16px;
    }

 
    .divider-line {
      width: 80px;
      height: 1px;
      background: #000;
      margin: 16px auto 24px;
    }

    

    /* ---------- Hero ---------- */
    .profile-hero {
      position: relative;
      background: url("../img/profile_top.png") center center / cover no-repeat;
    }

    .hero-text {
      position: relative;
      z-index: 1;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 60px;
      font-weight: bold;
      color: #fff;
    }

       .profile-wrapper {
      max-width: 900px;
      margin: 40px auto;
      text-align: left;
    }

    .profile-row {
      display: flex;
      margin-bottom: 16px;
    }

    .profile-row .label {
      width: 160px;
      font-size: 14px;
    }

    .profile-row .content {
      flex: 1;
      font-size: 14px;
    }

    .record-block {
      margin-bottom: 14px;
    }

    /* ---------- Profile block ---------- */
    .profile-main {
      text-align: center;
    }
    .profile-name-en {
      font-size: 22px;
      letter-spacing: 0.25em;
      margin-bottom: 4px;
    }
    .profile-name-ja {
      font-size: 18px;
      margin-bottom: 8px;
    }
    .profile-role {
      font-size: 13px;
      line-height: 1.8;
      margin-bottom: 16px;
    }

    .profile-table {
      max-width: 600px;
      margin: 0 auto 40px;
      font-size: 14px;
    }
    .profile-table dl {
      display: grid;
      grid-template-columns: 1fr 2fr;
      row-gap: 6px;
      column-gap: 16px;
    }
    .profile-table dt {
      text-align: right;
      font-weight: bold;
    }
    .profile-table dd {
      text-align: left;
      margin: 0;
    }

    .results-title {
      margin-top: 16px;
      font-weight: bold;
    }
    .results-list {
      margin-top: 4px;
      text-align: left;
      padding-left: 1.2em;
      font-size: 14px;
    }
    .results-list li { margin-bottom: 2px; }

    /* ---------- Biography section ---------- */
    .bio-section {
      position: relative;
      padding:10px 60px;
      color: #222;
    }
    .bio-bg {
      position: absolute;
      inset: 0;
      background: url("../img/fish_bg.png") center center / cover no-repeat;
      opacity: 0.5;
    }

    .bio-inner{
      padding:10px 80px;
    }
    
    .bio-text {
      font-size: 14px;
      line-height: 2;
      padding-bottom: 24px;
    }
    .bio-text p{
      margin-bottom: 20px;
    }
    
    @media (max-width: 768px) {
    .page-offset{
      padding-top: 70px;
    }
    
    .profile-wrapper{
      margin:20px auto;
    }  
    .profile-row .content{
      font-size: 10px;
    }              
    .profile-row .label{
      font-size: 10px;
      width: 120px;
    }
    .bio-section{
      padding: 0;
    }
    .bio-inner{
      padding: 10px 20px;
    }
    .bio-text{
      font-size: 10px;
    }
    .bio-text p{
      margin-bottom: 10px;
    }
    .bio-bg{
      background: url(../img/fish_bg.png) right center / cover no-repeat;
    }


    }
  