@charset "UTF-8";
/*----------------------------------------------------------------------
------------------------------------------------------------------------

File Name:
Note:

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
------------------------------------------------------------------------
目次

1.	共通使用変数定義
2.	Function
3.	Layout
4.	Object
------------------------------------------------------------------------
----------------------------------------------------------------------*/
.p-case__list {
  display: grid;
  column-gap: 20px;
}
.p-case__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  grid-template-columns: min-content max-content max-content 1fr;
  column-gap: 10px;
  row-gap: 6px;
}
.p-case__item__title {
  grid-column: 2 / 5;
  grid-row: 2 / 3;
  line-height: 1.2941176471;
  font-size: 1.7em;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}
.p-case__item::after {
  grid-column: 4 / 5;
  grid-row: 3 / 4;
  align-self: center;
  content: '';
  display: block;
  margin: 0 0 0 auto;
  width: 14px;
  height: 13px;
  background: url(../../../../m/img/case_list_arrow.png) center/cover no-repeat;
}
.p-case__link {
  text-decoration: underline;
  color: #6d9cd0;
}
.p-case__link:hover {
  text-decoration: none;
}
.p-case__img {
  display: flex;
  grid-column: 1 / 5;
  grid-row: 1 / 2;
  margin-bottom: 10px;
  aspect-ratio: 2 / 1;
}
.p-case__img img {
  width: 100%;
  height: auto;
}
.p-case__img__item {
  width: 50%;
}
.p-case__doctor__pic {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
.p-case__doctor__pic img {
  width: 40px;
  height: auto;
}
.p-case__doctor__name {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
  align-self: center;
  font-size: 1.4em;
  color: #9b9694;
}
.p-case__category {
  padding: 5px 7px;
  border-radius: 11px;
  font-size: 1em;
  background: #efebe9;
  color: #9b9694;
  grid-column: 3 / 4;
  grid-row: 3 / 4;
}
.p-case__update {
  grid-column: 4 / 5;
  grid-row: 4 / 5;
  padding: 5px 20px 5px 0;
  text-align: right;
  font-size: 1.2em;
}

.p-cv-contents {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 10px 10px 22px;
  background: #f4f2f0;
}
.p-cv-contents__title {
  font-size: 1.8em;
  color: #58504c;
}
.p-cv-contents a:hover > * {
  opacity: .5;
}
.p-cv-contents + .p-cv-contents {
  margin-top: 10px;
}

.p-title {
  display: flex;
  position: relative;
  z-index: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-bottom: 80px;
  height: 280px;
  background: url(../../../../img/title_bg.png) center/cover no-repeat;
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 4em;
  color: #58504c;
}
.p-title::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: 446px;
  height: 148px;
  border-top: 1px solid rgba(200, 189, 181, 0.8);
  border-bottom: 1px solid rgba(200, 189, 181, 0.8);
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.8);
  transform: translate(-50%, -50%);
}
.p-title::after {
  content: attr(data-eng);
  margin-top: 10px;
  font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 0.325em;
  color: #c8bdb5;
}

.p-narrow-down {
  width: 1240px;
  margin-right: auto;
  margin-bottom: 80px;
  margin-left: auto;
  padding-bottom: 40px;
  border-bottom: 1px solid #c8bdb5;
}
.p-narrow-down__title {
  display: flex;
  height: 42px;
  justify-content: center;
  align-items: center;
  background: #a49489;
  border-radius: 8px 8px 0 0;
  color: #e4deda;
  font-size: 1.6em;
  font-weight: bold;
}
.p-narrow-down__contents {
  display: flex;
  column-gap: 56px;
}
.p-narrow-down__contents__wrapper {
  margin-right: 16px;
  margin-left: 16px;
}
.p-narrow-down__contents__wrapper > .p-narrow-down__contents + .p-narrow-down__contents {
  border-top: 1px solid #e4deda;
}
.p-narrow-down__contents .p-narrow-down__contents {
  margin-bottom: 24px;
}
.p-narrow-down__contents .is-hide {
  display: none;
}
.p-narrow-down__contents__title {
  display: block;
  width: 4em;
  padding-top: 24px;
  padding-bottom: 24px;
  list-style: none;
  font-size: 1.6em;
  line-height: 20px;
  color: #797370;
  pointer-events: none;
}
.p-narrow-down__contents__title::-webkit-details-marker {
  display: none;
}
.p-narrow-down__contents__title:has(+ .select) {
  align-self: center;
  padding-top: 0;
  padding-bottom: 0;
}
.p-narrow-down__contents__details {
  flex: 1;
}
.p-narrow-down__contents__list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  align-items: center;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 24px;
  padding-top: 24px;
  padding-bottom: 24px;
  padding-left: 44px;
}
.operations .p-narrow-down__contents__list {
  grid-template-columns: repeat(3, 1fr);
}
.p-narrow-down__contents__label {
  display: flex;
  align-items: center;
  font-size: 1.6em;
  cursor: pointer;
}
.p-narrow-down__contents__input {
  width: 20px;
  height: 20px;
  margin-right: 20px;
  cursor: pointer;
  flex-shrink: 0;
}
.p-narrow-down__contents__select {
  padding: 14px;
  width: 412px;
  font-size: 1.6em;
  color: #797370;
}
.p-narrow-down__contents__count {
  font-size: 0.75em;
}
.p-narrow-down__contents.categories > .p-narrow-down__contents__details {
  display: flex;
  flex-wrap: wrap;
}
.p-narrow-down__contents.categories .p-narrow-down__contents {
  margin-left: 44px;
  column-gap: 24px;
}
.p-narrow-down__contents.categories .p-narrow-down__contents__list {
  width: 100%;
}

.p-details {
  display: flow-root;
}
.p-details__summary {
  float: left;
  padding-right: 56px;
}
.p-details__contents {
  overflow: hidden;
}

.p-box {
  width: 1240px;
  margin-right: auto;
  margin-bottom: 80px;
  margin-left: auto;
}
.p-box:not(:last-child) {
  padding-bottom: 80px;
  border-bottom: 1px solid #c8bdb5;
}
.p-box:last-child {
  margin-bottom: 120px;
}
.p-box__title {
  margin-bottom: 64px;
  text-align: center;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 3.2em;
  color: #58504c;
}

.p-latest__list {
  grid-template-columns: repeat(auto-fit, 400px);
  row-gap: 40px;
  transition: opacity 0.15s linear;
  opacity: 1;
}
.p-latest__list.is-hide {
  opacity: 0;
}

.p-pagination.is-hide {
  display: none;
}

.nav-links {
  display: flex;
  justify-content: center;
  font-size: 2em;
  column-gap: 24px;
}
.nav-links:has(.page-numbers) {
  margin-top: 64px;
}
.nav-links > * {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  box-sizing: border-box;
  color: #c8bdb5;
}
.nav-links a {
  transition: opacity 0.15s linear;
  border: 1px solid #c8bdb5;
}
.nav-links a:hover {
  opacity: .5;
  text-decoration: none;
  color: #c8bdb5;
}
.nav-links .current {
  background: #c8bdb5;
  color: #fff;
}

.p-cv-contents {
  width: 880px;
  margin-top: 80px;
  margin-right: auto;
  margin-left: auto;
}

.p-about__inner {
  display: grid;
  grid-template-columns: 656px 1fr;
  gap: 24px;
}
.p-about__text {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  line-height: 1.8;
  font-size: 1.5em;
  text-align: justify;
  color: #8a8582;
}
.p-about__count {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 92px;
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  background: #f4f2f0;
}
.p-about__count__text {
  line-height: 1.3076923077;
  font-size: 2.6em;
  color: #58504c;
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.p-about__count__text .number {
  font-size: 1.1538461538em;
}
.p-about__count__text .small {
  margin-left: .25em;
  font-size: 0.6153846154em;
}
.p-about__count__span {
  position: absolute;
  right: 9px;
  bottom: 9px;
}
.p-about__pic {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
}

.p-description__list {
  grid-template-columns: repeat(auto-fit, 232px);
  row-gap: 20px;
}
.p-description__item {
  position: relative;
}
.p-description__item blockquote,
.p-description__item iframe {
  grid-column: 1 / 5;
  margin-bottom: 6px !important;
  min-width: 232px !important;
  width: 232px;
  height: 343px;
  box-sizing: border-box;
  overflow: hidden;
}
.p-description__item__title {
  grid-column: 1 / 5;
  line-height: 1.75;
  font-size: 1.2em;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.p-description__item.is-new .p-case__date::before {
  content: 'NEW';
  margin-right: 8px;
  padding: 2px 6px;
  border-radius: 6px;
  background: #ed7b74;
  font-size: 0.6428571429em;
  color: #fff;
}
.p-description__item::after {
  content: initial;
}
.p-description__doctor__name {
  grid-column: 1 / 3;
  font-size: 1.1em;
}
.p-description__date {
  display: flex;
  align-items: center;
  align-self: flex-start;
  justify-content: flex-end;
  text-align: right;
  font-size: 1.1em;
  color: #9b9694;
  grid-column: 4 / 5;
  grid-row: 3 / 4;
}

/*# sourceMappingURL=index.css.map */
