body {
    overflow-x: hidden;
}

.element {
    overflow: hidden;
    width: 100%;
    min-width: var(--element-width);
    /* min-height: 15075px; */
    padding: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    --str-ppl: #8549A0;
    --element-width: 402px;

}

@media (min-width: 650px) and (max-width: 1279px) {
    .element {
        transform-origin: top center;
        transform: scale(1.592);
        max-width: 62.5dvw;
            --pc-canvas-width: min(100dvw, 402px);
}
.img-333 {
    width: 100%;
}

}

@media (min-width: 1280px) {
  .sp_under_nav {
    display: none;
  }

    .element {
        --element-width: 100%;
        --pc-canvas-width: min(100dvw, 1280px);
        width: var(--pc-canvas-width);
        max-width: 1280px;
        min-width: 0;
        margin-inline: auto;
    }
}

/* .sp_under_nav {
  width: min(62.5dvw, 640px);
  margin: auto;
}
 */
/* .element .frame {
  display: flex;
  margin-top: 41px;
  width: 414px;
  height: 14213px;
  position: relative;
  flex-direction: column;
  align-items: center;
  gap: 6px;
} */

/* .element .div {
  display: inline-flex;
  flex-direction: column;
  height: 3812px;
  align-items: flex-start;
  position: relative;
} */

.element .frame-2 {
    display: flex;
    flex-direction: column;
    height: 360px;
    align-items: flex-start;
    justify-content: center;
    position: relative;
    align-self: stretch;
    width: var(--pc-canvas-width);
    background: linear-gradient(180deg, #f0f3f2 20%, #ffffff 50%), url(img/fv-sp.webp);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: contain;
    background-blend-mode: multiply;
    z-index: 10;
}

.element .fv {
    display: flex;
    flex-direction: column;
    width: var(--element-width);
    height: 290px;
    align-items: flex-start;
    gap: 5px;
    padding: 0px 0px 20px;
    position: relative;
    margin-top: -75px;

}

.element .header {
    display: flex;
    flex-direction: column;
    width: 158px;
    height: 47px;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 13px;
    position: relative;
    background-color: transparent;
}

.element .logo {
    position: relative;
    width: 127px;
    height: 39px;
    margin-bottom: -12px;
    aspect-ratio: 3.26;
}

.element .frame-3 {
    display: flex;
    flex-direction: column;
    height: 477px;
    align-items: flex-start;
    gap: 2px;
    position: relative;
    align-self: stretch;
    width: 100%;
    margin-top: 20px;

}

.element .frame-4 {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
    gap: 16px;
    padding: 0px 0px 0px 24px;
    position: relative;
    flex: 0 0 auto;
}

.element .text-wrapper {
    position: relative;
    width: fit-content;
    margin-top: -1px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    font-size: px;
    color: #181616;
    letter-spacing: 2.24px;
    line-height: 44.8px;
}

.element .frame-4 .text-wrapper {
    position: relative;
    width: fit-content;
    margin-top: -1px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    font-size: 26.5px;
    color: #181616;
    letter-spacing: 0px;
    line-height: 44.8px;
}


.element .frame-4 span {
    padding-top: 20px;
}

.element .frame-4 .text-wrapper .text-bottom {
    font-size: 30px;
    letter-spacing: 1.6px;
}

.element .frame-4 .text-wrapper span.price {
    color: transparent;
    background: linear-gradient(90deg, #AF32D1 0%, #A333C1 100%, #7A378C 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.element .frame-4 .text-wrapper span.price span {
    font-size: 48px;
    letter-spacing: -2.8px;
}


.element .frame-5 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 6px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .text-wrapper-2 {
    position: relative;
    width: 292px;
    height: 19px;
    margin-top: -1px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #af2376;
    font-size: 18px;
    letter-spacing: 2.88px;
    line-height: normal;
    white-space: nowrap;
}

.element .text-wrapper-3 {
    position: relative;
    width: 272px;
    height: 19px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #af2376;
    font-size: 18px;
    letter-spacing: 2.88px;
    line-height: normal;
    white-space: nowrap;
}

.element .group {
    position: relative;
    width: 100%;
    height: 100%;
    right: 0;
    margin-bottom: 20px;

    background-image: url(./img/vector-233.svg);
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
}

.element .frame-6 {
    display: flex;
    width: 396.87px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    position: relative;
    flex: 0 0 auto;
}

.element .group-2 {
    position: relative;
    width: 111.54px;
    height: 104.5px;
}

.element .group-3 {
    position: absolute;
    width: 112px;
    height: 100%;
    margin: auto;
    justify-content: center;
}

.element .rectangle {
    position: absolute;
    width: 114px;
    height: 100%;
    background-color: #6b5b52;
    border: 0.35px solid;
    border-color: #3c271b;
}

.element .rectangle-2 {
    position: relative;
    width: 112px;
    height: 96%;
    background-color: #ffffff;
    border-radius: 2.35px;
    margin: auto;
}

.element .frame-7 {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 34px;
    left: calc(50.00% - 44px);
}

.element .ROAS {
    position: relative;
    width: fit-content;
    margin-top: -1px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 10.9px;
    text-align: center;
    line-height: 10.9px;
}

.element .span {
    letter-spacing: 0.16px;
      font-weight: 700;

}

.element .text-wrapper-4 {
    font-size: 13.6px;
    letter-spacing: 0.06px;
    line-height: 13.6px;
}

.element .p {
    position: relative;
    width: fit-content;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 36px;
    text-align: center;
    letter-spacing: 0.72px;
    line-height: 39.6px;
    white-space: nowrap;
}

.element .text-wrapper-5 {
    color: #b2307e;
    letter-spacing: 0.26px;
}

.element .text-wrapper-6 {
    color: #752f92;
    font-size: 17.6px;
    letter-spacing: 0.06px;
    line-height: 19.4px;
}

.element .vector {
    position: absolute;
    top: 8px;
    left: 45px;
    width: 20px;
    height: 20px;
    aspect-ratio: 1;
}

.element .group-4 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 56px);
    width: 114px;
    height: 104px;
}

.element .div-2 {
    position: absolute;
    top: 37px;
    left: calc(50.00% - 55px);
    width: 110px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 13.4px;
    text-align: center;
    line-height: 17.4px;
}

.element .text-wrapper-7 {
    letter-spacing: 0.23px;
    font-size: 10px;
    color: #af2376;

}

.element .text-wrapper-8 {
    letter-spacing: -0.48px;
    color: #af2376;

}

.element .group-5 {
    position: relative;
    /* left: calc(50.00% - 56px); */
    width: 112px;
    height: 104px;
}

.element .frame-8 {
    display: flex;
    flex-direction: column;
    width: 90px;
    align-items: center;
    justify-content: center;
    gap: 3px;
    position: absolute;
    top: 34px;
    left: calc(50.00% - 45px);
}

.element .text-wrapper-9 {
    position: relative;
    align-self: stretch;
    margin-top: -1px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 10.6px;
    text-align: center;
    letter-spacing: 1.37px;
    line-height: 10.6px;
}

.element .div-3 {
    position: relative;
    width: 98px;
    margin-left: -4px;
    margin-right: -4px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 25.7px;
    text-align: center;
    letter-spacing: 0.51px;
    line-height: 23.1px;
}

.element .text-wrapper-10 {
    color: #b2307e;
    letter-spacing: 0.13px;
}

.element .text-wrapper-11 {
    color: #b2307e;
    font-size: 12.9px;
    letter-spacing: 0.03px;
    line-height: 11.6px;
}

.element .frame-9 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
    margin-bottom: -69.5px;
}

.element .text-cta {
    position: relative;
    width: 242px;
    height: 21px;
}

.element .text-wrapper-12 {
    position: absolute;
    top: 0;
    width: 100%;

    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #191616;
    font-size: 15px;
    text-align: center;
    letter-spacing: 1.95px;
    line-height: 21px;
    white-space: nowrap;
}

.element .text-wrapper-12a {
    position: absolute;
    top: 0;
    width: 100%;

    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #FFFFFF;
    font-size: 15px;
    text-align: center;
    letter-spacing: 1.95px;
    line-height: 21px;
    white-space: nowrap;
}

.element .vector-2-2 {
    position: absolute;
    top: 5px;
    left: 239px;
    width: 7px;
    height: 13px;
}

.element .vector-2 {
    position: absolute;
    top: 5px;
    left: -5px;
    width: 7px;
    height: 13px;
}

.element .button-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
    margin-bottom: 6px;
}

.frame .button:focus-visible,
.frame .button-wrapper a:focus-visible {
    outline: 2px solid #ffffff !important;
    outline-offset: 3px;
    border-radius: 60px;
}

.frame .button-wrapper a {
    display: inline-flex;
}

.frame .button {
    display: flex;
    width: 347px;
    height: 52px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    border-radius: 60px;
    box-shadow: 0px 2px 4px #07030340;
    background: linear-gradient(90deg,
            rgb(66, 233, 57) 0%,
            rgb(27, 135, 81) 100%);
}

.frame .btn-WEB {
    display: flex;
    width: 347px;
    height: 52px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    border-radius: 60px;
    box-shadow: 0px 2px 4px #07030340;
    background: linear-gradient(90deg,
            rgba(65, 169, 234, 1) 0%,
            rgb(26, 85, 186) 100%);
}


.frame .LINE,
.frame .WEB {
    position: relative;
    width: fit-content;
    margin-top: -16px;
    margin-bottom: -14px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 18px;
    line-height: normal;

}

.element .button {
    margin-top: -2px;
    position: relative;
    width: 355px;
    height: 60px;
    margin-bottom: -6px;
}

.element .client_voice {
    display: flex;
    flex-direction: column;
    width: var(--element-width);
    height: 720px;
    align-items: center;
    gap: 16px;
    padding: 0px 20px 26px;
    position: relative;
    margin-bottom: -36px;
    overflow: hidden;
    /* background: linear-gradient(180deg,
            rgba(255, 255, 255, 1) 26%,
            rgba(241, 244, 252, 1) 35%); */
}

.element .frame-11 {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 25px;
    position: relative;
    flex: 0 0 auto;
    margin-left: -488.5px;
    margin-right: -488.5px;
}

.element .frame-12 {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    flex: 0 0 auto;
}

.element .group-7 {
    position: relative;
    width: 485px;
    height: 170px;
}

.element .img-2 {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: var(--element-width);
    height: 170px;
    background-blend-mode: multiply;
    aspect-ratio: 2.85;
}

.element .rectangle-3 {
    position: absolute;
    top: 69px;
    left: 50%;
    transform: translateX(-50%);
    width: 420px;
    height: 101px;
    background: linear-gradient(180deg,
            rgba(247, 243, 249, 0) 0%,
            rgba(242, 244, 251, 0.78) 48%,
            rgba(255, 255, 255, 1) 98%);
}

.element .group-8 {
    position: absolute;
    top: 27px;
    left: 50%;
    transform: translateX(-50%);
    width: 375px;
    height: 32px;
}

.element .rectangle-4 {
    position: absolute;
    top: 0;
    left: 0;
    width: 373px;
    height: 32px;
    border-radius: 4px;
    background: linear-gradient(90deg,
            rgba(16, 59, 126, 0) 0%,
            rgba(24, 51, 130, 1) 15%,
            rgba(65, 13, 149, 1) 87%,
            rgba(211, 193, 238, 1) 100%);
}

.element .div-4 {
    position: absolute;
    top: 9px;
    left: 51px;
    width: 272px;
    height: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 400;
    color: #eaf0fb;
    font-size: 19.4px;
    text-align: center;
    line-height: 27.1px;
    white-space: nowrap;
}

.element .text-wrapper-13 {
    font-weight: 700;
    letter-spacing: 0.41px;
}

.element .text-wrapper-14 {
    font-weight: 700;
    letter-spacing: 0;
}

.element .text-wrapper-15 {
    letter-spacing: 0;
}

.element .text-wrapper-16 {
    font-weight: 700;
    letter-spacing: -0.34px;
}

.element .text-wrapper-17 {
    letter-spacing: -0.34px;
}

.element .group-9 {
    position: absolute;
    top: 62px;
    left: calc(50.00% - 140px);
    margin: 0 auto;
    width: 280px;
    height: 78px;
    text-align: center;
}

.element .rectangle-5 {
    position: absolute;
    top: 35px;
    left: 44px;
    width: 160px;
    height: 30px;
    border-radius: 2px;
    background: linear-gradient(90deg,
            rgba(178, 48, 126, 1) 0%,
            rgba(92, 58, 147, 1) 100%);
}

.element .div-5 {
    position: absolute;
    top: 0;
    height: 77px;
    left: calc(50.00% - 182px);
    width: 364px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 22.3px;
    text-align: center;
    line-height: 26.7px;

    letter-spacing: 12%;

}

.element .text-wrapper-18 {
    color: #2a1515;
}

.element .text-wrapper-19 {
    color: #ebf1fd;
    font-size: 23px;
    line-height: 46.8px;
}

.element .text-wrapper-20 {
    color: #2a1515;
    padding-left: 0px;
    font-size: 23px;
    line-height: 46.8px;
}

.element .text-wrapper-21 {
    color: #2a1515;
}

.element .group-10 {
    position: relative;
    width: 390px;
    height: 9px;
}

.element .vector-3 {
    position: absolute;
    top: 1px;
    left: calc(50.00% - 195px);
    width: 390px;
    height: 1.5px;
}

.element .polygon {
    position: absolute;
    top: 2px;
    left: calc(50.00% - 5px);
    width: 10px;
    height: 7px;
}

.element .logo-list {
    position: relative;
    width: var(--element-width);
    height: 270px;
    aspect-ratio: 6.6;
    overflow: hidden;
}

.element .logo-list .swiper-wrapper {
    transition-timing-function: linear;
}

.element .logos-client {
    width: var(--element-width);
    height: 270px;
}

.element .logos-client img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.element .text-wrapper-22 {
    position: relative;
    width: 100%;
    height: 32px;
    margin-top: 28px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 870;
    color: #191616;
    font-size: 24px;
    text-align: center;
    letter-spacing: 3.92px;
    line-height: 36.4px;
}

.element .text-wrapper-220 {
    color: #000000;
    font-size: 16px;
    margin:20px auto;
}

.element .frame-13 {
    /* display: inline-flex; */
    flex-direction: column;
    align-items: center;
    gap: 24px;
    position: relative;
    flex: 0 0 auto;
}

.element .frame-14 {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    position: relative;
    flex: 0 0 auto;
}

.element .group-11 {
    position: relative;
    width: 356px;
    height: 182px;
}

.element .group-12 {
    position: relative;
    height: 182px;
}

.element .firefly-gemini-flash {
    position: absolute;
    top: 0;
    left: 0;
    width: 344px;
    height: 182px;
    aspect-ratio: 1.89;
}

.element .rectangle-6 {
    position: absolute;
    top: 0;
    left: 49px;
    width: 307px;
    height: 182px;
    border-radius: 0px 8px 0px 0px;
    background: linear-gradient(270deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0.9) 54%,
            rgba(241, 244, 252, 0) 83%);
}

.element .frame-15 {
    display: inline-flex;
    align-items: center;
    gap: 1.71px;
    position: absolute;
    top: 5px;
    left: 8px;
}

.element .voice {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 9.4px;
    text-align: center;
    line-height: 9.4px;
    white-space: nowrap;
}

.element .text-wrapper-23 {
    letter-spacing: 0.05px;
}

.element .text-wrapper-24 {
    position: relative;
    width: fit-content;
    margin-top: -0.51px;
    text-shadow: 0px 1.13px 1.13px #00000026;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 12.9px;
    letter-spacing: 0;
    line-height: 12.9px;
    white-space: nowrap;
}

.element .group-13 {
    position: absolute;
    top: 39px;
    left: 183px;
    width: 161px;
    height: 104px;
}

.element .text-wrapper-25 {
    position: absolute;
    top: 0;
    left: 0;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #000000;
    font-size: 18.8px;
    letter-spacing: 1.5px;
    line-height: 22.6px;
    white-space: nowrap;
}

.element .text-wrapper-26 {
    position: absolute;
    top: 6px;
    left: 1px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #000000;
    font-size: 68px;
    letter-spacing: 0;
    line-height: 81.6px;
    white-space: nowrap;
}

.element .text-wrapper-27 {
    position: absolute;
    top: 87px;
    left: 3px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #000000;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 16.8px;
    white-space: nowrap;
}

.element .vector-4 {
    position: absolute;
    top: 77px;
    left: 3px;
    width: 147px;
    height: 1px;
    object-fit: cover;
}

.element .vector-5 {
    position: absolute;
    top: 21px;
    left: 3px;
    width: 114px;
    height: 1px;
    object-fit: cover;
}

.element .text-wrapper-28 {
    position: absolute;
    top: 41px;
    left: 119px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #000000;
    font-size: 34.5px;
    letter-spacing: 0;
    line-height: 41.4px;
    white-space: nowrap;
}

.element .group-14 {
    position: absolute;
    top: 144px;
    left: 0;
    width: 172px;
    height: 38px;
}

.element .rectangle-7 {
    position: absolute;
    top: 0;
    left: 0;
    width: 170px;
    height: 38px;
    background-color: #8549a0;
    border-radius: 0px 17.53px 0px 0px;
}

.element .div-6 {
    position: absolute;
    top: 7px;
    left: 13px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #f8f9fa;
    font-size: 18.2px;
    line-height: 21.9px;
    white-space: nowrap;
}

.element .text-wrapper-29 {
    letter-spacing: 0.27px;
}

.element .text-wrapper-30 {
    letter-spacing: 0.4px;
}

.element .text-wrapper-31 {
    font-size: 14px;
    letter-spacing: 0.16px;
    line-height: 16.8px;
}

.element .CLINIC-w {
    position: absolute;
    top: 7px;
    left: 13px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #f8f9fa;
    font-size: 18.2px;
    letter-spacing: 1.46px;
    line-height: 21.9px;
    white-space: nowrap;
}

.element .button-2 {
    position: relative;
    width: 355px;
    height: 60px;
    margin-bottom: -6px;
}

.element .frame-16 {
    position: relative;
    align-self: stretch;
    width: 100%;
    height: 850px;
    overflow: hidden;
    box-shadow: inset 0px 4px 4px #00000040;
}

.element .img-3 {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--element-width);
    height: 276px;
    aspect-ratio: 1.49;
    object-fit: cover;
}

.element .rectangle-8 {
    position: absolute;
    top: 172px;
    left: -8px;
    width: 424px;
    height: 132px;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.83) 53%,
            rgba(255, 255, 255, 1) 100%);
}

.element .rectangle-9 {
    position: absolute;
    top: 0;
    left: 0;
    width: 407px;
    height: 447px;
    background-color: #143064ba;
}

.element .text-wrapper-32 {
    position: absolute;
    top: 27px;
    left: calc(50.00% - 135px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 700;
    color: #fbfafc;
    font-size: 20px;
    text-align: center;
    letter-spacing: 3.6px;
    line-height: 30px;
    white-space: nowrap;
}

.element .div-7 {
    position: absolute;
    top: 51px;
    margin-top: calc((71.4px - 42px) / 2);
    left: calc(50.00% - 145px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 700;
    color: #fbfafc;
    font-size: 42px;
    text-align: center;
}


.element .text-wrapper-33 {
    letter-spacing: 3.18px;
}

.element .text-wrapper-34 {
    font-size: 20px;
    letter-spacing: 0.64px;
    line-height: 34px;
}



.element .frame-17 {
    position: absolute;
    left: calc(50.00% - 201px);
    width: var(--element-width);
    height: 720px;
    background: radial-gradient(50% 50% at 50% 50%,
            rgba(77, 124, 140, 1) 0%,
            rgba(65, 91, 129, 1) 25%,
            rgba(24, 48, 91, 1) 100%);
}

.element .adobestock {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--element-width);
    height: 333px;
    background-blend-mode: multiply;
    aspect-ratio: 1.83;
}

.element .adobestock-2 {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--element-width);
    height: 593px;
    background-blend-mode: luminosity;
    aspect-ratio: 1.45;
}

.element .text-wrapper-35 {
    top: 43px;
    left: calc(50.00% - 148px);
    background: linear-gradient(90deg,
            rgba(207, 132, 44, 1) 0%,
            rgba(216, 164, 89, 1) 31%,
            rgba(224, 193, 131, 1) 60%,
            rgba(210, 143, 60, 1) 100%);
    -webkit-background-clip: text !important;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 600;
    color: transparent;
    font-size: 29px;
    letter-spacing: 4.64px;
    line-height: 37.7px;
    position: absolute;
    text-align: center;
}

.element .polygon-2 {
    position: absolute;
    top: 15px;
    left: calc(50.00% - 4px);
    width: 10px;
    height: 7px;
}

.element .group-15 {
    position: absolute;
    top: 250px;
    left: 15px;
    width: 376px;
    height: 104px;
}

.element .group-16 {
    position: absolute;
    top: 377px;
    left: 11px;
    width: 380px;
    height: 104px;
    display: flex;
    gap: 11.7px;
}

.element .rectangle-10 {
    width: 184.15px;
    height: 104px;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(247, 245, 242, 1) 100%);
}

.element .div-8 {
    position: absolute;
    top: 286px;
    left: calc(50.00% + 23px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 15px;
    text-align: center;
    letter-spacing: 1.95px;
    line-height: 21px;
}

.element .text-wrapper-36 {
    color: #000000;
    letter-spacing: 0.29px;
}

.element .text-wrapper-37 {
    color: #752f92;
    letter-spacing: 0.29px;
}

.element .group-17 {
    position: absolute;
    top: 381px;
    left: 15px;
    width: 177px;
    height: 96px;
}

.element .rectangle-11 {
    position: absolute;
    top: -1px;
    left: -1px;
    width: 179px;
    height: 98px;
    background-color: #6b5b52;
    border: 0.3px solid;
    border-color: #3c271b;
}

.element .rectangle-12 {
    top: 0;
    left: 0;
    background-color: #ffffff;
    position: absolute;
    width: 177px;
    height: 96px;
    border-radius: 2px;
    aspect-ratio: 1.84;
}

.element .group-18 {
    position: absolute;
    top: 381px;
    left: 210px;
    width: 177px;
    height: 96px;
}

.element .group-19 {
    position: absolute;
    top: 120px;
    left: 159px;
    width: 84px;
    height: 1px;
    background-image: url(./img/vector-32.svg);
    background-size: cover;
    background-position: 50% 50%;
}

.element .vector-wrapper {
    position: absolute;
    top: 370px;
    left: 82px;
    width: 34px;
    height: 34px;
    display: flex;
    background-color: #ffffff;
    border-radius: 17px;
}

.element .vector-6 {
    flex: 1;
    width: 20px;
}

.element .group-20 {
    position: absolute;
    top: 370px;
    left: 277px;
    width: 34px;
    height: 34px;
    background-color: #ffffff;
    border-radius: 17px;
}

.element .ep-menu {
    position: absolute;
    top: 244px;
    left: 286px;
    width: 18px;
    height: 18px;
    display: flex;
    aspect-ratio: 1;
}

.element .vector-7 {
    flex: 1;
    width: 13.5px;
}

.element .vector-8 {
    position: absolute;
    width: 28.86%;
    height: 37.02%;
    top: 62.98%;
    left: 71.14%;
}

.element .div-9 {
    position: absolute;
    top: 130px;
    left: calc(50.00% - 160px);
    width: 319px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 16px;
    text-align: center;
    line-height: 24.8px;
    letter-spacing: 0.23em;
}

.element .text-wrapper-38 {
    font-weight: 500;
    color: #F7F6F7;
}

.element .text-wrapper-39 {
    font-weight: 600;
    color: #1F3C4F;
    font-size: 21px;

    line-height: 30.5px;
    background-color: #f8f6f8;
    padding: 0px 0.1em 2px 0.1em;
}

.element .text-wrapper-40 {
    color: #F7F6F7;
    font-size: 15px;
    letter-spacing: 0.52px;
    line-height: 23.2px;
}

.element .group-21 {
    position: absolute;
    top: 235px;
    left: 11px;
    width: 188px;
    height: 117px;
}

.element .rectangle-13 {
    position: absolute;
    top: 13px;
    left: 0;
    width: 184px;
    height: 104px;
    box-shadow: 0px 2px 4px #00000040;
    background: linear-gradient(180deg, rgba(30, 78, 109, 1) 0%, rgba(28, 59, 83, 1) 100%);
}

.element .rectangle-14 {
    top: 17px;
    left: 4px;
    border: none;
    position: absolute;
    width: 177px;
    height: 96px;
    border-radius: 2px;
    aspect-ratio: 1.84;
}

.element .rectangle-14::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 0.3px;
    border-radius: 2px;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 1) 17%,
            rgba(37, 110, 159, 1) 37%,
            rgba(36, 115, 164, 1) 61%,
            rgba(255, 255, 255, 1) 82%,
            rgba(255, 255, 255, 1) 100%);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: 1;
    pointer-events: none;
}

.element .div-10 {
    position: absolute;
    top: 30px;
    left: calc(50.00% - 77px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 18px;
    text-align: center;
    letter-spacing: 2.34px;
    line-height: 23.4px;
}

.element .text-wrapper-41 {
    font-weight: 700;
    color: #f5e3b6;
    letter-spacing: 0.42px;
}

.element .text-wrapper-42 {
    font-weight: 500;
    color: #ffffff;
    font-size: 15px;
    letter-spacing: 0.29px;
    line-height: 19.5px;
}

.element .ellipse {
    position: absolute;
    top: 0;
    left: calc(50.00% - 18px);
    width: 33px;
    height: 33px;
    border-radius: 16.5px;
    background: linear-gradient(180deg, rgba(24, 60, 83, 1) 69%, rgba(24, 60, 83, 0) 100%);
    Z-index: 1;
}

.element .div-11 {
    position: absolute;
    top: 28px;
    left: calc(50.00% - 72px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 18px;
    text-align: center;
    line-height: 25.2px;
}

.element .div-11 {
    position: absolute;
    top: 28px;
    left: calc(50.00% - 72px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 18px;
    text-align: center;
    line-height: 25.2px;
}

.element .text-wrapper-43 {
    position: absolute;
    top: 1px;
    left: calc(50.00% - 10px);
    font-family: "Cormorant Infant", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 17px;
    text-align: center;
    letter-spacing: 0.34px;
    line-height: 23.8px;
    white-space: nowrap;
    z-index: 2;
}

.group-24 .div-11 .text-wrapper-41 {
    font-size: 15px;
}

.group-24 .div-11 {
    left: calc(50.00% - 78px);
}

.element .group-22 {
    position: absolute;
    top: 362px;
    left: 11px;
    width: 188px;
    height: 117px;
}


.element .text-wrapper-44 {
    font-weight: 500;
    color: #ffffff;
    font-size: 15px;
    letter-spacing: 0.29px;
    line-height: 21px;
}

.element .text-wrapper-45 {
    color: #ffffff;
    font-size: 15px;
    letter-spacing: 0.36px;
    line-height: 21px;
}

.element .group-23 {
    position: absolute;
    top: 235px;
    left: 207px;
    width: 188px;
    height: 117px;
}

.element .rectangle-15 {
    position: absolute;
    top: 13px;
    left: 0;
    width: 184px;
    height: 104px;
    background: linear-gradient(180deg,
            rgba(36, 119, 168, 1) 0%,
            rgba(45, 71, 124, 1) 70%,
            rgba(35, 72, 124, 1) 100%);
}

.element .div-12 {
    position: absolute;
    top: 42px;
    left: calc(50.00% - 83px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 15px;
    text-align: center;
    line-height: 19.5px;
}

.element .text-wrapper-46 {
    font-weight: 500;
    color: #ffffff;
    letter-spacing: 0.29px;
}

.element .text-wrapper-47 {
    font-weight: 700;
    color: #f5e3b6;
    font-size: 17px;
    letter-spacing: 0.12px;
    line-height: 22.1px;
}

.element .text-wrapper-48 {
    font-weight: 700;
    color: #f5e3b6;
    font-size: 18px;
    letter-spacing: 0.42px;
    line-height: 23.4px;
}

.element .group-24 {
    position: absolute;
    top: 362px;
    left: 207px;
    width: 192px;
    height: 125px;
}

.element .rectangle-16 {
    position: absolute;
    top: 6px;
    left: calc(50.00% - 197px);
    width: 393px;
    height: 389px;
    border-radius: 2px;
    border: none;
}

.element .rectangle-16::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 0.75px;
    border-radius: 2px;
    background: linear-gradient(180deg, rgba(239, 231, 196, 1) 0%, rgba(235, 242, 236, 1) 55%, rgba(236, 237, 240, 0) 100%);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: 1;
    pointer-events: none;
}

.element .area-cta {
    display: flex;
    position: absolute;
    flex-direction: column;
    width: var(--element-width);
    align-items: center;
    gap: 12px;
    top: 520px;
    left: calc(50.00% - 201px);
}

.sec-cta {
    margin: 30px auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}



.element .div-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7.46px;
    padding: 2.98px 14.91px;
    position: absolute;
    top: 424px;
    left: calc(50.00% - 65px);
    background-color: #F8F6F8;
    z-index: 1;
}

.element .text-wrapper-49 {
    position: relative;
    width: fit-content;
    margin-top: -0.75px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 700;
    color: #01384D;
    font-size: 18.8px;
    text-align: center;
    letter-spacing: 1.5px;
    line-height: 31.9px;
    white-space: nowrap;
    z-index: 2;
}

.element .group-25 {
    position: absolute;
    top: 167px;
    left: 24px;
    width: 354px;
    height: 233px;
}

.element .frame-19 {
    display: flex;
    flex-direction: column;
    width: 306px;
    align-items: flex-start;
    gap: 9px;
    position: absolute;
    top: 202px;
    left: calc(50.00% - 149px);
}

.element .frame-20 {
    display: flex;
    width: 305.02px;
    align-items: flex-start;
    gap: 9.73px;
    position: relative;
    flex: 0 0 auto;
}

.element .vector-9 {
    position: relative;
    width: 17.31px;
    height: 17.31px;
    aspect-ratio: 1;
}

.element .div-13 {
    position: relative;
    width: 277.98px;
    height: 54.08px;
    margin-top: -1.08px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 17.3px;
    line-height: 26px;
}

.element .text-wrapper-50 {
    color: #53707b;
    letter-spacing: 0.42px;
}

.element .text-wrapper-51 {
    color: #752f92;
    letter-spacing: 0.03px;
}

.element .div-14 {
    position: relative;
    width: 277.98px;
    height: 54.08px;
    margin-top: -1.08px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 17.3px;
    letter-spacing: 2.42px;
    line-height: 26px;
}

.element .text-wrapper-52 {
    color: #752f92;
    letter-spacing: 0.42px;
}

.element .SNS {
    position: relative;
    width: 277.98px;
    height: 54.08px;
    margin-top: -1.08px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 17.3px;
    line-height: 17.3px;
}

.element .text-wrapper-53 {
    color: #8549a0;
    letter-spacing: 0.24px;
    line-height: 26px;
}
.img-333 {
 position: relative;
    width: 402px;
}
.element .vector-10 {
    position: absolute;
    top: 118px;
    left: calc(50% - 3px);
    width: 6px;
    height: 40px;
    z-index: 10;
}

.element .frame-21 {
    position: relative;
    width: var(--element-width);
    height: 668px;
    overflow: hidden;
    background: linear-gradient(180deg,
            rgba(78, 148, 228, 1) 0%,
            rgba(207, 216, 241, 1) 21%);
}

.element .group-wrapper {
    display: flex;
    flex-direction: column;
    width: 417px;
    align-items: center;
    gap: 17px;
    position: absolute;
    top: 6px;
    left: -10px;
}

.element .group-26 {
    position: relative;
    width: 448.28px;
    height: 78.65px;
    margin-left: -14.64px;
    margin-right: -16.64px;
}

.element .rectangle-17 {
    position: absolute;
    top: 11px;
    left: calc(50.00% - 223px);
    width: 444px;
    height: 56px;
    transform: rotate(-2.93deg);
    background: linear-gradient(90deg,
            rgba(17, 89, 205, 1) 0%,
            rgba(63, 53, 150, 1) 100%);
}

.element .text-wrapper-54 {
    position: absolute;
    top: 22px;
    left: calc(50.00% - 167px);
    transform: rotate(-2.93deg);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 27px;
    text-align: center;
    letter-spacing: 1.62px;
    line-height: 35.1px;
    white-space: nowrap;
}

.element .group-27 {
    position: absolute;
    top: 13px;
    left: 376px;
    width: 41px;
    height: 39px;
    transform: rotate(8.22deg);
}

.element .ellipse-2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 39px;
    height: 39px;
    background-color: #ffffff;
    border-radius: 19.63px;
    border: 1.17px solid;
    border-color: #4e44ad;
    aspect-ratio: 1;
}

.element .text-wrapper-55 {
    position: absolute;
    top: 1px;
    left: 13px;
    font-family: "Besley", Helvetica;
    font-weight: 500;
    color: #4548b2;
    font-size: 32px;
    text-align: center;
    letter-spacing: 1.92px;
    line-height: 32px;
    white-space: nowrap;
}

.element .frame-22 {
    display: flex;
    flex-direction: column;
    width: 376px;
    align-items: flex-start;
    gap: 20px;
    position: absolute;
    top: 221px;
    left: 13px;
}

.element .group-28 {
    position: relative;
    width: 376px;
    height: 192px;
}

.element .rectangle-18 {
    position: absolute;
    top: 10px;
    left: calc(50.00% - 188px);
    width: 376px;
    height: 182px;
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0px 4px 4px #726b7640;
}

.element .frame-23 {
    display: flex;
    flex-direction: column;
    width: 346px;
    align-items: flex-start;
    gap: 6px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 173px);
}

.element .frame-24 {
    display: flex;
    flex-direction: column;
    width: 346px;
    align-items: flex-start;
    gap: 3px;
    position: relative;
    flex: 0 0 auto;
}

.element .frame-25 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18.33px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .group-29 {
    position: relative;
    align-self: stretch;
    width: 100%;
    height: 45.82px;
    margin-right: -2px;
}

.element .rectangle-19 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 174px);
    width: 346px;
    height: 36px;
    background-color: #793596;
    border-radius: 8px;
}

.element .div-15 {
    position: absolute;
    top: 2px;
    left: calc(50.00% - 89px);
    width: 178px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 18.3px;
    text-align: center;
    letter-spacing: 2.57px;
    line-height: 29.3px;
}

.element .text-wrapper-56 {
    letter-spacing: 0.47px;
}

.element .text-wrapper-57 {
    font-size: 14.7px;
    letter-spacing: 0.3px;
    line-height: 23.5px;
}

.element .polygon-3 {
    position: absolute;
    top: 29px;
    left: calc(50.00% - 11px);
    width: 19px;
    height: 16px;
}

.element .frame-26 {
    display: flex;
    width: 346px;
    align-items: flex-start;
    gap: 11px;
    position: relative;
    flex: 0 0 auto;
}

.element .frame-27 {
    display: flex;
    align-items: center;
    gap: 15.24px;
    position: relative;
    flex: 1;
    flex-grow: 1;
}

.element .frame-28 {
    display: flex;
    flex-direction: column;
    width: 165.38px;
    align-items: flex-start;
    gap: 5.05px;
    position: relative;
}

.element .frame-29 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .frame-30 {
    display: flex;
    flex-direction: column;
    height: 26.67px;
    align-items: center;
    justify-content: center;
    gap: 26.32px;
    padding: 2.07px 3.45px;
    position: relative;
    align-self: stretch;
    width: 100%;
    background-color: #ede7fd;
    border-radius: 7.62px;
}

.element .text-wrapper-58 {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #202020;
    font-size: 13px;
    text-align: center;
    letter-spacing: 0.26px;
    line-height: 20.8px;
    white-space: nowrap;
}

.element .frame-31 {
    position: relative;
    align-self: stretch;
    width: 100%;
    height: 16.77px;
}

.element .frame-32 {
    display: flex;
    flex-direction: column;
    height: 58.17px;
    align-items: center;
    justify-content: center;
    gap: 30.48px;
    position: relative;
    align-self: stretch;
    width: 100%;
}

.element .frame-33 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
    margin-top: -4.91px;
    margin-bottom: -4.91px;
}

.element .div-16 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin-top: -1px;
    font-family: "Roboto", Helvetica;
    font-weight: 500;
    color: #202020;
    font-size: 50.1px;
    text-align: center;
    line-height: 55.1px;
    white-space: nowrap;
}

.element .text-wrapper-59 {
    color: #793596;
    letter-spacing: -0.75px;
}

.element .text-wrapper-60 {
    color: #793596;
    font-size: 37.6px;
    letter-spacing: -0.99px;
    line-height: 41.4px;
}

.element .text-wrapper-61 {
    color: #793596;
    letter-spacing: -0.5px;
}

.element .div-17 {
    position: relative;
    display: flex;
    align-items: baseline;
    width: fit-content;
    margin-top: -5px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #202020;
    font-size: 9.2px;
    text-align: center;
    line-height: 10.1px;
}

.element .text-wrapper-62 {
    letter-spacing: 0.4px;
}

.element .text-wrapper-63 {
    margin-left: 2px;
    font-size: 16.3px;
    letter-spacing: 0.23px;
    line-height: 17.9px;
}


.element .frame-34 {
    height: 26.67px;
    justify-content: center;
    gap: 26.32px;
    padding: 2.07px 3.45px;
    position: relative;
    align-self: stretch;
    width: 100%;
    background-color: #a2b5ef;
    border-radius: 7.62px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.element .text-wrapper-65 {
    color: #1159cd;
    letter-spacing: -0.75px;
}

.element .text-wrapper-66 {
    color: #1159cd;
    font-size: 37.6px;
    letter-spacing: -0.99px;
    line-height: 41.4px;
}

.element .text-wrapper-67 {
    color: #1159cd;
    letter-spacing: -0.5px;
}

.element .vector-11 {
    position: absolute;
    top: 43px;
    left: calc(50% - 1px);
    width: 2px;
    height: 140px;
}

.element .rectangle-20 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 174px);
    width: 346px;
    height: 36px;
    border-radius: 8px;
    background: linear-gradient(180deg,
            rgba(0, 186, 248, 1) 0%,
            rgba(0, 160, 213, 1) 100%);
}

.element .text-wrapper-68 {
    position: absolute;
    top: 109px;
    left: calc(50.00% - 185px);
    width: 364px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #000000;
    font-size: 18.1px;
    text-align: center;
    letter-spacing: 2.54px;
    line-height: 21.6px;
}

.element .group-30 {
    position: absolute;
    top: 144px;
    left: 35px;
    width: 337px;
    height: 49px;
}

.element .rectangle-21 {
    position: absolute;
    top: 33px;
    left: 0;
    width: 216px;
    height: 15px;
    background-color: #f2ff7d;
}

.element .text-wrapper-69 {
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(90deg,
            rgba(39, 50, 154, 1) 0%,
            rgba(77, 42, 119, 1) 100%);
    -webkit-background-clip: text !important;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 41px;
    text-align: center;
    letter-spacing: 2.05px;
    line-height: 48.8px;
    white-space: nowrap;
}

.element .text-wrapper-70 {
    position: absolute;
    top: 18px;
    left: 221px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #000000;
    font-size: 20px;
    text-align: center;
    letter-spacing: 2.8px;
    line-height: 23.8px;
    white-space: nowrap;
}

.element .group-31 {
    position: absolute;
    width: 29px;
    height: 29px;
    top: 5px;
    left: 185px;
}

.element .frame-35 {
    position: relative;
    align-self: stretch;
    width: 100%;
    height: 517px;
    overflow: hidden;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 1) 100%);
}

.element .adobestock-3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 401px;
    height: 264px;
    aspect-ratio: 1.5;
    object-fit: cover;
}

.element .img-4 {
    position: absolute;
    left: 129px;
    bottom: 0;
    width: 273px;
    height: 185px;
    aspect-ratio: 1.51;
    object-fit: cover;
}

.element .rectangle-22 {
    position: absolute;
    top: 286px;
    left: 0;
    width: 235px;
    height: 175px;
    background: linear-gradient(101deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0) 100%);
}

.element .rectangle-23 {
    position: absolute;
    top: -5px;
    left: 0;
    width: var(--element-width);
    height: 60%;
    background: linear-gradient(0deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 40%,
            rgba(255, 255, 255, 0.8) 70%,
            rgba(255, 255, 255, 1) 82%,
            rgba(255, 255, 255, 1) 100%);
    z-index: 1;
}

.medmkt-panel {
    position: relative;
    width: var(--element-width);
    min-height: 510px;
    margin: 0 auto;
    overflow: hidden;
    background: #fff;
    color: #000;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.medmkt-panel h1,
.medmkt-panel h2,
.medmkt-panel p {
    margin: 0;
}

.medmkt-panel img {
    display: block;
    max-width: 100%;
}

.medmkt-panel::before {
    content: "";
    position: absolute;
    height: 265px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, .95) 64%, #fff 100%),
        url("./img/adobestock-388439293-2.webp") center top / cover no-repeat;
    pointer-events: none;
    background-size: cover;
    width: 100%;
    height: 100%;
}

.medmkt-hero {
    position: relative;
    z-index: 1;
    padding: 6px 7px 0;
}

.medmkt-hero__box {
    position: relative;
    min-height: 93px;
    padding: 14px 16px 12px;
    border: 1px solid rgba(255, 255, 255, .62);
    box-shadow:
        0 3px 4px rgba(0, 0, 0, .25),
        inset 0 1px 0 rgba(255, 255, 255, .4),
        inset 1px 0 0 rgba(255, 255, 255, .32),
        inset 0 -1px 1px rgba(0, 0, 0, .13),
        inset -1px 0 1px rgba(0, 0, 0, .11);
    background: linear-gradient(133deg, rgba(193, 176, 142, .58) 0%, rgba(255, 252, 243, .7) 25%, rgba(255, 255, 255, .74) 69%, rgba(255, 255, 255, .74) 84%, rgba(229, 221, 207, .66) 100%);
}

.medmkt-hero__box::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -14px;
    width: 0;
    height: 0;
    border-top: 15px solid rgba(255, 255, 255, .92);
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    transform: translateX(-50%);
}

.medmkt-hero__eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #835e0d;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 2.7px;
    line-height: 25px;
    text-align: center;
    white-space: nowrap;
}

.medmkt-hero__eyebrow span {
    display: block;
    width: 64px;
    height: 1px;
    background: #9aa6b6;
}

.medmkt-panel .medmkt-hero__title {
    margin-top: 6px;
    color: #112c5b;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 3.9px;
    line-height: 36px;
    text-align: center;
    white-space: nowrap;
}

.medmkt-categories {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 145px 30px 145px;
    align-items: end;
    justify-content: center;
    gap: 21px;
    margin-top: 17px;
}

.medmkt-category {
    position: relative;
    display: flex;
    height: 101px;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding-bottom: 11px;
}

.medmkt-category::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1px;
    height: 75px;
    border-radius: 3px;
}

.medmkt-category--surgery::before {
    border: 1px solid #8d41ad;
    background: linear-gradient(90deg, #fbf0ff 0%, #e1cbeb 100%);
}

.medmkt-category--derma::before {
    border: 1px solid #00aeff;
    background: linear-gradient(90deg, #f0faff 0%, #9fd0fa 100%);
}

.medmkt-category__icon {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    width: 54px;
    height: 54px;
    transform: translateX(-50%);
}

.medmkt-category h2 {
    position: relative;
    z-index: 1;
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 34px;
    white-space: nowrap;
}

.medmkt-category--surgery h2 {
    color: #793596;
}

.medmkt-category--derma h2 {
    color: #022e7f;
}

.medmkt-categories__and {
    align-self: end;
    color: #022e7f;
    font-size: 27px;
    font-weight: 400;
    letter-spacing: 3.5px;
    line-height: 38px;
    text-align: center;
}

.medmkt-message {
    position: relative;
    z-index: 1;
    margin: 22px auto 0;
    width: 353px;
    max-width: calc(100% - 48px);
    text-align: center;
}

.medmkt-message p {
    color: #012d7e;
    font-size: 23px;
    font-weight: 500;
    letter-spacing: 2.9px;
    white-space: nowrap;
}

.medmkt-message strong {
    margin-left: 4px;
    font-size: 41px;
    font-weight: 500;
    letter-spacing: 2.2px;
    line-height: 1.3;
}

.medmkt-message strong::before {
    content: "●";
    position: absolute;
    transform: translateX(100%) scale(0.5);

    top: -5px;

    font-size: 12px;
    /* ドットの基本サイズ */
    line-height: 1;
}

.medmkt-message__rule {
    display: block;
    height: 7px;
    margin-top: -8px;
    background: #d5cfec;
}

.medmkt-panel .medmkt-copy {
    position: relative;
    z-index: 1;
    width: 347px;
    max-width: calc(100% - 56px);
    margin: 16px auto 0;
    color: #000;
    font-family: "Noto Sans JP", "Times New Roman", serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1.15px;
    line-height: 26px;
}

.medmkt-copy strong {
    color: #793596;
    font-weight: 500;
}

.medmkt-photos {
    position: relative;
    z-index: 1;
    height: 132px;
    margin-top: 8px;
}

.medmkt-photos__surgery {
    position: absolute;
    top: 40px;
    left: 99px;
    width: 142px;
    height: 92px;
    object-fit: cover;
    z-index: 1;
}

.medmkt-photos__derma {
    position: absolute;
    top: 0;
    right: 2px;
    width: 191px;
    height: 127px;
    object-fit: cover;
}

@media (max-width: 360px) {
    .medmkt-hero__eyebrow {
        gap: 6px;
        font-size: 17px;
        letter-spacing: 1.8px;
    }

    .medmkt-hero__eyebrow span {
        width: 48px;
    }

    .medmkt-hero__title {
        font-size: 23px;
        letter-spacing: 2.2px;
    }

    .medmkt-categories {
        grid-template-columns: minmax(0, 1fr) 22px minmax(0, 1fr);
        gap: 10px;
        padding-inline: 18px;
    }

    .medmkt-category h2 {
        font-size: 20px;
    }

    .medmkt-message p {
        font-size: 18px;
        letter-spacing: 1.4px;
    }

    .medmkt-message strong {
        font-size: 32px;
    }

    .medmkt-copy {
        max-width: calc(100% - 36px);
        font-size: 14px;
    }
}

.element .rectangle-24 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 204px);
    width: 408px;
    height: 102px;
    background: linear-gradient(180deg,
            rgba(5, 113, 229, 1) 0%,
            rgba(29, 124, 197, 1) 100%);
}

.element .rectangle-25 {
    position: absolute;
    top: 161px;
    left: calc(50.00% - 192px);
    width: 384px;
    height: 114px;
    transform: rotate(180deg);
    background: linear-gradient(14deg,
            rgba(241, 246, 255, 0) 0%,
            rgba(246, 250, 255, 1) 39%,
            rgba(255, 255, 255, 1) 100%);
}

.element .group-32 {
    position: absolute;
    top: 18px;
    left: calc(50.00% - 159px);
    width: 319px;
    height: 25px;
}

.element .text-wrapper-71 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 90px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 600;
    color: #f2ff7d;
    font-size: 19.5px;
    text-align: center;
    letter-spacing: 2.73px;
    line-height: 25.4px;
    white-space: nowrap;
}

.element .vector-12 {
    position: absolute;
    top: 14px;
    left: calc(50.00% + 94px);
    width: 64px;
    height: 2px;
}

.element .vector-13 {
    position: absolute;
    top: 14px;
    left: calc(50.00% - 160px);
    width: 64px;
    height: 2px;
}

.element .text-wrapper-72 {
    position: absolute;
    top: 169px;
    left: calc(50.00% - 17px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: #022e7f;
    font-size: 27.1px;
    text-align: center;
    letter-spacing: 3.52px;
    line-height: 37.9px;
    white-space: nowrap;
}

.element .div-18 {
    position: absolute;
    top: 285px;
    left: calc(50.00% - 172px);
    width: 347px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 16px;
    letter-spacing: 2.08px;
    line-height: 25.6px;
}

.element .text-wrapper-73 {
    color: #000000;
    letter-spacing: 0.33px;
}

.element .text-wrapper-74 {
    font-weight: 700;
    color: #752f92;
    letter-spacing: 0.33px;
}

.element .group-33 {
    position: absolute;
    height: 102px;
    top: 107px;
    left: 31px;
    display: flex;
    align-items: flex-start;
    min-width: 340px;
    gap: 50px;
}

.element .group-34 {
    width: 145px;
    height: 101px;
    align-self: flex-end;
    display: flex;
}

.element .group-35 {
    width: 147.19px;
    height: 100.72px;
    position: relative;
}

.element .rectangle-26 {
    position: absolute;
    top: 25px;
    left: 0;
    width: 145px;
    height: 75px;
    border-radius: 2.34px;
    border: none;
    background: linear-gradient(90deg,
            rgba(251, 240, 255, 1) 0%,
            rgba(225, 203, 235, 1) 100%);
}

.element .rectangle-26::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 0.91px;
    border-radius: 2.34px;
    background: linear-gradient(180deg,
            rgba(117, 48, 147, 1) 0%,
            rgba(195, 131, 222, 1) 100%);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: 1;
    pointer-events: none;
}

.element .text-wrapper-75 {
    position: absolute;
    top: 53px;
    left: calc(50.00% - 52px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: #793596;
    font-size: 24.6px;
    text-align: center;
    letter-spacing: 0.98px;
    line-height: 34.4px;
    white-space: nowrap;
}

.element .group-36 {
    position: absolute;
    width: 54px;
    height: 54px;
    top: 0;
    left: 45px;
    background-image: url(./img/mask-group.webp);
    background-size: 100% 100%;
    z-index: 2;

}

.element .group-37 {
    width: 145px;
    height: 101px;
    display: flex;
}

.element .rectangle-27 {
    position: absolute;
    top: 25px;
    left: 0;
    width: 145px;
    height: 75px;
    border-radius: 2.34px;
    border: none;
    background: linear-gradient(90deg,
            rgba(240, 250, 255, 1) 0%,
            rgba(159, 208, 250, 1) 100%);
}

.element .rectangle-27::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 0.91px;
    border-radius: 2.34px;
    background: linear-gradient(180deg,
            rgba(0, 174, 255, 1) 0%,
            rgba(31, 158, 248, 1) 100%);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: 1;
    pointer-events: none;
}

.element .text-wrapper-76 {
    position: absolute;
    top: 53px;
    left: calc(50.00% - 65px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: #022e7f;
    font-size: 24.6px;
    text-align: center;
    letter-spacing: 0.98px;
    line-height: 34.4px;
    white-space: nowrap;
}

.element .group-38 {
    position: absolute;
    width: 54px;
    height: 54px;
    top: 0;
    left: 45px;
    background-image: url(./img/mask-group-1.webp);
    background-size: 100% 100%;
    z-index: 2;
}

.element .text-wrapper-77 {
    position: absolute;
    top: 46px;
    left: calc(50.00% - 172px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 600;
    color: #ffffff;
    font-size: 28px;
    text-align: center;
    letter-spacing: 3.92px;
    line-height: 36.4px;
    white-space: nowrap;
}

.element .group-39 {
    position: absolute;
    top: 211px;
    left: calc(50.00% - 176px);
    width: 353px;
    height: 58px;
}

.element .rectangle-28 {
    position: absolute;
    top: 45px;
    left: calc(50.00% - 176px);
    width: 351px;
    height: 7px;
    background-color: #d5cfec;
}

.element .div-19 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 174px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #012d7e;
    font-size: 22.9px;
    text-align: center;
    letter-spacing: 2.98px;
    line-height: 32.1px;
}

.element .text-wrapper-78 {
    letter-spacing: 0.68px;
}

.element .text-wrapper-79 {
    font-size: 41.1px;
    letter-spacing: 2.19px;
    line-height: 57.5px;
}

.element .ellipse-3 {
    position: absolute;
    top: 4px;
    left: 258px;
    width: 4px;
    height: 4px;
    background-color: #022e7f;
    border-radius: 2px;
}

.element .ellipse-4 {
    position: absolute;
    top: 4px;
    left: 300px;
    width: 4px;
    height: 4px;
    background-color: #022e7f;
    border-radius: 2px;
}

.element .polygon-4 {
    position: absolute;
    top: 99px;
    left: calc(50.00% - 12px);
    width: 17px;
    height: 14px;
}

.element .sec-each-marketing {
    position: relative;
    align-self: stretch;
    width: 100%;
    height: 100px;
    margin-top: 60px;

    overflow: hidden;
    /* background: linear-gradient(180deg,
      rgba(246, 241, 248, 0) 0%,
      rgba(250, 248, 251, 1) 6%,
      rgba(255, 255, 255, 1) 31%); */
}

.sec-marketing-block {
    position: relative;
    display: block;
    width: 100%;
    margin: 10px auto;
    background: linear-gradient(174deg,
            rgba(243, 240, 252, 1) 0%,
            rgba(254, 254, 255, 1) 23%,
            rgba(243, 240, 252, 1) 100%);

}

.element .frame-sec-treatment {
    position: relative;
    display: grid;
    align-items: center;
    /* align-self: stretch; */
    width: 100%;
    /* height: 6654px; */
    /* overflow: hidden; */
    background: linear-gradient(180deg,
            rgba(246, 241, 248, 0) 0%,
            rgba(250, 248, 251, 1) 6%,
            rgba(255, 255, 255, 1) 31%);
}



.element .rectangle-29 {
    position: relative;
    width: var(--element-width);
    height: 150px;
    border-radius: 4px;
}

.element .div-20 {
    position: relative;
    width: 358px;
    margin: 0 auto;
    padding-top: 30px;
    text-align: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 18.1px;
    letter-spacing: 1.63px;
    line-height: 28.9px;
}

.element .text-wrapper-80 {
    color: #4b4250;
    letter-spacing: 0.29px;
    font-size: 18.1px;
}

.element .text-wrapper-81 {
    color: #793099;
    letter-spacing: 0.29px;
}

.element .sec-kumatori {
    width: 373px;
}

.element .sec-kumatori[open] {
    height: 1193px;
}

.element .rectangle-30 {
    position: absolute;
    top: 20px;
    left: calc(50.00% - 187px);
    width: 373px;
    height: 1173px;
    background: linear-gradient(174deg,
            rgba(243, 240, 252, 1) 0%,
            rgba(254, 254, 255, 1) 23%,
            rgba(243, 240, 252, 1) 100%);
}

.element .group-41 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 187px);
    width: 373px;
    height: 1151px;
}

.element .group-42 {
    width: 381px;
    height: 1151px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 186px);
}

.element .text-wrapper-82 {
    position: absolute;
    top: 1072px;
    left: calc(50.00% - 168px);
    width: 331px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .div-21 {
    position: absolute;
    top: 757px;
    left: calc(50.00% - 166px);
    width: 152px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 14px;
    letter-spacing: 0.7px;
    line-height: 21.3px;
}

.element .text-wrapper-83 {
    color: #3b261b;
    letter-spacing: 0.1px;
}

.element .text-wrapper-84 {
    color: #84479f;
    letter-spacing: 0.1px;
}

.element .text-wrapper-85 {
    position: absolute;
    top: 757px;
    left: calc(50.00% + 4px);
    width: 152px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 14px;
    letter-spacing: 0.7px;
    line-height: 21.3px;
}

.element .rectangle-31 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 190px);
    width: 373px;
    height: 55px;
    border-radius: 3.7px;
    background: linear-gradient(90deg,
            rgba(17, 44, 91, 1) 0%,
            rgba(17, 44, 91, 1) 100%);
}

.element .frame-37 {
    display: flex;
    flex-direction: column;
    width: 343px;
    height: 454px;
    align-items: flex-start;
    gap: 13.77px;
    position: absolute;
    top: 69px;
    left: 11px;
}

.element .frame-38 {
    height: 123.97px;
    position: relative;
    align-self: stretch;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9.24px;
}

.element .group-43 {
    position: relative;
    width: 372.26px;
    height: 59.83px;
    margin-left: -14.74px;
    margin-right: -14.74px;
}

.element .group-44 {
    position: relative;
    left: calc(50.00% - 186px);
    width: 372px;
    height: 60px;
}

.element .frame-39 {
    width: 332.59px;
    height: 52px;
    align-items: flex-end;
    position: absolute;
    top: 1px;
    left: calc(50.00% - 166px);
    display: flex;
    flex-direction: column;
    gap: 4.62px;
}

.element .frame-40 {
    display: flex;
    align-items: flex-end;
    gap: 4.02px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .group-45 {
    position: relative;
    width: 48.05px;
    height: 51.74px;
}

.element .group-46 {
    position: relative;
    width: 50px;
    height: 52px;
}

.element .group-47 {
    position: absolute;
    top: 1px;
    left: 6px;
    width: 39px;
    height: 24px;
    display: flex;
}

.element .text-wrapper-86 {
    width: 37px;
    height: 24px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #84479f;
    font-size: 14.8px;
    text-align: center;
    letter-spacing: -0.3px;
    line-height: 23.5px;
    white-space: nowrap;
}

.element .text-wrapper-87 {
    position: absolute;
    top: 15px;
    left: 0;
    width: 48px;
    font-family: "Ancizar Sans", Helvetica;
    font-weight: 500;
    color: #84479f;
    font-size: 42.5px;
    text-align: center;
    letter-spacing: -2.55px;
    line-height: 42.5px;
    white-space: nowrap;
}

.element .text-wrapper-88 {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: -0.37px;
    line-height: 31.8px;
    white-space: nowrap;
}

.element .rectangle-32 {
    position: absolute;
    top: 4px;
    left: calc(50.00% - 186px);
    width: 372px;
    height: 56px;
    background: linear-gradient(270deg,
            rgba(235, 226, 239, 0) 0%,
            rgba(239, 220, 248, 1) 20%,
            rgba(237, 221, 245, 1) 80%,
            rgba(249, 237, 255, 0) 100%);
}

.element .text-wrapper-89 {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #7e598d;
    font-size: 16.6px;
    text-align: center;
    letter-spacing: 1.33px;
    line-height: normal;
}

.element .frame-41 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13.77px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .group-48 {
    position: relative;
    width: 339.09px;
    height: 207.18px;
}

.element .group-49 {
    position: absolute;
    top: 1px;
    left: 0;
    width: 169px;
    height: 207px;
}

.element .rectangle-33 {
    position: absolute;
    top: 17px;
    left: 0;
    width: 165px;
    height: 190px;
    background-color: #ffffff;
    border-radius: 3.7px;
    box-shadow: 0px 3.7px 3.7px #00000026;
}

.element .rectangle-34 {
    position: absolute;
    top: 0;
    left: 1px;
    width: 165px;
    height: 58px;
    background-color: #a179cb;
    border-radius: 3.7px 3.7px 0px 0px;
}

.element .div-22 {
    position: absolute;
    top: 7px;
    left: calc(50.00% - 58px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    line-height: 20.8px;
}

.element .text-wrapper-90 {
    letter-spacing: 0.2px;
}

.element .text-wrapper-91 {
    letter-spacing: -0.44px;
}

.element .text-wrapper-92 {
    position: absolute;
    top: 149px;
    left: calc(50.00% - 75px);
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #44424e;
    font-size: 12.9px;
    text-align: center;
    letter-spacing: 0.52px;
    line-height: 16.8px;
}

.element .polygon-5 {
    top: 54px;
    position: absolute;
    left: 77px;
    width: 11px;
    height: 9px;
}

.element .group-50 {
    position: absolute;
    width: 141px;
    height: 103px;
    top: 42px;
    left: 12px;
    background-image: url(./img/mask-group-2.webp);
    background-size: 100% 100%;
}

.element .group-51 {
    position: absolute;
    top: 0;
    left: 174px;
    width: 169px;
    height: 207px;
}

.element .rectangle-35 {
    top: 0;
    left: 1px;
    height: 58px;
    background-color: #727cd4;
    position: absolute;
    width: 165px;
    border-radius: 3.7px 3.7px 0px 0px;
}

.element .text-wrapper-93 {
    position: absolute;
    top: 19px;
    left: calc(50.00% - 73px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    letter-spacing: 1.28px;
    line-height: 20.8px;
    white-space: nowrap;
}

.element .text-wrapper-94 {
    position: absolute;
    top: 149px;
    left: calc(50.00% - 76px);
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #44424e;
    font-size: 12.9px;
    text-align: center;
    letter-spacing: 0.52px;
    line-height: 16.8px;
}

.element .polygon-6 {
    top: 55px;
    position: absolute;
    left: 77px;
    width: 11px;
    height: 9px;
}

.element .chatgpt-image {
    position: absolute;
    top: 47px;
    left: 30px;
    width: 101px;
    height: 98px;
    aspect-ratio: 1.03;
}

.element .text-wrapper-95 {
    position: relative;
    width: 330.77px;
    height: 78.54px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .text-wrapper-96 {
    position: absolute;
    top: 8px;
    left: calc(50.00% - 69px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 29.6px;
    text-align: center;
    letter-spacing: 4.14px;
    line-height: 38.4px;
    white-space: nowrap;
}

.element .auto-flex {
    position: absolute;
    height: 140px;
    top: 611px;
    left: 22px;
    display: flex;
    align-items: flex-start;
    min-width: 301px;
    gap: 39px;
}

.element .group-52 {
    width: 131px;
    height: 140px;
    position: relative;
}

.element .group-53 {
    position: absolute;
    top: 0;
    left: 0;
    width: 131px;
    height: 131px;
}

.element .group-54 {
    position: absolute;
    width: 73px;
    height: 25px;
    top: 115px;
    left: 28px;
    display: flex;
}

.element .group-55 {
    width: 74.9px;
    height: 25.06px;
    position: relative;
}

.element .rectangle-36 {
    position: absolute;
    top: 0;
    left: 0;
    width: 73px;
    height: 25px;
    background-color: #423647;
    border-radius: 33.68px;
}

.element .text-wrapper-97 {
    position: absolute;
    top: 2.5px;
    left: calc(50.00% - 16px);
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #f7f6f3;
    font-size: 15.8px;
    letter-spacing: 1.26px;
    line-height: 22.1px;
    white-space: nowrap;
}

.element .rectangle-37 {
    position: absolute;
    top: 0;
    left: 0;
    width: 73px;
    height: 25px;
    background-color: #752f92;
    border-radius: 33.68px;
}

.element .group-56 {
    position: absolute;
    top: 849px;
    left: calc(50.00% - 169px);
    width: 331px;
    height: 209px;
    background-color: #396274;
    border-radius: 9.24px;
    box-shadow: 0px 1.85px 3.7px #0000001f;
}

.element .ellipse-wrapper {
    position: absolute;
    top: 17px;
    left: calc(50.00% - 137px);
    width: 275px;
    height: 173px;
    display: flex;
    justify-content: center;
}

.element .ellipse-5 {
    margin-top: 14.1px;
    width: 258.27px;
    height: 144.79px;
    margin-left: 0;
}

.element .vector-14 {
    position: absolute;
    top: 57px;
    left: 63px;
    width: 186px;
    height: 94px;
}

.element .vector-15 {
    position: absolute;
    top: 68px;
    left: 83px;
    width: 162px;
    height: 77px;
}

.element .group-57 {
    position: absolute;
    top: 63px;
    left: 120px;
    width: 83px;
    height: 81px;
}

.element .group-sns {
    position: absolute;
    top: 849px;
    left: calc(50.00% - 169px);
    width: 331px;
    height: 209px;
    background-color: #f8f8fe;
    border-radius: 9.24px;
    box-shadow: 0px 1.85px 3.7px #0000001f;
}

.element .sns-ellipse-wrapper {
    position: absolute;
    top: 17px;
    left: calc(50.00% - 137px);
    width: 275px;
    height: 173px;
    display: flex;
    justify-content: center;
}

.element .sns-ellipse-5 {
    margin-top: 14.1px;
    width: 258.27px;
    height: 144.79px;
    margin-left: 0;
}

.element .sns-vector-14 {
    position: absolute;
    top: 57px;
    left: 68px;
    width: 186px;
    height: 94px;
}

.element .sns-vector-15 {
    position: absolute;
    top: 68px;
    left: 88px;
    width: 162px;
    height: 77px;
}

.element .sns-group-58 {
    position: absolute;
    top: 63px;
    left: 125px;
    width: 83px;
    height: 81px;
}

.element .sns-ellipse-6 {
    position: absolute;
    top: 0;
    left: 0;
    width: 81px;
    height: 81px;
    background-color: #ffffff;
    border-radius: 40.65px;
}

.element .sns-text-wrapper-100 {
    position: absolute;
    top: 23px;
    left: calc(50.00% - 30px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #752f92;
    font-size: 14.7px;
    letter-spacing: 0;
    line-height: 17.6px;
}

.element .sns-group-59 {
    position: absolute;
    top: 15px;
    left: calc(50.00% - 134px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .sns-group-60 {
    margin-top: 12.4px;
    width: 52.66px;
    height: 47.07px;
    margin-left: 9.5px;
    position: relative;
}

.element .sns-element-youtube {
    position: absolute;
    top: 0;
    left: 0;
    width: 53px;
    height: 42px;
    aspect-ratio: 1.24;
}

.element .sns-yl {
    position: absolute;
    top: 32px;
    left: 5px;
    width: 42px;
    height: 15px;
    aspect-ratio: 2.9;
}

.element .sns-img-wrapper {
    position: absolute;
    top: 115px;
    left: calc(50.00% - 134px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .sns-img-5 {
    margin-top: 14.8px;
    width: 42.84px;
    height: 43.43px;
    margin-left: 14.8px;
    aspect-ratio: 0.99;
}

.element .sns-group-61 {
    position: absolute;
    top: 115px;
    left: 229px;
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .sns-img-6 {
    margin-top: 14.8px;
    width: 43.43px;
    height: 43.43px;
    margin-left: 14.8px;
    aspect-ratio: 1;
}

.element .sns-group-62 {
    position: absolute;
    top: 15px;
    left: calc(50.00% + 64px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .sns-img-7 {
    margin-top: 12px;
    width: 41.72px;
    height: 48.05px;
    margin-left: 14.8px;
    aspect-ratio: 0.87;
}

.element .ellipse-6 {
    position: absolute;
    top: 0;
    left: 0;
    width: 81px;
    height: 81px;
    background-color: #ffffff;
    border-radius: 40.65px;
}

.element .text-wrapper-98 {
    position: absolute;
    top: 23px;
    left: calc(50.00% - 25px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #752f92;
    font-size: 14.7px;
    letter-spacing: 0;
    line-height: 17.6px;
}

.element .group-58 {
    position: absolute;
    top: 15px;
    left: calc(50.00% - 134px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .group-59 {
    margin-top: 12.4px;
    width: 52.66px;
    height: 47.07px;
    margin-left: 4.5px;
    position: relative;
}

.element .element-youtube {
    position: absolute;
    top: 0;
    left: 0;
    width: 53px;
    height: 42px;
    aspect-ratio: 1.24;
}

.element .yl {
    position: absolute;
    top: 32px;
    left: 5px;
    width: 42px;
    height: 15px;
    aspect-ratio: 2.9;
}

.element .img-wrapper {
    position: absolute;
    top: 115px;
    left: calc(50.00% - 134px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .img-5 {
    margin-top: 14.8px;
    width: 42.84px;
    height: 43.43px;
    margin-left: 9.8px;
    aspect-ratio: 0.99;
}

.element .group-60 {
    position: absolute;
    top: 115px;
    left: 229px;
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .img-6 {
    margin-top: 14.8px;
    width: 43.43px;
    height: 43.43px;
    margin-left: 9.8px;
    aspect-ratio: 1;
}

.element .group-61 {
    position: absolute;
    top: 15px;
    left: calc(50.00% + 64px);
    width: 72px;
    height: 72px;
    display: flex;
    background-color: #ffffff;
    border-radius: 36.2px;
}

.element .img-7 {
    margin-top: 12px;
    width: 41.72px;
    height: 48.05px;
    margin-left: 9.8px;
    aspect-ratio: 0.87;
}

.element .polygon-7 {
    position: absolute;
    top: 50px;
    left: calc(50.00% - 8px);
    width: 18px;
    height: 17px;
}

.element .group-62 {
    position: absolute;
    top: 539px;
    left: calc(50.00% - 186px);
    width: 372px;
    height: 60px;
}

.element .frame-42 {
    display: flex;
    flex-direction: column;
    width: 332.59px;
    height: 52px;
    align-items: flex-end;
    gap: 4.62px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 166px);
}

.element .group-63 {
    position: absolute;
    top: 0;
    left: 6px;
    width: 39px;
    height: 24px;
    display: flex;
}

.element .sec-futae {
    width: 376px;
}

.element .sec-futae[open] {
    height: 1023px;
}

.element .rectangle-38 {
    top: 20px;
    left: calc(50.00% - 187px);
    width: 373px;
    height: 1003px;
    position: absolute;
    background: linear-gradient(174deg,
            rgba(243, 240, 252, 1) 0%,
            rgba(254, 254, 255, 1) 23%,
            rgba(243, 240, 252, 1) 100%);
}

.element .group-65 {
    left: calc(50.00% - 187px);
    height: 973px;
    position: absolute;
    top: 0;
    width: 373px;
}

.element .group-66 {
    width: 387px;
    height: 973px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 186px);
}

.element .text-wrapper-99 {
    position: absolute;
    top: 615px;
    left: calc(50.00% - 177px);
    width: 342px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
}

.element .text-wrapper-100 {
    position: absolute;
    top: 931px;
    left: calc(50.00% - 176px);
    width: 342px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
}

.element .rectangle-39 {
    position: absolute;
    top: 713px;
    left: 11px;
    width: 342px;
    height: 199px;
    background-color: #ffffff;
    border-radius: 2.67px;
    box-shadow: 0px 1.78px 3.56px #00000040;
}

.element .rectangle-40 {
    top: 0;
    left: calc(50.00% - 193px);
    height: 55px;
    position: absolute;
    width: 373px;
    border-radius: 3.7px;
    background: linear-gradient(90deg,
            rgba(17, 44, 91, 1) 0%,
            rgba(17, 44, 91, 1) 100%);
}

.element .frame-43 {
    display: flex;
    flex-direction: column;
    height: 60.26px;
    align-items: center;
    gap: 9.24px;
    position: relative;
    align-self: stretch;
    width: 100%;
}

.element .text-wrapper-101 {
    position: relative;
    width: 330.45px;
    height: 120.53px;
    margin-top: -0.98px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .frame-44 {
    position: relative;
    flex: 0 0 auto;
    margin: 0 auto;
}

.element .text-wrapper-102 {
    position: relative;
    width: 330.45px;
    height: 72.32px;
    margin-top: -0.98px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .text-wrapper-103 {
    position: absolute;
    top: 8px;
    left: calc(50.00% - 72px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 29.6px;
    text-align: center;
    letter-spacing: 4.14px;
    line-height: 38.4px;
    white-space: nowrap;
}

.element .text-wrapper-104 {
    position: absolute;
    top: 823px;
    left: calc(50.00% - 168px);
    width: 72px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
    white-space: nowrap;
}

.element .text-wrapper-105 {
    position: absolute;
    top: 823px;
    left: calc(50.00% + 70px);
    width: 83px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
    white-space: nowrap;
}

.element .text-wrapper-106 {
    position: absolute;
    top: 883px;
    left: calc(50.00% - 56px);
    width: 98px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
    white-space: nowrap;
}

.element .text-wrapper-107 {
    position: absolute;
    top: 718px;
    left: calc(50.00% - 49px);
    width: 83px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
    white-space: nowrap;
}

.element .gh {
    position: absolute;
    top: 721px;
    left: 16px;
    width: 326px;
    height: 189px;
    aspect-ratio: 1.73;
}

.element .group-67 {
    position: absolute;
    top: 533px;
    left: calc(50.00% - 186px);
    width: 373px;
    height: 66px;
    display: flex;
    justify-content: center;
    background: linear-gradient(270deg,
            rgba(235, 226, 239, 0) 0%,
            rgba(239, 220, 248, 1) 20%,
            rgba(237, 221, 245, 1) 80%,
            rgba(249, 237, 255, 0) 100%);
}

.element .frame-45 {
    margin-top: 6px;
    width: 332.59px;
    height: 51.74px;
    margin-left: 0.1px;
    position: relative;
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 4.62px;
}

.element .text-wrapper-108 {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: 0.55px;
    line-height: 24px;
}

.element .frame-46 {
    display: flex;
    flex-direction: column;
    width: 322px;
    align-items: center;
    gap: 12.05px;
    position: absolute;
    left: 41px;
}

.element .text-wrapper-109 {
    position: relative;
    align-self: stretch;
    margin-top: -1px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #1f525e;
    font-size: 28px;
    text-align: center;
    letter-spacing: 3.92px;
    line-height: 36.4px;
}

.element .group-68 {
    position: relative;
    width: 83.87px;
    height: 1px;
    margin-bottom: -0.5px;
    background-image: url(./img/vector-32-1.svg);
    background-size: 100% 100%;
}

.element .sec-kogao {
    width: 376px;
}

.element .sec-kogao[open] {
    height: 1211px;
}

.element .rectangle-41 {
    top: 33px;
    left: calc(50.00% - 186px);
    width: 372px;
    height: 1277px;
    position: absolute;
    background: linear-gradient(174deg,
            rgba(243, 240, 252, 1) 0%,
            rgba(254, 254, 255, 1) 23%,
            rgba(243, 240, 252, 1) 100%);
}

.element .div-23 {
    position: absolute;
    top: 877px;
    left: calc(50.00% - 166px);
    width: 330px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: 0.69px;
    line-height: 18px;
}

.element .text-wrapper-110 {
    color: #84479f;
    font-size: 21.9px;
    letter-spacing: 0.24px;
    line-height: 28.5px;
}

.element .frame-47 {
    width: 342px;
    height: 60.26px;
    position: absolute;
    top: 790px;
    left: calc(50.00% - 172px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9.24px;
}

.element .group-70 {
    position: relative;
    width: 372.63px;
    height: 64.85px;
    margin-bottom: -4.59px;
    margin-left: -15.07px;
    margin-right: -15.07px;
    background: linear-gradient(270deg,
            rgba(235, 226, 239, 0) 0%,
            rgba(239, 220, 248, 1) 20%,
            rgba(237, 221, 245, 1) 80%,
            rgba(249, 237, 255, 0) 100%);
}

.element .frame-48 {
    width: 332.59px;
    height: 48px;
    align-items: center;
    justify-content: center;
    position: relative;
    top: 6px;
    left: calc(50.00% - 166px);
    display: flex;
    flex-direction: column;
    gap: 4.62px;
}

.element .frame-49 {
    margin-top: -2.01px;
    margin-bottom: -2.01px;
    display: flex;
    align-items: center;
    gap: 10.04px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .text-wrapper-111 {
    position: relative;
    width: fit-content;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: -0.37px;
    line-height: 25.3px;
    white-space: nowrap;
}

.element .group-71 {
    left: calc(50.00% - 188px);
    height: 499px;
    position: absolute;
    top: 0;
    width: 373px;
}

.element .group-72 {
    width: 375px;
    height: 499px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 186px);
}

.element .rectangle-42 {
    top: 1px;
    left: calc(50.00% - 187px);
    height: 55px;
    position: absolute;
    width: 373px;
    border-radius: 3.7px;
    background: linear-gradient(90deg,
            rgba(17, 44, 91, 1) 0%,
            rgba(17, 44, 91, 1) 100%);
}

.element .frame-50 {
    display: flex;
    flex-direction: column;
    width: 342px;
    height: 419px;
    align-items: center;
    gap: 13.77px;
    position: absolute;
    top: 80px;
    left: 11px;
}

.element .text-wrapper-112 {
    position: absolute;
    top: 15px;
    left: 1px;
    width: 48px;
    font-family: "Ancizar Sans", Helvetica;
    font-weight: 500;
    color: #84479f;
    font-size: 42.5px;
    text-align: center;
    letter-spacing: -2.55px;
    line-height: 42.5px;
    white-space: nowrap;
}

.element .text-wrapper-113 {
    position: relative;
    width: fit-content;
    margin-top: -0.05px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: -0.37px;
    line-height: 25.3px;
}

.element .group-73 {
    position: relative;
    width: 342.79px;
    height: 68.3px;
    margin-left: -0.14px;
    margin-right: -0.14px;
}

.element .frame-51 {
    display: flex;
    flex-direction: column;
    width: 342.79px;
    height: 68px;
    align-items: center;
    justify-content: center;
    gap: 13.77px;
    position: relative;
    top: 1px;
}

.element .div-24 {
    position: relative;
    width: 330.45px;
    height: 54.24px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: 0.69px;
    line-height: 19.5px;
}

.element .text-wrapper-114 {
    color: #84479f;
    font-size: 21.9px;
    letter-spacing: 0.24px;
    line-height: 30.9px;
}

.element .group-74 {
    position: relative;
    width: 306.26px;
    height: 100.44px;
}

.element .polygon-8 {
    position: absolute;
    top: 65px;
    left: 97px;
    width: 13px;
    height: 21px;
}

.element .group-75 {
    position: absolute;
    top: 0;
    left: 1px;
    width: 306px;
    height: 100px;
}

.element .rectangle-43 {
    position: absolute;
    top: 6px;
    left: 52px;
    width: 255px;
    height: 66px;
    background-color: #f1f4fc;
    border-radius: 3.68px;
}

.element .group-76 {
    position: absolute;
    top: 0;
    left: 0;
    width: 94px;
    height: 100px;
}

.element .SNS-wrapper {
    position: absolute;
    top: 19px;
    left: 86px;
    width: 191px;
    height: 38px;
    display: flex;
}

.element .SNS-2 {
    width: 189.27px;
    height: 38px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #112c5b;
    font-size: 12.9px;
    text-align: center;
    line-height: 19px;
}

.element .text-wrapper-115 {
    letter-spacing: 0.1px;
}

.element .group-77 {
    position: relative;
    width: 348.31px;
    height: 113.38px;
    margin-left: -1.91px;
    margin-right: -3.91px;
}

.element .rectangle-44 {
    position: absolute;
    top: 1px;
    left: 1px;
    width: 283px;
    height: 87px;
    background-color: #bb71da;
    border-radius: 3.68px;
}

.element .polygon-9 {
    position: absolute;
    top: 80px;
    left: 203px;
    width: 13px;
    height: 21px;
}

.element .div-25 {
    position: absolute;
    top: 11px;
    left: 23px;
    width: 239px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: transparent;
    font-size: 13.8px;
    letter-spacing: 0.14px;
    line-height: 20.8px;
}

.element .text-wrapper-116 {
    color: #ffef17;
    letter-spacing: 0.02px;
}

.element .text-wrapper-117 {
    color: #ffffff;
    letter-spacing: 0.02px;
}

.element .chatgpt-image-2 {
    position: absolute;
    top: 0;
    left: 236px;
    width: 110px;
    height: 113px;
    aspect-ratio: 0.97;
}

.element .frame-52 {
    display: flex;
    flex-direction: column;
    width: 342.5px;
    height: 70.75px;
    align-items: center;
    gap: 13.77px;
    position: relative;
    margin-bottom: -49.39px;
}

.element .text-wrapper-118 {
    position: relative;
    width: 342.72px;
    height: 70.75px;
    margin-top: -0.98px;
    margin-left: -0.11px;
    margin-right: -0.11px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .text-wrapper-119 {
    position: absolute;
    top: 8px;
    left: calc(50.00% - 108px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 29.6px;
    text-align: center;
    letter-spacing: 4.14px;
    line-height: 38.4px;
    white-space: nowrap;
}

.element .frame-53 {
    display: flex;
    flex-direction: column;
    width: 343px;
    align-items: center;
    gap: 13.77px;
    position: absolute;
    top: 949px;
    left: calc(50.00% - 172px);
}

.element .group-78 {
    position: relative;
    width: 339.09px;
    height: 223.6px;
}

.element .group-79 {
    position: absolute;
    top: 17px;
    left: 0;
    width: 169px;
    height: 207px;
}

.element .rectangle-45 {
    top: 0;
    left: 0;
    height: 66px;
    background-color: #a179cb;
    position: absolute;
    width: 165px;
    border-radius: 3.7px 3.7px 0px 0px;
}

.element .text-wrapper-120 {
    width: 100%;
    top: 19px;
    left: calc(50.00% - 46px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: 1.11px;
    line-height: 18px;
}

.element .text-wrapper-121 {
    position: absolute;
    top: 149px;
    left: calc(50.00% - 82px);
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #44424e;
    font-size: 12.9px;
    text-align: center;
    letter-spacing: 0.52px;
    line-height: 16.8px;
}

.element .polygon-10 {
    position: absolute;
    top: 61px;
    left: 77px;
    width: 11px;
    height: 9px;
}

.element .group-80 {
    position: absolute;
    top: 17px;
    left: 174px;
    width: 169px;
    height: 207px;
}

.element .rectangle-46 {
    position: absolute;
    top: 17px;
    left: 1px;
    width: 165px;
    height: 190px;
    background-color: #ffffff;
    border-radius: 3.7px;
    box-shadow: 0px 3.7px 3.7px #00000026;
}

.element .rectangle-47 {
    top: 1px;
    left: 1px;
    height: 66px;
    background-color: #727cd4;
    position: absolute;
    width: 165px;
    border-radius: 3.7px 3.7px 0px 0px;
}

.element .text-wrapper-122 {
    position: absolute;
    top: 19px;
    left: calc(50.00% - 39px);
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: 1.11px;
    line-height: 18px;
}

.element .text-wrapper-123 {
    position: absolute;
    top: 149px;
    left: calc(50.00% - 63px);
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #44424e;
    font-size: 12.9px;
    text-align: center;
    letter-spacing: 0.52px;
    line-height: 16.8px;
}

.element .group-81 {
    position: absolute;
    top: 0;
    left: 66px;
    width: 36px;
    height: 36px;
}

.element .group-82 {
    position: absolute;
    top: 0;
    left: 238px;
    width: 36px;
    height: 36px;
    aspect-ratio: 1;
}

.element .mask-group {
    position: absolute;
    top: 89px;
    left: 5px;
    width: 156px;
    height: 73px;
}

.element .mask-group-2 {
    position: absolute;
    top: 89px;
    left: 177px;
    width: 156px;
    height: 73px;
}

.element .text-wrapper-124 {
    position: relative;
    width: 330.45px;
    height: 105.46px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .group-83 {
    position: absolute;
    top: 569px;
    left: 12px;
    width: 341px;
    height: 191px;
}

.element .group-84 {
    position: absolute;
    top: 0;
    left: 0;
    width: 99px;
    height: 67px;
    display: flex;
    flex-direction: column;
    gap: 4.6px;
}

.element .group-85 {
    margin-left: 0;
    height: 24.81px;
    margin-top: 0;
    display: flex;
    align-items: flex-end;
    min-width: 97.39px;
}

.element .group-86 {
    width: 97px;
    height: 25px;
    margin-bottom: 0;
    display: flex;
}

.element .group-87 {
    margin-top: 0;
    width: 99.39px;
    height: 24.81px;
    margin-left: 0;
    position: relative;
}

.element .rectangle-48 {
    position: absolute;
    top: 1px;
    left: 0;
    width: 97px;
    height: 25px;
    background-color: #c48fdb;
    border-radius: 29.57px;
}

.element .text-wrapper-125 {
    position: absolute;
    top: 1px;
    left: calc(50.00% - 27px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 16.5px;
    letter-spacing: 1.32px;
    line-height: 23.2px;
    white-space: nowrap;
}

.element .text-wrapper-126 {
    margin-left: 2.8px;
    width: 92px;
    height: 38px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3c271b;
    font-size: 14.3px;
    letter-spacing: 1px;
    line-height: 18.9px;
}

.element .group-88 {
    position: absolute;
    top: 0;
    left: 148px;
    width: 112px;
    height: 67px;
    display: flex;
    flex-direction: column;
    gap: 4.6px;
}

.element .group-89 {
    margin-left: 0;
    justify-content: flex-end;
    align-items: flex-end;
    height: 24.81px;
    margin-top: 0;
    display: flex;
    min-width: 97.39px;
}

.element .rectangle-49 {
    position: absolute;
    top: 1px;
    left: 1px;
    width: 97px;
    height: 25px;
    background-color: #9e66b6;
    border-radius: 29.57px;
}

.element .text-wrapper-127 {
    margin-left: 2.8px;
    width: 107px;
    height: 38px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3c271b;
    font-size: 14.3px;
    text-align: center;
    letter-spacing: 1px;
    line-height: 18.9px;
}

.element .group-90 {
    position: absolute;
    top: 123px;
    left: 64px;
    width: 124px;
    height: 67px;
    display: flex;
    flex-direction: column;
    gap: 4.6px;
}

.element .group-91 {
    margin-left: 8.3px;
    align-items: flex-start;
    height: 24.81px;
    margin-top: 0;
    display: flex;
    min-width: 97.39px;
}

.element .group-92 {
    width: 97px;
    height: 25px;
    display: flex;
}

.element .group-93 {
    width: 99.39px;
    height: 24.81px;
    position: relative;
}

.element .rectangle-50 {
    position: absolute;
    top: 0;
    left: 0;
    width: 97px;
    height: 25px;
    background-color: #737dd5;
    border-radius: 29.57px;
}

.element .text-wrapper-128 {
    margin-left: 0;
    width: 122px;
    height: 38px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3c271b;
    font-size: 14.3px;
    text-align: center;
    letter-spacing: 1px;
    line-height: 18.9px;
}

.element .group-94 {
    position: absolute;
    top: 124px;
    left: 222px;
    width: 121px;
    height: 67px;
    display: flex;
    flex-direction: column;
    gap: 4.6px;
}

.element .group-95 {
    margin-left: 7.4px;
    align-items: flex-start;
    height: 24.81px;
    margin-top: 0;
    display: flex;
    min-width: 97.39px;
}

.element .rectangle-51 {
    position: absolute;
    top: 0;
    left: 0;
    width: 97px;
    height: 25px;
    background-color: #8238a2;
    border-radius: 29.57px;
}

.element .text-wrapper-129 {
    margin-left: 0;
    width: 119px;
    height: 38px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3c271b;
    font-size: 14.3px;
    text-align: center;
    letter-spacing: 1px;
    line-height: 18.9px;
}

.element .vector-16 {
    position: absolute;
    top: 70px;
    left: 48px;
    width: 2px;
    height: 25px;
}

.element .vector-17 {
    position: absolute;
    top: 70px;
    left: 196px;
    width: 2px;
    height: 25px;
}

.element .vector-18 {
    position: absolute;
    top: 93px;
    left: 118px;
    width: 2px;
    height: 25px;
}

.element .vector-19 {
    position: absolute;
    top: 94px;
    left: 275px;
    width: 2px;
    height: 25px;
}

.element .vector-20 {
    position: absolute;
    top: 94px;
    left: 4px;
    width: 330px;
    height: 1px;
}

.element .group-96 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 190px);
    width: 389px;
    height: 76px;
}

.element .group-97 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 194px);
    width: 195px;
    height: 76px;
}

.element .rectangle-52 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 98px);
    width: 195px;
    height: 64px;
    border-radius: 10px 10px 0px 0px;
    background: linear-gradient(0deg,
            rgba(169, 71, 214, 1) 0%,
            rgba(195, 123, 225, 1) 100%);
}

.element .polygon-11 {
    position: absolute;
    top: 60px;
    left: calc(50.00% - 8px);
    width: 17px;
    height: 15px;
}

.element .group-98 {
    position: absolute;
    width: 182px;
    height: 50px;
    top: 14px;
    left: 203px;
    border-radius: 10px 10px 0px 0px;
    background-color: #a69fbc;
}

.element .text-wrapper-130 {
    position: absolute;
    top: 11px;
    left: calc(50.00% - 176px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 20px;
    text-align: center;
    letter-spacing: 2.6px;
    line-height: 24px;
}


.element .text-wrapper-131 {
    position: absolute;
    top: 24px;
    left: calc(50.00% + 44px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #f8f5fa;
    font-size: 14px;
    text-align: center;
    letter-spacing: 1.82px;
    line-height: 16.8px;
}

.element .vector-21 {
    position: absolute;
    top: 680px;
    left: calc(50% - 24px);
    width: 24px;
    height: 5px;
}

.element .sec-houkyou {
    width: 376px;
}

.element .sec-houkyou[open] {
    height: 1121px;
}

.breastcase-diff {
    display: block;
    align-items: center;
    gap: 8px;
    position: absolute;
    top: 873px;
    margin: 0 auto;
    left: 19px;
}

.breastcase-diff h3 {
    display: flex;
    height: 31px;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #173d82 0%, #112c5b 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .8px;
    line-height: 18px;
}

.breastcase-diff__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 15px;
}

.breastcase-diff__grid article {
    position: relative;
    text-align: center;
}

.breastcase-diff__grid span {
    position: absolute;
    top: -4px;
    left: -4px;
    display: flex;
    width: 17px;
    height: 17px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #5b3795;
    color: #fff;
    font-size: 8px;
    font-weight: 700;
}

.breastcase-diff__grid p,
.breastcase-diff__grid strong {
    display: flex;
    min-height: 51px;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 18px;
}

.breastcase-diff__grid p {
    background: #ddd6f1;
    color: #112c5b;
    font-weight: 700;
}

.breastcase-diff__grid i {
    display: block;
    width: 1px;
    height: 20px;
    margin: 0 auto;
    background: #112c5b;
}

.breastcase-diff__grid strong {
    min-height: 76px;
    background: #fff;
    color: #112c5b;
    font-weight: 700;
}

.element .rectangle-53 {
    top: 27px;
    left: calc(50.00% - 185px);
    width: 373px;
    height: 997px;
    position: absolute;
    background: linear-gradient(174deg,
            rgba(243, 240, 252, 1) 0%,
            rgba(254, 254, 255, 1) 23%,
            rgba(243, 240, 252, 1) 100%);
}

.element .group-99 {
    width: 379px;
    height: 606px;
    position: absolute;
    top: 0;
    left: calc(50.00% - 186px);
}

details {
    overflow: hidden;
    height: 53px;
    transition: height 0.3s ease-out;
}

details[open] {
    height: auto;

}

.element .detail_sec_title {
    list-style: none;
    top: 0;
    height: 53px;
    position: absolute;
    width: 373px;
    border-radius: 3.7px;
    background: linear-gradient(90deg,
            rgba(17, 44, 91, 1) 0%,
            rgba(17, 44, 91, 1) 100%);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 29.6px;
    text-align: center;
    padding-top: 10px;

    letter-spacing: 4.14px;
    white-space: nowrap;
    z-index: 10;
}

.detail_sec_title_w_num {
    height: 80px;
}

.detail_sec_title_w_num .marker {
    top: 36.5px;
}

.detail_sec_title_w_num .marker_plus {
    top: 27.5px;

}

/* .element .detail_sec_title::after {
  content:"−";
  position:absolute; 
  right: 10px;
} */
.marker {
    width: 20px;
    height: 1px;
    background-color: #FFFFFF;
    position: absolute;
    right: 20px;
    top: 26.5px;
    transition: 0.3s ease-out;

}

.marker_plus {
    width: 1px;
    height: 20px;
    background-color: #FFFFFF;
    position: absolute;
    right: 29.5px;
    top: 17.5px;
    transition: 0.25s ease-out;

}

details[open] .marker_plus {
    transform: rotate(90deg);
    transition: 0.1s ease-out;
}


.element .text-wrapper-132 {
    position: absolute;
    top: 151px;
    left: 16px;
    width: 343px;
    height: 67px;
    display: flex;
    align-items: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .NG {
    position: absolute;
    top: 441px;
    left: 15px;
    height: 44px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 16px;
    text-align: center;
    letter-spacing: 1.28px;
    line-height: 22.4px;
}

.element .text-wrapper-133 {
    color: #202565;
    letter-spacing: 0.2px;
}

.element .text-wrapper-134 {
    color: #0e75d9;
    letter-spacing: 0.2px;
}

.element .frame-54 {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0px 0px 4px;
    position: absolute;
    top: 222px;
    left: 16px;
}

.element .group-100 {
    position: relative;
    width: 108px;
    height: 168.51px;
}

.element .rectangle-55 {
    position: absolute;
    top: 1px;
    left: 0;
    width: 106px;
    height: 168px;
    background-color: #f1f4fc;
}

.element .rectangle-56 {
    position: absolute;
    top: 0;
    left: 0;
    width: 106px;
    height: 32px;
    background: linear-gradient(180deg,
            rgba(24, 69, 127, 1) 0%,
            rgba(32, 32, 97, 1) 100%);
}

.element .text-wrapper-135 {
    position: absolute;
    top: 3px;
    left: 32px;
    width: 42px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 14px;
    text-align: center;
    letter-spacing: -0.28px;
    line-height: 24.1px;
    white-space: nowrap;
}

.element .group-101 {
    position: relative;
    width: 108px;
    height: 168.12px;
}

.element .rectangle-57 {
    position: absolute;
    top: 0;
    left: 0;
    width: 106px;
    height: 168px;
    background-color: #f1f4fc;
}

.element .rectangle-58 {
    position: absolute;
    top: 1px;
    left: 0;
    width: 106px;
    height: 31px;
    background: linear-gradient(180deg,
            rgba(24, 69, 127, 1) 0%,
            rgba(32, 32, 97, 1) 100%);
}

.element .text-wrapper-136 {
    position: absolute;
    top: 3px;
    left: calc(50.00% - 18px);
    width: 34px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 14px;
    text-align: center;
    letter-spacing: 1.12px;
    line-height: 24.1px;
    white-space: nowrap;
}

.element .group-102 {
    position: relative;
    width: 108px;
    height: 168.12px;
    margin-right: -2px;
}

.element .text-wrapper-137 {
    position: absolute;
    top: 3px;
    left: 28px;
    width: 49px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.56px;
    line-height: 24.1px;
    white-space: nowrap;
}

.element .group-103 {
    position: absolute;
    width: 327px;
    height: 114px;
    top: 44px;
    left: 4px;
}

.element .group-104 {
    position: absolute;
    top: 0;
    left: 0;
    width: 102px;
    height: 22px;
}

.element .rectangle-59 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100px;
    height: 22px;
    background-color: #0e75d9;
    border-radius: 13px;
}

.element .text-wrapper-138 {
    position: absolute;
    top: 2px;
    left: 15px;
    width: 68px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 10.9px;
    text-align: center;
    letter-spacing: -0.22px;
    line-height: 16.5px;
    white-space: nowrap;
}

.element .group-105 {
    position: absolute;
    top: 92px;
    left: 227px;
    width: 102px;
    height: 22px;
}

.element .text-wrapper-139 {
    position: absolute;
    top: 2px;
    left: 3px;
    width: 96px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 10.9px;
    text-align: center;
    letter-spacing: -0.22px;
    line-height: 16.5px;
    white-space: nowrap;
}

.element .group-106 {
    position: absolute;
    top: 33px;
    left: 0;
    width: 213px;
    height: 22px;
}

.element .rectangle-60 {
    background-color: #0e75d9;
    position: absolute;
    top: 0;
    left: 0;
    width: 211px;
    height: 22px;
    border-radius: 13px;
}

.element .text-wrapper-140 {
    position: absolute;
    top: 2px;
    left: 32px;
    width: 145px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 10.9px;
    text-align: center;
    letter-spacing: -0.22px;
    line-height: 16.5px;
    white-space: nowrap;
}

.element .group-107 {
    position: absolute;
    top: 62px;
    left: 116px;
    width: 213px;
    height: 22px;
}

.element .rectangle-61 {
    background-color: #d95bf3;
    position: absolute;
    top: 0;
    left: 0;
    width: 211px;
    height: 22px;
    border-radius: 13px;
}

.element .frame-55 {
    display: flex;
    flex-direction: column;
    width: 343px;
    align-items: center;
    gap: 13.77px;
    position: absolute;
    top: 558px;
    left: 16px;
}

.element .text-wrapper-141 {
    position: relative;
    width: 330px;
    height: 58px;
    margin-top: -0.98px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 23.8px;
}

.element .text-wrapper-142 {
    position: absolute;
    top: 5px;
    left: calc(50.00% - 35px);
    width: 64px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 29.6px;
    text-align: center;
    letter-spacing: 4.14px;
    line-height: 38.4px;
    white-space: nowrap;
}

.element .polygon-12 {
    position: absolute;
    top: 42px;
    left: calc(50.00% - 10px);
    width: 24px;
    height: 19px;
}


.element .group-108 {
    position: relative;
    width: 117px;
    height: 115px;
}

.element .ellipse-7 {
    position: absolute;
    top: 0;
    left: 0;
    width: 115px;
    height: 115px;
    border-radius: 57.5px;
    background: linear-gradient(210deg,
            rgba(230, 198, 255, 1) 0%,
            rgba(115, 125, 213, 1) 100%);
}

.element .img-8 {
    position: absolute;
    top: 4px;
    left: 40px;
    width: 35px;
    height: 37px;
    aspect-ratio: 0.95;
}

.element .text-wrapper-143 {
    position: absolute;
    top: 42px;
    left: 14px;
    width: 86px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: -0.28px;
    line-height: 21.1px;
}

.element .ellipse-8 {
    position: absolute;
    top: 0;
    left: 0;
    width: 115px;
    height: 115px;
    border-radius: 57.5px;
    background: linear-gradient(211deg,
            rgba(230, 198, 255, 1) 0%,
            rgba(115, 125, 213, 1) 100%);
}

.element .img-9 {
    position: absolute;
    top: 4px;
    left: calc(50.00% - 18px);
    width: 33px;
    height: 37px;
    aspect-ratio: 0.89;
}

.element .text-wrapper-144 {
    position: absolute;
    top: 45px;
    left: 14px;
    width: 86px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 13.9px;
    text-align: center;
    letter-spacing: -0.28px;
    line-height: 21.1px;
}

.element .group-109 {
    position: relative;
    width: 117px;
    height: 115px;
    margin-right: -2px;
}

.element .ellipse-9 {
    position: absolute;
    top: 0;
    left: 0;
    width: 115px;
    height: 115px;
    border-radius: 57.5px;
    background: linear-gradient(214deg,
            rgba(230, 198, 255, 1) 0%,
            rgba(115, 125, 213, 1) 100%);
}

.element .polygon-13 {
    position: absolute;
    top: 850px;
    left: 178px;
    width: 17px;
    height: 10px;
}

.element .text-wrapper-145 {
    position: absolute;
    top: 730px;
    left: calc(50.00% - 170px);
    width: 343px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #3b261b;
    font-size: 13.9px;
    letter-spacing: -0.28px;
    line-height: 21.1px;
}

.element .group-110 {
    position: absolute;
    top: 640px;
    left: calc(50.00% - 188px);
    width: 373px;
    height: 79px;
    display: flex;
    justify-content: center;
    background: linear-gradient(270deg,
            rgba(235, 226, 239, 0) 0%,
            rgba(239, 220, 248, 1) 20%,
            rgba(237, 221, 245, 1) 80%,
            rgba(249, 237, 255, 0) 100%);
}

.element .frame-57 {
    margin-top: 12px;
    width: 333px;
    height: 51.96px;
    margin-left: 0.4px;
    position: relative;
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 4.62px;
}

.element .text-wrapper-146 {
    position: relative;
    width: 281px;
    margin-right: -0.06px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: 0.55px;
    line-height: 24px;
}

.element .group-111 {
    position: absolute;
    top: 73px;
    left: calc(50.00% - 185px);
    width: 373px;
    height: 76px;
    display: flex;
    justify-content: center;
    background: linear-gradient(270deg,
            rgba(235, 226, 239, 0) 0%,
            rgba(239, 220, 248, 1) 20%,
            rgba(237, 221, 245, 1) 80%,
            rgba(249, 237, 255, 0) 100%);
}

.element .frame-58 {
    margin-top: 12.4px;
    width: 332.59px;
    height: 51.28px;
    margin-left: -0.4px;
    position: relative;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    gap: 4.62px;
}

.element .frame-59 {
    margin-top: -0.23px;
    margin-bottom: -0.23px;
    display: flex;
    align-items: center;
    gap: 10.04px;
    position: relative;
    align-self: stretch;
    width: 100%;
    flex: 0 0 auto;
}

.element .text-wrapper-147 {
    position: relative;
    display: flex;
    align-items: center;
    width: 273px;
    height: 32px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #3b261b;
    font-size: 18.5px;
    letter-spacing: -0.37px;
    line-height: 25.3px;
}

.element .rectangle-62 {
    position: absolute;
    top: 401px;
    left: 142px;
    width: 207px;
    height: 21px;
    background-color: #da5cf3;
    border-radius: 40px;
}

.element .rectangle-63 {
    position: absolute;
    top: 400px;
    left: 16px;
    width: 114px;
    height: 22px;
    background-color: #0e75d9;
    border-radius: 34px;
}

.element .text-wrapper-148 {
    position: absolute;
    top: 398px;
    left: 20px;
    width: 106px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 13px;
    text-align: center;
    letter-spacing: -0.26px;
    line-height: 22.4px;
    white-space: nowrap;
}

.element .text-wrapper-149 {
    position: absolute;
    top: 399px;
    left: 197px;
    width: 94px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 500;
    color: #ffffff;
    font-size: 14px;
    text-align: center;
    letter-spacing: -0.28px;
    line-height: 24.1px;
    white-space: nowrap;
}

.element .polygon-14 {
    position: absolute;
    top: 428px;
    left: 66px;
    width: 13px;
    height: 10px;
}

.element .polygon-15 {
    position: absolute;
    top: 428px;
    left: 238px;
    width: 13px;
    height: 10px;
}

.element .text-wrapper-150 {
    position: absolute;
    top: 442px;
    left: 168px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #b433cd;
    font-size: 18px;
    text-align: center;
    letter-spacing: -0.36px;
    line-height: 23.4px;
}

.element .rectangle-64 {
    position: absolute;
    top: 497px;
    left: 150px;
    width: 199px;
    height: 51px;
    background-color: #e9ecf7;
    border-radius: 4px;
}

.element .rectangle-65 {
    position: absolute;
    top: 494px;
    left: 20px;
    width: 113px;
    height: 51px;
    background-color: #e9ecf7;
    border-radius: 4px;
}

.element .group-112 {
    position: absolute;
    width: 13px;
    height: 13px;
    top: 492px;
    left: 147px;
    display: flex;
}

.element .group-113 {
    width: 14.77px;
    height: 12.77px;
    position: relative;
}

.element .ellipse-10 {
    position: absolute;
    top: 0;
    left: 0;
    width: 13px;
    height: 13px;
    background-color: #241453;
    border-radius: 6.38px;
}

.element .text-wrapper-151 {
    position: absolute;
    top: 1px;
    left: 2px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #eae7ec;
    font-size: 7.9px;
    letter-spacing: 0;
    line-height: 10.5px;
    white-space: nowrap;
}

.element .group-114 {
    position: absolute;
    top: 507px;
    left: 170px;
    width: 158px;
    height: 32px;
    display: flex;
}

.element .text-wrapper-152 {
    width: 156px;
    height: 32px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #1e2e6c;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0;
    line-height: 16px;
}

.element .element-wrapper {
    position: absolute;
    top: 505px;
    left: 24px;
    width: 106px;
    height: 32px;
    display: flex;
}

.element .text-wrapper-153 {
    width: 104px;
    height: 32px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #1e2e6c;
    font-size: 10px;
    text-align: center;
    letter-spacing: 0;
    line-height: 12px;
}

.element .group-115 {
    position: absolute;
    width: 13px;
    height: 13px;
    top: 490px;
    left: 18px;
    display: flex;
}


.sec-nose {
    width: 376px;
    overflow: hidden;
    background:
        linear-gradient(180deg, #fff 0, #fff 52px, #f3f0fc 52px, #f3f0fc 100%);
    color: #3b261b;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;

}

.sec-nose h1,
.sec-nose h2,
.sec-nose h3,
.sec-nose p {
    margin: 0;
}

.sec-nose img {
    display: block;
    max-width: 100%;
}

.rhino-hero {
    position: relative;
    height: 52px;
    border-radius: 3px;
    background: #112c5b;
}

.rhino-hero__title {
    color: #fff;
    font-family: "Ancizar Sans", Helvetica;
    font-size: 29px;
    font-weight: 500;
    letter-spacing: 4.1px;
    line-height: 52px;
    text-align: center;
}

.rhino-hero__line {
    position: absolute;
    top: 27px;
    right: 10px;
    width: 20px;
    height: 2px;
}

.rhino-section {
    padding: 68px 16px 0;
}

.rhino-point-head {
    position: relative;
    display: flex;
    min-height: 55px;
    align-items: center;
    gap: 6px;
    margin: 0 -16px;
    padding: 0 16px 0 24px;
    background: linear-gradient(270deg, rgba(235, 226, 239, 0) 0%, #efdaf8 20%, #edddf5 80%, rgba(249, 237, 255, 0) 100%);
}

.rhino-point-head--first {
    margin-top: 0;
}

.rhino-point-head--second {
    margin-top: 4px;
}

.rhino-point-mark {
    position: relative;
    width: 48px;
    height: 52px;
    flex: 0 0 48px;
    color: #84479f;
}

.rhino-point-mark__label {
    position: absolute;
    top: 0;
    left: 3px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -.3px;
    line-height: 22px;
}

.rhino-point-mark__num {
    position: absolute;
    top: 13px;
    left: 0;
    font-size: 42px;
    font-weight: 500;
    letter-spacing: -2.5px;
    line-height: 42px;
    font-family: "Ancizar Sans", Helvetica;

}

.rhino-point-head__title {
    min-width: 0;
    color: #3b261b;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -.35px;
    line-height: 28px;
}

.rhino-point-head--second .rhino-point-head__title {
    letter-spacing: .55px;
    line-height: 24px;
}

.rhino-copy {
    margin-top: 15px;
    color: #3b261b;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -.28px;
    line-height: 23.8px;
}

.rhino-copy--closing {
    margin-top: 16px;
}

.rhino-approach-title {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 8px;
    margin: 13px 0 7px;
    color: #112c5b;
    white-space: nowrap;
}

.rhino-approach-title__text {
    font-size: 19px;
    font-weight: 500;
    letter-spacing: 1.45px;
    line-height: 1;
}

.rhino-approach-title__num {
    color: #3090c7;
    font-size: 39px;
    font-weight: 500;
    letter-spacing: 2.2px;
    line-height: .9;
}

.rhino-approach-title__slash {
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
}

.rhino-card-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 0 7px;
}

.rhino-card {
    overflow: hidden;
    border-radius: 11px;
    background: #fff;
}

.rhino-card--image {
    background: transparent;
}

.rhino-card__full-image {
    width: 100%;
    border-radius: 11px;
}

.rhino-card__title {
    min-height: 46px;
    padding: 7px 12px 9px;
    border-radius: 11px 11px 0 0;
    background: linear-gradient(78deg, #a179cb 0%, #c981c0 100%);
    color: #fff;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: .85px;
    line-height: 30px;
    text-align: center;
}

.rhino-card__body {
    padding: 10px 19px 16px;
}

.rhino-card__lead {
    padding-bottom: 9px;
    border-bottom: 1px solid #9aa0b5;
    color: #966dc6;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .55px;
    line-height: 24px;
    text-align: center;
}

.rhino-card__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 122px;
    gap: 7px;
    align-items: center;
    padding-top: 9px;
}

.rhino-card__text {
    min-width: 0;
}

.rhino-card__badge {
    display: inline-flex;
    min-width: 48px;
    height: 15px;
    align-items: center;
    justify-content: center;
    border-radius: 54px;
    background: #112c5b;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 15px;
}

.rhino-card__text p {
    margin-top: 4px;
    color: #000;
    font-size: 12.4px;
    font-weight: 400;
    letter-spacing: .48px;
    line-height: 18.3px;
}

.rhino-card__image {
    width: 122px;
    height: 82px;
    object-fit: contain;
}

.rhino-section--second {
    padding-bottom: 57px;
}

.rhino-down {
    width: 18px;
    height: 18px;
    margin: 15px auto 14px;
}

.rhino-criteria {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 0 -11px;
}

.rhino-criteria__item {
    position: relative;
    display: flex;
    width: 115px;
    max-width: 100%;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    justify-self: center;
    border-radius: 50%;
    background: linear-gradient(210deg, #e6c6ff 0%, #737dd5 100%);
}

.rhino-criteria__item p {
    padding-top: 30px;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -.26px;
    line-height: 19.5px;
    text-align: center;
}

.rhino-criteria__icon {
    position: absolute;
    object-fit: contain;
}

.rhino-criteria__icon--shield {
    top: 12px;
    left: 50%;
    width: 46px;
    height: 31px;
    transform: translateX(-50%);
}

.rhino-criteria__icon--movie {
    top: 8px;
    left: 50%;
    width: 60px;
    height: 40px;
    transform: translateX(-50%);
}

.rhino-criteria__icon--hands {
    top: 8px;
    left: 50%;
    width: 60px;
    height: 40px;
    transform: translateX(-50%);
}

@media (max-width: 360px) {
    .rhino-section {
        padding-inline: 12px;
    }

    .rhino-point-head {
        margin-inline: -12px;
        padding-left: 16px;
    }

    .rhino-card-list {
        padding-inline: 0;
    }

    .rhino-card__content {
        grid-template-columns: minmax(0, 1fr) 104px;
    }

    .rhino-card__image {
        width: 104px;
    }

    .rhino-criteria {
        gap: 4px;
        margin-inline: -8px;
    }

    .rhino-criteria__item p {
        font-size: 11px;
        line-height: 17px;
    }
}

.element .frame-60 {
    width: var(--element-width);
    gap: 3px;
    position: relative;
    left: calc(50.00% - 201px);
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 40px auto;
}

.element .frame-61 {
    position: relative;
    width: var(--element-width);
    height: 653px;
    background: linear-gradient(180deg,
            rgba(210, 223, 255, 1) 0%,
            rgba(241, 244, 252, 1) 17%,
            rgba(241, 244, 252, 1) 100%);
}

.element .frame-62 {
    top: 25px;
    left: calc(50.00% - 161px);
    display: flex;
    flex-direction: column;
    width: 321px;
    align-items: center;
    gap: 12px;
    position: absolute;
}

.element .text-wrapper-154 {
    position: relative;
    align-self: stretch;
    margin-top: -1px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #2a1515;
    font-size: 32px;
    text-align: center;
    letter-spacing: 4.48px;
    line-height: 41.6px;
}

.element .group-116 {
    position: relative;
    width: 83.5px;
    height: 1px;
    margin-bottom: -0.5px;
    background-image: url(./img/vector-32-5.svg);
    background-size: cover;
    background-position: 50% 50%;
}

.element .group-117 {
    position: absolute;
    top: 102px;
    left: calc(50.00% - 184px);
    width: 373px;
    height: 154px;
}

.element .rectangle-66 {
    position: absolute;
    top: 29px;
    left: calc(50.00% - 186px);
    width: 367px;
    height: 125px;
    border-radius: 5px;
    background: linear-gradient(75deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 1) 79%);
}

.element .group-118 {
    position: absolute;
    top: 36px;
    left: 21px;
    width: 108px;
    height: 107px;
    display: flex;
    flex-direction: column;
    gap: 2.7px;
}

.element .group-119 {
    margin-left: 9.9px;
    width: 85.84px;
    height: 85.84px;
    margin-top: 0;
    background-image: url(./img/mask-group-7.webp);
    background-size: 100% 100%;
}

.element .div-26 {
    margin-left: 0;
    width: 106px;
    height: 18px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #752f92;
    font-size: 14.9px;
    line-height: 17.9px;
    white-space: nowrap;
}

.element .text-wrapper-155 {
    letter-spacing: 0.09px;
}

.element .text-wrapper-156 {
    font-size: 11.9px;
    letter-spacing: 0.06px;
    line-height: 14.3px;
}

.element .text-wrapper-157 {
    position: absolute;
    top: 45px;
    left: 168px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 18px;
    letter-spacing: 0;
    line-height: 21.6px;
    white-space: nowrap;
}

.element .text-wrapper-158 {
    position: absolute;
    top: 105px;
    left: 299px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 18px;
    letter-spacing: 0;
    line-height: 21.6px;
    white-space: nowrap;
}

.element .div-27 {
    position: absolute;
    top: 57px;
    left: 146px;
    background: linear-gradient(180deg,
            rgba(117, 48, 147, 1) 0%,
            rgba(150, 63, 187, 1) 100%);
    -webkit-background-clip: text !important;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: transparent;
    font-size: 63.2px;
    line-height: 75.9px;
    white-space: nowrap;
    color: #000000;

}

.element .text-wrapper-159 {
    margin-right: -0.05em;
}

.element .text-wrapper-160 {
    font-size: 40.3px;
    margin-right: -0.25rem;
    line-height: 48.4px;
}

.element .text-wrapper-161 {
    /* color: #000000;
  letter-spacing: 0px; */
    margin-left: -0.08rem;
}

.element .group-120 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 186px);
    width: 128px;
    height: 33px;
}

.element .group-121 {
    position: absolute;
    top: 0;
    left: 0;
    width: 134px;
    height: 29px;
}

.element .rectangle-67 {
    position: absolute;
    top: 2px;
    left: 0;
    width: 128px;
    height: 27px;
    background-color: #a27dff;
    border-radius: 2px;
}

.element .text-wrapper-162 {
    position: absolute;
    top: 9px;
    left: 13px;
    width: 39px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 12.2px;
    letter-spacing: 0;
    line-height: 14.6px;
}

.element .text-wrapper-163 {
    position: absolute;
    top: 9px;
    left: 90px;
    width: 26px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 12.2px;
    letter-spacing: 0;
    line-height: 14.6px;
}

.element .text-wrapper-164 {
    position: absolute;
    top: 0;
    left: 51px;
    width: 42px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 22.2px;
    letter-spacing: 0;
    line-height: 26.6px;
}

.element .polygon-16 {
    position: absolute;
    top: 26px;
    left: calc(50.00% - 7px);
    width: 7px;
    height: 7px;
}

.element .group-122 {
    position: absolute;
    top: 279px;
    left: calc(50.00% - 183px);
    width: 373px;
    height: 154px;
}

.element .group-123 {
    position: absolute;
    top: 456px;
    left: calc(50.00% - 184px);
    width: 373px;
    height: 154px;
}

.element .frame-63 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: var(--element-width);
    height: 100px;
    background-color: #ffffff;
    overflow: hidden;
}

.element .frame-64 {
    display: flex;
    flex-direction: column;
    width: min(321px, calc(100% - 32px));
    align-items: center;
    gap: 12px;
    position: relative;
    margin-top: 36px;
}


#pannel-c {
    height: 500px;
    background: linear-gradient(180deg,
            rgba(245, 247, 255, 1) 0%,
            rgba(230, 235, 248, 1) 76%);

}

.element .group-124 {
    position: absolute;
    width: var(--element-width);
    height: 500px;
}

.element .text-wrapper-165 {
    position: relative;
    margin: 10px auto 20px;
    width: 374px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: #112c5b;
    font-size: 15px;
    letter-spacing: 0.1em;
    line-height: 21px;
}

.element .text-wrapper-166 {
    position: absolute;
    top: 449px;
    left: calc(50.00% - 240px);
    width: 231px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #112c5b;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 21px;
}

.element .text-wrapper-167 {
    position: absolute;
    top: 449px;
    left: calc(50.00% + 8px);
    width: 231px;
    font-family: "Inter", Helvetica;
    font-weight: 500;
    color: #112c5b;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 21px;
}

.element .vector-22 {
    display: block;
    position: relative;
    margin: 100px auto;
    margin: 0 auto;
    height: 1px;
    object-fit: cover;
}

.element .text-wrapper-168 {
    position: absolute;
    top: 282px;
    left: calc(50.00% - 237px);
    width: 19px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: #752f92;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 21px;
}

.element .text-wrapper-169 {
    position: absolute;
    top: 282px;
    left: calc(50.00% + 11px);
    width: 19px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: #752f92;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 21px;
}

.element .group-125 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 190px);
    width: 364px;
    height: 71px;
}

.element .group-126 {
    position: absolute;
    top: 1px;
    left: calc(50.00% - 182px);
    width: 182px;
    height: 71px;
}

.element .rectangle-69 {
    position: absolute;
    top: 1px;
    left: calc(50.00% - 91px);
    width: 182px;
    height: 60px;
    border-radius: 9.34px 9.34px 0px 0px;
    background: linear-gradient(0deg,
            rgba(169, 71, 214, 1) 0%,
            rgba(195, 123, 225, 1) 100%);
}

.element .polygon-17 {
    position: absolute;
    top: 56px;
    left: calc(50.00% - 8px);
    width: 16px;
    height: 14px;
}

.element .group-127 {
    position: absolute;
    width: 170px;
    height: 47px;
    top: 13px;
    left: 190px;
    background-color: #a69fbc;
}

.element .text-wrapper-170 {
    position: absolute;
    top: 10px;
    left: calc(50.00% - 163px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 18.7px;
    text-align: center;
    letter-spacing: 2.43px;
    line-height: 22.4px;
}

.element .text-wrapper-171 {
    position: absolute;
    top: 9px;
    left: calc(50.00% + 83px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #f8f5fa;
    font-size: 13.1px;
    text-align: center;
    letter-spacing: 1.7px;
    line-height: 15.7px;
    white-space: nowrap;
}

.element .text-wrapper-172 {
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #752f92;
    font-size: 24px;
    text-align: center;
    letter-spacing: 3.36px;
    line-height: normal;
}

.element .text-wrapper-173 {
    width: 100%;
    text-align: center;

    padding-top: 30px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: #424040;
    font-size: 14px;
    text-align: center;
    letter-spacing: 1.96px;
    line-height: 21px;
    white-space: nowrap;
}

.element .GHHP {
    position: absolute;
    top: 426px;
    left: 30px;
    width: 240px;
    height: 135px;
    aspect-ratio: 1.78;
    object-fit: cover;
}

.element .GHHP-2 {
    position: absolute;
    top: 426px;
    left: 279px;
    width: 102px;
    height: 135px;
    aspect-ratio: 0.76;
}

.element .view-2 {
    position: relative;
    width: 100%;
    background: linear-gradient(180deg, rgba(236, 249, 255, 1) 0%);
    align-items: center;
    text-align: center;
}

.element .group-128 {
    position: absolute;
    top: 147px;
    left: 12px;
    width: 373px;
    height: 454px;
}

.element .group-129 {
    position: absolute;
    top: 0;
    left: 0;
    width: 387px;
    height: 454px;
}

.element .rectangle-70 {
    position: absolute;
    top: 63px;
    left: 0;
    width: 77px;
    height: 391px;
    background-color: #213a6b;
}

.element .rectangle-71 {
    position: absolute;
    top: 1px;
    left: 231px;
    width: 137px;
    height: 63px;
    background-color: #9e9e9e;
}

.element .rectangle-72 {
    position: absolute;
    top: 1px;
    left: 77px;
    width: 154px;
    height: 63px;
    background: linear-gradient(180deg,
            rgba(97, 170, 212, 1) 0%,
            rgba(28, 134, 194, 1) 100%);
}

.element .rectangle-73 {
    position: absolute;
    top: 63px;
    left: 231px;
    width: 137px;
    height: 391px;
    background-color: #f9f8f6;
}

.element .text-wrapper-174 {
    position: absolute;
    top: 108px;
    left: calc(50.00% - 178px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #f6f6f6;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.84px;
    line-height: 18.2px;
    white-space: nowrap;
}

.element .text-wrapper-175 {
    position: absolute;
    top: 305px;
    left: calc(50.00% - 178px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #f6f6f6;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.14px;
    line-height: 18.2px;
    white-space: nowrap;
}

.element .text-wrapper-176 {
    position: absolute;
    top: 401px;
    left: calc(50.00% - 174px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #f6f6f6;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.14px;
    line-height: 18.2px;
    white-space: nowrap;
}

.element .text-wrapper-177 {
    position: absolute;
    top: 196px;
    left: calc(50.00% - 178px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #f6f6f6;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.84px;
    line-height: 18.2px;
}

.element .text-wrapper-178 {
    position: absolute;
    top: 24px;
    left: calc(50.00% + 86px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    letter-spacing: 0.96px;
    line-height: 19.2px;
    white-space: nowrap;
}

.element .rectangle-74 {
    position: absolute;
    top: 63px;
    left: 77px;
    width: 154px;
    height: 391px;
    background: linear-gradient(173deg,
            rgba(225, 245, 255, 1) 0%,
            rgba(246, 252, 255, 1) 13%,
            rgba(255, 255, 255, 1) 100%);
}

.element .text-wrapper-179 {
    position: absolute;
    top: 312px;
    left: calc(50.00% - 106px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #183672;
    font-size: 11.5px;
    text-align: center;
    letter-spacing: 0.69px;
    line-height: 13.8px;
}

.element .group-130 {
    position: absolute;
    top: 271px;
    left: 137px;
    width: 34px;
    height: 34px;
    display: flex;
    border-radius: 17px;
    border: 1.23px solid;
    border-color: #183672;
}

.element .ellipse-11 {
    margin-top: 6px;
    width: 20.09px;
    height: 20.09px;
    margin-left: 6px;
    border-radius: 10.05px;
    border: 1.23px solid;
    border-color: #183672;
}

.element .text-wrapper-180 {
    position: absolute;
    top: 23px;
    left: calc(50.00% - 56px);
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #ffffff;
    font-size: 20px;
    text-align: center;
    letter-spacing: 1.2px;
    line-height: 24px;
    white-space: nowrap;
}

.element .vector-23 {
    position: absolute;
    top: 63px;
    left: calc(50.00% - 179px);
    width: 354px;
    height: 1px;
}

.element .vector-24 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 117px);
    width: 292px;
    height: 1px;
}

.element .vector-25 {
    position: absolute;
    top: 165px;
    left: calc(50.00% + 37px);
    width: 138px;
    height: 1px;
}

.element .vector-26 {
    position: absolute;
    top: 165px;
    left: calc(50.00% - 117px);
    width: 155px;
    height: 1px;
}

.element .vector-27 {
    position: absolute;
    top: 165px;
    left: calc(50.00% - 194px);
    width: 78px;
    height: 1px;
}

.element .vector-28 {
    position: absolute;
    top: 258px;
    left: calc(50.00% - 194px);
    width: 78px;
    height: 1px;
}

.element .vector-29 {
    position: absolute;
    top: 363px;
    left: calc(50.00% - 194px);
    width: 78px;
    height: 1px;
}

.element .vector-30 {
    position: absolute;
    top: 0;
    left: calc(50.00% + 37px);
    width: 1px;
    height: 455px;
}

.element .vector-31 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 117px);
    width: 1px;
    height: 63px;
}

.element .vector-32 {
    position: absolute;
    top: 0;
    left: calc(50.00% + 174px);
    width: 1px;
    height: 455px;
}

.element .vector-33 {
    position: absolute;
    top: 258px;
    left: calc(50.00% - 117px);
    width: 292px;
    height: 1px;
}

.element .vector-34 {
    position: absolute;
    top: 363px;
    left: calc(50.00% - 117px);
    width: 292px;
    height: 1px;
}

.element .vector-35 {
    position: absolute;
    top: 454px;
    left: calc(50.00% - 182px);
    width: 357px;
    height: 1px;
}

.element .group-131 {
    position: absolute;
    top: 81px;
    left: calc(50.00% - 95px);
    width: 114px;
    height: 69px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.element .group-132 {
    margin-left: 34px;
    width: 34px;
    height: 34px;
    display: flex;
    border-radius: 17px;
    border: 1.23px solid;
    border-color: #183672;
}

.element .text-wrapper-181 {
    margin-left: -2px;
    height: 28px;
    width: 120px;
    align-self: center;
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #183672;
    font-size: 11.5px;
    text-align: center;
    letter-spacing: 1.03px;
    line-height: 13.8px;
}

.element .group-133 {
    position: absolute;
    top: 374px;
    left: calc(50.00% - 82px);
    width: 99px;
    height: 69px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.element .group-134 {
    margin-left: 26px;
    width: 34px;
    height: 34px;
    display: flex;
    border-radius: 17px;
    border: 1.23px solid;
    border-color: #183672;
}

.element .text-wrapper-182 {
    margin-left: -2px;
    height: 28px;
    width: 97px;
    align-self: center;
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #183672;
    font-size: 11.5px;
    text-align: center;
    letter-spacing: 0.69px;
    line-height: 13.8px;
}

.element .group-135 {
    position: absolute;
    top: 177px;
    left: calc(50.00% - 98px);
    width: 130px;
    height: 69px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.element .group-136 {
    margin-left: 42px;
    width: 34px;
    height: 34px;
    display: flex;
    border-radius: 17px;
    border: 1.23px solid;
    border-color: #183672;
}

.element .text-wrapper-183 {
    margin-left: -2px;
    height: 28px;
    width: 128px;
    align-self: center;
    font-family: "Overpass", Helvetica;
    font-weight: 600;
    color: #183672;
    font-size: 11.5px;
    text-align: center;
    letter-spacing: 0.69px;
    line-height: 13.8px;
}

.element .group-137 {
    position: absolute;
    top: 126px;
    left: calc(50.00% + 60px);
    width: 104px;
    height: 14px;
    display: flex;
    justify-content: center;
}

.element .text-wrapper-184 {
    width: 102px;
    height: 14px;
    margin-left: -2px;
    font-family: "Overpass", Helvetica;
    font-weight: 400;
    color: #213a6b;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.72px;
    line-height: 14.4px;
    white-space: nowrap;
}

.element .CPA-wrapper {
    position: absolute;
    top: 216px;
    left: calc(50.00% + 68px);
    width: 91px;
    height: 28px;
    display: flex;
    justify-content: center;
}

.element .CPA {
    width: 89px;
    height: 28px;
    margin-left: -2px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 400;
    color: #213a6b;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.72px;
    line-height: 14.4px;
}

.element .polygon-18 {
    position: absolute;
    top: 380px;
    left: 283px;
    width: 31px;
    height: 24px;
}

.element .group-138 {
    top: 410px;
    left: calc(50.00% + 66px);
    width: 104px;
    position: absolute;
    height: 28px;
    display: flex;
    justify-content: center;
}

.element .text-wrapper-185 {
    width: 102px;
    height: 28px;
    margin-left: -2px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 400;
    color: #213a6b;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.72px;
    line-height: 14.4px;
}

.element .text-wrapper-186 {
    padding-top: 32px;
    margin: 32px auto;
    width: 358px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #112c5b;
    font-size: 28px;
    text-align: center;
    letter-spacing: 3.92px;
    line-height: 36.4px;
}

.element .group-139 {
    position: absolute;
    top: 116px;
    left: 160px;
    width: 84px;
    height: 1px;
    background-image: url(./img/vector-32-5.svg);
    background-size: cover;
    background-position: 50% 50%;
}

.element .line {
    left: 298px;
    position: absolute;
    top: 235px;
    width: 27px;
    height: 27px;
    object-fit: cover;
}

.element .line-2 {
    left: 297px;
    position: absolute;
    top: 235px;
    width: 27px;
    height: 27px;
    object-fit: cover;
}

.element .polygon-19 {
    position: absolute;
    top: 328px;
    left: 296px;
    width: 31px;
    height: 24px;
}

.element .polygon-20 {
    position: absolute;
    top: 425px;
    left: 295px;
    width: 31px;
    height: 24px;
}

.element .group-140 {
    top: 459px;
    left: calc(50.00% + 52px);
    width: 116px;
    position: absolute;
    height: 28px;
    display: flex;
    justify-content: center;
}

.element .text-wrapper-187 {
    width: 114px;
    height: 28px;
    margin-left: -2px;
    font-family: "Noto Sans JP", Helvetica;
    font-weight: 400;
    color: #213a6b;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.72px;
    line-height: 14.4px;
}

.element .div-28 {
    position: relative;
    width: 356px;
    margin: 20px auto 0px;
    padding-bottom: 28px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    font-size: 14px;
    letter-spacing: 1.12px;
    line-height: 23.8px;
}

.element .text-wrapper-188 {
    color: #2a1515;
    letter-spacing: 0.16px;
}

.element .text-wrapper-189 {
    font-weight: 700;
    color: #112c5b;
    letter-spacing: 0.16px;
}

.element .frame-65 {
    position: relative;
    width: var(--element-width);
    height: 720px;
    background: linear-gradient(180deg,
            rgba(252, 252, 252, 1) 0%,
            rgba(239, 242, 248, 1) 100%);
}

.element .adobestock-4 {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--element-width);
    height: 633px;
    background-blend-mode: luminosity;
    aspect-ratio: 1.45;
}

.element .group-141 {
    position: absolute;
    top: 120px;
    left: 159px;
    width: 84px;
    height: 1px;
    background-image: url(./img/vector-32-6.svg);
    background-size: cover;
    background-position: 50% 50%;
}

.element .vector-36 {
    position: absolute;
    width: 28.86%;
    height: 40.60%;
    top: 59.40%;
    left: 71.14%;
}

.element .div-29 {
    position: absolute;
    top: 136px;
    left: calc(50.00% - 160px);
    width: 319px;
    font-family: "Inter", Helvetica;
    font-weight: 400;
    color: transparent;
    font-size: 16px;
    text-align: center;
    line-height: 24.8px;
}

.element .group-142 {
    position: absolute;
    top: 237px;
    left: 11px;
    width: 188px;
    height: 117px;
}

.element .group-143 {
    position: absolute;
    top: 364px;
    left: 11px;
    width: 188px;
    height: 117px;
}

.element .group-144 {
    position: absolute;
    top: 237px;
    left: 207px;
    width: 188px;
    height: 117px;
    box-shadow: 0px 2px 4px #00000040;
}

.element .group-145 {
    position: absolute;
    top: 362px;
    left: 203px;
    width: 192px;
    height: 125px;
}

.element .frame-66 {
    display: flex;
    flex-direction: column;
    width: var(--element-width);
    align-items: center;
    gap: 3px;
    position: relative;
    left: calc(50.00% - 201px);
}

.element .frame-67 {
    position: relative;
    width: var(--element-width);
    height: 853px;
    overflow: hidden;
    background: linear-gradient(180deg,
            rgba(238, 244, 246, 1) 0%,
            rgba(255, 255, 255, 1) 100%);
}

.element .rectangle-75 {
    position: absolute;
    top: 0;
    left: calc(50.00% - 211px);
    width: 430px;
    height: 569px;
    background-blend-mode: screen;
    background: linear-gradient(224deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 1) 65%,
            rgba(255, 255, 255, 1) 100%);
}

.element .rectangle-76 {
    position: absolute;
    top: 337px;
    left: 249px;
    width: 182px;
    height: 217px;
    background: linear-gradient(158deg,
            rgba(228, 240, 247, 0) 0%,
            rgba(225, 225, 225, 1) 29%,
            rgba(206, 212, 213, 1) 56%,
            rgba(185, 215, 219, 0) 88%);
}

.element .rectangle-77 {
    position: absolute;
    top: 0;
    left: 0;
    width: 195px;
    height: 201px;
    background: linear-gradient(159deg,
            rgba(234, 245, 246, 1) 5%,
            rgba(185, 215, 219, 0) 84%);
}

.element .text-wrapper-190 {
    position: absolute;
    top: 32px;
    left: calc(50.00% - 135px);
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 600;
    color: #1f374e;
    font-size: 24px;
    text-align: center;
    letter-spacing: 3.36px;
    line-height: 31.2px;
}

.element .img-10 {
    position: absolute;
    top: 263px;
    left: 242px;
    width: 160px;
    height: 307px;
    aspect-ratio: 0.65;
    object-fit: cover;
}

.element .div-30 {
    position: absolute;
    top: 130px;
    left: calc(50.00% - 171px);
    width: 341px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 400;
    color: #000000;
    font-size: 15px;
    letter-spacing: 1.05px;
    line-height: 15px;
}

.element .text-wrapper-191 {
    letter-spacing: 0.07em;
    line-height: 24px;
}

.element .text-wrapper-192 {
    letter-spacing: 0.16px;
    line-height: 25.5px;
}

.element .text-wrapper-193 {
    position: absolute;
    top: 515px;
    left: 97px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #343434;
    font-size: 21.2px;
    letter-spacing: 2.98px;
    line-height: 27.6px;
    white-space: nowrap;
}

.element .text-wrapper-194 {
    position: absolute;
    width: calc(100% - 342px);
    top: 525px;
    left: 30px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #343434;
    font-size: 10.6px;
    letter-spacing: 1.49px;
    line-height: 13.8px;
    white-space: nowrap;
}

.element .text-wrapper-195 {
    position: absolute;
    top: 501px;
    left: 30px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #343434;
    font-size: 10px;
    letter-spacing: 1.3px;
    line-height: 13px;
    white-space: nowrap;
}

.element .group-146 {
    position: absolute;
    top: 486px;
    left: 30px;
    width: 95px;
    height: 1px;
    background-image: url(./img/vector-32-7.svg);
    background-size: cover;
    background-position: 50% 50%;
}

.element .rectangle-78 {
    position: absolute;
    top: 588px;
    left: 29px;
    width: 1px;
    height: 21px;
    background-color: #e6e7e8;
}

.element .text-wrapper-196 {
    position: absolute;
    width: calc(100% - 327px);
    top: 590px;
    left: 35px;
    font-family: "Noto Serif JP", Helvetica;
    font-weight: 500;
    color: #343434;
    font-size: 11.1px;
    letter-spacing: 1.55px;
    line-height: 14.4px;
    white-space: nowrap;
}

.element .group-147 {
    position: absolute;
    width: 337px;
    height: 209px;
    top: 617px;
    left: 36px;
}

.element .frame-68 {
    position: relative;
    width: 100%;
    height: 138px;
    background-color: #424040;
}

.element .text-wrapper-197 {
    position: absolute;
    top: 25px;
    left: calc(50.00% - 129px);
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    font-size: 15px;
    letter-spacing: 1.05px;
    line-height: normal;
    white-space: nowrap;
}

/* inject original css code above */

.element a {
    display: inline-block;
    color: inherit;
}

/* .element img {
  max-width: 100%;
} */

.element a:focus-visible {
    outline: 2px solid #4a90e2;
    outline-offset: 4px;
    border-radius: 4px;
}

.element .button-wrapper a {
    line-height: 0;
}


#contact_4 {
    position: absolute;
    bottom: 0;
}



.slide-container {
    position: relative;
    overflow: hidden;
    width: 380px;
    margin: 0 auto;
}

/* ── Track ── */
.slide-track {
    display: flex;
    transition: transform 0.4s ease;
    will-change: transform;
}

/* ── Each slide item ── */
.slide-item {
    flex: 0 0 50%;
    /* 2 slides visible */
    padding: 0 6px;
}

.slide-item:first-child {
    padding-left: 0;
}

.slide-item:last-child {
    padding-right: 0;
}

.slide-number {
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;

    color: #753093;
    line-height: 1;
    margin-bottom: 8px;
    letter-spacing: 0.02em;
}

.slide-image {
    width: 240px;
    aspect-ratio: 16/9;
    object-fit: cover;
    display: block;
    background: #ddd;
    /* fallback */
    border: 1px solid #e0e0e0;
}

.slide-title {
    font-size: 13px;
    font-weight: 600;
    color: #1a1a1a;
    margin-top: 10px;
    line-height: 1.4;
    text-align: left;
}

.slide-ctrl {
    display: grid;
    grid-template-columns: 20% 60% 20%;
    width: 250px;
    margin: 16px auto;
    align-items: center;
    justify-content: center;
}

/* ── Navigation dots ── */
.slide-dots {
    display: flex;
    justify-content: center;
    gap: 6px;
}

.slide-dots button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #ccc;
    cursor: pointer;
    padding: 0;
    transition: background 0.2s;
}

.slide-dots button.active {
    background: #753093;
}

/* ── Arrow buttons ── */
.slide-prev,
.slide-next {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    font-size: 14px;
    display: block;
    justify-self: center;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background 0.2s;
}


.slide-prev:hover,
.slide-next:hover {
    background: #fff;
}

.slide-prev:disabled,
.slide-next:disabled {
    opacity: 0.3;
    cursor: default;
}

.sp_under_nav {
    display: flex;
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 100px;
    z-index: 100;
    align-items: center;
    justify-content: center;
}

.sp_under_nav ul {
    display: flex;
    margin: 0 auto;
}

.sp_under_nav ul li img {
    height: 80px;
}

@media (max-width: 650px) {
    .sp_under_nav {
        height: 80px;
    }

    .sp_under_nav ul li img {
        max-height: 80px;
        width: 50vw;
        height: auto;
        margin: 0 auto;
    }
}


/* TABLE */
table {
    border-collapse: collapse;
    width: 90%;
    height: 454px;
    margin: 0 auto;
    background: #fff;
}

/* ── Column widths ── */
col.col-label {
    width: 20%;
}

col.col-us {
    width: 43%;
}

col.col-them {
    width: 37%;
}

/* ── Header row ── */
thead th {
    padding: 20px 12px;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #1d3461;
}

thead th.th-label {
    background: rgba(236, 249, 255, 1);
    border: none;
}

thead th.th-us {
    background: #4a7fc1;
}

thead th.th-them {
    background: #9ba8b5;
}

/* ── Row label cells ── */
td.row-label {
    background: #1d3461;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    padding: 6px 4px;
    border: 1px solid #1d3461;
    border-bottom: 1px solid #b8ccdf;
    line-height: 1.5;
}

/* ── Content cells ── */
td.cell {
    background: #eef4fb;
    text-align: center;
    vertical-align: top;
    padding: 10px 6px;
    border-top: 1px solid #b8ccdf;
    border-left: 1px solid #b8ccdf;
}

td.them {
    border-right: 1px solid #1d3461;
}


/* icon */
td.cell svg {
    display: block;
    margin: 0 auto 10px;
}

/* text under icon */
td.cell .cell-text {
    font-size: 11px;
    line-height: 1.55;
    color: #333;
}

td.cell.us .cell-text {
    color: #1d3461;
    font-weight: 700;
}

tr:last-of-type {
    border-bottom: 1px solid #1d3461;
}





/* タブナビ */
.tab-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-items: center;
    align-items: end;
    gap: 2px;
}

button.tab-btn {
    position: relative;
    font-family: "Inter", Helvetica;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
    letter-spacing: 2.6px;
    line-height: 20px;

    width: 182px;
    height: 50px;
    border-radius: 10px 10px 0px 0px;

    font-size: 14px;
    background: #a69fbc;
    border: none;
    cursor: pointer;
    transition: color 0.15s, border-color 0.15s;
    margin-bottom: -1px;
    font-family: inherit;
}

.tab-btn:hover {
    background-color: rgba(235, 215, 251, 1);
}


.tab-btn.active {
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    width: 195px;
    height: 64px;

    background: linear-gradient(0deg,
            rgba(169, 71, 214, 1) 0%,
            rgba(195, 123, 225, 1) 100%);
}

.tab-btn.active::after {
    content: "";
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);

    width: 40px;
    height: 20px;
    background-image: url(img/polygon-40.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
}

/* タブパネル */
.tab-panel {
    width: var(--element-width);
    display: none;
    border-top: none;
    animation: fadeIn 0.18s ease;
    background: linear-gradient(180deg,
            rgba(245, 247, 255, 1) 0%,
            rgba(230, 235, 248, 1) 76%);
}

.tab-panel-1 {
    background: linear-gradient(180deg,
            rgba(235, 215, 251, 1) 0%,
            rgba(249, 250, 253, 1) 44%);
}

.tab-panel.active {
    display: block;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* バッジ */
.panel-badge {
    font-size: 12px;
    margin-bottom: 12px;
}

.badge-accent {
    background: #dbeafe;
    color: #1d4ed8;
}

.badge-success {
    background: #dcfce7;
    color: #15803d;
}

/* 見出し・本文 */
.panel-heading {
    font-size: 20px;
    font-weight: 500;
    margin: 0 0 10px;
    color: #1a1a18;
}

.panel-body {
    font-size: 15px;
    line-height: 1.7;
    margin: 0 0 1.5rem;
}


/* レスポンシブ */
@media (max-width: 480px) {
    .feature-list {
        grid-template-columns: 1fr;
    }

    .tab-btn {
        padding: 10px 16px;
        font-size: 14px;
    }
}


/* マーケティング戦略：タブ2 */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:500,700|Noto+Serif+JP:400,500|Inter:500,700&display=swap");

.bc-point-page,
.bc-point-page * {
    box-sizing: border-box;
}

.bc-point-page {
    position: relative;
    isolation: isolate;
    width: min(100%, var(--element-width));
    margin: 0 auto;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(246, 241, 248, 0) 0%, #f7f3f9 2%, #fff 93%);
    color: #4b4250;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.bc-point-page h1,
.bc-point-page h2,
.bc-point-page h3,
.bc-point-page p,
.bc-point-page figure {
    margin: 0;
}

.bc-point-page figure {
    padding: 0;
}

.bc-point-page img {
    display: block;
    max-width: 100%;
}

.page-bg {
    position: absolute;
    z-index: -1;
    top: 0;
    left: -7px;
    width: 432px;
    max-width: calc(100% + 14px);
    height: 208px;
    border-radius: 4px;
    background: linear-gradient(180deg, #e8d6f4 0%, #eedefc 12%, rgba(242, 231, 252, .1) 44%, rgba(249, 250, 253, 0) 100%);
    pointer-events: none;
}

.section-bar {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    padding: 34px 7px 0;
}

.section-bar__inactive,
.section-bar__active {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px 5px 0 0;
}

.section-bar__inactive {
    width: calc((100% - 6px) * .49);
    height: 50px;
    flex: 0 0 calc((100% - 6px) * .49);
    background: #b9b3c9;
}

.section-bar__active {
    height: 64px;
    flex: 1;
    background: linear-gradient(180deg, #c67be6 0%, #a542d3 100%);
}

.section-bar__inactive-text,
.section-bar__active-text {
    font-weight: 700;
    text-align: center;
}

.section-bar__inactive-text {
    color: #f8f5fa;
    font-size: 12px;
    letter-spacing: .72px;
    line-height: 16px;
}

.section-bar__active-text {
    color: #fff;
    font-size: 16px;
    letter-spacing: 1.6px;
    line-height: 22px;
}

.intro-lead {
    position: relative;
    padding: 16px 22px 42px;
    color: #112c5b;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .78px;
    line-height: 20.8px;
    text-align: center;
}

.intro-lead::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 11px;
    width: 1px;
    height: 21px;
    background: #8d8391;
    transform: translateX(-50%);
}

.point {
    display: flex;
    flex-direction: column;
    gap: 19px;
    padding: 0 14px 0px;
}

.point__head {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 78px;
    padding: 8px 42px 8px 8px;
    border-radius: 3px;
    background: #112c5b;
}

.point__num {
    display: flex;
    width: 48px;
    flex: 0 0 48px;
    flex-direction: column;
    align-items: flex-start;
}

.point__num-label,
.point__num-digit,
.point__bar-title {
    font-family: "Noto Serif JP", "Times New Roman", serif;
    color: #fff;
    font-weight: 400;
}

.point__num-label {
    padding-left: 5px;
    font-size: 10px;
    letter-spacing: .3px;
    line-height: 13px;
}

.point__num-digit {
    font-size: 34px;
    letter-spacing: 1.02px;
    line-height: 45px;
}

.frame-67 {
    display: block;
}

.frame-67-pc {
    display: none;
}

.point__vline {
    width: 1px;
    height: 55px;
    flex: 0 0 1px;
    margin: 0 10px;
    background: rgba(255, 244, 250, .5);
}

.point__bar-title {
    flex: 1;
    font-size: 22px;
    letter-spacing: 3.08px;
    line-height: 26.4px;
    text-align: center;
}

.point__bar-deco {
    position: absolute;
    top: 50%;
    right: 16px;
    width: 20px;
    height: 2px;
    transform: translateY(-50%);
}

.point__sub-lead,
.point__body,
.sub-point__desc {
    color: #4b4250;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .52px;
    line-height: 20.8px;
}

.spacer_sec_title_w_num {
    height: 100px;

}

.c-dark {
    color: #4b4250;
}

.c-purple,
.c-purple-strong {
    color: #731bd1;
    font-weight: 700;
}

.model-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.model-card {
    overflow: hidden;
}

.model-card--blue {
    background: #f1f4fc;
}

.model-card--purple {
    background: #f8f3ff;
}

.model-card--orange {
    background: #fffcf7;
}

.model-card--teal {
    background: #f5f7e9;
}

.model-card__inner {
    display: flex;
    align-items: center;
    min-height: 105px;
    padding: 8px 8px 8px 12px;
}

.model-card__img {
    width: 87px;
    height: 87px;
    flex: 0 0 87px;
}

.model-card__body {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    gap: 2px;
    padding-left: 12px;
}

.model-badge {
    display: inline-flex;
    width: fit-content;
    min-width: 66px;
    height: 21px;
    align-items: center;
    justify-content: center;
    border-radius: 65px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .2px;
    line-height: 1;
}

.model-badge__letter {
    padding-left: 2px;
    font-size: 15px;
}

.model-badge--blue {
    background: #112c5b;
}

.model-badge--purple {
    background: #761dd6;
}

.model-badge--orange {
    background: linear-gradient(90deg, #d66604 0%, #f57c13 100%);
}

.model-badge--teal {
    background: linear-gradient(90deg, #04968c 0%, #14adaf 100%);
}

.model-card__name {
    overflow-wrap: anywhere;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1.2px;
    line-height: 27px;
}

.model-card__name--blue {
    color: #053896;
}

.model-card__name--purple {
    color: #690761;
}

.model-card__name--orange {
    color: #bb4515;
}

.model-card__name--teal {
    color: #1283ad;
}

.model-card__desc {
    color: #4b4250;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .92px;
    line-height: 21px;
}

.customer-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.customer-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.customer-card__img-wrap {
    position: relative;
    width: 143px;
    max-width: 100%;
    aspect-ratio: 1;
    flex: 0 0 auto;
}

.customer-card__img,
.customer-card__img-bg {
    width: 100%;
    height: 100%;
}

.customer-card__img-bg {
    position: absolute;
    inset: 0;
    background: url("./img/group-163410.webp") center / 100% 100% no-repeat;
}

.customer-card__ring {
    position: absolute;
    inset: 0;
    border: 2.6px solid;
    border-radius: 50%;
    pointer-events: none;
}

.customer-card__ring--navy {
    border-color: #752f92;
}

.customer-card__ring--orange {
    border-color: #e79b59;
}

.customer-card__label {
    display: flex;
    width: 100%;
    min-height: 26px;
    align-items: center;
    justify-content: center;
    border-radius: 75px;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .52px;
    line-height: 1.25;
    text-align: center;
}

.customer-card__label--navy {
    background: #112c5b;
}

.customer-card__label--orange {
    background: linear-gradient(90deg, #ff9d0a 0%, #ec9500 100%);
}

.customer-card__desc {
    align-self: stretch;
    color: #000;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .1px;
    line-height: 18.7px;
}

.sub-point {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.sub-point__bar {
    position: relative;
    display: flex;
    min-height: 35px;
    align-items: center;
    border-radius: 30px;
    background: #8238a2;
}

.sub-point__title {
    padding: 6px 16px 7px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .84px;
    line-height: 20px;
}

.sub-point__num {
    font-weight: 700;
}

.menu-diagram {
    display: grid;
    grid-template-columns: 92px 23px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 14px 23px;
    border: 1px solid #a2b5ef;
    background: #fff;
}

.menu-diagram__source,
.menu-diagram__sets,
.menu-set__chips {
    display: flex;
    flex-direction: column;
}

.menu-diagram__source {
    gap: 12px;
}

.menu-chip,
.menu-set-chip {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #a2b5ef;
    border-radius: 30px;
    background: linear-gradient(90deg, #ecf0fb 0%, #f1f4fc 100%);
    color: #4c4250;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .48px;
    line-height: 1;
}

.menu-chip {
    width: 90px;
    height: 26px;
}

.menu-diagram__arrow {
    width: 21px;
}

.menu-diagram__sets {
    gap: 16px;
}

.menu-set {
    position: relative;
    min-width: 0;
    padding: 12px 8px 8px;
    border: 2px solid;
    border-radius: 4px;
}

.menu-set--orange {
    border-color: #e79b58;
}

.menu-set--blue {
    border-color: #00bae8;
}

.menu-set__label {
    position: absolute;
    top: -13px;
    right: 6px;
    max-width: calc(100% - 12px);
    padding: 2px 8px;
    overflow: hidden;
    border-radius: 30px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22px;
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.menu-set--orange .menu-set__label {
    background: #e79b59;
}

.menu-set--blue .menu-set__label {
    background: #00bae8;
}

.menu-set__chips {
    gap: 7px;
}

.menu-set-chip {
    width: 86px;
    max-width: 100%;
    height: 24px;
}

.naming-diagram {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1fr);
    align-items: stretch;
    min-height: 173px;
}

.naming-diagram__half {
    position: relative;
    display: grid;
    min-width: 0;
    grid-template-rows: 20% 30% 5% 10%;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 8px;
    padding: 16px;
}

.naming-diagram__half--before {
    background: linear-gradient(180deg, #7a44b2 0%, #7f4fb1 100%);
}

.naming-diagram__half--after {
    background: linear-gradient(180deg, #f2d8f7 0%, #fbe3ff 67%, #f4bfff 100%);
}

.naming-diagram__x {
    position: absolute;
    top: 3px;
    left: 50%;
    color: rgba(255, 255, 255, 1);
    font-family: Inter, Helvetica, Arial, sans-serif;
    font-size: 57px;
    font-weight: 700;
    line-height: 1;
    transform: translateX(-50%);
    pointer-events: none;
}

.naming-diagram__badge {
    display: flex;
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-family: Inter, Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
}

.naming-diagram__badge--dark {
    background: #241453;
    color: #eae7ec;
    position: absolute;
}

.naming-diagram__badge--ring {
    width: 33px;
    height: 33px;
    border: 3.5px solid #8238a2;
}

.naming-diagram__badge-inner {
    width: 19px;
    height: 19px;
    border: 2.7px solid #8238a2;
    border-radius: 50%;
}

.naming-diagram__caption {
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
}

.naming-diagram__caption--white,
.naming-diagram__text--white {
    color: #fff;
}

.naming-diagram__caption--purple,
.naming-diagram__text--purple {
    color: #8238a2;
}

.naming-diagram__rule {
    width: 100%;
    margin: 0;
    border: 0;
    border-top: 1px solid;
}

.naming-diagram__rule--white {
    border-color: rgba(255, 255, 255, .5);
}

.naming-diagram__rule--purple {
    border-color: #8238a2;
}

.naming-diagram__text {
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .52px;
    line-height: 18px;
    text-align: left;
}

.naming-diagram__arrow {
    align-self: center;
    width: 20px;
}

.naming {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 20px;
}

@media (max-width: 360px) {
    .section-bar {
        padding-top: 24px;
    }

    .point {
        padding-inline: 10px;
    }

    .point__bar-title {
        font-size: 19px;
        letter-spacing: 1.8px;
    }

    .model-card__desc {
        font-size: 12px;
        letter-spacing: .4px;
    }

    .customer-grid {
        gap: 12px;
    }

    .menu-diagram {
        grid-template-columns: 82px 18px minmax(0, 1fr);
        gap: 8px;
        padding-inline: 12px;
    }

    .menu-chip {
        width: 80px;
    }
}


.salesbench-panel,
.salesbench-panel * {
    box-sizing: border-box;
}

.salesbench-panel {
    position: relative;
    isolation: isolate;
    width: min(100%, var(--element-width));
    height: 546px;
    margin: 0 auto;
    overflow: hidden;
    /* background:
    linear-gradient(180deg, rgba(29, 65, 107, .94) 0%, rgba(103, 132, 173, .9) 30%, rgba(162, 183, 216, .86) 47%),
    url("./img/rectangle-949.svg") center top / cover no-repeat; */
    background: url("./img/background949.webp") center top / cover no-repeat;
    color: #202020;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.salesbench-panel h1,
.salesbench-panel h2,
.salesbench-panel h3,
.salesbench-panel p {
    margin: 0;
}

.salesbench-hero {
    position: relative;
    height: 150px;
    padding-top: 10px;
    color: #e6deed;
    font-family: "Noto Serif JP", "Times New Roman", serif;
}

.salesbench-hero::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 185px;
    width: 29px;
    height: 29px;
    background: url("./img/group-163482.webp") center / contain no-repeat;
}

.salesbench-hero__row {
    position: relative;
    height: 68px;
}

.salesbench-hero__row--bottom {
    margin-top: -12px;
}

.salesbench-hero__plate {
    position: absolute;
    display: block;
    height: 58px;
    transform: rotate(-3deg);
    background: linear-gradient(90deg, #00053D 10%, #00000A 100%);
    background-blend-mode: color-burn;
}

.salesbench-hero__plate--top {
    top: 9px;
    left: -24px;
    width: 309px;
}

.salesbench-hero__plate--bottom {
    top: 11px;
    left: 54px;
    width: 372px;
}

.salesbench-hero__title {
    position: relative;
    z-index: 1;
    display: block;
    width: max-content;
    color: #e6deed;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    font-size: 52px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 67px;
    text-shadow: 0 3.4px 6.7px rgba(0, 0, 0, .25);
    transform: rotate(-3deg);
    white-space: nowrap;
}

.salesbench-hero__row--top .salesbench-hero__title {
    margin-left: 13px;
}

.salesbench-hero__title--second {
    margin-left: 65px;
}

.salesbench-lead {
    margin-top: 9px;
    color: #b9d1d9;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 2.24px;
    line-height: 19px;
    text-align: center;
}

.salesbench-lead-pc {
    display: none;
}

.salesbench-improve {
    position: relative;
    display: flex;
    align-items: baseline;
    width: 337px;
    max-width: calc(100% - 64px);
    margin: 10px auto 0;
}

.salesbench-improve__underline {
    position: absolute;
    bottom: 2px;
    left: 0;
    width: 218px;
    height: 11px;
    background: #7ea1bd;
}

.salesbench-improve__main,
.salesbench-improve__sub {
    position: relative;
    z-index: 1;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    white-space: nowrap;
}

.salesbench-improve__main {
    color: #fff;
    font-size: 41px;
    font-weight: 700;
    letter-spacing: 2.05px;
    line-height: 49px;
}

.salesbench-improve__sub {
    margin-left: 2px;
    color: #b9d1d9;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 2.8px;
    line-height: 24px;
}

.salesbench-divider {
    display: block;
    width: 1px;
    height: 20px;
    margin: 6px auto 24px;
    background: rgba(255, 255, 255, .65);
}

.salesbench-cards {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: calc(100% - 26px);
    margin: 0 auto;
}

.salesbench-card {
    position: relative;
    padding: 25px 15px 16px;
    border-radius: 3px;
    box-shadow: 0 4px 4px rgba(114, 107, 118, .25);
    background: linear-gradient(180deg, #fdffff 60%, #e2ecef 100%);
}

.salesbench-card--derma {
    background: linear-gradient(180deg, #fff 42%, #cedff4 100%);
}

.salesbench-card__title {
    position: absolute;
    top: -15px;
    left: 50%;
    display: flex;
    width: 258px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 3.5px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 2.25px;
    line-height: 1;
    text-align: center;
    transform: translateX(-50%);
}

.salesbench-card__title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    width: 0;
    height: 0;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    transform: translateX(-50%);
}

.salesbench-card--surgery .salesbench-card__title {
    background: #793596;
}

.salesbench-card--surgery .salesbench-card__title::after {
    border-top: 8px solid #793596;
}

.salesbench-card--derma .salesbench-card__title {
    background: #01aae2;
}

.salesbench-card--derma .salesbench-card__title::after {
    border-top: 8px solid #01aae2;
}

.salesbench-card__title small {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .25px;
}

.salesbench-metrics {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 15px;
}

.salesbench-metric {
    min-width: 0;
}

.salesbench-metric__area {
    display: flex;
    height: 27px;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    color: #202020;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .26px;
    line-height: 21px;
    text-align: center;
}

.salesbench-metric--metro .salesbench-metric__area {
    background: #ede7fd;
}

.salesbench-metric--regional .salesbench-metric__area {
    background: #a2b5ef;
}

.salesbench-metric__amount {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: 42px;
    padding-top: 6px;
    line-height: 1;
    white-space: nowrap;
}

.salesbench-metric__month {
    padding: 0 2px 5px 0;
    color: #202020;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1.5px;
}

.salesbench-metric__amount strong {
    font-family: Roboto, Helvetica, Arial, sans-serif;
    font-size: 42px;
    font-weight: 500;
    letter-spacing: -1.1px;
    line-height: .9;
}

.salesbench-metric--metro .salesbench-metric__amount strong {
    color: #793596;
}

.salesbench-metric--regional .salesbench-metric__amount strong {
    color: #1159cd;
}

.salesbench-metric__unit {
    padding: 0 0 5px 1px;
    color: #202020;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1px;
    line-height: 1.1;
}

@media (max-width: 360px) {
    .salesbench-hero__title {
        font-size: 45px;
        line-height: 60px;
    }

    .salesbench-hero__title--second {
        margin-left: 48px;
    }

    .salesbench-improve {
        max-width: calc(100% - 34px);
    }

    .salesbench-improve__main {
        font-size: 35px;
    }

    .salesbench-improve__sub {
        font-size: 17px;
    }

    .salesbench-cards {
        width: calc(100% - 20px);
    }

    .salesbench-card {
        padding-inline: 10px;
    }

    .salesbench-metrics {
        gap: 8px;
    }

    .salesbench-metric__amount strong {
        font-size: 34px;
    }

    .salesbench-metric__unit {
        font-size: 9px;
    }
}



.voicecase-panel {
    width: var(--element-width);
    height: 475px;
    margin: 0 auto;
    overflow: hidden;
    /* background: linear-gradient(180deg, #fff 26%, #f1f4fc 35%); */
    color: #000;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.voicecase-panel h2,
.voicecase-panel p {
    margin: 0;
}

.voicecase-panel img {
    display: block;
    max-width: 100%;
}

.voicecase-list {
    display: flex;
    width: 356px;
    max-width: calc(100% - 40px);
    flex-direction: column;
    gap: 17px;
    margin: 0 auto;
    padding: 0 0 26px;
}

.voicecase-card {
    position: relative;
    width: 100%;
    height: 101px;
    overflow: hidden;
}

.voicecase-card--large {
    height: 182px;
}

.voicecase-card--third {
    height: 105px;
}

.voicecase-card[aria-describedby="voicecase-company-01"] .voicecase-sales strong {
    left: 50px;

}

.voicecase-card[aria-describedby="voicecase-company-01"] .voicecase-card__suffix--small {
    left: 135px;
}

.voicecase-card[aria-describedby="voicecase-company-02"] .voicecase-sales p {
    font-weight: 700;
    font-size: 15px;
    padding-top: 5px;
}

.voicecase-card[aria-describedby="voicecase-company-02"] .voicecase-sales {
    top: 20px;
}

.voicecase-card[aria-describedby="voicecase-company-02"] .voicecase-sales span {
    color: var(--str-ppl)
}

.voicecase-card__photo {
    position: absolute;
    top: 0;
    left: 0;
    /* width: 222px; */
    height: 101px;
    object-fit: cover;
}

.voicecase-card__photo--large {
    width: 344px;
    height: 182px;
}

.voicecase-card__wash {
    position: absolute;
    top: 0;
    left: 37px;
    width: 319px;
    height: 182px;
    border-radius: 0 8px 0 0;
    background: linear-gradient(270deg, #fff 54%, rgba(255, 255, 255, .9) 65%, rgba(241, 244, 252, 0) 85%);
}

.voicecase-card__wash--small {
    left: 63px;
    width: 293px;
    height: 101px;
    border-radius: 0 4px 0 0;
    background: linear-gradient(270deg, #fff 0%, #fff 73%, rgba(255, 255, 255, .7) 85%, rgba(241, 244, 252, 0) 95%);
}

.voicecase-card__wash--third {
    left: 50px;
    width: 306px;
    height: 101px;
    border-radius: 0 4px 0 0;
    background: linear-gradient(270deg, #fff 0%, #fff 53%, rgba(255, 255, 255, .7) 74%, rgba(241, 244, 252, 0) 88%);
}

.voicecase-card__number {
    position: absolute;
    top: 9px;
    left: 7px;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .15);
}

.voicecase-card__number span {
    font-size: 9px;
}

.voicecase-card__number strong {
    font-size: 13px;
}

.voicecase-card__number--small {
    top: 4px;
    left: 4px;
    gap: 1px;
}

.voicecase-card__number--small span {
    font-size: 5px;
}

.voicecase-card__number--small strong {
    font-size: 6px;
}

.voicecase-card__content {
    position: absolute;
    top: 19px;
    left: 139px;
    width: 216px;
    height: 72px;
}

.voicecase-card__content--large {
    top: 37px;
    left: 137px;
    width: 208px;
    height: 118px;
}

.voicecase-card__content--third {
    top: 20px;
    left: 146px;
    width: 208px;
}

.voicecase-card__headline {
    color: #000;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: .94px;
    line-height: 28px;
    white-space: nowrap;
}

.voicecase-card__headline--small {
    position: absolute;
    top: 3px;
    font-size: 16px;
    letter-spacing: .64px;
    line-height: 19px;
}

.voicecase-card__headline--third {
    position: absolute;
    top: 0;
    left: 8px;
    width: 194px;
    font-size: 16px;
    letter-spacing: .64px;
    line-height: 19px;
    white-space: nowrap;
}

.voicecase-card .strong-point {
    font-size: 22px;
}

.voicecase-roas {
    position: absolute;
    top: 11px;
    left: 1px;
    width: 209px;
    height: 87px;
}

.voicecase-roas__label {
    position: absolute;
    top: 52px;
    left: 0;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -.9px;
    line-height: 22px;
    z-index: 2;

}

.voicecase-roas strong {
    position: absolute;
    top: -1px;
    left: 42px;
    color: #8549a0;
    font-family: "Albert Sans", Helvetica, Arial, sans-serif;
    font-size: 64px;
    font-weight: 700;
    letter-spacing: -2.4px;
    line-height: 102px;
    white-space: nowrap;
    z-index: 2;

}

.voicecase-roas strong span {
    margin-left: -8px;
    margin-right: -4px;
}

.voicecase-roas__unit {
    position: absolute;
    top: 47px;
    left: 179px;
    font-size: 25px;
    font-weight: 700;
    line-height: 30px;
    z-index: 2;

}

.voicecase-roas__line {
    position: absolute;
    top: 68px;
    left: 1px;
    width: 202px;
    height: 12px;
    z-index: 1;
}

.voicecase-card__suffix {
    position: absolute;
    top: 99px;
    left: 80px;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.28px;
    line-height: 19px;
    white-space: nowrap;
}

.voicecase-card__suffix--small {
    top: 42px;
    left: 159px;
    width: 53px;
    font-size: 12px;
    letter-spacing: .08px;
    line-height: 15px;
}

.voicecase-card__suffix--third {
    top: 39px;
    left: 149px;
    font-size: 12px;
    letter-spacing: .5px;
    line-height: 15px;
}

.voicecase-sales {
    position: absolute;
    top: 14px;
    left: 0;
    width: 167px;
    height: 58px;
}

.voicecase-sales__prefix {
    position: absolute;
    top: 27px;
    left: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1.16px;
    line-height: 17px;
}

.voicecase-card__content .comma {
    font-size: 20px;
    margin-left: 0.1em;
}

.voicecase-sales strong {
    position: absolute;
    top: 5px;
    left: 34px;
    color: var(--str-ppl);
    font-family: "Albert Sans", Helvetica, Arial, sans-serif;
    font-size: 38px;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 51px;
    white-space: nowrap;
}

.voicecase-sales span.strong-point {
    position: absolute;
    top: 9px;
    color: var(--str-ppl);
    font-family: "Albert Sans", Helvetica, Arial, sans-serif;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 51px;
    white-space: nowrap;
}


.voicecase-sales__unit {
    position: absolute;
    top: 26px;
    left: 127px;
    color: var(--str-ppl);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1.16px;
    line-height: 17px;
}

.voicecase-card__impact {
    position: absolute;
    top: 25px;
    left: 0;
    color: var(--str-ppl);
    font-family: "Albert Sans", Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 1.4px;
    line-height: 34px;
    white-space: nowrap;
}

.voicecase-card__company {
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    height: 34px;
    align-items: center;
    padding: 0 12px;
    border-radius: 0 10px 0 0;
    color: #f8f9fa;
    font-size: 17px;
    font-weight: 700;
    line-height: 20px;
    white-space: nowrap;
}

.voicecase-card__company span {
    padding-left: 1px;
    font-size: 13px;
    line-height: 15px;
}

.voicecase-card__company--purple {
    min-width: 146px;
    background: #8549a0;
}

.voicecase-card__company--blue {
    height: 21px;
    min-width: 83px;
    padding: 0 13px;
    border-radius: 0 8px 0 0;
    background: var(--str-ppl);
    font-size: 9px;
    line-height: 11px;
}

.voicecase-card__company--blue span {
    font-size: 7px;
    line-height: 8px;
    align-self: flex-end;
    margin-bottom: 5.3px;
}

.voicecase-card__company--wide {
    min-width: 96px;
    letter-spacing: .7px;
}

.voicecase-button {
    display: block;
    width: 355px;
    max-width: 100%;
    margin: -2px auto 0;
    text-decoration: none;
}

.voicecase-button img {
    width: 100%;
}

@media (max-width: 360px) {
    .voicecase-list {
        width: calc(100% - 24px);
        max-width: none;
    }
}

/* 支援実績 */
.supportcase-panel {
    width: var(--element-width);
    height: 619px;
    overflow: hidden;
    background: linear-gradient(180deg, #E5ECFF 0%, #f1f4fc 17%, #f1f4fc 100%);
    color: #000;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.supportcase-panel h1,
.supportcase-panel h2,
.supportcase-panel p {
    margin: 0px;
}

.supportcase-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding-top: 27px;
}

.supportcase-header__title {
    color: #2a1515;
    font-family: "Noto Serif JP", "Times New Roman", serif;
    font-size: 32px;
    font-weight: 500;
    letter-spacing: 4.48px;
    line-height: 41.6px;
    text-align: center;
}

.supportcase-header__line {
    display: block;
    width: 84px;
    height: 1px;
    background: #8ca0aa;
}

.supportcase-list {
    display: flex;
    width: 369px;
    max-width: calc(100% - 32px);
    flex-direction: column;
    gap: 28px;
    margin: 33px auto 0;
}

.supportcase-card {
    position: relative;
    display: grid;
    grid-template-columns: 169px minmax(0, 1fr);
    width: 100%;
    min-height: 133px;
    border-radius: 5px;
    background: #fff;
}

.supportcase-card__profile {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 31px 18px 29px 11px;
    background: #cddcf8;
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%);
}

.supportcase-card__area {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: #84479f;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.1px;
    line-height: 20px;
    text-align: center;
    white-space: nowrap;
}

.supportcase-card__area strong {
    font-size: 20px;
    line-height: 24px;
}

.supportcase-card__clinic {
    color: #000;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.26px;
    line-height: 19px;
    text-align: center;
}

.supportcase-card__result {
    min-width: 0;
    padding: 11px 14px 10px 14px;
}

.supportcase-card__result span .comma {
    font-size: 10px;
}

.supportcase-card__ad {
    position: relative;
    display: flex;
    width: 172px;
    max-width: 100%;
    height: 35px;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    background: #a27dff;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.supportcase-card__ad::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    width: 0;
    height: 0;
    border-top: 9px solid #a27dff;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    transform: translateX(-50%);
}

.supportcase-card__ad strong {
    padding-left: 3px;
    font-size: 25px;
    line-height: 30px;
    margin-bottom: 6px;
}

.supportcase-card__ad span {
    padding-left: 1px;
    font-size: 14px;
    letter-spacing: .68px;
}

.supportcase-card__label {
    padding-top: 15px;
    color: #2a1515;
    font-size: 16px;
    font-weight: 500;
    line-height: 19px;
    text-align: center;
}

.supportcase-card__sales {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    color: #752f92;
    font-weight: 700;
    white-space: nowrap;
}

.supportcase-card__sales strong {
    font-size: 47px;
    letter-spacing: -1.1px;
    line-height: 47px;
}

.supportcase-card__sales span {
    position: relative;
    padding: 0 4px 3px 2px;
    font-size: 21px;
    line-height: 25px;
    bottom: -3px;
}

.supportcase-card__sales span.comma {
    font-size: 30px;
    margin-left: -3px;
    margin-right: -5px;
    bottom: 0px;

}

.supportcase-card__note {
    position: absolute;
    right: 5px;
    bottom: -18px;
    color: #112c5b;
    font-size: 11px;
    font-weight: 400;
    line-height: 13px;
    white-space: nowrap;
}

@media (max-width: 360px) {
    .supportcase-list {
        max-width: calc(100% - 20px);
    }

    .supportcase-card {
        grid-template-columns: 42% minmax(0, 1fr);
    }

    .supportcase-card__profile {
        padding-inline: 8px 20px;
    }

    .supportcase-card__area {
        gap: 2px;
        font-size: 12px;
        letter-spacing: .5px;
    }

    .supportcase-card__clinic {
        font-size: 13px;
        letter-spacing: .5px;
    }

    .supportcase-card__result {
        padding-inline: 8px;
    }

    .supportcase-card__ad strong {
        font-size: 21px;
    }

    .supportcase-card__ad,
    .supportcase-card__ad span {
        font-size: 12px;
    }

    .supportcase-card__sales strong {
        font-size: 38px;
    }

    .supportcase-card__sales span {
        font-size: 17px;
    }
}

.facehook-panel {
    width: var(--element-width);
    max-width: 100%;
    min-height: 1211px;
    margin: 0 auto;
    overflow: hidden;
    background: #fbf9ff;
    color: #3b261b;
    font-family: "Noto Sans JP", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
}

.facehook-panel h1,
.facehook-panel h2,
.facehook-panel h3,
.facehook-panel p {
    margin: 0;
}

.facehook-panel img {
    display: block;
    max-width: 100%;
}

.spacer_sec_title {
    height: 76px;
}

.facehook-point-head {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 65px;
    padding: 6px 24px;
    background: linear-gradient(270deg, rgba(235, 226, 239, 0) 0%, #efdaf8 20%, #edddf5 80%, rgba(249, 237, 255, 0) 100%);
}

.facehook-point-head__mark {
    position: relative;
    width: 48px;
    height: 52px;
    flex: 0 0 48px;
    color: #84479f;
}

.facehook-point-head__mark span {
    position: absolute;
    top: 0;
    left: 3px;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: -.3px;
    line-height: 24px;

}

.facehook-point-head__mark strong {
    position: absolute;
    top: 14px;
    left: 0;
    font-size: 43px;
    font-weight: 500;
    letter-spacing: -2.5px;
    line-height: 43px;
    font-family: "Ancizar Sans", Helvetica;

}

.facehook-point-head h1,
.facehook-point-head h2 {
    color: #3b261b;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -.36px;
    line-height: 25px;
}

.facehook-lead {
    padding: 6px 20px 0;
    color: #3b261b;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .8px;
    line-height: 23px;
    text-align: center;
}

.facehook-lead strong {
    color: #7b46b2;
    font-size: 20px;
    line-height: 28px;
}

.facehook-speech {
    position: relative;
    width: 322px;
    height: 109px;
    margin: 17px auto 0;
}

.facehook-speech__person {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 102px;
    height: 109px;
}

.facehook-speech__bubble {
    position: absolute;
    top: 6px;
    right: 0;
    width: 254px;
    min-height: 62px;
    padding: 11px 11px 9px 9px;
    border-radius: 4px;
    background: #dadeea;
    color: #112c5b;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .96px;
    line-height: 22px;
    text-align: center;
}

.facehook-speech__bubble::before {
    content: "";
    position: absolute;
    left: 36px;
    bottom: -15px;
    width: 0;
    height: 0;
    border-top: 21px solid #dadeea;
    border-right: 13px solid transparent;
}

.facehook-insight {
    position: relative;
    width: 340px;
    min-height: 190px;
    margin: -1px auto 0;
    padding: 25px 11px 20px;
    border-radius: 4px;
    background: linear-gradient(180deg, #1e2a3a 0%, #464754 100%);
}

.facehook-insight__icon {
    position: absolute;
    top: -21px;
    left: 50%;
    width: 44px;
    height: 44px;
    transform: translateX(-50%);
}

.facehook-insight>p {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .14px;
    line-height: 21px;
    text-align: center;
}

.facehook-insight__boxes {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 44px;
    margin-top: 16px;
}

.facehook-insight__boxes div {
    min-height: 71px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    color: #3a2941;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .14px;
    line-height: 18px;
    text-align: center;
}

.facehook-insight__boxes div:first-child {
    background: #f9f8fe;
}

.facehook-insight__boxes div:last-child {
    background: #dadfeb;
}

.facehook-flow {
    position: relative;
    width: 356px;
    min-height: 221px;
    margin: 22px auto 0;
    padding: 15px 13px 17px;
    background: #fff;
}

.facehook-flow__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 34px;
}

.facehook-flow__row--bottom {
    margin-top: 55px;
    padding-inline: 55px 28px;
    grid-template-columns: 126px 110px;
    gap: 30px;
}

.facehook-flow__step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.facehook-flow__step::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -25px;
    width: 1px;
    height: 23px;
    background: #ad70c7;
}

.facehook-flow__row--bottom .facehook-flow__step::after {
    /* display: none; */
    top: -30px;
}

.facehook-flow__step.step_03 {
    left: -38px;
}

.facehook-flow__step h2 {
    display: flex;
    min-width: 124px;
    min-height: 23px;
    align-items: center;
    justify-content: center;
    border-radius: 27px;
    background: #c48fdb;
    color: #fff;
    font-family: Inter, Helvetica, Arial, sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 21px;
}

.facehook-flow__row--top .facehook-flow__step:nth-child(2) h2 {
    background: #9e66b6;
}

.facehook-flow__step--focus h2 {
    background: #737dd5;
}

.facehook-flow__step--contract h2 {
    min-width: 89px;
    background: #8238a2;
}

.facehook-flow__step p {
    margin-top: 4px;
    color: #3c271b;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .91px;
    line-height: 17px;
}

.facehook-flow__step--focus p {
    margin-top: 7px;
    color: #9f33da;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.28px;
    line-height: 21px;
}

.facehook-flow__line {
    position: absolute;
    top: 101px;
    left: 26px;
    width: 300px;
    height: 1px;
    background: #c69bd5;
}

.facehook-point--second {
    margin-top: 23px;
}

.facehook-types {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 340px;
    margin: 23px auto 0;
}

.facehook-type {
    position: relative;
    min-height: 207px;
    padding-top: 18px;
    border-radius: 4px;
    background: #fff;
    box-shadow: 0 4px 4px rgba(0, 0, 0, .15);
    text-align: center;
}

.facehook-type::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 0;
    right: 0;
    height: 66px;
    border-radius: 4px 4px 0 0;
}

.facehook-type::after {
    content: "";
    position: absolute;
    top: 78px;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 9px solid;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    transform: translateX(-50%);
}

.facehook-type--purple::before {
    background: #a179cb;
}

.facehook-type--purple::after {
    border-top-color: #a179cb;
}

.facehook-type--blue::before {
    background: #727cd4;
}

.facehook-type--blue::after {
    border-top-color: #727cd4;
}

.facehook-type__badge {
    position: relative;
    z-index: 2;
    width: 36px;
    height: 36px;
    margin: -18px auto 0;
}

.facehook-type h3 {
    position: relative;
    z-index: 1;
    margin-top: 0;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.1px;
    line-height: 18px;
}

.facehook-type__image {
    position: relative;
    z-index: 1;
    width: 156px;
    height: 73px;
    margin: 16px auto 0;
    object-fit: cover;
}

.facehook-type p {
    margin-top: 5px;
    color: #44424e;
    font-family: Inter, Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .52px;
    line-height: 17px;
}

.facehook-panel .facehook-closing {
    width: 331px;
    margin: 17px auto 0;
    color: #3b261b;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -.28px;
    line-height: 24px;
}

@media (max-width: 360px) {
    .facehook-panel {
        min-height: auto;
    }

    .facehook-point-head {
        padding-inline: 16px;
    }

    .facehook-point-head h1,
    .facehook-point-head h2 {
        font-size: 17px;
    }

    .facehook-speech,
    .facehook-insight,
    .facehook-flow,
    .facehook-types,
    .facehook-closing {
        width: calc(100% - 28px);
    }

    .facehook-speech__bubble {
        width: calc(100% - 76px);
        padding-left: 52px;
        font-size: 14px;
    }

    .facehook-insight__boxes {
        gap: 18px;
    }

    .facehook-flow__row,
    .facehook-flow__row--bottom {
        gap: 12px;
        padding-inline: 0;
        grid-template-columns: 1fr 1fr;
    }

    .facehook-flow__line {
        left: 28px;
        width: calc(100% - 56px);
    }

    .facehook-type__image {
        width: 96%;
    }

    .facehook-type p {
        font-size: 11px;
        letter-spacing: 0;
    }










}

#panel-b .detail_sec_title {
    padding-top: 0px;
}

.br_pc {
    display: none;
}

.salesbench-hero-pc {
    display: none;
}

.salesbench-hero {
    display: block;
}


.frame-17-pc {
    display: none;
}


/* ********************************************************************

PC

 */


@media (min-width: 1280px) {
    .element {
        max-width: 1280px;
    }

    .element>.frame,
    .element .client_voice,
    .element .frame-16 {
        box-sizing: border-box;
        width: 100%;
        max-width: 1280px;
    }

    .br_pc {
        display: block;
    }

    .element .header {
        left: 2.5%;
    }

    .element .fv {
        display: flex;
        flex-direction: column;
        width: var(--pc-canvas-width);
        align-items: flex-start;
        gap: 5px;
        padding: 0px 0px 20px;
        position: relative;
               margin-top: -280px;
    }

    .element .logo {
        width: 155px;
        height: 47.6px;
    }

    .element .text-wrapper-22 {
        position: relative;
        width: 100%;
        height: 36px;
        font-family: "Noto Sans JP", Helvetica;
        font-weight: 870;
        color: #191616;
        font-size: 32px;
        text-align: center;
        letter-spacing: 3.92px;
        line-height: 36.4px;
    }


    .element .text-wrapper-220 {
        color: #000000;
        font-size: 18px;
    }

    .element .frame-2 {
        display: flex;
        flex-direction: column;
        height: 550px;
        align-items: flex-start;
        justify-content: center;
        position: relative;
        align-self: stretch;
        width: var(--pc-canvas-width);
        background-color: #f0f3f2;
        background-size: cover;
    background: linear-gradient(180deg, #f0f3f2 20%, #ffffff 100%), url(img/fv-pc.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    background-blend-mode: multiply;
    z-index: 10;

    }




    .element .frame-3 {
        display: grid;
        height: 526px;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 5fr 2fr;
        justify-content: center;
        align-items: center;
        isolation: isolate;
    }

    .element .frame-3::before {
        content: "";
        grid-column: 1 / -1;
        grid-row: 1 / 2;
        align-self: stretch;
        justify-self: stretch;
        background: rgba(255, 255, 255, 0.4);
        pointer-events: none;
        z-index: 0;
    }

    .element .frame-3 .area-cta {
        top: 535px;
    }

    .element .frame-4 {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        align-items: center;
        z-index: 1;
    }

    .element .frame-4 .text-wrapper {
        text-align: center;
        font-size: calc(var(--pc-canvas-width) * 0.034);
    }

    .element .frame-4 .text-wrapper span .price span {
        text-align: center;
        font-size: calc(var(--pc-canvas-width) * 0.06);
    }

    .element .frame-4 .text-wrapper .text-bottom {
        font-size: calc(var(--pc-canvas-width) * 0.05);
    }

    .element .frame-4 .text-wrapper {
        line-height: calc(var(--pc-canvas-width) * 0.062);
    }


    .element .group {
        position: relative;
        grid-column: 2 / 3;
        grid-row: 1 / 2;
        width: 100%;
        height: 100%;
        right: 0;
        margin-bottom: 20px;

    background-image: url(./img/vector-233.svg);
        background-size: 50%;
        background-position: center;
        background-repeat: no-repeat;
        z-index: 1;
    }

    .voicecase-list {
        display: grid;
        width: 100%;
        max-width: calc(100% - 40px);
        flex-direction: column;
        grid-template-columns: 50% 50%;
        grid-template-rows: auto auto auto;
        gap: 17px;
        margin: 0 auto;
        padding: 0 0 26px;
        /* justify-content: center; */
        align-content: center;
        justify-content: space-between;
    }

    .element .frame-6 {
        width: 85%;
        grid-column: 1 / 3;
        margin: 0 auto;
        justify-content: space-evenly;
    }

    .element .group-2 {
        width: 30%;
        height: 116px;
    }

    .element .group-3 {
        display: flex;
        width: 100%;
        align-items: center;
        justify-content: center;
    }

    .element .group-3 .rectangle {
        border: 40px solid transparent;
        background:
            linear-gradient(#ffffff, #ffffff) padding-box,
            linear-gradient(135deg, #DDE4F2 8%, #F5F9FF 43%, #F5F8FF 65%, #B5C3DD 100%) border-box;
        width: 100%;
    }

    .element .group-3 .rectangle-2 {
        background: linear-gradient(135deg, #FFFFFF 39%, #E0E6EA 83%);
        width: 96%;
        height: 88%;
        margin: 0;
    }

    .element .group-5 {
        width: 100%;
        height: 116px;
    }

    .element .frame-7 {
        display: grid;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        grid-template-columns: auto auto;
        grid-template-rows: auto auto;
        column-gap: 4px;
        align-content: center;
        justify-content: center;
    }

    .element .frame-7>.ROAS:first-child {
        grid-column: 1 / -1;
        grid-row: 1;
        font-size: 20px;
        line-height: 26px;
    }

    .element .frame-7>.ROAS:first-child .span,
    .element .frame-7>.ROAS:first-child .text-wrapper-4 {
        font-size: inherit;
        line-height: inherit;
    }

    .element .frame-7>.p {
        grid-column: 1;
        grid-row: 2;
        line-height: 52px;
    }

    .element .frame-7 .text-wrapper-5 {
        font-size: 52px;
        line-height: 52px;
    }

    .element .frame-7 .text-wrapper-6 {
        font-size: 27px;
        line-height: 32px;
    }

    .element .frame-7>.ROAS:last-child {
        grid-column: 2;
        grid-row: 2;
        align-self: end;
        margin-bottom: 8px;
        font-size: 16px;
        line-height: 20px;
    }

    .element .frame-7>.ROAS:last-child .text-wrapper-4 {
        font-size: inherit;
        line-height: inherit;
    }

    .element .div-2 {
        top: 50%;
        left: 0;
        width: 100%;
        transform: translateY(-50%);
        font-size: 22px;
        line-height: 30px;
    }

    .element .div-2>br {
        display: none;
    }

    .element .div-2 .text-wrapper-7,
    .element .div-2 .text-wrapper-8 {
        font-size: inherit;
        line-height: inherit;
        letter-spacing: 0;
    }

    .element .frame-8 {
        display: flex;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
    }

    .element .frame-8 .text-wrapper-9 {
        width: auto;
        align-self: auto;
        margin: 0;
        font-size: 20px;
        line-height: 26px;
    }

    .element .frame-8 .div-3 {
        display: flex;
        width: auto;
        margin: 0;
        align-items: baseline;
        justify-content: center;
        line-height: 44px;
        white-space: nowrap;
    }

    .element .frame-8 .div-3 br {
        display: none;
    }

    .element .frame-8 .div-3 .text-wrapper-10 {
        font-size: 42px;
        line-height: 44px;
    }

    .element .frame-8 .div-3 .text-wrapper-11 {
        font-size: 22px;
        line-height: 28px;
    }

    .element .frame-8 .div-3 .text-wrapper-11:nth-of-type(2)::after {
        content: "・";
    }

    .element .group-5 .vector,
    .element .group-2 .vector {
        position: absolute;
        top: -8px;
        left: -6px;
        width: 24px;
        height: 24px;
        aspect-ratio: 1;
    }



    .voicecase-button {

        grid-column: 1 / 3;
        grid-row: 3 / 4;
        align-items: center;
        justify-content: center;
    }

    .element .area-cta {
        height: 100px;
        display: grid;
        grid-template-columns: auto auto;
        grid-template-rows: 1fr 2fr;
        width: 64%;
        margin: 0 auto;
        left: 18%;
    }

    .element .area-cta .text-cta {
        grid-row: 1 / 2;
        grid-column: 1 / 3;
        justify-self: center;
    }

    .element .area-cta .button {
        width: min(450px, calc(var(--pc-canvas-width) * 0.3));
    }


    .element .group-7 {
        width: 100%;
    }

    .element .logo-list {
        box-sizing: border-box;
        width: var(--pc-canvas-width);
        height: calc(var(--pc-canvas-width) * 0.22375);
        aspect-ratio: auto;
    }

    .element .logo-list .swiper-wrapper,
    .element .logo-list .logos-client {
        height: 100%;
    }

    .element .logo-list .logos-client {
        width: 100%;
    }

    .element .logo-list .logos-client img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }

    .element .rectangle-3 {
        display: none;

    }

    .element .group-9 {
        width: 100%;
        left: 0;

    }

    .element .rectangle-5 {
        display: none;
    }

    .element .div-5 {
        display: flex;
        height: auto;
        top: 30px;
        left: 0;
        width: 100%;
        align-items: center;
        justify-content: center;
        gap: 0;
        line-height: 32px;
        white-space: nowrap;
    }

    .element .div-5 br {
        display: none;
    }

    .element .div-5>span {
        display: inline-flex;
        flex: 0 0 auto;
        align-items: center;
        line-height: 32px;
    }

    .element .div-5>.text-wrapper-19 {
        height: 30px;
        padding: 0 3px;
        background: linear-gradient(90deg, #b2307e 0%, #5c3a93 100%);
        color: #ebf1fd;
    }

    .salesbench-lead {
        display: none;
    }

    .salesbench-lead-pc {
        display: block;
    }

    .salesbench-improve {
        width: fit-content;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .salesbench-improve__underline {
        left: 50.6%;

    }

    .salesbench-cards {
        display: flex;
        flex-direction: row;
        gap: 24px;
        width: calc(100% - 26px);
        margin: 0 auto;
        justify-content: center;
    }

    .salesbench-card {
        position: relative;
        padding: 25px 18px 16px;
        border-radius: 3px;
        box-shadow: 0 4px 4px rgba(114, 107, 118, .25);
        background: linear-gradient(180deg, #fdffff 60%, #e2ecef 100%);
    }



    .salesbench-hero {
        display: none;

    }

    .salesbench-hero-pc {
        display: grid;
        margin: 30px auto 10px;
        justify-content: center;
    }

    .salesbench-hero-pc .salesbench-hero__plate {
        width: calc(52px * 14);
        left: -60px;
        background: linear-gradient(90deg, rgba(0, 5, 61, 0) 0%, #00053D 10%, #00000A 90%, rgba(0, 0, 10, 0) 100%);

    }

    .element .frame-17 {
        position: absolute;
        left: 0;
    }



    table {
        width: 70%;
    }


    .frame-17 {
        display: none;
    }

    .frame-17-pc {
        display: block;
    }

    .slide-container {
        width: 70%;
    }

    /* Treatment accordions share the same desktop frame in both states. */
    .element .sec-kumatori,
    .element .sec-futae,
    .element .sec-kogao,
    .element .sec-houkyou,
    .element .sec-nose {
        box-sizing: border-box;
        width: min(calc(var(--pc-canvas-width) * 0.7), 830px) !important;
        max-width: min(calc(var(--pc-canvas-width) * 0.7), 830px);
        zoom: 1 !important;
        margin-left: auto;
        margin-right: auto;
        overflow: hidden;
    }

    .element .sec-kumatori[open],
    .element .sec-futae[open],
    .element .sec-kogao[open],
    .element .sec-houkyou[open],
    .element .sec-nose[open] {
        width: min(calc(var(--pc-canvas-width) * 0.7), 830px) !important;
        height: auto;
        background-image: none;
    }

    .element .sec-kumatori:not([open]),
    .element .sec-futae:not([open]),
    .element .sec-kogao:not([open]),
    .element .sec-houkyou:not([open]),
    .element .sec-nose:not([open]) {
        height: 53px !important;
    }

    .element .frame-sec-treatment .detail_sec_title {
        box-sizing: border-box;
        display: flex;
        width: 100%;
        height: 53px;
        min-height: 53px;
        padding: 0 56px;
        align-items: center;
        justify-content: center;
        font-size: 29px;
        line-height: 53px;
    }

    .element .frame-sec-treatment .detail_sec_title .marker {
        top: 26px;
        right: 20px;
    }

    .element .frame-sec-treatment .detail_sec_title .marker_plus {
        top: 26px;
        right: 20px;
        top: 17px;
        right: 29px;
    }

    /* Numbered marketing bars use the same responsive desktop width. */
    .element #panel-b .point {
        padding-inline: 0;
    }

    .element #panel-b .detail_sec_title_w_num {
        box-sizing: border-box;
        width: min(calc(var(--pc-canvas-width) * 0.7), 830px);
        max-width: min(calc(var(--pc-canvas-width) * 0.7), 830px);
        margin: 10px auto;
    }

    .element #panel-b .detail_sec_title_w_num:not([open]) {
        height: 80px !important;
    }

    .element #panel-b .detail_sec_title_w_num>.detail_sec_title {
        box-sizing: border-box;
        width: 100%;
        height: 80px;
        min-height: 80px;
        padding: 0;
    }

    .element #panel-b .detail_sec_title_w_num .point__head {
        width: 100%;
        min-height: 80px;
    }

    .element .sec-kumatori[open] {
        height: 1163px;
    }

    .element .sec-futae[open] {
        height: 1019px;
    }

    .element .sec-kogao[open] {
        height: 1211px;
    }

    .element .sec-houkyou[open] {
        height: 1121px;
    }

    .element .sec-nose[open] {
        height: 1248px;
    }

    /* Kumatori */
    .element .sec-kumatori .group-41,
    .element .sec-kumatori .group-42 {
        left: 0;
        width: 100%;
    }

    .element .sec-kumatori .frame-37 {
        left: 50%;
        width: 620px;
        transform: translateX(-50%);
    }

    .element .sec-kumatori .group-43,
    .element .sec-kumatori .group-44,
    .element .sec-kumatori .rectangle-32,
    .element .sec-kumatori>.group-62 {
        left: 0;
        width: 100%;
        margin-inline: 0;
    }

    .element .sec-kumatori .frame-39,
    .element .sec-kumatori .frame-42 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-kumatori .group-48 {
        width: 620px;
    }

    .element .sec-kumatori .group-49,
    .element .sec-kumatori .group-51 {
        width: 300px;
    }

    .element .sec-kumatori .group-51 {
        left: 320px;
    }

    .element .sec-kumatori .rectangle-33,
    .element .sec-kumatori .rectangle-34,
    .element .sec-kumatori .rectangle-35 {
        width: 300px;
    }

    .element .sec-kumatori .group-50 {
        left: 77px;
        width: 150px;
        height: 106px;
    }

    .element .sec-kumatori .chatgpt-image {
        left: 92px;
        width: 114px;
        height: 101px;
    }

    .element .sec-kumatori .text-wrapper-92,
    .element .sec-kumatori .text-wrapper-94 {
        left: 50%;
        width: 270px;
        transform: translateX(-50%);
    }

    .element .sec-kumatori .text-wrapper-95 {
        width: 620px;
    }

    .element .sec-kumatori .auto-flex {
        left: 50%;
        gap: 230px;
        transform: translateX(-50%);
    }

    .element .sec-kumatori .div-21,
    .element .sec-kumatori .text-wrapper-85 {
        width: 285px;
    }

    .element .sec-kumatori .div-21 {
        left: calc(50% - 305px);
    }

    .element .sec-kumatori .text-wrapper-85 {
        left: calc(50% + 20px);
    }

    .element .sec-kumatori .group-sns {
        left: 50%;
        width: 600px;
        height: 230px;
        top: 820px;
        transform: translateX(-50%);
    }

    .element .sec-kumatori .group-sns .sns-layout {
        position: absolute;
        top: 0;
        left: 50%;
        width: 331px;
        height: 209px;
        transform: translateX(-50%) scale(1.1);
        transform-origin: center top;
    }

    .element .sec-kumatori .text-wrapper-82 {
        left: 50%;
        width: 620px;
        transform: translateX(-50%);
    }

    /* Futae */
    .element .sec-futae .rectangle-38,
    .element .sec-futae .group-65,
    .element .sec-futae .group-66 {
        left: 0;
        width: 100%;
    }

    .element .sec-futae .frame-37 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-futae .group-43,
    .element .sec-futae .group-44,
    .element .sec-futae .rectangle-32,
    .element .sec-futae .group-67 {
        left: 0;
        width: 100%;
        margin-inline: 0;
    }

    .element .sec-futae .frame-42,
    .element .sec-futae .frame-45 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-futae .frame-41,
    .element .sec-futae .text-wrapper-101,
    .element .sec-futae .text-wrapper-102 {
        width: 600px;
    }

    .element .sec-futae .frame-44 {
        width: 285px;
    }

    .element .sec-futae .text-wrapper-99,
    .element .sec-futae .text-wrapper-100 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-futae .rectangle-39 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-futae .gh {
        left: 50%;
        width: 580px;
        height: 190px;
        object-fit: contain;
        transform: translateX(-50%);
    }

    /* Kogao */
    .element .sec-kogao .spacer_sec_title {
        height: 69px;
    }

    .element .sec-kogao .facehook-panel {
        width: 100%;
    }

    .element .sec-kogao .facehook-point-head {
        min-height: 65px;
        padding-inline: 174px;
    }

    .element .sec-kogao .facehook-speech,
    .element .sec-kogao .facehook-insight,
    .element .sec-kogao .facehook-flow,
    .element .sec-kogao .facehook-types,
    .element .sec-kogao .facehook-closing {
        width: 620px;
    }

    .element .sec-kogao .facehook-speech__bubble {
        width: 500px;
    }

    .element .sec-kogao .facehook-insight {
        padding-inline: 50px;
    }

    .element .sec-kogao .facehook-insight__boxes {
        gap: 44px;
    }

    .element .sec-kogao .facehook-flow {
        padding-inline: 40px;
    }

    .element .sec-kogao .facehook-flow__line {
        left: 40px;
        width: 540px;
    }

    .element .sec-kogao .facehook-flow__row {
        gap: 120px;
    }

    .element .sec-kogao .facehook-flow__row--bottom {
        padding-inline: 122px 70px;
        gap: 90px;
    }

    .element .sec-kogao .facehook-types {
        gap: 44px;
    }

    .element .sec-kogao .facehook-type__image {
        width: 270px;
    }

    /* Houkyou */
    .element .sec-houkyou .rectangle-53 {
        left: 0;
        width: 100%;
    }

    .element .sec-houkyou .group-99 {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-houkyou .breastcase-diff {
        left: 50%;
        width: 600px;
        transform: translateX(-50%);
    }

    .element .sec-houkyou .breastcase-diff h3 {
        height: 31px;
    }

    .element .sec-houkyou .group-110,
    .element .sec-houkyou .group-111 {
        left: 0;
        width: 100%;
    }

    .element .sec-houkyou .text-wrapper-132,
    .element .sec-houkyou .frame-54,
    .element .sec-houkyou .frame-55,
    .element .sec-houkyou .text-wrapper-145 {
        left: 50%;
        transform: translateX(-50%);
    }

    .element .sec-houkyou .text-wrapper-132,
    .element .sec-houkyou .frame-55,
    .element .sec-houkyou .text-wrapper-145 {
        width: 600px;
    }

    .element .sec-houkyou .text-wrapper-141 {
        width: 600px;
    }

    .element .sec-houkyou .NG,
    .element .sec-houkyou .rectangle-62,
    .element .sec-houkyou .rectangle-63,
    .element .sec-houkyou .text-wrapper-148,
    .element .sec-houkyou .text-wrapper-149,
    .element .sec-houkyou .polygon-14,
    .element .sec-houkyou .polygon-15,
    .element .sec-houkyou .text-wrapper-150,
    .element .sec-houkyou .rectangle-64,
    .element .sec-houkyou .rectangle-65,
    .element .sec-houkyou .group-112,
    .element .sec-houkyou .group-114,
    .element .sec-houkyou .element-wrapper,
    .element .sec-houkyou .group-115 {
        transform: translateX(227px);
    }

    .element .sec-houkyou .polygon-12,
    .element .sec-houkyou .polygon-13 {
        left: 50%;
        transform: translateX(-50%);
    }

    /* Nose */
    .element .sec-nose {
        background: #f3f0fc;
    }

    .element .sec-nose .rhino-section {
        padding: 16px 30px 0;
    }

    .element .sec-nose>.rhino-section:first-of-type {
        padding-top: 69px;
    }

    .element .sec-nose .rhino-point-head {
        margin-inline: -30px;
        padding-inline: 220px 30px;
    }

    .element .sec-nose .rhino-copy {
        max-width: 600px;
        margin-inline: auto;
    }

    .element .sec-nose .rhino-card-list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
        padding: 0;
    }

    .element .sec-nose .rhino-card {
        border-radius: 11px;
    }

    .element .sec-nose .rhino-card {
        min-height: 440px;
    }

    .element .sec-nose .rhino-card__title {
        display: flex;
        min-height: 82px;
        padding: 8px;
        align-items: center;
        justify-content: center;
        font-size: 19px;
        line-height: 25px;
    }

    .element .sec-nose .rhino-card__body {
        padding: 16px 14px;
    }

    .element .sec-nose .rhino-card__lead {
        min-height: 60px;
    }

    .element .sec-nose .rhino-card__content {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .element .sec-nose .rhino-card__image {
        width: 122px;
        margin: 0 auto;
    }

    .element .sec-nose .rhino-copy--closing {
        max-width: 600px;
        margin-top: 44px;
    }

    .element .sec-nose .rhino-section--second {
        padding-top: 36px;
    }

    .element .sec-nose .rhino-criteria {
        max-width: 560px;
        margin-inline: auto;
        gap: 36px;
    }

    .element .sec-nose .rhino-criteria__item {
        width: 150px;
    }

    .tab-panel {
        width: calc(var(--pc-canvas-width) * 0.7);
        margin: 0 auto;
        align-items: center;
    }


    .element .text-wrapper-165 {
        width: 70%;
    }

    .slide-item {
        flex: 0 0 0;
        padding: 0 6px;
    }

    .element .slide-container {
        margin-bottom: 50px;
    }

    .element .frame-67 {
        width: 100%;
        margin: 0 auto;
        padding: 50px 15%;

    }

    .element .rectangle-75 {
        position: relative;
        width: calc(var(--pc-canvas-width) * 0.6);
        margin: 0 auto;
        left: 0;
        /* align-items: center; */
    }

    .element .text-wrapper-190 {
        top: 100px
    }

    .element .div-30 {
        left: calc(25% + 100px);
        top: 200px;
        width: 20%;
    }

    .ppl_ogiso {
        display: block;
        left: calc(25% + 100px);
    }

    .element .frame-65 {
        height: 700px;

    }

    .img_frame-17 {
        width: 100%;
    }

    .element .frame-17-pc .area-cta {
        top: 0px;

    }

    .element .frame-17-pc {
        height: 700px;
    }


    .element .tab-nav {
        width: 50%;

        margin: 0 auto;

        gap: 2%;
    }

    .element .tab-btn {
        width: 100%;
    }

    /* Center the treatment-marketing heading without absolute positioning. */
    .element .sec-each-marketing {
        display: flex;
        align-items: flex-start;
        justify-content: center;
    }

    .element .sec-each-marketing .frame-46 {
        position: relative;
        top: auto;
        left: auto;
        margin: 0;
    }

    /* Section CTA follows the same two-column pattern as area-cta. */
    .element .sec-cta {
        display: grid;
        width: min(calc(var(--pc-canvas-width) * 0.7), 930px);
        grid-template-columns: repeat(2, minmax(0, 450px));
        grid-template-rows: 1fr 2fr;
        column-gap: 24px;
        row-gap: 12px;
        align-items: center;
        justify-content: center;
    }

    .element .sec-cta .text-cta {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-self: center;
    }

    .element .sec-cta .button-wrapper {
        width: 100%;
        margin: 0;
        align-self: center;
    }

    .element .sec-cta .button {
        width: 100%;
        max-width: 450px;
    }

    /* Support cases: one centered card above two cards. */
    .element .supportcase-list {
        display: grid;
        width: min(calc(var(--pc-canvas-width) * 0.7), 830px);
        max-width: min(calc(var(--pc-canvas-width) * 0.7), 830px);
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 28px;
        align-items: center;
    }

    .element .supportcase-card:first-child {
        grid-column: 1 / -1;
        width: calc((100% - 28px) / 2);
        justify-self: center;
    }

    .element .supportcase-card {
        height: 100%;
        align-items: center;
    }

    .element .supportcase-card__profile,
    .element .supportcase-card__result {
        box-sizing: border-box;
        height: 100%;
        justify-content: center;
    }

    .element .supportcase-card__result {
        display: flex;
        flex-direction: column;
    }


    .salesbench-panel {
        padding-top: 50px;
        padding-bottom: -200px;
    }



    .element .supportcase-panel {

        height: 500px;
        margin: 40px auto 0;

    }



    .medmkt-hero__box {
        width: 70%;
        margin: 0 auto;
    }

    .element .medmkt-photos {
        width: 90%;
    }

    .element .medmkt-photos__surgery {
        right: 170px;
        left: auto;
    }


    .element .rectangle-9 {
        left: 35%;
    }

}

/* Client voice: desktop composition based on the 1280 x 332 reference. */
@media (min-width: 1280px) {

    .element .frame-16>.img-3,
    .element .frame-16>.rectangle-8,
    .element .frame-16>.text-wrapper-32,
    .element .frame-16>.div-7,
    .element .frame-16>.div-wrapper,
    .element .frame-16>.group-25,
    .element .frame-16>.frame-19,
    .element .frame-16>.vector-10 {
        display: none;
    }
.img-333 {
    display: none;
}
    .element .frame-16>.rectangle-9 {
        top: 0;
        right: auto;
        left: 0;
        width: var(--pc-canvas-width);
        height: 410px;
        background: url("./img/slice-3.webp") center top / 100% 100% no-repeat;
    }

    .element .client_voice {
        height: auto;
        min-height: 0;
        margin-bottom: 0;
        padding-bottom: 12px;
        /* background: linear-gradient(180deg,
                #ffffff 0%,
                #f1f4fc 10%,
                #f1f4fc 100%); */
    }

    .element .client_voice .frame-13 {
        display: flex;
        width: 100%;
        gap: 0;
    }

    .element .client_voice .frame-13>.button-wrapper {
        flex: 0 0 auto;
        margin: 0;
    }

    .element .client_voice .frame-13>.button-wrapper a {
        display: block;
        line-height: 0;
    }

    .element .client_voice .button-2 {
        display: block;
        width: 166px;
        height: auto;
        margin: 0;
    }

    .element .group-7 {
        background: #ffffff;
    }

    .element .img-2 {
        -webkit-mask-image: linear-gradient(180deg,
                #000000 0%,
                #000000 90%,
                transparent 100%);
        mask-image: linear-gradient(180deg,
                #000000 0%,
                #000000 40%,
                transparent 100%);
    }

    .voicecase-panel {
        width: var(--pc-canvas-width);
        max-width: none;
        height: 480px;
        /* background: #eef4ff; */
    }

    .voicecase-list {
        box-sizing: border-box;
        width: min(calc(var(--pc-canvas-width) * 0.705), 902px);
        max-width: 902px;
        height: 332px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, 200px);
        gap: 36px 20px;
        align-content: start;
        justify-content: center;
        padding: 17px 0 27px;
    }

    .voicecase-card {
        box-sizing: border-box;
        min-width: 0;
        height: 126px;
        border-radius: 4px 4px 0 0;
        background: #fff;
        box-shadow: 0 2px 4px rgba(17, 37, 72, 0.2);
    }

    .voicecase-card__photo {
        width: 140px;
        height: 126px;
        object-fit: cover;
        object-position: 27% center;
    }

    .voicecase-card:first-child .voicecase-card__photo {
        object-fit: cover;
        object-position: center 22%;
        background: #f7f7f7;
    }

    .voicecase-card__wash--small {
        left: 92px;
        width: 74px;
        height: 126px;
        border-radius: 0;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 86%);
    }

    .voicecase-card__content {
        top: 20px;
        left: 160px;
        width: calc(100% - 174px);
        height: 88px;
    }

    .voicecase-card__headline--small {
        top: 0;
        left: 0;
        font-size: 18px;
        letter-spacing: 0;
        line-height: 1.35;
    }

    .voicecase-card__company--blue {
        box-sizing: border-box;
        height: 25px;
        min-width: 103px;
        padding: 0 15px;
        border-radius: 0;
        background: #87409f;
        font-size: 10px;
        letter-spacing: 0;
        line-height: 1;
    }

    .voicecase-card__company--blue span {
        align-self: center;
        margin: 0 0 0 1px;
        font-size: 8px;
        line-height: 1;
    }

    .voicecase-card:nth-child(2) .voicecase-card__company,
    .voicecase-card:nth-child(4) .voicecase-card__company {
        min-width: 163px;
    }

    .voicecase-card:nth-child(1) .voicecase-sales {
        top: 27px;
        width: 260px;
    }

    .voicecase-card:nth-child(1) .voicecase-sales__prefix {
        top: 20px;
        font-size: 17px;
        letter-spacing: 0;
    }

    .voicecase-card:nth-child(1) .voicecase-sales strong {
        top: -8px;
        left: 52px;
        font-size: 49px;
        letter-spacing: 0;
        line-height: 58px;
    }

    .voicecase-card:nth-child(1) .voicecase-card__content .comma {
        margin-left: 2px;
        font-size: 16px;
    }

    .voicecase-card:nth-child(1) .voicecase-card__suffix--small {
        top: 51px;
        left: 155px;
        width: auto;
        font-size: 12px;
    }

    .voicecase-card:nth-child(2) .voicecase-card__content {
        top: 24px;
        left: 169px;
    }

    .voicecase-card:nth-child(2) .voicecase-sales {
        top: 25px;
        width: 265px;
    }

    .voicecase-card:nth-child(2) .voicecase-sales p {
        padding: 0;
        font-size: 18px;
        letter-spacing: 0;
        line-height: 1.35;
        white-space: nowrap;
    }

    .voicecase-card:nth-child(3) .voicecase-card__content {
        top: 20px;
        left: 145px;
    }

    .voicecase-card:nth-child(3) .voicecase-sales {
        top: 0;
        width: 270px;
    }

    .voicecase-card:nth-child(3) .voicecase-sales__prefix {
        top: 28px;
        font-size: 17px;
        letter-spacing: 0;
    }

    .voicecase-card:nth-child(3) .voicecase-sales strong {
        top: -3px;
        left: 40px;
        font-size: 49px;
        letter-spacing: 0;
        line-height: 58px;
    }

    .voicecase-card:nth-child(3) .voicecase-sales__unit {
        top: 27px;
        left: 160px;
        font-size: 15px;
        letter-spacing: 0;
    }

    .voicecase-card:nth-child(3) .voicecase-card__suffix--small {
        top: 29px;
        left: 190px;
        width: auto;
        font-size: 12px;
    }

    .voicecase-card:nth-child(3) .voicecase-card__headline--small {
        top: 56px;
        font-size: 18px;
    }

    .voicecase-card:nth-child(4) .voicecase-card__content {
        top: 30px;
        left: 176px;
    }

    .voicecase-card:nth-child(4) .voicecase-sales {
        top: 28px;
        width: 250px;
    }

    .voicecase-card:nth-child(4) .voicecase-sales .strong-point {
        top: 0;
        font-size: 22px;
        letter-spacing: 0;
        line-height: 30px;
    }

    .voicecase-button {
        display: none !important;
    }



    .element .group-25 {
        left: 37%
    }



    .element .vector-10 {
        left: 50%;
    }

    .element .frame-67-pc {
        display: block;
        width: var(--pc-canvas-width);
        margin-left: 0;
    }

    .element .frame-67-pc img {
        display: block;
        width: 100%;
        height: auto;
    }

    .element .frame-67 {
        display: none;
    }

    .medmkt-panel .medmkt-copy {
        width: 38%;
        font-size: 20px;
    }

    .medmkt-panel::before {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.15) 26%, rgba(255, 255, 255, .95) 50%, rgba(255, 255, 255, 1) 72%, rgba(255, 255, 255, .15) 96%),
            url("./img/adobestock-388439293-2.webp") center top / cover no-repeat;
    }

    .element .frame-16 {
        height: 790px;
    }

    #omakase-1 {
        height: 580px;
    }

    #omakase-1 .area-cta {
        top: 640px;
    }

    .element .sec-cta {
        display: none;
    }

}


@media (max-width: 1279px) {
    .element .button-wrapper #view-more-marketing {
        margin: 20px auto;
    }
}

.voicecase-card-clv {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  padding: 23px 20px;
  position: relative;
  background-color: #f1f4fc;
}

.voicecase-card-clv .frame-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.voicecase-card-clv .div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.voicecase-card-clv .div-2 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.voicecase-card-clv .div-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: #000000;
  border-radius: 22px;
}

.voicecase-card-clv .text-wrapper {
  position: relative;
  width: fit-content;
  margin-top: -1px;
  font-family: "Inter", Helvetica;
  font-weight: 500;
  color: #ffffff;
  font-size: 10px;
  text-align: center;
  letter-spacing: 0.6px;
  line-height: 16px;
  white-space: nowrap;
}

.voicecase-card-clv .div-3 {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.voicecase-card-clv .text-wrapper-2 {
  width: fit-content;
  margin-top: -1px;
  font-weight: 700;
  color: #752f92;
  font-size: 16px;
  letter-spacing: 0.96px;
  line-height: 25.6px;
  white-space: nowrap;
  position: relative;
  font-family: "Inter", Helvetica;
}

.voicecase-card-clv .text-wrapper-3 {
  width: fit-content;
  font-weight: 400;
  color: #752f92;
  font-size: 14px;
  letter-spacing: 0.84px;
  line-height: 22.4px;
  white-space: nowrap;
  position: relative;
  font-family: "Inter", Helvetica;
}

.voicecase-card-clv .div-4 {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.voicecase-card-clv .div-5 {
  display: flex;
  flex-direction: column;
  width: 102.44px;
  align-items: center;
  gap: 2px;
  position: relative;
}

.voicecase-card-clv .element {
  position: relative;
  width: 102px;
  height: 103px;
  aspect-ratio: 0.99;
}

.voicecase-card-clv .text-wrapper-4 {
  align-self: stretch;
  font-weight: 700;
  color: #000000;
  font-size: 10px;
  text-align: center;
  letter-spacing: 0.6px;
  line-height: 20px;
  position: relative;
  font-family: "Inter", Helvetica;
}

.voicecase-card-clv .div-6 {
  display: flex;
  flex-direction: column;
  width: 204px;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  margin-right: -0.44px;
}

.voicecase-card-clv .roas {
  position: relative;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Inter", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 16px;
  letter-spacing: 2.08px;
  line-height: 25.6px;
  text-align: left;
}

.voicecase-card-clv .span {
  color: #000000;
  letter-spacing: 0.33px;
}

.voicecase-card-clv .text-wrapper-5 {
  font-weight: 700;
  color: #752f92;
  letter-spacing: 0.33px;
}

.voicecase-card-clv .div-7 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  position: relative;
  flex: 0 0 auto;
}

.voicecase-card-clv .div-8 {
  display: flex;
  flex-wrap: wrap;
  width: 204px;
  align-items: center;
  gap: 6px 6px;
  position: relative;
  flex: 0 0 auto;
}

.voicecase-card-clv .div-wrapper-2 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: #352a3a;
  border-radius: 22px;
}

.voicecase-card-clv .group-wrapper {
  position: relative;
  width: 204px;
  height: 29px;
}

.voicecase-card-clv .group {
  position: relative;
  left: 179px;
  width: 25px;
  height: 25px;
  display: flex;
  background-color: #fefeff;
  border-radius: 12.58px;
  border: 0.57px solid;
  border-color: #752f92;
}

.voicecase-card-clv .vector {
  margin-top: 10.2px;
  width: 9.91px;
  height: 5.61px;
  margin-left: 8px;
}
/* Original CSS is injected above this block. */

.voicecase-card-clv .div-wrapper,
.voicecase-card-clv .div-wrapper-2 {
  margin: 0;
}

.voicecase-card-clv .text-wrapper-2,
.voicecase-card-clv .roas {
  margin-bottom: 0;
}

.voicecase-card-clv .div-5 {
  margin: 0;
}

.voicecase-card-clv .div-8 {
  margin: 0;
  padding: 0;
  list-style: none;
}

.voicecase-card-clv .group {
  padding: 0;
  appearance: none;
  cursor: pointer;
}

.voicecase-card-clv .group:focus-visible {
  outline: 2px solid #4a90e2;
  outline-offset: 2px;
}

.voicecase-card-clv .group:hover {
  background-color: #f8f3fa;
}

/* CLV card: keep the card composition independent from the page .element. */
.voicecase-card-clv {
  box-sizing: border-box;
  width: 440px;
  height: 205px;
  padding: 13px 20px;
  overflow: hidden;
}

.voicecase-card-clv .frame-wrapper {
  width: 323px;
  height: 141px;
  gap: 14px;
}

.voicecase-card-clv .div-4 {
  position: relative;
  width: 323px;
  gap: 16px;
  align-items: flex-start;
  top: 4px;
  left: 0;
  justify-content: flex-start;
  margin: 0;
}

.voicecase-card-clv .div-5 {
  flex: 0 0 102.44px;
  width: 102.44px;
  top: 0;
  left: 0;
  margin: 0;
}

.voicecase-card-clv .element {
box-sizing: content-box;
    width: 120px;
    /* min-width: 121px; */
    max-width: none;
    height: 120px;
    object-fit: cover;
}

.voicecase-card-clv .div-6 {
  position: relative;
  flex: 0 0 204px;
  width: 204px;
  top: 3px;
  left: 8%;
  margin: 0;
}

.voicecase-card-clv .roas,
.voicecase-card-clv .div-7,
.voicecase-card-clv .div-8,
.voicecase-card-clv .group-wrapper,
.voicecase-card-clv .group {
  top: 0;
  left: 0;
  margin: 0;
}

.voicecase-card-clv .roas {
  position: relative;
}

.voicecase-card-clv .roas > span {
  display: block;
}

.voicecase-card-clv .div-7 {
  position: relative;
}

.voicecase-card-clv .div-8 {
  position: relative;
}

.voicecase-card-clv .group-wrapper {
  width: 204px;
  height: 29px;
}

.voicecase-card-clv .group {
  top: -20px;
  left: 140px;
}

.name-large {
    font-size: 14px;
    margin: 5px;
}

.voicecase-card-clv [aria-labelledby="voicecase-title-03"]{
height: 280px;
}

/* Client voice SP layout. */
.element .client_voice {
  box-sizing: border-box;
  width: var(--element-width);
  height: auto;
  min-height: 0;
  padding: 0 20px 30px;
  gap: 16px;
  overflow: visible;
  margin: 0 auto;
}

.element .client_voice .frame-11 {
  width: 100%;
  height: 79px;
  margin: 0;
  gap: 0;
}

.element .client_voice .text-wrapper-22 {
  height: 32px;
  margin-top: 0;
}


.element .client_voice .frame-13 {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  gap: 22px;
}

.element .client_voice .voicecase-panel {
  width: 100%;
  height: auto;
  overflow: visible;
  background: transparent;
}

.element .client_voice .voicecase-list {
  display: flex;
  width: 100%;
  max-width: none;
  flex-direction: column;
  gap: 19px;
  margin: 0;
  padding: 0;
}

.element .client_voice .voicecase-card-clv {
  box-sizing: border-box;
  width: 100%;
  min-height: 190px;
  height: auto;
  padding: 19px 20px 13px;
  gap: 0;
  overflow: hidden;
}

.element .client_voice .voicecase-card-clv:nth-child(2) {
  min-height: 217px;
}

.element .client_voice .voicecase-card-clv:nth-child(3) {
  min-height: 191px;
}

.element .client_voice .voicecase-card-clv:nth-child(4) {
  min-height: 190px;
}

.element .client_voice .voicecase-card-clv .div,
.element .client_voice .voicecase-card-clv .div-2,
.element .client_voice .voicecase-card-clv .div-3,
.element .client_voice .voicecase-card-clv .div-wrapper,
.element .client_voice .voicecase-card-clv .text-wrapper-2,
.element .client_voice .voicecase-card-clv .text-wrapper-3 {
  position: relative;
  top: 0;
  left: 0;
  margin: 0;
}

.element .client_voice .voicecase-card-clv .div {
  width: 100%;
  height: auto;
}

.element .client_voice .voicecase-card-clv .div-2,
.element .client_voice .voicecase-card-clv .div-3 {
  width: auto;
}

.element .client_voice .voicecase-card-clv .frame-wrapper {
  width: 100%;
  height: auto;
  gap: 8px;
}

.element .client_voice .voicecase-card-clv .div-4 {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  height: auto;
  gap: 16px;
  align-items: flex-start;
  position: relative;
  top: 0;
  left: 0;
  justify-content: flex-start;
  margin: 0;
    font-weight: 700;

}

.element .client_voice .voicecase-card-clv .div-5 {
  box-sizing: border-box;
  flex: 0 0 102px;
  width: 102px;
  height: 117px;
  top: 0;
  left: 0;
  margin: 0;
  gap: 2px;
    font-weight: 700;

}

.element .client_voice .voicecase-card-clv .element {
  box-sizing: content-box;
  flex: 0 0 auto;
  width: 102px;
  min-width: 102px;
  max-width: none;
  height: 103px;
  object-fit: cover;
  left: 2px;
}

.element .client_voice .voicecase-card-clv .text-wrapper-4 {
  font-size: 10px;
  line-height: 12px;
  font-weight: 700;
  margin-top: 3px;
}

.element .client_voice .voicecase-card-clv .div-6 {
  box-sizing: border-box;
  flex: 0 0 204px;
  width: 204px;
  height: auto;
  top: 3px;
  left: 5px;
  margin: 0;
  gap: 4px;
}

.element .client_voice .voicecase-card-clv .roas {
  position: relative;
  width: 204px;
  height: auto;
  margin: 0;
  font-size: 16px;
  letter-spacing: 2.08px;
  line-height: 25.6px;
}

.element .client_voice .voicecase-card-clv .roas > span {
  display: block;
}

.element .client_voice .voicecase-card-clv .div-7,
.element .client_voice .voicecase-card-clv .div-8,
.element .client_voice .voicecase-card-clv .group-wrapper,
.element .client_voice .voicecase-card-clv .group {
  position: relative;
  top: 0;
  left: 0;
  margin: 0;
}

.element .client_voice .voicecase-card-clv .div-7 {
  width: 204px;
  gap: 4px;
}

.element .client_voice .voicecase-card-clv .div-8 {
  width: 204px;
  gap: 6px;
  padding: 0;
}

.element .client_voice .voicecase-card-clv .group-wrapper {
  width: 204px;
  height: 29px;
}

.element .client_voice .voicecase-card-clv .group {
  top: -11px;
  left: 179px;
  width: 25px;
  height: 25px;
  padding: 0;
}

.element .client_voice .voicecase-card-clv .vector {
  width: 9.91px;
  height: 5.61px;
  margin: 10.2px 0 0 8px;
}

.element .client_voice > .frame-13 > .button-wrapper {
  width: 100%;
  margin: 0;
}

.element .client_voice > .frame-13 > .button-wrapper a {
  display: block;
  line-height: 0;
}

.element .client_voice > .frame-13 > .button-wrapper .button-2 {
  display: block;
  width: 172px;
  height: auto;
  margin: 0 auto;
}

  .element .client_voice .voicecase-card-clv .div .text-wrapper-2 {
    top: -4px;
  }
  .element .client_voice .voicecase-card-clv .div .text-wrapper-3 {
    top: -1px;
  }
/* Restore the desktop voice-case grid after the SP card overrides. */
@media (min-width: 1280px) {
  .element .client_voice {
    box-sizing: border-box;
    width: var(--pc-canvas-width);
    height: auto;
    min-height: 0;
    padding: 0 20px 26px;
    gap: 16px;
    overflow: visible;
  }

  .element .client_voice .frame-11 {
    width: 100%;
    height: auto;
    margin: 0;
    gap: 7px;
  }

  .element .client_voice .text-wrapper-22 {
    margin-top: 28px;
  }

  .element .client_voice .frame-13 {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }

  .element .client_voice .voicecase-panel {
    width: 100%;
    height: auto;
    overflow: visible;
    background: transparent;
  }

  .element .client_voice .voicecase-list {
    display: grid;
    box-sizing: border-box;
    width: min(calc(100% - 40px), 902px);
    max-width: 902px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, 205px);
    gap: 36px 20px;
    margin: 0 auto;
    padding: 0;
  }

  .element .client_voice .voicecase-card-clv,
  .element .client_voice .voicecase-card-clv:nth-child(2),
  .element .client_voice .voicecase-card-clv:nth-child(3),
  .element .client_voice .voicecase-card-clv:nth-child(4) {
    box-sizing: border-box;
    position: relative;
    inset: auto;
    display: flex;
    width: 100%;
    min-width: 0;
    height: 205px;
    min-height: 205px;
    padding: 13px 20px;
    overflow: hidden;
    grid-column: auto;
    grid-row: auto;
  }

  .element .client_voice .voicecase-card-clv .frame-wrapper {
    width: 100%;
    height: auto;
    gap: 8px;
  }

  .element .client_voice .voicecase-card-clv .div {
    top: 3px;
  }
  .element .client_voice .voicecase-card-clv .div .text-wrapper-2 {
    top: -3px;
  }

  .element .client_voice .voicecase-card-clv .div-4 {
    width: 100%;
    height: auto;
    gap: 16px;
    top: 0;
    left: 0;
  }

  .element .client_voice .voicecase-card-clv .div-5 {
    flex: 0 0 120px;
    width: 120px;
    height: 120px;
  }

  .element .client_voice .voicecase-card-clv .element {
    box-sizing: content-box;
    width: 120px;
    min-width: 120px;
    max-width: none;
    height: 120px;
    object-fit: cover;
    left: 2px;
  }

  .element .client_voice .voicecase-card-clv .div-6 {
    flex: 0 0 204px;
    width: 204px;
    top: 3px;
    left: 0;
    margin: 0;
  }

  .element .client_voice .voicecase-card-clv .roas {
    width: 204px;
    font-size: 16px;
    line-height: 25.6px;
  }

  .element .client_voice .voicecase-card-clv .div-7,
  .element .client_voice .voicecase-card-clv .div-8 {
    width: 204px;
  }

  .element .client_voice .voicecase-card-clv .group-wrapper {
    width: 245px;
  }

  .element .client_voice .voicecase-card-clv .group {
    top: -11px;
    left: 240px;
  }

  .element .client_voice > .frame-13 > .button-wrapper .button-2 {
    width: 172px;
  }
}

/* PC reference layout: 683 x 400px client-voice board. */
@media (min-width: 1280px) {
  .sp_under_nav {
    display: none;
  }

  .element .vector-10 {
    top: 250px;
  }

  .element .client_voice {
    box-sizing: border-box;
    width: 740px;
    height: 620px;
    min-height: 400px;
    padding: 0;
    margin-inline: auto;
    overflow: hidden;
    background: #ffffff;
  }

  /* .element .client_voice .frame-11,
  .element .client_voice > .frame-13 > .button-wrapper {
    display: none;
  } */

  .element .client_voice .frame-13,
  .element .client_voice .voicecase-panel {
    display: block;
  }

  .element .client_voice .voicecase-list {
        box-sizing: border-box;
        display: grid;
        width: 740px;
        height: 403px;
        grid-template-columns: 360px 360px;
        grid-template-rows: 180px 180px;
        column-gap: 20px;
        row-gap: 20px;
        align-content: start;
        justify-content: start;
        /* padding: 15px 0 0 22px; */
        margin: 0;
  }

  .element .client_voice .voicecase-card-clv,
  .element .client_voice .voicecase-card-clv:nth-child(2),
  .element .client_voice .voicecase-card-clv:nth-child(3),
  .element .client_voice .voicecase-card-clv:nth-child(4) {
    box-sizing: border-box;
    width: 360px;
    height: 100%;
    min-height: 0;
    padding: 16px 18px;
    background: #f1f4fc;
  }

  .element .client_voice .voicecase-card-clv .frame-wrapper {
    width: 280px;
    height: 100%;
    gap: 7px;
  }

  .element .client_voice .voicecase-card-clv .div-4 {
    width: 280px;
    gap: 1px;
  }

  .element .client_voice .voicecase-card-clv .div-5 {
    flex: 0 0 102px;
    width: 130px;
    height: 130px;
  }

  .element .client_voice .voicecase-card-clv .div-6 {
    flex: 0 0 204px;
    width: 204px;
    top: 3px;
    left: 25px;
  }

  .element .client_voice .voicecase-card-clv .roas {
    width: 204px;
    font-size: 16px;
    line-height: 25.6px;
  }

  .element .client_voice .voicecase-card-clv .div-7,
  .element .client_voice .voicecase-card-clv .div-8 {
    width: 204px;
  }

  .element .client_voice .voicecase-card-clv .group-wrapper {
    width: 280px;
  }

  .element .client_voice .voicecase-card-clv .group {
    top: -11px;
    left: 258px;
  }
}

/* ===== FVリード（2026-09-04 追加：ファーストビューの見出し） ===== */
.element .fv-lead {
    position: relative;
    box-sizing: border-box;
    /* 100% ではなく確定幅。既存の .supportcase-panel 等と同じ指定に揃える */
    width: var(--element-width);
    padding: 28px 5% 16px;
    background-color: #ffffff;
    text-align: center;
}

.element .fv-lead__title {
    margin: 0 0 8px;
    font-family: "Noto Sans JP", Helvetica, sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.02em;
    color: #1a1a1a;
}

.element .fv-lead__text {
    margin: 0;
    font-family: "Noto Sans JP", Helvetica, sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
    color: #444444;
}

@media (min-width: 1280px) {
    .element .fv-lead {
        padding: 48px 2.5% 24px;
    }

    .element .fv-lead__title {
        font-size: 40px;
        margin-bottom: 14px;
    }

    .element .fv-lead__text {
        font-size: 16px;
    }
}

/* ===== フッター事業者情報（2026-09-04 追加） ===== */
.element .frame-68 {
    /* width は既存ルール（100%）のまま。.element は shrink-to-fit のため、
       中の長文が max-content を押し広げないよう幅を確定させる */
    width: var(--element-width);
    height: auto;
    min-height: 138px;
    /* SP は画面下部固定バナー（.sp_under_nav 100px）に隠れないよう余白を確保 */
    padding-bottom: 120px;
}


.element .footer-company {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 62px 5% 0;
    text-align: center;
    font-family: "Noto Sans JP", Helvetica, sans-serif;
    color: #ffffff;
}

.element .footer-company__name {
    margin: 0 0 4px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.6;
}

.element .footer-company__address {
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    color: #dddddd;
}

.element .footer-company__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.element .footer-company__links a {
    font-size: 12px;
    line-height: 1.6;
    color: #ffffff;
    text-decoration: underline;
}

@media (min-width: 1280px) {
    .element .footer-company {
        padding-top: 66px;
    }

    .element .footer-company__name {
        font-size: 14px;
    }

    .element .footer-company__address,
    .element .footer-company__links a {
        font-size: 13px;
    }
}

/* ===== 実績数値の注記（2026-09-04 追加） ===== */
.element .figures-note {
    box-sizing: border-box;
    /* 100% ではなく確定幅。既存の .supportcase-panel 等と同じ指定に揃える */
    width: var(--element-width);
    padding: 24px 5% 32px;
    background-color: #ffffff;
}

.element .figures-note p {
    max-width: 900px;
    margin: 0 auto;
    font-family: "Noto Sans JP", Helvetica, sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.8;
    color: #666666;
    text-align: left;
}

@media (min-width: 1280px) {
    .element .figures-note {
        padding: 32px 2.5% 40px;
    }

    .element .figures-note p {
        font-size: 12px;
    }
}
