/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 09 2026 | 08:55:29 */
* {
    font-feature-settings: "palt";
}
html {
    scroll-behavior: smooth;
}
.mincho {
    font-family: 'Noto Serif JP', serif;
}
/* Separate */
.hr-line {
    border: none;
    border-bottom: 1px solid #D9D9D9;
}

.tx-25,
.tx-2000 {
    font-style: italic !important;
}
hr {
    border-top: solid 1px #ccc !important;
}
.emoji {
    margin-right: 2px;
    margin-bottom: 2px;
}

/* Link */
a,
a:visited {
    color: #1a0dab;
    text-decoration: none;
    transition: color 0.3s;
    position: relative;
}
a:hover {
    text-decoration: underline;
    color: #E61937;
    transition: color 0s;
}
a:active {
    color: #F58A15;
    text-decoration: none;
    left: 1px !important;
    bottom: -1px !important;
}

a img {
    transition: opacity 0.3s ease, box-shadow 0.3s ease;
}
a:hover img {
    opacity: 0.7;
}
a[target="_blank"]::after {
    content: "\f35d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin: 1px 1px 0 2px;
}

/* LOGO */
img.custom-logo {
    margin-top: 2px;
margin-left: -6%;
}
.custom-logo-link {
    width: 260px;
    display: block;
	margin-bottom: 2px;
}
.custom-logo-link:hover img {
    opacity: 0.7;
    box-shadow: none;
}
/* MENU */
.home .l-header {
    height: 78px;
    width: 100%;
    z-index: 100;
}
.home .l-contents {
    margin-top: 0;
}
.p-global-nav {
    margin-top: 2px;
    margin-right: -16px;
}
.p-global-nav a {
    margin-left: 4px;
}
.p-global-nav a:hover {
    text-decoration: none;
    color: #E61A38 !important;
}

.p-global-nav a:active {
    text-decoration: none;
    color: #6ec3ad !important;
}
/* English */
.c-navbar__item a small {
    display: block !important;
    letter-spacing: 0.14rem !important;
    color: #EB3F59 !important;
    text-shadow: 0 0 6px #fff;
    line-height: 1.3 !important;
    margin-bottom: 4px;
    font-size: 0.7rem !important;
}
.c-navbar__item a {
    display: flex !important;
    flex-direction: column-reverse !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.9rem !important;
    letter-spacing: 0.14rem !important;
    text-shadow: none;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #555 !important;
    margin-right: -8px !important;
}
/* Consultation */
.sm-nav-menu-item-highlight {
    margin: -2px -14px 0 16px;
    background-color: #ffa41c !important;
}
.sm-nav-menu-item-highlight a {
    padding: 0 48px 0 36px !important;
    color: white !important;
}
.sm-nav-menu-item-highlight:hover {
    background-color: #ff8400 !important;
}
.sm-nav-menu-item-highlight a:hover {
    color: white !important;
}
.sm-nav-menu-item-highlight a small {
    color: white !important;
    margin-top: 2px;
    margin-bottom: 3px;
}
/* Current page */
.c-navbar__item.sm-nav-menu-item-highlight[data-active-menu="true"] a span,
.c-navbar__item.sm-nav-menu-item-highlight[data-active-menu="true"] a small {
    color: #FFFC9A !important;
}
/* Sub menu */
.c-navbar__subitem {
    background-color: #E61937 !important;
}
.c-navbar__subitem:hover {
    background-color: #107C41 !important;
    transition: .3s !important;
}

.c-navbar__subitem a {
    margin-top: 0;
    padding-top: 26px !important;
    padding-bottom: 24px !important;
    margin-right: 0 !important;
    color: white !important;
    text-align: left !important;
    display: block !important;
}
.c-navbar__submenu>li:last-child a {
    margin-top: 0;
    padding-bottom: 28px !important;
}
.c-navbar__subitem a:hover {
    color: white !important;
}
/* サブメニューはホバー時に何もしない */
.c-navbar__subitem a::after {
    display: none;
}
/* 念のため hover も無効化 */
.c-navbar__subitem a:hover::after {
    width: 0;
}
/* サブメニューに白い下線（最後以外） */
.c-navbar__submenu .c-navbar__subitem:not(:last-child) {
    border-bottom: 1px solid #FD8D9D;
}
/* Current page */
.c-navbar__item[data-active-menu="true"] span,
.c-navbar__item[data-active-menu="true"] small {
    color: #E61937 !important;
}
.p-global-nav a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    background-color: #E61937;
    transition: width 0.3s ease;
    margin-bottom: -56px;
}
.p-global-nav a:hover::after {
    width: 100%;
}
/* menu の1番目・最後は無効化 */
.p-global-nav li:nth-child(1)>a::after,
.p-global-nav li:last-child>a::after {
    display: none;
}
/* 念のため hover 時も無効 */
.p-global-nav li:nth-child(1)>a:hover::after,
.p-global-nav li:last-child>a:hover::after {
    width: 0;
}

/* Liquid Glass スクロール時 */
[data-scrolled="true"] .l-header {
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.7) 80%,
            rgba(255, 255, 255, 0.1) 100%) !important;
    -webkit-backdrop-filter: blur(25px) saturate(200%) !important;
    backdrop-filter: blur(8px) saturate(200%) !important;
    border: none !important;
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.15),
        inset 0 0 15px rgba(255, 255, 255, 0.5),
        inset 1px 1px 0 0 rgba(255, 255, 255, 0.8),
        inset -1px -1px 0 0 rgba(255, 255, 255, 0.2) !important;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* BACK TO TOP */
.c-page-top a,
.c-page-top a:visited {
    color: white !important;
}
.c-page-top a:hover {
    background-color: #1C834B;
}
.c-page-top a:active {
    background-color: #0C0C0C;
    left: 0 !important;
    bottom: 0 !important;
}

.btn-back-to-home:hover a span {
    letter-spacing: 0.08rem !important;
    background-color: #1C834B;
}
.smb-btn .wp-image-553 {
    margin-top: 0;
}
.box-link:hover {
    opacity: 0.6;
    transition: 0.3s;
}
/* Button */
.wp-image-583 {
    margin-left: 6px;
    margin-top: -6px;
}
.smb-btn .wp-image-583 {
    border: 2px solid #fff;
    border-radius: 50%;
}
.smb-btn:hover {
    background-color: var(--wp--preset--color--sm-accent) !important;
}
.smb-btn:hover span {
    color: #fff !important;
    font-weight: 400;
    letter-spacing: 0.22rem !important;
}

a:hover img.wp-image-583 {
    opacity: 1;
}
.btn-made-to-order a:hover span {
    letter-spacing: 0.08rem !important;
}
.smb-buttons a:hover {
    filter: brightness(1.0);
}

/* Catch copy, Title */
.page.type-page h1.c-entry__title {
    display: none;
}
/* Breadcrumbs */
.p-breadcrumbs-wrapper {
    padding: 16px 0 !important;
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: #fff !important;
    border-bottom: solid 1px #eee;
    margin-top: -38px;
}
.c-breadcrumbs {
    width: 1200px;
    margin: 0 auto;
}
.c-breadcrumbs__item a,
.c-breadcrumbs__item a:hover,
.c-breadcrumbs__item a:focus,
.c-breadcrumbs__item a:active,
.c-breadcrumbs__item a:visited {
    text-decoration: none !important;
}
.c-breadcrumbs__item a {
    color: #333 !important;
    text-decoration: none !important;
}
.c-breadcrumbs__item a span {
    color: inherit !important;
}
.c-breadcrumbs__item a:visited {
    color: #333 !important;
}
.c-breadcrumbs__item a:hover {
    color: #E61937 !important;
}

.c-breadcrumbs__item a:active {
    color: #1C834B !important;
}
/* 画像・パンくず・本文を縦に並べる */
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__container {
    display: flex;
    flex-direction: column;
    padding-bottom: 3rem;
}
/* カバーとパンくずを同じ並び順で扱うための外枠 */
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__container > .u-slim-width,
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__inner,
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__main,
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__main > .page,
.page.l-body--one-column-slim:not(.page-id-1446) .page > .c-entry__body,
.page.l-body--one-column-slim:not(.page-id-1446) .c-entry__body > .c-entry__content {
    display: contents;
}
/* 画像内の見出しと重複するテーマ標準タイトルを非表示 */
.page.l-body--one-column-slim:not(.page-id-1446) .l-contents__main>article.page>.c-entry__header {
    display: none;
}
/* ヘッダー画像を最上段へ */
.c-entry__content>.sub-cover:first-child {
    order: -2;
    margin-top: 0 !important;
}
/* パンくずを画像の次へ。全幅指定と負の余白を解除 */
.page.l-body--one-column-slim:not(.page-id-1446) .p-breadcrumbs-wrapper {
    display: block !important;
    order: -1;
    align-self: center;
    flex: 0 0 auto;
    position: relative !important;
    width: 100% !important;
    max-width: 1200px;
    left: auto !important;
    right: auto !important;
    margin: 0 !important;
    padding: 16px 0 !important;
    box-sizing: border-box;
    background: #fff !important;
    border-bottom: 1px solid #eee;
}


/* ホーム各ステップ */
.meguri-home-flow .smb-step__item {
    margin-bottom: -32px !important;
}

/* 使い方は2ステップ */
.section-2steps em span {
    display: inline-block;
    transform: translateY(2px);
    margin-right: 4px;
}
.section-2steps .smb-step__body {
    column-gap: 6% !important;
}
.section-2steps h4 span {
margin-left: -6px;
}

/* Flow/Pricing STEP */
.flow-price-step .smb-step__item__number {
    font-size: 19px;
    font-style: italic;
    font-weight: 500;
    padding-bottom: 2px;
}

.flow-price-step .smb-step span {
    margin-right: -10px !important;
}

.section-pricing em span {
    display: inline-block;
    position: relative;
    top: 2px;
    margin-right: 3px;
}
.wp-image-3572 {
    margin: 0 0 16px 8px;
}
.wp-image-3567 {
    margin: 0 8px 10px 8px;
}
/* STEP */
.is-style-snow-monkey-143920 .smb-step__body {
    display: flex !important;
    gap: 2% !important;
}
.is-style-snow-monkey-143920 .smb-step__item__number {
    font-size: 19px;
    font-style: italic;
    font-weight: 500;
    padding-bottom: 2px;
}
.is-style-snow-monkey-143920 .smb-step span {
    margin-right: -10px !important;
}

/* News Column */
.news-column .smb-btn:hover span {
    font-weight: 600 !important;
    letter-spacing: 0.20rem !important;
}
.news-column .smb-btn:hover {
    opacity: 0.8 !important;
}
.wp-image-579 {
    margin-left: 4px;
    margin-top: -2px;
}
/* Taxonomy post */
.snow-monkey-taxonomy-posts .c-entries__item {
    margin-top: 16px;
    margin-bottom: -16px;
    border-bottom: solid 1px #bbb !important;
}

.snow-monkey-taxonomy-posts .c-entries__item a:hover {
    text-decoration: none !important;
    color: #E61937 !important;
}
.snow-monkey-taxonomy-posts .c-entries__item a:visited {
    color: inherit;
}
.snow-monkey-taxonomy-posts h3.c-entry-summary__title {
    font-weight: 400;
    font-size: 15px !important;
    margin-left: -40px;
    margin-top: -1px;
}
.c-meta__item--published time {
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: 2px;
}
.section-news-column .past-list :hover {
    text-decoration: none;
    color: #F19D00 !important;
}
.snow-monkey-taxonomy-posts * {
    border: none !important;
}
.snow-monkey-taxonomy-posts .c-entries__item:last-child {
    border-bottom: none !important;
}
.wp-image-575 {
    margin: 0 7px 3px 2px;
}
.wp-image-577 {
    margin: 0 7px 2px 0;
}
.wp-image-581 {
    margin: 0 7px 4px 2px;
}


/* FAQ */
.wp-block-snow-monkey-blocks-faq,
.smb-faq__item,
.smb-faq__item__question {
    border: none !important;
    padding-top: 4px;
}

.smb-faq__item {
    border-radius: 4px !important;
    overflow: hidden !important;
    border: solid 1px #eee !important;
}
.smb-faq__item__question__label,
.smb-faq__item__answer__label {
    display: none;
}
.smb-faq__item__question__body {
    background-color: #fff;
    background: linear-gradient(to right, #fff, #fff);
    padding: 16px 46px 14px 20px !important;
    font-weight: 600;
    margin-bottom: -22px !important;
    position: relative;
    color: #333;
    border-radius: 6px !important;
    overflow: hidden !important;
    border-bottom: solid 1px #eee !important;
}
/* Icon */
.smb-faq__item__question__body::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 54%;
    transform: translateY(-50%);
    width: 1.4em;
    height: 1.4em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.25s ease;
    transform-origin: 50% 50%;
}
.smb-faq__item__answer__body {
    padding: 24px 24px 24px 48px !important;
    background-color: white;
    box-sizing: border-box;
    border-radius: 0 0 6px 6px !important;
    overflow: hidden !important;
}
/* Close */
.smb-faq__item__answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    border-radius: 0 0 6px 6px !important;
}
/* Open */
.smb-faq__item.is-open .smb-faq__item__answer {
    max-height: 1234px;
    transition: max-height 1s cubic-bezier(0.77, 0, 0.175, 1);
    border-radius: 0 0 6px 6px !important;
    overflow: hidden !important;
}
.smb-faq__item.is-open .smb-faq__item__question__body {
    border-radius: 6px 6px 0 0 !important;
}
.smb-faq__item.is-open .smb-faq__item__answer__body {
    border-radius: 0 0 6px 6px !important;
}
/* Cursor */
.smb-faq__item__question {
    cursor: pointer;
}
/* Open: chevron up */
.smb-faq__item.is-open .smb-faq__item__question__body::after {
    transform: translateY(-50%) rotate(-180deg);
}

.faq2digit .smb-faq__item__answer__body {
    padding: 24px 24px 24px 61px !important;
}


/* CLOUDFLARE TURNSTILE */
.snow-monkey-forms-turnstile {
    display: flex;
    justify-content: center;
    margin: 16px auto 0;
}
/* 確認画面で非表示 */
form[data-screen="confirm"] .snow-monkey-forms-turnstile {
    display: none !important;
}
/* 完了画面で非表示 */
form[data-screen="complete"] .snow-monkey-forms-turnstile {
    display: none !important;
}
/* FORM */
.smf-progress-tracker {
    width: 76%;
    margin: 32px auto 40px;
}
.smf-form .sme-badge {
    margin-left: 4px;
    padding: 0 6px;
}
.smf-text-control__control,
.smf-textarea-control__control {
    padding: 8px !important;
    margin-top: 8px !important;
}
.smf-text-control__control::placeholder,
.smf-textarea-control__control::placeholder {
    color: #bdc3c7;
    font-weight: 300;
}
.smf-action {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 8px;
}
.smf-action .smf-button-control__control {
    border-radius: 8px;
    padding: 16px 48px 16px 56px;
    margin-top: 8px;
    font-size: 18px;
    letter-spacing: 0.1em;
    color: #fff;
    box-shadow: 0 0 2px 1px #CCC;
    border: none;
    background: #ffa41c;
}
.smf-action .smf-button-control__control:hover {
    background: #ff8400;
}

.smf-button-control__control[data-action="back"] {
    border: solid 1px #bdc3c7;
    color: #636e72;
    background: white;
    padding-top: 15px;
    padding-bottom: 16px;
}
.smf-button-control__control[data-action="back"]:hover {
    border: solid 1px #b2bec3;
    color: white;
    background: #636e72;
}
.tx-complete {
    margin-top: -8px !important;
    margin-bottom: -18px !important;
}
input {
    transform: translateY(-16px);
}
input[type="checkbox"] {
    transform: translateY(0) !important;
}
.company-name .smf-item__label__text {
    position: relative;
    top: -10px;
}
.company-name .smf-item__description {
    position: relative;
    top: -18px;
}
.message .smf-item__description {
    position: relative;
    top: -8px;
}
.smf-form .sme-badge {
    margin-right: 5px;
    font-weight: 400;
    line-height: 2.0;
    border-radius: 4px;
    padding-left: 7px !important;
}
.smf-form .smf-item__col--label {
    flex: 0 0 260px;
    max-width: 256px;
}
.wp-profile-box__figure img {
	width:auto !important;
	height: 96px!important;
}

/* Post */
/* Category */
.c-entry-summary__term {
    font-size: 10px;
    font-weight: 500;
    padding: 2px 4px;
    opacity: 0.8;
}
.c-entry-summary__term--category-slug-news {
    background: #1C834B;
}
/* Single Post Blog */
.c-page-header__bgimage::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
}
.c-page-header {
    margin-bottom: -12px !important;
}
.fa-clock {
    font-size: 15px !important;
    font-weight: 400 !important;
    margin-right: 1px !important;
}
.fa-rotate {
    font-size: 13px !important;
    font-weight: 400 !important;
}
time {
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: -2px;
}
.c-meta__item--categories .fa-folder,
.c-meta__item--categories a {
    font-size: 14px;
    font-weight: 400;
    margin-right: -2px;
    color: white !important;
}
img.avatar {
    width: 16px;
    height: auto;
}
.c-meta__item--author {
    font-size: 13px !important;
    line-height: 1.4;
}
.single-post a {
    color: #1a0dab;
    text-decoration: none;
    transition: color 0.3s;
    position: relative;
}

.single-post h2 {
    font-size: 1.2rem;
    padding-top: 16px;
    padding-bottom: 14px;
}
.single-post h3,
.single-post h4 {
    font-size: 1.2rem;
}



/* 個別記事ページのみ：フッターボックス見出しの位置調整 */
.single-post .common-footer h2 {
    position: relative;
    top: 16px;
    font-size: 1.6rem;
}
.single-post .fa-clock {
	margin-right: 5px!important;
}


.c-prev-next-nav {
    margin-bottom: 56px !important;
}
.c-prev-next-nav a {
    color: white !important;
}
.c-prev-next-nav a:hover {
    text-decoration: none;
}
.c-entries--simple {
    margin-top: -36px;
}
ul.c-entries--simple,
ul.c-entries--simple * {
    border: none !important;
}
.wp-profile-box__title {
    border-bottom: 1px solid;
}
.wp-profile-box__archives-btn {
    color: black !important;
    border: solid 1px black;
}
/* SHARE Button */
.wp-share-buttons {
    margin: 32px auto 20px;
}
.wp-share-buttons a[target="_blank"]::after {
    display: none;
    content: none;
}

.wp-share-button--facebook .wp-share-button__icon svg {
    width: 24px;
    height: auto;
    margin-top: 4px;
}
.wp-share-button--x .wp-share-button__icon svg {
    width: 20px;
    height: auto;
    margin-top: 6px;
}
.wp-share-button--line .wp-share-button__icon svg {
    width: 24px;
    height: auto;
    margin-top: 2px;
}
.wp-share-button--copy .wp-share-button__icon svg {
    width: 17px;
    height: auto;
    margin-top: 4px;
}
/* PROFILE */
.wp-profile-box__archives-btn:hover {
    text-decoration: inherit !important;
    background-color: #E61937 !important;
    color: white !important;
    transition: none !important;
}
.wp-profile-box__sns-accounts a,
.wp-profile-box__sns-accounts a:visited {
    color: inherit;
}
.wp-profile-box__sns-accounts a:hover {
    color: #E61937;
}
.p-comments,
.p-trackbacks {
    display: none;
}
.single-post .c-page-top a {
    padding: 16px;
    color: white !important;
}
/* Related post */
.p-related-posts {
    margin-bottom: 60px;
}
.p-related-posts a {
    color: #333 !important;
}

.p-related-posts a:hover {
    text-decoration: inherit;
}
.c-meta__item--published .fa-clock,
.c-meta__item--published time,
.c-meta__item--modified .fa-rotate,
.c-meta__item--modified time,
.c-meta__item--author {
    font-size: 12px;
    font-weight: 500;
    margin-left: -2px;
}
.p-related-posts .c-meta {
    margin-top: -14px;
}
.single-post .full-width a {
    color: white;
}
.p-related-posts h3 {
    margin-top: -2px;
    margin-bottom: -4px;
    line-height: 1.6 !important;
}
/* Hashtag */
.c-entry-tags a,
.c-entry-tags a:visited {
    border: 1px solid #333333;
    color: #333333 !important;
    border-radius: 40px;
    padding: 0 16px;
    margin-bottom: 18px;
    margin-right: 6px;
    line-height: 2.4rem;
    display: inline-block;
    transition: none;
}
.c-entry-tags a:hover {
    text-decoration: none;
    background-color: #E61937;
    color: white !important;
    transition: none;
}
.tag-cloud-link::before {
    margin-right: -4px !important;
    color: #333333;
}
.tag-cloud-link:hover::before {
    margin-right: -4px !important;
    color: white;
}
/* Category pages */
.category .p-breadcrumbs-wrapper {
    max-width: 100vw;
    padding-left: 78px !important;
}
.p-archive {
    padding: 44px 0 64px;
    border-bottom: solid 1px #ddd;
}

.p-archive ul.c-entries--simple {
    border: none;
    width: 1120px;
    margin: 0 auto;
}
.c-entry-summary__figure {
    width: 160px !important;
    height: 104px !important;
}
h2.c-entry-summary__title {
    font-size: 18px;
    line-height: 1.2;
    margin: 0 0 -4px;
    font-weight: 500;
    color: black;
}
.c-entry-summary__content {
    color: black;
}
.p-archive a {
    color: black !important;
    text-decoration: inherit;
}
.p-archive a:hover {
    color: inherit;
    text-decoration: inherit;
}
.p-archive .c-entry-summary__content {
    margin-bottom: 18px !important;
}
.p-archive .fa-clock,
.p-archive time,
.p-archive .fa-rotate,
.p-archive {
    color: inherit !important;
    margin-top: -14px;
    font-size: 14px;
    font-weight: 400;
}
.p-archive .c-meta__item--published {
    color: black;
    font-weight: 400;
}
/* カテゴリー */
.p-archive {
    margin-bottom: -48px !important;
    border-bottom: none !important;
}
/* パンくず：画像への重なりと左右の段差を解消 */
.tag .p-breadcrumbs-wrapper,
.author .p-breadcrumbs-wrapper {
    --breadcrumb-width: calc(100vw - var(--scrollbar-width, 0px));
    box-sizing: border-box;
    position: relative !important;
    width: var(--breadcrumb-width) !important;
    max-width: none !important;
    left: 50% !important;
    right: auto !important;
    margin: 0 !important;
    margin-left: calc(var(--breadcrumb-width) * -0.5) !important;
    padding: 16px 0 !important;
    background: #fff !important;
    border-bottom: 1px solid #eee;
}

/* パンくずの文字幅 */
.tag .p-breadcrumbs-wrapper .c-breadcrumbs,
.author .p-breadcrumbs-wrapper .c-breadcrumbs {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 16px;
    padding-right: 16px;
}
/* カバー：背景画像の中央に見出しを配置 */
.tag .c-page-header,
.author .c-page-header {
    position: relative !important;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    height: 396px !important;
}
/* 見出し共通 */
.tag .c-page-header::before,
.tag .c-page-header::after,
.author .c-page-header::before,
.author .c-page-header::after {
    z-index: 2;
    color: #fff !important;
}
/* タグ一覧の文字 */
.tag .c-page-header::before {
    content: "Tags" !important;
    margin-bottom: -8px;
}
.tag .c-page-header::after {
    content: "タグ" !important;
}
/* 著者一覧の文字 */
.author .c-page-header::before {
    content: "Article list" !important;
    margin-bottom: -8px;
}
.author .c-page-header::after {
    content: "記事一覧" !important;
}
/* PC：英語の文字サイズ */
.tag .c-page-header::before,
.author .c-page-header::before {
    font-size: 1.33rem !important;
    line-height: 2 !important;
    letter-spacing: 0.2rem !important;
}
/* PC：日本語の文字サイズ */
.tag .c-page-header::after,
.author .c-page-header::after {
    font-size: 2.66rem !important;
    font-weight: 700;
    line-height: 1.6 !important;
    letter-spacing: 0.6rem !important;
}
.archive h1 {
    text-align: center;
    margin-top: 72px !important;
}
/* コラム・お知らせ：既存の背景画像に英語と日本語の見出しを重ねる。 */
.category-column .l-header,
.category-news .l-header {
    margin-bottom: 0 !important;
}

.category-column .l-contents,
.category-news .l-contents {
    position: relative;
}
.category-column .l-contents .c-page-header,
.category-news .l-contents .c-page-header {
    height: 424px !important;
    padding: 0 !important;
}
/* 既存の日本語見出しを背景の中央に重ねる */
.category-column .l-contents__main>.c-entry>.c-entry__header,
.category-news .l-contents__main>.c-entry>.c-entry__header {
    position: absolute;
    top: 188px;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0 !important;
    text-align: center;
}
/* 上段の装飾英語 */
.category-column .l-contents__main>.c-entry>.c-entry__header::before,
.category-news .l-contents__main>.c-entry>.c-entry__header::before {
    content: "News";
    display: block;
    color: #fff;
    font-size: var(--wp--preset--font-size--sm-xl, 1.33rem);
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.2rem;
    padding-left: 0.2rem;
}
.category-column .l-contents__main>.c-entry>.c-entry__header::before {
    content: "Column";
}
/* 下段の日本語タイトル */
.category-column .l-contents__main h1.c-entry__title,
.category-news .l-contents__main h1.c-entry__title {
    margin: 0 !important;
    padding: 0 0 0 0.6rem;
    color: #fff;
    font-size: 2.66rem !important;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.6rem;
}
/* 背景画像を少し暗くする */
.category-column .c-page-header__bgimage::after,
.category-news .c-page-header__bgimage::after {
    background-color: rgba(0, 0, 0, 0.55);
}
/* 投稿ページ：画像内のタイトルと日付を上へ移動 */
.single-post .c-page-header__content {
    transform: translateY(-16px);
}

/* ギャラリーのループスライド */
.stk-slide-gallery1,
.stk-slide-gallery2 {
    display: flex;
    align-items: center;
    overflow: hidden;
    gap: 0;
    padding: 0 !important;
    margin: 0 !important;
}
/* 共通設定 */
.stk-slide-gallery1 .wp-block-gallery,
.stk-slide-gallery2 .wp-block-gallery {
    flex-wrap: nowrap;
    flex-shrink: 0;
}
/* 1：左方向へ流す */
.stk-slide-gallery1 .wp-block-gallery {
    animation: loop-slide-left 80s infinite linear 1s both;
}

/* 2：右方向へ流す */
.stk-slide-gallery2 .wp-block-gallery {
    animation: loop-slide-right 80s infinite linear 1s both;
}
/* 画像サイズ */
.stk-slide-gallery1 .wp-block-image,
.stk-slide-gallery2 .wp-block-image {
    width: 200px !important;
    height: 100px !important;
    flex-shrink: 0;
}
/* 左方向 */
@keyframes loop-slide-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
/* 右方向 */
@keyframes loop-slide-right {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}

/* PRIVACY */
.section-privacy h2 {
    line-height: 1.6 !important;
}
.section-privacy h3 {
    line-height: 1.6 !important;
    margin-top: 48px !important;
    margin-bottom: -4px;
    border-bottom: solid 1px #CCC;
}

/* Footer */
.full-width {
    border-top: none;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 !important;
}
.full-width .wp-block-columns {
    gap: 0;
}
.full-width a,
.full-width a:visited {
    color: #333 !important;
    text-decoration: none;
    position: relative;
}
.full-width a:hover {
    color: #1C834B !important;
    transition: color 0.3s;
    text-decoration: underline;
}
.full-width a:active {
    color: #E61937 !important;
    left: 1px !important;
    bottom: -1px !important;
}

.full-width a[target="_blank"]::after {
    display: none;
}
.full-width .is-style-ghost a:hover {
    color: white;
    text-decoration: none;
    opacity: 0.8;
}
.full-width .box-faq:hover,
.full-width .box-consultation:hover {
    opacity: 0.8 !important;
}
.copyright span,
.copyright p {
    text-align: center;
    font-size: 0.8rem !important;
    font-weight: 400;
    letter-spacing: 0.2em;
    color: #fff;
}
.copyright {
    padding-top: 4px;
}
.c-copyright {
    display: none !important;
}
/* Icon */
/* Footer address */
.wp-image-2297 {
    margin-bottom: 2px;
    margin-right: 3px;
    margin-left: 1px;
}
.wp-image-2298 {
    margin-bottom: 2px;
    margin-right: 7px;
    margin-left: 3px;
}
.wp-image-2294 {
    margin-bottom: 2px;
    margin-right: 6px;
}
/* Security */
.wp-image-2157 {
    margin-bottom: 6px;
    margin-right: 6px;
}
.wp-image-1555 {
    margin-bottom: 4px;
    margin-right: 5px;
}

.full-width .smb-box:hover {
    opacity: 0.8;
    transition: .3s;
}

























/* タブレット・スマートフォン共通 */
@media (max-width: 1024px) {
    /* FONTS */
    p,
    p span {
        font-size: 1rem !important;
        line-height: 2 !important;
    }
    h2,
    h2 span {
        font-size: 1.6rem !important;
        letter-spacing: 0.1rem;
    }
    h3,
    h3 span {
        font-size: 1.8rem !important;
    }
    h4,
    h4 span {
        font-size: 1.1rem !important;
    }
    .sme-badge span {
        font-size: 0.88rem !important;
    }
    /* LINKS */
    a {
        color: #1a0dab;
    }
    a:hover,
    a:visited,
    a:active {
        color: inherit;
        background-color: inherit;
        text-decoration: none;
    }
    /* LIST */
    .smb-list li,
    .wp-block-list li {
        font-size: 1rem !important;
        margin-bottom: 8px !important;
        margin-left: -1% !important;
        line-height: 1.6;
    }
    .tx-center {
        text-align: center !important;
    }
    /* IMG */
    .img-50 img,
    .img-60 img,
    .img-70 img,
    .img-80 img,
    .img-90 img {
        height: auto !important;
        margin: 0 auto;
    }

    .img-50 img {
        width: 50% !important;
    }
    .img-60 img {
        width: 60% !important;
    }
    .img-70 img {
        width: 70% !important;
    }
    .img-80 img {
        width: 80% !important;
    }
    .img-90 img {
        width: 90% !important;
    }
    .tx-left {
        text-align: left !important;
    }
    /* 文字 */
    /* 本文：既存ブロック内の個別文字サイズも統一する */
    .l-contents__main p,
    .l-contents__main p span {
        font-size: 1rem !important;
        line-height: 2 !important;
    }
    /* H2：日本語見出しと内側の文字サイズをそろえる */
    .l-contents__main h2,
    .l-contents__main h2 span {
        font-size: 1.8rem !important;
        line-height: 1.6 !important;
        letter-spacing: 0.1rem !important;
    }
    /* H3：特長の見出しをそろえる */
    .l-contents__main h3,
    .l-contents__main h3 span {
        font-size: 1.6rem !important;
        line-height: 1.6 !important;
    }
    /* H4：カード内の見出しをそろえる */
    .l-contents__main h4,
    .l-contents__main h4 span {
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
    }
    /* 装飾英語：日本語見出しとの間隔を4pxにする */
    .home .smb-section__body > p:first-child,
    .news-column-h2-btn p:first-child,
    .sub-cover .smb-section__body > p:first-child {
        margin-bottom: 4px !important;
    }

    /* 一般のカードはタブレットで2列、スマホでは下の指定で1列 */
    .l-contents__main .smb-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px !important;
        margin-top: 0 !important;
    }
    /* カード：共通CSSの「最後だけ全列」を解除する */
    .l-contents__main .smb-grid> :last-child {
        grid-column: auto;
    }
    /* ページ見出し以外の上下余白 */
    .l-contents__main .smb-section:not(.sub-cover) {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    /* 説明付きカードは1列、短いサービス一覧は2列 */
    .l-contents__main .smb-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .l-header {
        height: auto !important;
    }

    .custom-logo-link {
        display: block;
        width: 146px;
        max-width: 100%;
    }
.c-hamburger-btn__bars {
        position: fixed;
        top: 14px;
        right: 17px;
        width: 39px;
        height: 20px;
    }
    .c-hamburger-btn__bar {
        height: 2px;
        width: 100%;
        position: absolute;
        transition: all 0.3s ease-in-out;
    }
    .c-hamburger-btn__bar:nth-of-type(2) {
        top: 9px;
    }
    .c-hamburger-btn__bar:nth-of-type(3) {
        top: 18px;
    }
    .c-hamburger-btn__label {
        position: fixed;
        top: 40px !important;
        right: 16px;
        font-size: 14px;
    }

    .c-drawer {
        background-color: rgba(255, 255, 255, 0.80);
        backdrop-filter: blur(8px);
        text-align: right;
    }
    .c-drawer__inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 0;
    }
    .c-drawer__menu a {
        font-size: 17px !important;
        font-weight: 400;
        line-height: 36px;
        color: #333 !important;
        padding-right: 24px;
    }
    .sm-nav-menu-item-highlight {
        margin-top: 16px !important;
        padding: 0 !important;
    }
    .sm-nav-menu-item-highlight a {
        color: white !important;
        display: block;
        padding: 28px 52px 28px 36px !important;
    }

    /* Sub menu */
	.c-drawer__submenu {
			margin-top: -8px!important;		
	}
    .c-drawer__submenu .c-drawer__subitem a {
        font-size: 15px !important;
			margin-top: -8px;
    }
    .c-drawer__submenu .c-drawer__subitem:first-child a {
        margin-top: -2px;
        margin-bottom: -14px;
    }
    .c-drawer__submenu .c-drawer__subitem:nth-child(2) a {
        margin-bottom: -14px;
    }
    /* サブメニュー開閉アイコンの左にある文字を右へ詰める */
    .c-drawer__item--has-submenu>a {
        font-size: 1.1rem !important;
        padding-right: 15px;
    }
    .c-drawer__item--has-submenu:nth-of-type(3)>a {
        margin-right: 6px;
    }

    /* メニューOPEN時：バー・×・MENU文字・メニュー文字を #333 にする */
    .c-hamburger-btn[aria-expanded="true"] .c-hamburger-btn__bar,
    .c-drawer[aria-hidden="false"] .c-hamburger-btn__bar {
        background-color: #333 !important;
    }
    .c-hamburger-btn[aria-expanded="true"] .c-hamburger-btn__label,
    .c-drawer[aria-hidden="false"] .c-hamburger-btn__label {
        color: #333 !important;
    }



/* アイコン */
.c-drawer[aria-hidden="false"] .c-drawer__toggle {
    position: relative;
}
.c-drawer[aria-hidden="false"] .c-drawer__toggle .c-ic-angle-right {
    position: absolute;
    top: 16px;
    left: 0px;
    right: auto;
    bottom: auto;
}
.c-drawer[aria-hidden="false"] .c-drawer__toggle .c-ic-angle-right::before {
    border-top-color: #333 !important;
    border-right-color: #333 !important;
}
    /* ヘッダーの相談リンクをナビゲーションの内側に収める */
    .p-global-nav,
    .p-global-nav .sm-nav-menu-item-highlight {
        margin-right: 0;
    }
    .p-global-nav .menu-consultation > a {
        margin: 0 !important;
        padding-inline: 16px !important;
    }
    /* 1024pxで表示される横メニューは、各項目を1行に収める */
    .p-global-nav .c-navbar__item > a {
        margin: 0 !important;
        padding: 14px 7px;
        font-size: 14px !important;
        letter-spacing: 0.04em !important;
        white-space: nowrap;
    }
    .c-navbar__item > a small {
        letter-spacing: 0.06em !important;
    }
    .c-drawer__menu a {
        min-height: 44px;
    }

    /* Button */
    .smb-buttons {
        display: flex;
        justify-content: center !important;
    }

    .smb-buttons>* {
        width: 100%;
    }
    .smb-buttons a,
    .smb-buttons button {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
padding-left: 3%!important;
			padding-right: 2%!important;
        letter-spacing: 0 !important;
    }
    .smb-buttons span {
        font-size: 1.14rem !important;
        text-align: center;
    }
    /* ボタンホバー変化無し */
    .smb-btn:hover,
    .smb-btn:active,
    .smb-btn:focus {
        background: white !important;
    }
    .smb-btn span,
    .smb-btn:hover span,
    .smb-btn:active span,
    .smb-btn:focus span {
        letter-spacing: inherit !important;
        font-weight: inherit !important;
        color: #E61937 !important;
    }

.btn-made-to-order .smb-btn:hover .sme-font-size {
    font-size: inherit !important;
    transform: none !important;
    letter-spacing: 0 !important;
}
    /* ページ上部へボタン */
    .c-page-top {
        height: 50px;
        width: 42px;
    }
    .c-page-top:hover {
        color: white !important;
    }

    /* CTAのアイコンと文字を、ボタンの内側に収める */
    .smb-buttons .smb-btn--little-wider {
        box-sizing: border-box;
        min-height: 48px;
        padding: 12px 16px;
        white-space: normal;
    }
    .smb-btn__label {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    h1.c-page-header__title {
        font-size: 20px;
        line-height: 1.6;
        padding: 0;
    }

    .post h2 {
        font-size: 16px;
    }
    .p-breadcrumbs-wrapper {
        background: #F4F5F5;
    }
    .c-breadcrumbs {
        width: 100% !important;
        padding-left: 3%;
        padding-right: 2%;
        line-height: 1.6;
    }
    /* SERVICES */
    .reverse {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
    }

    /* ページ見出しの余白 */
    .sub-cover {
        padding: 110px 0 130px !important;
    }
    .sub-cover h2 span {
        font-size: clamp(24px, 6vw, 32px) !important;
    }
    .l-contents__main .smb-section-with-bgimage .smb-section__body>h2 {
        margin-top: 0;
    }
    /* めぐり愛とは */
    .l-contents__container {
        padding: 0 !important;
    }
    /* 背景・画像：全幅指定を親の幅に収める */
    .l-contents__main .alignfull {
        width: 100%;
        margin-inline: 0 !important;
    }
    /* 本文：入れ子の左右余白を重ねない */
    .l-contents__main .smb-container {
        padding-inline: 0;
    }


    /* トップの見出しは意味のまとまりで改行する */
    .meguri-home-hero {
        background-color: #29475b;
    }

    .meguri-home-hero .wp-block-column:first-child {
        flex-basis: 76% !important;
        max-width: 640px;
    }
    .meguri-home-hero .smb-box {
        padding: 40px 6% !important;
    }
    .meguri-home-hero h2,
    .meguri-home-hero h2 span {
        font-size: clamp(22px, 7.2vw, 36px) !important;
        line-height: 1.4 !important;
        letter-spacing: 0 !important;
        margin: 0;
    }
    .meguri-home-hero h2 .sme-text-color {
        display: block;
    }
    .meguri-home-hero .sub-catch .sme-br {
        display: block;
    }
    .meguri-home-hero .sub-catch,
    .meguri-home-hero .sub-catch span {
        font-size: clamp(16px, 3.8vw, 21px) !important;
        line-height: 1.65 !important;
        letter-spacing: 0;
    }
    .meguri-home-hero .smb-box__body {
        display: grid;
        gap: 16px;
    }
    .meguri-home-hero .smb-box__body > * {
        width: 100%;
        margin: 0 !important;
    }
    .meguri-home-hero p:first-child span {
        font-size: 13px !important;
        letter-spacing: 0.06em;
    }



    .meguri-home-hero .wp-block-column:first-child {
        flex-basis: 94% !important;
        max-width: 94%;
    }
    .meguri-home-hero .wp-block-column:last-child {
        flex: 1;
        min-width: 0;
    }


    /* HOME */
    .img-home-meguri-ai {
			margin-top: 20px!important;
        margin-bottom: -40px !important;
    }
    .meguri-home-services .smb-box {
        padding: 44px 6% !important;
    }
    .home h2 span {
        font-size: 1.6rem !important;
    }
    .home h2 {
        margin-top: -4px;
    }
    .meguri-home-services h2 {
        margin-bottom: 32px !important;
    }
    .meguri-home-services {
        padding-top: 60px !important;
        padding-bottom: 60px !important;
    }
    .meguri-home-services .wp-block-column img {
        margin-top: -24px;
        margin-bottom: 40px;
    }
    .meguri-home-services h3 {
        margin-bottom: -20px !important;
    }
    main .smb-grid {
        --smb-grid--columns: 2 !important;
        column-gap: 4%;
        row-gap: 12px;
        margin-top: -40px !important;
    }
    main .smb-grid>*:last-child {
        grid-column: 1 / -1;
    }
    .home .smb-grid h4 {
        font-size: 15px;
        line-height: 1.6;
    }

    main .smb-grid .smb-box {
        padding-top: 24px !important;
        padding-bottom: 22px !important;
    }
    main .smb-grid .smb-box img {
        margin-bottom: -4px;
    }


	
	
    .img-home-made-to-order {
			margin-top: 20px!important;
        margin-bottom: -40px !important;
    }
    .wp-image-583 {
        margin-bottom: -2px;
    }
    .meguri-home-services .smb-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px !important;
    }
    .meguri-home-services .smb-grid .smb-box {
        padding: 20px 8px 16px 8px !important;
    }
	.meguri-home-services-grid figure img{
		height: 64px!important;
	}
    .meguri-home-services-grid > :last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
    .meguri-home-services .smb-grid h4,
    .meguri-home-services .smb-grid h4 span {
        font-size: 15px !important;
        line-height: 1.5 !important;
        letter-spacing: 0;
    }
    .meguri-home-services .smb-grid p,
    .meguri-home-services .smb-grid p span {
        font-size: 13px !important;
        line-height: 1.5 !important;
			letter-spacing: 0
    }

    /* Flow / Pricing */
    .meguri-home-flow {
        padding-top: 72px !important;
        padding-bottom: 80px !important;
    }

    .meguri-home-flow h2 {
        margin-bottom: 0 !important;
        margin-top: 32px;
    }
	.meguri-home-flow h3 {
		padding: 6px 3% 9px 5%!important;
		margin-bottom: 24px!important;
	}
.meguri-home-flow h3 .sme-text-color {
    font-size: 1.1rem !important;
}
	.home-step-column {
		margin-bottom: 0!important;
	}
	.btn-flow-pricing a {
padding-left: 3%!important;
		padding-right: 2%!important;
		letter-spacing: 0;
	}

    /* トップの導入手順は、次の番号との間隔を保つ */
    .meguri-home-flow .smb-step__item {
        min-height: 32px;
        margin-block: 0 12px !important;
    }
    .meguri-home-flow .smb-step__item__title {
        margin: 0;
    }



    /* COMPANY */
    .meguri-home-company {
        padding-top: 56px !important;
        padding-bottom: 48px !important;
    }
    /* 会社情報：白い枠の内側と下余白 */
    .meguri-home-company .smb-section__body>.smb-box {
        padding: 44px 6% !important;
        margin-bottom: 32px !important;
    }
    /* 会社情報：内側の白い枠 */
    .meguri-home-company .smb-box {
        padding: 24px 16px !important;
        margin-bottom: 40px !important;
    }
    /* 実績：開発経験・取引件数を2列にする */
    .meguri-home-company .wp-block-column>.wp-block-columns {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px !important;
        align-items: start;
    }

    /* 実績：説明ラベル */
    .meguri-home-company .wp-block-column>.wp-block-columns p {
        font-size: clamp(12px, 3.5vw, 14px);
        line-height: 1.5;
        margin-bottom: -8px !important;
    }
    /* 実績：文字間隔 */
    .meguri-home-company .wp-block-column>.wp-block-columns .sme-letter-spacing {
        letter-spacing: 0.1em !important;
    }
    /* 実績：「年以上」「件以上」 */
    .meguri-home-company .wp-block-column>.wp-block-columns h4 {
        font-size: 13px !important;
        line-height: 1.4;
        letter-spacing: 0 !important;
        margin: 8px 0 0 !important;
        white-space: nowrap;
    }
    /* 実績：「25」「2000」の数値 */
    /* 実績：単位を数字の下に配置する */
    .l-contents__main .columns-25-2000 h4 em {
        display: block;
    }
    .l-contents__main .columns-25-2000 h4 em span {
        font-size: 3rem !important;
    }
    .meguri-home-company h3 {
        margin-bottom: 12px !important;
    }
    .l-contents__main .tx-home-record span {
        font-size: clamp(14px, 4vw, 18px) !important;
    }
    .l-contents__main .tx-home-record {
        margin-bottom: -24px !important;
    }
    .tx-25,
    .tx-2000 {
        font-size: clamp(26px, 7.8vw, 44px) !important;
        font-style: italic !important;
        margin-bottom: 2px !important;
		margin-right: 0px!important;
    }
    .tx-2000 span {
		letter-spacing: 0!important;
    }
    .tx-prize span {
        letter-spacing: 0 !important;
    }


    /* ギャラリーのループスライド */
    /* 1：左方向へ流す */
    .stk-slide-gallery1 .wp-block-gallery {
        animation: loop-slide-left 34s infinite linear 1s both;
    }
    /* 2：右方向へ流す */
    .stk-slide-gallery2 .wp-block-gallery {
        animation: loop-slide-right 40s infinite linear 1s both;
        margin-bottom: 14px !important;
    }
    /* 画像サイズ */
    .stk-slide-gallery1 .wp-block-image,
    .stk-slide-gallery2 .wp-block-image {
        width: 120px !important;
        height: 60px !important;
    }

    /* News / Column */
	.home-btn-news,
	.home-btn-column	{
		margin-bottom: 4px!important;
	}
    .news-column-h2-btn {
        gap: 3% !important;
    }
    .l-contents__main .news-column-h2-btn h2,
    .l-contents__main .news-column-h2-btn h2 span {
        font-size: 1.9rem !important;
        letter-spacing: 0 !important;
    }
    .l-contents__main .box-news-column h3.c-entry-summary__title {
        font-size: 1rem !important;
    }
    /* お知らせ：記事一覧の余白 */
    .meguri-home-updates .smb-box {
        padding: 1px 6% 32px !important;
    }
    .box-news-column {
        margin-bottom: 32px !important;
    }
    .box-news-column:last-child {
        margin-bottom: 16px !important;
    }
    /* お知らせ：記事タイトル */
    .meguri-home-updates .c-entry-summary__title {
        font-size: 16px;
        line-height: 1.8;
        overflow-wrap: anywhere;
        margin: 0 !important;
    }

    .meguri-home-updates .c-meta__item--published time {
        margin: 0 !important;
    }
    .news-column-h2-btn .smb-btn {
        padding: 12px 16px !important;
        min-height: auto !important;
        width: auto !important;
        transition: none !important;
        margin-top: 4px;
    }
    .news-column-h2-btn .smb-btn span {
        font-size: 1rem !important;
        letter-spacing: 0.08rem !important;
        color: white !important;
    }
    .news-column-h2-btn .smb-btn:hover span,
    .news-column-h2-btn .smb-btn:active span,
    .news-column-h2-btn .smb-btn:focus span {
        font-size: 1rem !important;
        letter-spacing: 0.08rem !important;
        color: #fff !important;
        font-weight: inherit !important;
    }

    /* めぐり愛 */
    .section-meguri-ai .box-about-meguri-ai {
margin-bottom: 24px!important;
}
    .section-meguri-ai .ban {
margin-top: -24px!important;
}
	.section-meguri-ai .wp-image-1479 {
		margin-bottom: -40px!important;
	}

    /* 特長：カード本文の左右と下の余白を20pxにする */
    .section-features .wp-block-cover .are-vertically-aligned-center {
        padding: 20px !important;
        gap: 20px !important;
    }
    /* 特長：画像を本文の後に置き、内側余白を16pxにする */
    .l-contents__main .wp-block-cover .wp-block-column.has-background {
        order: 1;
        padding: 16px !important;
    }
    /* 特長：赤い見出しの内側余白を縮める */
    .l-contents__main .wp-block-cover h4 {
        padding: 12px 14px;
        margin-block: 12px 16px !important;
    }
    /* 特長：番号の帯の不要な縦積みを防ぐ */
.section-features .wp-block-columns:not(.are-vertically-aligned-center) {
        flex-wrap: nowrap !important;
        gap: 0 !important;
    }
    /* 特長：番号を64px幅にする */
    .section-features .wp-block-column[style*="88px"] {
        flex: 0 0 64px !important;
    }

    /* 特長：番号は本文より大きく表示する */
    .l-contents__main .wp-block-cover p.has-background,
    .l-contents__main .wp-block-cover p.has-background span {
        font-size: 2rem !important;
        line-height: 1.5 !important;
    }
    /* タブレット：特長の本文と画像を横並びにする */
    .section-features .wp-block-cover .are-vertically-aligned-center {
        flex-direction: row;
        flex-wrap: nowrap !important;
    }
    /* タブレット：本文と画像で横幅を分ける */
    .section-features .wp-block-cover .are-vertically-aligned-center>.wp-block-column {
        flex: 1 !important;
        min-width: 0;
    }
    .tx-aigashori {
        margin-bottom: 52px !important;
    }
    .img-cycle-flow {
        margin-top: -16px !important;
        margin-bottom: 32px !important;
    }
    /* 質問ボックス内のアイコンと文章を縦中央に揃える */
    .l-contents__main .section-questions .smb-box__body {
        display: flex;
        align-items: center;
        height: 100%;
    }
    .l-contents__main .section-questions .smb-box__body>.wp-block-columns {
        align-items: center !important;
        width: 100%;
        margin-top: 0;
        margin-bottom: 0;
    }
    /* 1行の文章もボックスの縦中央に配置 */
    .l-contents__main .section-questions .smb-box__body .wp-block-column {
        align-self: center !important;
    }
    .l-contents__main .section-questions .smb-box__body p {
        margin-top: 0;
        margin-bottom: 0;
    }

    /* 画像の下に本文を置き、狭い説明欄を作らない */
    .section-features .wp-block-cover .are-vertically-aligned-center,
    .section-3steps .smb-step__body {
        flex-direction: column;
    }
    .section-features .wp-block-cover .are-vertically-aligned-center > .wp-block-column {
        width: 100%;
        flex-basis: auto !important;
    }



/* めぐり愛とは */
.section-2steps em span {
    display: inline-block;
    transform: translateY(1px);
    margin-right: 4px;
    font-size: 2.6rem !important;
}
	.section-customization .smb-grid {
		margin-top: -16px!important;
	}
	.section-customization  .smb-grid .smb-box {
		padding: 40px 6% 40px 6%!important;
	}
.section-customization .smb-grid .smb-box:first-child {
margin-bottom: 24px;
}
	.section-customization  .smb-grid .smb-box h3 {
margin-bottom: 44px!important;
	}
	.section-customization  .smb-grid .smb-box h3 span {
font-size: 1.2rem!important;
	}
	.section-customization  .smb-grid .smb-box p {
		padding: 8px 6% 8px 6%!important;
	}

	.example-r p span {
		line-height: 1.6!important;
	}

.section-features em span.sme-font-size.has-sm-3-xl-font-size {
    font-size: 1.4rem !important;
    display: inline-block;
    transform: translateY(-2px);
}

	.en-experience {
		margin-top: -24px!important;
	}

    /* 利用シーン */
    /* 利用シーン：上下56px、左右6%の余白 */
    .l-contents__main .section-use-cases {
        padding: 56px 6% !important;
    }

    /* 導入文：カード一覧との間隔 */
    .section-use-cases .smb-section__body>p:last-of-type {
        margin-bottom: 32px !important;
    }
    /* カード：内側の余白 */
    .grid-use-cases>.smb-box {
        padding: 24px 16px !important;
    }

    /* アイコン：縦横比を保って高さをそろえる */
    .grid-use-cases figure img {
        width: auto !important;
        height: 64px !important;
    }
    /* 英語ラベル：日本語見出しとの間隔 */
    .grid-use-cases .smb-box__body p {
letter-spacing: 0;
			margin-bottom: 2px!important;
    }
    /* カード見出し：項目一覧との間隔 */
    .grid-use-cases h4 {
        margin: 0!important;
    }
    /* カード内の項目：スマホでも2列 */
    .l-contents__main .grid-use-cases .smb-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }
    /* 項目が奇数個なら、最後の項目を全幅にする */
    .l-contents__main .grid-use-cases .smb-grid> :last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
    /* 項目の文字：1行でも複数行でも縦中央 */
    .grid-use-cases .smb-grid>p {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 8px !important;
        margin: 0 !important;
    }
    /* 相談エリア：上下56px、左右6%の余白 */
    .l-contents__main .section-consultation {
        padding: 56px 6% !important;
    }
    /* 相談見出し：ページタイトル用の文字サイズを上書き */
    .l-contents__main .smb-section.section-consultation .smb-section__body>h2,
    .l-contents__main .smb-section.section-consultation .smb-section__body>h2 span {
        letter-spacing: 0.1rem !important;
    }
    /* 相談見出し：説明文との間隔 */
    .section-consultation h2 {
        margin-bottom: 24px !important;
    }

    /* 相談文：ボタンとの間隔 */
    .section-consultation .smb-section__body>p:last-of-type {
        margin-bottom: 24px !important;
    }
    /* 相談ボタン：狭い画面でも文字を収める */
    .section-consultation .smb-btn {
        padding-inline: 16px !important;
    }
    .tx-samazamana {
        margin-top: -8px !important;
        margin-bottom: 52px !important;
    }
    .l-contents__main .smb-section.section-consultation .smb-section__body>h2,
    .l-contents__main .smb-section.section-consultation .smb-section__body>h2 span {
        font-size: 1.3rem !important;
        margin-top: 8px;
        line-height: 1.8 !important;
    }
    .tx-mazuhaokigaruni {
        padding-bottom: 16px !important;
    }

/* 利用シーン */
	.section-needs .smb-grid .smb-box {
padding-top: 36px!important	
	}
	.section-needs .smb-grid .smb-box h4 {
margin-top: 16px;	
	}
	.section-use-cases .smb-grid {
margin-top: 0;		
	}
	.section-use-cases .smb-grid .smb-box {
padding: 32px 6% 32px 6%!important;
	}
	.section-use-cases .smb-grid .smb-box .has-sm-accent-color {
letter-spacing: 0;
	}
	.section-use-cases .smb-grid .smb-box h4 {
		margin-top: 20px!important;
margin-bottom: 20px!important;
	}


    /* オーダーメイドAI */
    /* サービス説明：左右6%の余白（上下56pxは共通CSS） */
    .l-contents__main .section-service {
        padding-inline: 6% !important;
    }
    /* 背景付きの本文見出し：ページタイトル用の指定を補正 */
    .l-contents__main .smb-section-with-bgimage.section-service .smb-section__body>h2 span {
        font-size: 1.8rem !important;
        letter-spacing: 0.1rem !important;
    }
    /* 導入：画像と説明の間隔、次のカードまでの余白 */
    .section-service .smb-container .wp-block-columns {
        gap: 24px !important;
        margin-bottom: 32px !important;
    }
    /* 導入：説明文の下で余白を重ねない */
    .section-service .smb-container p:last-child {
        margin-bottom: 0 !important;
    }
    /* 顔写真付きカード：内側の余白 */
    .grid-voices>.smb-box {
        padding: 16px !important;
    }
    /* 吹き出し：顔写真と文章を横並び・縦中央 */
    .grid-voices .wp-block-columns {
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 !important;
    }
    /* 顔写真：48px幅を保つ */
    .grid-voices .wp-block-column:first-child {
        flex: 0 0 48px !important;
    }
    /* 文章：残りの幅に収める */
    .grid-voices .wp-block-column:last-child {
        flex: 1 !important;
        min-width: 0;
    }
    /* 写真と吹き出し：不要な外側余白をなくす */
    .grid-voices figure,
    .grid-voices p {
        margin: 0 !important;
    }
    /* 吹き出し：内側の余白 */
    .grid-voices p {
        padding: 12px !important;
    }
    /* 提案文：淡いピンクの説明枠の余白 */
    .section-service .smb-section__body>.smb-box {
        padding: 24px 16px !important;
    }

    /* 支援の導入文：カード一覧との間隔 */
    .section-service .smb-section__body>p:last-of-type {
        margin-bottom: 32px !important;
    }
    /* 支援カード：最低高さを解除し、余白をそろえる */
    .grid-support>.wp-block-cover {
        min-height: auto;
        padding: 24px 20px !important;
        margin: 0 !important;
    }
    /* 支援イラスト：狭いカードでも十分な大きさを保つ */
    .grid-support figure {
        max-width: 240px;
        margin: 0 auto 16px !important;
    }
    /* 支援見出し：説明文との間隔 */
    .grid-support h3 {
        margin-bottom: 12px !important;
    }
    /* 支援本文：カード下の余白を重ねない */
    .grid-support p {
        margin-bottom: 0 !important;
    }
    /* 対応範囲：説明文の内側余白 */
    .grid-service-range .smb-box__body>p.has-background {
        padding: 12px !important;
        margin-bottom: 0 !important;
    }
    /* 奇数枚のカード：最後を全幅にして空白を減らす */
    .l-contents__main .grid-voices> :last-child:nth-child(odd),
    .l-contents__main .grid-support> :last-child:nth-child(odd),
    .l-contents__main .grid-service-range> :last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
    .l-contents__main .smb-section.section-service {
        padding-inline: 0 !important;
    }


/* オーダーメイドAI */
	.section-planning img {
		margin-top: 12px;
	}

	.section-made-to-order-ai img {
height: 120px;
	}
	.section-made-to-order-ai .smb-grid {
margin-top: -28px!important;
	}

	.section-made-to-order-ai .smb-grid h3 span,
		.section-made-to-order-ai .smb-grid h3 {
font-size: 1.2rem!important;
	}
	.section-made-to-order-ai .smb-grid .wp-block-cover {
min-height: 0px!important;
		padding-top: 40px!important;
	}

	.section-flexible h3,
	.section-flexible h3 span	{
margin-top: -4px;
font-size: 1.2rem!important;
	}
	.section-flexible .smb-grid {
margin-top: -8px!important;
	}
	.section-flexible .smb-grid .smb-box {
padding-top: 32px!important;
	}
	.example-box {
		padding: 60px 6% 60px 6%!important;
	}
	.example-box .smb-grid p {
line-height: 1.8!important;
	}

    /* 活用カード：他ページと同じ内側余白 */

	.section-images .smb-grid {
margin-top: -24px!important;
	}
	.section-images .smb-grid .smb-box {
padding-top: 42px!important;
padding-bottom: 40px!important;	
	}
    /* 活用アイコン：見出しとの間隔 */
    .section-images figure {
        margin: 0 auto 12px !important;
    }
    /* 活用アイコン：高さを64pxにそろえる */
    .section-images figure img {
        width: auto !important;
        height: 64px !important;
    }
    /* 英語ラベル：日本語見出しとの間隔 */
    .section-images .smb-box__body>p {
        margin: 0 0 8px !important;
    }

    /* カード見出し：説明文との間隔 */
    .section-images h4 {
        margin: 0 0 16px !important;
    }
    /* 説明文：淡いピンクの枠の余白 */
    .section-images .smb-box__body>p.has-background {
        padding: 12px !important;
        margin: 0 !important;
    }
    /* 最後の活用カード：全幅にして空白を減らす */
    .l-contents__main .section-images .smb-grid> :last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
    .tx-tatoebakonna {
        margin-top: -16px !important;
    }
    /* 活用イメージ：本文見出しの文字サイズをそろえる */
    .l-contents__main .smb-section-with-bgimage.section-examples .smb-section__body>h2 span {
        font-size: 1.8rem !important;
        letter-spacing: 0.1rem !important;
    }
    /* 導入の流れ・料金 */
    .l-contents__main .section-flow-steps {
        padding: 48px 5% !important;
        margin-top: 0 !important;
    }
    /* 手順番号：丸と説明の左余白を小さくする */
    .l-contents__main .flow-price-step {
        --smb-step--number-size: 28px;
        --smb-step--gap: 40px;
    }
    /* 番号：共通見出しサイズに上書きされないようにする */
    .l-contents__main .flow-price-step .smb-step__item__number {
        font-size: 1rem !important;
    }
    /* 手順名：不要な内側余白をなくす */
    .l-contents__main .flow-price-step .smb-step__item__title {
        padding: 0 !important;
        margin: 0 0 12px !important;
    }
    /* 手順の説明：画像と文章を横並び・縦中央 */
    .l-contents__main .flow-price-step .smb-step__item__summary>.wp-block-columns {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    /* 手順画像：列幅の44％ */
    .l-contents__main .flow-price-step .smb-step__item__summary .wp-block-column:first-child {
        flex: 0 0 44% !important;
    }

    /* 手順の文章：残りの幅に収める */
    .l-contents__main .flow-price-step .smb-step__item__summary .wp-block-column:last-child {
        flex: 1 !important;
        min-width: 0;
    }
    .l-contents__main .flow-price-step .smb-step__item__summary p {
        font-size: 0.92rem !important;
        line-height: 1.6 !important;
    }
    /* 料金見出しの補足 */
    .l-contents__main .pricing-ttl > .sme-font-size {
        font-size: 0.6em !important;
        letter-spacing: 0 !important;
    }
    .section-flow-steps .smb-box h3,
    .section-flow-steps .smb-box h3 span {
        font-size: 20px !important;
        line-height: 1.5 !important;
    }




	
	
	
	
    /* 導入の流れ：白い見出しと手順の間隔 */
.section-flow-steps .smb-box {
        padding: 10px 8px !important;
        margin-bottom: 24px !important;
    }
.section-flow-steps h3 {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 44px;
    }
.section-flow-steps h3 img {
        margin: 0;
    }
.section-flow-steps .smb-container__body > .wp-block-columns {
        row-gap: 60px;
    }
#primary .section-flow-steps {
	padding-top: 72px!important;
        padding-bottom: 80px !important;
    }


    /* 料金の項目名と金額を近づけ、活用イメージの見出し下は空ける */

.grid-pricing h3 {
        margin-top: 40px!important;
    }
.grid-pricing h4 {
text-align: center;
        margin-bottom: -32px!important;
    }
.grid-pricing p {
text-align: center;
	letter-spacing: 0.2rem;
    }
.grid-pricing em .sme-font-size,
	.grid-pricing .half .sme-font-size {
    font-size: 1.6rem !important;
    display: inline-block;
    transform: translateY(0px);
}
	.grid-pricing .no-number {
    display: inline-block;
    transform: translateY(8px);		
	}

.section-examples h4 {
        margin-bottom: 16px !important;
    }


    /* 会社紹介：ロゴと説明を縦に並べる */
    .l-contents__main .company-column-experience {
        flex-direction: column !important;
        gap: 24px !important;
    }
    /* 会社紹介：カラムを画面幅に収める */
    .company-column-experience>.wp-block-column {
        flex-basis: auto !important;
        width: 100%;
        min-width: 0;
    }
    /* 会社ロゴ：比率を保って中央に配置 */
    .company-column-experience figure {
        max-width: 280px;
        margin: 0 auto !important;
    }
    /* 経験領域：横2列に並べる */
    .post-28 .smb-box__body > .is-content-justification-center {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch !important;
        gap: 8px !important;
    }
    /* 経験領域：段落の余白と縦長の折り返しを整える */
    .post-28 .smb-box__body > .is-content-justification-center>p {
        min-width: 0;
        margin: 0 !important;
        line-height: 1.6 !important;
        white-space: normal;
    }
    /* 経験領域：見出しを上段に全幅で配置 */
    .post-28 .smb-box__body > .is-content-justification-center>p:first-child {
        grid-column: 1 / -1;
        padding: 0 !important;
    }
    /* 経験領域：各ラベルの文字を中央にそろえる */
    .post-28 .smb-box__body > .is-content-justification-center>p:not(:first-child) {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 12px 8px !important;
        font-size: 0.9rem !important;
        letter-spacing: 0 !important;
        text-align: center;
    }
    /* 経験領域・取引実績：他ページと同じカード余白 */
    .post-28 .smb-box {
        padding: 24px 16px !important;
    }
    /* 設計思想：本文見出しのサイズにそろえる */
    .post-28 .smb-section-with-bgimage .smb-section__body>h2 span {
        font-size: 1.8rem !important;
        letter-spacing: 0.1rem !important;
    }
    /* 設計思想・資格カード：内側余白を統一 */
    .post-28 .smb-section-with-bgimage .smb-grid>.smb-box,
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid>.smb-box {
        padding: 24px 16px !important;
    }
    /* 設計思想のアイコン：見出しとの間隔 */
    .post-28 .smb-section-with-bgimage .smb-grid figure {
        margin: 0 auto 12px !important;
    }

    /* 設計思想のアイコン：高さをそろえる */
    .post-28 .smb-section-with-bgimage .smb-grid figure img {
        width: auto !important;
        height: 64px !important;
    }
    /* 設計思想の英語ラベル：負の余白を解除 */
    .post-28 .smb-section-with-bgimage .smb-grid .smb-box__body>p {
        margin: 0 0 8px !important;
    }
    /* カード見出し：既存の余白調整を保持 */
    .post-28 .smb-section-with-bgimage .smb-grid h3,
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid h3,
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid h3 span {
        margin: 0 !important;
    }
    /* 取引実績・設計思想・資格：h3と内側の文字を小さくする */
    .post-28 h3,
    .post-28 h3 span {
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
    }
    /* 資格画像：同じ高さの枠に中央配置 */
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid figure {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 120px;
        margin: 0 auto 16px !important;
    }
    /* 資格画像：切り取らず縦横の比率を保つ */
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid figure img {
        width: auto !important;
        height: auto !important;
        max-width: 100%;
        max-height: 120px;
        object-fit: contain !important;
    }
    .post-28 h3 .has-sm-3-xl-font-size,
    .post-28 h3 .has-sm-3-xl-font-size span {
        font-size: 1.8rem !important;
    }
    /* 会社情報の実績：上段2列・下段全幅 */
    .post-28 .wp-block-columns.has-border-color {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 !important;
        width: calc(100% + 10px);
        max-width: none;
        margin-inline: -5px !important;
        padding: 0 !important;
        border: 1px solid #e6e6e6 !important;
        background: #fff;
    }
    /* 上段：2つの数字を同じ高さで中央にそろえる */
    .post-28 .wp-block-columns.has-border-color>.wp-block-column {
        min-width: 0;
        margin: 0 !important;
        padding: 24px 8px 19px !important;
        border: 0 !important;
        text-align: center;
    }
    /* 上段：横並びに合わせて上下をコンパクトにする */
    .post-28 .wp-block-columns.has-border-color>.wp-block-column:not(:last-child) {
        padding: 16px 8px 12px !important;
    }
    .post-28 .wp-block-columns.has-border-color>.wp-block-column:first-child {
        border-right: 1px solid #e6e6e6 !important;
    }

    .post-28 .wp-block-columns.has-border-color>.wp-block-column:last-child {
        grid-column: 1 / -1;
        border-top: 1px solid #e6e6e6 !important;
    }
    /* ラベル：文字間隔を解除し、1行に収める */
    .post-28 .wp-block-columns.has-border-color p,
    .post-28 .wp-block-columns.has-border-color p span {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 14px !important;
        line-height: 22px !important;
        letter-spacing: 0 !important;
        text-align: center !important;
    }
    /* 数字と単位：横に並べ、文字の下端をそろえる */
    .post-28 .wp-block-columns.has-border-color .wp-block-group {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center;
        align-items: baseline !important;
        gap: 0 !important;
        margin-top: 4px !important;
    }
    .post-28 .wp-block-columns.has-border-color .wp-block-boldblocks-counting-number {
        margin: 0 0 2px !important;
        font-size: clamp(26px, 7.8vw, 44px) !important;
        line-height: 1.3 !important;
        letter-spacing: 0 !important;
        font-style: italic !important;
        color: #e61937 !important;
    }
    .post-28 .wp-block-columns.has-border-color .value {
        font-size: inherit !important;
        line-height: inherit !important;
        letter-spacing: 0 !important;
        font-style: italic !important;
        margin-right: 4px !important;
    }
    .post-28 .wp-block-columns.has-border-color .wp-block-group p,
    .post-28 .wp-block-columns.has-border-color .wp-block-group p span {
        font-size: 18px !important;
        line-height: 24px !important;
        font-weight: 600;
        color: #e61937 !important;
    }
    /* 下段：赤い説明文を2行で表示 */
    .post-28 .wp-block-columns.has-border-color>.wp-block-column:last-child>p:first-child {
        margin-bottom: 2px !important;
    }
    .post-28 .wp-block-columns.has-border-color>.wp-block-column:last-child>p:not(:first-child),
    .post-28 .wp-block-columns.has-border-color>.wp-block-column:last-child>p:not(:first-child) span {
        font-size: 16px !important;
        line-height: 1.6 !important;
        color: #e61937 !important;
    }
    /* 資格カード：奇数の最後は全幅にする */
    .post-28 .wp-block-snow-monkey-blocks-section .smb-grid> :last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    /* 会社情報：導入文から次の図まで */
    .post-28 .smb-section__body > .tx-left {
        margin-bottom: 40px !important;
    }

    /* 会社情報：設計思想の4枚のカード */
    .post-28 .smb-section-with-bgimage .smb-grid {
        row-gap: 24px !important;
    }

    .post-28 .smb-section-with-bgimage .smb-grid > .smb-box {
        padding-block: 40px !important;
    }
    /* 見出しは1行に収まらないときだけ、元の文章の区切りで折り返す */
    .post-28 .smb-section-with-bgimage .smb-grid h3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    /* よくあるご質問 */
    .qa-box-gosoudanya {
        margin-top: -32px !important;
        margin-bottom: 40px !important;
    }
    .smb-faq__item__answer__body {
        padding: 24px 6% !important;
        background-color: white;
        box-sizing: border-box;
        border-radius: 0 0 6px 6px !important;
        overflow: hidden !important;
    }

    /* FAQ：番号は1行、質問文はその右側で折り返す */
	.qa-box-gosoudanya {
		margin-top: -48px!important;
	}

.smb-faq__item__question__body {
        display: grid;
        grid-template-columns: auto 1fr;
        column-gap: 8px;
        align-items: start;
    }
.smb-faq__item__question__body > strong {
        white-space: nowrap;
    letter-spacing: 0em;
    }

    /* CONSULTATION */
    .section-consul-message {
        padding: 0 0 60px !important;
    }
    .section-consul-message p span {
        line-height: 2 !important;
    }
    .section-consul-message p {
        margin-bottom: -12px !important;
    }
    .section-tel {
        padding: 60px 0 !important;
    }
    .section-tel h2 span {
        font-size: 1.33rem !important;
    }
    .section-tel .wp-block-group.is-nowrap.is-layout-flex {
        flex-wrap: wrap !important;
    }
    .section-tel .wp-block-group.is-nowrap.is-layout-flex p {
        line-height: 1.2 !important;
    }
    .section-tel a span {
        font-size: 1.6rem !important;
        margin-top: -8px !important;
    }
    .section-tel a {
        margin-top: -8px !important;
        display: block;
    }
    .section-tel .smb-box {
        padding: 48px 0 52px !important;
    }
    .tel-notice {
        line-height: 0 !important;
    }
    .section-form {
        padding: 60px 0 !important;
        margin-bottom: 20px !important;
    }
    .section-form h2 span {
        font-size: 1.33rem !important;
        letter-spacing: 0 !important;
    }
    .smf-progress-tracker {
        width: 100%;
        margin: -20px auto 32px;
    }
    .smf-action .smf-button-control__control {
        padding: 20px 48px 20px 52px;
        margin-top: 8px;
        font-size: 16px;
        font-weight: 600;
    }
    .smf-button-control__control[data-action="back"] {
        padding: 16px 48px 16px 52px;
        margin-bottom: 8px !important;
    }
    .section-form .smb-box {
        padding: 40px 6% 60px !important;
    }
    .section-form .smb-buttons a,
    .section-form .smb-buttons button {
        padding: 16px 0 18px !important;
        margin-bottom: 8px;
    }
    .smf-form .sme-badge {
        margin-left: 0;
        padding: 0 6px;
        font-weight: 400;
    }
    .smf-form input {
        margin-bottom: -16px;
    }
    /* 無料相談・記事一覧：Tablet / SP（1024px以下） */
    /* 相談の導入：写真と説明の間隔を統一 */
    .l-contents__main .section-form .wp-block-columns:first-child {
        gap: 24px !important;
        margin-bottom: 32px !important;
    }
    /* 相談の導入：見出しを読みやすい大きさにする */
    .l-contents__main .section-form h2 {
        font-size: 1.6rem !important;
        line-height: 1.6 !important;
    }
    /* 相談の案内：3項目を均等に並べる */
    .l-contents__main .section-form .wp-block-columns.has-border-color {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0 !important;
        align-items: stretch !important;
        padding-block: 16px !important;
    }
    /* 相談の案内：3項目の高さと上端をそろえる */
    .l-contents__main .section-form .wp-block-columns.has-border-color>.wp-block-column {
        align-self: stretch !important;
        min-width: 0;
        padding: 8px !important;
    }
    /* 相談の案内：狭い列で自然に折り返す */
    .l-contents__main .section-form .wp-block-columns.has-border-color p,
    .l-contents__main .section-form .wp-block-columns.has-border-color p span {
        margin: 0 !important;
        font-size: 0.85rem !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
    }
    /* メール・電話の相談枠：上下の余白を他ページとそろえる */
    .post-36 .wp-block-cover {
        padding: 56px 0 !important;
    }
    /* 相談枠：左右の余白を他ページとそろえる */
    .post-36 .wp-block-cover .smb-container {
        padding-inline: 6% !important;
    }
    /* 相談枠：白いカードの内側余白 */
    .post-36 .wp-block-cover .smb-box {
        padding: 32px 16px !important;
    }
    /* 相談枠：アイコンと見出しを中央にそろえる */
    .post-36 .wp-block-cover .smb-box__body>.wp-block-group {
        gap: 8px !important;
        margin: 0 0 24px !important;
        align-items: center !important;
    }
    /* 相談枠：見出しを2行以内に収めやすくする */
    .post-36 .wp-block-cover h2,
    .post-36 .wp-block-cover h2 span {
        font-size: 1.4rem !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
        margin: 0 !important;
    }
    /* 相談枠：見出しアイコンの位置と大きさ */
    .post-36 .wp-block-cover .wp-block-group>figure {
        flex: 0 0 28px;
        width: 28px;
        margin: 0 !important;
    }
    /* 入力フォーム：タブレットでも項目を縦に並べる */
    .l-contents__main .contact-form .smf-item {
        display: block !important;
        padding-block: 12px !important;
    }
    /* 入力フォーム：項目名と入力欄を縦に並べる */
    .l-contents__main .contact-form .smf-item__col {
        width: 100%;
        max-width: none !important;
        flex-basis: auto !important;
    }
    /* 入力フォーム：PC用の位置ずらしを解除 */
    .l-contents__main .contact-form .smf-item__label__text,
    .l-contents__main .contact-form .smf-item__description {
        top: auto !important;
    }
    /* 入力欄：画面内に収め、入力時の拡大を防ぐ */
    .l-contents__main .contact-form .smf-text-control__control,
    .l-contents__main .contact-form .smf-textarea-control__control {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        font-size: 16px !important;
        line-height: 1.6;
        padding: 12px !important;
        margin: 4px 0 0 !important;
        transform: none !important;
    }
    /* チェック項目：チェックと文字の先頭をそろえる */
    .l-contents__main .contact-form .smf-checkbox-control {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        font-size: 0.9rem;
        line-height: 1.6;
    }
    /* チェック項目：入力欄用の負の余白を解除 */
    .l-contents__main .contact-form input[type="checkbox"] {
        flex-shrink: 0;
        margin: 4px 0 0 !important;
    }
    /* 入力手順：見出しの下で余白を重ねない */
    .post-36 .snow-monkey-form .smf-progress-tracker {
        width: 100%;
        margin: 0 auto 24px !important;
    }
    /* 送信ボタン：狭い画面でも文字を切らない */
    .post-36 .snow-monkey-form .smf-button-control {
        width: 100%;
        max-width: 360px;
    }
    /* 送信ボタン：押しやすい幅と高さ */
    .post-36 .snow-monkey-form .smf-button-control__control {
        width: 100%;
        padding: 16px !important;
        font-size: 1rem !important;
        line-height: 1.6;
        letter-spacing: 0.05em;
        white-space: normal;
    }
    /* 電話番号：折り返さず画面幅に収める */
    .l-contents__main .h2-tel {
        margin-bottom: -32px !important;
    }
    .cover-tel .tx-tel span {
        font-size: clamp(1.4rem, 6vw, 2rem) !important;
        letter-spacing: 0 !important;
    }
    .tx-tel {
        margin-top: -20px !important;
    }
    /* 電話カバー：最低高さを解除して上下60pxにする */
    .post-36 .wp-block-cover.cover-tel {
        min-height: 0 !important;
        padding-block: 60px !important;
    }
    /* アンケート：見出しを1.8remにする */
    .l-contents__main .contact-form>hr+p,
    .l-contents__main .contact-form>hr+p span {
        font-size: 1.8rem !important;
        line-height: 1.6 !important;
    }
    /* アンケート：協力案内と最初の項目の間隔を縮める */
    .l-contents__main .contact-form>hr+p+p {
        margin: 8px 0 12px !important;
    }
    .tx-tel-time {
        line-height: 1.3 !important;
        letter-spacing: 0.2rem;
        text-align: left !important;
    }
    .l-contents__main p.tx-tel-time,
    .l-contents__main p.tx-tel-time span {
        line-height: 1.8 !important;
        letter-spacing: 0.1rem !important;
        text-align: left !important;
    }
    /* 項目名：入力欄・チェック項目の上の余白を縮める */
    .l-contents__main .contact-form .smf-item__col--label {
        padding-bottom: 4px !important;
    }
    /* 補足説明：法人様限定・相談内容の下で余白を重ねない */
    .l-contents__main .contact-form .smf-item__description {
        margin-top: 4px !important;
    }
    .l-contents__main .tx-yoroshikereba-ankert {
        font-size: 0.92rem !important;
    }

    /* チェック項目は、説明文を含む行全体をタップできる */
    .smf-checkbox-control {
        min-height: 44px;
        align-items: center;
    }
    .post-36 .smf-checkbox-control__label {
        line-height: 1.5;
    }
    /* メール相談の見出しは、白地で読める濃い金茶色にする */
    .post-36 .wp-block-cover:not(.cover-tel) h2 .sme-text-color {
        color: #975300 !important;
    }

    ul.c-entries--simple {
        margin-top: -20px;
    }
    ul.c-entries--simple a {
        color: #2D3436 !important;
    }
    ul.c-entries--simple h3 {
        font-size: 14px !important;
    }
    ul.c-entries--simple time {
        font-size: 12px;
    }
    .p-archive ul.c-entries--simple {
        padding-top: 0;
        width: 100%;
    }
    .p-archive ul.c-entries--simple h2 {
        font-size: 14px !important;
        line-height: 1.6;
    }
    /* 一覧ページ：背景をヘッダーの下から表示する */
    .p-archive {
        padding-top: 16px;
        padding-bottom: 44px;
    }
    /* 記事一覧：左右6%の余白 */
    .l-contents__main .p-archive {
        padding-inline: 6%;
        margin-top: 0 !important;
    }
    /* 記事一覧：固定幅と負の余白を解除 */
    .l-contents__main .p-archive .c-entries--simple {
        width: 100%;
        margin: 0 !important;
    }
    /* 記事枠：上下の余白を詰める */
    .l-contents__main .p-archive .c-entries__item>a {
        padding-block: 12px !important;
    }
    /* 記事一覧：写真と本文を上端でそろえる */
    .l-contents__main .p-archive .c-entries--simple .c-entry-summary {
        display: grid;
        grid-template-columns: clamp(112px, 35vw, 200px) minmax(0, 1fr);
        gap: 16px;
        align-items: start;
    }
    /* 記事一覧：テーマの回り込み解除用要素をグリッドから除く */
    .l-contents__main .p-archive .c-entry-summary::before,
    .l-contents__main .p-archive .c-entry-summary::after {
        display: none;
    }
    /* 記事写真：自然な比率で表示する */
    .l-contents__main .p-archive .c-entry-summary__figure {
        float: none;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3;
        margin: 0 !important;
    }
    /* 記事本文：狭い列からはみ出さないようにする */
    .l-contents__main .p-archive .c-entry-summary__body {
        min-width: 0;
        padding: 0 !important;
    }
    /* 記事タイトル：読みやすい文字サイズと行間 */
    .l-contents__main .p-archive h2.c-entry-summary__title {
        font-size: 1rem !important;
        line-height: 1.6 !important;
        margin: 0 0 4px !important;
        overflow-wrap: anywhere;
    }
    .fa-rotate {
        height: 11px !important;
    }
    /* 記事タイトルの外枠：見出し下の余白をなくす */
    .l-contents__main .p-archive .c-entry-summary__header {
        margin-bottom: 0 !important;
    }
    /* 記事の日付の外枠：タイトルとの余白を詰める */
    .l-contents__main .p-archive .c-entry-summary__meta {
        margin-top: 4px !important;
    }
    /* 記事の日付：投稿日と更新日を横一列に並べる */
    .l-contents__main .p-archive .c-meta {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;
        margin: 0 !important;
    }
    /* 記事の日付：PC用の負の余白を解除 */
    .l-contents__main .p-archive .c-meta__item,
    .l-contents__main .p-archive .c-meta svg,
    .l-contents__main .p-archive .c-meta time {
        margin: 0 !important;
        font-size: clamp(10px, 3vw, 12px) !important;
        line-height: 1.4;
        letter-spacing: 0 !important;
        white-space: nowrap;
    }
    /* 投稿日：更新日と同じ色、左へ1pxそろえる */
    .l-contents__main .p-archive .c-meta__item--published {
        color: #2d3436 !important;
        position: relative;
        left: -1px;
    }
    /* Category pages */
    .category .p-breadcrumbs-wrapper {
        max-width: 100vw;
        padding-left: 2% !important;
    }

    /* コラム・お知らせ：タブレット・スマホの文字を他の下層ページとそろえる。 */
    .category-column .l-contents__main>.c-entry>.c-entry__header::before,
    .category-news .l-contents__main>.c-entry>.c-entry__header::before {
        font-size: 1rem;
        line-height: 2;
        letter-spacing: 0.08rem;
        padding-left: 0.08rem;
    }
    .category-column .l-contents__main h1.c-entry__title,
    .category-news .l-contents__main h1.c-entry__title {
        font-size: 1.8rem !important;
        line-height: 1.6;
        letter-spacing: 0.1rem;
        padding-left: 0.1rem;
    }
    .category-column .l-contents .c-page-header,
    .category-news .l-contents .c-page-header {
        height: 344px !important;
        padding: 0 !important;
    }
    /* Category En */
    .category-column .l-contents__main>.c-entry>.c-entry__header::before,
    .category-news .l-contents__main>.c-entry>.c-entry__header::before {
        margin-top: -80px;
    }
    /* タグ・記事一覧ページ カバーの高さ */
    .tag .c-page-header,
    .author .c-page-header {
        height: 320px !important;
    }
    /* 英語 */
    .tag .c-page-header::before,
    .author .c-page-header::before {
        font-size: 1rem !important;
        letter-spacing: 0.08rem !important;
        margin-top: -24px;
        margin-bottom: 4px !important;
    }
    /* 日本語 */
    .tag .c-page-header::after,
    .author .c-page-header::after {
        font-size: 1.8rem !important;
        letter-spacing: 0.1rem !important;
    }
    .archive h1 {
        text-align: center;
        margin-top: 48px !important;
        font-size: 1.6rem;
    }

    /* コラム一覧：パンくずと最初の記事の間隔 */
    .category-column .l-contents__inner {
        margin-top: 12px;
    }

    .single-post .l-contents__body {
        padding-left: 6%;
        padding-right: 6%;
    }
    /* 投稿本文：スマホのH2を読みやすい大きさにする */
    .single-post .l-contents__main .c-entry__content h2 {
        font-size: 1.3rem !important;
        line-height: 1.6 !important;
    }
    .l-contents__main .section-privacy h3,
    .single-post .l-contents__main .c-entry__content h3 {
        font-size: 1.2rem !important;
        line-height: 1.6 !important;
    }
    .l-contents__main .section-privacy h4,
    .single-post .l-contents__main .c-entry__content h4 {
        font-size: 1rem !important;
        line-height: 1.6 !important;
    }
    .single-post .l-contents__main h2 {
        font-size: 1.3rem !important;
        line-height: 1.6 !important;
    }
    .single-post .l-contents__main h3 {
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
    }
    /* この記事を書いた人 */
    .single-post .l-contents__main .wp-profile-box__container {
        display: grid !important;
        grid-template-columns: 36px minmax(0, 1fr);
        gap: 8px 12px;
        align-items: center;
    }
    .single-post .l-contents__main .wp-profile-box__figure {
        grid-column: 1;
        grid-row: 1;
        width: 36px !important;
        margin: 0 !important;
    }
    .single-post .l-contents__main .wp-profile-box__figure img {
        width: 36px !important;
        height: 36px !important;
        max-width: none !important;
        object-fit: cover;
    }
    .single-post .l-contents__main .wp-profile-box__body {
        display: contents !important;
    }
    .single-post .l-contents__main h3.wp-profile-box__name {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
        margin: 0 !important;
        font-size: 1rem !important;
        line-height: 1.6 !important;
    }
    .single-post .l-contents__main .wp-profile-box__content,
    .single-post .l-contents__main .wp-profile-box__buttons,
    .single-post .l-contents__main .wp-profile-box__sns-accounts {
        grid-column: 1 / -1;
        min-width: 0;
        margin-left: 0 !important;
        padding-left: 0 !important;
        text-align: left !important;
    }
    .single-post .l-contents__main .wp-profile-box__content p {
        margin-left: 0 !important;
        padding-left: 0 !important;
        text-align: left !important;
    }
    /* 関連記事 */
    .l-contents__main h2.p-related-posts__title span {
        font-size: 1.3rem !important;
    }
    .l-contents__main .p-related-posts .c-entry-summary__figure {
        width: 40% !important;
        margin-right: 3% !important;
    }
    .l-contents__main .p-related-posts h3.c-entry-summary__title {
        font-size: 1rem !important;
    }

    /* PRIVACY */
    .section-privacy .smb-box {
        padding: 32px 6% !important;
        margin-bottom: -56px !important;
    }
    .section-privacy li {
        font-size: 15px;
        margin-left: 0% !important;
    }
    .section-privacy h2,
    .section-privacy h3 {
        line-height: 1.6 !important;
    }


    .copyright {
        font-size: 11px;
        letter-spacing: 0.1em;
    }
    /* FAQ-CONSULT */
    .grid-faq-consultation p span {
        font-size: 0.88rem !important;
    }
    .grid-faq-consultation h2 span {
        font-size: 1.3rem !important;
    }
    .grid-faq-consultation p {
        font-size: 0.88rem !important;
    }
    .grid-faq-consultation .wp-block-cover {
        aspect-ratio: auto !important;
        align-items: flex-start !important;
    }
    /* 住所・電話・メール：アイコンの右側に文章を配置 */
    .common-footer .footer-address,
    .common-footer .footer-tel,
    .common-footer .footer-mail {
        padding-left: 28px !important;
    }
    /* アイコンを左に固定 */
    .common-footer .footer-address>img {
        position: absolute !important;
        top: 6px !important;
        left: 0 !important;
    }
    .common-footer .footer-tel>img {
        position: absolute !important;
        top: 4px !important;
        left: 0 !important;
    }
    .common-footer .footer-mail>img {
        position: absolute !important;
        top: 7px !important;
        left: 0 !important;
    }
    /* コンテナを横幅100％にする */
    .common-footer .smb-container__body {
        width: 100% !important;
    }
    .footer-badges {
        margin-bottom: 44px !important;
    }
    .footer-badges p span {
        font-size: 0.8rem !important;
        line-height: 1.6 !important;
    }
    /* 左右の認定画像の高さをそろえる */
    .footer-badges .wp-image-1340,
    .footer-badges .wp-image-1341 {
        width: auto !important;
        object-fit: contain !important;
    }
    /* 画像枠も上揃え */
    .footer-badges figure {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        background-color: white !important;
    }
    /* フッター：全幅背景を画面内に収める */
    .common-footer .alignfull {
        width: 100%;
        margin-inline: 0 !important;
    }
    .copyright {
        padding-top: 2px;
    }
    .copyright p,
    .copyright span {
        letter-spacing: 0.04rem;
    }

    /* フッターの案内は、質問と相談を縦に並べる */
    .grid-faq-consultation {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
    }
    .grid-faq-consultation .wp-block-cover {
        min-height: 0;
        padding: 28px 6% !important;
    }


/* 個別記事ページのみ：フッターボックス見出しの位置調整 */
.single-post .common-footer h2 {
    position: relative;
    top: 12px;
    font-size: 1.6rem;
	margin-top: -32px!important;
}


}
