@charset "UTF-8";
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.1.1/dist/css/yakuhanjp.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap");
:root {
  -webkit-font-smoothing: antialiased;
  --base-size: 62.5%;
  --clr-text: #211713;
  --color-text: #211713;
  --color-lighttext: #888989;
  --clr-placeholder: #a7a7a7;
  --clr-line: #ccc;
  --color-bg: #e1dfd7;
  --color-gold-muted: #9a8858;
  --color-gray-soft: #edede9;
  --color-gray-cool: #d9dbd9;
  --ff-sans: YakuHanJP, "Noto Sans JP", sans-serif;
  --ff-roboto: "Roboto Condensed", "Noto Sans JP", sans-serif;
  --fz: 1.6rem;
  --ls: normal;
  --lh: 2;
  --ani: 250ms ease-out;
  --ani-fast: 200ms ease-out;
  --ani-slow: 300ms ease-out;
  --speed: 250ms;
  --spSize: 375;
  --delay: 0;
}

.gold-muted {
  color: var(--color-gold-muted);
}

.gray-soft {
  color: var(--color-gray-soft);
}

.em {
  color: var(--color-gold-muted);
}

@supports (-webkit-touch-callout: none) {
  body {
    /* The hack for Safari */
    height: -webkit-fill-available;
  }
}
.ui-widget,
body {
  font: inherit;
  font-family: var(--ff-sans);
  font-weight: normal;
  -webkit-text-size-adjust: 100%;
  letter-spacing: var(--ls);
  font-feature-settings: "pkna" 1;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

q:before, q:after {
  content: "";
  content: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

*,
::before,
::after {
  box-sizing: border-box;
}

input[type=checkbox] {
  -webkit-appearance: none;
}

button {
  font-size: var(--fz);
  font-family: var(--ff-sans);
  padding: 0;
  margin: 0;
  border: none;
  background: none;
}
button:focus {
  outline: 0;
}
@media (768px <= width) {
  button {
    cursor: pointer;
  }
}

b,
strong,
.bold {
  font-weight: 700;
}

sup {
  vertical-align: super;
  font-size: 1rem;
}

sub {
  vertical-align: baseline;
  font-size: 1rem;
}

img {
  vertical-align: middle;
  font-size: 0;
  line-height: 0;
  max-width: 100%;
  height: auto;
  /* auto から変更：縮小時の輪郭のボケ・滲みを抑える */
  image-rendering: auto;
}

html {
  line-height: 1;
  font-size: 62.5%;
  font-size: var(--base-size);
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
#stage {
  position: relative;
  width: 100%;
  min-height: 100vh;
  min-width: 320px;
  font-size: var(--fz);
  font-family: var(--ff-sans);
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 1.6em;
  color: var(--clr-text);
}
@media (width < 768px) {
  .pc {
    display: none;
  }
  .pc.important {
    display: none !important;
  }
}
@media (768px <= width) {
  .sp {
    display: none;
  }
  .sp.important {
    display: none !important;
  }
}
ul.dot li {
  position: relative;
  display: grid;
  grid-template-columns: 0.5rem auto;
  align-items: first baseline;
  gap: 1rem;
}
ul.dot li::before {
  content: "";
  width: 0.5rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 100px;
  transform: translateY(-0.25em);
}
ul.dot.gray li::before {
  background-color: var(--clr-lightYellow4);
}

ol.number > li {
  padding-left: 1.7em;
  position: relative;
  counter-increment: number;
}
ol.number > li::before {
  content: counter(number);
  position: absolute;
  left: 0.3em;
}

ol.numberdot > li {
  padding-left: 2em;
  position: relative;
  counter-increment: numberdot;
}
ol.numberdot > li::before {
  content: counter(numberdot) ". ";
  position: absolute;
  left: 0.3em;
  color: var(--clr-main);
  font-weight: 700;
}
@media (768px <= width) {
  ol.numberdot > li {
    padding-left: 3rem;
  }
}

em {
  font-style: italic;
}

a,
.btn {
  color: var(--clr-text);
  text-decoration: none;
}

@media (hover: hover) and (width >= 768px) {
  a[href^="tel:"]:hover {
    opacity: 1;
    cursor: context-menu;
  }
}
svg {
  -webkit-backface-visibility: hidden;
}

p + p {
  margin-top: 1.5em;
}

.entry-is-isolated {
  /* 2026年モダンブラウザ必須プロパティ */
  contain: layout style;
  /* レイアウトの土台を安定させる */
  display: block;
  width: 100%;
  clear: both;
  /* 念のため、中身がはみ出しても外に影響させない */
  overflow: clip; /* hiddenより高速 */
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.header__container {
  padding: 1.5rem 2.5rem;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 200;
  transition: background 0.25s;
  background: #fff;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
}
body.home.is-overlap .header__container {
  background: none;
}
body.is-overlap .header__container {
  box-shadow: none;
}
@media (768px <= width) {
  .header__container {
    padding: 3rem;
    transition: padding 0.25s;
  }
  body:not(.is-overlap) .header__container {
    padding: 1.5rem 3rem;
  }
}
body.is-menuopen .header__container {
  background: none;
  box-shadow: none;
}
.header__logo {
  width: 20.8rem;
  height: 3rem;
  display: flex;
  align-items: center;
}
@media (768px <= width) {
  .header__logo {
    width: 27.7rem;
    height: 4rem;
  }
}
@media (1024px <= width) {
  .header__logo {
    width: 22rem;
    height: 4rem;
  }
}
@media (1280px <= width) {
  .header__logo {
    width: 27.7rem;
  }
}
.header__logo img {
  width: auto;
  max-height: 100%;
}
.header__menu-btn {
  width: 2.5rem;
  aspect-ratio: 1;
  position: relative;
  margin-left: auto;
}
@media (1024px <= width) {
  .header__menu-btn {
    display: none;
  }
}
.header__menu-btn-line {
  background-color: var(--color-text);
  display: block;
  width: 2.5rem;
  height: 1px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: 0.25s;
}
body.is-overlap .header__menu-btn-line, body.is-menuopen .header__menu-btn-line {
  background-color: #fff;
}
.header__menu-btn-line:nth-child(1) {
  top: calc(50% - 5.5px);
}
.header__menu-btn-line:nth-child(3) {
  top: calc(50% + 5.5px);
}
body.is-menuopen .header__menu-btn-line:nth-child(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
}
body.is-menuopen .header__menu-btn-line:nth-child(2) {
  opacity: 0;
}
body.is-menuopen .header__menu-btn-line:nth-child(3) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.header__nav {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background-color: var(--color-text);
  padding-top: 6rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s, transform 0.25s;
  transform: scale(1.01);
  display: none;
}
body.is-menuopen .header__nav {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
  display: block;
}
@media (768px <= width) {
  .header__nav {
    padding-top: 10rem;
  }
}
@media (1024px <= width) {
  .header__nav {
    background: none;
    width: auto;
    height: 100%;
    padding: 0;
    left: auto;
    right: 0;
    z-index: 200;
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
    display: block;
  }
}
.header__nav-container {
  height: 100%;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  padding-bottom: 4rem;
  overflow-y: auto;
}
@media (1024px <= width) {
  .header__nav-container {
    padding: 0 3rem;
    overflow: visible;
    display: flex;
    align-items: center;
    gap: 0 2rem;
  }
}
@media (1280px <= width) {
  .header__nav-container {
    gap: 0 3rem;
  }
}
@media (1024px <= width) {
  .header__nav-lists {
    display: flex;
    gap: 0 1.5rem;
    height: 4rem;
  }
  .header__nav-lists i.icon-arrow {
    display: none;
  }
}
@media (1280px <= width) {
  .header__nav-lists {
    gap: 0 2.5rem;
  }
}
.header__nav-item {
  padding: 0.75rem 0;
}
@media (1024px <= width) {
  .header__nav-item {
    padding: 0;
  }
  .header__nav-item:nth-child(1), .header__nav-item:nth-child(n+7) {
    display: none;
  }
}
.header__nav-link {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (1024px <= width) {
  .header__nav-link {
    height: 100%;
    font-size: 1.3rem;
    color: var(--color-text);
  }
  body.home.is-overlap .header__nav-link {
    color: #fff;
  }
  .header__nav-link::after {
    content: "";
    width: 0%;
    height: 1px;
    background-color: var(--color-gold-muted);
    position: absolute;
    bottom: 0;
    right: 0;
    transition: width var(--speed) ease-in-out;
  }
  .header__nav-link.current {
    color: var(--color-gold-muted);
  }
  .header__nav-link.current::after {
    width: 100%;
  }
}
@media (1280px <= width) {
  .header__nav-link {
    font-size: 1.5rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .header__nav-link {
    transition: color var(--speed) ease-in-out;
    position: relative;
  }
  .header__nav-link:hover {
    color: var(--color-gold-muted) !important;
  }
  .header__nav-link:hover::after {
    left: 0;
    width: 100%;
  }
}
.header__nav-tel {
  margin-top: 3rem;
  display: flex;
  gap: 1.5rem;
}
@media (1024px <= width) {
  .header__nav-tel {
    margin: 0;
  }
}
.header__nav-tel > * {
  flex: 1;
}
.header__nav-tel a {
  display: block;
}
@media (1024px <= width) {
  .header__nav-tel a {
    pointer-events: none;
  }
}
.header__nav-tel-label {
  background-color: rgba(255, 255, 255, 0.1);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 110%;
  color: #fff;
  text-align: center;
  padding: 0.8rem;
}
@media (1024px <= width) {
  .header__nav-tel-label {
    background: none;
    text-align: left;
    padding: 0;
    font-size: 1.2rem;
    color: var(--color-lighttext);
    position: relative;
  }
  .header__nav-tel-label::after {
    content: "";
    width: calc(100% - 3em - 0.5rem);
    height: 1px;
    position: absolute;
    right: 0;
    top: 50%;
    background-color: var(--color-lighttext);
  }
  body.home.is-overlap .header__nav-tel-label {
    color: #fff;
  }
  body.home.is-overlap .header__nav-tel-label::after {
    background-color: #fff;
  }
}
.header__nav-tel-number {
  padding: 1.5rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.725rem;
}
@media (1024px <= width) {
  .header__nav-tel-number {
    display: block;
    margin-top: 0.5rem;
    padding: 0;
  }
  .header__nav-tel-number i {
    display: none;
  }
}
.header__nav-tel .number {
  color: var(--color-gold-muted);
  font-family: var(--ff-roboto);
  font-size: 2rem;
  font-weight: 700;
}
@media (1024px <= width) {
  .header__nav-tel .number {
    color: var(--color-gold-muted);
    line-height: 100%;
    font-size: 1.8rem;
    letter-spacing: normal;
  }
  body.home.is-overlap .header__nav-tel .number {
    color: #fff;
  }
}
@media (1280px <= width) {
  .header__nav-tel .number {
    font-size: 2rem;
  }
}
.header__nav-contact {
  margin-top: 0.5rem;
}
@media (1024px <= width) {
  .header__nav-contact {
    display: none;
  }
}
.header__nav-contact a {
  background-color: var(--color-gold-muted);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 200%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.95rem;
  height: 5rem;
}
.header__nav-sns-pp {
  margin-top: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (1024px <= width) {
  .header__nav-sns-pp {
    display: none;
  }
}
.header__nav-sns {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.header__nav-pp a {
  font-size: 1.2rem;
  line-height: 200%;
  color: #888989;
  text-decoration: underline;
}

.request {
  padding: 6rem 2.5rem;
  background: var(--color-text);
  color: #fff;
}
@media (768px <= width) {
  .request {
    padding: 8rem 0;
  }
}
@media (768px <= width) {
  .request__conteiner {
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
  }
}
.request__lead {
  text-align: center;
}
@media (768px <= width) {
  .request__lead {
    text-align: left;
  }
}
.request__text {
  margin-top: 1.5rem;
  text-align: center;
}
@media (768px <= width) {
  .request__text {
    margin-top: 2rem;
    text-align: left;
  }
}
.request__catalog {
  margin-top: 4rem;
  padding: 4rem 2rem;
  background-color: rgba(255, 255, 255, 0.1);
}
@media (768px <= width) {
  .request__catalog {
    margin-top: 0;
    padding: 4rem;
    display: grid;
    grid-template-columns: 198fr 282fr;
    gap: 4rem;
  }
}
.request__catalog-thumbnail {
  text-align: center;
}
.request__catalog-thumbnail img {
  width: 52.8vw;
}
@media (768px <= width) {
  .request__catalog-thumbnail img {
    width: auto;
  }
}
.request__catalog-box {
  margin-top: 2.5rem;
}
@media (768px <= width) {
  .request__catalog-box {
    margin-top: 0;
  }
}
.request__catalog-box ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 0;
  width: 65.3333333333vw;
  margin-left: auto;
  margin-right: auto;
}
@media (768px <= width) {
  .request__catalog-box ul {
    grid-template-columns: repeat(2, max-content);
    gap: 1.5rem 2rem;
    justify-content: center;
    width: auto;
  }
}
.request__catalog-box li {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  display: flex;
  gap: 0 0.8rem;
}
.request__catalog-box li::before {
  content: "";
  width: 1.7rem;
  aspect-ratio: 1;
  background: url('data:image/svg+xml;charset=utf8, <svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="8.5" cy="8.5" r="8.5" fill="%23211713"/><path d="M5 8.5L7.625 11L12 6" stroke="%239A8858" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  display: inline-block;
}
@media (768px <= width) {
  .request__catalog-box li {
    font-size: 1.5rem;
  }
}
.request__catalog-link {
  margin-top: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: var(--color-gold-muted);
  color: #fff;
  height: 5rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 200%;
}
@media (768px <= width) {
  .request__catalog-link {
    margin-top: 3rem;
    font-size: 1.5rem;
    height: 5.5rem !important;
  }
}

.footer {
  padding-bottom: 8rem;
}
@media (768px <= width) {
  .footer {
    padding-bottom: 0;
  }
}
.footer__container {
  padding: 6rem 2.5rem 0;
}
@media (768px <= width) {
  .footer__container {
    padding: 8rem 0 0;
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
    display: grid;
    grid-template-columns: 38.3333333333% 41.6666666667%;
    gap: 0 20%;
  }
}
.footer__info-logo {
  width: 73.8666666667vw;
  margin-left: auto;
  margin-right: auto;
}
@media (768px <= width) {
  .footer__info-logo {
    margin: 0;
    width: 345px;
  }
}
.footer__info-shop {
  margin-top: 4rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.5rem;
}
@media (768px <= width) {
  .footer__info-shop {
    gap: 0 2rem;
  }
}
.footer__info-shop-box {
  flex: 1;
}
.footer__info-shop-name {
  background-color: var(--color-gray-soft);
  text-align: center;
  padding: 0.8rem;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 110%;
  color: var(--color-lighttext);
}
@media (768px <= width) {
  .footer__info-shop-name {
    padding: 0.9rem;
    font: 1.5rem;
  }
}
.footer__info-shop-address {
  margin-top: 1.5rem;
  font-size: 1.3rem;
  line-height: 166%;
}
@media (768px <= width) {
  .footer__info-shop-address {
    font-size: 1.5rem;
  }
}
.footer__info-shop-tel {
  margin-top: 1.2rem;
  font-size: 2rem;
  font-weight: 700;
  font-family: var(--ff-roboto);
  color: var(--color-gold-muted);
  display: flex;
  gap: 0 0.8rem;
}
@media (768px <= width) {
  .footer__info-shop-tel {
    font-size: 2.2rem;
  }
}
.footer__info-shop-time {
  margin-top: 1rem;
  text-align: center;
  width: 100%;
  background-image: linear-gradient(to bottom, transparent 50%, var(--color-lighttext) 50%, var(--color-lighttext) calc(50% + 1px), transparent calc(50% + 1px));
}
@media (768px <= width) {
  .footer__info-shop-time {
    margin-top: 2rem;
  }
}
.footer__info-shop-time span {
  background-color: #fff;
  color: var(--color-lighttext);
  font-size: 1.2rem;
  line-height: 166%;
  padding: 0.5rem;
  display: inline-block;
}
@media (768px <= width) {
  .footer__info-shop-time span {
    font-size: 1.3rem;
  }
}
@media (768px <= width) {
  .footer__nav {
    padding-top: 7rem;
  }
}
.footer__nav-lists {
  display: none;
}
@media (768px <= width) {
  .footer__nav-lists {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(3, auto);
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
  }
}
.footer__nav-link {
  font-size: 1.5rem;
  font-weight: 700;
}
@media (hover: hover) and (width >= 768px) {
  .footer__nav-link {
    transition: all var(--speed) ease-in-out;
  }
  .footer__nav-link:hover {
    color: var(--color-gold-muted);
  }
}
.footer__contact {
  margin-top: 3rem;
}
.footer__btmarea {
  margin-top: 5rem;
  display: flex;
  justify-content: space-between;
}
@media (768px <= width) {
  .footer__btmarea {
    margin-top: 8rem;
    grid-column: span 2;
  }
}
.footer__btmarea .sns {
  display: flex;
  gap: 0 1.5rem;
}
.footer__btmarea .pp a {
  color: var(--color-lighttext);
  text-decoration: underline;
  font-size: 1.2rem;
  line-height: 200%;
}
@media (768px <= width) {
  .footer__btmarea .pp a {
    font-size: 1.3rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .footer__btmarea .pp a {
    transition: all var(--speed) ease-in-out;
  }
  .footer__btmarea .pp a:hover {
    text-decoration: none;
  }
}
.footer .copyright {
  display: block;
  margin-top: 2rem;
  padding-top: 3rem;
  border-top: 1px solid var(--color-gray-cool);
  text-align: center;
  font-size: 1.1rem;
  color: var(--color-lighttext);
}
@media (768px <= width) {
  .footer .copyright {
    padding-bottom: 3rem;
    font-size: 1.3rem;
  }
}

@media (768px <= width) {
  .w_1000 {
    margin-left: max(50% - 50rem, 6rem);
    margin-right: max(50% - 50rem, 6rem);
    max-width: 100rem;
  }
}

@media (768px <= width) {
  .w_1100 {
    margin-left: max(50% - 55rem, 6rem);
    margin-right: max(50% - 55rem, 6rem);
    max-width: 110rem;
  }
}

@media (768px <= width) {
  .w_1200 {
    margin-left: max(50% - 60rem, 6rem);
    margin-right: max(50% - 60rem, 6rem);
    max-width: 120rem;
  }
}

@media (768px <= width) {
  .w_1300 {
    margin-left: max(50% - 65rem, 6rem);
    margin-right: max(50% - 65rem, 6rem);
    max-width: 130rem;
  }
}

@media (768px <= width) {
  .w_1400 {
    margin-left: max(50% - 70rem, 6rem);
    margin-right: max(50% - 70rem, 6rem);
    max-width: 140rem;
  }
}

@media (768px <= width) {
  .w_1500 {
    margin-left: max(50% - 75rem, 6rem);
    margin-right: max(50% - 75rem, 6rem);
    max-width: 150rem;
  }
}

@media (768px <= width) {
  .w_1600 {
    margin-left: max(50% - 80rem, 6rem);
    margin-right: max(50% - 80rem, 6rem);
    max-width: 160rem;
  }
}

@media (768px <= width) {
  .w_1700 {
    margin-left: max(50% - 85rem, 6rem);
    margin-right: max(50% - 85rem, 6rem);
    max-width: 170rem;
  }
}

body:not(#home) .main {
  padding-top: 6rem;
}
@media (768px <= width) {
  body:not(#home) .main {
    padding-top: 10rem;
  }
}

.en {
  font-family: var(--ff-roboto);
}

.page_header {
  padding: 6rem 2.5rem;
}
@media (768px <= width) {
  .page_header {
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
    padding-left: 0;
    padding-right: 0;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
  }
}
.page_header .pagetitle .en {
  font-size: 5.2rem;
  font-weight: 700;
  line-height: 100%;
}
@media (768px <= width) {
  .page_header .pagetitle .en {
    font-size: 6.8rem;
  }
}
.page_header .pagetitle .ja {
  margin-top: 0.5rem;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 100%;
}
@media (768px <= width) {
  .page_header .pagetitle .ja {
    margin-top: 1.5rem;
    font-size: 1.5rem;
    font-size: 2rem;
  }
}
.page_header__discription {
  margin-top: 3rem;
  font-size: 1.3rem;
  line-height: 166%;
}
@media (768px <= width) {
  .page_header__discription {
    font-size: 1.5rem;
  }
}

.contacttag {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 50;
  width: 100%;
  display: flex;
}
@media (768px <= width) {
  .contacttag {
    top: 50%;
    translate: 0 -50%;
    width: auto;
    height: -moz-max-content;
    height: max-content;
    display: block;
  }
}
.contacttag a {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem 0 1rem;
  background-color: var(--color-gold-muted);
  text-align: center;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 108%;
  color: #fff;
}
.contacttag a i {
  height: 1.6rem;
  margin-bottom: 0.6rem;
}
@media (768px <= width) {
  .contacttag a.btn.contact {
    flex-direction: row;
    font-size: 1.5rem;
    writing-mode: vertical-rl;
    padding: 2rem 1.8rem;
    gap: 0;
    height: auto;
  }
  .contacttag a:not(.btn.contact) {
    display: none;
  }
}
@media (width < 768px) {
  .contacttag a:nth-child(even) {
    background-color: var(--color-text);
    height: auto;
  }
}

.lead {
  font-size: 2.8rem;
  font-weight: 900;
  line-height: 166%;
}
@media (768px <= width) {
  .lead {
    font-size: 3.2rem;
  }
}

.text {
  font-size: 1.4rem;
  line-height: 200%;
}
@media (768px <= width) {
  .text {
    font-size: 1.5rem;
  }
}

.title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .title {
    font-size: 2.2rem;
  }
}

.case_title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .case_title {
    font-size: 2rem;
  }
}

.clm_title {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .clm_title {
    font-size: 1.7rem;
  }
}

.detail {
  font-size: 1.5rem;
  line-height: 200%;
}

.case__info {
  font-size: 1.3rem;
  line-height: 166%;
  color: var(--color-gold-muted);
}

.fadeinUp {
  opacity: 0;
  transform: translateY(30px);
  transition: transform 500ms ease-in-out, opacity 500ms ease-in-out;
}
.fadeinUp.is-animeted {
  opacity: 1;
  transform: translateY(0);
}
@media (768px <= width) {
  .fadeinUp {
    transform: translateY(50px);
  }
}

.fadein {
  opacity: 0;
  transition: opacity 500ms ease-in-out;
}
.fadein.is-animeted {
  opacity: 1;
}

.delay1 {
  transition-delay: 0.3s;
}

.delay2 {
  transition-delay: 0.6s;
}

.delay3 {
  transition-delay: 0.9s;
}

.delay4 {
  transition-delay: 1.2s;
}

.delay5 {
  transition-delay: 1.5s;
}

.delay6 {
  transition-delay: 1.8s;
}

.delay7 {
  transition-delay: 2.1s;
}

.delay8 {
  transition-delay: 2.4s;
}

.delay9 {
  transition-delay: 2.7s;
}

.delay10 {
  transition-delay: 3s;
}

@keyframes anim--first {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes rotate-animation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(90deg);
  }
}
@keyframes notopHeader {
  0% {
    translate: 0 0;
  }
  40% {
    translate: 0 -100%;
  }
  60% {
    translate: 0 -100%;
  }
  100% {
    translate: 0 0;
  }
}
@keyframes topHeader {
  0% {
    translate: 0 0;
  }
  40% {
    translate: 0 -100%;
  }
  60% {
    translate: 0 -100%;
  }
  100% {
    translate: 0 0;
  }
}
@keyframes topHeaderFirst {
  0% {
    translate: 0 -100%;
  }
  60% {
    translate: 0 -100%;
  }
  100% {
    translate: 0 0;
  }
}
a.btn,
button.btn,
input.btn {
  display: block;
  position: relative;
  display: block;
}
a.more,
button.more,
input.more {
  padding-left: 2rem;
  padding-right: 1.5rem;
  height: 5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 700;
  color: #fff;
  overflow: hidden;
}
a.more > *,
button.more > *,
input.more > * {
  position: relative;
  z-index: 2;
}
a.more::before,
button.more::before,
input.more::before {
  content: "";
  width: 200%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(to right, var(--color-gold-muted) calc(50% + 0.5rem), var(--color-text) calc(50% + 0.5rem));
  translate: -50% 0;
}
@media (768px <= width) {
  a.more,
  button.more,
  input.more {
    height: 6rem;
    padding-right: 2rem;
    font-size: 1.5rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  a.more,
  button.more,
  input.more {
    transition: all var(--speed) ease-in-out;
  }
  a.more::before,
  button.more::before,
  input.more::before {
    transition: translate 0.25s;
  }
  a.more:hover::before,
  button.more:hover::before,
  input.more:hover::before {
    translate: 0 0;
  }
}
a.contact,
button.contact,
input.contact {
  background: var(--color-gold-muted);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1rem;
  font-size: 1.4rem;
  font-weight: 700;
  height: 5rem;
}
@media (768px <= width) {
  a.contact,
  button.contact,
  input.contact {
    height: 6rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  a.contact,
  button.contact,
  input.contact {
    transition: all var(--speed) ease-in-out;
  }
  a.contact:hover,
  button.contact:hover,
  input.contact:hover {
    background-color: var(--color-text);
  }
}
a.list,
button.list,
input.list {
  border: 1px solid var(--color-gray-soft);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-lighttext);
  width: 28rem;
  height: 6rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
@media (hover: hover) and (width >= 768px) {
  a.list,
  button.list,
  input.list {
    transition: all var(--speed) ease-in-out;
  }
  a.list:hover,
  button.list:hover,
  input.list:hover {
    background-color: var(--color-gray-soft);
  }
}

.wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 5rem;
  gap: 0.4rem;
  gap: 0;
}
@media (768px <= width) {
  .wp-pagenavi {
    margin-top: 4.8rem;
  }
}
.wp-pagenavi a.link,
.wp-pagenavi span.current,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  width: 4rem;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
  font-family: var(--ff-roboto);
}
.wp-pagenavi span.current {
  background: var(--color-text);
  color: #fff;
}
@media (hover: hover) and (width >= 768px) {
  .wp-pagenavi .page.link {
    transition: all var(--speed) ease-in-out;
  }
  .wp-pagenavi .page.link:hover {
    background: var(--color-gray-soft);
  }
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  margin: 0 1rem;
}
.wp-pagenavi .previouspostslink.disabled,
.wp-pagenavi .nextpostslink.disabled {
  opacity: 0.5;
  pointer-events: none;
}
.wp-pagenavi .previouspostslink {
  background: url('data:image/svg+xml;charset=utf8, <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="40" height="40" fill="%23EDEDE9"/><path d="M24 19.4999L17.376 19.4999L19.9033 17.3837C20.115 17.2064 20.1431 16.8903 19.9658 16.6786C19.7886 16.4672 19.4734 16.4392 19.2617 16.6161L15.6787 19.6161L15.6035 19.6962C15.5373 19.7827 15.5 19.889 15.5 19.9999C15.5 20.1479 15.5653 20.2887 15.6787 20.3837L19.2617 23.3837C19.4734 23.5606 19.7886 23.5326 19.9658 23.3212C20.1431 23.1095 20.115 22.7934 19.9033 22.6161L17.376 20.4999L24 20.4999C24.2761 20.4999 24.5 20.276 24.5 19.9999C24.5 19.7238 24.2761 19.4999 24 19.4999Z" fill="%23211713"/></svg>') center/cover no-repeat;
}
.wp-pagenavi .nextpostslink {
  background: var(--color-gray-cool) url('data:image/svg+xml;charset=utf8, <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="40" height="40" transform="matrix(-1 0 0 1 40 0)" fill="%23EDEDE9"/><path d="M16 19.4999L22.624 19.4999L20.0967 17.3837C19.885 17.2064 19.8569 16.8903 20.0342 16.6786C20.2114 16.4672 20.5266 16.4392 20.7383 16.6161L24.3213 19.6161L24.3965 19.6962C24.4627 19.7827 24.5 19.889 24.5 19.9999C24.5 20.1479 24.4347 20.2887 24.3213 20.3837L20.7383 23.3837C20.5266 23.5606 20.2114 23.5326 20.0342 23.3212C19.8569 23.1095 19.885 22.7934 20.0967 22.6161L22.624 20.4999L16 20.4999C15.7239 20.4999 15.5 20.276 15.5 19.9999C15.5 19.7238 15.7239 19.4999 16 19.4999Z" fill="%23211713"/></svg>') center/cover no-repeat;
}

.breadcrumbs {
  padding: 2.5rem;
}
@media (768px <= width) {
  .breadcrumbs {
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
    padding-left: 0;
    padding-right: 0;
  }
}
.breadcrumbs__list {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-size: 1.1rem;
  color: var(--color-lighttext);
  width: 100%;
  min-width: 0;
}
.breadcrumbs__item {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  flex-shrink: 0;
  /* 現在地が入っている li だけを伸縮可能にする */
}
.breadcrumbs__item:has(.breadcrumbs__current) {
  flex: 1 1 auto;
  min-width: 0;
}
.breadcrumbs__link {
  color: var(--color-gold-muted);
  white-space: nowrap;
}
.breadcrumbs__current {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.breadcrumbs__separator {
  width: 1rem;
  height: 0.1rem;
  background: var(--color-gray-cool);
  display: inline-block;
  flex-shrink: 0; /* 区切り線が潰れるのを防ぐ */
}

input[type=checkbox] {
  background: var(--color-gray-soft);
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  position: relative;
}
input[type=checkbox]::after {
  content: "";
  width: 1rem;
  height: 8rem;
  background: url('data:image/svg+xml;charset=utf8, <svg width="10" height="9" viewBox="0 0 10 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.365723 4.71667L2.81404 7.34167L9.36572 0.341675" stroke="%239A8858"/></svg>') center/contain no-repeat;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  opacity: 0;
}
input[type=checkbox]:checked::after {
  opacity: 1;
}

label:has(input[type=checkbox]:checked) {
  background-color: var(--color-gold-muted);
  color: #fff;
}

.headline .en {
  font-size: 4rem;
  font-weight: 700;
  line-height: 100%;
}
@media (768px <= width) {
  .headline .en {
    font-size: 5.2rem;
  }
}
.headline .ja {
  margin-top: 0.5rem;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 100%;
}
@media (768px <= width) {
  .headline .ja {
    margin-top: 1.5rem;
    font-size: 1.5rem;
  }
}
.headline.center {
  text-align: center;
}

.heading, .wp-block-heading:is(h2) {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 166%;
  padding-left: 2.3rem;
  position: relative;
}
.heading::before, .wp-block-heading:is(h2)::before {
  content: "";
  width: 3px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  translate: 0 -50%;
  background: linear-gradient(to bottom, var(--color-text) calc(100% - 0.8rem), var(--color-gold-muted) calc(100% - 0.8rem));
}

[class^=icon] {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

@media (hover: hover) and (width >= 768px) {
  a:has(i[class^=icon]) i::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: 0.25s opacity;
  }
  a:has(i[class^=icon]) i.reverse::after {
    opacity: 1;
  }
}

.icon-mail {
  background: url(../images/common/icon_mail.svg) center/contain no-repeat;
  width: 1.8rem;
  height: 1.2rem;
}

.icon-tel {
  background: url(../images/common/icon_tel.svg) center/contain no-repeat;
  width: 1.75rem;
  aspect-ratio: 1;
}
.icon-tel.white {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.4195 3.79945C12.825 6.11779 11.6185 8.23381 9.92616 9.92616C8.23381 11.6185 6.11779 12.825 3.79945 13.4195C2.01558 13.8736 0.5 12.3397 0.5 10.4983V9.66513C0.5 9.20521 0.874104 8.8361 1.33153 8.79028C2.09006 8.71487 2.83466 8.53573 3.54449 8.25787L4.81094 9.52432C6.87299 8.53581 8.53581 6.87299 9.52432 4.81094L8.25787 3.54449C8.53602 2.8347 8.71544 2.0901 8.79111 1.33153C8.8361 0.873271 9.20521 0.5 9.66513 0.5H10.4983C12.3397 0.5 13.8736 2.01558 13.4195 3.79945Z" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  width: 1.5rem;
}

.icon-youtube {
  background: url(../images/common/icon_youtube.svg) center/contain no-repeat;
  width: 2rem;
  height: 1.4rem;
}
.icon-youtube.black {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="14" viewBox="0 0 20 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 10L13.19 7L8 4V10ZM19.56 2.17C19.69 2.64 19.78 3.27 19.84 4.07C19.91 4.87 19.94 5.56 19.94 6.16L20 7C20 9.19 19.84 10.8 19.56 11.83C19.31 12.73 18.73 13.31 17.83 13.56C17.36 13.69 16.5 13.78 15.18 13.84C13.88 13.91 12.69 13.94 11.59 13.94L10 14C5.81 14 3.2 13.84 2.17 13.56C1.27 13.31 0.69 12.73 0.44 11.83C0.31 11.36 0.22 10.73 0.16 9.93C0.0900001 9.13 0.0599999 8.44 0.0599999 7.84L0 7C0 4.81 0.16 3.2 0.44 2.17C0.69 1.27 1.27 0.69 2.17 0.44C2.64 0.31 3.5 0.22 4.82 0.16C6.12 0.0899998 7.31 0.0599999 8.41 0.0599999L10 0C14.19 0 16.8 0.16 17.83 0.44C18.73 0.69 19.31 1.27 19.56 2.17Z" fill="%23211713"/></svg>');
}
.icon-youtube.reverse::after {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="14" viewBox="0 0 20 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 10L13.19 7L8 4V10ZM19.56 2.17C19.69 2.64 19.78 3.27 19.84 4.07C19.91 4.87 19.94 5.56 19.94 6.16L20 7C20 9.19 19.84 10.8 19.56 11.83C19.31 12.73 18.73 13.31 17.83 13.56C17.36 13.69 16.5 13.78 15.18 13.84C13.88 13.91 12.69 13.94 11.59 13.94L10 14C5.81 14 3.2 13.84 2.17 13.56C1.27 13.31 0.69 12.73 0.44 11.83C0.31 11.36 0.22 10.73 0.16 9.93C0.0900001 9.13 0.0599999 8.44 0.0599999 7.84L0 7C0 4.81 0.16 3.2 0.44 2.17C0.69 1.27 1.27 0.69 2.17 0.44C2.64 0.31 3.5 0.22 4.82 0.16C6.12 0.0899998 7.31 0.0599999 8.41 0.0599999L10 0C14.19 0 16.8 0.16 17.83 0.44C18.73 0.69 19.31 1.27 19.56 2.17Z" fill="%239a8858"/></svg>');
}

.icon-facebook {
  background: url(../images/common/icon_facebook.svg) center/contain no-repeat;
  width: 2rem;
  height: 2rem;
}
.icon-facebook.black {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 10C20 4.48 15.52 0 10 0C4.48 0 0 4.48 0 10C0 14.84 3.44 18.87 8 19.8V13H6V10H8V7.5C8 5.57 9.57 4 11.5 4H14V7H12C11.45 7 11 7.45 11 8V10H14V13H11V19.95C16.05 19.45 20 15.19 20 10Z" fill="%23211713"/></svg>');
}
.icon-facebook.reverse::after {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 10C20 4.48 15.52 0 10 0C4.48 0 0 4.48 0 10C0 14.84 3.44 18.87 8 19.8V13H6V10H8V7.5C8 5.57 9.57 4 11.5 4H14V7H12C11.45 7 11 7.45 11 8V10H14V13H11V19.95C16.05 19.45 20 15.19 20 10Z" fill="%239a8858"/></svg>');
}

.icon-instagram {
  background: url(../images/common/icon_instagram.svg) center/contain no-repeat;
  width: 2rem;
  height: 2rem;
  display: inline-block;
}
.icon-instagram.black {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.0286 0C12.1536 0.003 12.7246 0.009 13.2176 0.023L13.4116 0.03C13.6356 0.038 13.8566 0.0479999 14.1236 0.0599999C15.1876 0.11 15.9136 0.278 16.5506 0.525C17.2106 0.779 17.7666 1.123 18.3226 1.678C18.8313 2.17773 19.2248 2.78247 19.4756 3.45C19.7226 4.087 19.8906 4.813 19.9406 5.878C19.9526 6.144 19.9626 6.365 19.9706 6.59L19.9766 6.784C19.9916 7.276 19.9976 7.847 19.9996 8.972L20.0006 9.718V11.028C20.003 11.7574 19.9953 12.4868 19.9776 13.216L19.9716 13.41C19.9636 13.635 19.9536 13.856 19.9416 14.122C19.8916 15.187 19.7216 15.912 19.4756 16.55C19.2248 17.2175 18.8313 17.8223 18.3226 18.322C17.8228 18.8307 17.2181 19.2242 16.5506 19.475C15.9136 19.722 15.1876 19.89 14.1236 19.94L13.4116 19.97L13.2176 19.976C12.7246 19.99 12.1536 19.997 11.0286 19.999L10.2826 20H8.97357C8.24383 20.0026 7.51409 19.9949 6.78457 19.977L6.59057 19.971C6.35318 19.962 6.11584 19.9517 5.87857 19.94C4.81457 19.89 4.08857 19.722 3.45057 19.475C2.7834 19.2241 2.17901 18.8306 1.67957 18.322C1.17051 17.8224 0.776678 17.2176 0.525569 16.55C0.278569 15.913 0.110569 15.187 0.0605687 14.122L0.0305688 13.41L0.0255689 13.216C0.00713493 12.4868 -0.00119929 11.7574 0.000568797 11.028V8.972C-0.0021991 8.2426 0.00513501 7.5132 0.0225689 6.784L0.0295688 6.59C0.0375688 6.365 0.0475688 6.144 0.0595688 5.878C0.109569 4.813 0.277569 4.088 0.524569 3.45C0.776263 2.7822 1.17079 2.17744 1.68057 1.678C2.17972 1.16955 2.78376 0.776074 3.45057 0.525C4.08857 0.278 4.81357 0.11 5.87857 0.0599999C6.14457 0.0479999 6.36657 0.038 6.59057 0.03L6.78457 0.0239999C7.51376 0.00623271 8.24316 -0.0014347 8.97257 0.000999928L11.0286 0ZM10.0006 5C8.67449 5 7.40272 5.52678 6.46503 6.46447C5.52735 7.40215 5.00057 8.67392 5.00057 10C5.00057 11.3261 5.52735 12.5979 6.46503 13.5355C7.40272 14.4732 8.67449 15 10.0006 15C11.3267 15 12.5984 14.4732 13.5361 13.5355C14.4738 12.5979 15.0006 11.3261 15.0006 10C15.0006 8.67392 14.4738 7.40215 13.5361 6.46447C12.5984 5.52678 11.3267 5 10.0006 5ZM10.0006 7C10.3945 6.99993 10.7847 7.07747 11.1487 7.22817C11.5127 7.37887 11.8434 7.5998 12.122 7.87833C12.4007 8.15686 12.6217 8.48754 12.7725 8.85149C12.9233 9.21544 13.001 9.60553 13.0011 9.9995C13.0011 10.3935 12.9236 10.7836 12.7729 11.1476C12.6222 11.5116 12.4013 11.8423 12.1227 12.121C11.8442 12.3996 11.5135 12.6206 11.1496 12.7714C10.7856 12.9223 10.3955 12.9999 10.0016 13C9.20592 13 8.44286 12.6839 7.88025 12.1213C7.31764 11.5587 7.00157 10.7956 7.00157 10C7.00157 9.20435 7.31764 8.44129 7.88025 7.87868C8.44286 7.31607 9.20592 7 10.0016 7M15.2516 3.5C14.92 3.5 14.6021 3.6317 14.3677 3.86612C14.1333 4.10054 14.0016 4.41848 14.0016 4.75C14.0016 5.08152 14.1333 5.39946 14.3677 5.63388C14.6021 5.8683 14.92 6 15.2516 6C15.5831 6 15.901 5.8683 16.1355 5.63388C16.3699 5.39946 16.5016 5.08152 16.5016 4.75C16.5016 4.41848 16.3699 4.10054 16.1355 3.86612C15.901 3.6317 15.5831 3.5 15.2516 3.5Z" fill="%23211713"/></svg>');
}
.icon-instagram.reverse::after {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.0286 0C12.1536 0.003 12.7246 0.009 13.2176 0.023L13.4116 0.03C13.6356 0.038 13.8566 0.0479999 14.1236 0.0599999C15.1876 0.11 15.9136 0.278 16.5506 0.525C17.2106 0.779 17.7666 1.123 18.3226 1.678C18.8313 2.17773 19.2248 2.78247 19.4756 3.45C19.7226 4.087 19.8906 4.813 19.9406 5.878C19.9526 6.144 19.9626 6.365 19.9706 6.59L19.9766 6.784C19.9916 7.276 19.9976 7.847 19.9996 8.972L20.0006 9.718V11.028C20.003 11.7574 19.9953 12.4868 19.9776 13.216L19.9716 13.41C19.9636 13.635 19.9536 13.856 19.9416 14.122C19.8916 15.187 19.7216 15.912 19.4756 16.55C19.2248 17.2175 18.8313 17.8223 18.3226 18.322C17.8228 18.8307 17.2181 19.2242 16.5506 19.475C15.9136 19.722 15.1876 19.89 14.1236 19.94L13.4116 19.97L13.2176 19.976C12.7246 19.99 12.1536 19.997 11.0286 19.999L10.2826 20H8.97357C8.24383 20.0026 7.51409 19.9949 6.78457 19.977L6.59057 19.971C6.35318 19.962 6.11584 19.9517 5.87857 19.94C4.81457 19.89 4.08857 19.722 3.45057 19.475C2.7834 19.2241 2.17901 18.8306 1.67957 18.322C1.17051 17.8224 0.776678 17.2176 0.525569 16.55C0.278569 15.913 0.110569 15.187 0.0605687 14.122L0.0305688 13.41L0.0255689 13.216C0.00713493 12.4868 -0.00119929 11.7574 0.000568797 11.028V8.972C-0.0021991 8.2426 0.00513501 7.5132 0.0225689 6.784L0.0295688 6.59C0.0375688 6.365 0.0475688 6.144 0.0595688 5.878C0.109569 4.813 0.277569 4.088 0.524569 3.45C0.776263 2.7822 1.17079 2.17744 1.68057 1.678C2.17972 1.16955 2.78376 0.776074 3.45057 0.525C4.08857 0.278 4.81357 0.11 5.87857 0.0599999C6.14457 0.0479999 6.36657 0.038 6.59057 0.03L6.78457 0.0239999C7.51376 0.00623271 8.24316 -0.0014347 8.97257 0.000999928L11.0286 0ZM10.0006 5C8.67449 5 7.40272 5.52678 6.46503 6.46447C5.52735 7.40215 5.00057 8.67392 5.00057 10C5.00057 11.3261 5.52735 12.5979 6.46503 13.5355C7.40272 14.4732 8.67449 15 10.0006 15C11.3267 15 12.5984 14.4732 13.5361 13.5355C14.4738 12.5979 15.0006 11.3261 15.0006 10C15.0006 8.67392 14.4738 7.40215 13.5361 6.46447C12.5984 5.52678 11.3267 5 10.0006 5ZM10.0006 7C10.3945 6.99993 10.7847 7.07747 11.1487 7.22817C11.5127 7.37887 11.8434 7.5998 12.122 7.87833C12.4007 8.15686 12.6217 8.48754 12.7725 8.85149C12.9233 9.21544 13.001 9.60553 13.0011 9.9995C13.0011 10.3935 12.9236 10.7836 12.7729 11.1476C12.6222 11.5116 12.4013 11.8423 12.1227 12.121C11.8442 12.3996 11.5135 12.6206 11.1496 12.7714C10.7856 12.9223 10.3955 12.9999 10.0016 13C9.20592 13 8.44286 12.6839 7.88025 12.1213C7.31764 11.5587 7.00157 10.7956 7.00157 10C7.00157 9.20435 7.31764 8.44129 7.88025 7.87868C8.44286 7.31607 9.20592 7 10.0016 7M15.2516 3.5C14.92 3.5 14.6021 3.6317 14.3677 3.86612C14.1333 4.10054 14.0016 4.41848 14.0016 4.75C14.0016 5.08152 14.1333 5.39946 14.3677 5.63388C14.6021 5.8683 14.92 6 15.2516 6C15.5831 6 15.901 5.8683 16.1355 5.63388C16.3699 5.39946 16.5016 5.08152 16.5016 4.75C16.5016 4.41848 16.3699 4.10054 16.1355 3.86612C15.901 3.6317 15.5831 3.5 15.2516 3.5Z" fill="%239a8858"/></svg>');
}

.icon-arrow {
  width: 2.1rem;
  aspect-ratio: 1;
  background: url(../images/common/nav_arrow.svg) center/contain no-repeat;
}
.icon-arrow.reverse::after {
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="21" height="21" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 10.5a9.5 9.5 0 1 0-19 0 9.5 9.5 0 0 0 19 0Zm-9.466-3.321a.5.5 0 0 1 .704-.063l3.583 3a.5.5 0 0 1 0 .768l-3.583 3a.5.5 0 0 1-.641-.768L13.123 11H6.5a.5.5 0 0 1 0-1h6.623l-2.526-2.116a.5.5 0 0 1-.063-.705ZM21 10.5C21 16.299 16.299 21 10.5 21S0 16.299 0 10.5 4.701 0 10.5 0 21 4.701 21 10.5Z" fill="%239a8858"/></svg>');
}

.icon-search {
  background: url('data:image/svg+xml;charset=utf8, <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17 17L13.1396 13.1396M13.1396 13.1396C13.7999 12.4793 14.3237 11.6953 14.6811 10.8326C15.0385 9.96978 15.2224 9.04507 15.2224 8.11121C15.2224 7.17735 15.0385 6.25264 14.6811 5.38987C14.3237 4.5271 13.7999 3.74316 13.1396 3.08283C12.4793 2.42249 11.6953 1.89868 10.8326 1.54131C9.96978 1.18394 9.04507 1 8.11121 1C7.17735 1 6.25264 1.18394 5.38987 1.54131C4.5271 1.89868 3.74316 2.42249 3.08283 3.08283C1.74921 4.41644 1 6.2252 1 8.11121C1 9.99722 1.74921 11.806 3.08283 13.1396C4.41644 14.4732 6.2252 15.2224 8.11121 15.2224C9.99722 15.2224 11.806 14.4732 13.1396 13.1396Z" stroke="%23211713" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  width: 1.8rem;
  height: 1.8rem;
}

.icon-request {
  background: url('data:image/svg+xml;charset=utf8, <svg width="13" height="16" viewBox="0 0 13 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.24996 8.75H8.74991M4.24996 11.75H6.49994M0.5 2V14C0.5 14.3978 0.658034 14.7794 0.939335 15.0607C1.22064 15.342 1.60216 15.5 1.99998 15.5H10.9999C11.3977 15.5 11.7792 15.342 12.0605 15.0607C12.3418 14.7794 12.4999 14.3978 12.4999 14V5.2565C12.4998 5.05667 12.4599 4.85886 12.3824 4.67468C12.3048 4.49051 12.1913 4.32368 12.0484 4.184L8.71841 0.9275C8.43819 0.653493 8.06185 0.500049 7.66992 0.5H1.99998C1.60216 0.5 1.22064 0.658035 0.939335 0.93934C0.658034 1.22064 0.5 1.60218 0.5 2Z" stroke="white" stroke-linecap="round" stroke-linejoin="round"/><path d="M8 0.5V3.5C8 3.89782 8.15803 4.27936 8.43934 4.56066C8.72064 4.84196 9.10216 5 9.49998 5H12.5" stroke="white" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  width: 1.2rem;
  aspect-ratio: 12/15;
}

.icon-calendar {
  background: url('data:image/svg+xml;charset=utf8, <svg width="14" height="15" viewBox="0 0 14 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.04545 0V3.65217M9.95455 0V3.65217M0.5 5.47826H13.5M3.45455 7.91304V9.13043M7 7.91304V9.13043M10.5455 7.91304V9.13043M10.5455 10.3478V11.5652M7 10.3478V11.5652M3.45455 10.3478V11.5652M0.5 1.82609H13.5V14H0.5V1.82609Z" stroke="white" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  width: 1.5rem;
  aspect-ratio: 15/16;
}

.icon-work {
  background: url('data:image/svg+xml;charset=utf8, <svg width="28" height="27" viewBox="0 0 28 27" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.32357 20.7208V9.16252H14.9921V12.0523H19.0379L21.927 9.16252H25.1059C25.489 9.16252 25.8564 9.31471 26.1273 9.58561C26.3982 9.85652 26.5504 10.2239 26.5504 10.6071V25.0551C26.5504 25.4382 26.3982 25.8056 26.1273 26.0765C25.8564 26.3474 25.489 26.4996 25.1059 26.4996H3.43451C3.0513 26.5056 2.67074 26.4352 2.31498 26.2927C1.95922 26.1501 1.63537 25.9382 1.36228 25.6694C1.08918 25.4005 0.872307 25.0799 0.724272 24.7264C0.576237 24.3729 0.5 23.9935 0.5 23.6102C0.5 23.227 0.576237 22.8475 0.724272 22.494C0.872307 22.1405 1.08918 21.82 1.36228 21.5511C1.63537 21.2822 1.95922 21.0703 2.31498 20.9278C2.67074 20.7852 3.0513 20.7149 3.43451 20.7208M3.43451 20.7208C2.66822 20.7208 1.93331 21.0252 1.3914 21.567C0.849484 22.1087 0.544949 22.8436 0.544765 23.6099V7.718C0.544765 6.95159 0.84922 6.21657 1.39115 5.67463C1.93309 5.1327 2.6681 4.82825 3.43451 4.82825H6.32357V20.7208H3.43451Z" stroke="%23211713" stroke-linecap="round" stroke-linejoin="round"/><path d="M26.1316 2.93506L24.1087 0.912861C23.8387 0.648226 23.4757 0.5 23.0976 0.5C22.7196 0.5 22.3565 0.648226 22.0865 0.912861L14.9922 8.0072V12.0523H19.038L26.1316 4.95795C26.3963 4.68794 26.5445 4.32493 26.5445 3.94685C26.5445 3.56878 26.3963 3.20508 26.1316 2.93506Z" fill="%239A8858" stroke="%23211713" stroke-linecap="round" stroke-linejoin="round"/><path d="M10.5 13.5V22.5H22.5V13.5H21.1154" stroke="%23211713" stroke-linecap="round" stroke-linejoin="round"/><path d="M11.5 17.5H16.5V19.5" stroke="%23211713" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  width: 2.65rem;
  height: 2.6rem;
}

.icon-list {
  background: url('data:image/svg+xml;charset=utf8, <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 12H0V10H2V12ZM7 12H5V10H7V12ZM12 12H10V10H12V12ZM2 7H0V5H2V7ZM7 7H5V5H7V7ZM12 7H10V5H12V7ZM2 2H0V0H2V2ZM7 2H5V0H7V2ZM12 2H10V0H12V2Z" fill="%23888989"/></svg>') center/contain no-repeat;
  width: 1.2rem;
  height: 1.2rem;
}

.caseLists {
  margin-top: 4.8rem;
  margin-left: 2.5rem;
  margin-right: 2.5rem;
  margin-bottom: 14rem;
}
@media (768px <= width) {
  .caseLists {
    margin-left: 0;
    margin-right: 0;
    margin-top: 5rem;
  }
}
@media (768px <= width) {
  .caseLists__container {
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
  }
}
.caseLists__content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem 1.5rem;
}
@media (768px <= width) {
  .caseLists__content {
    grid-template-columns: repeat(3, 1fr);
    gap: 5rem 3rem;
  }
}
.caseLists__item-link {
  display: block;
}
@media (768px <= width) {
  .caseLists__item-link {
    height: 100%;
  }
}
@media (hover: hover) and (width >= 768px) {
  .caseLists__item-link {
    transition: all var(--speed) ease-in-out;
  }
  .caseLists__item-link img {
    transition: scale 1s cubic-bezier(0.43, 0.05, 0.17, 1) 0s;
  }
  .caseLists__item-link:hover {
    color: var(--color-gold-muted);
  }
  .caseLists__item-link:hover img {
    scale: 1.1;
  }
}
.caseLists__item-thumbnail {
  aspect-ratio: 325/217;
  overflow: hidden;
}
.caseLists__item-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.caseLists__item-title {
  margin-top: 1rem;
}
@media (768px <= width) {
  .caseLists__item-title {
    margin-top: 2rem;
  }
}
.caseLists__item-info {
  margin-top: 0.5rem;
}
@media (768px <= width) {
  .caseLists__item-info {
    margin-top: 1rem;
  }
}

.columnList {
  padding: 8rem 2.5rem;
}
.columnList.bg {
  background: var(--color-gray-soft);
}
@media (768px <= width) {
  .columnList {
    padding: 12rem 0;
  }
}
@media (768px <= width) {
  .columnList__container {
    margin-left: max(50% - 60rem, 5rem);
    margin-right: max(50% - 60rem, 5rem);
    max-width: 120rem;
  }
}
.columnList__content {
  margin-top: 4rem;
  display: grid;
  gap: 2rem;
}
@media (768px <= width) {
  .columnList__content {
    grid-template-columns: repeat(4, 1fr);
    gap: 3.3rem;
  }
}
.columnList__item-link {
  display: grid;
  grid-template-columns: 32vw auto;
  align-content: start;
  gap: 0 1.5rem;
}
@media (768px <= width) {
  .columnList__item-link {
    grid-template-columns: auto;
  }
}
@media (hover: hover) and (width >= 768px) {
  .columnList__item-link {
    transition: all var(--speed) ease-in-out;
  }
  .columnList__item-link img {
    transition: scale 1s cubic-bezier(0.43, 0.05, 0.17, 1) 0s;
  }
  .columnList__item-link:hover {
    color: var(--color-gold-muted);
  }
  .columnList__item-link:hover img {
    scale: 1.1;
  }
}
.columnList__item-thumbnail {
  grid-row: span 3;
  overflow: hidden;
}
@media (768px <= width) {
  .columnList__item-thumbnail {
    grid-row: auto;
  }
}
.columnList__item-info {
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media (768px <= width) {
  .columnList__item-info {
    margin-top: 2rem;
  }
}
.columnList__item-info .category {
  background: var(--color-gold-muted);
  color: #fff;
  font-size: 1.2rem;
  line-height: 166%;
  padding: 0.2rem 0.8rem;
}
.columnList__item-info time {
  font-size: 1.3rem;
  font-weight: 700;
  font-family: var(--ff-roboto);
  color: var(--color-lighttext);
  line-height: 1;
}
.columnList__item-title {
  margin-top: 1rem;
}
.columnList__morebtn {
  margin-top: 4rem;
  margin-left: auto;
  margin-right: auto;
  width: 24.5rem;
}
@media (768px <= width) {
  .columnList__morebtn {
    margin-top: 5rem;
    width: 28rem;
  }
}

.voiceList {
  display: grid;
  gap: 3rem 1.5rem;
}
@media (768px <= width) {
  .voiceList {
    grid-template-columns: repeat(3, 1fr);
    gap: 5rem 3rem;
  }
}
.voiceList__item-link {
  display: block;
}
@media (768px <= width) {
  .voiceList__item-link {
    height: 100%;
  }
}
@media (hover: hover) and (width >= 768px) {
  .voiceList__item-link {
    transition: all var(--speed) ease-in-out;
  }
  .voiceList__item-link img {
    transition: scale 1s cubic-bezier(0.43, 0.05, 0.17, 1) 0s;
  }
  .voiceList__item-link:hover {
    color: var(--color-gold-muted);
  }
  .voiceList__item-link:hover img {
    scale: 1.1;
  }
}
.voiceList__item-thumbnail {
  aspect-ratio: 325/217;
  overflow: hidden;
}
.voiceList__item-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.voiceList__item-title {
  margin-top: 1rem;
}
@media (768px <= width) {
  .voiceList__item-title {
    margin-top: 2rem;
  }
}
.voiceList__item-info {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 2rem;
}
@media (768px <= width) {
  .voiceList__item-info {
    margin-top: 2rem;
  }
}
.voiceList__item-info .category {
  background: var(--color-gold-muted);
  color: #fff;
  font-size: 1.2rem;
  line-height: 166%;
  padding: 0.2rem 0.8rem;
}
.voiceList__item-info time {
  font-size: 1.3rem;
  font-weight: 700;
  font-family: var(--ff-roboto);
  color: var(--color-lighttext);
  line-height: 1;
}

/* --- レイアウト / Layout --- */
.entry-is-isolated *:last-child {
  margin-bottom: 0;
}

/* グループ */
.wp-block-columns {
  margin-top: 6rem;
  margin-bottom: 6rem;
} /* カラム全体 */
/* 各カラム */
/* スペーサー */
.single-column hr.wp-block-separator {
  background: var(--clr-line);
  width: 100%;
  height: 1px;
  border: none;
  margin: 3rem 0;
}
@media (768px <= width) {
  .single-column hr.wp-block-separator {
    width: auto;
    margin: 6rem 0;
  }
}

/* 区切り線 */
/* グリッド (最新版) */
/* --- テキスト / Text --- */
/* 段落 */
.entry-is-isolated p {
  margin-bottom: 28px;
  margin-top: 28px;
  font-size: 1.5rem;
  line-height: 200%;
}
.entry-is-isolated p:first-child {
  margin-top: 0;
}
.entry-is-isolated p:last-child {
  margin-bottom: 0;
}
.entry-is-isolated p a {
  color: var(--color-green);
  text-decoration: underline;
}
@media (hover: hover) and (width >= 768px) {
  .entry-is-isolated p a {
    transition: all var(--speed) ease-in-out;
  }
  .entry-is-isolated p a:hover {
    text-decoration: none;
  }
}

.wp-block-heading {
  margin-top: 8rem;
}
.wp-block-heading:is(h2) {
  margin-bottom: 3rem;
}
.wp-block-heading:is(h3) {
  margin-bottom: 2.5rem;
  padding: 1.5rem 0;
  font-size: 2rem;
  font-weight: 700;
  line-height: 166%;
  border-bottom: 1px solid currentColor;
}

/* 見出し */
.wp-block-list {
  margin: 3rem 0;
  font-size: 1.5rem;
}
@media (768px <= width) {
  .wp-block-list {
    margin: 3rem 0;
  }
}
.wp-block-list:is(ul) li {
  position: relative;
  padding-left: 1.5rem;
  line-height: 200%;
}
.wp-block-list:is(ul) li::before {
  content: "";
  width: 0.5rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 100%;
  position: absolute;
  top: 0.85em;
  left: 0;
  display: block;
}
.wp-block-list:is(ol) {
  counter-reset: listnum;
}
.wp-block-list:is(ol) li {
  position: relative;
  padding-left: 3rem;
  line-height: 200%;
  counter-increment: listnum;
}
.wp-block-list:is(ol) li::before {
  content: counter(listnum) ".";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

/* リスト全体 */
/* リスト項目 */
.wp-block-quote {
  background-color: var(--color-gray-soft);
  margin: 4rem 0;
  padding: 4.8rem 2rem 4rem;
  border-radius: 1rem;
  position: relative;
}
@media (768px <= width) {
  .wp-block-quote {
    margin: 8rem 0;
    border-radius: 2rem;
    padding: 4rem 5rem 4rem 10rem;
  }
}
.wp-block-quote::before {
  content: "";
  background: url('data:image/svg+xml;charset=utf8, <svg width="30" height="18" viewBox="0 0 30 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.4375 18C27.0319 18 30 15.1489 30 11.7001C30 10.1252 29.5556 8.7608 28.7044 7.72043C28.0819 6.95904 27.1613 6.54505 26.2669 6.10046C26.2181 4.6623 26.3044 4.2681 27.5044 1.96055C28.1362 0.747381 26.7187 -0.501789 25.5131 0.205595C19.1287 3.97831 16.875 8.40081 16.875 11.7001C16.875 15.1489 19.8431 18 23.4375 18ZM6.5625 18C10.1569 18 13.125 15.1489 13.125 11.7001C13.125 10.1252 12.6806 8.7608 11.8294 7.72043C11.2069 6.95904 10.2862 6.54505 9.39187 6.10046C9.34312 4.6623 9.42937 4.2681 10.6294 1.96055C11.2612 0.747381 9.84375 -0.501789 8.63813 0.205595C2.25375 3.97831 0 8.40081 0 11.7001C0 15.1489 2.96812 18 6.5625 18Z" fill="%233E3A2A"/></svg>') center/contain no-repeat;
  width: 3rem;
  aspect-ratio: 30/18;
  position: absolute;
  left: 2rem;
  top: 2rem;
}
@media (768px <= width) {
  .wp-block-quote::before {
    top: 5rem;
    left: 4rem;
  }
}

/* 引用 */
/* 成形済みテキスト */
.wp-block-code {
  margin: 4rem 0;
  background-color: var(--color-gray-soft);
  border-radius: 1rem;
  padding: 2rem;
  overflow-x: auto;
} /* コード */
/* プルクオート */
.wp-block-table,
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table {
  margin: 3rem 0;
} /* 表 */
/* --- メディア / Media --- */
.wp-block-image {
  margin: 3rem 0;
} /* 画像 */
/* ギャラリー */
/* 動画 */
/* 音声 */
/* カバー画像 */
/* ファイル */
.wp-block-media-text {
  margin: 4rem 0;
  gap: 2em;
}
@media (768px <= width) {
  .wp-block-media-text {
    margin: 8rem 0;
  }
}
.wp-block-media-text .wp-block-media-text__content {
  padding: 0;
}

/* メディアとテキスト */
.wp-block-embed {
  margin: 4rem 0;
}
@media (768px <= width) {
  .wp-block-embed {
    margin: 8rem 0;
  }
}
.wp-block-embed.is-type-video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 500/281;
}
.wp-block-embed.wp-block-embed-youtube .wp-block-embed__wrapper {
  aspect-ratio: 500/281;
}
.wp-block-embed.wp-block-embed-youtube iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* --- デザイン・部品 / Design --- */
.wp-block-buttons {
  margin: 3rem 0;
}
@media (768px <= width) {
  .wp-block-buttons {
    gap: 2rem;
  }
}

/* ボタン群 */
/* ボタン（枠） */
.wp-block-button__link {
  display: grid;
  padding: 1rem 7rem 1rem 2.5rem;
  width: 100%;
  font-size: 1.4rem;
  line-height: 140%;
  text-align: left;
  position: relative;
}
@media (768px <= width) {
  .wp-block-button__link {
    padding: 2rem 9rem 2rem 3rem;
  }
}
.wp-block-button__link {
  --wp--preset--font-size--small: 12px;
  --wp--preset--font-size--medium: 14px;
  --wp--preset--font-size--large: 16px;
  --wp--preset--font-size--x-large: 18px;
}
.is-style-fill .wp-block-button__link {
  background-color: #fff;
  color: currentColor;
}
.is-style-fill .wp-block-button__link::after {
  content: "";
  width: 4rem;
  height: 2rem;
  position: absolute;
  right: 2rem;
  top: calc(50% - 1rem);
}
@media (768px <= width) {
  .is-style-fill .wp-block-button__link::after {
    width: 5rem;
    height: 2.5rem;
    top: calc(50% - 1.25rem);
  }
}
@media (hover: hover) and (width >= 768px) {
  .is-style-fill .wp-block-button__link {
    transition: all var(--speed) ease-in-out;
  }
  .is-style-fill .wp-block-button__link::after {
    transition: all var(--speed) ease-in-out;
  }
  .is-style-fill .wp-block-button__link:hover {
    background: var(--color-green);
    color: #fff;
  }
}
.is-style-outline .wp-block-button__link {
  background: none;
  border-color: currentColor;
  border-width: 1px;
  color: currentColor;
}
@media (hover: hover) and (width >= 768px) {
  .is-style-outline .wp-block-button__link {
    transition: all var(--speed) ease-in-out;
  }
  .is-style-outline .wp-block-button__link:hover {
    background-color: #fff;
    border-color: #fff;
  }
}

/* ボタン（中身のaタグ） */
/* 詳細(アコーディオン) */
/* --- サイト要素 / Site Entities --- */
/* サイトタイトル */
/* キャッチフレーズ */
/* ナビゲーションメニュー */
/* 記事タイトル */
/* 記事本文 */
/* 抜粋 */
/* 投稿日 */
#toc_container {
  width: 100% !important;
  background: #cecbc2;
  border-radius: 1rem;
  padding: 2rem;
  margin: 3rem 0;
  border: none;
}
@media (768px <= width) {
  #toc_container {
    padding: 3rem 4rem;
  }
}
#toc_container.no_bullets p.toc_title a {
  background: url('data:image/svg+xml;charset=utf8, <svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="25" height="25" rx="5" fill="%23A09D92"/><rect x="7" y="12" width="11" height="1" rx="0.5" fill="white"/></svg>') center/contain no-repeat;
}
#toc_container.no_bullets.contracted p.toc_title a {
  background: url('data:image/svg+xml;charset=utf8, <svg width="21" height="21" viewBox="0 0 21 21" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="21" height="21" rx="3" fill="%23A09D92"/><rect x="6" y="10" width="9" height="1" rx="0.5" fill="white"/><rect x="11" y="6" width="9" height="1" rx="0.5" transform="rotate(90 11 6)" fill="white"/></svg>') center/contain no-repeat;
}
#toc_container p.toc_title {
  text-align: left;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 1rem;
  font-size: 1.6rem;
}
@media (768px <= width) {
  #toc_container p.toc_title {
    font-size: 2rem;
  }
}
#toc_container p.toc_title a {
  width: 2.1rem;
  display: inline-block;
  text-indent: -999em;
}
@media (768px <= width) {
  #toc_container p.toc_title a {
    width: 2.5rem;
  }
}
#toc_container p.toc_title .toc_toggle {
  height: 100%;
}
#toc_container p.toc_title .toc_toggle .toc_brackets {
  display: none;
}
#toc_container p.toc_title + ul.toc_list {
  margin-top: 0;
}
#toc_container .toc_list {
  font-size: 1.6rem;
}
#toc_container .toc_list a {
  display: block;
  padding: 1rem 0;
  border-bottom: 1px solid #a09d92;
  font-size: 1.4rem;
  line-height: 166%;
}
@media (768px <= width) {
  #toc_container .toc_list a {
    font-size: 1.6rem;
  }
}
#toc_container .toc_list .toc_number::after {
  content: " ) ";
  display: inline-block;
  padding: 0 1em 0 0.3em;
}