/* STUDIOから移したサイトの追記 */
html { scroll-behavior: smooth; }
/* スマホのメニュー（元のサイトの見た目をそのまま） */
.esion-menu[hidden] { display: none; }
.esion-menu { position: fixed; inset: 0; z-index: 9999; }
.esion-menu .design-canvas__modal { position: fixed; inset: 0; display: block; pointer-events: auto; }
.esion-menu .design-canvas__modal__base { position: absolute; inset: 0; z-index: 0; border: 0; padding: 0; cursor: pointer; pointer-events: auto; }
.esion-menu .studio-canvas { position: relative; z-index: 1; height: 100%; pointer-events: none; }
@keyframes esion-menu-in { from { transform: translateX(100%); } to { transform: none; } }
.sd[data-s-0ef732bf-263b-4f0a-9992-866437e37a80] { align-content: flex-end; align-items: flex-end; background: #5e57451a; height: 100%; justify-content: flex-start; width: 100%; max-width: 100%; }
.sd[data-s-e491780d-ed03-4de0-bf3e-a014723f7799] { align-content: center; align-items: center; background: var(--s-color-318e0e1d); border-radius: 0; box-shadow: -16px 0px 32px rgba(0,0,0,0.2); flex: none; flex-direction: column; flex-wrap: nowrap; height: 100vh; justify-content: flex-start; margin: 0px; opacity: 1; overflow-x: hidden; overflow-y: auto; padding: 120px 32px; transition-duration: 1000ms; translate: 0px 0px; width: 300px; z-index: 0; max-width: 100%; }
.sd[data-s-e491780d-ed03-4de0-bf3e-a014723f7799] { flex: none; width: 260px; max-width: 100%; }
.sd[data-s-daeab6bb-8d60-48a5-aa67-66be4dfa3d7a] { align-content: center; align-items: center; background: var(--s-color-848ea154); border-bottom: 0px solid transparent; border-left: 0px solid transparent; border-radius: 0; border-right: 0px solid transparent; border-top: 0px solid transparent; bottom: auto; box-shadow: none; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: 72px; justify-content: center; left: auto; margin: 0 0 0 0; padding: 0px; position: absolute; right: 0px; top: 0px; transform-origin: center center; width: 72px; z-index: 0; max-width: 100%; }
.sd[data-s-daeab6bb-8d60-48a5-aa67-66be4dfa3d7a] { display: flex; flex: none; }
.sd[data-s-daeab6bb-8d60-48a5-aa67-66be4dfa3d7a] { display: flex; flex: none; height: 60px; width: 60px; max-width: 100%; }
.sd[data-s-8736655b-7f57-45a9-92a8-6fee99746b29] { color: var(--s-color-35b64ecd); font-size: 24px; }
.sd[data-s-690613d9-ad02-4446-8767-1d0a3888b39c] { align-content: center; align-items: center; background: transparent; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: auto; justify-content: flex-start; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; width: auto; --gap-h-690613d9-ad02-4446-8767-1d0a3888b39c: 0px; --gap-v-690613d9-ad02-4446-8767-1d0a3888b39c: 32px; --gap-uuid: 690613d9-ad02-4446-8767-1d0a3888b39c; max-width: 100%; }
.sd[data-s-690613d9-ad02-4446-8767-1d0a3888b39c] { display: flex; --gap-h-690613d9-ad02-4446-8767-1d0a3888b39c: 0px; --gap-v-690613d9-ad02-4446-8767-1d0a3888b39c: 32px; }
.sd[data-s-690613d9-ad02-4446-8767-1d0a3888b39c] { display: flex; flex-direction: column; flex-wrap: nowrap; --gap-h-690613d9-ad02-4446-8767-1d0a3888b39c: 0px; --gap-v-690613d9-ad02-4446-8767-1d0a3888b39c: 32px; }
.sd[data-s-6927c83f-df0a-40d1-919b-9383deb6f90a] { align-content: center; align-items: center; flex-direction: column; flex-wrap: nowrap; justify-content: center; margin: 0px 0px 0px 0px; padding: 0px; max-width: 100%; }
.sd[data-s-6927c83f-df0a-40d1-919b-9383deb6f90a]:hover { opacity: 1; }
.sd[data-s-6927c83f-df0a-40d1-919b-9383deb6f90a] { display: flex; }
.sd[data-s-6927c83f-df0a-40d1-919b-9383deb6f90a] { display: flex; }
.sd[data-s-89243c02-d6fb-4486-8ecc-5d9b2369b6ad] { color: var(--s-color-35b64ecd); font-family: var(--s-font-f19f48b5); font-size: 18px; font-weight: 500; height: auto; letter-spacing: 0.1em; line-height: 1; margin: 0px 0px 0px 0px; padding: 0px; text-align: center; width: auto; max-width: 100%; justify-content: center; }
.sd[data-s-89243c02-d6fb-4486-8ecc-5d9b2369b6ad] { flex: none; }
.sd[data-s-249f4824-d762-4c93-af52-bbaec4d95000] { align-content: center; align-items: center; flex-direction: column; flex-wrap: nowrap; justify-content: center; margin: 0px 0px 0px 0px; padding: 0px; max-width: 100%; }
.sd[data-s-249f4824-d762-4c93-af52-bbaec4d95000]:hover { opacity: 1; }
.sd[data-s-249f4824-d762-4c93-af52-bbaec4d95000] { display: flex; }
.sd[data-s-249f4824-d762-4c93-af52-bbaec4d95000] { display: flex; }
.sd[data-s-2ef3e47e-a73d-41ee-aa5d-8d0f0078391d] { color: var(--s-color-35b64ecd); font-family: var(--s-font-f19f48b5); font-size: 18px; font-weight: 500; height: auto; letter-spacing: 0.1em; line-height: 1; margin: 0px 0px 0px 0px; padding: 0px; text-align: center; width: auto; max-width: 100%; justify-content: center; }
.sd[data-s-2ef3e47e-a73d-41ee-aa5d-8d0f0078391d] { flex: none; }
.sd[data-s-e04954a7-2c10-45d0-a537-073cd77e54d0] { align-content: center; align-items: center; flex-direction: column; flex-wrap: nowrap; justify-content: center; margin: 0px 0px 0px 0px; padding: 0px; max-width: 100%; }
.sd[data-s-e04954a7-2c10-45d0-a537-073cd77e54d0]:hover { opacity: 1; }
.sd[data-s-e04954a7-2c10-45d0-a537-073cd77e54d0] { display: flex; }
.sd[data-s-e04954a7-2c10-45d0-a537-073cd77e54d0] { display: flex; }
.sd[data-s-11bef72c-399d-42d9-841b-aa6ddfbbfdb8] { color: var(--s-color-35b64ecd); font-family: var(--s-font-f19f48b5); font-size: 18px; font-weight: 500; height: auto; letter-spacing: 0.1em; line-height: 1; margin: 0px 0px 0px 0px; padding: 0px; text-align: center; width: auto; max-width: 100%; justify-content: center; }
.sd[data-s-11bef72c-399d-42d9-841b-aa6ddfbbfdb8] { flex: none; }
.sd[data-s-db3f0eb5-cc30-4be8-994e-dbe464df05e9] { align-content: center; align-items: center; flex-direction: column; flex-wrap: nowrap; justify-content: center; margin: 0px 0px 0px 0px; padding: 0px; max-width: 100%; }
.sd[data-s-db3f0eb5-cc30-4be8-994e-dbe464df05e9]:hover { opacity: 1; }
.sd[data-s-db3f0eb5-cc30-4be8-994e-dbe464df05e9] { display: flex; }
.sd[data-s-db3f0eb5-cc30-4be8-994e-dbe464df05e9] { display: flex; }
.sd[data-s-27556b4b-cfe6-4cec-8c24-e78577660aff] { color: var(--s-color-35b64ecd); font-family: var(--s-font-f19f48b5); font-size: 18px; font-weight: 500; height: auto; letter-spacing: 0.1em; line-height: 1; margin: 0px 0px 0px 0px; padding: 0px; text-align: center; width: auto; max-width: 100%; justify-content: center; }
.sd[data-s-27556b4b-cfe6-4cec-8c24-e78577660aff] { flex: none; }
.sd[data-s-3eac0b11-2857-44d3-8dfc-2b3ae229cff8] { align-content: center; align-items: center; background: transparent; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: auto; justify-content: center; margin: 48px 0px 0px 0px; padding: 0px 0px 0px 0px; width: auto; --gap-h-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 16px; --gap-v-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 0px; --gap-uuid: 3eac0b11-2857-44d3-8dfc-2b3ae229cff8; max-width: 100%; }
.sd[data-s-3eac0b11-2857-44d3-8dfc-2b3ae229cff8] { display: flex; --gap-h-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 16px; --gap-v-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 0px; }
.sd[data-s-3eac0b11-2857-44d3-8dfc-2b3ae229cff8] { display: flex; flex-direction: row; flex-wrap: nowrap; --gap-h-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 16px; --gap-v-3eac0b11-2857-44d3-8dfc-2b3ae229cff8: 0px; }
.sd[data-s-04758ab5-4942-436c-ad24-b6502d3d32e8] { color: var(--s-color-35b64ecd); font-size: 28px; margin: 0px 0px 0px 0px; max-width: 100%; }
.sd[data-s-04758ab5-4942-436c-ad24-b6502d3d32e8] { font-size: 28px; }
.sd[data-s-c03b920d-94ae-4982-979b-02fde66c5457] { color: var(--s-color-35b64ecd); font-size: 28px; margin: 0px 0px 0px 0px; max-width: 100%; }
.sd[data-s-c03b920d-94ae-4982-979b-02fde66c5457] { font-size: 28px; }
.sd[data-s-2dda3e23-4f70-4c0e-af25-aab00e836398] { color: var(--s-color-35b64ecd); font-size: 28px; margin: 0px 0px 0px 0px; max-width: 100%; }
.sd[data-s-2dda3e23-4f70-4c0e-af25-aab00e836398] { font-size: 28px; }

/* 配置は元のサイトで開いた時の実測どおり */
.esion-menu .sd[data-s-0ef732bf-263b-4f0a-9992-866437e37a80] { position: relative; display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-end; width: 100%; height: 100%; }
.esion-menu .sd[data-s-e491780d-ed03-4de0-bf3e-a014723f7799] { position: relative; display: flex; flex-direction: column; justify-content: flex-start; align-items: center; width: 260px; box-sizing: border-box; height: 100%; padding-top: 120px; overflow: hidden auto; pointer-events: auto; animation: esion-menu-in .3s ease; }
.esion-menu .sd[data-s-daeab6bb-8d60-48a5-aa67-66be4dfa3d7a] { position: absolute; top: 0; right: 0; }
.esion-menu .sd[data-s-690613d9-ad02-4446-8767-1d0a3888b39c] { justify-content: flex-start; }
.esion-menu .material-icons { font-family: "Material Icons"; font-style: normal; font-weight: 400; }

/* お問い合わせのGoogleフォーム */
.esion-form { display: block; width: 100%; max-width: 100%; height: 2830px; margin-top: 24px; border: 0; }
@media screen and (max-width: 840px) { .esion-form { height: 3100px; } }
@media screen and (max-width: 540px) { .esion-form { height: 3520px; } }

/* コラム：一覧（ブログ形式） */
.esion-column-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 32px; width: 100%; max-width: 1200px; margin: 0 auto; padding: 120px 40px; box-sizing: border-box; }
.esion-column-card { display: flex; flex-direction: column; color: var(--s-color-848ea154); text-decoration: none; }
.esion-column-thumb { display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 8px; background: #f4f4f4; }
.esion-column-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.esion-column-card:hover .esion-column-thumb img { transform: scale(1.04); }
.esion-column-card time { margin-top: 16px; color: var(--s-color-2ebe4498); font-family: var(--s-font-f19f48b5); font-size: 14px; letter-spacing: .05em; }
.esion-column-card h2 { margin: 6px 0 0; color: var(--s-color-318e0e1d); font-family: var(--s-font-2db88aa7); font-size: 20px; font-weight: 700; line-height: 1.5; }
.esion-column-card p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; margin: 8px 0 0; font-family: var(--s-font-2db88aa7); font-size: 14px; line-height: 1.8; }
@media screen and (max-width: 840px) { .esion-column-list { grid-template-columns: repeat(2, 1fr); padding: 80px 32px; } }
@media screen and (max-width: 540px) { .esion-column-list { grid-template-columns: 1fr; gap: 40px; padding: 64px 24px; } }
/* コラム：記事 */
.esion-column-hero { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; margin-top: 40px; border-radius: 8px; }
.richText h2 { margin: 48px 0 16px; color: var(--s-color-318e0e1d); font-family: var(--s-font-2db88aa7); font-size: 24px; font-weight: 700; line-height: 1.5; }
.richText h3 { margin: 32px 0 12px; color: var(--s-color-318e0e1d); font-family: var(--s-font-2db88aa7); font-size: 20px; font-weight: 700; line-height: 1.5; }
.richText p { margin: 0 0 20px; line-height: 2; }
.richText ul { margin: 0 0 20px; padding-left: 1.4em; font-family: var(--s-font-2db88aa7); line-height: 2; }
.richText blockquote { margin: 0 0 20px; padding: 12px 20px; border-left: 3px solid var(--s-color-ca9e1161); font-family: var(--s-font-2db88aa7); }
.richText img { display: block; max-width: 100%; height: auto; margin: 24px 0; border-radius: 8px; }
.richText a { color: var(--s-color-318e0e1d); text-decoration: underline; }

.esion-404 { padding: 200px 24px; text-align: center; font-family: var(--s-font-2db88aa7); color: var(--s-color-848ea154); }
.esion-404 h1 { font-size: 28px; color: var(--s-color-318e0e1d); }
.esion-404 a { display: inline-block; margin-top: 24px; color: var(--s-color-318e0e1d); text-decoration: underline; }

/* トップのService：Aboutの左右逆（写真が左）・2026-10-31 本人指定 */
@media screen and (min-width: 841px) {
  #service .sd[data-s-52e53c15-43b4-4a34-9029-046c95ada6c4] { flex-direction: row-reverse !important; }
}
