@charset "utf-8";

/* Figma's 390px layouts scale with the existing page column (maximum 750px). */
.multiple-registration,
.service-combination {
    container-type: inline-size;
    font-family: 'Noto Sans JP', sans-serif;
}

.multiple-registration {
    margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
    .multiple-registration {
        margin-bottom: 40px;
    }
}

.multiple-registration_inner,
.service-combination_inner {
    --unit: min(0.2564102564vw, 1.923076923px);
}

@supports (width: 1cqw) {
    .multiple-registration_inner,
    .service-combination_inner {
        --unit: 0.2564102564cqw;
    }
}

.multiple-registration_inner {
    padding: calc(16 * var(--unit)) calc(16 * var(--unit)) calc(20 * var(--unit));
    background: #4bcfd0;
}

.multiple-registration_header {
    display: flex;
    align-items: center;
    gap: calc(18 * var(--unit));
    margin-bottom: calc(16 * var(--unit));
}

.multiple-registration_adviser {
    display: block;
    flex: none;
    width: calc(76 * var(--unit));
    height: auto;
}

.multiple-registration_title {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: calc(3 * var(--unit));
    min-width: 0;
    font-weight: 700;
    line-height: 1.4;
}

.multiple-registration_lead {
    color: #fff;
    font-size: calc(18 * var(--unit));
}

.multiple-registration_emphasis {
    padding: calc(3 * var(--unit)) calc(10 * var(--unit));
    border-radius: calc(3 * var(--unit));
    background: #fff4ea;
    color: #ff753f;
    font-size: calc(26 * var(--unit));
    white-space: nowrap;
}

.multiple-registration_benefits {
    display: flex;
    flex-direction: column;
    gap: calc(4 * var(--unit));
    padding: calc(10 * var(--unit));
    border-radius: calc(5 * var(--unit));
    background: #fff;
    color: #322c2c;
    font-size: calc(14 * var(--unit));
    line-height: 1.5;
}

.multiple-registration_benefits li {
    display: flex;
    align-items: center;
    gap: calc(4 * var(--unit));
}

.multiple-registration_benefits li:last-child {
    align-items: flex-start;
}

.multiple-registration_benefits img {
    flex: none;
    width: calc(14 * var(--unit));
    height: auto;
}

.multiple-registration_benefits strong {
    color: #ff753f;
}

.service-combination_inner {
    color: #444;
    background: #fff;
}

.service-combination_intro {
    padding-top: calc(20 * var(--unit));
    overflow: hidden;
    background-image: linear-gradient(#f5f9fa 1px, transparent 1px), linear-gradient(90deg, #f5f9fa 1px, transparent 1px);
    background-size: calc(10 * var(--unit)) calc(10 * var(--unit));
}

.service-combination_heading {
    position: relative;
    display: flex;
    justify-content: center;
}

.service-combination_heading::before {
    position: absolute;
    right: 0;
    bottom: calc(20 * var(--unit));
    left: 0;
    height: calc(38 * var(--unit));
    background: #fff;
    content: '';
}

.service-combination_heading-line {
    position: absolute;
    top: calc(16 * var(--unit));
    left: 0;
    width: calc(390 * var(--unit));
    height: auto;
}

.service-combination_heading h2 {
    position: relative;
    display: flex;
    align-items: center;
    height: calc(38 * var(--unit));
    padding: calc(5 * var(--unit)) calc(20 * var(--unit));
    border-radius: calc(30 * var(--unit));
    background: #4bb0d0;
    color: #fff;
    font-size: calc(19 * var(--unit));
    font-weight: 700;
    line-height: calc(28 * var(--unit));
    letter-spacing: calc(0.95 * var(--unit));
}

.service-combination_heading h2 span {
    font-size: calc(13 * var(--unit));
}

.service-combination_stat {
    margin: calc(13 * var(--unit)) auto 0;
    width: max-content;
    padding-bottom: calc(4.81 * var(--unit));
    font-size: calc(18 * var(--unit));
    font-weight: 700;
    line-height: calc(44 * var(--unit));
}

.service-combination_stat-line {
    display: block;
    height: calc(44 * var(--unit));
}

.service-combination_stat strong {
    color: #f26265;
    font-size: calc(44 * var(--unit));
}

.service-combination_stat strong span {
    font-size: calc(28 * var(--unit));
}

.service-combination_stat em {
    background: linear-gradient(transparent 12%, #fffbed 12%);
    color: #4bb0d0;
    font-size: calc(34 * var(--unit));
    font-style: normal;
}

.service-combination_reasons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(18 * var(--unit));
    padding: calc(30 * var(--unit)) calc(16 * var(--unit)) calc(16 * var(--unit));
}

.service-combination_reason {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(7 * var(--unit));
    padding: 0 calc(14 * var(--unit)) calc(16 * var(--unit));
    border: calc(3 * var(--unit)) solid #4bcfd0;
    border-radius: calc(8 * var(--unit));
    background: #fff;
}

.service-combination_reason-label {
    display: flex;
    align-items: center;
    gap: calc(3 * var(--unit));
    height: calc(18.5 * var(--unit));
    margin-top: calc(-3 * var(--unit));
    padding: calc(3 * var(--unit)) calc(10 * var(--unit));
    border-radius: 0 0 calc(6 * var(--unit)) calc(6 * var(--unit));
    background: #4bcfd0;
    color: #fff;
    font-size: calc(10 * var(--unit));
    font-weight: 700;
    line-height: 1.03;
}

.service-combination_reason-label span {
    font-family: Arial, sans-serif;
    font-size: calc(14 * var(--unit));
}

.service-combination_reason h3 {
    font-size: calc(14 * var(--unit));
    line-height: 1.4;
    letter-spacing: calc(0.84 * var(--unit));
    text-align: center;
    white-space: nowrap;
}

.service-combination_jobs {
    display: block;
    width: calc(120 * var(--unit));
    height: auto;
}

.service-combination_advisers {
    position: relative;
    width: calc(145 * var(--unit));
    height: calc(108 * var(--unit));
    overflow: hidden;
}

.service-combination_adviser-woman {
    position: absolute;
    top: 11.38%;
    left: 52.55%;
    width: calc(64.8074 * var(--unit));
    height: auto;
}

.service-combination_adviser-man {
    position: absolute;
    top: 0.1%;
    left: 2.05%;
    width: calc(88.5233 * var(--unit));
    height: auto;
}

.service-combination_divider {
    display: block;
    width: calc(390 * var(--unit));
    height: auto;
}

.service-combination_recommendation {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(12 * var(--unit));
    padding: calc(20 * var(--unit)) calc(16 * var(--unit)) calc(30 * var(--unit));
    overflow: hidden;
    background: #fffbed;
}

.service-combination_recommendation-title {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: calc(4 * var(--unit));
    color: #4bb0d0;
    font-size: calc(23 * var(--unit));
    line-height: 1.5;
    white-space: nowrap;
}

.service-combination_recommendation-title span {
    background: linear-gradient(transparent 12%, #fff 12%, #fff 90%, transparent 90%);
}

.service-combination_recommendation-accent {
    width: calc(26.0001 * var(--unit));
    height: auto;
    margin-bottom: calc(2 * var(--unit));
}

.service-combination_recommendation-accent--left {
    transform: rotate(17.53deg);
}

.service-combination_recommendation-accent--right {
    transform: rotate(162.47deg) scaleY(-1);
}

.service-combination_recommendation-copy {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(84 * var(--unit));
    font-size: calc(17 * var(--unit));
    font-weight: 500;
    line-height: 1.73;
    text-align: center;
}

.service-combination_woman {
    position: absolute;
    height: auto;
    transform: scaleX(-1);
}

.service-combination_woman--left {
    bottom: calc(-11 * var(--unit));
    left: calc(-10.25 * var(--unit));
    width: calc(85.5468 * var(--unit));
}

.service-combination_woman--right {
    right: calc(-5.6 * var(--unit));
    bottom: calc(-12 * var(--unit));
    width: calc(90.5328 * var(--unit));
}

.service-combination_services {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--unit));
    padding: calc(32 * var(--unit)) calc(16 * var(--unit)) calc(16 * var(--unit));
    background: #e5f3f8;
}

.service-combination_services-heading {
    text-align: center;
    font-weight: 700;
}

.service-combination_services-heading p {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(6 * var(--unit));
    font-size: calc(16 * var(--unit));
    line-height: 1;
    letter-spacing: calc(0.64 * var(--unit));
    white-space: nowrap;
}

.service-combination_services-heading img {
    width: calc(13 * var(--unit));
    height: auto;
}

.service-combination_services-accent--right {
    transform: rotate(180deg) scaleY(-1);
}

.service-combination_services-heading strong {
    color: #4bb0d0;
}

.service-combination_services-heading h3 {
    margin-top: calc(12 * var(--unit));
    font-size: calc(24 * var(--unit));
    line-height: 1;
}

.service-combination_cards {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(18 * var(--unit));
}

.service-combination_card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(12 * var(--unit));
    min-width: 0;
    padding: calc(12 * var(--unit)) calc(10 * var(--unit)) calc(16 * var(--unit));
    background: #fff;
}

.service-combination_service-name {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: calc(48 * var(--unit));
    color: #036eb8;
    font-size: calc(16 * var(--unit));
    line-height: 1.5;
    letter-spacing: calc(0.8 * var(--unit));
    text-align: center;
    text-wrap: balance;
    overflow-wrap: anywhere;
}

.service-combination_service-name a {
    color: inherit;
    text-underline-position: under;
}

.service-combination_banner-link {
    display: block;
}

.service-combination_banner {
    display: block;
    width: calc(150 * var(--unit));
    height: calc(125 * var(--unit));
    object-fit: contain;
}

.service-combination_specs {
    display: flex;
    flex-direction: column;
    gap: calc(2 * var(--unit));
    width: 100%;
}

.service-combination_specs > div {
    display: grid;
    grid-template-columns: calc(63 * var(--unit)) minmax(0, 1fr);
    text-align: center;
}

.service-combination_specs dt {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: calc(8 * var(--unit)) 0;
    background: #4bb0d0;
    color: #fff;
    font-size: calc(10 * var(--unit));
    font-weight: 700;
    line-height: 1;
    letter-spacing: calc(0.5 * var(--unit));
}

.service-combination_specs dd {
    padding: calc(6 * var(--unit)) 0;
    background: #e5f3f8;
    font-size: calc(14 * var(--unit));
    line-height: 1;
    letter-spacing: calc(0.7 * var(--unit));
}

.service-combination_specs > div:last-child dd {
    line-height: 1.4;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

.service-combination_description {
    width: 100%;
    font-size: calc(14 * var(--unit));
    line-height: 1.5;
    letter-spacing: calc(0.7 * var(--unit));
}

.service-combination_button {
    display: block;
    width: 100%;
    margin-top: auto;
    padding: calc(8 * var(--unit)) 0;
    border-radius: calc(6 * var(--unit));
    background: #ff4502;
    box-shadow: 0 calc(3 * var(--unit)) 0 #da3c00;
    color: #fff;
    font-size: calc(14 * var(--unit));
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: calc(0.84 * var(--unit));
    text-align: center;
    text-decoration: none;
}

.service-combination_card a:hover {
    opacity: 0.8;
}

.service-combination_card a:focus-visible {
    outline: 2px solid #036eb8;
    outline-offset: 3px;
}

.service-combination_plus {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(30 * var(--unit));
    height: auto;
    transform: translate(-50%, -50%);
}
