@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24..48,700,0,0");

/* 不用品買取LP - styles are intentionally scoped to avoid EC-CUBE conflicts. */
.kaitori-lp,
.kaitori-lp * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.kaitori-lp {
    color: #28352c;
    font-family: "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.85;
    padding-bottom: 72px;
}

.kaitori-lp h2,
.kaitori-lp h3,
.kaitori-lp p,
.kaitori-lp ul,
.kaitori-lp ol {
    margin-top: 0;
}

.kaitori-lp h2,
.kaitori-lp h3 {
    background: none !important;
    border: 0;
    color: #223028;
    height: auto;
    line-height: 1.45;
    margin-bottom: 0;
    padding: 0;
}

.kaitori-lp img {
    border: 0;
    display: block;
    height: auto;
    max-width: 100%;
}

.kaitori-lp a {
    -webkit-transition: opacity .2s ease, background-color .2s ease, -webkit-transform .2s ease;
    transition: opacity .2s ease, background-color .2s ease, transform .2s ease;
}

.kaitori-lp a:hover {
    opacity: .88;
}

.kaitori-hero {
    background: #050505;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 38px;
    min-height: 390px;
    overflow: hidden;
}

.kaitori-hero-copy {
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 42px 34px;
    width: 58%;
}

.kaitori-lp .kaitori-hero h2 {
    color: #fff;
    font-family: "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 42px;
    font-weight: 800;
    letter-spacing: .02em;
}

.kaitori-lp .kaitori-hero h2 span {
    color: #f2c94c;
}

.kaitori-hero-emphasis {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    margin: 10px 0 12px;
}

.kaitori-hero-image {
    min-height: 390px;
    overflow: hidden;
    width: 42%;
}

.kaitori-hero-image img {
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}

.kaitori-contact-actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
}

.kaitori-lp .kaitori-btn {
    border-radius: 999px;
    color: #fff !important;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.45;
    min-width: 156px;
    padding: 13px 20px;
    text-align: center;
    text-decoration: none !important;
}

.kaitori-lp .kaitori-btn-line {
    background: #238b4b;
}

.kaitori-lp .kaitori-btn-tel {
    background: #26332b;
}

.kaitori-intro {
    font-size: 16px;
    font-weight: bold;
    margin: 0 auto 70px;
    max-width: 860px;
    padding: 0 24px;
}

.kaitori-intro p {
    margin-bottom: 0;
}

.kaitori-section {
    margin-bottom: 78px;
}

.kaitori-section-heading {
    margin-bottom: 32px;
    text-align: center;
}

.kaitori-section-en {
    color: #6e8e61;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: .22em;
    margin-bottom: 4px;
}

.kaitori-lp .kaitori-section-heading h2 {
    font-size: 29px;
    font-weight: bold;
}

.kaitori-section-heading > p:last-child {
    margin: 8px 0 0;
}

.kaitori-items-section {
    background: #26332b;
    border: 1px solid #26332b;
    border-radius: 18px;
    padding: 46px 30px;
}

.kaitori-items-section .kaitori-section-en {
    color: #b8d2ad;
}

.kaitori-lp .kaitori-items-section .kaitori-section-heading h2 {
    color: #fff;
}

.kaitori-item-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 14px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    list-style: none;
    margin-bottom: 0;
    padding: 0;
}

.kaitori-item-list li {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    border-radius: 12px;
    -webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, .28);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .28);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    font-size: 15px;
    font-weight: bold;
    max-width: none;
    min-height: 104px;
    padding: 16px 20px;
    width: calc((100% - 28px) / 3);
}

.kaitori-item-list li:nth-child(-n+2) {
    width: calc(50% - 7px);
}

.kaitori-item-icon {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #edf3e9;
    border-radius: 50%;
    color: #557c45;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 16px;
    height: 50px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 12px;
    width: 50px;
}

.kaitori-item-icon img {
    height: 32px;
    width: 32px;
}

.kaitori-item-label {
    white-space: nowrap;
}

.kaitori-inkor-section {
    background: #26332b;
    border-radius: 20px;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: hidden;
}

.kaitori-inkor-image {
    min-height: 360px;
    overflow: hidden;
    width: 48%;
}

.kaitori-inkor-image img {
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}

.kaitori-inkor-copy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 38px 34px;
    width: 52%;
}

.kaitori-inkor-copy .kaitori-section-en {
    color: #b8d2ad;
}

.kaitori-lp .kaitori-inkor-copy h2 {
    color: #fff;
    font-size: 30px;
}

.kaitori-inkor-copy > p:last-child {
    margin-bottom: 0;
}

.kaitori-inkor-lead {
    color: #d9c08d;
    font-size: 17px;
    font-weight: bold;
    margin: 10px 0 16px;
}

.kaitori-concerns {
    background: #f0f4ec;
    color: #28352c;
    margin: 28px 28px 28px;
    padding: 30px 34px 26px;
    width: calc(100% - 56px);
}

.kaitori-lp .kaitori-concerns h3 {
    font-size: 21px;
    margin-bottom: 16px;
    text-align: center;
}

.kaitori-concerns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px 16px;
    list-style: none;
    margin-bottom: 18px;
    padding: 0;
}

.kaitori-concerns li {
    background: #fff;
    border-radius: 8px;
    -webkit-box-shadow: 0 5px 13px rgba(44, 58, 48, .12);
    box-shadow: 0 5px 13px rgba(44, 58, 48, .12);
    font-size: 17px;
    font-weight: bold;
    padding: 12px 16px 12px 36px;
    position: relative;
    width: calc(50% - 8px);
}

.kaitori-concerns li:before {
    color: #c29644;
    content: "✓";
    font-weight: bold;
    left: 13px;
    position: absolute;
    top: 12px;
}

.kaitori-concerns-answer {
    background: #557c45;
    border-radius: 8px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    margin: 0 auto;
    max-width: 630px;
    padding: 11px 18px;
    text-align: center;
}

.kaitori-flow-section {
    margin-left: auto;
    margin-right: auto;
    max-width: 1050px;
}

.kaitori-flow-image {
    width: 100%;
}

.kaitori-lp .kaitori-flow-image-pc {
    display: block;
}

.kaitori-lp .kaitori-flow-image-sp {
    display: none;
}

.kaitori-visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.kaitori-contact-summary {
    margin: 0;
    padding: 0 32px 0 0;
    width: calc(100% - 190px);
}

.kaitori-lp .kaitori-contact-summary h2 {
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 5px;
}

.kaitori-contact-summary ul {
    font-size: 17px;
    font-weight: bold;
    line-height: 1.65;
    list-style: none;
    margin-bottom: 0;
    padding: 0;
}

.kaitori-contact-summary li:before {
    content: "・";
}

.kaitori-contact-summary a {
    color: #3f6d3f;
}

.kaitori-contact-panel {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #f7f2e7;
    border: 1px solid #eadcc2;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 34px;
    padding: 38px 42px;
}

.kaitori-contact-copy {
    padding-right: 32px;
    width: calc(100% - 190px);
}

.kaitori-contact-kicker {
    color: #a56f26;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: .12em;
    margin-bottom: 4px;
}

.kaitori-lp .kaitori-contact-copy h2 {
    font-size: 27px;
    margin-bottom: 10px;
}

.kaitori-contact-copy > p:not(.kaitori-contact-kicker) {
    margin-bottom: 20px;
}

.kaitori-contact-actions .kaitori-btn-tel {
    font-size: 18px;
}

.kaitori-contact-actions .kaitori-btn-tel small {
    display: block;
    font-size: 10px;
    font-weight: normal;
    letter-spacing: .1em;
}

.kaitori-line-qr {
    text-align: center;
    width: 190px;
}

.kaitori-line-qr img {
    background: #fff;
    border: 1px solid #d8ddd2;
    margin: 0 auto;
    padding: 7px;
    width: 150px;
}

@media only screen and (max-width: 767px) {
    .kaitori-lp {
        font-size: 15px;
        padding: 0 10px 52px;
    }

    .kaitori-hero {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
        min-height: 0;
    }

    .kaitori-hero-copy,
    .kaitori-hero-image {
        width: 100%;
    }

    .kaitori-hero-copy {
        padding: 30px 22px;
    }

    .kaitori-lp .kaitori-hero h2 {
        font-size: 32px;
    }

    .kaitori-hero-image {
        min-height: 220px;
    }

    .kaitori-contact-actions {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .kaitori-lp .kaitori-btn {
        display: block;
        width: 100%;
    }

    .kaitori-intro {
        margin-bottom: 52px;
        padding: 0 6px;
    }

    .kaitori-section {
        margin-bottom: 56px;
    }

    .kaitori-items-section {
        padding: 34px 18px;
    }

    .kaitori-lp .kaitori-section-heading h2 {
        font-size: 25px;
    }

    .kaitori-item-list li {
        max-width: none;
        width: 100%;
    }

    .kaitori-item-list li:nth-child(-n+2) {
        width: 100%;
    }

    .kaitori-item-label {
        white-space: normal;
    }

    .kaitori-inkor-section {
        display: block;
    }

    .kaitori-inkor-image,
    .kaitori-inkor-copy {
        width: 100%;
    }

    .kaitori-inkor-image {
        min-height: 250px;
    }

    .kaitori-inkor-copy {
        padding: 30px 24px;
    }

    .kaitori-lp .kaitori-inkor-copy h2 {
        font-size: 26px;
    }

    .kaitori-pc-br {
        display: none;
    }

    .kaitori-concerns {
        margin: 20px 14px 14px;
        padding: 25px 20px 22px;
        width: calc(100% - 28px);
    }

    .kaitori-concerns li {
        font-size: 16px;
        padding-right: 0;
        width: 100%;
    }

    .kaitori-concerns-answer {
        font-size: 16px;
        text-align: left;
    }

    .kaitori-flow-image {
        width: 100%;
    }

    .kaitori-lp .kaitori-flow-image-pc {
        display: none;
    }

    .kaitori-lp .kaitori-flow-image-sp {
        display: block;
    }

    .kaitori-contact-panel {
        display: block;
        padding: 30px 22px;
    }

    .kaitori-contact-summary,
    .kaitori-line-qr {
        padding-right: 0;
        width: 100%;
    }

    .kaitori-lp .kaitori-contact-summary h2 {
        font-size: 19px;
    }

    .kaitori-line-qr {
        margin-top: 24px;
    }

    .kaitori-line-qr img {
        width: 140px;
    }
}

/* 2026-09 bright redesign inspired by the requested reference site. */

.kaitori-lp {
    color: #222;
}

.kaitori-lp h2,
.kaitori-lp h3 {
    color: #222;
}

.kaitori-hero {
    background: #fff;
    border: 5px solid #ee0271;
    display: block;
    margin-bottom: 34px;
    min-height: 0;
    overflow: hidden;
}

.kaitori-hero > img {
    height: auto;
    max-width: 100%;
    width: 100%;
}

.kaitori-hero.kaitori-hero--with-campaign {
    margin-bottom: 14px;
}

.kaitori-campaign-banner {
    margin: 0 auto 34px;
    max-width: 900px;
    overflow: hidden;
    width: 100%;
}

.kaitori-campaign-banner > a {
    display: block;
}

.kaitori-campaign-banner picture,
.kaitori-campaign-banner img {
    display: block;
    height: auto;
    width: 100%;
}

.kaitori-intro {
    background: #fff;
    border-bottom: 10px solid #ffd900;
    border-left: 14px solid #39b54a;
    color: #222;
    margin-bottom: 68px;
    max-width: none;
    padding: 24px 30px;
}

.kaitori-section-en {
    color: #168743;
    font-size: 13px;
    letter-spacing: .18em;
}

.kaitori-lp .kaitori-section-heading h2 {
    color: #ee0271;
    font-size: 31px;
}

.kaitori-section-heading h2:after {
    background: #ffd900;
    content: "";
    display: block;
    height: 8px;
    margin: 9px auto 0;
    width: 90px;
}

.kaitori-items-section {
    background: #ffd900;
    border: 6px solid #ee0271;
    padding: 44px 30px 38px;
}

.kaitori-items-section .kaitori-section-en {
    color: #168743;
}

.kaitori-lp .kaitori-items-section .kaitori-section-heading h2 {
    color: #ee0271;
}

.kaitori-item-list li {
    background: #fff;
    border: 3px solid #ee0271;
    box-shadow: none;
    color: #222;
}

.kaitori-item-icon {
    background: #39b54a;
    color: #fff;
}

.kaitori-item-icon img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.kaitori-inkor-section {
    background: #39b54a;
    border: 6px solid #168743;
    border-top: 14px solid #ee0271;
    color: #fff;
}

.kaitori-inkor-copy .kaitori-section-en {
    color: #ffd900;
}

.kaitori-inkor-lead {
    color: #ffd900;
}

.kaitori-concerns {
    background: #ffd900;
    color: #222;
}

.kaitori-concerns li {
    background: #fff;
    border-left: 8px solid #ee0271;
    box-shadow: none;
}

.kaitori-concerns li:before {
    color: #168743;
}

.kaitori-concerns-answer {
    background: #ee0271;
    color: #fff;
}

.kaitori-flow-section {
    max-width: 1100px;
}

.kaitori-flow-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.kaitori-flow-list > li {
    background: #fff;
    border: 5px solid #39b54a;
    border-top: 18px solid #ffd900;
    min-height: 250px;
    padding: 58px 24px 26px;
    position: relative;
    width: calc((100% - 96px) / 3);
}

.kaitori-flow-list > li:not(:last-child):after {
    border-bottom: 31px solid transparent;
    border-left: 31px solid #ee0271;
    border-top: 31px solid transparent;
    content: "";
    height: 0;
    position: absolute;
    right: -44px;
    top: calc(50% - 31px);
    width: 0;
    z-index: 2;
}

.kaitori-flow-no {
    background: #ee0271;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    left: 0;
    letter-spacing: .04em;
    line-height: 1;
    padding: 12px 18px;
    position: absolute;
    top: 0;
}

.kaitori-lp .kaitori-flow-list h3 {
    color: #ee0271;
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 12px;
    position: relative;
    z-index: 2;
}

.kaitori-flow-list p {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.8;
    margin: 0;
    position: relative;
    z-index: 2;
}

.kaitori-flow-icon {
    bottom: 10px;
    color: #168743;
    font-size: 66px;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    right: 16px;
    z-index: 1;
}

.kaitori-flow-icon-search {
    font-family: Arial, sans-serif;
    font-size: 82px;
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
}

.kaitori-contact-panel {
    background: #ffd900;
    border: 6px solid #ee0271;
    box-shadow: none;
}

.kaitori-lp .kaitori-contact-summary h2 {
    color: #ee0271;
}

.kaitori-contact-summary a {
    color: #087a39;
}

.kaitori-line-qr img {
    border: 4px solid #39b54a;
}

@media only screen and (max-width: 767px) {
    .kaitori-hero.kaitori-hero--with-campaign {
        margin-bottom: 10px;
    }

    .kaitori-campaign-banner {
        margin-bottom: 26px;
    }

    .kaitori-hero {
        border-width: 3px;
        margin-bottom: 26px;
    }

    .kaitori-intro {
        border-bottom-width: 8px;
        border-left-width: 9px;
        margin-bottom: 52px;
        padding: 19px 16px;
    }

    .kaitori-items-section {
        border-width: 4px;
        padding: 32px 14px;
    }

    .kaitori-item-list li {
        min-height: 86px;
        padding: 13px 14px;
    }

    .kaitori-inkor-section {
        border-width: 4px;
        border-top-width: 11px;
    }

    .kaitori-concerns {
        margin: 16px 10px 10px;
        padding: 22px 14px 18px;
        width: calc(100% - 20px);
    }

    .kaitori-concerns li {
        padding: 11px 8px 11px 34px;
    }

    .kaitori-flow-list {
        display: block;
    }

    .kaitori-flow-list > li {
        min-height: 210px;
        padding: 56px 20px 24px;
        width: 100%;
    }

    .kaitori-flow-list > li:not(:last-child) {
        margin-bottom: 64px;
    }

    .kaitori-flow-list > li:not(:last-child):after {
        border-left: 27px solid transparent;
        border-right: 27px solid transparent;
        border-top: 27px solid #ee0271;
        border-bottom: 0;
        bottom: -47px;
        left: calc(50% - 27px);
        right: auto;
        top: auto;
    }

    .kaitori-flow-icon {
        font-size: 58px;
    }

    .kaitori-flow-icon-search {
        font-size: 72px;
    }

    .kaitori-contact-panel {
        border-width: 4px;
    }
}

/* 2026-09 red-base refinement: solid fills, white type, no outlines. */
.kaitori-lp,
.kaitori-lp * {
    border: 0 !important;
    box-shadow: none !important;
}

.kaitori-hero {
    background: #ee0271;
}

.kaitori-intro {
    background: #ee0271;
    color: #fff;
    padding: 28px 32px;
}

.kaitori-section-heading {
    background: #ee0271;
    color: #fff;
    padding: 20px 14px;
}

.kaitori-section-en,
.kaitori-items-section .kaitori-section-en {
    color: #ffe000;
}

.kaitori-lp .kaitori-section-heading h2,
.kaitori-lp .kaitori-items-section .kaitori-section-heading h2 {
    color: #fff;
}

.kaitori-section-heading h2:after {
    background: #ffe000;
    height: 6px;
}

.kaitori-items-section {
    background: #ee0271;
    padding: 36px 26px 30px;
}

.kaitori-item-list {
    gap: 16px;
}

.kaitori-item-list li,
.kaitori-item-list li:nth-child(-n+2) {
    background: #ee0271;
    color: #fff;
    display: block;
    min-height: 270px;
    padding: 10px 10px 18px;
}

.kaitori-item-list li {
    width: calc((100% - 32px) / 3);
}

.kaitori-item-list li:nth-child(-n+2) {
    width: calc(50% - 8px);
}

.kaitori-item-icon {
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 205px;
    margin: 0 0 15px;
    width: 100%;
}

.kaitori-item-icon img {
    -webkit-filter: none;
    filter: none;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
}

.kaitori-item-label {
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    white-space: normal;
}

.kaitori-inkor-section {
    background: #ee0271;
    color: #fff;
}

.kaitori-inkor-copy {
    background: #ee0271;
}

.kaitori-inkor-copy .kaitori-section-en,
.kaitori-inkor-lead {
    color: #ffe000;
}

.kaitori-concerns {
    background: #ee0271;
    color: #fff;
}

.kaitori-lp .kaitori-concerns h3 {
    color: #fff;
}

.kaitori-concerns li {
    background: #ee0271;
    color: #fff;
}

.kaitori-concerns li:before {
    color: #ffe000;
}

.kaitori-concerns-answer {
    background: #ee0271;
    color: #fff;
}

.kaitori-contact-panel {
    background: #ee0271;
    color: #fff;
}

.kaitori-lp .kaitori-contact-summary h2 {
    color: #fff;
}

.kaitori-contact-summary a {
    color: #ffe000;
}

.kaitori-line-qr img {
    background: #fff;
    padding: 8px;
}

@media only screen and (max-width: 767px) {
    .kaitori-intro {
        padding: 21px 18px;
    }

    .kaitori-section-heading {
        padding: 17px 10px;
    }

    .kaitori-items-section {
        padding: 26px 12px 22px;
    }

    .kaitori-item-list li,
    .kaitori-item-list li:nth-child(-n+2) {
        min-height: 0;
        padding: 9px 9px 16px;
        width: 100%;
    }

    .kaitori-item-icon {
        height: 210px;
        margin-bottom: 13px;
    }

    .kaitori-contact-panel {
        padding: 28px 20px;
    }
}

/* 2026-09 annotated refinements: white information panels and restrained borders. */
.kaitori-intro {
    background: transparent;
    color: #222;
    padding: 10px 16px;
}

.kaitori-item-list li,
.kaitori-item-list li:nth-child(-n+2) {
    background: #fff;
    color: #222;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .18) !important;
}

.kaitori-item-label {
    color: #222;
}

.kaitori-concerns {
    background: #fff;
    color: #222;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .18) !important;
}

.kaitori-lp .kaitori-concerns h3 {
    color: #222;
}

.kaitori-concerns li {
    background: #f3f3f3;
    color: #222;
}

.kaitori-concerns-answer {
    background: #ee0271;
    color: #fff;
}

.kaitori-flow-section {
    border: 1px solid #222 !important;
    padding: 16px 16px 22px;
}

.kaitori-flow-section .kaitori-section-heading {
    margin-bottom: 28px;
}

.kaitori-contact-panel {
    background: #fff;
    border: 5px solid #ee0271 !important;
    color: #222;
}

.kaitori-lp .kaitori-contact-summary h2 {
    color: #222;
}

.kaitori-contact-summary a {
    color: #ee0271;
}

@media only screen and (max-width: 767px) {
    .kaitori-intro {
        padding: 8px 4px;
    }

    .kaitori-flow-section {
        padding: 9px 9px 15px;
    }

    .kaitori-flow-section .kaitori-section-heading {
        margin-bottom: 20px;
    }

    .kaitori-contact-panel {
        border-width: 5px !important;
        padding: 24px 17px;
    }
}

/* 2026-09 color unification and annotated spacing refinements. */
.kaitori-hero,
.kaitori-section-heading,
.kaitori-items-section,
.kaitori-inkor-section,
.kaitori-inkor-copy,
.kaitori-concerns-answer {
    background-color: #ee0271;
}

.kaitori-contact-panel {
    border-color: #ee0271 !important;
}

.kaitori-contact-summary a {
    color: #ee0271;
}

.kaitori-item-list li,
.kaitori-item-list li:nth-child(-n+2) {
    padding: 12px;
}

.kaitori-item-icon {
    height: 220px;
    margin-bottom: 10px;
    padding: 22px;
}

.kaitori-item-label {
    background: #ededed;
    padding: 10px 8px;
}

.kaitori-concerns li {
    padding-left: 46px;
}

.kaitori-concerns li:before {
    color: #ee0271;
    font-size: 24px;
    left: 14px;
    line-height: 1;
    top: 11px;
}

.kaitori-flow-section {
    border-color: #8a8a8a !important;
}

.kaitori-flow-section .kaitori-section-heading {
    margin: -16px -16px 28px;
}

@media only screen and (max-width: 767px) {
    .kaitori-item-list li,
    .kaitori-item-list li:nth-child(-n+2) {
        padding: 10px;
    }

    .kaitori-item-icon {
        height: 220px;
        margin-bottom: 9px;
        padding: 20px;
    }

    .kaitori-item-label {
        padding: 9px 7px;
    }

    .kaitori-concerns li {
        padding-left: 43px;
    }

    .kaitori-concerns li:before {
        font-size: 22px;
        left: 13px;
        top: 10px;
    }

    .kaitori-flow-section .kaitori-section-heading {
        margin: -9px -9px 20px;
    }
}

/* Extend each item title band to the edges of its white card. */
.kaitori-item-label {
    margin: 0 -12px -12px;
}

@media only screen and (max-width: 767px) {
    .kaitori-item-label {
        margin: 0 -10px -10px;
    }
}

/* Highlight the concerns heading with a fluorescent marker effect. */
.kaitori-lp .kaitori-concerns h3 {
    background: -webkit-linear-gradient(transparent 62%, #ffe000 62%, #ffe000 90%, transparent 90%) !important;
    background: linear-gradient(transparent 62%, #ffe000 62%, #ffe000 90%, transparent 90%) !important;
    color: #ee0271;
    display: table;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.4;
    margin: 0 auto 22px;
    padding: 0 7px;
}

@media only screen and (max-width: 767px) {
    .kaitori-lp .kaitori-concerns h3 {
        font-size: 21px;
        margin-bottom: 19px;
        padding: 0 4px;
    }
}

/* Use Noto Sans JP Black for all live-text headings. */
.kaitori-lp h2,
.kaitori-lp h3,
.kaitori-lp .kaitori-section-en {
    font-family: "Noto Sans JP", "Yu Gothic", YuGothic, Meiryo, sans-serif;
    font-weight: 900 !important;
}

/* 2026-09 rounded design system. */
.kaitori-lp {
    border-radius: 28px;
}

.kaitori-hero,
.kaitori-items-section,
.kaitori-inkor-section,
.kaitori-flow-section,
.kaitori-contact-panel {
    border-radius: 24px !important;
    overflow: hidden;
}

.kaitori-section-heading {
    border-radius: 18px !important;
}

.kaitori-items-section > .kaitori-section-heading {
    border-radius: 16px !important;
}

.kaitori-item-list li,
.kaitori-item-list li:nth-child(-n+2) {
    border-radius: 18px !important;
    overflow: hidden;
}

.kaitori-item-icon,
.kaitori-item-icon img {
    border-radius: 12px !important;
}

.kaitori-item-label {
    border-radius: 0 0 14px 14px !important;
}

.kaitori-inkor-image,
.kaitori-inkor-image img {
    border-radius: 0 !important;
    overflow: hidden;
}

.kaitori-concerns {
    border-radius: 20px !important;
}

.kaitori-concerns li {
    border-radius: 14px !important;
}

.kaitori-concerns-answer {
    border-radius: 0 !important;
    font-family: "Noto Sans JP", "Yu Gothic", YuGothic, Meiryo, sans-serif;
    font-size: 24px;
    font-weight: 900;
}

.kaitori-lp .kaitori-btn {
    border-radius: 999px !important;
}

.kaitori-flow-section .kaitori-section-heading {
    border-radius: 20px 20px 0 0 !important;
}

.kaitori-flow-section {
    border-radius: 24px !important;
}

.kaitori-flow-image,
.kaitori-flow-list > li {
    border-radius: 16px !important;
}

.kaitori-line-qr img {
    border-radius: 14px !important;
}

@media only screen and (max-width: 767px) {
    .kaitori-lp {
        border-radius: 20px;
    }

    .kaitori-hero,
    .kaitori-items-section,
    .kaitori-inkor-section,
    .kaitori-flow-section,
    .kaitori-contact-panel {
        border-radius: 20px !important;
    }

    .kaitori-section-heading {
        border-radius: 15px !important;
    }

    .kaitori-flow-section {
        border-radius: 20px !important;
    }
}

/* 2026-09 assessment CTAs and prominent contact options. */
.kaitori-assessment-cta {
    margin: -42px auto 30px;
    text-align: center;
}

.kaitori-assessment-cta a {
    background: #e80039;
    border: 4px solid #a20050 !important;
    border-radius: 999px !important;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, .38), 0 7px 0 #7f003f, 0 15px 24px rgba(0, 0, 0, .24) !important;
    color: #fff !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-family: "Noto Sans JP", "Yu Gothic", YuGothic, Meiryo, sans-serif;
    font-size: 31px;
    font-weight: 900 !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1;
    min-width: 430px;
    padding: 19px 62px 21px;
    text-shadow: 3px 3px 0 #7f003f;
    text-decoration: none !important;
}

.kaitori-assessment-cta a:before,
.kaitori-assessment-cta a:after {
    direction: ltr;
    -ms-flex: 0 0 53px;
    flex: 0 0 53px;
    font-family: "Material Symbols Rounded";
    font-feature-settings: "liga";
    font-size: 53px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: normal;
    line-height: 1;
    position: relative;
    text-align: center;
    text-transform: none;
    top: 2px;
    vertical-align: 0;
    white-space: nowrap;
    width: 53px;
    word-wrap: normal;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
}

.kaitori-assessment-cta a:before {
    content: "search";
    margin-right: 6px;
}

.kaitori-assessment-cta a:after {
    content: "chevron_right";
    margin-left: 6px;
}

.kaitori-assessment-cta a:hover {
    opacity: 1;
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
}

.kaitori-contact-panel {
    display: block;
    padding: 36px;
    scroll-margin-top: 24px;
}

.kaitori-contact-heading {
    margin-bottom: 24px;
    text-align: center;
}

.kaitori-contact-heading .kaitori-contact-kicker {
    color: #ee0271;
    font-weight: 900;
    margin-bottom: 2px;
}

.kaitori-lp .kaitori-contact-heading h2 {
    color: #222;
    font-size: 29px;
    font-weight: 900;
}

.kaitori-contact-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}

.kaitori-contact-option {
    border-radius: 20px !important;
    padding: 20px;
    width: calc(50% - 10px);
}

.kaitori-contact-line {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #f2fff7;
    border: 3px solid #06c755 !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
}

.kaitori-contact-option-copy {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.kaitori-contact-option-copy > p:last-child {
    line-height: 1.65;
    margin-bottom: 0;
}

.kaitori-contact-label {
    border-radius: 999px !important;
    color: #fff;
    display: inline-block;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .08em;
    margin-bottom: 8px;
    padding: 5px 14px;
}

.kaitori-contact-line .kaitori-contact-label {
    background: #06c755;
}

.kaitori-lp .kaitori-contact-option h3 {
    font-size: 23px;
    line-height: 1.45;
    margin-bottom: 8px;
}

.kaitori-lp .kaitori-contact-line h3 {
    color: #087a39;
}

.kaitori-contact-line .kaitori-line-qr {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 110px;
}

.kaitori-contact-line .kaitori-line-qr img {
    border: 0 !important;
    padding: 6px;
    width: 110px;
}

.kaitori-contact-phone {
    background: #fff4f9;
    border: 3px solid #ee0271 !important;
    text-align: center;
}

.kaitori-contact-phone .kaitori-contact-label,
.kaitori-contact-phone-link {
    background: #ee0271;
}

.kaitori-lp .kaitori-contact-phone h3 {
    color: #ee0271;
}

.kaitori-contact-phone-link {
    border-radius: 16px !important;
    color: #fff !important;
    display: block;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.2;
    margin: 14px 0;
    padding: 13px 12px;
    text-decoration: none !important;
}

.kaitori-contact-phone-link small {
    display: block;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: .08em;
    margin-bottom: 3px;
}

.kaitori-contact-area {
    background: #fff;
    border-radius: 14px !important;
    line-height: 1.6;
    margin: 0;
    padding: 12px 14px;
}

.kaitori-contact-area strong,
.kaitori-contact-area span {
    display: block;
}

.kaitori-contact-area strong {
    color: #ee0271;
    font-size: 14px;
}

.kaitori-contact-area span {
    font-size: 15px;
    font-weight: bold;
}

.kaitori-contact-company {
    border-top: 1px solid #d8ddd2 !important;
    display: block;
    font-family: "Noto Sans JP", "Yu Gothic", YuGothic, Meiryo, sans-serif;
    font-size: 15px;
    font-weight: 700;
    margin-top: 24px;
    padding-top: 18px;
    text-align: center;
}

.kaitori-contact-company p {
    margin-bottom: 0;
}

.kaitori-contact-company .kaitori-contact-company-label {
    color: #ee0271;
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 5px;
}

@media only screen and (max-width: 1072px) {
    .kaitori-contact-options {
        display: block;
    }

    .kaitori-contact-option {
        width: 100%;
    }

    .kaitori-contact-option + .kaitori-contact-option {
        margin-top: 20px;
    }

    .kaitori-contact-phone-link {
        white-space: nowrap;
    }
}

@media only screen and (max-width: 767px) {
    .kaitori-concerns-answer {
        font-size: 20px;
    }

    .kaitori-assessment-cta {
        margin: -30px auto 22px;
    }

    .kaitori-assessment-cta a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        font-size: 26px;
        min-width: 0;
        padding: 16px 24px 18px;
        width: 100%;
    }

    .kaitori-contact-panel {
        padding: 25px 16px;
    }

    .kaitori-contact-heading {
        margin-bottom: 18px;
    }

    .kaitori-lp .kaitori-contact-heading h2 {
        font-size: 24px;
    }

    .kaitori-contact-options {
        display: block;
    }

    .kaitori-contact-option {
        padding: 20px 16px;
        width: 100%;
    }

    .kaitori-contact-option + .kaitori-contact-option {
        margin-top: 16px;
    }

    .kaitori-contact-line {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
    }

    .kaitori-contact-line .kaitori-line-qr,
    .kaitori-contact-line .kaitori-line-qr img {
        width: 140px;
    }

    .kaitori-lp .kaitori-contact-option h3 {
        font-size: 21px;
    }

    .kaitori-contact-phone-link {
        font-size: 25px;
    }

    .kaitori-contact-company {
        display: block;
        text-align: center;
    }
}

/* 2026-09 semantic purchase flow: exact copy and unified magenta text. */
.kaitori-flow-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    list-style: none;
    margin: 0;
    padding: 8px 6px 10px;
}

.kaitori-flow-list > li {
    background: #fff;
    border: 1px solid #d8ddd2 !important;
    border-radius: 14px !important;
    box-shadow: 0 7px 15px rgba(0, 0, 0, .14) !important;
    min-height: 210px;
    padding: 22px 18px 62px;
    position: relative;
    width: calc((100% - 60px) / 3);
}

.kaitori-flow-list > li:not(:last-child):after {
    border-bottom: 18px solid transparent;
    border-left: 18px solid #ee0271;
    border-right: 0;
    border-top: 18px solid transparent;
    bottom: auto;
    left: auto;
    right: -25px;
    top: calc(50% - 18px);
}

.kaitori-lp .kaitori-flow-list h3 {
    color: #ee0271;
    font-size: 18px;
    line-height: 1.45;
    margin-bottom: 10px;
    position: relative;
    z-index: 2;
}

.kaitori-lp .kaitori-flow-list h3 span {
    color: #ee0271;
}

.kaitori-flow-list p {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.7;
    margin: 0;
    position: relative;
    z-index: 2;
}

.kaitori-flow-card-icon {
    bottom: 12px;
    color: #b5b5b5;
    direction: ltr;
    font-family: "Material Symbols Rounded";
    font-feature-settings: "liga";
    font-size: 48px;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    position: absolute;
    right: 14px;
    text-transform: none;
    white-space: nowrap;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
    .kaitori-flow-list {
        display: block;
        padding: 5px 3px 8px;
    }

    .kaitori-flow-list > li {
        min-height: 180px;
        padding: 22px 20px 58px;
        width: 100%;
    }

    .kaitori-flow-list > li:not(:last-child) {
        margin-bottom: 56px;
    }

    .kaitori-flow-list > li:not(:last-child):after {
        border-bottom: 0;
        border-left: 18px solid transparent;
        border-right: 18px solid transparent;
        border-top: 18px solid #ee0271;
        bottom: -38px;
        left: calc(50% - 18px);
        right: auto;
        top: auto;
    }

    .kaitori-lp .kaitori-flow-list h3 {
        font-size: 20px;
    }

    .kaitori-flow-list p {
        font-size: 15px;
    }

    .kaitori-flow-card-icon {
        font-size: 44px;
    }
}

@media only screen and (min-width: 768px) {
    .kaitori-item-list li,
    .kaitori-item-list li:nth-child(-n+2) {
        width: calc(50% - 8px);
    }

    .kaitori-item-list li:nth-child(n+5) {
        width: calc((100% - 32px) / 3);
    }
}
