/* =========================================================
   メディア「すわるたつあるく通信」
   uandme.jp（株式会社ユー＆ミー）のメディア部分のレイアウトを移植。
   色はすわるたつあるくのピンク、書体は游ゴシック（サイト共通）に置き換え。
   文字の大きさは 12px を下限にしている。
   ========================================================= */
.p-media {
  --media-pink: #ec7e95;          /* ブランドのピンク：線・飾り */
  --media-accent: #c2456a;        /* 濃いピンク：文字・ボタン（白地・白文字で読める濃さ） */
  --color-00_black: #30383d;
  --color-00_white: #ffffff;
  --color-01_black: #30383d;
  --color-01_white: #f5f9fb;
  --color-01-gray: #e3e8ea;
  --color-02-gray: #68747a;
  --color-03-gray: #68747a;
  --color-04-gray: #8a959b;
  --color-01-green: #3f8fb8;
  --line-height-l: 2;
  --line-height-m: 1.75;
  --line-height-s: 1.5;
  --line-height-xs: 1.3;
}

/* ---------- uandme.jp の土台（リセット・PC/SP の出し分け）をメディアの範囲だけに適用 ---------- */
:where(.p-media) :where(ul, ol) { list-style: none; margin: 0; padding: 0; }
:where(.p-media) :where(figure) { margin: 0; }
:where(.p-media) :where(button) { -webkit-appearance: none; appearance: none; background-color: transparent; border: 0; border-radius: 0; padding: 0; cursor: pointer; }
:where(.p-media) :where(input[type=text]) { -webkit-appearance: none; appearance: none; border: 0; font: inherit; color: inherit; }
:where(.p-media) :where(select) { font: inherit; }
:where(.p-media) :where(h1, h2, h3) { font-weight: inherit; }
@media screen and (max-width: 767px) { .p-media .pc { display: none !important; } }
@media screen and (min-width: 768px) { .p-media .sp { display: none !important; } }
.c-mediaLead {
  padding-block: 8vw 8vw;
  align-items: center;
    display: flex;
  justify-content: space-between;
}
.c-mediaLead__title {
  margin-left: -2.6667vw;
  width: 52.2667vw;
}
.c-mediaLead__text {
  font-size: max(12px, 2.4vw);
  line-height: 1.5;
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .c-mediaLead {
    padding-block: clamp(30px, 3.9063vw, 62.5px) clamp(33px, 4.2969vw, 68.75px);
    justify-content: flex-start;
  }
  .c-mediaLead__title {
    flex: 0 0 clamp(174.6px, 22.7344vw, 363.75px);
    margin-left: clamp(-18.75px, -1.1719vw, -9px);
    margin-right: clamp(27px, 3.5156vw, 56.25px);
    width: clamp(174.6px, 22.7344vw, 363.75px);
  }
  .c-mediaLead__text {
    font-size: clamp(12px, 1.1719vw, 18.75px);
    line-height: 1;
    margin-right: clamp(60px, 7.8125vw, 125px);
    white-space: nowrap;
  }
}
.c-mediaList__item {
  border-bottom: 0.2667vw solid var(--color-01-gray);
  margin-bottom: 5.8667vw;
  padding: 0 2.6667vw 3.4667vw 0;
  position: relative;
}
.c-mediaList__item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.c-mediaList__link {
  gap: 5.3333vw;
  align-items: flex-start;
    display: flex;
  justify-content: flex-start;
}
.c-mediaList__thumbnail {
  flex: 0 0 25.8667vw;
  margin: 0;
}
.c-mediaList__thumbnail img {
  border-radius: 2.6667vw;
}
.c-mediaList__main {
  flex: 0 0 calc(100% - 28.5333vw);
}
.c-mediaList__title {
  color: var(--color-01_black);
  font-size: max(12px, 2.9333vw);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin: 0 0 2.6667vw;
}
.c-mediaList__category {
  background-color: var(--media-accent);
  border-radius: 2.9333vw;
  color: var(--color-00_white);
  display: inline-block;
  font-size: max(12px, 1.8667vw);
  font-weight: 700;
  line-height: 1;
  margin: 0 0 2.6667vw;
  padding: 0.5333vw 2.1333vw;
}
.c-mediaList__info {
  align-items: flex-start;
    display: flex;
  justify-content: flex-start;
}
.c-mediaList__date, .c-mediaList__author {
  color: var(--color-03-gray);
  font-size: max(12px, 2.1333vw);
  font-weight: 600;
  line-height: 1;
}
.c-mediaList__date {
  margin-right: 1.8667vw;
}
.c-mediaList__sns {
  gap: 1.3333vw;
  align-items: center;
  bottom: 4vw;
    display: flex;
  justify-content: center;
  position: absolute;
  right: 2.6667vw;
}
.c-mediaList__snsLink {
  align-items: center;
  background-color: var(--color-00_black);
  border-radius: 50%;
    display: flex;
  height: 4.5333vw;
  justify-content: center;
  width: 4.5333vw;
}
.c-mediaList__snsIcon {
  height: 2.6667vw;
  width: 2.6667vw;
}
.c-mediaList__snsIcon use {
  fill: var(--color-00_white);
}
.c-mediaList__btn {
  height: 8.8vw;
  margin: 6.1333vw auto 0;
  width: 44vw;
}
.c-mediaList__btn a {
  align-items: center;
  background-color: var(--media-accent);
  border-radius: 8.8vw;
  color: var(--color-00_white);
    display: flex;
  font-size: max(12px, 3.2vw);
  font-weight: 700;
  height: 100%;
  justify-content: center;
  line-height: 1;
  width: 100%;
}
.c-mediaList__pager {
  gap: 3.2vw;
  align-items: flex-start;
    display: flex;
  justify-content: center;
  line-height: 1;
  margin: 4.5333vw auto 0;
}
.c-mediaList__pager .page-numbers {
  color: var(--color-01_black);
  font-size: max(12px, 3.4667vw);
  font-weight: 600;
}
.c-mediaList__pager .page-numbers.current {
  color: var(--media-accent);
}
@media print, screen and (min-width:768px) {
  .c-mediaList__item {
    border-bottom: clamp(0.6px, 0.0781vw, 1.25px) solid var(--color-01-gray);
    margin-bottom: clamp(21.6px, 2.8125vw, 45px);
    padding: 0 clamp(16.2px, 2.1094vw, 33.75px) clamp(13.8px, 1.7969vw, 28.75px) 0;
  }
  .c-mediaList__link {
    gap: clamp(21px, 2.7344vw, 43.75px);
  }
  .c-mediaList__link:hover .c-mediaList__thumbnail img {
    scale: 1.1;
  }
  .c-mediaList__thumbnail {
    border-radius: clamp(12px, 1.5625vw, 25px);
    flex: 0 0 clamp(126.6px, 16.4844vw, 263.75px);
    margin: 0;
    overflow: hidden;
  }
  .c-mediaList__thumbnail img {
    border-radius: clamp(12px, 1.5625vw, 25px);
    transition: scale 300ms;
  }
  .c-mediaList__main {
    flex: 0 0 calc(100% - clamp(147.6px, 19.2188vw, 307.5px));
  }
  .c-mediaList__title {
    font-size: clamp(12px, 1.4844vw, 23.75px);
    height: clamp(54px, 7.0313vw, 112.5px);
    margin: clamp(6px, 0.7813vw, 12.5px) 0 0;
  }
  .c-mediaList__category {
    border-radius: clamp(6.6px, 0.8594vw, 13.75px);
    font-size: clamp(12px, 0.9375vw, 15px);
    margin: 0 0 clamp(6px, 0.7813vw, 12.5px);
    padding: clamp(1.8px, 0.2344vw, 3.75px) clamp(6px, 0.7813vw, 12.5px);
  }
  .c-mediaList__date, .c-mediaList__author {
    font-size: clamp(12px, 0.9375vw, 15px);
  }
  .c-mediaList__date {
    margin-right: clamp(6px, 0.7813vw, 12.5px);
  }
  .c-mediaList__sns {
    gap: clamp(3px, 0.3906vw, 6.25px);
    bottom: clamp(24px, 3.125vw, 50px);
    right: clamp(16.2px, 2.1094vw, 33.75px);
  }
  .c-mediaList__snsLink {
    height: clamp(15.6px, 2.0313vw, 32.5px);
    transition: background-color 200ms;
    width: clamp(15.6px, 2.0313vw, 32.5px);
  }
  .c-mediaList__snsLink:hover {
    background-color: var(--media-accent);
  }
  .c-mediaList__snsIcon {
    height: clamp(9px, 1.1719vw, 18.75px);
    width: clamp(9px, 1.1719vw, 18.75px);
  }
  .c-mediaList__snsIcon use {
    fill: var(--color-00_white);
  }
  .c-mediaList__btn {
    height: clamp(19.8px, 2.5781vw, 41.25px);
    margin: clamp(43.8px, 5.7031vw, 91.25px) auto 0;
    width: clamp(99.6px, 12.9688vw, 207.5px);
  }
  .c-mediaList__btn a {
    border-radius: clamp(19.8px, 2.5781vw, 41.25px);
    font-size: clamp(12px, 1.0156vw, 16.25px);
    transition: background-color 200ms;
  }
  .c-mediaList__btn a:hover {
    background-color: var(--color-01_black);
  }
  .c-mediaList__pager {
    gap: clamp(7.2px, 0.9375vw, 15px);
    margin: clamp(18px, 2.3438vw, 37.5px) auto 0;
  }
  .c-mediaList__pager .page-numbers {
    font-size: clamp(12px, 1.0156vw, 16.25px);
    transition: color 300ms;
  }
  .c-mediaList__pager .page-numbers:hover {
    color: var(--media-accent);
  }
}
.c-navigation {
}
.c-navigation__select {
  height: 8vw;
  margin-left: -2.6667vw;
  position: relative;
  width: 50.6667vw;
}
.c-navigation__select::before {
  border: 0;
  border-bottom: solid 0.4vw var(--color-01_white);
  border-right: solid 0.4vw var(--color-01_white);
  content: "";
  height: 2.6667vw;
  position: absolute;
  right: 4.8vw;
  top: 1.8667vw;
  transform: rotate(45deg);
  width: 2.6667vw;
}
.c-navigation__select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--media-accent);
  border: none;
  border-radius: 8vw;
  color: var(--color-00_white);
  display: block;
  font-size: max(12px, 3.2vw);
  font-weight: 700;
  height: 100%;
  line-height: 1;
  padding-bottom: 0.2667vw;
  padding-left: 4vw;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-navigation {
    margin: 0 auto clamp(24px, 3.125vw, 50px);
  }
  .c-navigation__list {
    align-items: stretch;
        display: flex;
    justify-content: flex-start;
    position: relative;
  }
  .c-navigation__list::before {
    background-color: #c9caca;
    bottom: 0;
    content: "";
    display: block;
    height: clamp(1.2px, 0.1563vw, 2.5px);
    left: 0;
    position: absolute;
    width: 100%;
  }
  .c-navigation__link {
    align-items: center;
    color: var(--color-01_black);
        display: flex;
    font-size: clamp(12px, 1.0938vw, 17.5px);
    font-weight: 700;
    justify-content: center;
    line-height: 1;
    padding: 0 clamp(30px, 3.9063vw, 62.5px) clamp(12px, 1.5625vw, 25px);
    position: relative;
    transition: color 200ms;
  }
  .c-navigation__link:hover {
    color: var(--media-accent);
  }
  .c-navigation__link:hover::before {
    opacity: 1;
    transform: scaleX(1);
  }
  .c-navigation__link::before {
    border-bottom: clamp(1.2px, 0.1563vw, 2.5px) solid var(--media-pink);
    bottom: 0;
    content: "";
    display: block;
    height: clamp(1.2px, 0.1563vw, 2.5px);
    left: 0;
    opacity: 0;
    position: absolute;
    transform: scaleX(0);
    transition: -webkit-transform 200ms ease;
    transition: transform 200ms ease;
    transition: transform 200ms ease, -webkit-transform 200ms ease;
    width: 100%;
  }
  .c-navigation__link.-current {
    color: var(--media-accent);
  }
  .c-navigation__link.-current::before {
    opacity: 1;
    transform: scaleX(1);
  }
}
.c-search {
}
@media print, screen and (min-width:768px) {
  .c-search {
    height: clamp(25.2px, 3.2813vw, 52.5px);
    line-height: 1;
    margin-left: auto;
    width: clamp(220.8px, 28.75vw, 460px);
  }
  .c-search__window {
    position: relative;
  }
  .c-search__input {
    padding-block: 0;
    padding-inline: clamp(14.4px, 1.875vw, 30px);
    background-color: var(--color-00_white);
    border: 0.2667vw solid var(--color-00_white);
    border-radius: clamp(25.2px, 3.2813vw, 52.5px);
    font-size: clamp(12px, 0.9375vw, 15px) !important;
    height: 100%;
    height: clamp(25.2px, 3.2813vw, 52.5px);
    line-height: 1;
    width: 100%;
  }
  .c-search__input::-webkit-input-placeholder {
    color: #898989;
  }
  .c-search__input::-moz-placeholder {
    color: #898989;
  }
  .c-search__input:-ms-input-placeholder {
    color: #898989;
  }
  .c-search__input::-ms-input-placeholder {
    color: #898989;
  }
  .c-search__input::placeholder {
    color: #898989;
  }
  .c-search__input:focus {
    border: 0.2667vw solid var(--color-01-gray);
    outline: none;
  }
  .c-search__submit {
    align-items: center;
    background-color: var(--media-accent);
    border-radius: clamp(30px, 3.9063vw, 62.5px);
        display: flex;
    height: clamp(21.6px, 2.8125vw, 45px);
    justify-content: center;
    position: absolute;
    right: clamp(1.8px, 0.2344vw, 3.75px);
    top: clamp(1.8px, 0.2344vw, 3.75px);
    transition: background-color 300ms;
    width: clamp(33.6px, 4.375vw, 70px);
  }
  .c-search__submit:hover {
    background-color: var(--color-01_black);
  }
  .c-search__icon {
    height: clamp(11.4px, 1.4844vw, 23.75px);
    width: clamp(11.4px, 1.4844vw, 23.75px);
  }
  .c-search__icon use {
    fill: var(--color-00_white);
    transition: fill 300ms;
  }
}
.c-searchTitle {
  gap: 1.3333vw;
  align-items: center;
  background-color: var(--color-01-gray);
  border-radius: 6px;
  display: grid;
  grid-template-columns: auto 1fr;
  margin-bottom: 8vw;
  padding: 2.6667vw 4vw;
}
.c-searchTitle__title {
  font-size: max(12px, 3.4667vw);
  line-height: 1;
}
.c-searchTitle__text {
  font-size: max(12px, 3.4667vw);
  line-height: 1;
}
@media print, screen and (min-width:768px) {
  .c-searchTitle {
    gap: clamp(3px, 0.3906vw, 6.25px);
    margin-bottom: clamp(18px, 2.3438vw, 37.5px);
    margin-top: clamp(-25px, -1.5625vw, -12px);
    padding: clamp(10.8px, 1.4063vw, 22.5px) clamp(12px, 1.5625vw, 25px);
  }
  .c-searchTitle__title {
    font-size: clamp(12px, 1.4063vw, 22.5px);
  }
  .c-searchTitle__text {
    font-size: clamp(12px, 1.4063vw, 22.5px);
  }
}
.c-sidebar {
  margin-top: 18.6667vw;
}
.c-sidebar--pickup {
  margin-top: 11.7333vw;
}
.c-sidebar__title {
  color: var(--color-01_black);
  font-size: max(12px, 4.5333vw);
  font-weight: 700;
  line-height: 1;
}
.c-sidebar__title--english {
  font-size: max(12px, 4.8vw);
}
.c-sidebar__list {
  margin-top: 8vw;
}
.c-sidebar__item {
  border-bottom: 0.2667vw solid var(--color-01-gray);
  margin-bottom: 5.3333vw;
  padding-bottom: 5.3333vw;
}
.c-sidebar__item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.c-sidebar__item--count {
  counter-increment: number;
  position: relative;
}
.c-sidebar__item--count::after {
  color: var(--color-01_black);
  content: counter(number) ".";
  font-size: max(12px, 3.2vw);
  font-weight: 700;
  left: 24.8vw;
  line-height: 1;
  position: absolute;
  top: 0.8vw;
}
.c-sidebar__link {
  gap: 4.5333vw;
  align-items: center;
    display: flex;
  justify-content: flex-start;
}
.c-sidebar__link--count {
  align-items: flex-start;
}
.c-sidebar__linkThumbnail {
  flex: 0 0 20.8vw;
  margin: 0;
}
.c-sidebar__linkThumbnail img {
  border-radius: 2.6667vw;
}
.c-sidebar__linkTitle {
  color: var(--color-01_black);
  font-size: max(12px, 3.2vw);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
.c-sidebar__linkTitle--count {
  padding-left: 3.2vw;
}
.c-sidebar__btn {
  background-color: var(--media-accent);
  border-radius: 8.8vw;
  height: 8.8vw;
  margin: 6.1333vw auto 0;
  width: 44vw;
}
.c-sidebar__btnLink {
  align-items: center;
  color: var(--color-00_white);
    display: flex;
  font-size: max(12px, 3.2vw);
  font-weight: 700;
  height: 100%;
  justify-content: center;
  line-height: 1;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-sidebar {
    margin-top: clamp(42px, 5.4688vw, 87.5px);
  }
  .c-sidebar--pickup {
    margin-top: clamp(46.2px, 6.0156vw, 96.25px);
  }
  .c-sidebar__title {
    font-size: clamp(12px, 1.3281vw, 21.25px);
  }
  .c-sidebar__title--english {
    font-size: clamp(12px, 1.4063vw, 22.5px);
  }
  .c-sidebar__list {
    margin-top: clamp(18px, 2.3438vw, 37.5px);
  }
  .c-sidebar__item {
    border-bottom: clamp(0.6px, 0.0781vw, 1.25px) solid var(--color-01-gray);
    margin-bottom: clamp(12px, 1.5625vw, 25px);
    padding-bottom: clamp(12px, 1.5625vw, 25px);
  }
  .c-sidebar__item--count::after {
    font-size: clamp(12px, 0.9375vw, 15px);
    left: clamp(55.8px, 7.2656vw, 116.25px);
    top: clamp(1.8px, 0.2344vw, 3.75px);
  }
  .c-sidebar__link {
    gap: clamp(10.2px, 1.3281vw, 21.25px);
  }
  .c-sidebar__link:hover .c-sidebar__linkThumbnail img {
    scale: 1.1;
  }
  .c-sidebar__linkThumbnail {
    border-radius: clamp(6px, 0.7813vw, 12.5px);
    flex: 0 0 clamp(46.8px, 6.0938vw, 97.5px);
    overflow: hidden;
  }
  .c-sidebar__linkThumbnail img {
    border-radius: clamp(6px, 0.7813vw, 12.5px);
    transition: scale 300ms;
  }
  .c-sidebar__linkTitle {
    font-size: clamp(12px, 0.9375vw, 15px);
  }
  .c-sidebar__linkTitle--count {
    padding-left: clamp(7.2px, 0.9375vw, 15px);
  }
  .c-sidebar__btn {
    border-radius: 0;
    height: clamp(13.8px, 1.7969vw, 28.75px);
    margin: clamp(15.6px, 2.0313vw, 32.5px) 0 0 auto;
    position: relative;
    transition: background-color 200ms;
    width: clamp(87px, 11.3281vw, 181.25px);
  }
  .c-sidebar__btn:hover {
    background-color: var(--color-01_black);
  }
  .c-sidebar__btn::before, .c-sidebar__btn::after {
    background-color: var(--color-01_white);
    content: "";
    height: clamp(15.6px, 2.0313vw, 32.5px);
    position: absolute;
    width: clamp(6.6px, 0.8594vw, 13.75px);
  }
  .c-sidebar__btn::before {
    clip-path: polygon(100% 0, 0 0, 0 100%);
    left: clamp(-1.25px, -0.0781vw, -0.6px);
    top: clamp(-1.25px, -0.0781vw, -0.6px);
  }
  .c-sidebar__btn::after {
    bottom: clamp(-1.25px, -0.0781vw, -0.6px);
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    right: clamp(-1.25px, -0.0781vw, -0.6px);
  }
  .c-sidebar__btnLink {
    font-size: clamp(12px, 0.9375vw, 15px);
  }
}
.c-category {
  margin-top: 8.2667vw;
  max-width: 59.4667vw;
}
.c-category__title {
  color: var(--color-01_black);
  font-size: max(12px, 4.8vw);
  font-weight: 700;
  line-height: 1;
}
.c-category__list {
  gap: 2.1333vw 0;
  align-items: flex-start;
    display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 5.8667vw;
}
.c-category__item {
  line-height: 1;
}
.c-category__link {
  background-color: var(--media-accent);
  display: block;
  padding: 0.8vw 3.7333vw;
  position: relative;
}
.c-category__link::before, .c-category__link::after {
  background-color: var(--color-01_white);
  content: "";
  height: 7.4667vw;
  position: absolute;
  width: 2.9333vw;
}
.c-category__link::before {
  clip-path: polygon(100% 0, 0 0, 0 100%);
  left: -0.2667vw;
  top: -0.2667vw;
}
.c-category__link::after {
  bottom: -0.2667vw;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  right: -0.2667vw;
}
.c-category__text {
  color: var(--color-00_white);
  display: block;
  font-size: max(12px, 3.7333vw);
  height: 100%;
  line-height: 1.2;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-category {
    margin-top: clamp(42px, 5.4688vw, 87.5px);
    max-width: clamp(150px, 19.5313vw, 312.5px);
  }
  .c-category__title {
    font-size: clamp(12px, 1.4063vw, 22.5px);
  }
  .c-category__list {
    gap: clamp(4.8px, 0.625vw, 10px) 0;
    margin-top: clamp(13.2px, 1.7188vw, 27.5px);
  }
  .c-category__link {
    padding: clamp(1.8px, 0.2344vw, 3.75px) clamp(8.4px, 1.0938vw, 17.5px);
    transition: background-color 200ms;
  }
  .c-category__link:hover {
    background-color: var(--color-01_black);
  }
  .c-category__link::before, .c-category__link::after {
    height: clamp(16.8px, 2.1875vw, 35px);
    width: clamp(6.6px, 0.8594vw, 13.75px);
  }
  .c-category__link::before {
    clip-path: polygon(100% 0, 0 0, 0 100%);
    left: clamp(-1.25px, -0.0781vw, -0.6px);
    top: clamp(-1.25px, -0.0781vw, -0.6px);
  }
  .c-category__link::after {
    bottom: clamp(-1.25px, -0.0781vw, -0.6px);
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    right: clamp(-1.25px, -0.0781vw, -0.6px);
  }
  .c-category__text {
    color: var(--color-00_white);
    display: block;
    font-size: clamp(12px, 1.0938vw, 17.5px);
    height: 100%;
    line-height: 1.2;
    width: 100%;
  }
}
.p-media {
  background-color: var(--color-01_white);
}
.p-media__inner {
  padding: 0 6.6667vw 17.3333vw;
}
@media print, screen and (min-width:768px) {
  .p-media__inner {
    margin: 0 auto;
    max-width: calc(clamp(768px, 100vw, 1600px) - clamp(39px, 5.0781vw, 81.25px) * 2);
    max-width: clamp(690px, 89.8438vw, 1437.5px);
    padding: 0 0 clamp(39px, 5.0781vw, 81.25px);
  }
}
.p-column {
  margin-top: 6.6667vw;
}
@media print, screen and (min-width:768px) {
  .p-column {
    gap: clamp(57px, 7.4219vw, 118.75px);
    align-items: flex-start;
        display: flex;
    justify-content: space-between;
    margin-top: 0;
  }
  .p-column--post {
    border-top: clamp(1.2px, 0.1563vw, 2.5px) solid var(--color-01-gray);
    margin-bottom: clamp(120px, 15.625vw, 250px);
    padding-top: clamp(45px, 5.8594vw, 93.75px);
  }
  .p-column__title {
    color: var(--color-01_black);
    font-size: clamp(15px, 1.9531vw, 31.25px);
    font-weight: 700;
    line-height: 1;
    margin-bottom: clamp(30px, 3.9063vw, 62.5px);
  }
  .p-column__main {
    flex: 0 0 clamp(436.2px, 56.7969vw, 908.75px);
  }
  .p-column__sub {
    flex: 0 0 calc(100% - (clamp(435px, 56.6406vw, 906.25px) + clamp(58.2px, 7.5781vw, 121.25px)));
  }
}
.p-post__title {
  color: var(--color-01_black);
  font-size: max(12px, 5.3333vw);
  font-weight: 700;
  letter-spacing: -0.05em;
  line-height: 1.85;
}
.p-post__category {
  gap: 1.3333vw;
    display: flex;
  justify-content: flex-start;
  line-height: 1;
  margin-top: 2.6667vw;
}
.p-post__category li {
  line-height: 1;
}
.p-post__category li a {
  align-items: center;
  background-color: var(--media-accent);
  border-radius: 2.6667vw;
  color: var(--color-00_white);
    display: flex;
  font-size: max(12px, 2.6667vw);
  justify-content: center;
  padding: 0.8vw 2.6667vw;
}
.p-post__info {
  align-items: center;
    display: flex;
  justify-content: flex-start;
  margin-top: 3.2vw;
}
.p-post__date {
  color: var(--color-03-gray);
  font-size: max(12px, 2.9333vw);
  margin-right: 2.9333vw;
  margin-top: 0;
}
.p-post__author {
  color: var(--color-03-gray);
  font-size: max(12px, 2.9333vw);
  margin-top: 0;
}
.p-post__article {
  color: var(--color-01_black);
}
.p-post__article h2 {
  font-size: max(12px, 4.8vw);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.7;
  margin-bottom: 8vw;
}
.p-post__article h3 {
  font-size: max(12px, 4.2667vw);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.5;
  margin-bottom: 6.6667vw;
}
.p-post__article .wp-block-heading {
  word-break: break-all;
}
.p-post__article p {
  font-size: max(12px, 3.7333vw);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin-bottom: 5.3333vw;
}
.p-post__article p em {
  font-style: italic;
}
.p-post__article ul {
  margin-bottom: 6.6667vw;
  padding-left: 5.3333vw;
}
.p-post__article ul li {
  font-size: max(12px, 3.4667vw);
  letter-spacing: 0.05em;
  line-height: 1.6;
  list-style-type: disc;
  margin-bottom: 1.3333vw;
}
.p-post__article ol {
  margin-bottom: 6.6667vw;
  padding-left: 5.3333vw;
}
.p-post__article ol li {
  font-size: max(12px, 3.4667vw);
  letter-spacing: 0.05em;
  line-height: 1.6;
  list-style-type: decimal;
  margin-bottom: 1.3333vw;
}
.p-post__article a {
  text-decoration: underline;
  word-break: break-all;
}
.p-post__article .wp-block-image {
  margin-bottom: 8vw;
  overflow: hidden;
}
/*
 * 下の余白が 0（または小さすぎ）になるブロックに余白をあける。
 * figure のブロックは上の :where(figure) で 0 になり、そのほかはブロックエディターの CSS に余白の指定がない。
 * - 画像に近いもの（表・ギャラリー・動画・音声・埋め込み・メディアとテキスト・カバー）：画像と同じ
 * - 文字に近いもの（ボタン・詳細・コード・整形済みテキスト・詩・区切り）：段落と同じ
 * 表の横スクロールを残すため、画像の overflow: hidden は共有しない。
 */
.p-post__article .wp-block-table,
.p-post__article .wp-block-gallery,
.p-post__article .wp-block-video,
.p-post__article .wp-block-audio,
.p-post__article .wp-block-embed,
.p-post__article .wp-block-media-text,
.p-post__article .wp-block-cover {
  margin-bottom: 8vw;
}
.p-post__article .wp-block-buttons,
.p-post__article .wp-block-details,
.p-post__article .wp-block-code,
.p-post__article .wp-block-preformatted,
.p-post__article .wp-block-verse,
.p-post__article .wp-block-separator {
  margin-bottom: 5.3333vw;
}
/* 区切り線は上も段落と同じ（直前のブロックの余白が小さくても、上下が同じ間隔になるように） */
.p-post__article .wp-block-separator {
  margin-top: 5.3333vw;
}
.p-post__article .wp-block-image img {
  max-height: 80vw;
  -o-object-fit: contain;
  object-fit: contain;
}
.p-post__article .wp-block-image figcaption {
  color: var(--color-02-gray);
  font-size: max(12px, 3.2vw);
  letter-spacing: 0.02em;
  line-height: 150%;
  margin: 2.6667vw 0 0;
}
.p-post__article p img {
  max-height: 80vw;
  -o-object-fit: contain;
  object-fit: contain;
}
.p-post__article .wp-block-group {
  background-color: var(--color-01-gray);
  border-radius: 4vw;
  margin: 0 -1.3333vw 8vw;
  padding: 8vw 4vw;
}
.p-post__article .wp-block-group p:last-child {
  margin-bottom: 0;
}
.p-post__article blockquote,
.p-post__article .wp-block-quote {
  background-color: var(--color-01-gray);
  border-radius: 2.6667vw;
  margin-bottom: 8vw;
  padding: 5.3333vw 10.6667vw;
}
.p-post__article blockquote p,
.p-post__article .wp-block-quote p {
  display: block;
  font-size: max(12px, 3.4667vw);
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  margin: 0 auto 5.3333vw;
  position: relative;
}
.p-post__article blockquote p::before,
.p-post__article .wp-block-quote p::before {
  background-image: url(../images/quotatio.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  content: "";
  display: block;
  height: 1.7333vw;
  left: -4vw;
  position: absolute;
  top: 0;
  width: 2.6667vw;
}
.p-post__article blockquote p::after,
.p-post__article .wp-block-quote p::after {
  background-image: url(../images/quotatio.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  bottom: 0;
  content: "";
  display: block;
  height: 1.7333vw;
  position: absolute;
  right: -2.6667vw;
  transform: rotate(180deg);
  width: 2.6667vw;
}
.p-post__article blockquote cite,
.p-post__article .wp-block-quote cite {
  display: block;
  font-size: max(12px, 3.2vw);
  letter-spacing: 0.02em;
  line-height: 1.6;
}
.p-post__snsWrap {
  gap: 1.6vw;
  align-items: center;
    display: flex;
  margin-left: auto;
  margin-top: 5.3333vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-post__snsLink {
  align-items: center;
  background-color: var(--color-00_black);
  border-radius: 50%;
    display: flex;
  height: 5.6vw;
  justify-content: center;
  width: 5.6vw;
}
.p-post__snsIcon {
  height: 3.2vw;
  width: 3.2vw;
}
.p-post__snsIcon use {
  fill: var(--color-00_white);
}
@media print, screen and (min-width:768px) {
  .p-post__title {
    font-size: clamp(16.2px, 2.1094vw, 33.75px);
  }
  .p-post__category {
    gap: clamp(3px, 0.3906vw, 6.25px);
    margin-top: clamp(3px, 0.3906vw, 6.25px);
  }
  .p-post__category li a {
    border-radius: clamp(6px, 0.7813vw, 12.5px);
    font-size: clamp(12px, 0.7813vw, 12.5px);
    padding: clamp(1.8px, 0.2344vw, 3.75px) clamp(6px, 0.7813vw, 12.5px);
    transition: background-color 200ms;
  }
  .p-post__category li a:hover {
    background-color: var(--color-01_black);
  }
  .p-post__info {
    margin-top: clamp(6px, 0.7813vw, 12.5px);
  }
  .p-post__date {
    font-size: clamp(12px, 0.8594vw, 13.75px);
    margin-right: clamp(6.6px, 0.8594vw, 13.75px);
  }
  .p-post__author {
    font-size: clamp(12px, 0.8594vw, 13.75px);
  }
  .p-post__banner {
    margin-top: clamp(60px, 7.8125vw, 125px);
  }
  .p-post__article h2 {
    font-size: clamp(12.6px, 1.6406vw, 26.25px);
    margin-bottom: clamp(18px, 2.3438vw, 37.5px);
  }
  .p-post__article h3 {
    font-size: clamp(12px, 1.4063vw, 22.5px);
    margin-bottom: clamp(15px, 1.9531vw, 31.25px);
  }
  .p-post__article p {
    font-size: clamp(12px, 1.0938vw, 17.5px);
    letter-spacing: 0;
    margin-bottom: clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article ul {
    margin-bottom: clamp(12px, 1.5625vw, 25px);
    padding-left: clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article ul li {
    font-size: clamp(12px, 1.0938vw, 17.5px);
    margin-bottom: clamp(3px, 0.3906vw, 6.25px);
  }
  .p-post__article ol {
    margin-bottom: clamp(12px, 1.5625vw, 25px);
    padding-left: clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article ol li {
    font-size: clamp(12px, 1.0938vw, 17.5px);
    list-style-type: decimal;
    margin-bottom: clamp(3px, 0.3906vw, 6.25px);
  }
  .p-post__article a {
    transition: color 200ms;
  }
  .p-post__article a:hover {
    color: var(--color-01-green);
  }
  .p-post__article .wp-block-image,
  .p-post__article .wp-block-table,
  .p-post__article .wp-block-gallery,
  .p-post__article .wp-block-video,
  .p-post__article .wp-block-audio,
  .p-post__article .wp-block-embed,
  .p-post__article .wp-block-media-text,
  .p-post__article .wp-block-cover {
    margin-bottom: clamp(39px, 5.0781vw, 81.25px);
  }
  .p-post__article .wp-block-buttons,
  .p-post__article .wp-block-details,
  .p-post__article .wp-block-code,
  .p-post__article .wp-block-preformatted,
  .p-post__article .wp-block-verse,
  .p-post__article .wp-block-separator {
    margin-bottom: clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article .wp-block-separator {
    margin-top: clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article .wp-block-image img {
    max-height: clamp(300px, 39.0625vw, 625px);
  }
  .p-post__article .wp-block-image figcaption {
    font-size: clamp(12px, 0.9375vw, 15px);
    margin: clamp(6px, 0.7813vw, 12.5px) 0 0;
  }
  .p-post__article p img {
    max-height: clamp(300px, 39.0625vw, 625px);
  }
  .p-post__article .wp-block-group {
    background-color: var(--color-01-gray);
    border-radius: clamp(9px, 1.1719vw, 18.75px);
    margin: 0 clamp(-6.25px, -0.3906vw, -3px) clamp(18px, 2.3438vw, 37.5px);
    padding: clamp(18px, 2.3438vw, 37.5px) clamp(9px, 1.1719vw, 18.75px);
  }
  .p-post__article blockquote,
  .p-post__article .wp-block-quote {
    border-radius: clamp(6px, 0.7813vw, 12.5px);
    margin-bottom: clamp(18px, 2.3438vw, 37.5px);
    padding: clamp(12px, 1.5625vw, 25px) clamp(24px, 3.125vw, 50px);
  }
  .p-post__article blockquote p,
  .p-post__article .wp-block-quote p {
    font-size: clamp(12px, 1.0938vw, 17.5px);
    margin: 0 auto clamp(12px, 1.5625vw, 25px);
  }
  .p-post__article blockquote p::before,
  .p-post__article .wp-block-quote p::before {
    height: clamp(4.2px, 0.5469vw, 8.75px);
    left: clamp(-18.75px, -1.1719vw, -9px);
    top: 0;
    width: clamp(6px, 0.7813vw, 12.5px);
  }
  .p-post__article blockquote p::after,
  .p-post__article .wp-block-quote p::after {
    height: clamp(4.2px, 0.5469vw, 8.75px);
    right: clamp(-12.5px, -0.7813vw, -6px);
    top: 0;
    transform: rotate(180deg);
    width: clamp(6px, 0.7813vw, 12.5px);
  }
  .p-post__article blockquote cite,
  .p-post__article .wp-block-quote cite {
    font-size: clamp(12px, 0.9375vw, 15px);
  }
  .p-post__snsWrap {
    gap: clamp(4.8px, 0.625vw, 10px);
    margin-top: clamp(30px, 3.9063vw, 62.5px);
  }
  .p-post__snsLink {
    height: clamp(12.6px, 1.6406vw, 26.25px);
    transition: background-color 200ms;
    width: clamp(12.6px, 1.6406vw, 26.25px);
  }
  .p-post__snsLink:hover {
    background-color: var(--color-00_white);
  }
  .p-post__snsLink:hover .p-post__snsIcon use {
    fill: var(--color-00_black);
  }
  .p-post__snsIcon {
    height: clamp(7.2px, 0.9375vw, 15px);
    width: clamp(7.2px, 0.9375vw, 15px);
  }
  .p-post__snsIcon use {
    transition: fill 200ms;
  }
}

/* ---------- すわるたつあるくの基準に合わせた補正 ---------- */
/* uandme.jp では段落の上の余白を土台の CSS が持っていたため、記事本文の先頭に余白を補う */
.p-post__article { margin-top: 8vw; }
/* 本文は 15px を下限に（サイト全体の基準） */
.p-post__article p { font-size: max(15px, 3.7333vw); }
.p-post__article ul li, .p-post__article ol li { font-size: max(15px, 3.4667vw); }
@media print, screen and (min-width: 768px) {
  .p-post__article { margin-top: clamp(24px, 2.3438vw, 37.5px); }
  .p-post__article p { font-size: clamp(15px, 1.0938vw, 17.5px); }
  .p-post__article ul li, .p-post__article ol li { font-size: clamp(15px, 1.0938vw, 17.5px); }
}
