@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
.l-wrapper {
    background-color: var(--color-white-1);
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .l-wrapper {
        margin-top: 0px;
    }
}
.l-wrapper--pb135 {
    padding-bottom: 135px;
}
@media screen and (max-width: 767px) {
    .l-wrapper--pb135 {
        padding-bottom: 85px;
    }
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: relative;
    z-index: 1000;
}

/* ---------------------------------------------
*   l-global-nav
--------------------------------------------- */
.l-global-nav {
    background-color: var(--color-white-1);
}

@media screen and (max-width: 767px) {
	.l-global-nav {
		position: sticky;
		top: 0;
		z-index: 1200;
	}
}

.l-global-nav__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: 960px;
    padding-block: 15px 5px;
    padding-right: 30px;
    padding-left: 30px;
    display: flex;
    align-items: center;
}
@media screen and (max-width: 767px) {
    .l-global-nav__inner {
        justify-content: space-between;
        align-items: flex-start;
        padding: 10px 15px;
        gap: 0 10px;
        background-color: var(--color-white-1);
        border-bottom: 1px solid var(--color-border-gray-1);
        border-top: 1px solid var(--color-border-gray-1);
    }
}
.l-global-nav__ttl {
    min-width: 187px;
    color: var(--color-base-1);
    font-weight: 700;
    font-size: 17px;
    line-height: 1.2941176471;
    text-decoration: none;
}
.l-global-nav__ttl a {
    text-decoration: none !important;
    color: var(--color-base-1);
    transition: opacity 0.3s ease;
}
.l-global-nav__ttl a:link, .l-global-nav__ttl a:visited, .l-global-nav__ttl a:hover, .l-global-nav__ttl a:focus, .l-global-nav__ttl a:active {
    text-decoration: none !important;
}
.l-global-nav__ttl a:hover {
    color: inherit;
    text-decoration: none !important;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-global-nav__ttl a:hover {
        transition: opacity var(--hover-duration);
    }
    .l-global-nav__ttl a:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .l-global-nav__ttl a {
        min-width: 0;
        flex: 1;
    }
}
.l-global-nav__btn {
    position: relative;
    background-color: var(--color-blue-1);
    padding: 12px 32px 14px;
    border-radius: 9999px;
    color: var(--color-yellow-1);
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    line-height: 1;
    margin-left: 10px;
    min-width: 60px;
    flex-shrink: 0;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-global-nav__btn {
        transition: opacity var(--hover-duration);
    }
    .l-global-nav__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-global-nav__btn img {
    position: absolute;
    width: 6px;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
    .l-global-nav__btn img {
        transform: translateY(-45%);
    }
}
.l-global-nav__btn:hover {
    color: var(--color-yellow-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .l-global-nav__btn {
        margin-left: 0;
        padding-block: 13px;
        padding-right: 35px;
        padding-left: 35px;
    }
    .l-global-nav__btn img {
        right: 15px;
        width: 5px;
    }
    .android .l-global-nav__btn {
        padding-bottom: 15px;
    }
}
.l-global-nav__nav {
    display: flex;
    gap: 0 21px;
    margin-left: 20px;
    flex-wrap: wrap;
}
.l-global-nav__nav a {
    color: var(--color-base-1);
    text-decoration: none;
    will-change: opacity;
}

/* ---------------------------------------------
*   l-global-nav__nav a.is-current
--------------------------------------------- */
@media screen and (min-width: 768px) {
	.l-global-nav__nav a.is-current {
		color: var(--color-blue-1);
	}
    .l-global-nav__nav a.is-current:hover {
		opacity: 1;
	}
}

@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-global-nav__nav a {
        transition: opacity var(--hover-duration);
    }
    .l-global-nav__nav a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-global-nav__sp-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1100;
    display: flex;
    align-items: stretch;
    background-color: var(--color-gray-4);
    padding-bottom: env(safe-area-inset-bottom, 0);
    border-top: 1px solid var(--color-base-1);
}
.l-global-nav__sp-bar-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-height: 67px;
    padding: 8px 0;
    border: none;
    background: var(--color-transparent-1);
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    font-family: inherit;
    color: var(--color-base-1);
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    line-height: 1.2;
    justify-content: flex-start;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-global-nav__sp-bar-item {
        transition: opacity var(--hover-duration);
    }
    .l-global-nav__sp-bar-item:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-global-nav__sp-bar-item:hover, .l-global-nav__sp-bar-item:focus {
    text-decoration: none;
    color: var(--color-base-1);
}
.l-global-nav__sp-bar-ico {
    display: block;
    width: 35px;
    height: 35px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.l-global-nav__sp-bar-ico--assess {
    background-image: url("/img/common/ico_sp_assess.svg");
}
.l-global-nav__sp-bar-ico--buy {
    background-image: url("/img/common/ico_sp_buy.svg");
}
.l-global-nav__sp-bar-ico--column {
    background-image: url("/img/common/ico_sp_column.svg");
}
.l-global-nav__sp-bar-ico--faq {
    background-image: url("/img/common/ico_sp_faq.svg");
}
.l-global-nav__hamburger {
    position: relative;
    display: block;
    width: 28px;
    height: 16px;
    margin-top: 10px;
    margin-bottom: 9px;
}
.l-global-nav__hamburger span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--color-base-1);
    border-radius: 1px;
    transition: top 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}
.l-global-nav__hamburger span:nth-child(1) {
    top: 0;
}
.l-global-nav__hamburger span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
}
.l-global-nav__hamburger span:nth-child(3) {
    top: 100%;
    transform: translateY(-100%);
}
.l-global-nav .js-sp-menu-trigger[aria-expanded=true] .l-global-nav__hamburger span:nth-child(1),
.l-global-nav .js-sp-menu-trigger.is-open .l-global-nav__hamburger span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(40deg);
}
.l-global-nav .js-sp-menu-trigger[aria-expanded=true] .l-global-nav__hamburger span:nth-child(2),
.l-global-nav .js-sp-menu-trigger.is-open .l-global-nav__hamburger span:nth-child(2) {
    opacity: 0;
}
.l-global-nav .js-sp-menu-trigger[aria-expanded=true] .l-global-nav__hamburger span:nth-child(3),
.l-global-nav .js-sp-menu-trigger.is-open .l-global-nav__hamburger span:nth-child(3) {
    top: 50%;
    transform: translateY(-50%) rotate(-40deg);
}
.l-global-nav__sp-bar-txt {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
}
.l-global-nav__drawer {
    position: fixed;
    top: calc(var(--fixed-header-height) * 1px);
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 900;
    overflow: hidden;
    visibility: hidden;
    pointer-events: none;
	transition: visibility 0s linear 0.3s;
}
.l-global-nav__drawer.is-open {
    visibility: visible;
    pointer-events: auto;
	transition-delay: 0s;
}
.l-global-nav__drawer.is-open .l-global-nav__drawer-overlay {
    opacity: 1;
}
.l-global-nav__drawer.is-open .l-global-nav__drawer-panel {
    transform: translateY(-1px);
}
.l-global-nav__drawer-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-color: var(--color-black-opacity-45);
    opacity: 0;
    transition: opacity 0.3s ease;
    border: none;
    cursor: pointer;
}
.l-global-nav__drawer-panel {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: calc(100% - 64px - env(safe-area-inset-bottom, 0px));
    max-height: calc(100% - 64px - env(safe-area-inset-bottom, 0px));
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    background-color: var(--color-gray-1);
    padding: 5px 15px 32px;
	transform: translateY(calc(100% + 80px + env(safe-area-inset-bottom, 0px)));
    transition: transform 0.3s ease;
    box-shadow: 0 4px 16px var(--color-black-opacity-12);
    z-index: 1;
}
.l-global-nav__drawer-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.l-global-nav__drawer-list li {
    border-bottom: 1px solid var(--color-border-gray-1);
}
.l-global-nav__drawer-list li:first-child {
    border-top: none;
}
.l-global-nav__drawer-list a {
    position: relative;
    display: block;
    padding: 16px 19px 14px;
    font-size: 15px;
    font-weight: 700;
    color: var(--color-base-1);
    text-decoration: none;
    letter-spacing: 0.04em;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-global-nav__drawer-list a {
        transition: opacity var(--hover-duration);
    }
    .l-global-nav__drawer-list a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-global-nav__drawer-list a:hover {
    text-decoration: none;
}
.l-global-nav__drawer-list a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 11px;
    height: 11px;
    transform: translateY(-50%);
    background-image: url("/img/common/ico_arrow_gray.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

@media screen and (max-width: 767px) {
    body {
        padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px));
    }
    body.is-sp-menu-open {
        overflow: hidden;
    }
}
/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    margin-right: auto;
    margin-left: auto;
    max-width: 960px;
    padding-right: 30px;
    padding-left: 30px;
}
@media screen and (max-width: 767px) {
    .l-contents {
        padding-right: 15px;
        padding-left: 15px;
    }
}

/* ---------------------------------------------
*   l-breadcrumb
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .l-breadcrumb {
		display: none;
        background-color: var(--color-gray-3);
        padding-inline: 15px;
    }
}
.l-breadcrumb ol {
    padding-block: 12px;
}
.l-breadcrumb ol li {
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-breadcrumb ol li {
        transition: opacity var(--hover-duration);
    }
    .l-breadcrumb ol li:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-breadcrumb ol li a:hover {
    text-decoration: none;
}
.l-breadcrumb__txt .current-item:hover {
    opacity: 1;
}
/* ---------------------------------------------
*   l-footer-sub
--------------------------------------------- */
.l-footer-sub {
    position: relative;
}
.l-footer-sub__pagetop {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1050;
}
.l-footer-sub__pagetop.is-docked {
    position: absolute;
    bottom: 16px;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__pagetop {
        right: 15px;
        bottom: calc(85px + env(safe-area-inset-bottom, 0px) + 12px);
    }
    .l-footer-sub__pagetop.is-docked {
        bottom: 16px;
    }
}
.l-footer-sub__pagetop-link {
    display: block;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    overflow: hidden;
    text-decoration: none;
    box-shadow: 0 2px 8px var(--color-black-opacity-12);
}
.l-footer-sub__pagetop-link:hover {
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-footer-sub__pagetop-link:hover {
        transition: opacity var(--hover-duration);
    }
    .l-footer-sub__pagetop-link:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .l-footer-sub__pagetop-link {
        width: 40px;
        height: 40px;
    }
}
.l-footer-sub__pagetop-ico {
    display: block;
    width: 100%;
    height: 100%;
    rotate: -90deg;
}
.l-footer-sub__service {
    padding: 40px 20px;
    background-color: var(--color-gray-1);
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service {
        padding: 30px 25px 36px;
    }
}
.l-footer-sub__service > .l-footer-sub__inner {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    gap: 30px 34px;
    align-items: start;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service > .l-footer-sub__inner {
        display: flex;
        flex-direction: column;
        gap: 0;
        align-items: stretch;
    }
}
.l-footer-sub__inner {
    max-width: 960px;
    margin: 0 auto;
}
.l-footer-sub__service-ttl {
    display: flex;
    flex-direction: column;
    color: var(--color-base-1);
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 700;
    line-height: 1.4444444444;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service-ttl {
        display: block;
        margin-inline: 10px;
        font-size: 16px;
        line-height: 1.375;
        letter-spacing: 0;
    }
}
.l-footer-sub__service-btn-wrap {
    display: grid;
    grid-area: 2/1/auto/-1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 40px;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service-btn-wrap {
        order: 2;
        grid-template-columns: 1fr;
        gap: 11px 0;
        margin-top: 30px;
    }
}
.l-footer-sub__service-btn {
    width: 100%;
}
.l-footer-sub__service-link-wrap {
    display: flex;
    grid-area: 1/2;
    flex-wrap: wrap;
    gap: 4px 30px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.5714285714;
    letter-spacing: 0.05em;
}
.l-footer-sub__service-link-wrap a {
    color: var(--color-base-1);
    text-decoration: none;
    white-space: nowrap;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .l-footer-sub__service-link-wrap a {
        transition: opacity var(--hover-duration);
    }
    .l-footer-sub__service-link-wrap a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-footer-sub__service-link-wrap a:hover {
    text-decoration: none;
}
.l-footer-sub__service-link-wrap a[href="/"] {
    display: none;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service-link-wrap a[href="/"] {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service-link-wrap a {
        white-space: normal;
    }
}
@media screen and (max-width: 767px) {
    .l-footer-sub__service-link-wrap {
        order: 1;
        flex-direction: column;
        gap: 11px 0;
        margin-top: 23px;
        margin-inline: 10px;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.5714285714;
        letter-spacing: 0;
    }
}
.l-footer-sub__contact {
    background-color: var(--color-white-1);
    padding: 70px 20px 48px;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact {
        padding: 35px 20px 10px;
    }
}
.l-footer-sub__contact-inner {
    display: grid;
    grid-template-columns: 1fr 320px 250px;
    gap: 0 18px;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-inner {
        grid-template-columns: 1fr;
        gap: 0;
    }
}
.l-footer-sub__contact-card {
    margin-top: 6px;
    display: flex;
}
.l-footer-sub__contact-card > .c-card-1 {
    flex: 1;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-card {
        margin-top: 37px;
        margin-inline: -4px;
    }
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-card:nth-child(3) {
        margin-top: 23px;
    }
}
.l-footer-sub__contact-lead {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-base-1);
    line-height: 1.75;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-lead {
        text-align: center;
    }
}
.l-footer-sub__contact-ttl {
    font-size: 28px;
    font-weight: 700;
    color: var(--color-base-1);
    line-height: 1.75;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-ttl {
        text-align: center;
    }
}
.l-footer-sub__contact-txt {
    font-size: 14px;
    color: var(--color-base-1);
    margin-top: 6px;
    line-height: 1.8571428571;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__contact-txt {
        margin-inline: auto;
        width: -moz-fit-content;
        width: fit-content;
    }
}
.l-footer-sub__logo-wrap {
    display: flex;
    align-items: center;
    gap: 0 20px;
    margin-top: 32px;
}
.l-footer-sub__logo-wrap img:nth-child(1) {
    width: 120px;
}
.l-footer-sub__logo-wrap img:nth-child(2) {
    width: 15px;
    margin-top: 5px;
}
.l-footer-sub__logo-wrap img:nth-child(3) {
    width: 168px;
}
@media screen and (max-width: 1024px) {
    .l-footer-sub__logo-wrap {
        justify-content: center;
        gap: 0 15px;
        margin-top: 25px;
    }
}
.l-footer-sub__catch {
    background-color: var(--color-white-1);
    padding: 0px 20px 72px;
}
.l-footer-sub__catch img {
    width: 100%;
}
@media screen and (max-width: 767px) {
    .l-footer-sub__catch {
        padding: 0px 0px 40px;
        margin-top: 10px;
    }
}
@media screen and (min-width: 767px) and (max-width: 1023px) {
    .l-footer-sub__catch {
        padding: 0px 0px 50px;
        margin-top: 25px;
    }
}

/* ---------------------------------------------
*   c-acc-index-column
--------------------------------------------- */
.c-acc-index-column {
    position: relative;
    top: -80px;
    margin-inline: auto;
    width: 450px;
    background-color: var(--color-white-1);
    font-weight: bold;
    padding: 20px 20px 27px;
    border: 1px solid var(--color-border-gray-1);
}
@media screen and (max-width: 767px) {
    .c-acc-index-column {
        margin-inline: 15px;
        width: auto;
        top: -33px;
        padding-bottom: 20px;
    }
}
.c-acc-index-column__ttl {
    font-size: 18px;
    line-height: 1;
    vertical-align: middle;
}
.c-acc-index-column__ttl::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 8px;
    background-image: url("/img/column/ico_index.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    position: relative;
    top: -2px;
}
.c-acc-index-column__btn {
    position: absolute;
    right: 20px;
    top: 20px;
    cursor: pointer;
}
.c-acc-index-column__btn:hover {
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-acc-index-column__btn:hover {
        transition: opacity var(--hover-duration);
    }
    .c-acc-index-column__btn:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-acc-index-column__btn {
        right: 25px;
        top: 19px;
    }
}
.c-acc-index-column__btn-label {
    font-weight: 400;
}
.js-acc-scope.is-close .c-acc-index-column__btn-label--show {
    font-weight: 700;
    text-decoration: underline;
}

.js-acc-scope.is-open .c-acc-index-column__btn-label--hide {
    font-weight: 700;
    text-decoration: underline;
}

.c-acc-index-column ul, .c-acc-index-column a {
    font-size: 16px;
    color: var(--color-base-1);
}
.c-acc-index-column ul {
    margin-top: 17px;
    padding-left: 28px;
}
.c-acc-index-column li {
    list-style-type: disc;
    margin-top: -1px;
}

/* ---------------------------------------------
*   c-acc-section
--------------------------------------------- */
.c-acc-section {
    --acc-section-preview-end: max(0px, calc(
    	var(--acc-section-preview-top, 0px) +
    	var(--acc-section-preview-height, 0px) * var(--acc-section-preview-ratio, 0) +
    	var(--acc-section-preview-size, 140px)
    ));
    --acc-section-preview-fade-top: max(0px, calc(
    	var(--acc-section-preview-end) - var(--acc-section-fade-height, 255px) +
    	var(--acc-section-preview-offset, 0px)
    ));
    --acc-section-fade-size: max(0px, calc(
    	var(--acc-section-preview-end) - var(--acc-section-preview-fade-top)
    ));
    position: relative;
}
@media screen and (max-width: 767px) {
    .c-acc-section.is-ready::after {
        position: absolute;
        z-index: 1;
        top: var(--acc-section-fade-top, calc(100% - var(--acc-section-actions-height, 68px) - var(--acc-section-fade-size)));
        bottom: calc(-1 * var(--acc-section-bottom-space, 0px));
        left: 50%;
        width: 100vw;
        background: linear-gradient(to bottom, var(--color-transparent-1), var(--color-white-opacity-90) calc(var(--acc-section-fade-size) * 7 / 9), var(--color-white-1) var(--acc-section-fade-size));
        transform: translateX(-50%);
        pointer-events: none;
        content: "";
    }
}
.c-acc-section__content {
    position: relative;
}
@media screen and (max-width: 767px) {
    .c-acc-section.is-ready:not(.is-open) > .c-acc-section__content {
        height: var(--acc-section-height, 600px);
        overflow: hidden;
    }
}
.c-acc-section__actions {
    position: relative;
    z-index: 2;
    display: none;
}
@media screen and (max-width: 767px) {
    .c-acc-section.is-ready > .c-acc-section__actions {
        display: flex;
        justify-content: center;
        left: var(--acc-section-button-offset, 0px);
        margin-top: 30px;
    }
    .c-acc-section.is-ready:not(.is-open) > .c-acc-section__actions {
        margin-top: var(--acc-section-actions-gap, -10px);
    }
}
.c-acc-section__btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 182px;
    min-height: 42px;
    padding: 9px 36px;
    border: 2px solid var(--color-blue-1);
    border-radius: 19px;
    background-color: var(--color-white-1);
    color: var(--color-blue-1);
    font-family: var(--ff-noto);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-acc-section__btn {
        transition: opacity var(--hover-duration);
    }
    .c-acc-section__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-acc-section__ico {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 13px;
    height: 13px;
    background: url("/img/common/ico_plus_2.svg") center/contain no-repeat;
    transform: translateY(-50%);
}
.c-acc-section.is-open > .c-acc-section__actions .c-acc-section__ico {
    height: 1px;
    background-image: none;
    background-color: var(--color-blue-1);
}

/* ---------------------------------------------
*   c-acc-section--diagram
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .c-acc-section--diagram {
        --acc-section-preview-size: calc(211 / 375 * 100vw);
        --acc-section-fade-height: calc(211 / 375 * 100vw + 44px);
        --acc-section-actions-gap: -11px;
        --acc-section-button-offset: -2px;
    }
}

/* ---------------------------------------------
*   c-block-column-lead
--------------------------------------------- */
.c-block-column-lead {
    background-color: var(--color-light-blue-1);
    padding: 10px 0;
}
@media screen and (max-width: 767px) {
    .c-block-column-lead {
        padding-block: 5px;
    }
}
.c-block-column-lead__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: 960px;
    padding-right: 30px;
    padding-left: 30px;
    display: flex;
    align-items: center;
    gap: 0 15px;
}
@media screen and (max-width: 767px) {
    .c-block-column-lead__inner {
        padding-right: 15px;
        padding-left: 15px;
    }
}
.c-block-column-lead__inner a {
    text-decoration: none;
}
.c-block-column-lead__ttl {
    flex-shrink: 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--color-blue-1);
    letter-spacing: 0.001em;
    display: flex;
    align-items: center;
    gap: 0 10px;
    white-space: nowrap;
}
.c-block-column-lead__ttl a {
    will-change: opacity;
    text-decoration: none;
    color: var(--color-blue-1);
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-block-column-lead__ttl a {
        transition: opacity var(--hover-duration);
    }
    .c-block-column-lead__ttl a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-block-column-lead__ttl img {
    width: 30px;
    margin-left: 10px;
}
@media screen and (max-width: 767px) {
    .c-block-column-lead__ttl img {
        margin-left: 0;
    }
}
.c-block-column-lead__ttl:nth-child(2) {
    border-left: 1px solid var(--color-border-gray-1);
    padding-left: 15px;
}
.c-block-column-lead__txt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 11px;
    color: var(--color-base-1);
    line-height: 1.5;
    border-left: 1px solid var(--color-border-gray-1);
    padding-left: 15px;
}

/* ---------------------------------------------
*   c-block-column-thumb
--------------------------------------------- */
.c-block-column-thumb {
    position: relative;
    margin-top: 33px;
    margin-bottom: -40px;
}
@media screen and (max-width: 767px) {
    .c-block-column-thumb {
        margin-top: 0px;
        margin-bottom: 0px;
    }
}
.c-block-column-thumb__inner {
    position: relative;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .c-block-column-thumb__inner {
        padding-inline: 0;
    }
}
.c-block-column-thumb__img {
    width: 100%;
    aspect-ratio: 1200/660;
    overflow: hidden;
    max-width: 1200px;
    margin-inline: auto;
}
.c-block-column-thumb__img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
@media screen and (max-width: 767px) {
    .c-block-column-thumb__img {
        aspect-ratio: auto;
        overflow: visible;
    }
    .c-block-column-thumb__img img {
        height: auto;
        -o-object-fit: contain;
           object-fit: contain;
    }
}

/* ---------------------------------------------
*   c-block-quotation
--------------------------------------------- */
.c-block-quotation {
    margin-top: 20px;
    font-size: 16px;
    letter-spacing: 0.05em;
}

/* ---------------------------------------------
*   c-block-feedback
--------------------------------------------- */
.c-block-feedback {
    margin-top: 30px;
    background-color: var(--color-light-blue-1);
    padding: 15px 20px 20px;
}
@media screen and (max-width: 767px) {
    .c-block-feedback {
        margin-bottom: 32px;
        margin-inline: -15px;
        padding-block: 11px 40px;
    }
}
.c-block-feedback__ttl {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: var(--color-blue-1);
}
@media screen and (max-width: 767px) {
    .c-block-feedback__ttl {
        font-size: 16px;
    }
}
.c-block-feedback__body {
    display: flex;
    margin-top: 13px;
    justify-content: space-between;
    margin-inline: auto;
    gap: 0 10px;
    max-width: 750px;
}
@media screen and (max-width: 767px) {
    .c-block-feedback__body {
        justify-content: center;
        gap: 0 50px;
        margin-top: 10px;
    }
}
.c-block-feedback__item {
    width: 240px;
}
@media screen and (max-width: 767px) {
    .c-block-feedback__item {
        width: auto;
    }
}

/* ---------------------------------------------
*   c-block-related-article
--------------------------------------------- */
.c-block-related-article {
    display: block;
    margin-top: 40px;
    padding: 11px 23px 18px;
    border: 1px solid var(--color-border-gray-1);
    text-decoration: none !important;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-block-related-article {
        transition: opacity var(--hover-duration);
    }
    .c-block-related-article:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-block-related-article {
        margin-top: 30px;
        padding-right: 8px;
        padding-bottom: 24px;
    }
}
.c-block-related-article:hover {
    color: inherit;
    text-decoration: none;
}
.c-block-related-article__ttl {
    font-size: 18px;
    font-weight: bold;
}
.c-block-related-article__ttl::before {
    content: "";
    display: inline-block;
    width: 31px;
    height: 24.4px;
    margin-right: 12px;
    background-image: url("/img/column/ico_relate.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    position: relative;
    top: -3px;
}
@media screen and (max-width: 767px) {
    .c-block-related-article__ttl::before {
        left: -3px;
        margin-right: 8px;
    }
}
.c-block-related-article__container {
    display: flex;
    gap: 0 22px;
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .c-block-related-article__container {
        gap: 0 17px;
    }
}
@media screen and (max-width: 767px) {
    .c-block-related-article__txt-wrap {
        margin-top: -2px;
    }
}
.c-block-related-article__thumb {
    flex-shrink: 0;
    width: 114px;
    height: 76px;
    overflow: hidden;
}
.c-block-related-article__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-block-related-article__head {
    display: flex;
    align-items: center;
    gap: 0 17px;
}
.c-block-related-article__new {
    font-size: 12px;
    padding-block: 2px 3px;
    width: 86px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    text-align: center;
    display: inline-block;
    border-radius: 9999px;
}
@media screen and (max-width: 767px) {
    .c-block-related-article__new {
        width: 60px;
        line-height: 1;
        padding-block: 5px 6px;
    }
}
.c-block-related-article__date {
    color: var(--color-base-1);
}
.c-block-related-article__contents {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-base-1);
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .c-block-related-article__contents {
        margin-top: 5px;
    }
}

/* ---------------------------------------------
*   c-block-column-banner
--------------------------------------------- */
.c-block-column-banner {
    margin-inline: auto;
    margin-top: 40px;
    width: 100%;
    display: block;
    text-decoration: none;
    will-change: opacity;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-block-column-banner {
        transition: opacity var(--hover-duration);
    }
    .c-block-column-banner:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-block-column-banner img {
    display: block;
    width: 100%;
}
.c-block-column-banner:hover {
    text-decoration: none;
}
.c-block-column-banner--mt-83 {
    margin-top: 83px;
}
@media screen and (max-width: 767px) {
    .c-block-column-banner--mt-83 {
        margin-top: 62px;
    }
}
.c-block-column-banner--mt-46 {
    margin-top: 46px;
}

/* ---------------------------------------------
*   c-block-writer
--------------------------------------------- */
.c-block-writer {
    position: relative;
    margin-top: 40px;
    padding: 18px 35px;
    border: 1px solid var(--color-border-gray-1);
}
@media screen and (max-width: 767px) {
    .c-block-writer {
        margin-top: 30px;
        padding: 15px 16px 20px;
    }
}
.c-block-writer__container {
    display: flex;
    gap: 0 45px;
}
@media screen and (max-width: 767px) {
    .c-block-writer__container {
        flex-wrap: wrap;
        gap: 0 20px;
    }
}
.c-block-writer__img {
    width: 135px;
    height: 135px;
    -o-object-fit: cover;
       object-fit: cover;
    overflow: hidden;
    border-radius: 50%;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .c-block-writer__img {
        width: 88px;
        height: 88px;
    }
}
@media screen and (max-width: 767px) {
    .c-block-writer__txt-wrap {
        display: contents;
    }
}
.c-block-writer__profile {
    font-size: 16px;
    font-weight: 700;
    margin-top: 5px;
}
@media screen and (max-width: 767px) {
    .c-block-writer__profile {
        margin-top: 28px;
        width: calc(100% - 135px);
    }
}
.c-block-writer__name {
    margin-left: 16px;
}
.c-block-writer__history {
    font-size: 15px;
    color: var(--color-base-1);
    margin-top: 10px;
    line-height: 1.75;
}
@media screen and (max-width: 767px) {
    .c-block-writer__history {
        margin-top: 14px;
    }
}
.c-block-writer__web {
    font-size: 15px;
    line-height: 1.75;
}
.c-block-writer__web a {
    font-weight: 700;
}

/* ---------------------------------------------
*   c-block-writer-comment
--------------------------------------------- */
.c-block-writer-comment {
    position: relative;
    margin-top: 40px;
    padding: 15px 65px 20px 30px;
    box-shadow: 0 0 10px 0 var(--color-black-opacity-9);
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .c-block-writer-comment {
        margin-top: 32px;
        padding: 8px 15px 20px 18px;
    }
}
.c-block-writer-comment::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background-color: var(--color-blue-1);
}
.c-block-writer-comment__ttl {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
.c-block-writer-comment__ttl::before {
    content: "";
    display: inline-block;
    width: 26px;
    height: 30px;
    margin-right: 7px;
    background-image: url("/img/column/ico_comment_1.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    top: 8px;
}
.c-block-writer-comment p {
    position: relative;
    padding-left: 45px;
    margin-top: -3px;
}
.c-block-writer-comment p::before {
    content: "";
    position: absolute;
    top: 6px;
    left: 14px;
    width: 20px;
    height: 20px;
    background-image: url("/img/column/ico_comment_2.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
@media screen and (max-width: 767px) {
    .c-block-writer-comment p::before {
        left: 8px;
    }
}
.c-block-writer-comment p::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 5px;
    background-image: url("/img/column/ico_comment_3.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
    .c-block-writer-comment p {
        padding-left: 38px;
        margin-top: 0;
        line-height: 2;
    }
}

/* ---------------------------------------------
*   c-block-column-share
--------------------------------------------- */
.c-block-column-share {
    position: relative;
    max-width: 370px;
    margin-inline: auto;
    margin-block: 60px;
    padding: 24px 30px;
    border-top: 1px solid var(--color-border-gray-1);
    border-bottom: 1px solid var(--color-border-gray-1);
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .c-block-column-share {
        max-width: none;
        margin-block: 40px;
        padding-inline: 11px 3px;
    }
}
.c-block-column-share__inner {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 767px) {
    .c-block-column-share__inner {
        width: 100%;
        justify-content: center;
        gap: 0 22px;
    }
}
.c-block-column-share ul {
    width: 200px;
    display: flex;
    gap: 0 22px;
    transform: translateX(20px);
}
@media screen and (max-width: 767px) {
    .c-block-column-share ul {
        width: auto;
        transform: none;
    }
}
.c-block-column-share li {
    width: 40px;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-block-column-share li:hover {
        transition: opacity var(--hover-duration);
    }
    .c-block-column-share li:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-block-column-share p {
    letter-spacing: -0.05em;
}

/* ---------------------------------------------
*   c-block-article-recommend
--------------------------------------------- */
.c-block-article-recommend {
    margin-top: 60px;
    padding: 20px 30px 32px;
    background-color: var(--color-light-blue-1);
    box-shadow: 0 0 5px 0 var(--color-black-opacity-15);
    border-radius: 6px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend {
        margin-top: 40px;
        padding-inline: 15px;
        padding-bottom: 17px;
        box-shadow: 0 0 8px 0 var(--color-black-opacity-20);
    }
}
.c-block-article-recommend__ttl {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
.c-block-article-recommend__ttl::before {
    content: "";
    display: inline-block;
    width: 35px;
    height: 25px;
    margin-right: 7px;
    background-image: url("/img/column/ico_book.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    top: 7px;
}
.c-block-article-recommend__body {
    margin-top: 20px;
}
.c-block-article-recommend__list {
    display: flex;
    gap: 7px;
    flex-direction: column;
}
.c-block-article-recommend__item {
    border: 1px solid var(--color-white-1);
    background-color: var(--color-white-1);
    border-radius: 6px;
    overflow: hidden;
}
.c-block-article-recommend__link {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 22px;
    padding: 15px 55px 15px 20px;
    transition: background-color 0.3s ease;
}
.c-block-article-recommend__link:hover {
    color: inherit;
    text-decoration: none;
    background-color: var(--color-light-blue-2);
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend__link {
        gap: 0 11px;
        padding: 20px 33px 10px 13px;
        align-items: flex-start;
    }
}
.c-block-article-recommend__thumb {
    flex-shrink: 0;
    width: 114px;
    height: 76px;
    overflow: hidden;
}
.c-block-article-recommend__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-block-article-recommend__head {
    display: flex;
    gap: 0 17px;
    align-items: center;
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend__head {
        gap: 0 11px;
    }
}
.c-block-article-recommend__txt-wrap {
    margin-top: 3px;
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend__txt-wrap {
        margin-top: 0;
    }
}
.c-block-article-recommend__new {
    font-size: 12px;
    padding-block: 1px 2px;
    width: 86px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    text-align: center;
    display: inline-block;
    border-radius: 9999px;
    font-weight: 700;
}
.firefox .c-block-article-recommend__new {
    padding-block: 1px 3px;
}

@media screen and (max-width: 767px) {
    .c-block-article-recommend__new {
        width: 60px;
        line-height: 1;
        padding-block: 5px 6px;
    }
    .firefox .c-block-article-recommend__new {
        padding-block: 3px 5px;
    }
}
.c-block-article-recommend__date {
    color: var(--color-base-1);
}
.c-block-article-recommend__contents {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-base-1);
    margin-top: 15px;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend__contents {
        margin-top: 5px;
        line-height: 1.5;
    }
}
.c-block-article-recommend__arrow {
    position: absolute;
    width: 32px;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
    .c-block-article-recommend__arrow {
        width: 22px;
        right: 5px;
    }
}

/* ---------------------------------------------
*   c-block-card-warp-slide
--------------------------------------------- */
.c-block-card-warp-slide {
    margin-top: 23px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px 18px;
}
.c-block-card-warp-slide .c-card-column--index {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.c-block-card-warp-slide .c-card-column__container {
    display: flex;
    flex-direction: column;
    flex: 1;
    width: 100%;
}
.c-block-card-warp-slide .c-card-column__txt-wrap {
    flex: 1;
}
@media screen and (max-width: 767px) {
    .c-block-card-warp-slide {
        display: block;
        margin-top: 38px;
        margin-inline: -15px;
    }
}
.c-block-card-warp-slide.is-initialized {
    position: relative;
}
.c-block-card-warp-slide.is-initialized .splide__list {
    align-items: stretch;
    height: auto;
}
.c-block-card-warp-slide.is-initialized .splide__slide {
    display: flex;
    height: auto;
}
.c-block-card-warp-slide.is-initialized .splide__slide .c-card-column {
    height: 100%;
}
.c-block-card-warp-slide.is-initialized .splide__slide .c-card-column__container {
    position: relative;
}
.c-block-card-warp-slide.is-initialized .splide__slide .c-card-column__container::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background-color: var(--color-white-opacity-40);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.c-block-card-warp-slide.is-initialized .splide__slide:not(.is-active) .c-card-column__container::after {
    opacity: 1;
}
.c-block-card-warp-slide.is-initialized .splide__arrow {
    position: absolute;
    top: 50%;
    z-index: 1;
    translate: 0 -50%;
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    border: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    cursor: pointer;
    background-color: var(--color-transparent-1);
    background-image: url("/img/column/ico_arrow-circle.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-block-card-warp-slide.is-initialized .splide__arrow {
        transition: opacity var(--hover-duration);
    }
    .c-block-card-warp-slide.is-initialized .splide__arrow:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-block-card-warp-slide.is-initialized .splide__arrow svg {
    display: none;
}
.c-block-card-warp-slide.is-initialized .splide__arrow--prev {
    left: 26px;
    rotate: 180deg;
}
.c-block-card-warp-slide.is-initialized .splide__arrow--next {
    right: 26px;
}

/* ---------------------------------------------
*   c-block-card-warp
--------------------------------------------- */
.c-block-card-warp {
    margin-top: 23px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px 18px;
    justify-content: space-between;
    align-items: stretch;
}
.c-block-card-warp--mt-10 {
    margin-top: 10px;
}
.c-block-card-warp .c-card-column-index {
    display: flex;
    flex-direction: column;
}
.c-block-card-warp .c-card-column-index[hidden] {
    display: none;
}
.c-block-card-warp .c-card-column-index__container {
    display: flex;
    flex-direction: column;
    flex: 1;
    width: 100%;
}
.c-block-card-warp .c-card-column-index__txt-wrap {
    flex: 1;
}
@media screen and (max-width: 767px) {
    .c-block-card-warp {
        grid-template-columns: repeat(1, 1fr);
        flex-direction: column;
        gap: 0;
    }
}
.c-block-card-warp--faq {
    margin-top: 10px;
}
@media only screen and (max-width: 767px) {
    .c-block-card-warp--faq {
        width: calc(100% - 54px);
        margin: 22px auto 0;
        padding-inline: 22px;
    }
}

/* ---------------------------------------------
*   p-block-pagination
--------------------------------------------- */
.p-block-pagination {
    position: relative;
}
.p-block-pagination--bottom {
    margin-top: 52px;
}
@media screen and (max-width: 767px) {
    .p-block-pagination--bottom {
        margin-top: 30px;
    }
}
.p-block-pagination .pages {
    position: absolute;
    top: 5px;
    right: 5px;
    display: block;
    font-size: 11px;
    color: var(--color-gray-2);
    text-align: right;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
    .p-block-pagination .pages {
        top: 37px;
        right: -21px;
    }
}
.p-block-pagination .wp-pagenavi {
    display: flex;
    gap: 0 7px;
    justify-content: center;
    align-items: center;
}
.p-block-pagination .wp-pagenavi .page,
.p-block-pagination .wp-pagenavi .current {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 26px;
    height: 26px;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50%;
    background-color: var(--color-white-1);
    box-shadow: 0 0 5px 0 var(--color-black-opacity-8);
    color: var(--color-pagination-2);
    line-height: 1;
    padding-bottom: 1px;
}
.p-block-pagination .wp-pagenavi .page {
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-block-pagination .wp-pagenavi .page {
        transition: opacity var(--hover-duration);
    }
    .p-block-pagination .wp-pagenavi .page:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-block-pagination .wp-pagenavi .page:hover {
    text-decoration: none;
}
.p-block-pagination .wp-pagenavi .current {
    color: var(--color-pagination-1);
    background-color: var(--color-pagination-4);
}
.p-block-pagination .wp-pagenavi .extend {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-pagination-2);
    letter-spacing: 0.05em;
}
.p-block-pagination .wp-pagenavi .previouspostslink,
.p-block-pagination .wp-pagenavi .nextpostslink {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    box-shadow: none;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-block-pagination .wp-pagenavi .previouspostslink,
    .p-block-pagination .wp-pagenavi .nextpostslink {
        transition: opacity var(--hover-duration);
    }
    .p-block-pagination .wp-pagenavi .previouspostslink:hover,
    .p-block-pagination .wp-pagenavi .nextpostslink:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-block-pagination .wp-pagenavi .previouspostslink img,
.p-block-pagination .wp-pagenavi .nextpostslink img {
    opacity: 0;
}
.p-block-pagination .wp-pagenavi .previouspostslink::before,
.p-block-pagination .wp-pagenavi .nextpostslink::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 10px;
    height: 10px;
    background-color: var(--color-pagination-1);
    -webkit-mask-image: url("/img/common/ico_pagenation-gray.svg");
            mask-image: url("/img/common/ico_pagenation-gray.svg");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-size: contain;
            mask-size: contain;
    top: 2px;
}
.p-block-pagination .wp-pagenavi .previouspostslink::before {
    scale: -1 1;
}
.p-block-pagination .wp-pagenavi .previouspostslink:has(img[src*=lightgray])::before,
.p-block-pagination .wp-pagenavi .nextpostslink:has(img[src*=lightgray])::before,
.p-block-pagination .wp-pagenavi .previouspostslink:has(+ .current)::before,
.p-block-pagination .wp-pagenavi .current + .nextpostslink::before {
    background-color: var(--color-border-gray-1);
}
.p-block-pagination .wp-pagenavi .previouspostslink:has(img[src*=lightgray]),
.p-block-pagination .wp-pagenavi .nextpostslink:has(img[src*=lightgray]),
.p-block-pagination .wp-pagenavi .previouspostslink:has(+ .current),
.p-block-pagination .wp-pagenavi .current + .nextpostslink {
    pointer-events: none;
    cursor: default;
}

/* ---------------------------------------------
*   c-block-anchor
--------------------------------------------- */
.c-block-anchor {
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .c-block-anchor {
        background-color: var(--color-gray-3);
        margin-top: 0;
        margin-inline: -15px;
    }
}
.c-block-anchor__trigger {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 40px;
    margin: 12px auto 0;
    padding: 0;
    border: 0;
    background: var(--color-transparent-1);
    cursor: pointer;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media screen and (max-width: 767px) {
    .c-block-anchor__trigger {
        width: 100%;
        height: 50px;
        margin-block: 0;
    }
}
.c-block-anchor__icon {
    position: relative;
    display: block;
    width: 20px;
    height: 16px;
}
.c-block-anchor__icon span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--color-base-2);
    border-radius: 1px;
    transition: top 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}
.c-block-anchor__icon span:nth-child(1) {
    top: 0;
}
.c-block-anchor__icon span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
}
.c-block-anchor__icon span:nth-child(3) {
    top: 100%;
    transform: translateY(-100%);
}
.c-block-anchor.is-open .c-block-anchor__icon span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}
.c-block-anchor.is-open .c-block-anchor__icon span:nth-child(2) {
    opacity: 0;
}
.c-block-anchor.is-open .c-block-anchor__icon span:nth-child(3) {
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 767px) {
    .c-block-anchor.is-acc .c-block-anchor__trigger {
        display: flex;
    }
    .c-block-anchor.is-acc .c-list-anchor {
        overflow: hidden;
        max-height: 0;
        margin-top: 0;
        opacity: 0;
        visibility: hidden;
        transition: max-height 0.35s ease, margin-top 0.35s ease, opacity 0.25s ease, visibility 0.35s;
    }
    .c-block-anchor.is-acc.is-open .c-list-anchor {
        max-height: 280px;
        opacity: 1;
        visibility: visible;
    }
}

/* ---------------------------------------------
*   c-block-category-warp
--------------------------------------------- */
.c-block-category-warp {
    min-width: 0;
}

/* ---------------------------------------------
*   c-btn
--------------------------------------------- */
.c-btn-1 {
    position: relative;
    background-color: var(--color-white-1);
    border: 1px solid var(--color-blue-1);
    border-radius: 9999px;
    padding: 15px 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--color-blue-1);
    text-align: center;
    text-decoration: none;
    display: inline-block;
    line-height: 1;
    margin-top: 1px;
    width: 100%;
    cursor: pointer;
}
.c-btn-1 span {
    display: inline-block;
    padding-bottom: 1px;
}
.c-btn-1 img {
    position: absolute;
    width: 10px;
    height: 10px;
    vertical-align: middle;
    margin-left: 10px;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
}
@media screen and (max-width: 767px) {
    .c-btn-1 img {
        right: 20px;
    }
}
.c-btn-1:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-btn-1:hover {
        transition: opacity var(--hover-duration);
    }
    .c-btn-1:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-btn-1 a:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}

/* ---------------------------------------------
*   c-btn-2
--------------------------------------------- */
.c-btn-2 {
    position: relative;
    background-color: var(--color-blue-1);
    box-shadow: 0 0 10px 0 var(--color-black-opacity-20);
    border-radius: 9999px;
    padding: 25px 0;
    font-size: 16px;
    font-weight: 700;
    color: var(--color-white-1);
    text-align: center;
    text-decoration: none;
    display: inline-block;
    line-height: 1;
    margin-top: 1px;
    width: 100%;
    cursor: pointer;
}
@media screen and (max-width: 767px) {
    .c-btn-2 {
        box-shadow: 0 0 10px 0 var(--color-black-opacity-20);
    }
}
.c-btn-2 span {
    display: inline-block;
    padding-bottom: 1px;
    margin-right: 2px;
}
.c-btn-2 span .fc-yellow-1 {
    font-size: 18px;
}
.c-btn-2 img {
    position: absolute;
    width: 13px;
    height: 13px;
    vertical-align: middle;
    margin-left: 10px;
    top: 50%;
    transform: translateY(-45%);
    right: 15px;
}
.c-btn-2:hover {
    color: inherit;
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-btn-2:hover {
        transition: opacity var(--hover-duration);
    }
    .c-btn-2:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   c-btn-3
--------------------------------------------- */
.c-btn-3 {
    position: relative;
    background-color: var(--color-white-1);
    border: none;
    border-radius: 9999px;
    padding: 18px 0;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    box-shadow: 0 0 5px 0 var(--color-black-opacity-10);
    color: var(--color-base-1);
    width: 100%;
    cursor: pointer;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    transition: background-color 0.25s ease;
}
.c-btn-3::before {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(50% + 36px);
    transform: translateY(-50%);
    width: 1px;
    height: 40px;
    background-color: var(--color-border-gray-1);
}
@media screen and (max-width: 767px) {
    .c-btn-3::before {
        content: none;
    }
}
@media screen and (max-width: 767px) {
    .c-btn-3 {
        width: 64px;
        height: 64px;
        box-shadow: 0 0 10px 0 var(--color-black-opacity-10);
    }
}
.c-btn-3:not(:disabled):not(.is-voted):hover {
    color: var(--color-base-1);
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-btn-3:not(:disabled):not(.is-voted):hover {
        transition: opacity var(--hover-duration);
    }
    .c-btn-3:not(:disabled):not(.is-voted):hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-btn-3__txt {
    font-size: 16px;
    position: relative;
    text-align: center;
    display: inline-block;
    transform: translateX(-24%);
}
.c-btn-3__txt::before {
    display: inline-block;
    content: "";
    width: 28px;
    height: 27px;
    background-image: url("/img/column/ico_good.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0px;
    left: -41px;
}
@media screen and (max-width: 767px) {
    .c-btn-3__txt::before {
        left: 50%;
        transform: translateX(-50%);
        top: -59px;
    }
}
@media screen and (max-width: 767px) {
    .c-btn-3__txt {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        white-space: nowrap;
        bottom: -30px;
        width: auto;
        font-size: 14px;
    }
}
.c-btn-3--discover .c-btn-3__txt {
    transform: translateX(-38%);
}
@media screen and (max-width: 767px) {
    .c-btn-3--discover .c-btn-3__txt {
        transform: translateX(-50%);
    }
}
.c-btn-3--discover .c-btn-3__txt::before {
    top: 2px;
    left: -43px;
    background-image: url("/img/column/ico_discover.svg");
}
@media screen and (max-width: 767px) {
    .c-btn-3--discover .c-btn-3__txt::before {
        top: -59px;
        left: 50%;
        transform: translateX(-50%);
    }
}
.c-btn-3--trust .c-btn-3__txt::before {
    top: 2px;
    left: -38px;
    background-image: url("/img/column/ico_trust.svg");
}
@media screen and (max-width: 767px) {
    .c-btn-3--trust .c-btn-3__txt::before {
        top: -59px;
        left: 50%;
        transform: translateX(-50%);
    }
}
.c-btn-3__num {
    font-size: 16px;
    position: absolute;
    right: 28px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--color-blue-1);
    line-height: 2.5;
    text-align: left;
}
@media screen and (max-width: 767px) {
    .c-btn-3__num {
        z-index: 2;
        left: 50%;
        transform: translateX(-50%);
        bottom: -15px;
        width: 100%;
        text-align: center;
    }
}
.c-btn-3.is-voted {
    position: relative;
    background-color: var(--color-light-blue-3);
    cursor: default;
    opacity: 1;
    color: var(--color-base-1);
    box-shadow: none;
}
.c-btn-3.is-voted::before {
    background-color: var(--color-white-1);
}
.c-btn-3.is-voted .c-btn-3__num {
    width: 17px;
    height: 16px;
    font-size: 0;
    color: var(--color-transparent-1);
    line-height: 0;
    background-image: url("/img/column/ico_check.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
@media screen and (max-width: 767px) {
    .c-btn-3.is-voted .c-btn-3__num {
        width: 19px;
        height: 19px;
        position: absolute;
        top: 40px;
    }
}
.c-btn-3:disabled {
    opacity: 1;
    cursor: default;
}

/* ---------------------------------------------
*   c-btn-4
--------------------------------------------- */
.c-btn-4 {
    position: relative;
    background-color: var(--color-white-1);
    border-radius: 8px;
    padding: 21px 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--color-blue-1);
    text-align: center;
    text-decoration: none;
    display: inline-block;
    line-height: 1;
    width: 384px;
    cursor: pointer;
    border: 1px solid var(--color-blue-1);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-btn-4 {
        transition: opacity var(--hover-duration);
    }
    .c-btn-4:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-btn-4 {
        max-width: none;
        width: -webkit-fill-available;
        width: -moz-available;
        width: stretch;
        padding: 20px 0 21px;
    }
}
.c-btn-4::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 11px;
    height: 11px;
    background-image: url("/img/common/ico_arrow_blue.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.c-btn-4 a {
    text-decoration: none;
}
.c-btn-4:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
.c-btn-4:hover a {
    color: var(--color-blue-1);
    text-decoration: none;
}

/* ---------------------------------------------
*   c-btn-category
--------------------------------------------- */
.c-btn-category {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    min-height: 56px;
    padding: 12px 8px;
    border: 1px solid var(--color-blue-1);
    border-radius: 8px;
    background-color: var(--color-white-1);
    color: var(--color-blue-1);
    font-family: inherit;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    cursor: pointer;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-btn-category {
        transition: opacity var(--hover-duration);
    }
    .c-btn-category:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-btn-category__txt {
    position: relative;
    letter-spacing: 0.05em;
}
.c-btn-category:hover {
    color: var(--color-blue-1);
    text-decoration: none;
    opacity: 0.7;
}
.c-btn-category:focus-visible {
    outline: 2px solid var(--color-blue-1);
    outline-offset: 3px;
}
.c-btn-category--current, .c-btn-category.is-current {
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    cursor: default;
    pointer-events: none;
}
.c-btn-category--current .c-btn-category__txt::after, .c-btn-category.is-current .c-btn-category__txt::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(100% + 8px);
    width: 18px;
    height: 18px;
    background-image: url("/img/common/ico_check_white.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: translateY(-50%);
    pointer-events: none;
}
.c-btn-category--current:hover, .c-btn-category.is-current:hover {
    color: var(--color-white-1);
    opacity: 1;
}
@media only screen and (max-width: 767px) {
    .c-btn-category {
        width: 100%;
        min-height: 55px;
        padding-inline: 20px;
        font-size: 16px;
        border-radius: 10px;
        padding-block: 11px 12px;
    }
    .c-btn-category--current .c-btn-category__txt::after, .c-btn-category.is-current .c-btn-category__txt::after {
        right: calc(100% + 6px);
        width: 16px;
        height: 16px;
    }
}

/* ---------------------------------------------
*   c-card-1
--------------------------------------------- */
.c-card-1 {
    background-color: var(--color-white-1);
    border-radius: 8px;
    box-shadow: 0 0 10px 0 var(--color-black-opacity-15);
    overflow: hidden;
}
.c-card-1__head {
    text-align: center;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    padding-block: 20px;
}
.c-card-1__ttl {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
}
.c-card-1__body {
    padding: 28px 15px 32px;
}
@media screen and (max-width: 767px) {
    .c-card-1__body {
        padding: 22px 26px 20px;
    }
}
.c-card-1__txt {
    margin-top: 15px;
    font-size: 13px;
    text-align: center;
}
.c-card-1__txt span {
    display: inline-block;
    margin-right: 4px;
}
.c-card-1__link {
    font-weight: 700;
    text-decoration: underline;
    position: relative;
    left: -2px;
}
.c-card-1__link:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
.c-card-1__tel {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    color: var(--color-base-1);
    font-weight: 700;
    font-size: 27px;
}
.c-card-1__tel a {
    will-change: opacity;
    text-decoration: none;
    color: var(--color-base-1);
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-card-1__tel a {
        transition: opacity var(--hover-duration);
    }
    .c-card-1__tel a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-card-1__tel img {
    width: 23px;
}
@media screen and (max-width: 767px) {
    .c-card-1__tel {
        margin-top: -6px;
    }
}
.c-card-1--black .c-card-1__head {
    background-color: var(--color-base-1);
}
.c-card-1--black .c-card-1__txt {
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .c-card-1--pb35 .c-card-1__body {
        padding-bottom: 35px;
    }
}

/* ---------------------------------------------
*   c-card-column
--------------------------------------------- */
.c-card-column {
    font-size: 14px;
}
.c-card-column__container {
    display: block;
    border-radius: 6px;
    overflow: hidden;
    background-color: var(--color-white-1);
    box-shadow: 0 0 10px 0 var(--color-black-opacity-15);
    margin-block: 10px;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-card-column__container {
        transition: opacity var(--hover-duration);
    }
    .c-card-column__container:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-card-column__container:hover {
    text-decoration: none;
}
.c-card-column__container:hover a {
    color: inherit;
    text-decoration: none;
}
.c-card-column__img-wrap {
    position: relative;
}
.c-card-column__img {
    position: relative;
    width: 100%;
    overflow: hidden;
    aspect-ratio: 301/146;
}
.c-card-column__img img {
    display: block;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    max-width: none;
    margin: -1px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
@media screen and (max-width: 767px) {
    .c-card-column__img {
        aspect-ratio: 241/117;
    }
}
.c-card-column__new {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 15.4838709677%;
    height: 15.4838709677%;
}
@media screen and (max-width: 767px) {
    .c-card-column__new {
        width: 12.4481327801%;
        height: 12.4481327801%;
        top: 6.22406639%;
        left: 6.22406639%;
    }
}
.c-card-column__new img {
    width: 100%;
}
.c-card-column__txt-wrap {
    padding: 15px 20px 17px;
}
@media screen and (max-width: 767px) {
    .c-card-column__txt-wrap {
        padding: 12px 15px 14px;
        letter-spacing: -0.01em;
    }
}
.c-card-column__date {
    font-weight: 400;
    font-size: 12px;
}
@media screen and (max-width: 767px) {
    .c-card-column__date {
        font-size: 10px;
    }
}
.c-card-column__contents {
    font-weight: 700;
    line-height: 1.8;
    margin-top: 7px;
    overflow: hidden;
    max-height: 3.6em;
}
.c-card-column--index-kv .c-card-column__txt-wrap {
    position: relative;
    padding: 20px 20px 18px;
    min-height: 83px;
}
@media screen and (max-width: 767px) {
    .c-card-column--index-kv .c-card-column__txt-wrap {
        padding: 4px 12px 15px;
        min-height: auto;
    }
}
.c-card-column--index-kv .c-card-column__new {
    top: 20px;
    left: 20px;
    width: 50px;
    height: 50px;
}
@media screen and (max-width: 767px) {
    .c-card-column--index-kv .c-card-column__new {
        top: 8.2987551867%;
        left: 4.5643153527%;
        width: 12.4481327801%;
        height: 12.4481327801%;
    }
}
.c-card-column--index-kv .c-card-column__new img {
    width: 100%;
}
.c-card-column--index-kv .c-card-column__tag {
    position: absolute;
    top: 16px;
    right: 20px;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 10px;
    padding: 2px 20px;
    border-radius: 9999px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    display: inline-block;
}
@media screen and (max-width: 767px) {
    .c-card-column--index-kv .c-card-column__tag {
        font-size: 8px;
        padding: 1px 9px;
        top: 7px;
        right: 17px;
    }
}
.c-card-column--index-kv .c-card-column__img {
    aspect-ratio: 600/338;
}
.c-card-column--index-kv .c-card-column__contents {
    font-size: 16px;
    margin-top: 10px;
    line-height: 1.5;
    max-height: 3em;
}
@media screen and (max-width: 767px) {
    .c-card-column--index-kv .c-card-column__contents {
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-card-column-index
--------------------------------------------- */
.c-card-column-index {
    font-size: 14px;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-card-column-index {
        transition: opacity var(--hover-duration);
    }
    .c-card-column-index:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-card-column-index:hover {
    text-decoration: none;
}
.c-card-column-index:hover a {
    color: inherit;
    text-decoration: none;
}
.c-card-column-index__container {
    display: block;
    border-radius: 6px;
    overflow: hidden;
    background-color: var(--color-white-1);
    box-shadow: 0 0 10px 0 var(--color-black-opacity-15);
    margin-block: 10px;
}
.c-card-column-index__img-wrap {
    position: relative;
}
.c-card-column-index__img {
    position: relative;
    width: 100%;
    overflow: hidden;
    aspect-ratio: 301/146;
}
.c-card-column-index__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
.c-card-column-index__new {
    position: absolute;
    top: 7.7922077922%;
    left: 4.2207792208%;
    width: 15.5844155844%;
    height: 15.5844155844%;
}
@media screen and (max-width: 767px) {
    .c-card-column-index__new {
        width: 15.9468438538%;
        height: 15.9468438538%;
        top: 8.9700996678%;
        left: 3.9867109635%;
    }
}
.c-card-column-index__txt-wrap {
    padding: 15px 20px 17px;
}
@media screen and (max-width: 767px) {
    .c-card-column-index__txt-wrap {
        padding: 20px 22px 20px;
        letter-spacing: -0.01em;
    }
}
.c-card-column-index__date {
    font-weight: 400;
    font-size: 12px;
}
@media screen and (max-width: 767px) {
    .c-card-column-index__date {
        font-size: 10px;
    }
}
.c-card-column-index__contents {
    font-weight: 700;
    line-height: 1.8;
    margin-top: 7px;
    overflow: hidden;
    max-height: 3.6em;
}
@media screen and (max-width: 767px) {
    .c-card-column-index__contents {
        font-size: 13px;
        line-height: 2;
        max-height: 4em;
    }
}
.c-card-column-index--index {
    width: 32%;
}
.c-card-column-index--index .c-card-column-index__date {
    font-size: 12px;
}

/* ---------------------------------------------
*   c-card-support
--------------------------------------------- */
.c-card-support {
    position: relative;
    display: flex;
    align-items: flex-start;
    box-sizing: border-box;
    padding: 21px 40px 21px 21px;
    min-height: 124.2px;
    border: 1px solid var(--color-service-border-2);
    border-radius: 10px;
    background-color: var(--color-white-1);
    color: inherit;
    text-decoration: none;
    gap: 20px;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-card-support {
        transition: opacity var(--hover-duration);
    }
    .c-card-support:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-card-support {
        padding: 20px 45px 15px 21px;
        min-height: auto;
        gap: 17px;
    }
}
.c-card-support__thumb {
    flex-shrink: 0;
    max-width: 100%;
    width: 80px;
    height: 80px;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-support__body {
    padding-right: 0;
    min-width: 0;
}
.c-card-support__ttl {
    color: var(--color-blue-1);
    font-weight: 700;
    font-size: calc(18 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .c-card-support__ttl {
        font-size: calc(18 / var(--root-fz) * 1rem);
    }
}
.c-card-support__txt {
    margin-top: 5px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.7142857143;
}
.c-card-support__arrow {
    position: absolute;
    top: calc(50% - 2px);
    right: 23px;
    max-width: 100%;
    width: 6px;
    height: auto;
}
@media screen and (max-width: 767px) {
    .c-card-support__arrow {
        right: 18px;
    }
}

/* ---------------------------------------------
*   c-cassette-recommend
--------------------------------------------- */
.c-cassette-recommend {
    margin-top: 75px;
    padding-block: 53px 122px;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend {
        margin-top: 40px;
        padding-block: 30px 60px;
    }
}
.c-cassette-recommend__body {
    margin-top: 55px;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend__body {
        margin-top: 38px;
    }
}
.c-cassette-recommend__body--mt-38 {
    margin-top: 38px;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend__body--mt-38 {
        margin-top: 15px;
    }
}
.c-cassette-recommend--mt-40 {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend--mt-40 {
        margin-top: 15px;
    }
}
.c-cassette-recommend--mt-46 {
    margin-top: 46px;
    padding-top: 70px;
    padding-bottom: 76px;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend--mt-46 {
        margin-top: 83px;
        padding-top: 67px;
    }
}

/* ---------------------------------------------
*   c-cassette-faq
--------------------------------------------- */
.c-cassette-faq {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq {
        gap: 20px;
    }
}
.c-cassette-faq__item {
    width: 100%;
}
.c-cassette-faq__q {
    display: flex;
    align-items: flex-start;
    gap: 26px;
    width: 100%;
    padding: 13.5px 24px 13.5px 30px;
    background-color: var(--color-light-blue-1);
    border: none;
    cursor: pointer;
    text-align: left;
    color: var(--color-base-1);
    font-family: inherit;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__q {
        gap: 12px;
        padding: 16px 12px 20px 14px;
    }
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-cassette-faq__q {
        transition: opacity var(--hover-duration);
    }
    .c-cassette-faq__q:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-cassette-faq__a {
    background-color: var(--color-gray-8);
}
.c-cassette-faq__a-inner {
    display: flex;
    align-items: flex-start;
    gap: 26px;
    padding: 22px 55px 25px 30px;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__a-inner {
        gap: 12px;
        padding: 17px 14px 21px 15px;
    }
}
.c-cassette-faq__label {
    flex-shrink: 0;
    width: 24px;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;
}
@media screen and (max-width: 767px) {
    .c-cassette-faq__label {
        font-size: 21px;
    }
}
.c-cassette-faq__label--q {
    color: var(--color-blue-1);
}
@media screen and (max-width: 767px) {
    .c-cassette-faq__label--q {
        margin-top: -3px;
    }
}
.c-cassette-faq__label--a {
    margin-top: 3px;
    color: var(--color-black-1);
}
@media screen and (max-width: 767px) {
    .c-cassette-faq__label--a {
        margin-top: 0;
    }
}
.c-cassette-faq__body {
    flex: 1;
    min-width: 0;
}
.c-cassette-faq__ttl {
    flex: 1;
    font-size: 17px;
    line-height: 1.6470588235;
    font-weight: 700;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__ttl {
        min-width: 0;
        font-size: 15px;
        line-height: 22px;
    }
}
.c-cassette-faq__txt {
    flex: 1;
    min-width: 0;
    padding-top: 0;
    font-size: 15px;
    line-height: 1.8666666667;
    font-weight: 400;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__txt {
        font-size: 14px;
        line-height: 22px;
    }
}
.c-cassette-faq__txt a {
    color: var(--color-blue-1);
    font-weight: 700;
    text-decoration: underline;
}
.c-cassette-faq__txt a:hover {
    text-decoration: none;
}
.c-cassette-faq__txt ul {
    display: flex;
    flex-direction: column;
    margin-top: 7px;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__txt ul {
        margin-top: 6px;
    }
}
.c-cassette-faq__txt li {
    font-size: 12px;
    line-height: 1.6923076923;
    font-weight: 400;
}
.c-cassette-faq__ico {
    flex-shrink: 0;
    align-self: center;
    box-sizing: border-box;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px 24px;
}
@media only screen and (max-width: 767px) {
    .c-cassette-faq__ico {
        align-self: flex-start;
    }
}
.js-acc-scope.is-close .c-cassette-faq__ico {
    background-image: url("/img/common/ico_plus.svg");
}

.js-acc-scope.is-open .c-cassette-faq__ico {
    background-image: url("/img/common/ico_minus.svg");
}

@media only screen and (max-width: 767px) {
    .c-cassette-faq .c-txt-note {
        font-size: 13px;
        line-height: 20px;
    }
}

/* ---------------------------------------------
*   c-cassette-recommend-column
--------------------------------------------- */
.c-cassette-recommend-column {
    max-width: 960px;
    margin-inline: auto;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend-column {
        padding-inline: 15px;
    }
}
.c-cassette-recommend-column__btn {
    width: 100%;
    margin-inline: auto;
    margin-top: 40px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-cassette-recommend-column__btn {
        margin-top: 30px;
    }
}
@media only screen and (max-width: 767px) {
    .c-cassette-recommend-column--faq {
        padding-inline: 10px;
    }
}

/* ---------------------------------------------
*   c-cassette-flow
--------------------------------------------- */
.c-cassette-flow {
    display: grid;
    color: var(--color-blue-1);
    list-style: none;
    font-family: var(--ff-noto);
    container-type: inline-size;
    grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 0.89fr);
    gap: 0;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow {
        grid-template-columns: 1fr;
    }
}
.c-cassette-flow__img {
    display: block;
    max-width: 100%;
    height: auto;
}
.c-cassette-flow__img--compact {
    display: none;
}
.c-cassette-flow__step {
    position: relative;
    z-index: 4;
    box-sizing: border-box;
    padding: 24px 0;
    min-height: 300px;
    border: 0;
    background-color: var(--color-transparent-1);
    color: var(--color-blue-1);
    text-align: center;
    --flow-tip-overlap: 2.7894736842cqw;
}
.c-cassette-flow__step:nth-child(2) {
    z-index: 3;
}
.c-cassette-flow__step:nth-child(3) {
    z-index: 2;
}
.c-cassette-flow__step:last-child {
    z-index: 1;
    padding: 22px 0;
    border: 2px solid var(--color-blue-1);
    background-color: var(--color-white-1);
}
@media screen and (min-width: 768px) {
    .c-cassette-flow__step:last-child .c-cassette-flow__img {
        width: 17.8947368421cqw;
    }
}
.c-cassette-flow__step:not(:last-child)::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: calc(100% + var(--flow-tip-overlap));
    height: 100%;
    background-color: var(--color-blue-1);
    content: "";
    clip-path: polygon(0 0, calc(100% - 5.5789473684cqw) 0, 100% 50%, calc(100% - 5.5789473684cqw) 100%, 0 100%);
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step:not(:last-child)::before {
        top: auto;
        right: 0;
        bottom: -61px;
        left: auto;
        width: 100%;
        height: 63px;
        background-color: var(--color-white-1);
        clip-path: polygon(0 0, 100% 0, 50% 100%);
    }
}
.c-cassette-flow__step:not(:last-child)::after {
    position: absolute;
    top: 2px;
    left: 2px;
    z-index: 2;
    width: calc(100% + var(--flow-tip-overlap) - 4px);
    height: calc(100% - 4px);
    background-color: var(--color-white-1);
    content: "";
    clip-path: polygon(0 0, calc(100% - 5.5789473684cqw + 0.5px) 0, 100% 50%, calc(100% - 5.5789473684cqw + 0.5px) 100%, 0 100%);
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step:not(:last-child)::after {
        top: auto;
        right: -2px;
        bottom: -64px;
        left: auto;
        width: calc(100% + 4px);
        height: 64px;
        background-color: var(--color-transparent-1);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 71' preserveAspectRatio='none'%3E%3Cpath d='M1 0V1L150 70 299 1V0' fill='%23fff' stroke='%23004099' stroke-width='2'/%3E%3C/svg%3E");
        background-size: 100% 100%;
        clip-path: none;
    }
}
.c-cassette-flow__step .c-cassette-flow__img {
    margin: 0 auto;
    max-width: 170px;
    width: 74.7252747253%;
    height: auto;
    aspect-ratio: 170/141;
    -o-object-fit: cover;
       object-fit: cover;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step .c-cassette-flow__img {
        max-width: 100%;
        width: 220px;
        height: 146px;
        aspect-ratio: auto;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step {
        padding: 40px 24px 1px;
        min-height: 0;
        border: 2px solid var(--color-blue-1);
        background-color: var(--color-white-1);
    }
    .c-cassette-flow__step:not(:last-child) {
        margin-bottom: 24px;
        border-bottom: 0;
    }
    .c-cassette-flow__step:last-child {
        padding: 40px 24px 41px;
    }
}
.c-cassette-flow__step-inner {
    position: relative;
    z-index: 3;
    max-width: 100%;
    width: 23.9473684211cqw;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step-inner {
        max-width: none;
        width: auto;
        margin-inline: 0;
    }
}
.c-cassette-flow__step-label {
    position: relative;
    display: block;
    box-sizing: border-box;
    margin: -14px auto 0;
    padding: 3px 0;
    width: 117.5px;
    height: 30px;
    border: 2px solid var(--color-white-1);
    border-radius: 20px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    font-size: 14px;
    line-height: 1.2;
}
.c-cassette-flow__step-label span {
    vertical-align: baseline;
    font-size: 18px;
    line-height: 1;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step-label span {
        font-size: inherit;
        line-height: inherit;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step-label {
        box-sizing: content-box;
        margin-top: -16px;
        padding: 5px 0;
        width: 117px;
        height: auto;
    }
}
.c-cassette-flow__step-ttl {
    margin-top: 14px;
    font-weight: 700;
    font-size: 19px;
}
.c-cassette-flow__step-txt {
    margin-top: 8px;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.6;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow__step-txt {
        font-weight: 700;
    }
}
.c-cassette-flow--compact {
    grid-template-columns: 226.36fr 246.1fr 250.24fr 222.28fr;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact {
        grid-template-columns: 1fr;
    }
}
.c-cassette-flow--compact .c-cassette-flow__step {
    min-height: 295.77px;
    padding-block: 23px;
    --flow-tip-overlap: 3.731298017cqw;
}
.c-cassette-flow--compact .c-cassette-flow__step:nth-child(2) {
    --flow-tip-overlap: 1.642362802cqw;
}
.c-cassette-flow--compact .c-cassette-flow__step:nth-child(3) {
    --flow-tip-overlap: 1.204255116cqw;
}
.c-cassette-flow--compact .c-cassette-flow__step:last-child {
    padding-block: 21px;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step {
        padding: 10.5px 24px 0;
        min-height: 0;
        height: 239.11px;
    }
    .c-cassette-flow--compact .c-cassette-flow__step:not(:last-child) {
        margin-bottom: 40.91px;
    }
    .c-cassette-flow--compact .c-cassette-flow__step:nth-child(3) {
        margin-bottom: 42.6px;
    }
    .c-cassette-flow--compact .c-cassette-flow__step:last-child {
        padding: 15px 24px 0;
        height: 288.77px;
        transform: translateX(-1.5px);
    }
    .c-cassette-flow--compact .c-cassette-flow__step:not(:last-child)::before {
        bottom: -51px;
        height: 53px;
    }
    .c-cassette-flow--compact .c-cassette-flow__step:not(:last-child)::after {
        bottom: -53px;
        height: 53px;
    }
}
.c-cassette-flow--compact .c-cassette-flow__step-inner {
    width: 23.954792694cqw;
    margin-inline: 0;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step-inner {
        width: auto;
    }
}
.c-cassette-flow--compact .c-cassette-flow__step:nth-child(3) .c-cassette-flow__step-inner {
    margin-left: 1.5px;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step:nth-child(3) .c-cassette-flow__step-inner {
        margin-left: 0;
    }
}
.c-cassette-flow--compact .c-cassette-flow__step:last-child .c-cassette-flow__step-inner {
    width: 100%;
}
.c-cassette-flow--compact .c-cassette-flow__step .c-cassette-flow__img {
    width: 17.98979873cqw;
    height: 140px;
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step .c-cassette-flow__img {
        width: 170px;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__picture {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__img--compact {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step:last-child .c-cassette-flow__img {
        margin-left: calc((100% - 170px) / 2 + 1.8px);
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-flow--compact .c-cassette-flow__step-label {
        box-sizing: border-box;
        margin-top: -12.8px;
        width: 117px;
        height: 30px;
        padding-block: 3px;
    }
}
.c-cassette-flow--compact .c-cassette-flow__step-ttl {
    line-height: 1.2;
}

/* ---------------------------------------------
*   c-cassette-reasons
--------------------------------------------- */
.c-cassette-reasons {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding: 38px 40px 33px;
    width: calc(100% + 2.5px);
    border: 2.5px solid var(--color-service-border-2);
    border-radius: 9px;
    background-color: var(--color-white-1);
    list-style: none;
    margin-inline: -1px;
    container-type: inline-size;
    gap: 37px 15px;
    justify-content: space-around;
}
@media screen and (max-width: 767px) {
    .c-cassette-reasons {
        display: grid;
        padding: 26px min(33px, 30vw - 79px) 31px;
        grid-template-columns: 1fr;
        gap: 17px;
    }
}
.c-cassette-reasons__item {
    --reasons-body-x: 0px;
    --reasons-strong-y: 0px;
    --reasons-txt-y: 0px;
    --reasons-line-left: -2px;
    --reasons-line-trim: 1px;
    --reasons-line-bottom: -1px;
    --reasons-line-height: 3px;
    position: relative;
    top: -1.5px;
    display: flex;
    flex: 1 0 calc((100% - 30px) / 3);
    align-items: center;
    box-sizing: border-box;
    min-width: 279px;
    gap: 11px;
}
.c-cassette-reasons__item:nth-child(-n+2) {
    flex-basis: calc((100% - 15px) / 2);
}
.c-cassette-reasons__item:first-child {
    --reasons-body-x: 1px;
    --reasons-strong-y: -4px;
    --reasons-txt-y: 1px;
    padding-left: 115px;
}
.c-cassette-reasons__item:nth-child(2) {
    --reasons-body-x: -3px;
    --reasons-strong-y: -4px;
    --reasons-txt-y: 2px;
    --reasons-line-trim: 4px;
    padding-left: 42px;
}
.c-cassette-reasons__item:nth-child(3) {
    --reasons-body-x: -6px;
    --reasons-strong-y: -3px;
    padding-left: 1px;
}
.c-cassette-reasons__item:nth-child(4) {
    --reasons-body-x: -2px;
    --reasons-line-left: -1px;
    --reasons-line-trim: 4px;
    padding-left: 20px;
}
.c-cassette-reasons__item:nth-child(4) .c-cassette-reasons__strong {
    line-height: 1.6666666667;
}
.c-cassette-reasons__item:nth-child(4) .c-cassette-reasons__strong::before {
    top: 27px;
    display: block;
    width: calc(7em - 3px);
}
.c-cassette-reasons__item:nth-child(5) {
    --reasons-body-x: -2px;
    --reasons-strong-y: -4px;
    --reasons-line-left: 0px;
    --reasons-line-trim: 5px;
    --reasons-line-bottom: 0px;
    flex-grow: 0;
    justify-content: center;
    padding-left: 13px;
}
.c-cassette-reasons__item:nth-child(5) .c-cassette-reasons__ico {
    left: 0;
}
@container (width < 867px) {
    .c-cassette-reasons__item:nth-child(n) {
        flex: 0 0 279px;
        padding-inline: 0;
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-reasons__item {
        --reasons-line-left: 0px;
        --reasons-line-trim: 2px;
        min-width: 0;
        grid-column: auto;
        gap: min(13px, 3.4667vw);
    }
    .c-cassette-reasons__item:nth-child(n) {
        padding-inline: 0;
    }
    .c-cassette-reasons__item:first-child {
        --reasons-body-x: 1.5px;
        --reasons-strong-y: -1px;
        --reasons-txt-y: 2px;
    }
    .c-cassette-reasons__item:nth-child(2) {
        --reasons-body-x: 1.5px;
        --reasons-strong-y: 1px;
        --reasons-txt-y: 4px;
        --reasons-line-trim: 5px;
        --reasons-line-bottom: -3px;
    }
    .c-cassette-reasons__item:nth-child(3) {
        --reasons-body-x: 3.5px;
        --reasons-strong-y: -6px;
        --reasons-txt-y: 1px;
        --reasons-line-left: -2px;
        --reasons-line-bottom: -2px;
        margin-top: 8px;
    }
    .c-cassette-reasons__item:nth-child(3) .c-cassette-reasons__txt {
        left: -1px;
    }
    .c-cassette-reasons__item:nth-child(4) {
        --reasons-body-x: 3.5px;
        --reasons-strong-y: -3px;
        --reasons-line-left: -2px;
        --reasons-line-trim: 4px;
        margin-top: 6px;
    }
    .c-cassette-reasons__item:nth-child(4) .c-cassette-reasons__strong {
        line-height: 1.7222222222;
    }
    .c-cassette-reasons__item:nth-child(4) .c-cassette-reasons__strong::before {
        top: 27px;
        left: -1px;
        width: calc(7em - 4px);
    }
    .c-cassette-reasons__item:nth-child(5) {
        --reasons-body-x: 3.5px;
        --reasons-strong-y: 0px;
        --reasons-line-left: -1px;
        --reasons-line-trim: 5px;
        --reasons-line-bottom: -1px;
        top: -1px;
        justify-content: flex-start;
        margin-top: -2px;
    }
    .c-cassette-reasons__item:nth-child(5) .c-cassette-reasons__ico {
        top: 1.5px;
    }
    .c-cassette-reasons__item:nth-child(-n+2) {
        justify-content: flex-start;
        grid-column: auto;
    }
}
.c-cassette-reasons__ico {
    position: relative;
    left: -1px;
    flex-shrink: 0;
    max-width: 100%;
    width: 57px;
    height: auto;
}
@media screen and (max-width: 767px) {
    .c-cassette-reasons__ico {
        top: 0.5px;
        left: 0;
        width: min(51.5px, 13.7333vw);
    }
}
.c-cassette-reasons__body {
    position: relative;
    left: var(--reasons-body-x);
    min-width: 0;
    line-height: 1;
}
.c-cassette-reasons__strong {
    position: relative;
    top: var(--reasons-strong-y);
    display: inline-block;
    max-width: 100%;
    font-weight: 700;
    font-size: calc(18 / var(--root-fz) * 1rem);
    line-height: 1.7;
}
.c-cassette-reasons__strong::before, .c-cassette-reasons__strong::after {
    position: absolute;
    bottom: var(--reasons-line-bottom);
    left: var(--reasons-line-left);
    max-width: 100%;
    width: calc(100% - var(--reasons-line-trim));
    height: var(--reasons-line-height);
    background-color: var(--color-reasons-line-1);
    content: "";
}
.c-cassette-reasons__strong::before {
    display: none;
}
@media screen and (max-width: 767px) {
    .c-cassette-reasons__strong {
        font-size: min(18 / var(--root-fz) * 1rem, 36 / var(--design-width) * 100vw);
        line-height: 1.75;
    }
}
.c-cassette-reasons__txt {
    position: relative;
    top: var(--reasons-txt-y);
    display: block;
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.85;
}
@media screen and (max-width: 767px) {
    .c-cassette-reasons__txt {
        font-size: min(15 / var(--root-fz) * 1rem, 30 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-cassette-summary
--------------------------------------------- */
.c-cassette-summary {
    box-sizing: border-box;
    padding: 26px 28.5px 21px;
    width: calc(100% + 2.5px);
    border: 2.5px solid var(--color-service-border-2);
    border-radius: 9px;
    background-color: var(--color-white-1);
    margin-inline: -1.25px;
}
@media screen and (max-width: 767px) {
    .c-cassette-summary {
        padding: 15px 20px 18px;
    }
}
.c-cassette-summary__list {
    list-style: none;
}
.c-cassette-summary__item {
    position: relative;
    padding-left: 18px;
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
.c-cassette-summary__item + .c-cassette-summary__item {
    margin-top: 9px;
}
.c-cassette-summary__item::before {
    position: absolute;
    top: 5px;
    left: 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background-color: var(--color-blue-1);
    content: "";
}
@media screen and (max-width: 767px) {
    .c-cassette-summary__item {
        font-size: calc(15 / var(--root-fz) * 1rem);
    }
}

/* ---------------------------------------------
*   c-cassette-article
--------------------------------------------- */
.c-cassette-article {
    box-sizing: border-box;
    padding: 20px 25px 31px;
    border-radius: 6px;
    background-color: var(--color-light-blue-1);
    box-shadow: 0 0 6px var(--color-black-opacity-15);
}
@media screen and (max-width: 767px) {
    .c-cassette-article {
        padding: 20px 12px 28px;
    }
}
.c-cassette-article__lead {
    position: relative;
    top: -1px;
    display: flex;
    align-items: center;
    color: var(--color-blue-1);
    font-weight: 700;
    font-size: calc(16 / var(--root-fz) * 1rem);
    gap: 14px;
}
@media screen and (max-width: 767px) {
    .c-cassette-article__lead {
        top: 0;
        align-items: flex-end;
        padding-left: 14px;
        line-height: 1.375;
        gap: 9px;
    }
}
.c-cassette-article__lead--bottom {
    top: 0;
    align-items: flex-end;
    line-height: 1.375;
    gap: 9px;
}
.c-cassette-article__ico {
    position: relative;
    left: -1px;
    max-width: 100%;
    width: 33px;
    height: auto;
}
@media screen and (max-width: 767px) {
    .c-cassette-article__ico {
        left: 0;
    }
}
.c-cassette-article__link {
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    margin-top: 21px;
    padding: 16px 60px 16px 22px;
    min-height: 110px;
    border-radius: 6px;
    background-color: var(--color-white-1);
    color: inherit;
    text-decoration: none;
    gap: 24px;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-cassette-article__link {
        transition: opacity var(--hover-duration);
    }
    .c-cassette-article__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-cassette-article__link {
        align-items: flex-start;
        margin-right: 5px;
        padding: 20px 20px 16px 15px;
        min-height: 155px;
        gap: 12px;
    }
}
.c-cassette-article__thumb {
    flex-shrink: 0;
    max-width: 100%;
    width: 114px;
    height: 76px;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-cassette-article__body {
    position: relative;
    top: -1px;
    min-width: 0;
}
@media screen and (max-width: 767px) {
    .c-cassette-article__body {
        top: 0;
        padding-right: 22px;
    }
}
.c-cassette-article__date {
    position: relative;
    top: 1px;
    left: 1px;
    font-weight: 500;
    font-size: calc(15 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .c-cassette-article__date {
        top: 5px;
        left: 2px;
    }
}
.c-cassette-article__txt {
    margin-top: 22px;
    font-weight: 700;
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-cassette-article__txt {
        margin-top: 12px;
        font-size: calc(13 / var(--root-fz) * 1rem);
        line-height: 1.6153846154;
    }
}
.c-cassette-article__arrow {
    position: absolute;
    top: calc(50% - 14px);
    right: 16px;
    max-width: 100%;
    width: 32px;
    height: auto;
}
@media screen and (max-width: 767px) {
    .c-cassette-article__arrow {
        top: calc(50% - 4px);
        right: 10px;
        width: 22px;
    }
}

/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form
--------------------------------------------- */
/* ---------------------------------------------
*   c-kv-ttl
--------------------------------------------- */
.c-kv-ttl {
    background: url(/img/faq/bg_ttl.png) 0 0 no-repeat;
    background-size: cover;
    background-position: center;
    margin-top: -1px;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl {
        background: none;
    }
}
.c-kv-ttl__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: 960px;
    padding-right: 30px;
    padding-left: 30px;
    padding-block: 34px;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl__inner {
        background: url(/img/common/sp/bg_kv_ttl.png) left bottom no-repeat;
        background-size: cover;
        padding-block: 15px 13px;
        padding-right: 15px;
        padding-left: 15px;
    }
}
.c-kv-ttl__lead {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.8947368421;
    letter-spacing: 0.05em;
}
.c-kv-ttl__lead span {
    letter-spacing: 0.01em;
}
.c-kv-ttl__ttl {
    font-size: 41px;
    line-height: 1.3170731707;
    letter-spacing: 0.02em;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl__ttl {
        font-size: 31px;
        line-height: 1.2258064516;
        letter-spacing: 0.01em;
    }
}
.c-kv-ttl__txt {
    font-size: 15px;
    line-height: 1.6666666667;
    margin-top: 17px;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl__txt {
        margin-top: 8px;
        line-height: 1.5333333333;
    }
}
.c-kv-ttl__txt a {
    font-weight: 700;
    text-decoration: underline;
}
.c-kv-ttl__txt a:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
.c-kv-ttl__img img {
    display: block;
    width: 100%;
    height: auto;
}
.c-kv-ttl--what-is {
    background-image: url("/img/what-is/bg_ttl.png");
}
@media screen and (max-width: 767px) {
    .c-kv-ttl--what-is {
        background-image: none;
    }
}
.c-kv-ttl--service {
    color: var(--color-base-1);
    font-family: var(--ff-noto);
    background-image: url("/img/service/bg_ttl.png");
}
@media screen and (max-width: 767px) {
    .c-kv-ttl--service {
        background-image: none;
    }
}
.c-kv-ttl--service .c-kv-ttl__inner {
    box-sizing: border-box;
    max-width: 1010px;
    min-height: 301px;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl--service .c-kv-ttl__inner {
        min-height: 0;
        padding-bottom: 30px;
    }
}
.c-kv-ttl--service .c-kv-ttl__txt {
    max-width: 485px;
    margin-top: 40px;
    font-weight: 500;
    line-height: 1.6;
}
@media screen and (max-width: 767px) {
    .c-kv-ttl--service .c-kv-ttl__txt {
        max-width: 100%;
        margin-top: 12px;
    }
}
.c-kv-ttl--service .c-kv-ttl__note {
    display: block;
    font-size: 13px;
    font-weight: 400;
}

/* ---------------------------------------------
*   c-list-note
--------------------------------------------- */
.c-list-note {
    display: flex;
    font-size: 12px;
    line-height: 1.5833333333;
    font-weight: 400;
    gap: 0 5px;
    margin-top: 0 !important;
}
.c-list-note ul {
    margin-top: 0 !important;
}
.c-list-note li {
    font-weight: 400;
    padding-left: 0 !important;
    margin-top: 0 !important;
}
.c-list-note li::before {
    content: none;
    display: none;
}
.c-list-note__ano {
    width: 32px;
    letter-spacing: -0.05em;
}
.c-list-note__txt {
    flex: 1;
}
.c-list-note--2 {
    gap: 0;
}
.c-list-note--2 .c-list-note__ano {
    width: auto;
    letter-spacing: 0.3em;
}
.c-list-note--3 .c-list-note__ano {
    width: auto;
    letter-spacing: 0.1em;
}

/* ---------------------------------------------
*   c-list-anchor
--------------------------------------------- */
.c-list-anchor {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}
@media screen and (max-width: 767px) {
    .c-list-anchor {
        flex-direction: column;
        align-items: flex-start;
        gap: 0px;
        padding: 0;
        list-style: none;
        background-color: var(--color-gray-6);
    }
}
.c-list-anchor__item {
    font-size: 13px;
    line-height: 1.6923076923;
    letter-spacing: -0.01em;
    text-decoration: none;
}
.c-list-anchor__item:not(:first-child) {
    position: relative;
    padding-left: 12px;
}
.c-list-anchor__item:not(:first-child)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 52%;
    width: 1px;
    height: 14px;
    background-color: var(--color-gray-5);
    transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
    .c-list-anchor__item:not(:first-child) {
        padding-left: 0;
    }
    .c-list-anchor__item:not(:first-child)::before {
        content: none;
    }
}
.c-list-anchor__item a {
    will-change: opacity;
    width: 100%;
    display: block;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-list-anchor__item a {
        transition: opacity var(--hover-duration);
    }
    .c-list-anchor__item a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-list-anchor__item:hover a {
    text-decoration: none;
    color: var(--color-blue-1);
}
@media screen and (max-width: 767px) {
    .c-list-anchor__item {
        border-top: 1px solid var(--color-gray-7);
        margin-inline: 15px;
        width: calc(100% - 30px);
        box-sizing: border-box;
        font-size: 15px;
    }
    .c-list-anchor__item a {
        padding: 10px 14px;
        box-sizing: border-box;
    }
    .c-list-anchor__item:last-child {
        border-bottom: 1px solid var(--color-gray-7);
        margin-inline: 15px;
        margin-bottom: 20px;
    }
    .c-list-anchor__item:first-child {
        margin-top: 18px;
    }
}

/* ---------------------------------------------
*   c-list-category
--------------------------------------------- */
.c-list-category {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(228px, 1fr));
    gap: 14px 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}
@media only screen and (max-width: 767px) {
    .c-list-category {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 14px;
        margin-top: 38px;
    }
}

/* ---------------------------------------------
*   c-list-doc
--------------------------------------------- */
.c-list-doc__item {
    position: relative;
    padding-left: 19px;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
}
.c-list-doc__item::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: var(--color-blue-1);
}
.c-list-doc__item + .c-list-doc__item {
    margin-top: 8px;
}
@media screen and (max-width: 767px) {
    .c-list-doc__item {
        font-size: 14px;
    }
    .c-list-doc__item + .c-list-doc__item {
        margin-top: 4px;
    }
}
.c-list-doc__ttl {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
}
.c-list-doc__txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}
.c-list-doc--detail .c-list-doc__item {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
}
.c-list-doc--detail .c-list-doc__item + .c-list-doc__item {
    margin-top: 12px;
}

/* ---------------------------------------------
*   c-section-1
--------------------------------------------- */
.c-section-1__container {
    max-width: 960px;
    margin-inline: auto;
}
.c-section-1__head {
    margin-top: 62px;
}
@media screen and (max-width: 767px) {
    .c-section-1__head {
        margin-top: 70px;
    }
}
.c-section-1__body {
    margin-top: 40px;
}

/* ---------------------------------------------
*   c-section-keyword-search
--------------------------------------------- */
.c-section-keyword-search {
    margin-top: 113px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search {
        margin-top: 50px;
        margin-inline: 15px;
    }
}
.c-section-keyword-search__container {
    max-width: 960px;
    margin-inline: auto;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search__container {
        padding-inline: 0;
    }
}
.c-section-keyword-search__head {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    background-image: linear-gradient(0deg, var(--color-transparent-1), var(--color-light-blue-4-opacity-80));
    padding: 11px 20px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search__head {
        padding: 13px 0px 0px;
    }
}
.c-section-keyword-search__ttl {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search__ttl {
        font-size: 16px;
    }
}
.c-section-keyword-search__ttl::before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 27px;
    margin-right: 12px;
    background-image: url("/img/column/ico_search.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    top: 7px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search__ttl::before {
        width: 20px;
        height: 20px;
        margin-right: 8px;
        top: 3px;
    }
}
.c-section-keyword-search__body {
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search__body {
        margin-top: 30px;
    }
}
.c-section-keyword-search__btn {
    margin-top: 70px;
    text-align: center;
}
.c-section-keyword-search ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, 182px);
    justify-content: center;
    gap: 20px;
    padding-inline: 20px;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search ul {
        display: grid;
        grid-template-columns: repeat(auto-fit, calc(33.3333333333% - 17px));
        justify-content: center;
        gap: 12px 20px;
        padding-inline: 0;
    }
}
.c-section-keyword-search li {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: var(--color-blue-1);
    padding: 7px 25px 8px;
    border-radius: 9999px;
    background-color: var(--color-white-1);
    box-shadow: 0 0 10px 0 var(--color-black-opacity-15);
    width: 132px;
    text-align: center;
    will-change: opacity;
    cursor: pointer;
}
.c-section-keyword-search li a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    width: 100%;
    min-height: 100%;
    text-decoration: none;
}
.c-section-keyword-search li:hover {
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-section-keyword-search li:hover {
        transition: opacity var(--hover-duration);
    }
    .c-section-keyword-search li:hover:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-section-keyword-search li:hover a {
    color: inherit;
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .c-section-keyword-search li {
        width: 100%;
        font-size: 12px;
        padding: 6px 0px 7px;
    }
}
@media screen and (min-width: 768px) {
    .c-section-keyword-search--populer ul:has(> li:nth-child(2):last-child) {
        grid-template-columns: repeat(2, 182px);
    }
}
@media screen and (min-width: 768px) {
    .c-section-keyword-search--populer ul:has(> li:nth-child(3):last-child) {
        grid-template-columns: repeat(3, 182px);
    }
}

/* ---------------------------------------------
*   c-section-recommend-column
--------------------------------------------- */
.c-section-recommend-column__container {
    max-width: 960px;
    margin-inline: auto;
}
.c-section-recommend-column__ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 14px 15px 20px;
    margin-bottom: 30px;
    border-top: 1px solid var(--color-blue-1);
    background-image: linear-gradient(0deg, var(--color-transparent-1), var(--color-light-blue-4-opacity-80));
    color: var(--color-blue-1);
    font-size: 16px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .c-section-recommend-column__ttl {
        padding: 12px 15px 17px;
    }
}
.p-top-info__recommend .c-section-recommend-column__cards {
    margin-top: 14px;
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend .c-section-recommend-column__cards {
        margin-top: 22px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-recommend-column__cards {
        padding-inline: 22px;
        margin-inline: auto;
    }
}
.c-section-recommend-column__more {
    text-align: center;
}
.p-top-info__recommend .c-section-recommend-column__more {
    margin-top: 44px;
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend .c-section-recommend-column__more {
        margin-inline: 15px;
    }
}

/* ---------------------------------------------
*   c-section-about
--------------------------------------------- */
.c-section-about__ttl {
    margin-bottom: 34px;
    padding-left: 2px;
    font-size: 23px;
    font-weight: 700;
    line-height: 40px;
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .c-section-about__ttl {
        margin-bottom: 23px;
        font-size: 18px;
        line-height: 32px;
    }
}
.c-section-about__name {
    color: var(--color-blue-1);
    font-size: 24px;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 767px) {
    .c-section-about__name {
        font-size: 22px;
    }
}
.c-section-about__table {
    width: 100%;
}

/* ---------------------------------------------
*   c-slider-1
--------------------------------------------- */
.c-slider-1__wrapper {
    position: relative;
}
.c-slider-1 .splide__list {
    align-items: stretch;
    height: auto;
}
.c-slider-1 .splide__slide {
    display: flex;
    height: auto;
    opacity: 1;
}
.c-slider-1 .splide__slide.is-dimmed {
    pointer-events: none;
}
.c-slider-1 .splide__slide.is-dimmed .c-card-column__container::after {
    opacity: 0.65;
}
.c-slider-1 .splide__arrow {
    will-change: opacity;
    --arrow-pos-x: min(calc(80 / 1250 * 100%), 100px);
    --arrow-layout-max: 1250px;
    position: absolute;
    top: 50%;
    z-index: 1;
    translate: 0 -50%;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border: 0;
    box-sizing: border-box;
    touch-action: manipulation;
    cursor: pointer;
    overflow: hidden;
    background-color: var(--color-transparent-1);
    background-image: url("/img/column/ico_arrow-circle.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-slider-1 .splide__arrow {
        transition: opacity var(--hover-duration);
    }
    .c-slider-1 .splide__arrow:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-slider-1 .splide__arrow--prev {
    left: var(--arrow-pos-x);
    rotate: 180deg;
}
.c-slider-1 .splide__arrow--next {
    right: var(--arrow-pos-x);
}
@media screen and (min-width: 1251px) {
    .c-slider-1 .splide__arrow--prev {
        left: calc(50% - var(--arrow-layout-max) / 2 + var(--arrow-pos-x));
    }
    .c-slider-1 .splide__arrow--next {
        right: calc(50% - var(--arrow-layout-max) / 2 + var(--arrow-pos-x));
    }
}
@media screen and (max-width: 767px) {
    .c-slider-1 .splide__arrow {
        --arrow-pos-x: 20px;
        width: 25px;
        height: 25px;
    }
}
.c-slider-1 .c-card-column {
    display: flex;
    flex-direction: column;
    width: 100%;
    flex: 1;
    transform: translate3d(0, 0, 0);
}
.c-slider-1 .c-card-column__container {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1;
    width: 100%;
    height: auto;
}
.c-slider-1 .c-card-column__container::after {
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background-color: var(--color-white-1);
    content: "";
    opacity: 0;
    transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1);
    pointer-events: none;
}
.c-slider-1 .c-card-column__txt-wrap {
    flex: 1;
}

/* ---------------------------------------------
*   c-slider-2
--------------------------------------------- */
.c-slider-2 {
    --slider2-speed: 1s;
    --slider2-easing: cubic-bezier(0.25, 1, 0.5, 1);
    --slider2-side-shift-y: 100px;
    --slider2-side-step: -10px;
}
.c-slider-2__wrapper {
    position: relative;
}
.c-slider-2 .splide__track {
    overflow: clip;
    touch-action: pan-y;
    padding-top: 2px;
    padding-bottom: calc(var(--slider2-side-shift-y) + 16px);
    margin-top: -12px;
    margin-bottom: calc((var(--slider2-side-shift-y) + 16px) * -1);
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__track {
        padding-top: 5px;
    }
}
.c-slider-2 .splide__list,
.c-slider-2 .splide__slide {
    backface-visibility: visible;
}
.c-slider-2 .splide__slide {
    z-index: 1;
    width: 420px;
}
.c-slider-2 .splide__slide.is-active:not(.splide__slide--clone) {
    width: 600px;
}
.c-slider-2 .splide__slide .c-card-column {
    width: 100%;
    transform-origin: center center;
    transform: perspective(1600px) rotateY(0deg) translateX(0) translateY(0);
    scale: 1;
    transition: transform var(--slider2-speed) var(--slider2-easing), scale var(--slider2-speed) var(--slider2-easing);
    will-change: transform, scale;
}
.c-slider-2 .splide__slide .c-card-column__container {
    position: relative;
    cursor: pointer;
}
.c-slider-2 .splide__slide .c-card-column__container::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background-color: var(--color-white-opacity-40);
    pointer-events: none;
    opacity: 0;
    transition: opacity var(--slider2-speed) var(--slider2-easing);
}
.c-slider-2 .splide__slide.is-side-left .c-card-column {
    transform: perspective(600px) rotateY(11deg) scaleY(0.8) translateX(calc(var(--slider2-slot, 0) * var(--slider2-side-step))) translateY(var(--slider2-side-shift-y));
    transform-style: preserve-3d;
}
.c-slider-2 .splide__slide.is-side-right .c-card-column {
    transform: perspective(600px) rotateY(-11deg) scaleY(0.8) translateX(calc(var(--slider2-slot, 0) * var(--slider2-side-step) * -1)) translateY(var(--slider2-side-shift-y));
    transform-style: preserve-3d;
}
.c-slider-2 .splide__slide.is-side-left .c-card-column__container::after, .c-slider-2 .splide__slide.is-side-right .c-card-column__container::after {
    opacity: 1;
}
.c-slider-2 .splide__slide.is-side-left .c-card-column__txt-wrap, .c-slider-2 .splide__slide.is-side-right .c-card-column__txt-wrap {
    padding: 14px 14px 12.6px;
}
.c-slider-2 .splide__slide.is-side-left .c-card-column__date,
.c-slider-2 .splide__slide.is-side-left .c-card-column__tag, .c-slider-2 .splide__slide.is-side-right .c-card-column__date,
.c-slider-2 .splide__slide.is-side-right .c-card-column__tag {
    font-size: 8.4px;
}
.c-slider-2 .splide__slide.is-side-left .c-card-column__contents, .c-slider-2 .splide__slide.is-side-right .c-card-column__contents {
    font-size: 11.2px;
}
.c-slider-2 .splide__slide.is-near {
    z-index: 2;
}
.c-slider-2 .splide__slide:not(.is-side-left):not(.is-side-right) {
    z-index: 3;
}
.c-slider-2 .splide__arrows {
    display: none;
}
.c-slider-2 .splide__pagination {
    position: relative;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 18px;
    transform: translateZ(0);
    backface-visibility: hidden;
}
.c-slider-2 .splide__pagination li {
    margin: 0;
    display: flex;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-slider-2 .splide__pagination li:not(:has(.is-active)) {
        transition: opacity var(--hover-duration);
    }
    .c-slider-2 .splide__pagination li:not(:has(.is-active)):hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-slider-2 .splide__pagination__page {
    width: 14px;
    height: 14px;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    border: 2px solid var(--color-blue-1);
    background-color: var(--color-transparent-1);
    opacity: 1;
    -webkit-tap-highlight-color: var(--color-transparent-1);
    transition: background-color 0.25s ease, border-color 0.25s ease;
    will-change: background-color, border-color, opacity;
}
.c-slider-2 .splide__pagination__page.is-active {
    background-color: var(--color-blue-1);
    border-color: var(--color-blue-1);
    cursor: default;
}
@media screen and (max-width: 767px) {
    .c-slider-2 {
        --slider2-side-shift-y: 50px;
        padding-top: 10px;
        padding-bottom: 0px;
    }
    .c-slider-2 .splide__track {
        padding-bottom: calc(var(--slider2-side-shift-y) + 12px);
        margin-bottom: calc((var(--slider2-side-shift-y) + 12px) * -1);
    }
    .c-slider-2 .splide__slide {
        width: 169px;
    }
    .c-slider-2 .splide__slide.is-active:not(.splide__slide--clone) {
        width: 241px;
    }
    .c-slider-2 .splide__slide.is-side-left .c-card-column {
        transform: perspective(300px) rotateY(18deg) translateX(28px) scaleY(0.85) translateY(var(--slider2-side-shift-y));
    }
    .c-slider-2 .splide__slide.is-side-right .c-card-column {
        transform: perspective(300px) rotateY(-18deg) translateX(-28px) scaleY(0.85) translateY(var(--slider2-side-shift-y));
    }
    .c-slider-2 .splide__slide.is-side-left:not(.is-near) .c-card-column {
        margin-right: 0;
        transform: perspective(300px) rotateY(18deg) translateX(60px) scaleY(0.85) translateY(var(--slider2-side-shift-y));
    }
    .c-slider-2 .splide__slide.is-side-right:not(.is-near) .c-card-column {
        margin-left: 0;
        transform: perspective(300px) rotateY(-18deg) translateX(-60px) scaleY(0.85) translateY(var(--slider2-side-shift-y));
    }
    .c-slider-2 .splide__slide.is-side-left .c-card-column__txt-wrap, .c-slider-2 .splide__slide.is-side-right .c-card-column__txt-wrap {
        padding: 9.8174273859px 8.4149377593px 9.8174273859px;
    }
    .c-slider-2 .splide__slide.is-side-left .c-card-column__date, .c-slider-2 .splide__slide.is-side-right .c-card-column__date {
        font-size: 7.0124481328px;
    }
    .c-slider-2 .splide__slide.is-side-left .c-card-column__tag, .c-slider-2 .splide__slide.is-side-right .c-card-column__tag {
        font-size: 5.6099585062px;
    }
    .c-slider-2 .splide__slide.is-side-left .c-card-column__contents, .c-slider-2 .splide__slide.is-side-right .c-card-column__contents {
        font-size: 8.4149377593px;
    }
    .c-slider-2 .splide__pagination {
        margin-top: 7px;
        gap: 10px;
    }
    .c-slider-2 .splide__pagination__page {
        width: 10px;
        height: 10px;
        border: 1.5px solid var(--color-blue-1);
    }
}

/* ---------------------------------------------
*   c-slider-voice
--------------------------------------------- */
.c-slider-voice {
    margin-top: 28px;
    color: var(--color-base-1);
    font-size: 15px;
    font-family: var(--ff-noto);
    line-height: 1.8;
}
@media screen and (max-width: 767px) {
    .c-slider-voice {
        margin-top: 24px;
    }
}
.c-slider-voice__card {
    overflow: hidden;
    margin: 10px 5px;
    height: calc(100% - 20px);
    border-radius: 8px;
    background-color: var(--color-white-1);
    box-shadow: 0 0 10px var(--color-black-opacity-15);
}
@media screen and (max-width: 767px) {
    .c-slider-voice__card {
        margin-inline: 0;
    }
}
.c-slider-voice__img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: 141px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center 25%;
       object-position: center 25%;
}
@media screen and (max-width: 767px) {
    .c-slider-voice__img {
        height: auto;
        aspect-ratio: 329/126;
    }
}
.c-slider-voice__body {
    padding: 18px 18px 25px;
}
@media screen and (max-width: 767px) {
    .c-slider-voice__body {
        padding: 16px 37px 22px;
    }
}
.c-slider-voice__ttl {
    color: var(--color-blue-1);
    text-align: center;
    font-weight: 700;
    font-size: 15px;
}
.c-slider-voice__txt {
    margin-top: 11px;
    font-size: 14.2px;
    line-height: 1.6;
}
.c-slider-voice .splide__list {
    align-items: stretch;
}
.c-slider-voice .splide__slide {
    height: auto;
}
.c-slider-voice .splide__slide .c-slider-voice__card {
    position: relative;
}
.c-slider-voice .splide__slide .c-slider-voice__card::after {
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background-color: var(--color-white-opacity-40);
    background-image: linear-gradient(var(--color-white-opacity-40), var(--color-white-opacity-40));
    content: "";
    opacity: 0;
    transition: opacity 0.6s cubic-bezier(0.25, 1, 0.5, 1);
    pointer-events: none;
}
.c-slider-voice .splide__slide.is-dimmed .c-slider-voice__card::after {
    opacity: 1;
}
.c-slider-voice .splide__arrow {
    position: absolute;
    top: calc(50% - 10px);
    z-index: 1;
    padding: 0;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 50%;
    background: url("/img/column/ico_arrow-circle.svg") center/contain no-repeat;
    cursor: pointer;
    translate: 0 -50%;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-slider-voice .splide__arrow {
        transition: opacity var(--hover-duration);
    }
    .c-slider-voice .splide__arrow:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-slider-voice .splide__arrow svg {
    display: none;
}
.c-slider-voice .splide__arrow--prev {
    left: max(20px, 50% - 450px);
    rotate: 180deg;
}
@media screen and (max-width: 767px) {
    .c-slider-voice .splide__arrow--prev {
        left: 5px;
    }
}
.c-slider-voice .splide__arrow--next {
    right: max(20px, 50% - 450px);
}
@media screen and (max-width: 767px) {
    .c-slider-voice .splide__arrow--next {
        right: 5px;
    }
}
@media screen and (max-width: 767px) {
    .c-slider-voice .splide__arrow {
        top: 198px;
        width: 34px;
        height: 34px;
    }
}

/* ---------------------------------------------
*   c-table-1
--------------------------------------------- */
.c-table-1 {
    color: var(--color-base-1);
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 15px;
    line-height: 26px;
}
@media screen and (max-width: 767px) {
    .c-table-1 {
        font-size: 15px;
        line-height: 24px;
    }
}
.c-table-1__label, .c-table-1__value {
    box-sizing: border-box;
    padding: 15px 29px;
    border: 1px solid var(--color-table-border-1);
    text-align: left;
    vertical-align: middle;
    font-weight: 400;
}
@media screen and (max-width: 767px) {
    .c-table-1__label, .c-table-1__value {
        padding: 10px 13px;
        overflow-wrap: anywhere;
    }
}
.c-table-1__label {
    width: 25.6%;
    background-color: var(--color-table-head-bg-1);
}
.c-table-1__value a {
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .c-table-1__value a {
        transition: opacity var(--hover-duration);
    }
    .c-table-1__value a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-table-1__value a:hover {
    color: var(--color-base-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .c-table-1__value {
        padding-left: 14px;
        padding-right: 12px;
    }
}
@media screen and (max-width: 767px) {
    .c-table-1__sp-line--bracket {
        text-indent: -0.5em;
    }
}
@media screen and (max-width: 767px) {
    .c-table-1__sp-line {
        display: block;
    }
}
.c-table-1__ttl {
    font-weight: 700;
}
.c-table-1__list {
    margin: 0;
    padding: 0;
    list-style: none;
    margin-left: -0.3em;
}
@media screen and (max-width: 767px) {
    .c-table-1__list {
        line-height: 24.93px;
        letter-spacing: -0.0372em;
    }
}
.c-table-1__item {
    position: relative;
    padding-left: 1em;
}
.c-table-1__item::before {
    position: absolute;
    left: 0;
    content: "・";
}
@media screen and (max-width: 767px) {
    .c-table-1__line {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .c-table-1__line--wide {
        margin-right: -4.5px;
        margin-left: -7.5px;
    }
}
.c-table-1__url {
    color: inherit;
    word-break: normal;
    overflow-wrap: break-word;
}
.c-table-1__url:hover {
    text-decoration: underline;
}

/* ---------------------------------------------
*   c-ttl-1
--------------------------------------------- */
.c-ttl-1 {
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5652173913;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 767px) {
    .c-ttl-1 {
        font-size: 22px;
    }
}
.c-ttl-1::after {
    content: "";
    display: block;
    width: 50px;
    height: 1.5px;
    margin: 15px auto 0;
    background-color: var(--color-blue-1);
}
.c-ttl-1__small {
    font-size: 18px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1__small {
        font-size: 14px;
    }
}
.c-ttl-1__small--inline {
    font-size: 15px;
    font-weight: 400;
    letter-spacing: -0.05em;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
    .c-ttl-1__small--inline {
        font-size: 13px;
    }
}
.c-ttl-1--compact {
    letter-spacing: -0.05em;
}
.c-ttl-1--what-is .c-ttl-1__row {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    line-height: 1;
}
.c-ttl-1--what-is .c-ttl-1__row .c-ttl-1__small--inline {
    position: static;
    top: auto;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--what-is .c-ttl-1__row {
        min-height: 30px;
    }
}
.c-ttl-1--what-is .c-ttl-1__small {
    position: relative;
    top: -6px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--what-is {
        font-size: 24px;
        line-height: 1.5;
        letter-spacing: 0.03em;
    }
    .c-ttl-1--what-is .c-ttl-1__small {
        top: -6px;
        font-size: 19px;
    }
    .c-ttl-1--what-is.c-ttl-1--document {
        font-size: 20px;
        letter-spacing: 0;
    }
    .c-ttl-1--what-is.c-ttl-1--document::after {
        width: 39px;
        margin-top: 10px;
    }
    .c-ttl-1--what-is.c-ttl-1--document .c-ttl-1__small--inline {
        top: -2px;
        font-size: 15px;
    }
    .c-ttl-1--what-is.c-ttl-1--compact {
        font-size: 18.47px;
        letter-spacing: -0.05em;
    }
    .c-ttl-1--what-is.c-ttl-1--compact::after {
        width: 38px;
        margin-top: 12px;
    }
    .c-ttl-1--what-is.c-ttl-1--compact .c-ttl-1__small--inline {
        top: -2px;
        font-size: 13.09px;
    }
    .c-ttl-1--what-is.c-ttl-1--single::after {
        margin-top: 24px;
    }
    .c-ttl-1--what-is.c-ttl-1--subline::after {
        margin-top: 18px;
    }
    .c-ttl-1--what-is::after {
        margin-top: 20px;
    }
}
.c-ttl-1__lead {
    font-size: 20px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1__lead {
        position: relative;
        top: -3px;
        font-size: 24px;
    }
}
.c-ttl-1--service {
    font-size: 34px;
    line-height: 1.2666666667;
    letter-spacing: 0.03em;
}
.c-ttl-1--service::after {
    margin-top: 25px;
}
.c-ttl-1--service .c-ttl-1__lead {
    font-size: 25px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--service {
        font-size: 30px;
        line-height: 1.2;
        letter-spacing: 0.02em;
    }
    .c-ttl-1--service::after {
        margin-top: 27px;
    }
}
.c-ttl-1--service.c-ttl-1--intro {
    line-height: 1.3333333333;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--service.c-ttl-1--intro {
        line-height: 1.2666666667;
        letter-spacing: 0;
    }
    .c-ttl-1--service.c-ttl-1--intro::after {
        margin-top: 25px;
    }
}
.c-ttl-1--service.c-ttl-1--subline {
    line-height: 1.3333333333;
}
.c-ttl-1--service.c-ttl-1--subline::after {
    margin-top: 23px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--service.c-ttl-1--subline {
        line-height: 1.1666666667;
        letter-spacing: 0.03em;
    }
    .c-ttl-1--service.c-ttl-1--subline::after {
        margin-top: 29px;
    }
}
.c-ttl-1--service.c-ttl-1--card {
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0;
}
.c-ttl-1--service.c-ttl-1--card::after {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--service.c-ttl-1--card {
        font-size: 20px;
        line-height: 1.5;
        letter-spacing: 0;
    }
    .c-ttl-1--service.c-ttl-1--card::after {
        width: 39px;
        margin-top: 10px;
    }
}
.c-ttl-1__suffix {
    font-size: 24px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1__suffix {
        font-size: inherit;
    }
}
.c-ttl-1--form-a {
    font-size: 23px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--form-a {
        line-height: 1.4347826087;
        letter-spacing: 0.03em;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-1--form-a::after {
        margin-top: 25px;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-1--form-a .c-ttl-1__particle {
        font-size: 17px;
        letter-spacing: 0.02em;
    }
}
.c-ttl-1--form-a .c-ttl-1__lead {
    font-size: 20px;
}
@media screen and (max-width: 767px) {
    .c-ttl-1--form-a .c-ttl-1__lead {
        top: 1px;
        font-size: 17px;
        letter-spacing: 0.02em;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-1--fluid {
        font-size: min(23px, 46 / var(--design-width) * 100vw);
        line-height: 33px;
    }
}

/* ---------------------------------------------
*   c-ttl-2
--------------------------------------------- */
.c-ttl-2 {
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.c-ttl-2::before {
    content: "";
    position: relative;
    display: inline-block;
    top: 3px;
    width: 22px;
    height: 22px;
    margin-right: 14px;
    vertical-align: top;
    background-image: url("/img/common/ico_check.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
@media screen and (max-width: 767px) {
    .c-ttl-2::before {
        top: 1px;
        margin-right: 6px;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-2 {
        font-size: 17px;
        line-height: 1.6;
    }
}
.c-ttl-2--fz20 {
    font-size: 20px;
}
.c-ttl-2--fz20::before {
    top: 5px;
    margin-right: 5px;
}
@media screen and (max-width: 767px) {
    .c-ttl-2--fz20 {
        font-size: 19px;
    }
}

/* ---------------------------------------------
*   c-ttl-3
--------------------------------------------- */
.c-ttl-3 {
    font-size: 19px;
    font-weight: 700;
}

/* ---------------------------------------------
*   c-ttl-4
--------------------------------------------- */
.c-ttl-4 {
    font-size: 34px;
    font-weight: 700;
    line-height: 1.5882352941;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-ttl-4 {
        font-size: 31px;
        line-height: 1.2258064516;
    }
}

/* ---------------------------------------------
*   c-ttl-column
--------------------------------------------- */
.c-ttl-column {
    background: url(/img/column/bg_ttl_column.png) 0 0 no-repeat;
    background-size: cover;
    padding: 10px 0;
}
@media screen and (max-width: 767px) {
    .c-ttl-column {
        padding-block: 7px 10px;
    }
}
.c-ttl-column__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: 960px;
    padding-right: 30px;
    padding-left: 30px;
}
@media screen and (max-width: 767px) {
    .c-ttl-column__inner {
        padding-right: 15px;
        padding-left: 15px;
    }
}
.c-ttl-column__ttl {
    font-size: 36px;
    line-height: 1.5;
    letter-spacing: 0.001em;
}
@media screen and (max-width: 767px) {
    .c-ttl-column__ttl {
        font-size: 24px;
        line-height: 1.45;
    }
}
.c-ttl-column__date {
    margin-top: 10px;
    font-size: 15px;
    color: var(--color-base-1);
    line-height: 1.6;
    letter-spacing: 0.001em;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0 10px;
}
@media screen and (max-width: 767px) {
    .c-ttl-column__date {
        margin-top: 5px;
        letter-spacing: 0.03em;
    }
}

/* ---------------------------------------------
*   c-txt-base
--------------------------------------------- */
.c-txt-base {
    font-size: 15px;
    line-height: 1.6428571429;
}
.c-txt-base sup {
    font-size: 10px;
    top: -0.3em;
}
.c-txt-base strong {
    font-weight: 700;
}

.c-txt-note {
    font-size: 12px;
    line-height: 1.5833333333;
    font-weight: 400;
}
.c-txt-note--center {
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-txt-note--center {
        margin-inline: 15px;
    }
}

/* ---------------------------------------------
*   p-top
--------------------------------------------- */
.p-top {
    color: var(--color-base-1);
    font-family: var(--ff-noto);
    font-size: 15px;
    line-height: 1.8;
}

/* ---------------------------------------------
*   p-top-kv
--------------------------------------------- */
.p-top-kv__main {
    min-height: clamp(320px, 30.96vw, 500px);
    background-image: url("/img/top/bg_kv.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .p-top-kv__main {
        background-position: calc(50% + 50px) center;
    }
}
@media screen and (max-width: 767px) {
    .p-top-kv__main {
        min-height: 0;
        background-image: none;
    }
}
.p-top-kv__inner {
    max-width: 960px;
    margin-inline: auto;
    padding: 49px 30px 55px;
}
@media screen and (max-width: 767px) {
    .p-top-kv__inner {
        padding: 21px 15px 4.5333333333vw;
        background-image: url("/img/top/sp/bg_kv.png");
        background-repeat: no-repeat;
        background-size: cover;
    }
}
.p-top-kv__features {
    display: flex;
    gap: 18px;
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
    .p-top-kv__features {
        gap: 9px;
        font-size: 17px;
        line-height: 24px;
    }
}
.p-top-kv__feature {
    display: flex;
    align-items: center;
    gap: 7px;
}
.p-top-kv__feature img {
    width: 23px;
    height: 23px;
}
@media screen and (max-width: 767px) {
    .p-top-kv__feature img {
        width: 18px;
        height: 18px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-kv__feature {
        gap: 6px;
    }
}
.p-top-kv__ttl {
    margin-top: 13px;
    font-size: 41px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
    .p-top-kv__ttl {
        margin-top: 6.5px;
        font-size: 31px;
        line-height: 1.3122580645;
        letter-spacing: 0.01em;
    }
}
.p-top-kv__txt {
    max-width: min(470px, 46vw);
    margin-top: 13px;
    font-size: 15px;
    line-height: 1.6666666667;
}
@media screen and (max-width: 767px) {
    .p-top-kv__txt {
        max-width: none;
        margin-top: 8px;
        margin-right: -1px;
        margin-left: 1px;
        font-weight: 500;
        line-height: 1.6666666667;
    }
}
.p-top-kv__img img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}
@media screen and (max-width: 767px) {
    .p-top-kv__img {
        margin-top: -3.7333333333vw;
    }
}
.p-top-kv__contact {
    padding: 30px 30px;
    background-color: var(--color-light-blue-3);
    background-image: url("/img/top/bg_kv_2.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}
@media screen and (max-width: 767px) {
    .p-top-kv__contact {
        padding: 21px 8px 23px 15px;
        background-image: url("/img/top/sp/bg_kv_2.png");
    }
}
.p-top-kv__contact-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    max-width: 960px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-top-kv__contact-inner {
        flex-direction: column;
        gap: 19px;
    }
}
.p-top-kv__assessment {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: min(490px, 39.2vw);
    min-height: min(76px, 6.08vw);
    padding: min(12px, 0.96vw) min(53px, 4.24vw) min(12px, 0.96vw) min(83px, 6.64vw);
    border: 2px solid var(--color-white-1);
    border-radius: 9999px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    font-size: min(21px, 1.68vw);
    font-weight: 500;
    letter-spacing: 0.06em;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-top-kv__assessment {
        transition: opacity var(--hover-duration);
    }
    .p-top-kv__assessment:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-top-kv__assessment:hover {
    color: var(--color-white-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .p-top-kv__assessment {
        width: 100%;
        max-width: 352px;
        min-height: 65px;
        padding: 10px 41px 10px 70px;
        font-size: 16px;
        letter-spacing: 0;
    }
}
.p-top-kv__badge {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: max(-6px, -0.48vw);
    display: block;
    box-sizing: border-box;
    width: min(82px, 6.56vw);
    height: min(82px, 6.56vw);
    padding-top: min(17px, 1.36vw);
    border: 2px solid var(--color-white-1);
    border-radius: 9999px;
    background-color: var(--color-yellow-1);
    color: var(--color-blue-1);
    font-size: min(15px, 1.2vw);
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    font-weight: 700;
}
.p-top-kv__badge b {
    font-size: min(23px, 1.84vw);
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-left: min(2px, 0.16vw);
}
@media screen and (max-width: 767px) {
    .p-top-kv__badge b {
        font-size: 23px;
        line-height: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-top-kv__badge {
        left: -2px;
        width: 75px;
        height: 75px;
        padding-top: 14px;
        font-size: 12px;
    }
}
.p-top-kv__badge-bottom {
    display: inline-block;
    margin-top: min(5px, 0.4vw);
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-top-kv__badge-bottom {
        margin-top: 5px;
    }
}
.p-top-kv__assessment-txt {
    font-size: min(26px, 2.2vw);
}
.p-top-kv__assessment-txt span {
    font-weight: 700;
    font-size: min(21px, 1.76vw);
    margin-right: min(2px, 0.16vw);
}
@media screen and (max-width: 767px) {
    .p-top-kv__assessment-txt {
        font-size: 19px;
        margin-right: 0px;
    }
    .p-top-kv__assessment-txt span {
        font-size: 19px;
    }
}
.p-top-kv__assessment-arrow {
    position: absolute;
    right: min(20px, 1.6vw);
    box-sizing: content-box;
    padding: min(11px, 0.88vw);
    border-radius: 50%;
    background-color: var(--color-white-1);
    width: min(10px, 0.8vw);
    height: min(10px, 0.8vw);
}
@media screen and (max-width: 767px) {
    .p-top-kv__assessment-arrow {
        right: 12px;
        padding: 9px;
        width: 9px;
        height: 9px;
    }
}
.p-top-kv__telephone {
    position: relative;
    order: -1;
    box-sizing: border-box;
    width: min(367px, 29.36vw);
    min-height: min(76px, 6.08vw);
    padding: min(10px, 0.8vw) min(20px, 1.6vw) min(10px, 0.8vw) min(73px, 5.84vw);
    border: 2px solid var(--color-white-1);
    border-radius: 9999px;
    background-color: var(--color-base-1);
    color: var(--color-white-1);
    text-align: center;
    text-decoration: none;
}
.p-top-kv__telephone:-moz-any-link {
    will-change: opacity;
}
.p-top-kv__telephone:any-link {
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-top-kv__telephone:-moz-any-link {
        -moz-transition: opacity var(--hover-duration);
        transition: opacity var(--hover-duration);
    }
    .p-top-kv__telephone:any-link {
        transition: opacity var(--hover-duration);
    }
    .p-top-kv__telephone:-moz-any-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
    .p-top-kv__telephone:any-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-top-kv__telephone:-moz-any-link:hover {
    color: var(--color-white-1);
    text-decoration: none;
}
.p-top-kv__telephone:any-link:hover {
    color: var(--color-white-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone {
        order: 0;
        width: 100%;
        max-width: 352px;
        min-height: 60px;
        padding: 6px 48px 6px 55px;
    }
}
.p-top-kv__telephone-ico-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: max(-3px, -0.24vw);
    box-sizing: content-box;
    width: min(38px, 3.04vw);
    height: min(38px, 3.04vw);
    padding: min(19px, 1.52vw);
    overflow: hidden;
    border: 2px solid var(--color-base-1);
    border-radius: 50%;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone-ico-wrap {
        left: 34px;
        width: 31px;
        height: 31px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background-color: var(--color-transparent-1);
    }
}
.p-top-kv__telephone-ico {
    display: block;
    width: min(38px, 3.04vw);
    height: min(38px, 3.04vw);
    -o-object-fit: contain;
       object-fit: contain;
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone-ico {
        width: 31px;
        height: 31px;
        filter: brightness(0) invert(1);
    }
}
.p-top-kv__telephone-arrow {
    display: none;
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone-arrow {
        display: block;
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translateY(-50%);
        box-sizing: content-box;
        padding: 9px;
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background-color: var(--color-white-1);
    }
}
.p-top-kv__telephone-txt {
    font-weight: 500;
    font-size: min(16px, 1.28vw);
    line-height: 1.4;
    letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone-txt {
        font-size: 15px;
    }
}
.p-top-kv__telephone-num {
    display: block;
    font-size: min(26px, 1.84vw);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
    .p-top-kv__telephone-num {
        font-size: 21px;
        font-weight: inherit;
        line-height: 1.4;
    }
}

/* ---------------------------------------------
*   p-top-intro
--------------------------------------------- */
.p-top-intro {
    padding: 72px 30px 78px;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .p-top-intro {
        padding: 48px 15px 50px;
    }
}
.p-top-intro__container {
    max-width: 790px;
    margin-inline: auto;
}
.p-top-intro__lead {
    margin-top: 23px;
    text-align: center;
    font-size: 14px;
    line-height: 1.4285714286;
}
@media screen and (max-width: 767px) {
    .p-top-intro__lead {
        margin-top: 24px;
        text-align: left;
        max-width: 100%;
        margin-inline: 10px;
    }
}
.p-top-intro__reasons {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 46px;
}
@media screen and (max-width: 767px) {
    .p-top-intro__reasons {
        grid-template-columns: 1fr;
        gap: 48px;
        margin: 28px auto 0;
    }
}
.p-top-intro__reason {
    position: relative;
    padding-inline: 20px;
}
.p-top-intro__reason:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 0;
    right: calc((220px - 100%) / 4);
    bottom: 20px;
    transform: translateX(50%);
    width: 1.5px;
    background-color: var(--color-light-blue-5);
}
@media screen and (max-width: 767px) {
    .p-top-intro__reason:not(:last-child)::after {
        display: none;
    }
}
.p-top-intro__reason:first-child::after {
    right: calc((100% - 220px) / 4);
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:first-child {
        padding-left: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__reason:first-child .p-top-intro__name {
        font-size: 25px;
        letter-spacing: 0.05em;
    }
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:first-child .p-top-intro__txt {
        margin-left: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__reason:first-child .p-top-intro__txt {
        margin-top: 23px;
    }
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:last-child {
        padding-right: 0;
    }
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:last-child .p-top-intro__ttl {
        width: 220px;
        margin-left: auto;
        margin-right: 0;
    }
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:last-child .p-top-intro__ico {
        margin-right: 80px;
    }
}
@media screen and (min-width: 768px) {
    .p-top-intro__reason:last-child .p-top-intro__txt {
        margin-right: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__reason:last-child .p-top-intro__txt {
        margin-top: 25px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .p-top-intro__reason {
        padding-inline: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__reason {
        padding-inline: 45px 30px;
        border: 0;
    }
}
.p-top-intro__ico {
    position: relative;
    display: block;
    width: 76px;
    height: 58px;
    margin-inline: auto;
    -o-object-fit: contain;
       object-fit: contain;
    top: -10px;
}
@media screen and (min-width: 768px) {
    .p-top-intro__ico {
        -o-object-position: center top;
           object-position: center top;
    }
}
.p-top-intro__ico--3 {
    width: 60px;
}
@media screen and (max-width: 767px) {
    .p-top-intro__ico {
        width: 76px;
        height: 66px;
        top: -15px;
        left: -7.5px;
    }
    .p-top-intro__ico--3 {
        width: 63px;
        top: -18px;
    }
}
.p-top-intro__ttl {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 15px;
    min-height: 60px;
    margin-top: 9px;
    color: var(--color-blue-1);
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-top-intro__ttl {
        justify-content: flex-start;
        width: 270px;
        max-width: 100%;
        margin-inline: auto;
        gap: 29px;
        min-height: 0;
        margin-top: -6px;
    }
}
.p-top-intro__label {
    flex-shrink: 0;
    border-bottom: 2px solid var(--color-blue-1);
    font-size: 13px;
    line-height: 25px;
}
.p-top-intro__label b {
    position: relative;
    bottom: -1px;
    font-weight: 600;
    font-size: 24px;
}
@media screen and (max-width: 767px) {
    .p-top-intro__label b {
        margin-left: 5px;
        font-size: 26px;
        line-height: 25px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__label {
        font-size: 14px;
        width: 106px;
    }
}
.p-top-intro__name {
    font-size: 26px;
    line-height: 1.25;
}
@media screen and (max-width: 767px) {
    .p-top-intro__name {
        font-size: 26px;
        line-height: 30px;
        letter-spacing: 0.02em;
        text-align: center;
        position: relative;
        top: 2px;
    }
}
.p-top-intro__name-break {
    display: none;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .p-top-intro__name-break {
        display: inline;
    }
}
.p-top-intro__txt {
    width: 220px;
    max-width: 100%;
    margin-inline: auto;
    margin-top: 13px;
    font-size: 14.5px;
    line-height: 1.5;
    text-align: justify;
}
.p-top-intro__txt sup {
    margin-left: 2px;
}
@media screen and (max-width: 767px) {
    .p-top-intro__txt sup {
        font-size: 12px;
        line-height: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__txt {
        width: 100%;
        margin-top: 21px;
        font-size: 15px;
        line-height: 1.6428571429;
    }
}
.p-top-intro__notes {
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .p-top-intro__notes {
        margin-top: 28px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-intro__num {
        margin-inline: 0.25em;
    }
}

/* ---------------------------------------------
*   p-top-voice
--------------------------------------------- */
.p-top-voice {
    padding-block: 70px 148px;
    background-color: var(--color-white-1);
    background-image: url("/img/top/bg_building.png");
    background-position: center bottom;
    background-size: 1250px auto;
    background-repeat: repeat-x;
    color: var(--color-base-1);
    font-size: 15px;
    font-family: var(--ff-noto);
    line-height: 1.8;
}
@media screen and (max-width: 767px) {
    .p-top-voice {
        padding-block: 48px 135px;
        background-image: url("/img/top/sp/bg_building.png");
        background-size: 375px auto;
    }
}

/* ---------------------------------------------
*   p-top-about
--------------------------------------------- */
.p-top-about {
    padding: 60px 30px 75px;
    background-color: var(--color-light-blue-1);
    background-image: url("/img/top/bg_about.png");
    background-repeat: no-repeat;
    background-position: center 90px;
    background-size: 100% auto;
}
.windows .p-top-about {
    background-position: center 122px;
}

@media screen and (max-width: 767px) {
    .p-top-about {
        padding: 36px 15px 57px;
        background-size: auto 1600px;
        background-position: center top -625px;
    }
    .windows .p-top-about {
        background-position: center top -625px;
    }
}
.p-top-about__container {
    max-width: 790px;
    margin-inline: auto;
}
.p-top-about__lead {
    margin-top: 30px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-top-about__lead {
        margin-top: 26px;
    }
}
.p-top-about__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 26px;
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-top-about__links {
        grid-template-columns: 1fr;
        gap: 19px;
        margin-top: 28px;
    }
}
.p-top-about__link {
    position: relative;
    display: grid;
    grid-template-columns: 57px minmax(0, 1fr) 6px;
    align-items: center;
    gap: 10px;
    box-sizing: border-box;
    min-height: 90px;
    padding: 15px 30px 15px 20px;
    border-radius: 8px;
    background-color: var(--color-white-1);
    color: var(--color-blue-1);
    box-shadow: 0 0 8px var(--color-black-opacity-12);
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-top-about__link {
        transition: opacity var(--hover-duration);
    }
    .p-top-about__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.windows .p-top-about__link {
    padding-right: 22px;
}

.p-top-about__link:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .p-top-about__link {
        min-height: 80px;
        padding: 11px 25px 11px 15px;
        gap: 12px;
    }
}
.p-top-about__ico {
    position: relative;
    justify-self: center;
    max-width: 100%;
    height: auto;
}
.p-top-about__ico--2 {
    top: 5px;
    left: -4px;
    width: 51px;
}
.p-top-about__ico--3 {
    top: 3px;
    left: -4px;
}
@media screen and (max-width: 767px) {
    .p-top-about__ico--3 {
        top: 0;
    }
}
.p-top-about__ico--4 {
    top: 3px;
}
@media screen and (max-width: 767px) {
    .p-top-about__ico--4 {
        top: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-about__ico {
        transform: scale(0.9);
    }
}
.p-top-about__link-txt {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-top-about__link-txt {
        font-size: 17px;
    }
}
.p-top-about__link-txt-small {
    font-size: 15px;
}
@media screen and (max-width: 767px) {
    .p-top-about__link-txt-small {
        font-size: 15px;
    }
}
.p-top-about__arrow {
    width: 6px;
    height: 10px;
}
.p-top-about__comparison {
    margin-top: 54px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-top-about__comparison {
        margin-top: 41px;
    }
}
.p-top-about__comparison-lead {
    margin-top: 15px;
}
.p-top-about__comparison-lead p + p {
    margin-top: 24px;
}
@media screen and (max-width: 767px) {
    .p-top-about__comparison-lead {
        margin-top: 20px;
    }
}
.p-top-about__table {
    --table-row-gap: 3px;
    position: relative;
    isolation: isolate;
    width: 100%;
    margin-top: 32px;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    font-size: 16px;
    line-height: 1.6;
}
.p-top-about__table::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    box-sizing: border-box;
    width: 45.5645825676%;
    border-right: 3px solid var(--color-blue-1);
    border-bottom: 3px solid var(--color-blue-1);
    border-left: 3px solid var(--color-blue-1);
    pointer-events: none;
}
@media screen and (max-width: 767px) {
    .p-top-about__table::after {
        width: 39.1304347826%;
    }
}
.p-top-about__table th,
.p-top-about__table td {
    box-sizing: border-box;
    height: 47.52px;
    padding: 6px 12px;
    border: 0;
    border-bottom: 3px solid var(--color-transparent-1);
    background-clip: padding-box;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
    .p-top-about__table th,
    .p-top-about__table td {
        height: 84px;
        padding: 6px 10px;
        border-bottom-width: 4px;
    }
}
.p-top-about__table thead th,
.p-top-about__table thead td {
    height: 51.83px;
    font-size: 16px;
}
@media screen and (max-width: 767px) {
    .p-top-about__table thead th,
    .p-top-about__table thead td {
        height: 91px;
        padding-block: 5px;
        line-height: 1.375;
    }
}
.p-top-about__table tbody tr:nth-child(3) th,
.p-top-about__table tbody tr:nth-child(3) td {
    height: 64.68px;
}
@media screen and (max-width: 767px) {
    .p-top-about__table tbody tr:nth-child(3) th,
    .p-top-about__table tbody tr:nth-child(3) td {
        height: 93px;
    }
}
.p-top-about__table tbody tr:last-child th,
.p-top-about__table tbody tr:last-child td {
    height: 45.97px;
}
.p-top-about__table tbody tr:last-child th:not(.p-top-about__purchase),
.p-top-about__table tbody tr:last-child td:not(.p-top-about__purchase) {
    border-bottom-width: 0;
}
@media screen and (max-width: 767px) {
    .p-top-about__table tbody tr:last-child th,
    .p-top-about__table tbody tr:last-child td {
        height: 80px;
    }
}
@media screen and (min-width: 768px) {
    .windows .p-top-about__table {
        --table-row-gap: 4px;
    }
    .windows .p-top-about__table .p-top-about__agency {
        border-right-width: 4px;
    }
    .windows .p-top-about__table tbody tr:not(:last-child) th,
    .windows .p-top-about__table tbody tr:not(:last-child) td {
        height: 48px;
        border-bottom-width: 4px;
    }
    .windows .p-top-about__table thead th,
    .windows .p-top-about__table thead td {
        height: 52px;
    }
    .windows .p-top-about__table tbody tr:nth-child(3) th,
    .windows .p-top-about__table tbody tr:nth-child(3) td {
        height: 65px;
    }
    .windows .p-top-about__table tbody tr:last-child th,
    .windows .p-top-about__table tbody tr:last-child td {
        height: 46px;
    }
}

.p-top-about__table sup {
    font-size: 10px;
    font-weight: 400;
}
@media screen and (max-width: 767px) {
    .p-top-about__table {
        --table-row-gap: 4px;
        margin-top: 28px;
        font-size: 14px;
    }
}
.p-top-about__caption {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.p-top-about__empty {
    width: 21.60356912%;
}
@media screen and (max-width: 767px) {
    .p-top-about__empty {
        width: 20.2898550725%;
    }
}
.p-top-about__row-ttl {
    background-color: var(--color-light-blue-6);
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-top-about__row-ttl {
        line-height: 1.4666666667;
    }
}
.p-top-about__agency {
    width: 32.8318483124%;
    background-color: var(--color-white-1);
    font-weight: 400;
}
@media screen and (max-width: 767px) {
    .p-top-about__agency {
        width: 40.5797101449%;
    }
}
.p-top-about__purchase {
    position: relative;
    background-color: var(--color-white-1);
    color: var(--color-blue-1);
    font-weight: 700;
}
.p-top-about__purchase::before {
    content: "";
    position: absolute;
    z-index: 1;
    right: -3px;
    bottom: calc(-1 * var(--table-row-gap));
    left: -3px;
    height: var(--table-row-gap);
    background-color: var(--color-light-blue-1);
    pointer-events: none;
}
thead .p-top-about__agency {
    background-color: var(--color-gray-3);
    font-weight: 700;
}
.p-top-about__table .p-top-about__empty {
    border: 0;
    background-color: var(--color-transparent-1);
}
.p-top-about__table .p-top-about__row-ttl, .p-top-about__table .p-top-about__agency {
    border-right: 3px solid var(--color-transparent-1);
}
.p-top-about__table .p-top-about__purchase {
    border-right: 3px solid var(--color-blue-1);
    border-left: 3px solid var(--color-blue-1);
    background-clip: border-box;
}
@media screen and (max-width: 767px) {
    .p-top-about__table .p-top-about__purchase {
        padding-inline: 4px;
    }
}
thead .p-top-about__purchase {
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
}
thead .p-top-about__purchase::before {
    display: none;
}
@media screen and (max-width: 767px) {
    thead .p-top-about__purchase::before {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    thead .p-top-about__purchase {
        border-bottom-color: var(--color-light-blue-1);
    }
}
tbody .p-top-about__purchase {
    border-bottom-color: var(--color-light-blue-1);
}
tbody tr:last-child .p-top-about__purchase {
    border-bottom: 3px solid var(--color-blue-1);
}
tbody tr:last-child .p-top-about__purchase::before {
    display: none;
}
.p-top-about__table-note {
    display: block;
    font-size: 12px;
    font-weight: 400;
}
@media screen and (max-width: 767px) {
    .p-top-about__table-note {
        line-height: 1.35;
    }
}
.p-top-about__notes {
    padding-inline: 5px;
    margin-top: 41px;
}
@media screen and (max-width: 767px) {
    .p-top-about__notes {
        padding-inline: 0;
        margin-top: 34px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-about__table .p-top-about__row-ttl {
        padding-inline: 5px;
        word-break: normal;
    }
}

/* ---------------------------------------------
*   p-top-success
--------------------------------------------- */
.p-top-success {
    padding: 65px 30px 160px;
    background-image: url("/img/top/bg_building.png");
    background-repeat: repeat-x;
    background-position: center bottom -1px;
    background-size: 1250px auto;
}
@media screen and (max-width: 767px) {
    .p-top-success {
        padding: 48px 15px 145px;
        background-image: url("/img/top/sp/bg_building.png");
        background-size: 375px auto;
    }
}
.p-top-success__container {
    max-width: 960px;
    margin-inline: auto;
}
.p-top-success__lead {
    margin-top: 30px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-top-success__lead {
        padding-inline: 26px;
        margin-top: 28px;
    }
}
.p-top-success__links {
    max-width: 790px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 26px;
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .p-top-success__links {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 32px;
    }
}
.p-top-success__link {
    position: relative;
    display: grid;
    grid-template-columns: 57px minmax(0, 1fr) auto;
    align-items: center;
    -moz-column-gap: 18px;
         column-gap: 18px;
    box-sizing: border-box;
    min-height: 94px;
    padding: 14px 30px 14px 22px;
    background-color: var(--color-light-blue-1);
    color: var(--color-blue-1);
    box-shadow: 0 0 8px var(--color-black-opacity-12);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-top-success__link {
        transition: opacity var(--hover-duration);
    }
    .p-top-success__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.windows .p-top-success__link {
    padding-right: 22px;
}

.p-top-success__link:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .p-top-success__link {
        grid-template-columns: 47px minmax(0, 1fr) auto;
        -moz-column-gap: 20px;
             column-gap: 20px;
        min-height: 82px;
        padding: 12px 25px 12px 22px;
    }
}
.p-top-success__ico {
    position: relative;
    justify-self: center;
    width: 57px;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
}
.p-top-success__ico--2 {
    width: 48px;
    top: 4px;
}
.p-top-success__ico--3 {
    width: 48px;
    top: 2px;
}
.p-top-success__ico--4 {
    width: 52px;
}
.p-top-success__ico--5 {
    top: 2px;
}
.p-top-success__ico--6 {
    width: 48px;
}
@media screen and (max-width: 767px) {
    .p-top-success__ico {
        width: 47px;
        height: 56px;
    }
    .p-top-success__ico--2 {
        top: 4px;
        left: -4px;
    }
    .p-top-success__ico--3 {
        width: 45px;
        top: 2px;
        left: 3px;
    }
    .p-top-success__ico--4 {
        left: -3px;
    }
    .p-top-success__ico--5 {
        top: 2px;
    }
    .p-top-success__ico--6 {
        width: 48px;
    }
}
.p-top-success__link-txt {
    font-size: 19px;
    font-weight: 700;
    line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .p-top-success__link-txt {
        font-size: 18px;
    }
}
.p-top-success__detail {
    display: block;
    font-size: 14px;
    font-weight: 400;
    margin-left: -6px;
}
.p-top-success__arrow {
    width: 6px;
    height: 10px;
}

/* ---------------------------------------------
*   p-top-info
--------------------------------------------- */
.p-top-info {
    padding-bottom: 155px;
    background-color: var(--color-light-blue-1);
    background-image: linear-gradient(to bottom, var(--color-light-blue-1-opacity-0) 75%, var(--color-light-blue-1)), url("/img/top/bg_info.png");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% calc(min(100vw, 1250px) * 1459 / 2501);
}
@media screen and (max-width: 767px) {
    .p-top-info {
        padding-bottom: 85px;
        background-image: none;
    }
}
.p-top-info__main {
    padding-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-top-info__main {
        padding-top: 48px;
    }
}
.p-top-info__lead {
    padding-inline: 15px;
    margin-top: 30px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-top-info__lead {
        padding-inline: 26px;
        margin-top: 27px;
    }
}
.p-top-info__slider {
    width: 430px;
    max-width: calc(100% - 30px);
    margin: 25px auto 0;
    padding-bottom: 44px;
}
.p-top-info__slider .splide__track {
    padding: 10px !important;
}
@media screen and (max-width: 767px) {
    .p-top-info__slider .splide__track {
        padding-inline: 0 !important;
    }
}
@media screen and (max-width: 767px) {
    .p-top-info__slider {
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        padding-inline: 15px;
        margin-top: 15px;
        padding-bottom: 40px;
    }
}
.p-top-info__recommend {
    padding: 47px 30px 0;
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend {
        padding: 46px 15px 0;
    }
}
.p-top-info .splide__pagination {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    gap: 15px;
    padding: 0;
}
@media screen and (max-width: 767px) {
    .p-top-info .splide__pagination {
        gap: 16px;
    }
}
.p-top-info .splide__pagination__page {
    display: block;
    width: 14px;
    height: 14px;
    padding: 0;
    border: 2px solid var(--color-blue-1);
    border-radius: 50%;
    background-color: var(--color-white-1);
    cursor: pointer;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-top-info .splide__pagination__page {
        transition: opacity var(--hover-duration);
    }
    .p-top-info .splide__pagination__page:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-top-info .splide__pagination__page.is-active {
    background-color: var(--color-blue-1);
}
.p-top-info .splide__pagination__page.is-active:hover {
    opacity: 1;
    cursor: default;
}
@media screen and (max-width: 767px) {
    .p-top-info .splide__pagination__page {
        width: 14px;
        height: 14px;
    }
}
.p-top-info__recommend-head {
    margin-bottom: 30px;
    padding: 18px 15px 20px;
    border-top: 1px solid var(--color-blue-1);
    background-color: var(--color-light-blue-1);
    background-image: linear-gradient(180deg, var(--color-light-blue-4-opacity-80), var(--color-light-blue-4-opacity-0) 60px);
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend-head {
        margin-inline: -15px;
        margin-bottom: 20px;
    }
}
.p-top-info__recommend-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--color-blue-1);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.8;
    transform: translateX(-23px);
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend-ttl {
        transform: translateX(-7px);
    }
}
.p-top-info__recommend-ico {
    width: 35px;
    height: auto;
}
@media screen and (max-width: 767px) {
    .p-top-info__recommend-ico {
        width: 33px;
    }
}
.p-top-info__keyword-head {
    padding: 18px 15px 20px;
    border-top: 1px solid var(--color-blue-1);
    background-color: var(--color-light-blue-1);
    background-image: linear-gradient(180deg, var(--color-light-blue-4-opacity-70), var(--color-light-blue-4-opacity-0) 60px);
}
@media screen and (max-width: 767px) {
    .p-top-info__keyword-head {
        margin-inline: -15px;
        padding-top: 18px;
        padding-bottom: 19px;
    }
}
.p-top-info__keyword-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--color-blue-1);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.8;
    transform: translateX(-20px);
}
@media screen and (max-width: 767px) {
    .p-top-info__keyword-ttl {
        transform: translateX(-5px);
    }
}
.p-top-info .c-section-keyword-search {
    margin-top: 50px;
}
@media screen and (max-width: 767px) {
    .p-top-info .c-section-keyword-search {
        margin-top: 55px;
    }
}

/* ---------------------------------------------
*   p-column-detail-contents
--------------------------------------------- */
.p-column-detail-contents {
    font-size: 15px;
    line-height: 1.8666666667;
}
.p-column-detail-contents .c-block-column-banner + h3 {
    margin-top: 50px;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents .c-block-column-banner + h3 {
        margin-top: 35px;
    }
}
.p-column-detail-contents__content {
    margin-top: -45px;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents__content {
        margin-top: -20px;
    }
}
.p-column-detail-contents__note {
    margin-top: 45px;
}
.p-column-detail-contents a {
    font-weight: 700;
    text-decoration: underline;
}
.p-column-detail-contents a:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
.p-column-detail-contents h2.wp-block-heading {
    margin-top: 70px;
    text-align: center;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.5652173913;
    letter-spacing: 0.025em;
    color: var(--color-blue-1);
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h2.wp-block-heading {
        font-size: 18px;
        margin-top: 45px;
    }
}
.p-column-detail-contents h2.wp-block-heading::after {
    content: "";
    display: block;
    width: 50px;
    height: 1.5px;
    margin: 15px auto 0;
    background-color: var(--color-blue-1);
}
.p-column-detail-contents h3.wp-block-heading {
    position: relative;
    display: inline-block;
    padding-left: 36px;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-top: 35px;
}
.p-column-detail-contents h3.wp-block-heading::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 2px;
    width: 22px;
    height: 22px;
    background-image: url("/img/common/ico_check.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h3.wp-block-heading::before {
        top: 1px;
    }
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h3.wp-block-heading {
        padding-left: 28px;
        font-size: 16px;
        line-height: 1.6;
    }
}
.p-column-detail-contents h4.wp-block-heading {
    margin-top: 35px;
    font-size: 19px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h4.wp-block-heading {
        margin-top: 25px;
    }
}
.p-column-detail-contents .wp-block-paragraph {
    margin-top: 20px;
    text-align: justify;
}
.p-column-detail-contents .wp-block-paragraph:first-child {
    margin-top: 0;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents .wp-block-paragraph {
        margin-top: 10px;
    }
}
.p-column-detail-contents h2 + .wp-block-paragraph {
    margin-top: 45px;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h2 + .wp-block-paragraph {
        margin-top: 30px;
    }
}
.p-column-detail-contents > .wp-block-image {
    margin-top: 50px;
    max-width: 640px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents > .wp-block-image {
        margin-top: 30px;
    }
}
.p-column-detail-contents .wp-block-columns {
    margin-top: 45px;
    display: flex;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents .wp-block-columns {
        margin-top: 30px;
    }
}
.p-column-detail-contents h3 + .wp-block-columns {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents h3 + .wp-block-columns {
        margin-top: 15px;
    }
}
.p-column-detail-contents .wp-block-list {
    margin-top: 30px;
    padding-left: 0;
    list-style: none;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents .wp-block-list {
        margin-top: 10px;
    }
}
.p-column-detail-contents ul.wp-block-list > li {
    position: relative;
    padding-left: 17px;
    margin-top: 10px;
}
.p-column-detail-contents ul.wp-block-list > li:first-child {
    margin-top: 0;
}
.p-column-detail-contents ul.wp-block-list > li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background-color: var(--color-blue-1);
}
@media screen and (max-width: 767px) {
    .p-column-detail-contents ul.wp-block-list > li {
        margin-top: 5px;
    }
}
.p-column-detail-contents ol.wp-block-list {
    line-height: 1.6;
    list-style: decimal;
    padding-left: 17px;
}
.p-column-detail-contents ol.wp-block-list > li {
    display: list-item;
    list-style-type: decimal;
}
.p-column-detail-contents .wp-block-flexible-table-block-table {
    margin-top: 40px;
}
.p-column-detail-contents .wp-block-embed {
    margin-top: 30px;
}
.p-column-detail-contents .wp-block-embed__wrapper {
    max-width: 640px;
    margin-inline: auto;
    aspect-ratio: 16/9;
}
.p-column-detail-contents .wp-block-embed__wrapper iframe {
    display: block;
    width: 100%;
    height: 100%;
}
.p-column-detail-contents .wp-block-table {
    margin-top: 40px;
}

/* ---------------------------------------------
*   p-column-detail-ttl
--------------------------------------------- */
.p-column-detail-ttl {
    margin-top: -1px;
}

/* ---------------------------------------------
*   p-column-detail-contents__cell
--------------------------------------------- */
.p-column-detail-contents__cell--muted {
    background-color: var(--color-column-cell-muted-1);
}
.p-column-detail-contents__cell--accent {
    background-color: var(--color-column-cell-accent-1);
}

/* ---------------------------------------------
*   p-column-index
--------------------------------------------- */
.p-column-index {
    font-size: 15px;
    line-height: 1.8666666667;
}
.p-column-index__head {
    max-width: 960px;
    margin-inline: auto;
    text-align: left;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .p-column-index__head {
        width: auto;
        padding-inline: 15px;
        padding-top: 15px;
        max-width: none;
    }
}
.p-column-index__head-txt {
    margin-top: 5px;
}
@media screen and (max-width: 767px) {
    .p-column-index__head-txt {
        line-height: 1.5333333333;
        margin-top: 9px;
    }
}
.p-column-index__slider {
    background-image: url("/img/column/bg_index.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-block: 18px 28px;
    margin-top: 7px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
@media screen and (max-width: 767px) {
    .p-column-index__slider {
        background-image: none;
        margin-top: 0px;
        padding-block: 0px 17px;
    }
}
.p-column-index__keyword-search {
    padding-top: 48px;
    padding-bottom: 60px;
    background-color: var(--color-light-blue-1);
}
.p-column-index__keyword-search .c-section-keyword-search {
    margin-top: 0;
}
@media screen and (max-width: 767px) {
    .p-column-index__keyword-search {
        padding-top: 10px;
        padding-bottom: 17px;
    }
}
.p-column-index__bnr {
    margin-top: 53px;
}
@media screen and (max-width: 767px) {
    .p-column-index__bnr {
        margin-top: -20px;
    }
}
.p-column-index__ttl-h2 {
    margin-top: 70px;
}
@media screen and (max-width: 767px) {
    .p-column-index__ttl-h2 {
        margin-top: 47px;
    }
}
.p-column-index__ttl-wrap {
    margin-top: 33px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-column-index__ttl-wrap {
        margin-top: 42px;
    }
}
.p-column-index__ttl-wrap--2 {
    margin-top: 36px;
}
.p-column-index__txt {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-column-index__txt {
        font-size: 14px;
        line-height: 1.5;
        margin-top: 10px;
        text-align: justify;
    }
}

/* ---------------------------------------------
*   p-column-index-section
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-column-index-section {
        background-image: url("/img/column/sp/bg_index.png");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        width: 100%;
        height: 100%;
    }
}

/* ---------------------------------------------
*   p-column-cat-contents
--------------------------------------------- */
.p-column-cat-contents {
    margin-top: 72px;
    margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
    .p-column-cat-contents {
        margin-top: 28px;
        padding-inline: 22px;
    }
}
.p-column-cat-contents .c-block-card-warp {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .p-column-cat-contents .c-block-card-warp {
        margin-top: 50px;
    }
}

/* ---------------------------------------------
*   p-column-cat-ttl
--------------------------------------------- */
.p-column-cat-ttl {
    margin-top: -1px;
    font-size: 18px;
    background: url("/img/column/cat/bg_ttl.png") 0 0 no-repeat;
    background-size: cover;
    background-position: center;
    padding-block: 18px 30px;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .p-column-cat-ttl {
        background: url("/img/column/cat/sp/bg_ttl.png") 0 0 no-repeat;
        padding-block: 8px 15px;
        background-position: center;
        background-size: cover;
        padding-inline: 15px;
    }
}
.p-column-cat-ttl__inner {
    max-width: 960px;
    margin-inline: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 38px;
}
@media screen and (max-width: 767px) {
    .p-column-cat-ttl__inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
}
.p-column-cat-ttl__ttl {
    flex-shrink: 0;
    font-size: 18px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-column-cat-ttl__ttl {
        display: flex;
        align-items: center;
        gap: 0 8px;
    }
}
.p-column-cat-ttl__ttl span {
    font-size: 42px;
}
@media screen and (max-width: 767px) {
    .p-column-cat-ttl__ttl span {
        font-size: 31px;
    }
}
.p-column-cat-ttl__txt {
    font-size: 15px;
    color: var(--color-base-1);
    line-height: 1.6;
    margin-top: 10px;
}

/* ---------------------------------------------
*   p-about
--------------------------------------------- */
.p-about {
    color: var(--color-base-1);
}
.p-about .c-kv-ttl {
    background-image: url("/img/about/bg_ttl.png");
}
@media screen and (max-width: 767px) {
    .p-about .c-kv-ttl {
        background-image: none;
    }
}
.p-about .c-kv-ttl__inner {
    box-sizing: border-box;
    max-width: 1020px;
    padding-top: 67px;
    padding-bottom: 98px;
}
@media screen and (max-width: 767px) {
    .p-about .c-kv-ttl__inner {
        padding-top: 15px;
        padding-bottom: 17.3px;
    }
}
.p-about .c-kv-ttl__ttl {
    font-size: calc(41 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-about .c-kv-ttl__ttl {
        max-width: 100%;
        font-size: 31px;
    }
}
.p-about .c-kv-ttl__txt {
    max-width: 510px;
    margin-top: 42px;
    font-size: 13px;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-about .c-kv-ttl__txt {
        margin-top: 8px;
        font-size: 15px;
        line-height: 1.5333333333;
    }
}
.p-about .c-block-anchor {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .p-about .c-block-anchor {
        margin-top: 0;
    }
}
.p-about__companies {
    max-width: 790px;
    margin: 49.5px auto 0;
    padding-bottom: 78px;
}
@media screen and (max-width: 767px) {
    .p-about__companies {
        margin-top: 70px;
        padding-bottom: 80px;
    }
}
.p-about .c-section-about + .c-section-about {
    margin-top: 66.5px;
}
@media screen and (max-width: 767px) {
    .p-about .c-section-about + .c-section-about {
        margin-top: 69px;
    }
}
.p-about__data {
    display: inline-flex;
    flex-wrap: wrap;
    -moz-column-gap: 0.25em;
         column-gap: 0.25em;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 767px) {
    .p-about__data {
        letter-spacing: normal;
    }
}

/* ---------------------------------------------
*   p-service
--------------------------------------------- */
.p-service {
    color: var(--color-base-1);
    font-family: var(--ff-noto);
}
.p-service__contents {
    max-width: 1010px;
    margin-inline: auto;
}
.p-service strong {
    font-weight: bold;
}

/* ---------------------------------------------
*   p-service-about
--------------------------------------------- */
.p-service-about {
    --acc-section-height: 800px;
    padding-top: 57px;
    padding-bottom: 75px;
}
@media screen and (max-width: 767px) {
    .p-service-about {
        --acc-section-preview-ratio: 0;
        padding-top: 76px;
        padding-bottom: 57px;
    }
}
.p-service-about__img {
    display: block;
    max-width: 100%;
    height: auto;
}
.p-service-about__logos {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    margin-top: 29px;
}
.p-service-about__logos .p-service-about__img:first-child {
    width: 151px;
}
@media screen and (max-width: 767px) {
    .p-service-about__logos .p-service-about__img:first-child {
        width: 37.1%;
    }
}
.p-service-about__logos .p-service-about__img:last-child {
    width: 218px;
}
@media screen and (max-width: 767px) {
    .p-service-about__logos .p-service-about__img:last-child {
        width: 53%;
    }
}
@media screen and (max-width: 767px) {
    .p-service-about__logos {
        justify-content: space-between;
        gap: 14px;
        margin-top: 39px;
    }
}
.p-service-about__overview {
    display: flex;
    flex-direction: column;
    max-width: 620px;
    margin: 34px auto 0;
}
@media screen and (max-width: 767px) {
    .p-service-about__overview {
        margin-top: 20px;
        flex-direction: column-reverse;
    }
}
.p-service-about__intro {
    font-size: 14px;
    line-height: 1.7;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-service-about__intro {
        margin-top: 17px;
        font-size: 14px;
        line-height: 1.65;
        text-align: left;
    }
}
.p-service-about__disclaimer {
    margin-top: 26px;
    padding: 12px 20px;
    background-color: var(--color-gray-1);
    font-size: 12px;
    line-height: 1.7;
}
@media screen and (max-width: 767px) {
    .p-service-about__disclaimer {
        order: -1;
        margin: 0;
        padding: 13px 15px;
        margin-top: 15px;
    }
}
.p-service-about__subhead {
    text-align: center;
}
.p-service-about__diagrams {
    max-width: 620px;
    transform: translateX(-2px);
    margin: 37px auto 0;
}
@media screen and (max-width: 767px) {
    .p-service-about__diagrams {
        max-width: none;
        transform: none;
        margin-top: 34px;
    }
}
.p-service-about__diagram {
    margin-top: 26px;
}
.p-service-about__diagram + .p-service-about__diagram {
    margin-top: 33px;
}
@media screen and (max-width: 767px) {
    .p-service-about__diagram + .p-service-about__diagram {
        margin-top: 29px;
    }
}
.p-service-about__diagram .p-service-about__img {
    width: 615.1px;
    margin-top: 21px;
}
@media screen and (max-width: 767px) {
    .p-service-about__diagram .p-service-about__img {
        width: 62.5253333333vw;
        margin: 40px 0 0 17.6vw;
    }
}
.p-service-about__diagram:last-child .p-service-about__img {
    width: 302.58px;
}
@media screen and (max-width: 767px) {
    .p-service-about__diagram:last-child .p-service-about__img {
        width: 67.832vw;
        margin-top: 40px;
        margin-left: 17.8666666667vw;
    }
}
.p-service-about__diagram-ttl {
    padding-bottom: 6px;
    border-bottom: 2px solid var(--color-blue-1);
    color: var(--color-blue-1);
    font-size: 23px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-service-about__diagram-ttl {
        padding-bottom: 8px;
        font-size: 24px;
        letter-spacing: 0;
    }
}
.p-service-about__diagram-ttl--agency {
    border-color: var(--color-service-agency-border-1);
    color: var(--color-service-agency-txt-1);
}
@media screen and (max-width: 767px) {
    .p-service-about__diagram-ttl--agency {
        padding-bottom: 10px;
        font-size: 22px;
    }
}
.p-service-about__comparison {
    container-type: inline-size;
    margin-top: 72px;
}
@media screen and (max-width: 767px) {
    .p-service-about__comparison {
        margin-top: 47px;
    }
}
.p-service-about__notes {
    margin-top: 34px;
}
@media screen and (max-width: 767px) {
    .p-service-about__notes {
        margin-top: 21px;
    }
}
.p-service-about__table {
	display: grid;
	grid-template-columns: 312fr 322fr 321fr 321fr 322fr 310fr;
	grid-template-rows: minmax(calc(89 / 1908 * 100cqw), auto) minmax(calc(171 / 1908 * 100cqw), auto) minmax(calc(178 / 1908 * 100cqw), auto);
	row-gap: 8px;
	width: 100%;
	margin-top: 30px;
	padding-bottom: calc(13 / 1908 * 100cqw);
	border: 0;
	color: var(--color-base-1);
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	overflow-wrap: anywhere;
}
.p-service-about__table thead,
.p-service-about__table tbody tr {
	display: grid;
	grid-row: 1 / span 3;
	grid-template-rows: subgrid;
	row-gap: 8px;
}
.p-service-about__table thead tr,
.p-service-about__table tbody {
	display: contents;
}
.p-service-about__table th,
.p-service-about__table td {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	padding: 6px 10px;
	border: 0;
	vertical-align: middle;
	background-clip: padding-box;
}
.p-service-about__table tbody th {
	margin-inline: 2px 8px;
	border-radius: 10px 10px 0 0;
	background-color: var(--color-gray-1);
	color: var(--color-service-table-head-1);
	font-size: 16px;
}
.p-service-about__table tbody tr:last-child th {
	margin-inline: 0;
	padding-inline: 8px;
	font-size: 14.5px;
}
.p-service-about__table tbody tr:nth-child(4) th {
	margin-right: 9px;
}
.p-service-about__table tbody td {
	margin-right: 7px;
	border-block: 1px solid var(--color-transparent-1);
}
.p-service-about__table tbody tr:last-child td {
	margin-right: 0;
}
.p-service-about__table .p-service-about__agency {
	background-color: var(--color-service-agency-bg-2);
}
.p-service-about__table .p-service-about__direct {
	background-color: var(--color-light-blue-2);
	color: var(--color-blue-1);
}
.p-service-about__table thead th {
	position: relative;
	z-index: 1;
	width: calc(100% + 9px);
	margin-left: 4px;
	padding-right: 12px;
	padding-left: 4px;
	border-block: 1px solid var(--color-transparent-1);
	clip-path: polygon(0 0, calc(100% - 21px) 0, 100% 50%, calc(100% - 21px) 100%, 0 100%);
}
.p-service-about__table thead .p-service-about__agency {
	background-color: var(--color-service-agency-head-2);
}
.p-service-about__table thead .p-service-about__direct {
	background-color: var(--color-blue-1);
	color: var(--color-white-1);
}
.p-service-about__table sup {
	position: relative;
	top: -5px;
	display: inline-block;
	width: 0;
	color: var(--color-black-1);
	font-size: 9px;
	font-weight: 400;
	line-height: 0;
	text-align: left;
	white-space: nowrap;
	vertical-align: baseline;
	transform: translateX(3px);
}
.p-service-about__table tbody tr:last-child .p-service-about__direct .p-service-about__cell {
	font-size: 16px;
	transform: translateY(2px);
}
.p-service-about__table-caption {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
}
.p-service-about__num {
	padding-inline: 2px;
	font-family: var(--ff-root);
	font-size: 24px;
	line-height: 1;
}
.p-service-about__period {
	letter-spacing: 1px;
}
.p-service-about__period-break {
	display: none;
}
.p-service-about__period-unit {
	display: inline-block;
	margin-left: 3px;
}
.p-service-about__table tbody .p-service-about__agency .p-service-about__period-unit {
	margin-left: 4px;
}
.p-service-about__cell {
	min-width: 0;
	max-width: 100%;
	text-align: center;
}
.p-service-about__cell:has(sup) {
	max-width: calc(100% - 44px);
}
.p-service-about__cell--fee {
	font-size: 15px;
	line-height: 1.45;
	white-space: normal;
	transform: translateY(2px);
}
.p-service-about__cell--fee:has(sup) {
	max-width: 100%;
}
.p-service-about__cell--fee sup {
	width: auto;
}
.p-service-about__fee-amount {
	font-size: 16px;
}
.p-service-about__fee-note,
.p-service-about__fee-label {
	display: inline-block;
	white-space: nowrap;
}
.p-service-about__fee-break {
	display: none;
}
@media screen and (min-width: 768px) {
	.p-service-about__table tbody tr:first-child td {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 21px 50%);
	}
}
@media screen and (max-width: 1024px) {
	.p-service-about__table tbody td {
		padding-block: 12px;
	}
	.p-service-about__fee-break,
	.p-service-about__period-break {
		display: inline;
	}
}
@media screen and (max-width: 767px) {
	.p-service-about__table {
		grid-template-columns: 175fr 259fr 274fr;
		grid-template-rows: minmax(calc(156 / 708 * 100cqw), auto) minmax(calc(208 / 708 * 100cqw), auto) minmax(calc(181 / 708 * 100cqw), auto) minmax(calc(255 / 708 * 100cqw), auto) minmax(calc(358 / 708 * 100cqw), auto) minmax(calc(274 / 708 * 100cqw), auto);
		gap: 0;
		margin-top: 40px;
		padding-bottom: 0;
		font-size: 18px;
	}
	.p-service-about__table thead,
	.p-service-about__table tbody tr {
		display: contents;
	}
	.p-service-about__table th,
	.p-service-about__table td {
		border: 1px solid var(--color-transparent-1);
	}
	.p-service-about__table tbody th {
		margin: 0 7px 0 0;
		padding: 10px 5px;
		border-radius: 16px 0 0 16px;
		font-size: 17px;
		line-height: 1.25;
	}
	.p-service-about__table tbody td,
	.p-service-about__table tbody tr:last-child td {
		margin-right: 5px;
		padding: 10px 8px;
	}
	.p-service-about__table tbody .p-service-about__direct,
	.p-service-about__table tbody tr:last-child .p-service-about__direct {
		margin-right: 1px;
	}
	.p-service-about__table tbody tr:nth-child(2) > th,
	.p-service-about__table tbody tr:nth-child(2) > td,
	.p-service-about__table tbody tr:nth-child(4) > th,
	.p-service-about__table tbody tr:nth-child(4) > td {
		margin-top: 6px;
	}
	.p-service-about__table tbody tr:nth-child(3) > th,
	.p-service-about__table tbody tr:nth-child(3) > td,
	.p-service-about__table tbody tr:nth-child(5) > th,
	.p-service-about__table tbody tr:nth-child(5) > td {
		margin-top: 7px;
	}
	.p-service-about__table tbody tr:nth-child(4) th {
		margin-right: 7px;
	}
	.p-service-about__table tbody tr:last-child th {
		margin-right: 7px;
		padding-inline: 5px;
		font-size: 17px;
	}
	.p-service-about__table thead th {
		width: auto;
		height: calc(198 / 708 * 100cqw - 4px);
		margin: 0 5px calc(-42 / 708 * 100cqw + 4px) 0;
		padding: 14px 8px calc(53 / 708 * 100cqw);
		border: 0;
		background-clip: border-box;
		clip-path: polygon(1px 1px, calc(100% - 1px) 1px, calc(100% - 1px) calc(100% - 42 / 708 * 100cqw - 1px), 50% calc(100% - 1px), 1px calc(100% - 42 / 708 * 100cqw - 1px));
	}
	.p-service-about__table thead th:last-child {
		margin-right: 1px;
	}
	.p-service-about__table tbody tr:first-child td {
		clip-path: polygon(1px 0, 50% calc(42 / 708 * 100cqw), calc(100% - 1px) 0, 100% 100%, 0 100%);
	}
	.p-service-about__table sup {
		top: auto;
		font-size: 10px;
		vertical-align: super;
	}
	.p-service-about__cell--fee sup {
		top: -4px;
	}
	.p-service-about__num {
		padding-right: 0;
		font-size: 30px;
	}
	.p-service-about__cell {
		line-height: 1.65;
		transform: none;
	}
	.p-service-about__table tbody tr:nth-child(3) .p-service-about__direct .p-service-about__cell {
		line-height: 37px;
	}
	.p-service-about__period-unit {
		margin-left: 2px;
	}
	.p-service-about__period-unit--day {
		margin-left: 0;
	}
	.p-service-about__table tbody .p-service-about__agency .p-service-about__period-unit {
		margin-left: 2px;
	}
	.p-service-about__cell--fee {
		font-size: 18px;
		line-height: 1.55;
	}
	.p-service-about__table tbody tr:first-child .p-service-about__cell {
		transform: translateY(9px);
	}
	.p-service-about__table tbody tr:last-child .p-service-about__cell {
		transform: translateY(3px);
	}
	.p-service-about__table tbody tr:last-child .p-service-about__direct .p-service-about__cell {
		font-size: 18px;
		transform: translateY(2px);
	}
	.p-service-about__fee-price {
		letter-spacing: 1px;
	}
	.p-service-about__fee-num {
		margin-left: 3px;
	}
	.p-service-about__fee-summary {
		font-size: 17px;
	}
	.p-service-about__fee-amount {
		font-size: 24px;
		line-height: 1.3;
	}
}

/* ---------------------------------------------
*   p-service-merit
--------------------------------------------- */
.p-service-merit {
    --acc-section-bottom-space: 77px;
    --acc-section-height: 680px;
    padding: 68px 0 68px;
    background-color: var(--color-service-section-bg-1);
}
@media screen and (max-width: 767px) {
    .p-service-merit {
        --acc-section-preview-ratio: 0;
        --acc-section-preview-size: 287px;
        --acc-section-button-offset: -9px;
        padding: 72px 0 57px;
    }
}
.p-service-merit__subhead {
    text-align: center;
}
.p-service-merit__num {
    font-size: 1.4em;
    line-height: 1;
    padding-inline: 2px;
}
.p-service-merit__num--viewing {
    position: relative;
    top: 1px;
    padding-inline: 0;
    font-size: 25px;
    font-weight: 600;
    letter-spacing: 0.05em;
}
.p-service-merit__notes {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__notes {
        margin-top: 21px;
    }
}
.p-service-merit__list {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 13px;
    margin-top: 40px;
    list-style: none;
}
@media screen and (max-width: 767px) {
    .p-service-merit__list {
        display: flex;
        flex-direction: column;
        gap: 20px;
        margin: 43px auto 0;
        transform: translateX(-2px);
        width: 80.5333333333vw;
        max-width: none;
    }
}
.p-service-merit__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    grid-column: span 3;
    row-gap: 0;
    padding: 24px 10px 31px;
    border: 2px solid var(--color-service-border-1);
    border-radius: 9px;
    background-color: var(--color-white-1);
    text-align: center;
}
.p-service-merit__item:nth-child(n+5) {
    grid-column: span 4;
    padding-bottom: 44px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(n+5) {
        padding-bottom: 22px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item {
        display: block;
        grid-row: auto;
        padding: 29px 22px 22px;
    }
    .c-acc-section.is-ready:not(.is-open) .p-service-merit__item:nth-child(2) {
        margin-bottom: 2px;
        padding-bottom: 9px;
    }
    .c-acc-section.is-ready:not(.is-open) .p-service-merit__item:nth-child(3) {
        transform: translateX(3px);
    }
}
.p-service-merit__ico {
    position: relative;
    display: block;
    width: 83px;
    height: 53px;
    margin: 0 auto;
    -o-object-fit: contain;
       object-fit: contain;
}
.p-service-merit__item:nth-child(1) .p-service-merit__ico {
    width: 45px;
    top: -5px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(1) .p-service-merit__ico {
        top: -3px;
        left: 1px;
    }
}
.p-service-merit__item:nth-child(2) .p-service-merit__ico {
    width: 59px;
    top: -5px;
    left: 5px;
}
.p-service-merit__item:nth-child(3) .p-service-merit__ico {
    width: 63px;
    top: -1px;
    left: -2px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(3) .p-service-merit__ico {
        width: 62px;
        top: -7px;
    }
}
.p-service-merit__item:nth-child(4) .p-service-merit__ico {
    width: 80px;
    height: 51px;
    top: 2px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(4) .p-service-merit__ico {
        top: 0;
    }
}
.p-service-merit__item:nth-child(5) .p-service-merit__ico {
    width: 81px;
    height: 52px;
    top: 3px;
    left: -1px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(5) .p-service-merit__ico {
        top: -3px;
    }
}
.p-service-merit__item:nth-child(6) .p-service-merit__ico {
    width: 82px;
    height: 55px;
    top: 2px;
    left: -6px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(6) .p-service-merit__ico {
        top: -6px;
        left: -13px;
    }
}
.p-service-merit__item:nth-child(7) .p-service-merit__ico {
    top: -1px;
    width: 38px;
    left: -1px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(7) .p-service-merit__ico {
        top: -6px;
    }
}
.p-service-merit__ttl {
    margin-top: 9px;
    color: var(--color-blue-1);
    font-size: 19px;
    font-weight: 700;
    line-height: 1.6;
    /* ---------------------------------------------
    *   p-service-merit__line
    --------------------------------------------- */
}
@media screen and (max-width: 767px) {
    .p-service-merit__ttl {
        margin-top: 10px;
        line-height: 1.45;
    }
}
.p-service-merit__ttl > span {
    text-decoration: underline;
    text-decoration-color: var(--color-service-underline-1);
    text-decoration-thickness: 3px;
    text-underline-offset: 4px;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
    letter-spacing: 0;
}
.p-service-merit__ttl > .p-service-merit__line {
    position: relative;
    text-decoration: none;
}
.p-service-merit__ttl > .p-service-merit__line::after {
    position: absolute;
    right: 0;
    bottom: -2px;
    left: 0;
    height: 3px;
    background-color: var(--color-service-underline-1);
    content: "";
}
@media screen and (max-width: 767px) {
    .p-service-merit__ttl > .p-service-merit__line::after {
        bottom: -1px;
    }
}
.p-service-merit__ttl sup {
    position: relative;
    top: -0.6em;
    display: inline-block;
    width: 0;
    line-height: 0;
    text-align: left;
    vertical-align: baseline;
    white-space: nowrap;
    transform: translateX(2px);
    color: var(--color-service-note-1);
    font-size: 9px;
    font-weight: 400;
}
.p-service-merit__annotation {
    font-size: inherit;
}
.p-service-merit__txt {
    margin-top: 23px;
    font-size: 14px;
    line-height: 1.65;
}
.p-service-merit__txt sup {
    position: relative;
    top: -0.5em;
    font-size: 9px;
    line-height: 0;
    vertical-align: baseline;
}
@media screen and (max-width: 767px) {
    .p-service-merit__txt {
    font-size: 15px;
        margin-top: 26px;
    }
    .c-acc-section.is-ready:not(.is-open) .p-service-merit__item:nth-child(2) .p-service-merit__txt {
        display: none;
    }
}
.p-service-merit__item:nth-child(n+5) .p-service-merit__txt {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(n+5) .p-service-merit__txt {
        margin-top: 26px;
    }
}
.p-service-merit__item:last-child .p-service-merit__txt {
    text-align: left;
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:last-child .p-service-merit__txt {
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(1) {
        margin-bottom: 1px;
        padding-bottom: 26px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(2) {
        margin-bottom: 1px;
        padding-bottom: 21px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(3) {
        padding-bottom: 18px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(4) {
        padding-bottom: 27px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(5) {
        padding-bottom: 22px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(6) {
        padding-bottom: 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-merit__item:nth-child(7) {
        padding-bottom: 19px;
    }
}
.p-service-merit__records {
    margin-top: 53px;
}
@media screen and (max-width: 767px) {
    .p-service-merit__records {
        margin-top: 45px;
    }
}
.p-service-merit__record-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 28px;
    list-style: none;
}
@media screen and (max-width: 767px) {
    .p-service-merit__record-list {
        grid-template-columns: 1fr;
        gap: 31px;
        margin: 28px auto 0;
        transform: translateX(-2px);
        width: 80.5333333333vw;
    }
}
.p-service-merit__record {
    display: flex;
    align-items: center;
    gap: 17px;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 23px 20px;
    border: 2px solid var(--color-service-border-1);
    border-radius: 9px;
    background-color: var(--color-white-1);
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .p-service-merit__record {
        flex-direction: column;
        align-items: flex-start;
        flex-wrap: nowrap;
    }
}
.p-service-merit__record:nth-child(1) .p-service-merit__record-ico {
    width: 44px;
    top: 3px;
}
.p-service-merit__record:nth-child(2) .p-service-merit__record-ico {
    width: 54px;
    top: 2px;
}
.p-service-merit__record-ico {
    width: 42px;
    top: 2px;
    left: 2px;
    -o-object-fit: contain;
       object-fit: contain;
    position: relative;
}
.p-service-merit__record-txt {
    color: var(--color-black-1);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
}
.p-service-merit__record-ttl {
    color: var(--color-blue-1);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}
.p-service-merit__record-range {
    margin-inline: 3px;
}
.p-service-merit__record-num {
    font-size: 25px;
    font-weight: 500;
}
.p-service-merit__date {
    margin-top: 14px;
    font-size: 12px;
    text-align: right;
    letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
    .p-service-merit__date {
        margin: 16px auto 0;
        transform: translateX(-2px);
        width: 80.5333333333vw;
    }
}

/* ---------------------------------------------
*   p-service-flow
--------------------------------------------- */
.p-service-flow {
    --acc-section-height: 620px;
    padding: 71px 0 77px;
}
@media screen and (max-width: 767px) {
    .p-service-flow {
        --acc-section-preview-ratio: 0.195;
        --acc-section-preview-size: calc(140 / 375 * 100vw);
        --acc-section-fade-height: calc(255 / 375 * 100vw);
        --acc-section-button-offset: -1px;
        padding: 68px 0 57px;
    }
}
.p-service-flow__lead {
    margin-top: 35px;
    font-size: 14px;
    line-height: 1.65;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-service-flow__lead {
        margin: 39px 20px 0;
    }
}
.p-service-flow__diagram {
    margin-top: 36px;
}
@media screen and (max-width: 767px) {
    .p-service-flow__diagram {
        max-width: none;
        margin: 34px auto 0;
        width: 81.0666666667vw;
        margin-bottom: 30px;
    }
}
.p-service-flow__picture {
    display: block;
}
.p-service-flow__img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

/* ---------------------------------------------
*   p-service-advice
--------------------------------------------- */
.p-service-advice {
    --acc-section-bottom-space: 80px;
    --acc-section-height: 650px;
    padding: 78px 0 77px;
    background-color: var(--color-service-section-bg-1);
}
@media screen and (max-width: 767px) {
    .p-service-advice {
        --acc-section-preview-size: 142px;
        --acc-section-button-offset: -9px;
        padding: 76px 0 57px;
    }
}
.p-service-advice__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 52px;
}
@media screen and (max-width: 1024px) {
    .p-service-advice__grid {
        grid-template-columns: 1fr;
        gap: 28px;
        margin-inline: -5px;
    }
}
@media screen and (max-width: 767px) {
    .p-service-advice__grid {
        margin-inline: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-service-advice__acc {
        margin-inline: -5px;
    }
}

/* ---------------------------------------------
*   p-service-recommend
--------------------------------------------- */
.p-service-recommend {
    padding: 37px 50px 30px;
    border: 1px solid var(--color-service-border-1);
    border-radius: 10px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 1024px) {
    .p-service-recommend {
        padding: 28px 38px 53px;
    }
}
.p-service-recommend__ico {
    width: 31px;
    height: 34px;
    margin-right: 12px;
    -o-object-fit: contain;
       object-fit: contain;
    vertical-align: middle;
}
@media screen and (max-width: 1024px) {
    .p-service-recommend__ico {
        position: relative;
        top: -5px;
        width: 24px;
        height: 28px;
        margin-right: 9px;
    }
}
.p-service-recommend__img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-top: 25px;
}
@media screen and (max-width: 1024px) {
    .p-service-recommend__img {
        margin: 20px auto 0;
    }
}
.p-service-recommend__list {
    margin-top: 28px;
}
@media screen and (max-width: 1024px) {
    .p-service-recommend__list {
        margin-top: 22px;
    }
}
.p-service-recommend__ttl {
    margin-top: -20px;
    padding-top: 20px;
}

/* ---------------------------------------------
*   p-service-caution
--------------------------------------------- */
.p-service-caution {
    padding: 37px 50px 30px;
    border: 1px solid var(--color-service-caution-border-1);
    border-radius: 10px;
    background-color: var(--color-service-caution-bg-1);
}
@media screen and (max-width: 1024px) {
    .p-service-caution {
        padding: 28px 38px 30px;
    }
}
.p-service-caution__ico {
    width: 31px;
    height: 34px;
    margin-right: 12px;
    -o-object-fit: contain;
       object-fit: contain;
    vertical-align: middle;
}
@media screen and (max-width: 1024px) {
    .p-service-caution__ico {
        width: 24px;
        height: 28px;
        margin-right: 9px;
    }
}
.p-service-caution__img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-top: 25px;
}
@media screen and (max-width: 1024px) {
    .p-service-caution__img {
        margin-top: 20px;
    }
}
.p-service-caution__txt {
    margin-top: 30px;
    font-size: 16px;
    line-height: 1.6;
}
@media screen and (max-width: 1024px) {
    .p-service-caution__txt {
        margin-top: 23px;
        font-size: 15px;
        line-height: 1.65;
    }
}
.p-service-caution__more {
    margin-top: 23px;
}
.p-service-caution__ttl {
    margin-top: -20px;
    padding-top: 20px;
}
.p-service-caution__link {
    position: relative;
    display: block;
    box-sizing: border-box;
    padding: 21px 15px;
    border: 1px solid var(--color-blue-1);
    border-radius: 8px;
    background-color: var(--color-white-1);
    color: var(--color-blue-1);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-service-caution__link {
        transition: opacity var(--hover-duration);
    }
    .p-service-caution__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-service-caution__link::before {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 11px;
    height: 11px;
    background: url(/img/common/ico_arrow_blue.svg) center/contain no-repeat;
    transform: translateY(-50%);
    content: "";
}
@media screen and (max-width: 767px) {
    .p-service-caution__link::before {
        width: 10px;
        height: 10px;
    }
}
.p-service-caution__link:hover {
    color: var(--color-blue-1);
    text-decoration: none;
}
@media screen and (max-width: 1024px) {
    .p-service-caution__link {
        padding-block: 15px;
    }
}

/* ---------------------------------------------
*   p-what-is
--------------------------------------------- */
.p-what-is {
    color: var(--color-base-1);
    font-family: var(--ff-noto);
    font-size: 14px;
    line-height: 1.7;
}
.p-what-is__img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}
.p-what-is__ttl--mt20 {
    margin-top: -20px;
    padding-top: 20px;
}
.p-what-is__subhead {
    text-align: center;
}
.p-what-is__contents {
    max-width: 1010px;
    margin-inline: auto;
}

/* ---------------------------------------------
*   p-what-is-kv
--------------------------------------------- */
.p-what-is-kv {
    min-height: 233px;
}
@media screen and (max-width: 767px) {
    .p-what-is-kv {
        min-height: 0;
        padding-bottom: 7px;
    }
}
.p-what-is-kv__txt {
    display: flow-root;
    max-width: 485px;
    padding-top: 19px;
}
@media screen and (max-width: 767px) {
    .p-what-is-kv__txt {
        padding-top: 0;
        max-width: 100%;
    }
}

/* ---------------------------------------------
*   p-what-is-anchor
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .p-what-is-anchor__panel {
        display: none;
        margin-inline: -15px;
    }
    .p-what-is-anchor:has(> .is-open) .p-what-is-anchor__panel {
        display: flow-root;
    }
}

/* ---------------------------------------------
*   p-what-is-intro
--------------------------------------------- */
.p-what-is-intro {
    margin-top: 24px;
    text-align: center;
    line-height: 24px;
}
@media screen and (max-width: 767px) {
    .p-what-is-intro {
        margin-top: 50px;
        text-align: left;
    }
}

/* ---------------------------------------------
*   p-what-is-diff
--------------------------------------------- */
.p-what-is-diff {
    padding-top: 66px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff {
        padding-top: 66px;
    }
    .p-what-is-diff .p-what-is-intro {
        margin-top: 36px;
    }
}
.p-what-is-diff__diagram {
    max-width: 623px;
    margin: 48px auto 71px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff__diagram {
        max-width: 66vw;
        transform: translateX(-2%);
        margin-top: 33px;
        margin-bottom: 50px;
    }
}
.p-what-is-diff__comparison-intro {
    margin-top: 20px;
    text-align: center;
    line-height: 24px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff__comparison-intro {
        margin-top: 34px;
        text-align: left;
    }
}
.p-what-is-diff__table-img {
    margin-top: 41px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff__table-img {
        margin-top: 39px;
        margin-right: -15px;
    }
}
.p-what-is-diff__table-mobile {
    display: flex;
    align-items: flex-start;
}
.p-what-is-diff__table-label {
    flex: 0 0 115px;
    margin-top: 58px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff__table-label {
        flex-basis: calc(230 / var(--design-width) * 100vw);
        margin-top: calc(116 / var(--design-width) * 100vw);
    }
    .p-what-is-diff__table-label .p-what-is__img {
        width: 100%;
    }
}
.p-what-is-diff__table-scroll {
    position: relative;
    z-index: 1;
    min-width: 0;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
}
.p-what-is-diff__table-scroll::-webkit-scrollbar {
    display: none;
}
.p-what-is-diff__table-scroll:focus-visible {
    outline: 2px solid var(--color-blue-1);
    outline-offset: -2px;
}
.p-what-is-diff__table-data {
    box-sizing: content-box;
    width: 503px;
    padding-right: 20px;
}
@media screen and (max-width: 767px) {
    .p-what-is-diff__table-data {
        width: calc(1006 / var(--design-width) * 100vw);
        padding-right: calc(40 / var(--design-width) * 100vw);
    }
    .p-what-is-diff__table-data .p-what-is__img {
        width: 100%;
    }
}
.p-what-is-diff__notes {
    margin-top: 30px;
}
.p-what-is-diff__source-date {
    margin-right: 12px;
}

/* ---------------------------------------------
*   p-what-is-suited
--------------------------------------------- */
.p-what-is-suited {
    background-color: var(--color-service-section-bg-1);
    box-shadow: 0 0 0 100vmax var(--color-service-section-bg-1);
    clip-path: inset(0 -100vmax);
    margin-top: 66px;
    padding-top: 73px;
    padding-bottom: 78px;
}
@media screen and (max-width: 767px) {
    .p-what-is-suited {
        margin-top: 71px;
        padding-top: 67px;
        padding-bottom: 77px;
    }
    .p-what-is-suited .p-what-is-intro {
        margin-top: 32px;
    }
}
.p-what-is-suited__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px 33px;
    margin-top: 51px;
}
@media screen and (max-width: 767px) {
    .p-what-is-suited__list {
        grid-template-columns: 100%;
        justify-content: center;
        gap: 20px;
        margin-top: 30px;
        width: 78.6666666667vw;
        margin-inline: auto;
    }
}
.p-what-is-suited__item {
    display: grid;
    grid-template-rows: auto 1fr;
    background-color: var(--color-white-1);
    overflow: hidden;
    border: 1px solid var(--color-service-border-2);
    border-radius: 10px;
}
.p-what-is-suited__txt {
    align-self: center;
    padding: 19px 18px 24px;
    font-size: 16px;
    font-weight: 700;
    line-height: 25px;
    text-align: center;
}

/* ---------------------------------------------
*   p-what-is-merit
--------------------------------------------- */
.p-what-is-merit {
    padding-top: 64px;
}
.p-what-is-merit .p-what-is__subhead {
    margin-top: 42px;
}
.p-what-is-merit .p-what-is-merit__list + .p-what-is__subhead {
    margin-top: 62px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit .p-what-is-merit__list + .p-what-is__subhead {
        margin-top: 42px;
    }
}
@media screen and (max-width: 767px) {
    .p-what-is-merit {
        padding-top: 63px;
    }
    .p-what-is-merit .p-what-is-intro {
        margin-top: 32px;
    }
    .p-what-is-merit .p-what-is__subhead {
        margin-top: 35px;
    }
}
.p-what-is-merit__list {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 25px 30px;
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__list {
        grid-template-columns: 100%;
        width: 78.6666666667vw;
        margin-inline: auto;
        justify-content: center;
        gap: 22px;
        margin-top: 25px;
    }
}
.p-what-is-merit__caution {
    margin-top: 30px;
    padding: 29px 24px 28px;
    border: 1px solid var(--color-service-caution-border-2);
    border-radius: 10px;
    background-color: var(--color-service-caution-bg-2);
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution {
        margin-top: 23px;
        padding: 20px;
    }
}
.p-what-is-merit__caution-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-list {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }
}
.p-what-is-merit__caution-item {
    display: flex;
    gap: 14px;
    padding: 20px;
    border: 1px solid var(--color-service-caution-border-2);
    border-radius: 10px;
    background-color: var(--color-white-1);
}
.p-what-is-merit__caution-item .p-what-is-info__ico {
    position: relative;
}
.p-what-is-merit__caution-item:nth-child(1) .p-what-is-info__ico {
    top: -5px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-item:nth-child(1) .p-what-is-info__ico {
        top: -4px;
        left: 4px;
    }
}
.p-what-is-merit__caution-item:nth-child(2) .p-what-is-info__ico {
    top: -6px;
    left: 5px;
    box-sizing: border-box;
    padding-right: 5px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-item:nth-child(2) .p-what-is-info__ico {
        top: -7px;
        left: 12px;
    }
}
.p-what-is-merit__caution-item .p-what-is-info__txt {
    margin-top: 10px;
    line-height: 22px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-item {
        gap: 14px;
        padding: 20px 25px 16px 18px;
    }
}
.p-what-is-merit__caution-ttl {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-ttl {
        margin-right: 40px;
    }
}
.p-what-is-merit__caution-note {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin: 32px 13px 0;
    line-height: 22px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-note {
        gap: 10px;
        margin: 20px 0 0;
    }
}
.p-what-is-merit__caution-ico {
    flex-shrink: 0;
    width: 31px;
    height: 28px;
}
@media screen and (max-width: 767px) {
    .p-what-is-merit__caution-ico {
        position: relative;
        top: 5px;
    }
}

/* ---------------------------------------------
*   p-what-is-info
--------------------------------------------- */
.p-what-is-info {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    box-sizing: border-box;
    padding: 18px 20px 18px;
    border: 1px solid var(--color-service-border-2);
    border-radius: 10px;
}
.p-what-is-info--merit {
    grid-column: span 2;
    min-height: 150px;
    background-color: var(--color-light-blue-1);
}
.p-what-is-info--merit .p-what-is-info__ico {
    position: relative;
}
.p-what-is-info--merit:nth-child(1) .p-what-is-info__ico {
    top: 8px;
    width: 61px;
    margin-right: -1px;
}
.p-what-is-info--merit:nth-child(2) .p-what-is-info__ico {
    top: 4px;
    left: -6px;
    width: 61px;
    margin-right: -1px;
    -o-object-position: center top;
       object-position: center top;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--merit:nth-child(2) .p-what-is-info__ico {
        top: 5px;
        left: -5px;
    }
}
.p-what-is-info--merit:nth-child(3) .p-what-is-info__ico {
    top: 8px;
    -o-object-position: center top;
       object-position: center top;
}
.p-what-is-info--merit:nth-child(4) .p-what-is-info__ico {
    top: 13px;
    left: -1px;
    box-sizing: border-box;
    padding: 4px 8px 5px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--merit:nth-child(4) .p-what-is-info__ico {
        top: 8px;
        left: 3px;
    }
}
.p-what-is-info--merit:nth-child(5) .p-what-is-info__ico {
    top: 3px;
    box-sizing: border-box;
    padding: 3px 7px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--merit:nth-child(5) .p-what-is-info__ico {
        top: -2px;
        left: 4px;
    }
}
.p-what-is-info--merit:nth-child(n+4) {
    grid-column: span 3;
    min-height: 122px;
    padding-top: 13px;
    padding-bottom: 16px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--merit {
        grid-column: auto;
        min-height: 148px;
    }
    .p-what-is-info--merit:nth-child(n+4) {
        grid-column: auto;
        min-height: 148px;
        padding-top: 24px;
        padding-bottom: 18px;
    }
}
.p-what-is-info--assessment {
    background-color: var(--color-white-1);
    min-height: 125px;
    padding-bottom: 12px;
}
.p-what-is-info--assessment .p-what-is-info__body {
    padding-top: 4px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment .p-what-is-info__body {
        padding-top: 5px;
    }
}
.p-what-is-info--assessment .p-what-is-info__txt {
    margin-top: 3px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment .p-what-is-info__txt {
        margin-top: 2px;
    }
}
.p-what-is-info--assessment:nth-child(1), .p-what-is-info--assessment:nth-child(4) {
    gap: 19px;
}
.p-what-is-info--assessment:nth-child(1) .p-what-is-info__txt, .p-what-is-info--assessment:nth-child(4) .p-what-is-info__txt {
    margin-left: -2px;
}
.p-what-is-info--assessment:nth-child(2) {
    gap: 11px;
    padding-right: 15px;
}
.p-what-is-info--assessment:nth-child(2) .p-what-is-info__txt {
    margin-left: 2px;
}
.p-what-is-info--assessment:nth-child(3), .p-what-is-info--assessment:nth-child(6) {
    gap: 4px;
}
.p-what-is-info--assessment:nth-child(3) .p-what-is-info__txt, .p-what-is-info--assessment:nth-child(6) .p-what-is-info__txt {
    margin-left: 1px;
}
.p-what-is-info--assessment:nth-child(5) {
    gap: 10px;
}
.p-what-is-info--assessment:nth-child(5) .p-what-is-info__txt {
    margin-left: 1px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment:nth-child(5) {
        gap: 19px;
    }
}
.p-what-is-info--assessment:nth-child(n+4) {
    min-height: 144px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment:nth-child(4) .p-what-is-info__body, .p-what-is-info--assessment:nth-child(5) .p-what-is-info__body {
        padding-top: 4px;
    }
    .p-what-is-info--assessment:nth-child(4) .p-what-is-info__txt, .p-what-is-info--assessment:nth-child(5) .p-what-is-info__txt {
        margin-top: 3px;
    }
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment:nth-child(6) {
        gap: 16px;
        min-height: auto;
    }
    .p-what-is-info--assessment:nth-child(6) .p-what-is-info__body {
        padding-top: 3px;
    }
    .p-what-is-info--assessment:nth-child(6) .p-what-is-info__txt {
        margin-top: 4px;
    }
}
.p-what-is-info--assessment .p-what-is-info__ico {
    position: relative;
    box-sizing: border-box;
    -o-object-position: left top;
       object-position: left top;
}
.p-what-is-info--assessment:nth-child(1) .p-what-is-info__ico {
    top: 8px;
    padding-right: 1px;
}
.p-what-is-info--assessment:nth-child(2) .p-what-is-info__ico {
    top: 9px;
    left: 2px;
    padding-right: 6px;
}
.p-what-is-info--assessment:nth-child(3) .p-what-is-info__ico {
    top: 7px;
    left: 4px;
    padding-right: 9px;
}
.p-what-is-info--assessment:nth-child(4) .p-what-is-info__ico {
    top: 7px;
    left: 9px;
    padding-right: 13px;
}
.p-what-is-info--assessment:nth-child(5) .p-what-is-info__ico {
    top: 4px;
    left: 5px;
    padding-bottom: 6px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment:nth-child(5) .p-what-is-info__ico {
        left: 13px;
    }
}
.p-what-is-info--assessment:nth-child(6) .p-what-is-info__ico {
    top: 7px;
    left: 4px;
    padding-right: 13px;
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment:nth-child(6) .p-what-is-info__ico {
        left: 16px;
    }
}
@media screen and (max-width: 767px) {
    .p-what-is-info--assessment {
        padding-bottom: 18px;
    }
    .p-what-is-info--assessment:nth-child(4), .p-what-is-info--assessment:nth-child(5) {
        min-height: 110px;
        padding-top: 20px;
        padding-bottom: 16px;
    }
}
.p-what-is-info__ico {
    flex-shrink: 0;
    width: 60px;
    height: 65px;
    -o-object-fit: contain;
       object-fit: contain;
    margin-top: 3px;
}
.p-what-is-info__body {
    flex: 1;
    min-width: 0;
}
.p-what-is-info__ttl {
    color: var(--color-blue-1);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.025em;
}
.p-what-is-info__txt {
    margin-top: 6px;
    font-size: 14px;
    line-height: 24px;
}

/* ---------------------------------------------
*   p-what-is-assessment
--------------------------------------------- */
.p-what-is-assessment {
    background-color: var(--color-service-section-bg-1);
    box-shadow: 0 0 0 100vmax var(--color-service-section-bg-1);
    clip-path: inset(0 -100vmax);
    margin-top: 70px;
    padding-top: 69px;
    padding-bottom: 78px;
}
@media screen and (max-width: 767px) {
    .p-what-is-assessment {
        padding-bottom: 97px;
    }
    .p-what-is-assessment .p-what-is-intro {
        margin-top: 32px;
    }
}
.p-what-is-assessment__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px 33px;
    margin-top: 48px;
}
@media screen and (max-width: 767px) {
    .p-what-is-assessment__list {
        grid-template-columns: 100%;
        width: 78.6666666667vw;
        margin-inline: auto;
        justify-content: center;
        gap: 21px;
        margin-top: 30px;
    }
}

/* ---------------------------------------------
*   p-what-is-flow
--------------------------------------------- */
.p-what-is-flow {
    padding-top: 58px;
}
@media screen and (max-width: 767px) {
    .p-what-is-flow {
        padding-top: 39px;
    }
    .p-what-is-flow .p-what-is-intro {
        margin-top: 32px;
    }
}
.p-what-is-flow__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 50px 24px;
    margin-top: 65px;
}
@media screen and (max-width: 767px) {
    .p-what-is-flow__list {
        grid-template-columns: 100%;
        width: 78.6666666667vw;
        margin-inline: auto;
        justify-content: center;
        gap: 37px;
        margin-top: 43px;
    }
}
.p-what-is-flow__item {
    position: relative;
    box-sizing: border-box;
    min-height: 215px;
    padding: 32px 12px 18px;
    border: 1px solid var(--color-service-border-2);
    border-radius: 8px;
    background-color: var(--color-light-blue-1);
    text-align: center;
}
.p-what-is-flow__label {
    position: absolute;
    top: -17px;
    left: 50%;
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    width: 125px;
    height: 32px;
    border-radius: 16px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    font-size: 15px;
    font-weight: 500;
    line-height: 30px;
    transform: translateX(-50%);
}
.windows .p-what-is-flow__label {
    line-height: 27px;
}

.p-what-is-flow__num {
    font-size: 19px;
    font-weight: 500;
}
.p-what-is-flow__ico {
    display: block;
    width: 78px;
    height: 71px;
    margin: 0 auto 12px;
    -o-object-fit: contain;
       object-fit: contain;
}
.p-what-is-flow__ttl {
    color: var(--color-blue-1);
    font-size: 17px;
    font-weight: 700;
    line-height: 26px;
}
.p-what-is-flow__txt {
    margin-top: 6px;
    line-height: 24px;
}

.p-what-is-flow__note {
    margin-top: 16px;
    font-size: 12px;
    line-height: 22px;
}

/* ---------------------------------------------
*   p-what-is-details
--------------------------------------------- */
.p-what-is-details {
    background-color: var(--color-service-section-bg-1);
    box-shadow: 0 0 0 100vmax var(--color-service-section-bg-1);
    clip-path: inset(0 -100vmax);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    -moz-column-gap: 54px;
         column-gap: 54px;
    row-gap: 0;
    margin-top: 70px;
    padding-top: 78px;
    padding-bottom: 61px;
}
@media screen and (max-width: 1024px) {
    .p-what-is-details {
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
        margin-top: 73px;
        padding-top: 77px;
        padding-bottom: 76px;
    }
}
.p-what-is-details__card {
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    row-gap: 0;
    background-color: var(--color-white-1);
    padding: 42px 48px 35px;
    border: 1px solid var(--color-service-border-2);
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .p-what-is-details__card--price {
        box-sizing: border-box;
    }
}
.p-what-is-details__card .p-what-is__img {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .p-what-is-details__card {
        display: block;
        grid-row: auto;
        padding: 29px 35px 36px;
    }
    .p-what-is-details__card .p-what-is__img {
        margin-top: 19px;
    }
}
.p-what-is-details__ico {
    width: auto;
    height: 32px;
    margin-right: 15px;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
    .p-what-is-details__ico {
        height: 24px;
        margin-right: 10px;
    }
}
.p-what-is-details__sub {
    display: flex;
    align-items: center;
    margin-left: 0;
}
.p-what-is-details__doc-list {
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .p-what-is-details__doc-list {
        margin-top: 20px;
    }
}
.p-what-is-details__cost-list {
    margin-top: 32px;
    margin-right: -28px;
}
@media screen and (max-width: 767px) {
    .p-what-is-details__cost-list {
        margin-top: 20px;
        margin-right: 0;
    }
}

/* ---------------------------------------------
*   p-form
--------------------------------------------- */
.p-form {
    color: var(--color-base-1);
    font-size: calc(15 / var(--root-fz) * 1rem);
    font-family: var(--ff-noto);
    line-height: 1.5;
    --root-fz: 16;
}
.p-form__inner {
    max-width: 950px;
    margin-inline: auto;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .p-form__inner {
        padding-inline: 15px;
    }
}
.p-form__lead {
    margin: 32px auto 0;
    max-width: 800px;
    text-align: center;
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.7;
}
@media screen and (max-width: 767px) {
    .p-form__lead {
        margin-top: 38px;
        text-align: left;
    }
}
.p-form__subttl {
    margin-top: 48px;
    margin-bottom: 26px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-form__subttl {
        margin-top: 48px;
        margin-bottom: 26px;
    }
}
.p-form a:hover {
    text-decoration: none;
}
.p-form .p-form-contact__tel-link:-moz-any-link:hover {
    color: inherit;
}
.p-form .p-form-contact__tel-link:any-link:hover,
.p-form .c-cassette-article__link:hover,
.p-form .c-card-support:hover {
    color: inherit;
}

/* ---------------------------------------------
*   p-form-contact
--------------------------------------------- */
.p-form-contact {
    padding: 24px 0 0;
}
@media screen and (max-width: 767px) {
    .p-form-contact {
        padding: 0 0;
    }
}
.p-form-contact__banner {
    display: flow-root;
    max-width: 950px;
    margin-inline: auto;
    padding-inline: 30px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__banner {
        margin-top: -14px;
        padding-inline: 15px;
    }
}
.p-form-contact__acc {
    margin-top: 64px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__acc {
        margin-top: 48px;
    }
}
.p-form-contact__trigger {
    position: relative;
    display: block;
    align-content: center;
    box-sizing: border-box;
    margin-right: max(30px, (100% - 950px) / 2 + 3px);
    margin-left: auto;
    padding: 12px 60px 16px 54px;
    min-height: 80px;
    max-width: 893.25px;
    width: calc(100% - 114px);
    border: 0;
    border-radius: 10px;
    background-color: var(--color-blue-1);
    color: var(--color-white-1);
    text-align: center;
    font-weight: 500;
    font-size: calc(23.71 / var(--root-fz) * 1rem);
    font-family: inherit;
    line-height: 1.5;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-form-contact__trigger {
        transition: opacity var(--hover-duration);
    }
    .p-form-contact__trigger:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-form-contact__trigger:hover {
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger {
        padding: 44px 15px 60px;
        max-width: none;
        width: calc(100% - 30px);
        min-height: 166px;
        height: auto;
        max-height: none;
        font-size: calc(24 / var(--root-fz) * 1rem);
        line-height: 1.3;
        margin-inline: 15px;
    }
}
.p-form-contact__trigger--b {
    align-content: normal;
    margin: 0;
    padding: 48px 4px 57px;
    min-height: 180px;
    width: 100%;
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger--b {
        margin: 0;
        padding: 0;
        min-height: 0;
        width: 100%;
        border-radius: 0;
        background-color: var(--color-transparent-1);
        font-size: calc(12 / var(--root-fz) * 1rem);
        line-height: 1.2;
    }
}
.p-form-contact__trigger-txt {
    letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger-txt {
        position: relative;
        top: -1px;
    }
}
.p-form-contact__trigger-txt strong {
    font-weight: 700;
    font-size: calc(28 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger-txt strong {
        font-size: inherit;
    }
}
.p-form-contact__trigger-txt--b {
    display: block;
    letter-spacing: 0;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger-txt--b {
        top: 0;
    }
}
.p-form-contact__trigger-txt--b strong {
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__trigger-txt--b strong {
        font-size: inherit;
    }
}
.p-form-contact__highlight {
    color: var(--color-yellow-1);
}
@media screen and (max-width: 767px) {
    .p-form-contact__highlight {
        color: inherit;
    }
}
@media screen and (max-width: 767px) {
    .p-form-contact__highlight--b {
        color: var(--color-yellow-1);
    }
}
.p-form-contact__badge {
    position: absolute;
    top: -12.83px;
    left: -54.75px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    width: 102.56px;
    height: 102.56px;
    border: 2px solid var(--color-white-1);
    border-radius: 50%;
    background-color: var(--color-yellow-1);
    color: var(--color-blue-1);
    font-weight: 700;
    font-size: calc(18.28 / var(--root-fz) * 1rem);
    line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge {
        top: -23px;
        left: 50%;
        flex-direction: row;
        padding-right: 3px;
        max-width: 322px;
        width: calc(100% - 23px);
        height: 45px;
        border-radius: 9999px;
        font-size: calc(18 / var(--root-fz) * 1rem);
        gap: 15px;
        translate: -50% 0;
    }
}
.p-form-contact__badge--b {
    top: -44px;
    left: 50%;
    width: 92px;
    height: 92px;
    translate: -50% 0;
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge--b {
        top: 0;
        flex-direction: column;
        padding-right: 0;
        width: 40px;
        height: 40px;
        gap: 0;
    }
}
.p-form-contact__badge-lead {
    position: relative;
    top: 4.5px;
    transform: scaleX(0.97);
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-lead {
        top: 4px;
        letter-spacing: 0.01em;
    }
}
.p-form-contact__badge-lead--b {
    font-size: calc(15 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-lead--b {
        display: none;
    }
}
.p-form-contact__badge-bottom {
    font-weight: 400;
    font-size: calc(18 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-bottom {
        position: relative;
        top: 0px;
        font-weight: 500;
    }
}
.p-form-contact__badge-bottom b {
    font-size: calc(30 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-bottom b {
        margin-left: 3px;
        font-size: calc(28 / var(--root-fz) * 1rem);
        letter-spacing: 0.06em;
    }
}
.p-form-contact__badge-bottom--b {
    font-weight: 500;
    font-size: calc(15 / var(--root-fz) * 1rem);
    white-space: nowrap;
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-bottom--b {
        top: 0;
        font-size: calc(10 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-form-contact__badge-bottom--b b {
        margin-left: 0;
        letter-spacing: 0;
        font-size: calc(16 / var(--root-fz) * 1rem);
    }
}
.p-form-contact__arrow {
    position: absolute;
    top: 50%;
    right: 22px;
    max-width: 100%;
    width: 34.57px;
    height: auto;
    transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
    .p-form-contact__arrow {
        top: auto;
        right: calc(50% - 17.285px);
        bottom: 15px;
        transform: none;
    }
}
.p-form-contact__acc.is-open .p-form-contact__arrow {
    content: url("/img/common/ico_arrow_up.svg");
}

.p-form-contact__arrow--b {
    top: auto;
    right: calc(50% - 18px);
    bottom: 12px;
    width: 36px;
    transform: none;
}
@media screen and (max-width: 767px) {
    .p-form-contact__arrow--b {
        right: calc(50% - 6px);
        bottom: 2px;
        width: 12px;
    }
}
.p-form-contact__panel-inner {
    margin-top: 30px;
    padding: 55px 30px;
    background-color: var(--color-gray-1);
}
@media screen and (max-width: 767px) {
    .p-form-contact__panel-inner {
        margin-top: 28px;
        padding: 32px 15px;
    }
}
.p-form-contact__panel-inner--b {
    margin-top: 0;
}
.p-form-contact__panel-inner--preview {
    padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__panel-inner--preview {
        padding-right: calc(28 / var(--design-width) * 100vw);
        padding-bottom: 46px;
        padding-left: calc(28 / var(--design-width) * 100vw);
    }
}
.p-form-contact__form-ttl {
    color: var(--color-base-2);
    text-align: center;
    font-weight: 700;
    font-size: calc(24 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__form-ttl {
        font-size: calc(18 / var(--root-fz) * 1rem);
    }
}
.p-form-contact__form-ttl--preview {
    position: relative;
    top: -1px;
    left: 2px;
    letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
    .p-form-contact__form-ttl--preview {
        left: 0;
        letter-spacing: 0.07em;
        font-size: calc(24 / var(--root-fz) * 1rem);
        line-height: 1.3920833333;
    }
}
.p-form-contact__embed {
    margin: 32px auto 0;
    max-width: 780px;
}
.p-form-contact__embed--preview {
    position: relative;
    left: 1px;
    margin-top: 26px;
    max-width: 786.5px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__embed--preview {
        left: 0;
        margin-top: 37px;
        width: calc(693 / var(--design-width) * 100vw);
        max-width: 100%;
    }
}
.p-form-contact__tel {
    margin-top: 28px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-form-contact__tel {
        margin-top: 27px;
    }
}
.p-form-contact__tel-ttl {
    letter-spacing: 0.04em;
    font-weight: 500;
    font-size: calc(20 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__tel-ttl {
        position: relative;
        top: 1px;
        letter-spacing: 0.07em;
        font-weight: 500;
    }
}
.p-form-contact__tel-link {
    display: inline-flex;
    align-items: center;
    color: inherit;
    text-decoration: none;
    font-weight: 700;
    font-size: calc(34 / var(--root-fz) * 1rem);
    line-height: 1.5;
    gap: 7px;
    transform: translateX(-19px);
}
.p-form-contact__tel-link:-moz-any-link {
    cursor: pointer;
}
.p-form-contact__tel-link:any-link {
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-form-contact__tel-link:-moz-any-link {
        -moz-transition: opacity var(--hover-duration);
        transition: opacity var(--hover-duration);
    }
    .p-form-contact__tel-link:any-link {
        transition: opacity var(--hover-duration);
    }
    .p-form-contact__tel-link:-moz-any-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
    .p-form-contact__tel-link:any-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-form-contact__tel-link {
        letter-spacing: 0.05em;
        font-size: min(33 / var(--root-fz) * 1rem, 66 / var(--design-width) * 100vw);
        line-height: 1.5454545455;
        transform: none;
    }
}
.p-form-contact__tel-ico {
    max-width: 100%;
    width: 30px;
    height: auto;
    position: relative;
    top: 4px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__tel-ico {
        position: relative;
        top: 0;
        left: 4px;
        width: 29px;
    }
}
.p-form-contact__hours {
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .p-form-contact__hours {
        padding-left: 8px;
        font-size: calc(14 / var(--root-fz) * 1rem);
        letter-spacing: 0.005em;
    }
}
.p-form-contact__time {
    margin-inline: 4px;
}
.p-form-contact__inquiry {
    margin-top: 22px;
    font-size: calc(16 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__inquiry {
        margin-top: 15px;
        padding-right: 7px;
    }
}
.p-form-contact__inquiry a {
    color: var(--color-blue-1);
    text-decoration: underline;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-form-contact__inquiry a {
        margin-left: 3px;
    }
}
.p-form-contact__inquiry--b {
    margin-top: 33px;
    font-size: calc(14.35 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-contact__inquiry--b {
        margin-top: 15px;
        font-size: calc(16 / var(--root-fz) * 1rem);
    }
}
.p-form-contact--b {
    margin-top: 56px;
    padding: 0;
}
@media screen and (max-width: 767px) {
    .p-form-contact--b {
        margin-top: 24px;
    }
}
.p-form-contact__floating--b {
    position: fixed;
    right: 24px;
    bottom: 84px;
    z-index: 1040;
    width: 180px;
}
@media screen and (max-width: 767px) {
    .p-form-contact__floating--b {
        right: 15px;
        bottom: calc(149px + env(safe-area-inset-bottom, 0px));
        width: 80.5px;
    }
}
.p-form-contact__form-img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}
.p-form-contact__btn-img--b {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}
.p-form-contact__particle--b {
    font-size: calc(15 / var(--root-fz) * 1rem);
}

/* ---------------------------------------------
*   p-form-nav
--------------------------------------------- */
.p-form-nav {
    padding: 64px 30px 60px;
}
@media screen and (max-width: 767px) {
    .p-form-nav {
        padding: 35px 15px 33px;
    }
}
.p-form-nav__list {
    display: grid;
    max-width: 784px;
    list-style: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 24px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-form-nav__list {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}
.p-form-nav__link {
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 12px 50px 12px 20px;
    min-height: 91px;
    border-radius: 8px;
    background-color: var(--color-white-1);
    box-shadow: 0 0 7px var(--color-black-opacity-15);
    color: var(--color-blue-1);
    text-decoration: none;
    font-weight: 700;
    font-size: calc(17 / var(--root-fz) * 1rem);
    gap: 21px;
}
@media (hover: hover) and (pointer: fine), screen and (min-width: 768px) {
    .p-form-nav__link {
        transition: opacity var(--hover-duration);
    }
    .p-form-nav__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-form-nav__link {
        padding: 12px 24px 12px 20px;
        min-height: 80px;
        height: auto;
        max-height: none;
        font-size: min(15 / var(--root-fz) * 1rem, 30 / var(--design-width) * 100vw);
        gap: 15px;
    }
}
.p-form-nav__link:hover {
    color: var(--color-blue-1);
}
.p-form-nav__ico {
    position: relative;
    flex-shrink: 0;
    max-width: 100%;
    width: 52px;
    height: auto;
}
.p-form-nav__ico--solution {
    top: -2px;
}
@media screen and (max-width: 767px) {
    .p-form-nav__ico--solution {
        top: -1.75px;
    }
}
.p-form-nav__ico--point {
    margin-left: 4px;
    width: 47.5px;
    top: 2px;
}
.p-form-nav__ico--flow {
    top: 0px;
    margin-left: 4px;
    width: 47px;
}
@media screen and (max-width: 767px) {
    .p-form-nav__ico--flow {
        top: 1px;
    }
}
.p-form-nav__ico--support {
    top: -1.5px;
    margin-left: 2px;
}
@media screen and (max-width: 767px) {
    .p-form-nav__ico--support {
        top: 0.5px;
    }
}
.p-form-nav__txt {
    min-width: 0;
}
.p-form-nav__lead, .p-form-nav__particle {
    font-size: calc(14 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 767px) {
    .p-form-nav__lead, .p-form-nav__particle {
        font-size: min(12 / var(--root-fz) * 1rem, 24 / var(--design-width) * 100vw);
    }
}
.p-form-nav__arrow {
    position: absolute;
    top: calc(50% - 4.96px);
    right: 27.75px;
    max-width: 100%;
    width: 5.5px;
    height: auto;
    rotate: 90deg;
}
@media screen and (max-width: 767px) {
    .p-form-nav__arrow {
        top: calc(50% - 5.71px);
        right: 26.75px;
    }
}
.p-form-nav--b {
    padding-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-form-nav--b {
        padding-top: 40px;
    }
}

/* ---------------------------------------------
*   p-form-solution
--------------------------------------------- */
.p-form-solution {
    padding: 68px 0 0;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .p-form-solution {
        padding: 50px 0 0;
    }
}
.p-form-solution__lead {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .p-form-solution__lead {
        margin-top: 34px;
    }
}
.p-form-solution__reason-ttl {
    margin-top: 44px;
}
@media screen and (max-width: 767px) {
    .p-form-solution__reason-ttl {
        margin-top: 43px;
    }
}
.p-form-solution__summary-ttl {
    margin-top: 52px;
}
@media screen and (max-width: 767px) {
    .p-form-solution__summary-ttl {
        margin-top: 38px;
    }
}
.p-form-solution__btn {
    margin: 50px auto 0;
    max-width: 386px;
}
@media screen and (max-width: 767px) {
    .p-form-solution__btn {
        margin-top: 48px;
        width: calc(100% - 4px);
    }
}

/* ---------------------------------------------
*   p-form-voice
--------------------------------------------- */
.p-form-voice {
    padding-block: 48px 65px;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .p-form-voice {
        padding-block: 38px 42px;
    }
}
.p-form-voice__ttl {
    margin-bottom: -8px;
    text-align: center;
}

/* ---------------------------------------------
*   p-form-point
--------------------------------------------- */
.p-form-point {
    padding: 66px 0 82px;
}
@media screen and (max-width: 767px) {
    .p-form-point {
        padding: 41px 0 51px;
    }
}
.p-form-point__lead {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .p-form-point__lead {
        margin-top: 30px;
    }
}
.p-form-point__subttl {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-form-point__subttl {
        margin-top: 40px;
    }
}
.p-form-point__article {
    margin-top: 32px;
}

/* ---------------------------------------------
*   p-form-flow
--------------------------------------------- */
.p-form-flow {
    padding: 71px 0 56px;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .p-form-flow {
        padding: 41px 0 49px;
    }
}
.p-form-flow__lead {
    margin-top: 30px;
    text-align: center;
    font-weight: 500;
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.65;
}
@media screen and (max-width: 767px) {
    .p-form-flow__lead {
        margin-top: 44px;
        text-align: left;
    }
}
.p-form-flow__diagram {
    margin: 36px 3px 0 2px;
}
@media screen and (max-width: 767px) {
    .p-form-flow__diagram {
        margin: 27px 25px 0;
    }
}
.p-form-flow__article {
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .p-form-flow__article {
        margin-top: 37px;
    }
}
.p-form-flow__picture {
    display: block;
}
.p-form-flow__img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}

/* ---------------------------------------------
*   p-form-support
--------------------------------------------- */
.p-form-support {
    padding: 68px 0 73px;
}
@media screen and (max-width: 767px) {
    .p-form-support {
        padding: 42px 0 48px;
    }
}
.p-form-support__list {
    display: grid;
    margin-top: 40px;
    list-style: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(125px, auto);
    gap: 21px 27px;
    margin-inline: 1px;
}
@media screen and (max-width: 767px) {
    .p-form-support__list {
        margin-top: 40px;
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
        margin-inline: 0;
        gap: 22px;
    }
}
.p-form-support__item {
    display: grid;
}

/* ---------------------------------------------
*   p-form-articles
--------------------------------------------- */
.p-form-articles {
    padding: 60px 0 75px;
    background-color: var(--color-light-blue-1);
}
@media screen and (max-width: 767px) {
    .p-form-articles {
        padding: 41px 0 48px;
    }
}
.p-form-articles__ttl {
    padding-left: 52px;
}
@media screen and (max-width: 767px) {
    .p-form-articles__ttl {
        padding-left: 0;
    }
}
.p-form-articles__slider {
    margin-top: 30px;
    line-height: 1.6;
}
@media screen and (max-width: 767px) {
    .p-form-articles__slider {
        margin-top: 35px;
    }
}

/* ---------------------------------------------
*   p-form-ttl
--------------------------------------------- */
.p-form-ttl__kv {
    background-image: url("/img/sell/visit/promo/a/bg_ttl.png");
}
@media screen and (max-width: 767px) {
    .p-form-ttl__kv {
        background-image: none;
    }
}
.p-form-ttl__inner {
    max-width: 950px;
    padding-top: 75px;
    padding-bottom: 26px;
}
@media screen and (max-width: 767px) {
    .p-form-ttl__inner {
        padding-block: 15px 13px;
    }
}
.p-form-ttl__txt {
    margin-top: 45px;
}
@media screen and (max-width: 767px) {
    .p-form-ttl__txt {
        margin-top: 8px;
    }
}

/* ---------------------------------------------
*   js-tab-target
--------------------------------------------- */
.js-tab-target:not(.is-current) {
    display: none;
}

/* ---------------------------------------------
*   js-acc-target
--------------------------------------------- */
.js-acc-target {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target {
    animation: closeAccAnim 0.5s forwards;
}

.js-acc-scope.is-open .js-acc-target {
    animation: openAccAnim 0.5s forwards;
}

@keyframes openAccAnim {
    0% {
        height: 0px;
        visibility: hidden;
    }
    99% {
        height: var(--acc-body-height);
        visibility: visible;
    }
    100% {
        height: auto;
    }
}
@keyframes closeAccAnim {
    0% {
        height: var(--acc-body-height);
    }
    99% {
        visibility: visible;
    }
    100% {
        height: 0px;
        visibility: hidden;
    }
}

/* ---------------------------------------------
*   js-acc-section
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .js-acc-section::after {
        opacity: 1;
        transition: none;
    }
    .js-acc-section.is-open::after {
        opacity: 0;
        transition: opacity 0.5s ease;
    }
}

/* ---------------------------------------------
*   js-form-b-floating
--------------------------------------------- */
.js-form-b-floating {
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.4s ease, visibility 0s linear 0.4s;
    pointer-events: none;
}
.js-form-b-floating.is-visible {
    visibility: visible;
    opacity: 1;
    transition-duration: 0.8s, 0s;
    transition-timing-function: ease-in-out, linear;
    transition-delay: 0s;
    pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
    .js-form-b-floating {
        transition: none;
    }
}

@media print and (min-width: 768px), screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 767px), screen and (max-width: 767px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   tb-hide
--------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px), print and (min-width: 768px) and (max-width: 1024px) {
    .tb-hide {
        display: none !important;
    }
}

/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--10 {
        margin-top: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--15 {
        margin-top: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--20 {
        margin-top: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--25 {
        margin-top: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--30 {
        margin-top: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--35 {
        margin-top: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--40 {
        margin-top: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--45 {
        margin-top: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--50 {
        margin-top: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--55 {
        margin-top: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--60 {
        margin-top: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--65 {
        margin-top: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--70 {
        margin-top: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--75 {
        margin-top: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--80 {
        margin-top: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--85 {
        margin-top: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--90 {
        margin-top: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--95 {
        margin-top: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--100 {
        margin-top: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--105 {
        margin-top: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--110 {
        margin-top: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--115 {
        margin-top: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--120 {
        margin-top: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--125 {
        margin-top: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--130 {
        margin-top: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--135 {
        margin-top: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--140 {
        margin-top: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--145 {
        margin-top: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--150 {
        margin-top: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--155 {
        margin-top: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--160 {
        margin-top: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--165 {
        margin-top: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--170 {
        margin-top: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--175 {
        margin-top: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--180 {
        margin-top: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--185 {
        margin-top: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--190 {
        margin-top: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--195 {
        margin-top: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--200 {
        margin-top: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--205 {
        margin-top: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--210 {
        margin-top: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--215 {
        margin-top: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--220 {
        margin-top: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--225 {
        margin-top: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--230 {
        margin-top: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--235 {
        margin-top: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--240 {
        margin-top: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--245 {
        margin-top: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--250 {
        margin-top: calc(250 / var(--design-width) * 100vw) !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--10 {
        margin-bottom: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--15 {
        margin-bottom: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--20 {
        margin-bottom: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--25 {
        margin-bottom: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--30 {
        margin-bottom: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--35 {
        margin-bottom: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--40 {
        margin-bottom: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--45 {
        margin-bottom: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--50 {
        margin-bottom: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--55 {
        margin-bottom: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--60 {
        margin-bottom: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--65 {
        margin-bottom: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--70 {
        margin-bottom: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--75 {
        margin-bottom: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--80 {
        margin-bottom: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--85 {
        margin-bottom: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--90 {
        margin-bottom: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--95 {
        margin-bottom: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--100 {
        margin-bottom: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--105 {
        margin-bottom: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--110 {
        margin-bottom: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--115 {
        margin-bottom: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--120 {
        margin-bottom: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--125 {
        margin-bottom: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--130 {
        margin-bottom: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--135 {
        margin-bottom: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--140 {
        margin-bottom: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--145 {
        margin-bottom: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--150 {
        margin-bottom: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--155 {
        margin-bottom: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--160 {
        margin-bottom: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--165 {
        margin-bottom: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--170 {
        margin-bottom: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--175 {
        margin-bottom: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--180 {
        margin-bottom: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--185 {
        margin-bottom: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--190 {
        margin-bottom: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--195 {
        margin-bottom: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--200 {
        margin-bottom: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--205 {
        margin-bottom: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--210 {
        margin-bottom: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--215 {
        margin-bottom: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--220 {
        margin-bottom: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--225 {
        margin-bottom: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--230 {
        margin-bottom: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--235 {
        margin-bottom: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--240 {
        margin-bottom: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--245 {
        margin-bottom: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--250 {
        margin-bottom: calc(250 / var(--design-width) * 100vw) !important;
    }
}
/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: var(--color-white-1) !important;
}

/* ---------------------------------------------
*   font-color
--------------------------------------------- */
.fc-base-1 {
    color: var(--color-base-1);
}

.fc-base-2 {
    color: var(--color-base-2);
}

.fc-gray-1 {
    color: var(--color-gray-1);
}

.fc-gray-2 {
    color: var(--color-gray-2);
}

.fc-black-1 {
    color: var(--color-black-1);
}

.fc-white-1 {
    color: var(--color-white-1);
}

.fc-blue-1 {
    color: var(--color-blue-1);
}

.fc-yellow-1 {
    color: var(--color-yellow-1);
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-thin {
    font-weight: 200 !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-regular {
    font-weight: 400 !important;
}

.fw-normal {
    font-weight: 500 !important;
}

.fw-medium {
    font-weight: 600 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-black {
    font-weight: 900 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

/* ---------------------------------------------
*   c-table-compare
--------------------------------------------- */
.c-table-compare {
	--compare-label: calc(194 / 950 * 100%);
	--compare-first-col: calc(248 / 950 * 100%);
	--compare-gap: 8px;
	--compare-row: 56.76px;
	--compare-head: 59px;
	--compare-lead: 73px;
	--compare-font: 16px;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
}
.c-table-compare::-webkit-scrollbar {
	display: none;
}
.c-table-compare__table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	font-size: var(--compare-font);
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}
.c-table-compare__label-col {
	width: var(--compare-label);
}
.c-table-compare__agency-col {
	width: var(--compare-first-col);
}
.c-table-compare__corner {
	position: sticky;
	z-index: 2;
	left: 0;
	background-color: var(--color-white-1);
}
.c-table-compare__head {
	position: relative;
	isolation: isolate;
	padding: 0;
	height: var(--compare-head);
	border-left: var(--compare-gap) solid var(--color-white-1);
	--compare-head-bg: var(--color-compare-head-purchase);
	background-color: var(--color-transparent-1);
	font-weight: 600;
	color: var(--color-white-1);
	font-size: 20px;
	vertical-align: middle;
}
.c-table-compare__head::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: 10px 10px 0 0;
	background-color: var(--compare-head-bg);
	content: "";
}
.c-table-compare__head:nth-child(2) {
	border-left: 0;
	--compare-head-bg: var(--color-compare-head-agency);
	color: var(--color-base-1);
}
.c-table-compare__head:last-child {
	--compare-head-bg: var(--color-blue-1);
}
.c-table-compare__row {
	height: var(--compare-row);
}
.c-table-compare__row:first-child {
	height: var(--compare-lead);
}
.c-table-compare__label {
	position: sticky;
	z-index: 1;
	left: 0;
	padding: 0 10px 0 56px;
	border: 1px solid var(--color-compare-border);
	border-top: 0;
	background-color: var(--color-service-caution-bg-2);
	font-size: 15px;
	font-weight: 600;
	text-align: left;
	vertical-align: middle;
}
.c-table-compare__row:first-child .c-table-compare__label {
	border-top: 1px solid var(--color-compare-border);
}
.c-table-compare__ico {
	position: absolute;
	top: 50%;
	left: 14px;
	width: 30px;
	height: 32px;
	object-fit: contain;
	transform: translateY(-50%);
}
.c-table-compare__value {
	position: relative;
	padding: 0 12px;
	border-bottom: 0;
	border-left: var(--compare-gap) solid var(--color-white-1);
	background-color: var(--color-white-1);
	background-clip: padding-box;
	vertical-align: middle;
}
.c-table-compare__row:first-child .c-table-compare__value {
	padding-top: 6px;
	padding-bottom: 12px;
}
.c-table-compare__row:first-child .c-table-compare__value:nth-child(n + 3) {
	padding-bottom: 14px;
}
.c-table-compare__value b,
.c-table-compare__value strong {
	font-weight: inherit;
}
.c-table-compare__value::after {
	position: absolute;
	inset: 0;
	border-right: 1px solid var(--color-compare-border);
	border-bottom: 1px solid var(--color-compare-border);
	border-left: 1px solid var(--color-compare-border);
	pointer-events: none;
	content: "";
}
.c-table-compare__value:nth-child(2)::after {
	border-left: 0;
}
.c-table-compare__value:nth-child(2) {
	border-left: 0;
}
.c-table-compare__value:last-child {
	color: var(--color-blue-1);
}
.c-table-compare__row:nth-child(even) .c-table-compare__value:nth-child(2) {
	background-color: var(--color-compare-agency);
}
.c-table-compare__row:nth-child(even) .c-table-compare__value:nth-child(3) {
	background-color: var(--color-compare-purchase);
}
.c-table-compare__row:nth-child(even) .c-table-compare__value:last-child {
	background-color: var(--color-compare-direct);
}
.c-table-compare__highlight {
	display: inline-block;
	line-height: 27px;
	color: var(--color-black-1);
	font-size: 17px;
	--compare-mark: var(--color-compare-mark-agency);
	--compare-mark-size: 5px;
	--compare-mark-offset: 3px;
}
.c-table-compare__highlight-txt {
	padding-bottom: var(--compare-mark-offset);
	background-image: linear-gradient(var(--compare-mark), var(--compare-mark));
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 100% var(--compare-mark-size);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
.c-table-compare__value:nth-child(3) .c-table-compare__highlight {
	--compare-mark: var(--color-compare-mark-purchase);
}
.c-table-compare__value:last-child .c-table-compare__highlight {
	--compare-mark: var(--color-compare-mark-direct);
}
.c-table-compare__period {
	margin-left: 4px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 1px;
}
.c-table-compare__nowrap {
	white-space: nowrap;
}
.c-table-compare__value sup {
	top: -0.5em;
	font-size: 10px;
	font-weight: 400;
}
@media screen and (max-width: 767px) {
	.c-table-compare {
		--compare-label: calc(230 / 750 * 100vw);
		--compare-first-col: calc(328 / 750 * 100vw);
		--compare-gap: calc(12 / 750 * 100vw);
		--compare-row: calc(113.52 / 750 * 100vw);
		--compare-head: calc(118 / 750 * 100vw);
		--compare-lead: calc(146 / 750 * 100vw);
		--compare-font: calc(32 / 750 * 100vw);
		padding-right: calc(40 / 750 * 100vw);
		padding-bottom: 1px;
	}
	.c-table-compare__table {
		width: calc(1236 / 750 * 100vw);
	}
	.c-table-compare__head {
		font-size: calc(40 / 750 * 100vw);
	}
	.c-table-compare__label {
		padding: 0 calc(20 / 750 * 100vw) 0 calc(24 / 750 * 100vw);
		font-size: calc(30 / 750 * 100vw);
	}
	.c-table-compare__ico {
		display: none;
	}
	.c-table-compare__value {
		padding: 0 calc(18 / 750 * 100vw);
	}
	.c-table-compare__row:first-child .c-table-compare__value {
		padding-top: calc(12 / 750 * 100vw);
		padding-bottom: calc(24 / 750 * 100vw);
		vertical-align: top;
	}
	.c-table-compare__row:first-child .c-table-compare__value:nth-child(n + 3) {
		padding-bottom: calc(36 / 750 * 100vw);
	}
	.c-table-compare__highlight {
		line-height: calc(54 / 750 * 100vw);
		font-size: var(--compare-font);
		--compare-mark-size: calc(10 / 750 * 100vw);
		--compare-mark-offset: calc(6 / 750 * 100vw);
	}
	.c-table-compare__sp-line,
	.c-table-compare__period {
		display: block;
	}
	.c-table-compare__period {
		margin-left: 0;
		font-size: calc(28 / 750 * 100vw);
		letter-spacing: calc(2 / 750 * 100vw);
		white-space: nowrap;
	}
	.c-table-compare__value sup {
		font-size: calc(20 / 750 * 100vw);
	}
}

/* ---------------------------------------------
*   p-what-is-diff__table
--------------------------------------------- */
.p-what-is-diff__table {
	margin-top: 41px;
}

@media screen and (max-width: 767px) {
	.p-what-is-diff__table {
		margin-top: 39px;
		margin-right: -15px;
	}
}

/* ▼▼▼ 追加：かんたん無料査定受付フォーム iframe埋め込み用 ▼▼▼ */
.p-form-contact__iframe {
    display: block;
    width: 100%;
    height: 1770px;
    border: 0;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-form-contact__iframe {
        height: 1950px;
    }
}
.p-form-contact__embed--iframe {
    margin-top: 0;
}
@media screen and (max-width: 767px) {
    .p-form-contact__embed--iframe {
        margin-top: 0;
    }
}
/* ▲▲▲ 追加ここまで ▲▲▲ */

/* ---------------------------------------------
*   Page anchors
--------------------------------------------- */
[id^="anchor"]:not([id="anchor-acc-list"]),
[id^="toc-list-"],
[id="contents"],
[id="footer"] {
	scroll-margin-top: 40px;
}

@media screen and (max-width: 767px) {
	[id^="anchor"]:not([id="anchor-acc-list"]),
	[id^="toc-list-"],
	[id="contents"],
	[id="footer"] {
		scroll-margin-top: calc(
			var(--fixed-header-height) * 1px + 20px
		);
	}
}
