@charset "utf-8";

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
@media screen and (min-width: 1071px), print {
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

/*================================*/
main * .scroll-indicator {
    display: none;
}
/*----------------*/
main * .area-title {
}
main * .area-title .block-head {
    padding: 90px 0 20px 0;
}
main * .area-title .block-head .cell-head {
    position: relative;
    padding: 0 0 0 55px;
}
main * .area-title .block-head .cell-head .mark {
    position: absolute;
    left: 0;
    top: 8px;
    width: 42px;
    aspect-ratio: 1/1;
}
main * .area-title .block-head .cell-head .mark .figelm {
    background-image: url(../images/mark_brand_03.svg);
}
main * .area-title .block-head .cell-head .txt {
    font-size: 3.2rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
main * .area-title .block-sub {
    padding: 0 0 25px 0;
}
main * .area-title .block-sub .txt {
    font-size: 2.3rem;
    font-weight: 700;
}
main * .area-title .block-note {
    padding: 0 0 45px 0;
}
main * .area-title .block-note .txt {
    font-size: 1.7rem;
}

/*================================*/
section.keyvisual {
    font-size: min(1vw, 15.12px);
    height: 40em;
}
/*----------------*/
section.keyvisual .layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
/*----------------*/
section.keyvisual .layer.base {
}
section.keyvisual .layer.base .skin {
    position: absolute;
    top: 0;
    width: 50%;
    height: 100%;
}
section.keyvisual .layer.base .skin.half-a {
    left: 0;
}
section.keyvisual .layer.base .skin.half-b {
    right: 0;
}
section.keyvisual .layer.base .skin.half-a .paint {
    width: calc(100% - 3em);
    height: 100%;
    background-color: var(--color-blue-01);
    border-radius: 5em 0 0 0;
    margin: 0 0 0 auto;
    overflow: hidden;
}
section.keyvisual .layer.base .skin.half-a .paint .figelm {
    background-image: url(../images/deco_keyvisual_01.svg);
    background-size: 70% auto;
    background-repeat: repeat;
}
section.keyvisual .layer.base .skin.half-b .paint {
    width: calc(100% - 3em);
    height: 100%;
    background-color: var(--color-blue-05);
    border-radius: 0 4em 0 0;
    margin: 0 auto 0 0;
    overflow: hidden;
}
section.keyvisual .layer.base .skin.half-b .paint .figelm {
    background-image: url(../images/deco_keyvisual_02.svg);
    background-size: 70% auto;
    background-repeat: repeat;
}
/*----------------*/
section.keyvisual .layer.illust {
}
section.keyvisual .layer.illust .skin.n1 {
    position: absolute;
    left: 50%;
    top: 5.7em;
    width: 14.7em;
    margin: 0 0 0 -7.3em;
}
section.keyvisual .layer.illust .skin.n2 {
    position: absolute;
    left: 50%;
    top: 5.3em;
    width: 33.5em;
    margin: 0 0 0 10.5em;
}
section.keyvisual .layer.illust .skin.n1 .wrap {
    width: 100%;
    aspect-ratio: 888/1864;
}
section.keyvisual .layer.illust .skin.n2 .wrap {
    width: 100%;
    aspect-ratio: 2028/1710;
}
section.keyvisual .layer.illust .skin.n1 .wrap .figelm {
    background-image: url(../images/ill_keyvisual_01.png);
}
section.keyvisual .layer.illust .skin.n2 .wrap .figelm {
    background-image: url(../images/ill_keyvisual_02.png);
}
/*----------------*/
section.keyvisual .layer.note {
}
section.keyvisual .layer.note .skin {
    position: absolute;
    left: 50%;
    top: 5.6em;
    width: 50%;
    margin: 0 0 0 -42.6em;
}
section.keyvisual .layer.note .area-note {
}
section.keyvisual .layer.note .area-note .block-self {
    padding: 0 0 1.4em 0;
}
section.keyvisual .layer.note .area-note .block-self .txt {
    line-height: 1.3;
    font-size: 2.4em;
    font-weight: 700;
    color: var(--color-white);
}
section.keyvisual .layer.note .area-note .block-call {
    padding: 0 0 2.2em 0;
}
section.keyvisual .layer.note .area-note .block-call .txt {
    font-size: 1.5em;
    color: var(--color-white);
}
section.keyvisual .layer.note .area-note .block-company {
}
section.keyvisual .layer.note .area-note .block-company .para {
    padding: 0 0 0.4em 0;
}
section.keyvisual .layer.note .area-note .block-company .para .wrap {
    display: inline-block;
    vertical-align: top;
    background-color: var(--color-white);
}
section.keyvisual .layer.note .area-note .block-company .para.n1 .wrap {
    padding: 0 0 0 0.7em;
}
section.keyvisual .layer.note .area-note .block-company .para.n2 .wrap {
    padding: 0 0.2em 0.2em 0;
}
section.keyvisual .layer.note .area-note .block-company .para.n1 .wrap .txt {
    font-size: 1.3em;
    letter-spacing: -0.02em;
}
section.keyvisual .layer.note .area-note .block-company .para.n2 .wrap .fig {
    width: 5em;
    aspect-ratio: 128/60;
}
section.keyvisual .layer.note .area-note .block-company .para.n2 .wrap .fig .figelm {
    background-image: url(../images/logo_jeki_01.svg);
}

/*================================*/
section.introduction {
    z-index: 1;
}
section.introduction>.inner {
}
/*----------------*/
section.introduction .area-title {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: 195px 330px;
    grid-template-columns: 11fr 12fr;
}
section.introduction .area-title .block-head {
    grid-row: 1/3;
    grid-column: 1/2;
}
section.introduction .area-title .block-sub {
    grid-row: 1/2;
    grid-column: 2/3;
}
section.introduction .area-title .block-note {
    grid-row: 2/3;
    grid-column: 2/3;
}
section.introduction .area-title .block-head {
    padding: 70px 0 0 0;
}
section.introduction .area-title .block-head .cell-head {
    position: relative;
    padding: 0 0 0 55px;
}
section.introduction .area-title .block-head .cell-head .mark {
    position: absolute;
    left: 0;
    top: 13px;
    width: 42px;
    aspect-ratio: 1/1;
}
section.introduction .area-title .block-head .cell-head .mark .figelm {
    background-image: url(../images/mark_brand_03.svg);
}
section.introduction .area-title .block-head .cell-head .txt {
    font-size: 4rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
section.introduction .area-title .block-sub {
    padding: 74px 0 0 0;
}
section.introduction .area-title .block-sub .txt {
    font-size: 3.3rem;
    font-weight: 700;
}
section.introduction .area-title .block-note {
    padding: 0 0 0 0;
}
section.introduction .area-title .block-note .txt {
    line-height: 3.1;
    font-size: 1.5rem;
}
/*----------------*/
section.introduction .area-illust {
    padding: 0 0 30px 0;
}
section.introduction .area-illust .block-illust {
    position: relative;
    width: 100%;
    padding: 35px 0 30px 0;
    text-align: center;
    background-color: var(--color-white);
    border-radius: 35px;
    filter: drop-shadow(0 0 5px var(--color-gray-01));
}
section.introduction .area-illust .block-illust .cell-illust {
    display: inline-block;
    vertical-align: top;
    width: 920px;
    aspect-ratio: 1834/858;
}
section.introduction .area-illust .block-illust .cell-illust .figelm {
    background-image: url(../images/ill_introduction.png);
}

/*================================*/
section.feature {
}
section.feature>.inner {
}
/*----------------*/
section.feature .behind {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100% + 380px);
    background-color: var(--color-gray-02);
    border-radius: 50px 50px 0 0;
}
section.feature .behind .deco {
    position: absolute;
    aspect-ratio: 1/1;
}
section.feature .behind .deco.n1 {
    left: 50%;
    top: -550px;
    width: 1100px;
    margin: 0 0 0 -1200px;
}
section.feature .behind .deco.n2 {
    left: 50%;
    bottom: -250px;
    width: 700px;
    margin: 0 0 0 120px;
}
section.feature .behind .deco .figelm {
    background-image: url(../images/mark_brand_03.svg);
}
section.feature .behind .deco.n1 .figelm {
    opacity: 0.04;
}
section.feature .behind .deco.n2 .figelm {
    opacity: 0.12;
}
/*----------------*/
section.feature .area-title {
}
section.feature .area-title .block-note .txt {
    white-space: nowrap;
}
/*----------------*/
section.feature .area-point {
}
section.feature .area-point .block-point {
    padding: 0 0 120px 0;
}
section.feature .area-point .block-point .cell-number {
    position: relative;
    z-index: 1;
}
section.feature .area-point .block-point .stack-body {
    margin: -65px 0 0 0;
}
/*----------------*/
section.feature .area-point .block-point .cell-number {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0 15px;
}
section.feature .area-point .block-point .cell-number .each {
    width: 130px;
}
section.feature .area-point .block-point .cell-number .each .skin {
    width: 100%;
    aspect-ratio: 1/1;
}
section.feature .area-point .block-point .cell-number .each.n1 .figelm {
    background-image: url(../images/mark_point_01_01.svg);
}
section.feature .area-point .block-point .cell-number .each.n2 .figelm {
    background-image: url(../images/mark_point_02_01.svg);
}
section.feature .area-point .block-point .cell-number .each.n3 .figelm {
    background-image: url(../images/mark_point_03_01.svg);
}
section.feature .area-point .block-point .cell-number .each.n1.curr .figelm ,
section.feature .area-point .block-point .cell-number .each.n1 .hitelm:hover .figelm {
    background-image: url(../images/mark_point_01_02.svg);
}
section.feature .area-point .block-point .cell-number .each.n2.curr .figelm ,
section.feature .area-point .block-point .cell-number .each.n2 .hitelm:hover .figelm {
    background-image: url(../images/mark_point_02_02.svg);
}
section.feature .area-point .block-point .cell-number .each.n3.curr .figelm ,
section.feature .area-point .block-point .cell-number .each.n3 .hitelm:hover .figelm {
    background-image: url(../images/mark_point_03_02.svg);
}
section.feature .area-point .block-point .cell-sheet {
    position: relative;
    width: 100%;
    background-color: var(--color-white);
    border-radius: 35px;
    filter: drop-shadow(0 0 5px var(--color-gray-01));
}
/*----------------*/
section.feature .area-point .block-point .cell-sheet .each {
    display: none;
}
section.feature .area-point .block-point .cell-sheet .each.curr {
    display: block;
}
section.feature .area-point .block-point .cell-sheet .each.n1 .skin {
    padding: 75px 40px 0 40px;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .skin {
    padding: 75px 40px 0 40px;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .skin {
    padding: 75px 65px 0 65px;
}
section.feature .area-point .block-point .cell-sheet .each .divi-head {
    padding: 0 0 30px 0;
    text-align: center;
}
section.feature .area-point .block-point .cell-sheet .each .divi-head .wrap {
    display: inline-block;
    vertical-align: top;
    position: relative;
}
section.feature .area-point .block-point .cell-sheet .each .divi-head .wrap .bar {
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 100%;
    height: 3px;
    background-color: var(--color-blue-01);
}
section.feature .area-point .block-point .cell-sheet .each .divi-head .wrap .txt {
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
section.feature .area-point .block-point .cell-sheet .each .divi-about {
    padding: 0 0 20px 0;
    text-align: center;
}
section.feature .area-point .block-point .cell-sheet .each .divi-about .txt {
    font-size: 1.4rem;
}
section.feature .area-point .block-point .cell-sheet .each .divi-detail {
}
/*----------------*/
section.feature .area-point .block-point .cell-sheet .each.n1 .divi-detail .envel-illust {
    padding: 0 0 60px 0;
    text-align: center;
}
section.feature .area-point .block-point .cell-sheet .each.n1 .divi-detail .envel-illust .wrap {
    display: inline-block;
    vertical-align: top;
    width: 725px;
    aspect-ratio: 1446/618;
}
section.feature .area-point .block-point .cell-sheet .each.n1 .divi-detail .envel-illust .wrap .figelm {
    background-image: url(../images/obj_feature_point_01.png);
}
/*----------------*/
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail {
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-title {
    padding: 0 0 7px 0;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-title .wrap {
    position: relative;
    padding: 0 0 0 20px;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-title .wrap .mark {
    position: absolute;
    left: 0;
    top: 5px;
    width: 17px;
    aspect-ratio: 1/1;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-title .wrap .mark>.inlinesvg {
    stroke-width: 1;
    stroke: var(--color-blue-01);
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-title .wrap .txt {
    font-size: 1.6rem;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: 50px 50px;
    grid-template-columns: 4fr 5fr;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row {
    position: relative;
    padding: 0 0 0 100px;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .cap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100px;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .cap .wrap {
    width: 90px;
    padding: 8px 0 8px 0;
    text-align: center;
    color: var(--color-white);
    border-radius: 10px;
    background-color: var(--color-blue-02);
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .cap .wrap .txt {
    font-size: 1.4rem;
    white-space: nowrap;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .str {
    padding: 11px 0 0 0;
    line-height: 1.4;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .str.ex1 {
    padding: 0 0 0 0;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-item .row .str .txt {
    font-size: 1.4rem;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-illust {
    padding: 10px 0 60px 0;
    text-align: center;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-illust .wrap {
    display: inline-block;
    vertical-align: top;
    width: 945px;
    aspect-ratio: 950/228;
}
section.feature .area-point .block-point .cell-sheet .each.n2 .divi-detail .envel-illust .wrap .figelm {
    background-image: url(../images/obj_feature_point_02.svg);
}
/*----------------*/
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail {
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0 0;
    padding: 0 0 10px 0;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col {
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col.n1 {
    width: 575px;
    padding: 0 50px 0 0;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col.n2 {
    width: calc(100% - 575px);
    padding: 0 0 0 45px;
    border-style: solid;
    border-width: 0 0 0 1px;
    border-color: var(--color-gray-01);
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .ttl {
    padding: 0 0 10px 0;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .ttl .wrap {
    position: relative;
    padding: 0 0 0 20px;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .ttl .wrap .mark {
    position: absolute;
    left: 0;
    top: 5px;
    width: 17px;
    aspect-ratio: 1/1;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .ttl .wrap .mark>.inlinesvg {
    stroke-width: 1;
    stroke: var(--color-blue-01);
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .ttl .wrap .txt {
    font-size: 1.6rem;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .cap {
    padding: 0 0 10px 0;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .cap .wrap {
    width: 100%;
    padding: 8px 0 8px 0;
    text-align: center;
    color: var(--color-white);
    border-radius: 10px;
    background-color: var(--color-blue-02);
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .cap .wrap .txt {
    font-size: 1.4rem;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .str {
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-item .col .str .txt {
    font-size: 1.4rem;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-illust {
    padding: 0 0 60px 0;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-illust .wrap {
    width: 100%;
    aspect-ratio: 1800/326;
}
section.feature .area-point .block-point .cell-sheet .each.n3 .divi-detail .envel-illust .wrap .figelm {
    background-image: url(../images/obj_feature_point_03.png);
}

/*================================*/
section.utilize {
}
section.utilize>.inner {
}
/*----------------*/
section.utilize .behind {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 665px;
    background-color: var(--color-blue-01);
    border-radius: 50px 0 0 0;
}
section.utilize .behind .deco {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
section.utilize .behind .deco .figelm {
    background-image: url(../images/deco_keyvisual_01.svg);
    background-size: 50% auto;
    background-repeat: repeat;
}
/*----------------*/
section.utilize .area-title {
}
/*----------------*/
section.utilize .area-card {
    padding: 0 0 30px 0;
}
section.utilize .area-card .block-card {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: start;
    gap: 15px 0;
}
section.utilize .area-card .block-card .each {
    width: 333px;
    border-radius: 20px;
    background-color: var(--color-white);
    border-style: solid;
    border-width: 1px;
    border-color: var(--color-gray-01);
}
section.utilize .area-card .block-card .each .skin {
    padding: 25px 25px 20px 25px;
}
section.utilize .area-card .block-card .each .cell-illust {
}
section.utilize .area-card .block-card .each .cell-illust .divi-sample {
    width: 100%;
    aspect-ratio: 284/129;
}
section.utilize .area-card .block-card .each.n1 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_01.svg);
}
section.utilize .area-card .block-card .each.n2 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_02.svg);
}
section.utilize .area-card .block-card .each.n3 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_03.svg);
}
section.utilize .area-card .block-card .each.n4 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_04.svg);
}
section.utilize .area-card .block-card .each.n5 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_05.svg);
}
section.utilize .area-card .block-card .each.n6 .cell-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_card_06.svg);
}
section.utilize .area-card .block-card .each .cell-name {
    padding: 12px 0 0 0;
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: var(--color-gray-01);
}
section.utilize .area-card .block-card .each.n1 .cell-name ,
section.utilize .area-card .block-card .each.n2 .cell-name ,
section.utilize .area-card .block-card .each.n3 .cell-name {
    height: 75px;
}
section.utilize .area-card .block-card .each.n4 .cell-name ,
section.utilize .area-card .block-card .each.n5 .cell-name ,
section.utilize .area-card .block-card .each.n6 .cell-name {
    height: 50px;
}
section.utilize .area-card .block-card .each .cell-name .txt {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
section.utilize .area-card .block-card .each .cell-note {
}
section.utilize .area-card .block-card .each.n1 .cell-note ,
section.utilize .area-card .block-card .each.n2 .cell-note ,
section.utilize .area-card .block-card .each.n3 .cell-note {
    height: 115px;
}
section.utilize .area-card .block-card .each.n4 .cell-note ,
section.utilize .area-card .block-card .each.n5 .cell-note ,
section.utilize .area-card .block-card .each.n6 .cell-note {
    height: 155px;
}
section.utilize .area-card .block-card .each .cell-note .divi-main {
    padding: 10px 0 5px 0;
}
section.utilize .area-card .block-card .each .cell-note .divi-main .txt {
    font-size: 1.3rem;
    font-weight: 700;
}
section.utilize .area-card .block-card .each .cell-note .divi-sub {
}
section.utilize .area-card .block-card .each .cell-note .divi-sub .txt {
    font-size: 1.2rem;
}
/*----------------*/
section.utilize .area-subttl {
    color: var(--color-white);
}
section.utilize .area-subttl .block-head {
    padding: 8px 0 8px 0;
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: var(--color-gray-01);
}
section.utilize .area-subttl .block-head .cell-head {
}
section.utilize .area-subttl .block-head .cell-head .txt {
    font-size: 2.5rem;
}
section.utilize .area-subttl .block-main {
    padding: 20px 0 5px 0;
}
section.utilize .area-subttl .block-main .txt {
    font-size: 1.9rem;
}
section.utilize .area-subttl .block-sub {
    padding: 0 0 30px 0;
}
section.utilize .area-subttl .block-sub .txt {
    padding: 0 130px 0 0;font-size: 1.4rem;
}
/*----------------*/
section.utilize .area-case {
    width: 100%;
    padding: 0 0 70px 0;
}
section.utilize .area-case .slider-outer {
    position: relative;
    width: 100%;
}
section.utilize .area-case .slider-outer .slider-inner {
    width: calc(100% + ((100vw - var(--width-sectinner-lsize)) / 2));
    overflow: hidden;
}
section.utilize .area-case .slider-outer .slider-inner .slider-rail {
    position: relative;
    left: 0;
    white-space: nowrap;
    will-change: left;
}
section.utilize .area-case .slider-outer .slider-button {
    position: absolute;
    left: 0;
    top: -70px;
    width: 100%;
    text-align: right;
}
section.utilize .area-case .slider-outer .slider-button .slider-shift {
    display: inline-block;
    vertical-align: top;
    width: 48px;
    aspect-ratio: 1/1;
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.prev {
    margin: 0 3px 0 0;
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.next {
    margin: 0 0 0 3px;
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.prev .figelm {
    background-image: url(../images/arrow_left_01.svg);
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.prev .hitelm:hover .figelm {
    background-image: url(../images/arrow_left_02.svg);
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.next .figelm {
    background-image: url(../images/arrow_right_01.svg);
}
section.utilize .area-case .slider-outer .slider-button .slider-shift.next .hitelm:hover .figelm {
    background-image: url(../images/arrow_right_02.svg);
}
/*----------------*/
section.utilize .area-case .each {
    display: inline-block;
    vertical-align: top;
    width: 460px;
    white-space: normal;
}
section.utilize .area-case .each .inbox {
    position: relative;
    width: 445px;
    background-color: var(--color-white);
    border-radius: 20px;
}
section.utilize .area-case .each .inbox .skin {
    padding: 25px 25px 20px 25px;
}
section.utilize .area-case .each .cell-info {
    position: relative;
}
section.utilize .area-case .each .cell-info .divi-illust {
    width: 140px;
    padding: 0 0 12px 0;
}
section.utilize .area-case .each .cell-info .divi-illust .divi-sample {
    width: 100%;
    aspect-ratio: 1/1;
}
section.utilize .area-case .each.n1 .cell-info .divi-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_case_01.svg);
}
section.utilize .area-case .each.n2 .cell-info .divi-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_case_02.svg);
}
section.utilize .area-case .each.n3 .cell-info .divi-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_case_03.svg);
}
section.utilize .area-case .each.n4 .cell-info .divi-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_case_04.svg);
}
section.utilize .area-case .each.n5 .cell-info .divi-illust .divi-sample .figelm {
    background-image: url(../images/ill_utilize_case_05.svg);
}
section.utilize .area-case .each .cell-info .divi-tip {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 0 0 0 155px;
}
section.utilize .area-case .each .cell-info .divi-tip .txt {
    font-size: 1.2rem;
}
section.utilize .area-case .each .cell-info .divi-tag {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: right;
}
section.utilize .area-case .each .cell-info .divi-tag .wrap {
    display: inline-block;
    vertical-align: top;
    padding: 0 8px 0 8px;
    border-radius: 20px;
}
section.utilize .area-case .each.type-a .cell-info .divi-tag .wrap {
    background-color: var(--color-green-01);
}
section.utilize .area-case .each.type-b .cell-info .divi-tag .wrap {
    background-color: var(--color-green-02);
}
section.utilize .area-case .each .cell-info .divi-tag .wrap .txt {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-white);
    white-space: nowrap;
}
section.utilize .area-case .each .cell-info .divi-mark {
    position: absolute;
    left: -17px;
    top: -17px;
    width: 55px;
    aspect-ratio: 1/1;
}
section.utilize .area-case .each.n1 .cell-info .divi-mark .figelm {
    background-image: url(../images/mark_case_01.svg);
}
section.utilize .area-case .each.n2 .cell-info .divi-mark .figelm {
    background-image: url(../images/mark_case_02.svg);
}
section.utilize .area-case .each.n3 .cell-info .divi-mark .figelm {
    background-image: url(../images/mark_case_03.svg);
}
section.utilize .area-case .each.n4 .cell-info .divi-mark .figelm {
    background-image: url(../images/mark_case_04.svg);
}
section.utilize .area-case .each.n5 .cell-info .divi-mark .figelm {
    background-image: url(../images/mark_case_05.svg);
}
section.utilize .area-case .each .cell-what {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: calc(25px + 30px) calc(25px + 0px) 0 calc(25px + 155px);
}
section.utilize .area-case .each .cell-what .txt {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
section.utilize .area-case .each .cell-note {
    height: 105px;
    padding: 10px 0 0 0;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: var(--color-gray-01);
}
section.utilize .area-case .each .cell-note .txt {
    font-size: 1.2rem;
}

/*================================*/
section.library {
    background-color: var(--color-gray-02);
}
section.library>.inner {
}
/*----------------*/
section.library .area-title {
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: var(--color-gray-01);
}
/*----------------*/
section.library * .block-subhead {
}
section.library * .block-subhead .cell-subhead {
    position: relative;
    padding: 0 0 0 30px;
}
section.library * .block-subhead .cell-subhead .mark {
    position: absolute;
    left: 0;
    top: 7px;
    width: 22px;
    aspect-ratio: 1/1;
}
section.library * .block-subhead .cell-subhead .mark>.inlinesvg {
    stroke-width: 1;
    stroke: var(--color-blue-01);
}
section.library * .block-subhead .cell-subhead .txt {
    font-size: 2rem;
    font-weight: 700;
}
/*----------------*/
section.library .area-lineup {
}
section.library .area-lineup .block-subhead {
    padding: 0 0 15px 0;
}
section.library .area-lineup .block-table {
}
section.library .area-lineup .block-table .cell-table {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: 30px 115px 115px;
    grid-template-columns: 18fr 30fr 18fr 30fr;
    gap: 1px 1px;
    background-color: var(--color-gray-01);
    border-style: solid;
    border-width: 1px;
    border-color: var(--color-gray-01);
}
section.library .area-lineup .block-table .cell-table .each.thead {
    background-color: var(--color-blue-02);
}
section.library .area-lineup .block-table .cell-table .each.tbody {
    background-color: var(--color-blue-01);
}
section.library .area-lineup .block-table .cell-table .each.tbase {
    background-color: var(--color-white);
}
section.library .area-lineup .block-table .cell-table .each .skin {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: auto;
    grid-template-columns: auto;
    place-content: center center;
    width: 100%;
    height: 100%;
    padding: 0 20px 0 20px;
}
section.library .area-lineup .block-table .cell-table .each .txt {
    line-height: 1.4;
}
section.library .area-lineup .block-table .cell-table .each.thead .txt {
    color: var(--color-white);
    font-size: 1.3rem;
}
section.library .area-lineup .block-table .cell-table .each.tbody .txt {
    color: var(--color-white);
    font-size: 1.5rem;
}
section.library .area-lineup .block-table .cell-table .each.tbase .txt {
    color: var(--color-black);
    font-size: 1.5rem;
}
section.library .area-lineup .block-table .cell-table .each.tbase .txt.with-dot {
    padding: 0 0 0 1em;
    text-indent: -1em;
}
section.library .area-lineup .block-caption {
    padding: 15px 0 50px 0;
}
section.library .area-lineup .block-caption .txt {
    font-size: 1.2rem;
}
section.library .area-lineup .block-caption .txt .phrase {
    padding: 0 15px 0 0;
}
/*----------------*/
section.library .area-what {
    padding: 45px 0 0 0;
}
section.library .area-what .block-subhead {
    padding: 0 0 15px 0;
}
section.library .area-what .block-what {
    padding: 0 0 15px 0;
}
section.library .area-what .block-what .txt {
    font-size: 1.4rem;
}
section.library .area-what .block-card {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 15px 0;
    padding: 0 0 120px 0;
}
section.library .area-what .block-card .each {
    width: 507px;
    padding: 30px 35px 25px 35px;
    border-radius: 20px;
    background-color: var(--color-white);
}
section.library .area-what .block-card .each .skin {
}
section.library .area-what .block-card .each .cell-info {
    position: relative;
    height: 275px;
    padding: 0 0 0 160px;
}
section.library .area-what .block-card .each .cell-info .divi-sample {
    position: absolute;
    left: 0;
    top: 5px;
    width: 135px;
    aspect-ratio: 272/518;
}
section.library .area-what .block-card .each.n1 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_01.png);
}
section.library .area-what .block-card .each.n2 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_02.png);
}
section.library .area-what .block-card .each.n3 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_03.png);
}
section.library .area-what .block-card .each.n4 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_04.png);
}
section.library .area-what .block-card .each.n5 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_05.png);
}
section.library .area-what .block-card .each.n6 .cell-info .divi-sample .figelm {
    background-image: url(../images/obj_library_06.png);
}
section.library .area-what .block-card .each .cell-info .divi-name {
    padding: 0 0 5px 0;
}
section.library .area-what .block-card .each .cell-info .divi-name .txt {
    font-size: 1.8rem;
    font-weight: 700;
}
section.library .area-what .block-card .each .cell-info .divi-note {
}
section.library .area-what .block-card .each .cell-info .divi-note .txt {
    font-size: 1.4rem;
}
section.library .area-what .block-card .each .cell-info .divi-note .sub {
    padding: 10px 0 0 0;
    font-size: 1.2rem;
}
section.library .area-what .block-card .each .cell-jump {
    padding: 15px 0 0 0;
    text-align: center;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: var(--color-gray-01);
}
section.library .area-what .block-card .each .cell-jump .my-roundbutton-01 {
    width: 275px;
    font-size: 1.4rem;
}
section.library .area-what .block-card .each .cell-jump .my-roundbutton-01 .mark .figelm {
    background-image: url(../images/icon_external_01.svg);
}
section.library .area-what .block-card .each .cell-jump .my-roundbutton-01 .hitelm:hover .mark .figelm {
    background-image: url(../images/icon_external_02.svg);
}

/*================================*/
section.support {
}
section.support>.inner {
}
/*----------------*/
section.support .area-title {
}
/*----------------*/
section.support .area-scene {
    border-radius: 40px;
    background-color: var(--color-gray-02);
}
section.support .area-scene .block-head {
    padding: 75px 0 50px 0;
    text-align: center;
}
section.support .area-scene .block-head .cell-head {
    display: inline-block;
    vertical-align: top;
    position: relative;
}
section.support .area-scene .block-head .cell-head .bar {
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 100%;
    height: 3px;
    background-color: var(--color-blue-01);
}
section.support .area-scene .block-head .cell-head .txt {
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-blue-01);
}
section.support .area-scene .block-card {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 35px 0;
    padding: 0 80px 90px 80px;
}
section.support .area-scene .block-card .each {
    width: 420px;
}
section.support .area-scene .block-card .each .cell-illust {
    width: 100%;
    height: 195px;
    background-color: var(--color-white);
    border-radius: 10px;
    overflow: hidden;
}
section.support .area-scene .block-card .each .cell-illust .figelm {
    width: 100%;
    aspect-ratio: 460/208;
}
section.support .area-scene .block-card .each.n1 .cell-illust .figelm {
    background-image: url(../images/ill_support_01.svg);
}
section.support .area-scene .block-card .each.n2 .cell-illust .figelm {
    background-image: url(../images/ill_support_02.svg);
}
section.support .area-scene .block-card .each.n3 .cell-illust .figelm {
    background-image: url(../images/ill_support_03.svg);
    margin: 0 0 0 -30px;
}
section.support .area-scene .block-card .each.n4 .cell-illust .figelm {
    background-image: url(../images/ill_support_04.svg);
}
section.support .area-scene .block-card .each .cell-note {
    padding: 8px 0 0 0;
}
section.support .area-scene .block-card .each .cell-note .txt {
    text-align: center;
}
section.support .area-scene .block-card .each.n4 .cell-note .txt {
    padding: 0 82px 0 82px;
}
section.support .area-scene .block-card .each .cell-note .txt .main {
    display: block;
    font-size: 1.8rem;
}
section.support .area-scene .block-card .each .cell-note .txt .sub {
    display: block;
    font-size: 1.4rem;
}
/*----------------*/
section.support .area-caution {
    padding: 35px 0 45px 0;
}
section.support .area-caution .txt {
    line-height: 2.0;
    font-size: 1.4rem;
}
/*----------------*/
section.support .area-case {
    padding: 0 0 45px 0;
}
section.support .area-case .each {
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: var(--color-gray-01);
}
section.support .area-case .each:nth-of-type(1) {
    border-width: 1px 0 1px 0;
}
section.support .area-case .each .achead {
    position: relative;
}
section.support .area-case .each .achead .hitelm {
}
section.support .area-case .each .acbody {
    display: none;
    overflow: hidden;
}
section.support .area-case .each .block-num {
    position: absolute;
    left: 0;
    top: 0;
    width: 55px;
    height: 100%;
}
section.support .area-case .each .block-num .cell-num {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: auto;
    grid-template-columns: auto;
    place-content: center center;
    width: 100%;
    height: 100%;
}
section.support .area-case .each .block-num .cell-num .txt {
    font-size: 3.0rem;
    color: var(--color-blue-01);
}
section.support .area-case .each .block-head {
    padding: 0 55px 0 55px;
}
section.support .area-case .each .block-head .cell-head {
    padding: 40px 0 40px 0;
}
section.support .area-case .each .block-head .cell-head .txt {
    font-size: 1.8rem;
}
section.support .area-case .each .block-mark {
    position: absolute;
    right: 0;
    top: 0;
    width: 55px;
    height: 100%;
}
section.support .area-case .each .block-mark .cell-mark {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: auto;
    grid-template-columns: auto;
    place-content: center center;
    width: 100%;
    height: 100%;
}
section.support .area-case .each .block-mark .cell-mark .divi-mark {
    position: relative;
    width: 25px;
    aspect-ratio: 1/1;
}
section.support .area-case .each .block-mark .cell-mark .divi-mark .icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
section.support .area-case .each .block-mark .cell-mark .divi-mark .icon>.inlinesvg {
    stroke: var(--color-black);
    stroke-width: 0.6;
    stroke-linecap: round;
}
section.support .area-case .each .block-mark .cell-mark .divi-mark .icon.plus {
    opacity: 1;
}
section.support .area-case .each .block-mark .cell-mark .divi-mark .icon.minus {
    opacity: 0;
}
section.support .area-case .each.mode-open .block-mark .cell-mark .divi-mark .icon.plus {
    opacity: 0;
}
section.support .area-case .each.mode-open .block-mark .cell-mark .divi-mark .icon.minus {
    opacity: 1;
}
section.support .area-case .each .block-note {
    padding: 0 50px 40px 50px;
}
section.support .area-case .each .block-note .para {
    padding: 0 0 10px 0;
}
section.support .area-case .each .block-note .para .txt {
    font-size: 1.5rem;
}
section.support .area-case .each .block-note .para .txt.with-num {
    text-indent: -2em;
    padding: 0 0 0 calc(2em + 0em);
}
section.support .area-case .each .block-note .para .txt.with-dot {
    text-indent: -1em;
    padding: 0 0 0 calc(1em + 2em);
}
section.support .area-case .each .block-note .para .txt.with-cir {
    text-indent: -1em;
    padding: 0 0 0 calc(1em + 3em);
}
section.support .area-case .each .block-note .para .txt.with-nul {
}
/*----------------*/
section.support .area-jump {
    padding: 0 0 120px 0;
    text-align: center;
}
section.support .area-jump .my-roundbutton-01 {
    width: 650px;
    font-size: 2.1rem;
}
section.support .area-jump .my-roundbutton-01 .mark .figelm {
    background-image: url(../images/icon_mail_01.svg);
}
section.support .area-jump .my-roundbutton-01 .hitelm:hover .mark .figelm {
    background-image: url(../images/icon_mail_02.svg);
}

/*================================*/
section.cookie {
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: var(--color-gray-01);
}
section.cookie>.inner {
}
/*----------------*/
section.cookie .area-note {
}
section.cookie .area-note .block-title {
    padding: 35px 0 10px 0;
}
section.cookie .area-note .block-title .skin {
}
section.cookie .area-note .block-title .skin .txt {
    font-size: 1.7rem;
    font-weight: 700;
}
section.cookie .area-note .block-note {
    padding: 0 0 45px 0;
}
section.cookie .area-note .block-note .txt {
    font-size: 1.2rem;
}
section.cookie .area-note .block-note .txt .inlinelink {
    text-decoration: underline;
}
section.cookie .area-note .block-note .txt .inlinelink:hover {
    text-decoration: none;
}

/*================================*/
section.partners {
}
section.partners>.inner {
    width: 100%;
}
/*----------------*/
section.partners .area-list {
    display: grid;
    grid-auto-flow: row;
    grid-template-rows: auto;
    grid-template-columns: 5fr 2fr;
    gap: 0 0;
    width: 100%;
    color: var(--color-white);
}
section.partners .area-list .block-list {
    padding: 0 45px 0 45px;
}
section.partners .area-list .block-list.company {
    background-color: var(--color-blue-02);
}
section.partners .area-list .block-list.service {
    background-color: var(--color-blue-03);
}
section.partners .area-list .block-list .cell-note {
    padding: 50px 0 15px 0;
}
section.partners .area-list .block-list .cell-note .txt {
    font-size: 1.5rem;
    font-weight: 700;
}
section.partners .area-list .block-list .cell-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-items: stretch;
    gap: 20px 20px;
    padding: 0 0 50px 0;
}
section.partners .area-list .block-list .cell-list .each {
    width: 205px;
}
section.partners .area-list .block-list .cell-list .each .hitelm {
}
section.partners .area-list .block-list .cell-list .each .my-logo {
    width: 100%;
    aspect-ratio: 404/176;
    overflow: hidden;
}
section.partners .area-list .block-list .cell-list .each .my-logo .figelm {
    transition-property: scale;
    transition-duration: 0.1s;
    transition-timing-function: linear;
    transform-origin: 50% 50%;
    scale: 1 1;
}
section.partners .area-list .block-list.company .cell-list .each.n1 .my-logo .figelm {
    background-image: url(../images/logo_organization_01.png);
}
section.partners .area-list .block-list.company .cell-list .each.n2 .my-logo .figelm {
    background-image: url(../images/logo_organization_02.png);
}
section.partners .area-list .block-list.company .cell-list .each.n3 .my-logo .figelm {
    background-image: url(../images/logo_organization_03.png);
}
section.partners .area-list .block-list.company .cell-list .each.n4 .my-logo .figelm {
    background-image: url(../images/logo_organization_04.png);
}
section.partners .area-list .block-list.company .cell-list .each.n5 .my-logo .figelm {
    background-image: url(../images/logo_organization_05.png);
}
section.partners .area-list .block-list.service .cell-list .each.n1 .my-logo .figelm {
    background-image: url(../images/logo_organization_06.png);
}
section.partners .area-list .block-list .cell-list .each .my-name {
    padding: 8px 0 0 0;
}
section.partners .area-list .block-list .cell-list .each .my-name .txt {
    font-size: 1.2rem;
}
/*----------------*/
section.partners .area-list .block-list .cell-list .each .hitelm:hover .my-logo .figelm {
    scale: 1.1 1.1;
}
section.partners .area-list .block-list .cell-list .each .hitelm:hover .my-name .txt {
    text-decoration: underline;
}

/*================================*/
section.annotation {
    background-color: var(--color-blue-04);
}
section.annotation>.inner {
    width: 100%;
}
/*----------------*/
section.annotation .area-note {
}
section.annotation .area-note .block-note {
    padding: 40px 50px 40px 50px;
}
section.annotation .area-note .block-note .txt {
    line-height: 1.8;
    color: var(--color-white);
    font-weight: 400;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
} /* end of media query */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
