@charset "UTF-8";

.link-color {
    color: var(--light-blue-color);
}

.Container.--flow .SectionHeader {
    height: 100%;
}

.Container.--flow .SectionHeader__Heading {
    position: relative;
    height: 100%;
}

.Container.--flow .SectionHeader__Heading--ja {
    font-family: var(--title-font-ja);
    font-size: min(36px, calc(36 / 1440 * 100vw));
    font-weight: 700;
    line-height: min(52px, calc(52 / 1440 * 100vw));
    color: #1d1d1d;
    position: absolute;
    top: 50%;
    left: 0;
}

.Container.--flow .SectionHeader__Heading--en {
    font-family: var(--title-font-en-serif);
    font-size: min(200px, calc(200 / 1440 * 100vw));
    font-weight: 400;
    line-height: min(250px, calc(250 / 1440 * 100vw));
    color: #4ec4d4;
    position: absolute;
    left: min(-50px, calc(-50 / 1440 * 100vw));
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.1;
    white-space: nowrap;
    text-transform: capitalize;
}

@media screen and (max-width: 768px) {
    .Container.--flow .SectionHeader__Heading--ja {
        transform: translateY(-.5em);
        font-size: max(30px, calc(30 / 375 * 100vw));
        line-height: max(40px, calc(40 / 375 * 100vw));
    }

    .Container.--flow .SectionHeader__Heading--en {
        left: max(-28px, calc(-28 / 375 * 100vw));
        font-size: max(110px, calc(100 / 375 * 110vw));
        line-height: max(138px, calc(138 / 375 * 100vw));
    }

}

.FlowContents {
    padding-top: 10%;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .FlowContents {
        flex-direction: column;
        padding: 3rem 0 5rem;
    }
}

.FlowHeader {
    padding-bottom: 10rem;
    position: relative;
    width: 18%;
    text-align: center;
}

.FlowHeader::before {
    content: "";
    position: absolute;
    bottom: 25%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 30%;
    background-image: url(/Contents/img/Flow-Page/flow-arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top 0 left 50%;
}

.FlowHeader::before {
    bottom: 20%;
}

.FlowHeader__Heading {
    display: flex;
    flex-direction: column;
    max-width: 650px;
}

.FlowHeader__Heading {
    font-size: calc(var(--s-val) * 3.6);
    color: var(--light-blue-color);
    font-weight: 500;
    font-family: var(--mincho-font);
    width: 100%;
    border: 2px solid var(--light-blue-color);
    padding: 7% 0;
}

@media screen and (max-width: 768px) {

    .FlowHeader {
        padding-bottom: 5rem;
        margin-bottom: 2rem;
        width: 47%;
}

    .FlowHeader__Heading {
    font-size: calc(var(--s-val) * 2);
}

    .FlowHeader__Heading .en,
    .WhyContents__Title .en {
        font-size: max(16px, calc(16 / 375 * 100vw));
        line-height: max(20px, calc(20 / 375 * 100vw));
    }

    .FlowHeader__Heading .ja,
    .WhyContents__Title .ja {
        font-size: max(24px, calc(24 / 375 * 100vw));
        line-height: max(36px, calc(36 / 375 * 100vw));
    }
}

.FlowListWrap {
    max-width: 918px;
    margin: 0 auto 5%;
}

@media screen and (max-width: 768px) {
    .FlowListWrap {
        width: 100%;
        margin: 0 auto;
    }
}

.FlowList {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 40px;
    position: relative;
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 768px) {
    .FlowList {
        gap: 5rem;
        width: 80%;
        margin: 0 auto;
    }
}

.FlowList__Item {
    padding: 3% 2% 4%;
    width: 100%;
    background-color: #F1FCFF;
    border-radius: min(8px, calc(8 / 1440 * 100vw));
    display: grid;
    grid-template:
        "image title" auto
        "image desc" auto;
    column-gap: min(24px, calc(24 / 1440 * 100vw));
    grid-template-columns: min(145px, calc(145 / 1440 * 100vw)) 1fr;
    position: relative;
    align-items: center;
    box-sizing: border-box;
}

@media screen and (max-width: 768px) {
    .FlowList__Item {
        padding: max(32px, calc(32 / 375 * 100vw)) max(20px, calc(20 / 375 * 100vw));
        grid-template:
            "image" auto
            "title" auto
            "desc" auto;
        column-gap: 0;
        justify-content: center;
        position: relative;
    }

    .FlowList__Item::before {
        content: "";
        position: absolute;
        background-image: url(/Contents/img/Flow-Page/flow-bg.png);
        background-repeat: no-repeat;
        background-position: top 0 left 50%;
        bottom: -100%;
        left: 50%;
        transform: translateX(-50%);
        width: 100%;
        height: 105%;
        z-index: 0;
    }

    li.FlowList__Item.FlowList__Item_last::before {
        display: none;
    }
}


.FlowList__ItemImage {
    grid-area: image;
    margin: 0 auto;
    width: 90%;
    position: relative;
    z-index: 100;
}

.FlowList__ItemImage::before {
    content: "";
    position: absolute;
    background-image: url(/Contents/img/Flow-Page/flow-bg.png);
    background-repeat: repeat-y;
    background-position: top 0 left 50%;
    bottom: -150%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 150%;
    z-index: -1;
}

.FlowList__Item:last-child .FlowList__ItemImage::before {
    display: none;
}

@media screen and (max-width: 768px) {
    .FlowList__ItemImage {
        width: 35%;
        margin: auto;
        position: absolute;
        top: -7.5rem;
        left: 50%;
        transform: translateX(-50%);
    }

    .FlowList__ItemImage::before {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    .FlowList__ItemImage {
        width: 35%;
        margin: auto;
        position: absolute;
        top: -4.5rem;
        left: 50%;
        transform: translateX(-50%);
    }

    .FlowList__ItemImage::before {
        display: none;
    }
}


.FlowList__ItemTitle {
    grid-area: title;
    font-size: min(24px, calc(24 / 1440 * 100vw));
    line-height: 1;
    letter-spacing: .02em;
    font-weight: 500;
    font-family: var(--title-font-ja);
    display: flex;
    align-items: center;
    gap: min(10px, calc(10 / 1440 * 100vw));
}

@media screen and (max-width: 768px) {
    .FlowList__ItemTitle {
        margin-top: 10%;
        margin-bottom: 4%;
        gap: max(8px, calc(8 / 375 * 100vw));
        justify-content: center;
    }

}

.FlowList__ItemTitle::before {
    content: attr(data-num);
    font-size: calc(var(--s-val)*5.7);
    color: var(--light-blue-color);
    font-family: var(--canto-font);
    margin-top: 2%;
}

.FlowList__ItemTitleText {
    font-family: var(--mincho-font);
    font-size: calc(var(--s-val)*3);
}

@media screen and (max-width: 768px) {
    .FlowList__ItemTitle::before {
        font-size: calc(var(--s-val)*2.9);
        white-space: nowrap;

    }

    .FlowList__ItemTitleText {
    font-size: calc(var(--s-val) * 1.8);
    }

    .FlowList__ItemDescriptionText {
        font-size: calc(var(--s-val)*1.4);
        line-height: 1.5;
    }
}

.FlowList__ItemDescription {
    grid-area: desc;
    font-size: calc(var(--s-val)*1.4);
}

.FlowList__ItemDescriptionText {
    font-size: calc(var(--s-val)*1.6);
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .FlowList__ItemDescriptionText {
        font-size: calc(var(--s-val)*1.4);
        line-height: 1.8;
    }
}

.FlowList__ItemDescriptionText a:hover {
    text-decoration: none;
    opacity: .7;
}

.FlowContents__notice {
    list-style-type: none;
}

.FlowContents__noticeItem {
    font-size: calc(var(--s-val)*1.4);
    line-height: 2;
    font-weight: 500;
}

.Why-bg {
    background-color: #F1FCFF;
}

.WhyContents {
    padding-top: 5rem;
    padding-bottom: min(120px, calc(120 / 1440 * 100vw));
    width: 90%;
    max-width: 1020px;
    margin-right: auto;
    margin-left: auto;
}

.WhyContents__Title .en {
        font-family: var(--canto-font);
    font-size: calc(var(--s-val) * 4);
    color: var(--blue-color);
    text-align: center;
}

.WhyContents__Title .ja {
    font-size: calc(var(--s-val)*3.6);
    font-family: var(--mincho-font);
}

.WhyContents__Title {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4rem 0 7rem;
}

.WhyContents__Content {
    display: flex;
    align-items: center;
    background-color: #fff;
    padding: 3rem;
    gap: calc(var(--s-val) * 5);
    margin-bottom: 3rem;
}

@media screen and (max-width: 768px) {
    .WhyContents__Title {
        gap: 0;
        padding: 4rem 0;
    }

    .WhyContents__Title .en {
    font-size: calc(var(--s-val) * 2.4);
}

    .WhyContents__Title .ja {
        text-align: center;
        line-height: 1.5;
            font-size: calc(var(--s-val) * 2);
    }

    .WhyContents {
        padding-top: 4rem;
        padding-bottom: 20%;
        width: 90%;
}
}

figure.WhyContents__Image {
    width: 30%;
}

.WhyContents__Description {
    font-size: calc(var(--s-val) * 1.6);
    width: 70%;
    line-height: 1.8;
}

.WhyContents__Description span.font-style {
    font-weight: bold;
        display: block;
    margin-top: 5%;

}

@media screen and (max-width: 768px) {
    .WhyContents__Content {
        flex-direction: column;
        margin-bottom: 2rem;
        padding: 2rem 0;
        gap: calc(var(--s-val) * 2);
    }

    figure.WhyContents__Image {
    width: 50%;
}

.WhyContents__Description span.font-style {
    margin-top: 4%;
}
}


@media screen and (max-width: 768px) {
    .WhyContents__Description {
        font-size: calc(var(--s-val)*1.4);
        line-height: 1.8;
            width: 90%;
    }
}

.WhyContents__Nav {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.WhyContents__Nav a {
    background: #af7500;
    background: linear-gradient(0deg, #af7500, #cf9a12 24%, #e7c44c, #ffde80 76%, #d4b647);
    color: #fff;
    font-size: calc(var(--s-val) * 1.8);
    padding: 15px 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 33%;
    margin: 0 auto;
    border-radius: 5px;
}

.WhyContents__Nav a::after {
    display: block;
    content: "";
    width: calc(var(--s-val) * 2.5);
    height: calc(var(--s-val) * 2);
    background-image: url(/Contents/img/CommonImage/btn-arrow.png);
    background-repeat: no-repeat;
    background-position: top 50% left 0;
    background-size: contain;
    right: 10%;
    top: 50%;
    z-index: 100;
    margin-left: 2%;

}

@media screen and (max-width: 768px) {

    .WhyContents__Nav a {
    font-size: calc(var(--s-val) * 1.8);
    padding: 3% 0;
    width: 100%;
}
}

  @media screen and (max-width: 768px) {
    .breadcrumbs {
      margin: 0 1em;
    }
  }

  .breadcrumbs__list {
    list-style-type: none;
    margin: 0;
    padding: 0;
  }

  .breadcrumbs__item {
    display: inline-block;
  }

  .breadcrumbs__item:not(:last-child):after {
    content: '｜';
    display: inline-block;
    position: relative;
    vertical-align: middle;
    margin-right: 0.5em;
  }

  .breadcrumbs__link {
    text-decoration: underline;
  }

  .breadcrumbs__link[aria-current='page'] {
    color: inherit;
    font-weight: normal;
    text-decoration: none;
  }

  .breadcrumbs__link[aria-current='page']:hover,
  .breadcrumbs__link[aria-current='page']:focus {
    text-decoration: underline;
  }