@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Klee+One:wght@600&display=swap&text=%E4%BA%BA%E3%81%A8%E3%81%BE%E3%81%A1%E3%82%92%E3%81%A4%E3%81%AA%E3%81%8E%E3%80%81%E4%B8%80%E6%AD%A9%E5%89%8D%E3%81%B8%E3%80%82%E9%9D%92%E6%9F%B3%20%E7%AF%A4%E5%A7%8B");
/*
 * 青柳あつし公式サイト｜工程07 プロフィール専用CSS v1.2 (2026-10-22)
 * 前提：工程04 aoyagi-base.css v0.2 / SWELL 子テーマ
 * 対象：/profile の #aoyagi-profile 内、ページタイトル周辺の例外は body:has(#aoyagi-profile) のみ
 * 他ページへの適用は禁止。
 */

/* SWELLのH1はHTMLに残し、視覚的なページタイトルだけHEROへ移す。
 * display:none ではなく視覚的非表示とし、SEO・支援技術上のH1を保持。 */
body:has(#aoyagi-profile) .c-pageTitle {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
}
body:has(#aoyagi-profile) .l-mainContent__inner > .post_content {
  margin-top: 0;
}

/* 1. トークンは共通CSS v0.2を継承。未読込時の配色フォールバックのみ持つ。 */
#aoyagi-profile.aoyagi-profile {
  --ao-p-navy: var(--aoyagi-navy, #07356d);
  --ao-p-deep: var(--aoyagi-navy-deep, #092b58);
  --ao-p-blue: var(--aoyagi-blue, #087ccd);
  --ao-p-text: var(--aoyagi-text, #263c55);
  --ao-p-line: var(--aoyagi-line, #dbe8f4);
  --ao-p-pale: var(--aoyagi-pale, #eff8fd);
  --ao-p-serif: var(--aoyagi-font-serif, "Yu Mincho", "Hiragino Mincho ProN", serif);
  color: var(--ao-p-text);
  font-size: 17px;
  line-height: 1.85;
}
#aoyagi-profile *, #aoyagi-profile *::before, #aoyagi-profile *::after { box-sizing: border-box; }
#aoyagi-profile img { display: block; max-width: 100%; height: auto; }
#aoyagi-profile p { margin-top: 0; }
#aoyagi-profile a { text-underline-offset: 3px; }
#aoyagi-profile :is(h2,h3) { word-break: normal; overflow-wrap: anywhere; }

/* 2. SWELL本文800pxの内側から、プロフィール限定の広幅レイアウトを中央へ展開。 */
#aoyagi-profile .aoyagi-profile__wide,
#aoyagi-profile .aoyagi-profile__breakout {
  position: relative;
  left: 50%;
  width: min(1160px, calc(100vw - 40px));
  max-width: none;
  transform: translateX(-50%);
}
#aoyagi-profile .aoyagi-profile__breakout { width: calc(100vw - var(--swl-scrollbar_width, 0px)); }

/* 3. 見出し装飾：SWELLの汎用見出し帯を、このページ内だけ無効化。 */
.post_content #aoyagi-profile .aoyagi-profile__section-title,
.post_content #aoyagi-profile .aoyagi-profile__name {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
  color: var(--ao-p-navy);
  font-family: var(--ao-p-serif);
  font-weight: 700;
  line-height: 1.45;
}
.post_content #aoyagi-profile .aoyagi-profile__section-title::before,
.post_content #aoyagi-profile .aoyagi-profile__section-title::after,
.post_content #aoyagi-profile .aoyagi-profile__name::before,
.post_content #aoyagi-profile .aoyagi-profile__name::after {
  content: none;
  display: none;
}
#aoyagi-profile .aoyagi-profile__section-title { font-size: clamp(1.45rem, 1.05rem + 1.3vw, 2rem); }
#aoyagi-profile .aoyagi-profile__name { font-size: clamp(1.65rem, 1.2rem + 1.3vw, 2.15rem); }
#aoyagi-profile .aoyagi-profile__name span { display: block; font-size: .48em; font-family: inherit; margin-top: 6px; }

/* 4. HERO。画像文字入れなし、テキストをHTMLで重ねる。 */
#aoyagi-profile .aoyagi-profile__hero {
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: clamp(340px, 33vw, 490px);
  margin-bottom: clamp(36px, 5vw, 58px);
  overflow: hidden;
  background: #d8eafa;
}
#aoyagi-profile .aoyagi-profile__hero-picture,
#aoyagi-profile .aoyagi-profile__hero-overlay { position: absolute; inset: 0; }
#aoyagi-profile .aoyagi-profile__hero-picture img {
  width: 100%; height: 100%; object-fit: cover; object-position: center center;
}
#aoyagi-profile .aoyagi-profile__hero-overlay {
  background: linear-gradient(90deg, rgba(244,250,255,.98) 0%, rgba(245,250,255,.94) 25%, rgba(245,250,255,.59) 46%, rgba(245,250,255,.05) 73%);
}
#aoyagi-profile .aoyagi-profile__hero-copy {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100% - 72px));
  margin-inline: auto;
  padding-block: 40px;
  color: var(--ao-p-deep);
}
#aoyagi-profile .aoyagi-profile__hero-kicker,
#aoyagi-profile .aoyagi-profile__activity-kicker {
  display: block;
  color: var(--ao-p-blue);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .16em;
}
#aoyagi-profile .aoyagi-profile__hero-title {
  margin: 4px 0 4px;
  font-family: var(--ao-p-serif);
  font-size: clamp(2.15rem, 1.3rem + 3vw, 3.8rem);
  font-weight: 700;
  line-height: 1.24;
  letter-spacing: .02em;
}
#aoyagi-profile .aoyagi-profile__hero-message {
  margin-bottom: 14px;
  font-family: var(--ao-p-serif);
  font-size: clamp(1.42rem, 1.04rem + 1.5vw, 2.14rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .025em;
}
#aoyagi-profile .aoyagi-profile__hero-lead {
  max-width: 440px;
  margin: 0;
  font-size: clamp(16px, .83rem + .3vw, 18px);
  font-weight: 550;
  line-height: 1.8;
}

/* 5. プロフィールの三分割：人物写真／基本情報／価値観4カード。 */
#aoyagi-profile .aoyagi-profile__overview {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.02fr) minmax(0,1.5fr);
  gap: clamp(16px, 2vw, 28px);
  align-items: start;
  margin-bottom: clamp(50px, 6vw, 78px);
}
#aoyagi-profile .aoyagi-profile__portrait {
  position: relative;
  overflow: hidden;
  margin: 0;
  border-radius: 10px;
  background: var(--ao-p-pale);
}
#aoyagi-profile .aoyagi-profile__portrait img {
  width: 100%; height: clamp(335px, 36vw, 425px); object-fit: cover; object-position: center top;
}
#aoyagi-profile .aoyagi-profile__portrait figcaption {
  position: absolute;
  right: 0; bottom: 5%; left: 0;
  margin: 0; padding: 14px 12px;
  background: transparent;
  color: #fff;
  font-family: "Klee One", cursive;
  font-size: clamp(22px, 2.1vw, 29px);
  font-weight: 600; font-style: normal;
  line-height: 1.7; letter-spacing: .08em;
  text-align: center;
  text-shadow: 0 2px 5px rgba(0,0,0,.65);
  transform: rotate(-6deg);
}
#aoyagi-profile .aoyagi-profile__portrait figcaption span { display: block; white-space: nowrap; }
#aoyagi-profile .aoyagi-profile__portrait figcaption span + span { padding-left: 2.5em; }
#aoyagi-profile .aoyagi-profile__facts { min-width: 0; }
#aoyagi-profile .aoyagi-profile__name { margin: 0 0 3px; }
#aoyagi-profile .aoyagi-profile__name-en { color: var(--ao-p-blue); font-size: 16px; letter-spacing: .06em; margin-bottom: 12px; }
#aoyagi-profile .aoyagi-profile__intro { margin-bottom: 14px; font-size: 16px; line-height: 1.75; }
#aoyagi-profile .aoyagi-profile__data { margin: 0; font-size: 16px; }
#aoyagi-profile .aoyagi-profile__data > div {
  display: grid; grid-template-columns: 76px minmax(0,1fr); gap: 8px;
  padding: 7px 0; border-bottom: 1px solid var(--ao-p-line);
}
#aoyagi-profile .aoyagi-profile__data dt { color: var(--ao-p-navy); font-weight: 700; }
#aoyagi-profile .aoyagi-profile__data dd { margin: 0; line-height: 1.65; text-wrap: pretty; }
#aoyagi-profile .aoyagi-profile__data dd span { display: inline-block; white-space: nowrap; }
#aoyagi-profile .aoyagi-profile__human { margin-top: 12px; color: #405c78; font-size: 16px; line-height: 1.75; }
#aoyagi-profile .aoyagi-profile__value-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
#aoyagi-profile .aoyagi-profile__value {
  min-width: 0;
  padding: clamp(14px, 1.6vw, 19px);
  border: 1px solid var(--ao-p-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(7,53,109,.045);
}
#aoyagi-profile .aoyagi-profile__value-num { display: block; font-size: 14px; font-weight: 800; letter-spacing: .1em; color: var(--ao-p-blue); }
.post_content #aoyagi-profile .aoyagi-profile__value h3 {
  margin: 6px 0 7px; padding: 0; border: 0; background: transparent;
  color: var(--ao-p-navy); font-size: clamp(17px, .84rem + .45vw, 19px);
  font-weight: 700; line-height: 1.45;
}
#aoyagi-profile .aoyagi-profile__value h3::before,
#aoyagi-profile .aoyagi-profile__value h3::after { display: none; content: none; }
#aoyagi-profile .aoyagi-profile__value p { margin-bottom: 0; font-size: 16px; line-height: 1.75; }

/* 6. 歩み／活動：2カラム（PC）、1カラム（SP）。 */
#aoyagi-profile .aoyagi-profile__story {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: clamp(20px, 2.3vw, 34px);
  margin-bottom: clamp(54px, 6vw, 82px);
}
#aoyagi-profile .aoyagi-profile__history {
  padding: clamp(20px, 2.3vw, 30px);
  border-radius: 14px;
  background: linear-gradient(180deg,#f2faff,#eaf5fd);
}
#aoyagi-profile .aoyagi-profile__timeline {
  position: relative;
  list-style: none;
  margin: 0; padding: 0 0 0 22px;
}
#aoyagi-profile .aoyagi-profile__timeline::before {
  content: ""; position: absolute; top: 15px; bottom: 18px; left: 5px;
  width: 2px; background: #91c9ed;
}
#aoyagi-profile .aoyagi-profile__timeline li {
  position: relative;
  display: grid;
  grid-template-columns: 90px minmax(0,1fr);
  gap: 10px;
  padding: 0 0 16px;
  margin: 0;
}
#aoyagi-profile .aoyagi-profile__timeline li:last-child { padding-bottom: 0; }
#aoyagi-profile .aoyagi-profile__timeline li::before {
  content: ""; position: absolute; width: 11px; height: 11px; left: -21px; top: 6px;
  border-radius: 50%; background: #118fe0;
}
#aoyagi-profile .aoyagi-profile__timeline time,
#aoyagi-profile .aoyagi-profile__timeline-date { color: var(--ao-p-navy); font-weight: 700; font-size: 16px; }
.post_content #aoyagi-profile .aoyagi-profile__timeline h3 {
  margin: 0 0 2px; padding: 0; border: 0; background: transparent;
  color: var(--ao-p-navy); font-size: 17px; font-weight: 700; line-height: 1.5;
}
#aoyagi-profile .aoyagi-profile__timeline h3::before,
#aoyagi-profile .aoyagi-profile__timeline h3::after { display: none; content: none; }
#aoyagi-profile .aoyagi-profile__timeline p { margin: 0; font-size: 16px; line-height: 1.65; }
#aoyagi-profile .aoyagi-profile__activities-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: start; gap: 8px 16px; }
#aoyagi-profile .aoyagi-profile__text-link { display: inline-flex; min-height: 44px; align-items: center; color: var(--ao-p-navy); font-size: 16px; font-weight: 700; }
#aoyagi-profile .aoyagi-profile__activity-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
#aoyagi-profile .aoyagi-profile__activity-card {
  display: flex; flex-direction: column; min-width: 0; min-height: 200px;
  overflow: hidden; border-radius: 10px; border: 1px solid var(--ao-p-line);
  background: white;
}
#aoyagi-profile .aoyagi-profile__activity-card--photo img {
  width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; object-position: center;
}
#aoyagi-profile .aoyagi-profile__activity-caption { padding: 14px; flex: 1; display: flex; flex-direction: column; }
.post_content #aoyagi-profile .aoyagi-profile__activity-caption h3 {
  margin: 0 0 6px; padding: 0; border: 0; background: transparent;
  color: var(--ao-p-navy); font-weight: 700; font-size: 17px; line-height: 1.5;
}
#aoyagi-profile .aoyagi-profile__activity-caption h3::before,
#aoyagi-profile .aoyagi-profile__activity-caption h3::after { display: none; content: none; }
#aoyagi-profile .aoyagi-profile__activity-caption p { margin: 0; font-size: 16px; line-height: 1.7; }
#aoyagi-profile .aoyagi-profile__activity-card--type {
  justify-content: flex-end;
  background: linear-gradient(140deg, #eaf6ff 0%, #f5fbff 100%);
}
#aoyagi-profile .aoyagi-profile__activity-card--type-alt { background: linear-gradient(140deg, #f0f9ff 0%, #e8f1fa 100%); }
#aoyagi-profile .aoyagi-profile__activity-card--type .aoyagi-profile__activity-caption {
  display: flex; flex-direction: column; justify-content: flex-end; gap: 6px;
}
#aoyagi-profile .aoyagi-profile__activity-note { margin: 14px 0 0; font-size: 16px; }

/* 7. 役職は必要な人だけ開いて読める。H1/H2階層は追加しない。 */
#aoyagi-profile .aoyagi-profile__roles-details { margin-top: 10px; border-top: 1px solid var(--ao-p-line); font-size: 16px; }
#aoyagi-profile .aoyagi-profile__roles-details summary {
  min-height: 44px; display: flex; align-items: center; cursor: pointer; padding-block: 9px;
  color: var(--ao-p-navy); font-weight: 700; line-height: 1.5;
}
#aoyagi-profile .aoyagi-profile__roles-details summary::after { content: "+"; margin-left: auto; font-weight: 700; font-size: 1.2rem; }
#aoyagi-profile .aoyagi-profile__roles-details[open] summary::after { content: "−"; }
#aoyagi-profile .aoyagi-profile__roles-details ul { padding-left: 1.3em; margin: 0 0 12px; }
#aoyagi-profile .aoyagi-profile__roles-details li { margin-bottom: 6px; }
#aoyagi-profile .aoyagi-profile__activity-caption a {
  display: inline-flex; align-items: center; min-height: 44px;
  margin-top: auto; padding-top: 7px; color: var(--ao-p-navy); font-size: 16px; font-weight: 700;
}

/* 8. 私の想い：写真左・文章右。 */
#aoyagi-profile .aoyagi-profile__message {
  display: grid; grid-template-columns: minmax(0,.93fr) minmax(0,1.7fr);
  gap: 0; align-items: stretch;
  overflow: hidden; border-radius: 14px;
  margin-bottom: clamp(45px, 5vw, 72px);
  background: linear-gradient(120deg,#eaf7ff,#f6fbff);
}
#aoyagi-profile .aoyagi-profile__message-photo img { width: 100%; height: 100%; min-height: 300px; object-fit: cover; object-position: center; }
#aoyagi-profile .aoyagi-profile__message-body { padding: clamp(22px, 3.4vw, 46px); }
#aoyagi-profile .aoyagi-profile__message-body p { margin: 0 0 13px; font-size: 17px; line-height: 1.9; }
#aoyagi-profile .aoyagi-profile__message-body .aoyagi-profile__signature {
  margin: 20px 0 6px; color: var(--ao-p-navy);
  font-family: "Klee One", cursive;
  font-size: clamp(29px, 2.7vw, 36px); font-weight: 600; font-style: normal;
  letter-spacing: .025em; line-height: 1.5; text-align: right;
  transform: none;
  white-space: nowrap;
}

/* 9. CTAはHEROと同じ実写真を薄く再利用。背景は装飾、文字はHTML。 */
#aoyagi-profile .aoyagi-profile__cta {
  min-height: 250px;
  display: grid;
  align-items: center;
  padding: clamp(30px, 4vw, 60px) 24px;
  background: linear-gradient(90deg,rgba(233,247,255,.96),rgba(233,247,255,.78)),
    url("/wp-content/uploads/2026/10/aoyagi-profile-hero-pc.webp") center 44% / cover no-repeat;
}
#aoyagi-profile .aoyagi-profile__cta-inner { width: min(1040px, 100%); margin-inline: auto; }
#aoyagi-profile .aoyagi-profile__cta-kicker {
  margin: 0 0 8px; color: var(--ao-p-navy); font-family: var(--ao-p-serif);
  font-size: clamp(1.3rem, .9rem + 1.6vw, 2rem); font-weight: 700;
}
.post_content #aoyagi-profile .aoyagi-profile__cta h2 {
  margin: 0 0 10px; padding: 0; border: 0; background: transparent;
  color: var(--ao-p-navy); font-size: clamp(1.2rem,1rem + .65vw,1.6rem); line-height: 1.5;
}
#aoyagi-profile .aoyagi-profile__cta h2::before,
#aoyagi-profile .aoyagi-profile__cta h2::after { display: none; content: none; }
#aoyagi-profile .aoyagi-profile__cta p { line-height: 1.8; }
#aoyagi-profile .aoyagi-profile__cta-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
#aoyagi-profile .aoyagi-profile__cta .aoyagi-button {
  min-height: 48px; padding-inline: 20px; text-decoration: none;
}
#aoyagi-profile .aoyagi-profile__cta .aoyagi-button:hover { color: white; }
#aoyagi-profile .aoyagi-profile__cta .aoyagi-button--outline:hover { color: var(--ao-p-deep); }

/* 10. Breakpoints：タブレット時は人物＋情報、その下に価値観を置く。 */
@media (max-width: 1000px) {
  #aoyagi-profile .aoyagi-profile__overview {
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  }
  /* 768-1000px: timeline and activity grid must not become two narrow nested columns. */
  #aoyagi-profile .aoyagi-profile__story {
    grid-template-columns: minmax(0,1fr);
  }
  #aoyagi-profile .aoyagi-profile__values { grid-column: 1 / -1; }
  #aoyagi-profile .aoyagi-profile__portrait img { height: 450px; }
}
@media (max-width: 767px) {
  #aoyagi-profile .aoyagi-profile__wide { width: min(100% ,calc(100vw - 28px)); }
  #aoyagi-profile .aoyagi-profile__breakout { width: calc(100vw - var(--swl-scrollbar_width, 0px)); }
  #aoyagi-profile .aoyagi-profile__hero {
    align-items: flex-end;
    min-height: min(700px, calc(100svh - 88px));
    max-height: 740px;
    margin-bottom: 32px;
  }
  #aoyagi-profile .aoyagi-profile__hero-picture img { object-position: 52% 20%; }
  #aoyagi-profile .aoyagi-profile__hero-overlay {
    background: linear-gradient(180deg, rgba(237,248,255,.08) 0%, rgba(237,248,255,.1) 38%, rgba(237,248,255,.97) 74%, rgba(237,248,255,.99) 100%);
  }
  #aoyagi-profile .aoyagi-profile__hero-copy { width: calc(100% - 38px); padding-block: 18px 24px; }
  #aoyagi-profile .aoyagi-profile__hero-title { font-size: 2.3rem; }
  #aoyagi-profile .aoyagi-profile__hero-message { font-size: clamp(23px, 6vw, 29px); }
  #aoyagi-profile .aoyagi-profile__hero-lead { font-size: 16px; }
  #aoyagi-profile .aoyagi-profile__overview,
  #aoyagi-profile .aoyagi-profile__story,
  #aoyagi-profile .aoyagi-profile__message { grid-template-columns: minmax(0,1fr); }
  #aoyagi-profile .aoyagi-profile__overview { gap: 22px; margin-bottom: 50px; }
  #aoyagi-profile .aoyagi-profile__portrait { max-width: 520px; width: 100%; margin-inline: auto; }
  #aoyagi-profile .aoyagi-profile__portrait img { height: 430px; object-position: center 15%; }
  #aoyagi-profile .aoyagi-profile__values { grid-column: auto; }
  #aoyagi-profile .aoyagi-profile__value-grid,
  #aoyagi-profile .aoyagi-profile__activity-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
  #aoyagi-profile .aoyagi-profile__value { padding: 14px 12px; }
  #aoyagi-profile .aoyagi-profile__story { gap: 34px; }
  #aoyagi-profile .aoyagi-profile__message-photo img { height: 260px; min-height: 0; object-position: center 27%; }
  #aoyagi-profile .aoyagi-profile__message-body { padding: 24px 20px; }
  #aoyagi-profile .aoyagi-profile__cta { background-position: 63% center; text-align: center; }
  #aoyagi-profile .aoyagi-profile__cta-actions { justify-content: center; }
}
@media (max-width: 440px) {
  #aoyagi-profile .aoyagi-profile__value h3 { font-size: 17px; }
  #aoyagi-profile .aoyagi-profile__value p { font-size: 16px; }
  #aoyagi-profile .aoyagi-profile__timeline li { grid-template-columns: 78px minmax(0,1fr); gap: 8px; }
  #aoyagi-profile .aoyagi-profile__timeline h3 { font-size: 16px; }
  #aoyagi-profile .aoyagi-profile__activity-grid { gap: 14px; }
  #aoyagi-profile .aoyagi-profile__activity-caption { padding: 16px; }
  #aoyagi-profile .aoyagi-profile__activity-card { min-height: 0; }
  #aoyagi-profile .aoyagi-profile__cta-actions .aoyagi-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  #aoyagi-profile *, #aoyagi-profile *::before, #aoyagi-profile *::after {
    scroll-behavior: auto; transition-duration: 0s; animation-duration: 0s;
  }
}

/* v1.1 review: mobile minimum legibility and card density. */
@media (max-width: 767px) {
  #aoyagi-profile.aoyagi-profile { font-size: 16px; }
  #aoyagi-profile .aoyagi-profile__activity-caption h3,
  #aoyagi-profile .aoyagi-profile__timeline h3,
  #aoyagi-profile .aoyagi-profile__value h3 { font-size: 17px; }
  #aoyagi-profile .aoyagi-profile__intro,
  #aoyagi-profile .aoyagi-profile__data,
  #aoyagi-profile .aoyagi-profile__human,
  #aoyagi-profile .aoyagi-profile__value p,
  #aoyagi-profile .aoyagi-profile__timeline time,
  #aoyagi-profile .aoyagi-profile__timeline-date,
  #aoyagi-profile .aoyagi-profile__timeline p,
  #aoyagi-profile .aoyagi-profile__activity-caption p,
  #aoyagi-profile .aoyagi-profile__activity-caption a,
  #aoyagi-profile .aoyagi-profile__activity-note,
  #aoyagi-profile .aoyagi-profile__roles-details,
  #aoyagi-profile .aoyagi-profile__message-body p { font-size: 16px; }
}

/* v1.2 SWELL実機補正：このプロフィールだけHERO前後の外枠余白を整理。 */
body:has(#aoyagi-profile) #content {
  padding-top: 0;
  margin-bottom: 0;
}
