@charset "utf-8"; /* CSS Document */
/*--------------------------------------

　Main Index

---------------------------------------*/
body {
    min-width: 1200px;
    /* background: url("img/top/mv.png") no-repeat right top / auto 48vw; */
}

body::after {
    display: none;
}

header .siteNameArea .siteName {
    margin: 0;
}

#contents .inner {
    width: 1000px;
    margin: 0 auto;
}

.unei_parts {
    overflow-x: hidden;
}

/*--------------------------------------

　parts

---------------------------------------*/
/* title */
.titleIndex01 {
    font-size: 3rem;
    color: #000000;
    font-weight: 700;
    line-height: 1.6;
    margin: 0 0 2rem;
}

.titleIndex01 .big {
    font-size: 4.5rem;
    color: #169689;
}

.titleIndex01 a {
    display: block;
    /* background: url("img/top/btn_more03.png") no-repeat left bottom / 150px auto; */
    /* padding-bottom: 3.4rem; */
    background: url(img/arrow_navy.svg) no-repeat bottom 3rem right / 12px auto;
    /* padding-right: 0rem; */
}

.titleIndex01.pickup::before {
    content: "";
    display: block;
    width: 78px;
    height: 33px;
    background: url("/wp/wp-content/uploads/summary_icon.png") no-repeat left top / 100% auto;
    margin: 0 0 0.6rem;
}

.titleIndex02 {
    font-size: 3rem;
    color: #000000;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 4rem;
}

.titleIndex02 .big {
    font-size: 4.0rem;
    color: #169689;
}

.titleIndex02 .orange {
    display: inline-block;
    color: #F78733;
    font-size: 3.6rem;
    position: relative;
    margin: 1rem 0 0;
}

.titleIndex02 .orange::before {
    content: "";
    width: calc((100vw - 100%)/2);
    height: 1px;
    background-color: #F78733;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    bottom: -1px;
}

.titleIndex02 .orange::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #F78733;
    position: absolute;
    left: 0;
    bottom: -1px;
}

.titleIndex02 a {
    /* display: block; */
    padding-bottom: 5.4rem;
    background: url(img/arrow_navy.svg) no-repeat bottom 6.8rem right / 12px auto;
    padding-right: 4rem;
}

/* splitLayout */
.splitLayout {
    display: flex;
    align-items: stretch;
}

#contents .splitLayout .inner {
    width: 500px;
    margin: 0;
}

.splitLayout .fixArea {
    width: 50%;
}

.splitLayout .stickyArea {
    position: sticky;
    top: 0;
    min-height: 100vh;
    /* max-height: 100vh; */
    overflow: hidden;
}

#contents .splitLayout .fixArea .inner {
    margin: 0 0 0 auto;
}

.splitLayout .scrollArea {
    width: 47%;
    overflow: hidden;
    margin-left: 3%;
}

.secTobe .splitLayout .scrollArea {
    width: 47%;
    overflow: hidden;
    margin-left: auto;
    margin-right: 3%;
}

.stickyArea .inner {
    position: relative;
}

.stickyArea .inner .storyBox {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50vw;
    /* display: none; */
    text-align: right;
    left: auto;
    right: 0;
    padding-bottom: 4rem;
}

.scrollArea .inner > .title {
    display: inline-block;
    text-align: center;
    font-size: 3rem;
    line-height: 44px;
    padding: 0 4rem;
    background-color: #1A2930;
    color: #fff;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    margin: 13rem 0 0;
    position: relative;
}

.scrollArea .box {
    position: relative;
}

.scrollArea .box::before {
    content: "";
    width: 100vw;
    height: 1px;
    background-color: #1A2930;
    position: absolute;
    left: 0;
    margin-left: -50vw;
    top: 0;
}

.scrollArea .box a {
    display: block;
    text-decoration: none;
    padding: 1.4rem 0 7rem;
    padding-right: 0;
    position: relative;
}

.scrollArea .box .title {
    font-size: 2.4rem;
    line-height: 1.4;
    margin: 0;
}

.scrollArea .box .en {
    color: #F78733;
    font-size: 1.6rem;
    line-height: 1.2;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    margin: 1rem 0;
}

.scrollArea .box .pic {
    border: #1A2930 solid 1px;
    position: relative;
}

.scrollArea .box a::after {
    content: "";
    width: 80px;
    height: 35px;
    background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 25px;
    position: absolute;
    bottom: 47px;
    right: -1px;
    z-index: -1;
}

.scrollArea .box .icon {
    display: inline-block;
    background-color: #FC4A1A;
    color: #fff;
    font-size: 2rem;
    line-height: 1.2;
    padding: 0.6rem 1.2rem;
    margin: 0rem 0 0;
}

.storyBox a {
    text-decoration: none;
    display: block;
}

.storyBox .icon {
    display: inline-block;
    background-color: #FC4A1A;
    color: #fff;
    font-size: 2.1rem;
    line-height: 1.2;
    padding: 1rem 2.1rem;
}

.storyBox .text {
    width: 500px;
    background-color: rgba(255,255,255,0.75);
    padding: 1.8rem 4rem;
    margin: 0 0 0 auto;
}

.storyBox .text .titleIndex02 {
    margin: 0;
}

.storyBox .text + p {
    width: 500px;
    text-align: right;
    font-weight: bold;
    margin: 1rem 0;
    background: url(img/arrow_navy.svg) no-repeat center right 5px / 12px auto;
    padding-right: 2rem;
    margin-left: auto;
    padding-right: 2rem;
    position: absolute;
    right: 1rem;
    bottom: -0.2rem;
}

/*--------------------------------------

　section

---------------------------------------*/
/*--------------------------------------
 .mv
---------------------------------------*/
.mv {
    overflow: hidden;
    padding: 9rem 0 18rem;
    background: url(img/top/mv.png) no-repeat right top / auto 42vw;
}

.mv .inner > .bg {
    display: inline-block;
    background-color: #1A2930;
    color: #fff;
    font-weight: 700;
    font-size: 2.4rem;
    line-height: 1;
    padding: 1.7rem;
    position: relative;
}

.mv .inner > .bg::after {
    content: "";
    display: block;
    width: 100vw;
    height: 1px;
    background-color: #1A2930;
    position: absolute;
    left: 0;
    bottom: 0;
}

.mv h2 {
    font-size: 6.3rem;
    line-height: 1.296;
    color: #000000;
    font-weight: 700;
    margin: 0rem 0 4rem;
}

.mv h2 .small {
    font-size: 3rem;
}

.mv h2 .green {
    color: #4ABDAC;
}

.mv h2 + p {
    font-size: 1.5rem;
    /* font-weight: bold; */
}

.mv .editorialteam_parts {
    margin: 3.5rem 0 0 38%;
    padding: 2rem 2rem;
    padding-right: 0;
    /* font-weight: bold; */
    display: table;
    position: relative;
    z-index: 1;
    font-size: 1.2rem;
    border: solid 1px #1A2930;
    background-color: rgba(255,255,255,0.8);
    border-radius: 5px;
}

.mv .editorialteam_parts::before {
    /* content: ""; */
    width: 34vw;
    height: 100%;
    border: solid 1px #1A2930;
    border-right: none;
    background-color: rgba(255,255,255,0.8);
    border-radius: 5px 0 0 5px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.mv .editorialteam_parts div {
    display: table-cell;
    vertical-align: middle;
}

.mv .editorialteam_parts div:first-child .bg {
    width: 59px;
    display: inline-block;
    padding-top: 5.8rem;
    background: url("img/logo.png") no-repeat center top / 100% auto;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    position: relative;
    font-size: 1rem;
}

.mv .editorialteam_parts div:last-child {
    padding-left: 1.9rem;
    line-height: 1.55;
    color: #1A2930;
}

.mv .editorialteam_parts div:last-child p:first-child {
    margin-top: 0;
}

.mv .editorialteam_parts div:last-child p:last-child {
    margin-bottom: 0;
}

/*--------------------------------------
 .secStart
---------------------------------------*/
.secStart {
    overflow: hidden;
    position: relative;
    background: url("img/top/txt_start.png") no-repeat left 13% top 8% / 220px auto;
    padding: 13rem 0 0;
    margin-top: -19rem;
}

.secStart > .bg {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.summarybox_wrap {
    background: #EFEDF1;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    padding: 5rem 3rem;
    padding-left: 0;
    margin: 10.6rem 0 0;
}

.summarybox_wrap::before {
    content: "";
    width: 50vw;
    height: 100%;
    background: #EFEDF1;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -50vw;
    z-index: -1;
}

.summarybox_wrap::after {
    content: "";
    width: 100%;
    height: 43px;
    background: url("img/top/txt_summary.png") no-repeat left top / auto 100%;
    position: absolute;
    left: 0;
    top: -27px;
}

.summarybox_wrap .summarybox {
    width: calc((100% - 3.4rem)/3);
    background: url("img/top/summary_parts01.png") no-repeat left top, url("img/top/summary_parts02.png") no-repeat right -1px top;
    background-color: #fff;
    background-size: auto 100%;
    border-bottom: #1A2930 solid 1px;
    border-top: #1A2930 solid 1px;
    text-align: center;
    position: relative;
    display: table;
}

.summarybox_wrap .summarybox:nth-child(4), .summarybox_wrap .summarybox:nth-child(5) {
    min-width: calc((100% - 1.7rem)/2);
    margin-top: 2.6rem;
}

.summarybox_wrap .summarybox::before {
    content: "";
    width: 60px;
    height: 30px;
    background: url("img/top/summary_num01.jpg") no-repeat center top / 100% auto;
    position: absolute;
    top: -15px;
    left: 50%;
    margin-left: -30px;
}

.summarybox_wrap .summarybox:nth-child(2)::before {
    background-image: url("img/top/summary_num02.jpg");
}

.summarybox_wrap .summarybox:nth-child(3)::before {
    background-image: url("img/top/summary_num03.jpg");
}

.summarybox_wrap .summarybox:nth-child(4)::before {
    background-image: url("img/top/summary_num04.jpg");
}

.summarybox_wrap .summarybox:nth-child(5)::before {
    background-image: url("img/top/summary_num05.jpg");
}

.summarybox_wrap .summarybox a {
    text-decoration: none;
    display: table-cell;
    vertical-align: middle;
    padding: 2.6rem 1.9rem 3.6rem;
    line-height: 1.45;
    font-size: 1.6rem;
    position: relative;
}

.summarybox_wrap .summarybox.pickup a {
    background: url("/wp/wp-content/uploads/summary_icon.png") no-repeat left top / 78px auto;
}

.summarybox_wrap .summarybox a::after {
    content: "";
    width: 10px;
    height: 10px;
    background: url("img/arrow_black.svg") no-repeat center top / 100% auto;
    position: absolute;
    left: 50%;
    margin-left: -5px;
    bottom: 16px;
    transform: rotate(90deg);
}

.summarybox_wrap .summarybox a .big {
    font-size: 2rem;
    /* color: #FC4A1A; */
    font-weight: bold;
}

/*--------------------------------------
 .sec01
---------------------------------------*/
.sec01 {
    overflow-x: hidden;
    background: url("img/top/txt_01.png") no-repeat left top / auto 115px;
    padding: 11rem 0 0;
}

.sec01 .inner {
    position: relative;
    padding-bottom: 2.2rem;
}

.sec01 .inner::after {
    content: "";
    display: block;
    width: 100vw;
    height: 83px;
    background-color: #EFEDF1;
    position: absolute;
    left: -81px;
    bottom: 0;
    z-index: -1;
}

.sec01 .graph {
    margin: 4rem -6rem;
    text-align: center;
}

.sec01 .graph .caption {
    margin-top: 2rem;
}

/*--------------------------------------
 .sec02
---------------------------------------*/
.sec02 {
    overflow-x: hidden;
    background: url("img/top/txt_02.png") no-repeat right top / auto 118px;
}

.sec02 .titleIndex01 {
    position: relative;
    margin: 0;
    padding: 5.5rem 0 5rem;
}

.sec02 .titleIndex01::after {
    content: "";
    width: 145px;
    height: 100%;
    background: url("img/top/bg_arrow.png") no-repeat left bottom / 100% auto;
    position: absolute;
    left: -145px;
    bottom: 0;
    z-index: -1;
}

/* .arrowBox */
.arrowBox {
    display: flex;
    justify-content: space-between;
}

.arrowBox > div {
    width: calc((100% - 20px)/2);
}

.arrowBox > div .title {
    margin: 0;
    font-size: 2.5rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.4;
    background-color: #4ABDAC;
    border-radius: 0 5px 5px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.9rem 1.2rem;
    position: relative;
}

.arrowBox > div .title::before {
    content: "";
    display: block;
    width: 50vw;
    height: 100%;
    background-color: inherit;
    position: absolute;
    top: 0;
    left: 50%;
    margin: 0 0 0 -50vw;
    z-index: -1;
}

.arrowBox > div .title .small {
    font-size: 2rem;
}

.arrowBox > div .box {
    background-color: #1A2930;
    border-radius: 5px;
    padding: 4.5rem 7rem;
    color: #fff;
    margin: 2rem 0 0;
    position: relative;
}

.arrowBox > div .box::before {
    content: "";
    width: 92px;
    height: 20px;
    background: #4ABDAC;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}

.arrowBox > div .box .titleCircle {
    width: 120px;
    height: 120px;
    border-radius: 100%;
    background-color: #fff;
    border: #1A2930 solid 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 2.1rem;
    line-height: 1.428;
    color: #1A2930;
    font-weight: bold;
    position: absolute;
    right: -70px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.arrowBox > div .box .catch {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #4ABDAC;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.55;
    margin: 0 0 3rem;
}

.arrowBox > div .box *:last-child {
    margin-bottom: 0;
}

.arrowBox > div .box:last-child::after {
    content: "";
    width: 164px;
    height: 38px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    background-color: #4ABDAC;
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
}

.arrowBox .orange .title {
    background-color: #F78733;
    border-radius: 5px 0 0 5px;
}

.arrowBox .orange .title::before {
    margin: 0 -100vw 0 0;
}

.arrowBox .orange .box .catch {
    color: #F78733;
}

.arrowBox .orange .box .titleCircle {
    display: none;
}

.arrowBox .orange .box::before, .arrowBox .orange .box:last-child::after {
    background-color: #F78733;
}

/* .matome_parts */
.sec02 .matome_parts {
    margin-bottom: 0;
}

.sec02 .matome_parts .title {
    width: 289px;
}

.sec02 .matome_parts .text {
    text-align: center;
    font-size: 2.5rem;
    line-height: 1.68;
    font-weight: bold;
}

/* .editorBox */
.editorBox {
    background: rgba(223,220,227,.5);
    padding: 5rem;
    margin: 2.5rem 0 0;
    position: relative;
}

.editorBox::before {
    content: "";
    width: 106px;
    height: 26px;
    background-color: #E0DCE3;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
}

.editorBox::after {
    content: "";
    width: 153px;
    height: 44px;
    background-color: #E0DCE3;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.editorBox .text {
    padding: 0 0 0 12rem;
    position: relative;
}

.editorBox .text .name {
    width: 100px;
    position: absolute;
    left: 0;
    top: 0;
}

.editorBox .text .name .bg {
    width: 79px;
    display: inline-block;
    padding-top: 7.2rem;
    background: url(img/logo.png) no-repeat center top / 100% auto;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
}

.editorBox .text .catch {
    font-size: 2.1rem;
    font-weight: bold;
    color: #FC4A1A;
    line-height: 1.428;
}

.editorBox .articlelist {
    margin: 4rem 0 0;
}

.editorBox .articlelist .title {
    border-top: #1A2930 solid 1px;
    padding: 1rem;
    font-size: 1.8rem;
    line-height: 1.4;
    font-weight: bold;
}

.editorBox .articlelist .articlelistWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.editorBox .articlelist .articlelistWrap {
}

.editorBox .articlelist .articlelistWrap .articlelistbox {
    text-decoration: none;
    line-height: 1.66;
    font-weight: normal;
    width: calc((100% - 4rem)/2);
    background-color: #fff;
    border-radius: 5px;
    padding: 1rem;
    display: table;
    align-items: center;
    margin: 2rem 0 0;
}

.editorBox .articlelist .articlelistWrap .articlelistbox div {
    /* padding: 0 2rem; */
    width: 23%;
    font-size: 1.4rem;
}

.editorBox .articlelist .articlelistWrap .articlelistbox .articlelistimg {
    padding: 0;
    width: 7%;
}

.editorBox .articlelist .articlelistWrap .articlelistbox {
    text-decoration: none;
    line-height: 1.66;
    font-weight: normal;
    width: calc((100% - 4rem)/2);
    background-color: #fff;
    border-radius: 5px;
    padding: 1rem;
    display: table;
    align-items: center;
    margin: 2rem 0 0;
}

.editorBox .articlelist .articlelistWrap :nth-child(1), .editorBox .articlelist .articlelistWrap :nth-child(2) {
    margin: 0;
}

.editorBox .articlelist .articlelistWrap :nth-child(1) a, .editorBox .articlelist .articlelistWrap :nth-child(2) a {
    display: block;
}

.editorBox .articlelist .articlelistWrap div {
    display: table-cell;
    vertical-align: middle;
}

.editorBox .articlelist .articlelistWrap a div:first-child {
    /* width: 73px; */
}

.editorBox .articlelist .articlelistWrap div:first-child img {
    width: 73px;
    height: 73px;
    object-fit: cover;
}

.editorBox .articlelist .articlelistWrap a div:last-child {
    padding: 0 1rem 0 0.5rem;
    background: url("img/arrow_green.svg") no-repeat right 50% / 7px auto;
}

/*--------------------------------------
 .sec03
---------------------------------------*/
.sec03 {
    overflow-x: hidden;
    background: url("img/top/txt_03.png") no-repeat left top / auto 146px;
    padding: 11rem 0 0;
}

/* lifetimeBox */
.lifetimeBox {
    padding: 6rem 3rem;
    position: relative;
    z-index: 1;
    margin: 2rem 0 0;
    background: url("img/top/sec03_lifetimeBox_bg.jpg") no-repeat left bottom -15rem / cover;
    /* background-attachment: fixed; */
}

.lifetimeBox::before {
    content: "";
    width: 100%;
    height: 63px;
    background: url("img/top/txt_lifetime.png") no-repeat right 2rem top 0 / auto 100%;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    top: -45px;
    z-index: -1;
}

.lifetimeBox .wrap {
    padding: 3rem 0;
    position: relative;
}

.lifetimeBox .wrap::after {
    content: "";
    width: calc(100% + 24rem);
    height: 114%;
    border: solid 1px #707070;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.lifetimeBox .wrap > div:nth-child(1) {
    margin: 0 0 0 10rem;
}

.lifetimeBox .wrap > div:nth-child(2) {
    position: absolute;
    right: 0;
    top: 7rem;
}

.lifetimeBox .wrap > div:nth-child(3) {
    margin: 13rem 0 0 19rem;
}

.lifetimeBox .wrap > div div {
    display: inline-block;
    font-size: 2rem;
    line-height: 1.86;
    color: #1A2930;
    /* font-weight: bold; */
    text-align: center;
    background-color: #fff;
    border-radius: 5px;
    padding: 3rem 2.4rem;
    margin: 0 0 1.5rem;
    position: relative;
    box-shadow: 5px 5px 50px #e6e6e6;
}

.lifetimeBox .wrap > div div::after {
    content: "";
    width: 15px;
    height: 15px;
    background-color: #fff;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    position: absolute;
    bottom: -14px;
    left: 50%;
    transform: translateX(-50%);
}

/* iconLight */
.iconLight {
    height: 220px;
    background: url("img/top/line01.png") no-repeat left 50% top -5rem / 695px auto;
    padding: 10.9rem 0 0;
    margin: -3rem 0 0;
    position: relative;
    z-index: 2;
}

.iconLight > div {
    width: 422px;
    text-align: center;
    background: #4ABDAC;
    border-radius: 5px;
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    padding: 2.8rem 1rem;
    margin: 0 auto;
    position: relative;
}

.iconLight > div::before {
    content: "";
    width: 120px;
    height: 120px;
    border-radius: 100%;
    background: #4ABDAC;
    position: absolute;
    left: 50%;
    margin-left: -60px;
    top: -6rem;
    z-index: -1;
}

.iconLight > div::after {
    content: "";
    width: 120px;
    height: 120px;
    border-radius: 100%;
    background: url("img/top/sec03_icon_light.png") no-repeat center top 20px / 52px auto;
    position: absolute;
    left: 50%;
    margin-left: -60px;
    top: -6rem;
}

/* solutionBox */
.solutionBoxWrap {
    display: flex;
    justify-content: space-between;
    padding-bottom: 12.1rem;
    position: relative;
}

.solutionBoxWrap::after {
    content: "";
    width: 695px;
    height: 121px;
    background: url("img/top/line01.png") no-repeat left 50% / 100% auto;
    position: absolute;
    bottom: 0;
    margin-left: 50%;
    transform: translateX(-50%) rotate(180deg);
}

.solutionBoxWrap .solutionBox {
    width: calc((100% - 6.4rem)/3);
    border-radius: 5px;
    background-color: #fff;
    border: solid 1px #1A2930;
    padding: 2.4rem 2rem;
}

.solutionBoxWrap .solutionBox .catch {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: 700;
    font-size: 2.1rem;
    line-height: 1.428;
    margin: 0 0 2rem;
}

.solutionBoxWrap .solutionBox .pic {
    /* border: solid 1px #1A2930; */
    min-height: 15rem;
    margin: auto 1rem;
}

.solutionBoxWrap .solutionBox .title {
    /* background: url("img/top/sec03_arrow.png") no-repeat center top / 70px auto; */
    padding: 1rem 0 1rem;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.666;
    text-align: center;
    margin: 0;
}

/* fukidashi */
.sec03 .fukidashi {
    width: 695px;
    margin: 0 auto 24px;
}

.sec03 .fukidashi > div {
    background: #1A2930;
    border-radius: 5px;
    padding: 1.1rem 1rem;
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.58;
    text-align: center;
    position: relative;
    z-index: 2;
}

.sec03 .fukidashi > div::before {
    content: "";
    width: 39px;
    height: 24px;
    background-color: #1A2930;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    position: absolute;
    bottom: -23px;
    left: 50%;
    transform: translateX(-50%);
}

/*--------------------------------------
 .sec04
---------------------------------------*/
.sec04 {
    /* overflow-x: hidden; */
    margin: -10rem 0 0;
    padding: 10.5rem 0 0;
    background: rgba(223,220,227,0.5) url("img/top/sec04_bg01.png") no-repeat right top / 100% auto;
    position: relative;
}

.sec04::before {
    content: "";
    width: 222px;
    height: 180px;
    background: url("img/top/txt_iret01.png") no-repeat right bottom , url("img/top/txt_04.png") no-repeat left top;
    background-size: auto 80px , auto 133px;
    position: absolute;
    left: 0;
    top: 0;
}

.sec04 .titleWrap {
    display: flex;
    align-items: flex-end;
    background: url(/wp/wp-content/uploads/summary_icon.png) no-repeat left top / auto 33px;
    padding: 3.8rem 0 0;
    margin: 0 0 2rem;
}

.sec04 .titleWrap .title {
    font-size: 3rem;
    line-height: 1.4;
    color: #000;
    margin: 0;
}

.sec04 .inner .title_sub .green {
    color: #4ABDAC;
    font-size: 3.6rem;
    line-height: 1;
    display: inline-block;
    margin-right: 2rem;
    position: relative;
}

.sec04 .inner .title_sub .green::before {
    content: "";
    width: calc((100vw - 100%)/2);
    height: 1px;
    background-color: #4ABDAC;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    bottom: -1px;
}

.sec04 .inner .title_sub .green::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #4ABDAC;
    position: absolute;
    left: 0;
    bottom: -1px;
}

.sec04 .inner .title_sub .small {
    font-size: 1.8rem;
    font-weight: normal;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    display: inline-block;
    margin-right: 1rem;
}

.sec04 .capBox {
    overflow: hidden;
}

.sec04 .capBox .cap {
    width: 484px;
    float: left;
}

.sec04 .capBox .catch, .sec04 .capBox p {
    width: 485px;
    float: right;
}

.sec04 .capBox .catch {
    font-size: 2.1rem;
    line-height: 1.55;
    font-weight: 700;
}

.numBoxWrap {
    display: flex;
    justify-content: space-between;
    margin: 5rem 0 0;
}

.numBoxWrap .numBox {
    width: calc((100% - 4.4rem)/3);
    padding: 2rem 1rem 2rem;
    border-radius: 5px;
    border: solid 1px #1A2930;
    background-color: #4ABDAC;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.numBoxWrap .numBox::before {
    content: "point01";
    text-align: center;
    font-size: 3rem;
    color: #1a2930;
    font-weight: bold;
    position: absolute;
    left: 51.1%;
    top: -3.1rem;
    transform: translateX(-50%);
    z-index: 0;
    font-family: serif;
}

.numBoxWrap .numBox:nth-child(2n)::before {
    content: "point02";
}

.numBoxWrap .numBox:nth-child(3n)::before {
    content: "point03";
}

.numBoxWrap .numBox .big {
    color: #FFFF30;
    font-size: 3rem;
}

.numBoxWrap .numBox p {
    margin: 0;
}

.numBoxWrap .numBox p + p {
    margin-top: 1rem;
}

.sec04 .titleCircle {
    height: 178px;
    position: relative;
}

.sec04 .titleCircle::before {
    content: "";
    width: 695px;
    height: 178px;
    background: url(img/top/line01.png) no-repeat left 50% / 100% auto;
    position: absolute;
    bottom: 0;
    margin-left: 50%;
    transform: translateX(-50%) rotate(180deg);
}

.sec04 .titleCircle > div {
    width: 120px;
    height: 120px;
    border-radius: 100%;
    background-color: #1A2930;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 2.1rem;
    line-height: 1.428;
    color: #fff;
    font-weight: bold;
    position: absolute;
    left: 50%;
    top: 2rem;
    transform: translateX(-50%);
    z-index: 2;
}

.sec04 .whiteBox {
    border-radius: 5px;
    background-color: #fff;
    border: solid 1px #1A2930;
    padding: 4rem 3rem 0;
    text-align: center;
    position: relative;
}

.sec04 .whiteBox .catch {
    font-weight: bold;
    font-size: 2.1rem;
    margin: 0rem 0 2rem;
}

.sec04 .whiteBox .btn-web {
    margin: 3rem auto -44px;
    position: relative;
}

.sec04 .whiteBox .btn-web:before {
    content: "";
    width: 100%;
    height: 100%;
    background: #ff7812;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    border-radius: 1000px;
    opacity: 1 !important;
} 

.sec04 .bg {
    margin: 13.6rem 0 0;
    background: url("img/top/sec04_bg02.png") no-repeat right -45rem top / cover;
    background-attachment: fixed;
    padding-bottom: 10rem;
}

.sec04 .catchArrow {
    display: inline-block;
    padding-right: 7rem;
    font-size: 2.9rem;
    line-height: 1.2;
    font-weight: 700;
    position: relative;
    z-index: 1;
}

.sec04 .catchArrow .icon {
    display: block;
    text-align: center;
    width: 140px;
    background-color: #F78733;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 36px;
}

.sec04 .catchArrow .big {
    font-size: 5.6rem;
    color: #169689;
}

.sec04 .catchArrow::before {
    content: "";
    width: 100%;
    height: 100%;
    background: url("img/top/sec04_bg03.png") no-repeat right bottom / auto 148px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.sec04 .catchArrow::after {
    content: "";
    width: calc((100vw - 100%)/2);
    height: 100%;
    background: url("img/top/sec04_bg03.png") no-repeat left bottom / auto 148px;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    top: 0;
    z-index: -1;
}

.sec04 .titleGrowth {
    text-align: center;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.458;
    margin: 6rem 0 2rem;
}

.sec04 .growthBoxWrap {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.sec04 .growthBoxWrap::before {
    content: "";
    width: 99.4vw;
    height: 1px;
    background-color: #1A2930;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    top: 50%;
    z-index: -1;
}

.sec04 .growthBoxWrap .growthBox {
    width: calc((100% - 4.4rem)/3);
    padding: 3rem 2rem;
    border-radius: 5px;
    border: solid 1px #1A2930;
    background-color: #fff;
    line-height: 1.66;
}

.sec04 .growthBoxWrap .growthBox .title {
    margin: 0;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
}

/*--------------------------------------
 .sec05
---------------------------------------*/
.sec05 {
    overflow-x: hidden;
    background: rgba(223,220,227,0.5) url("img/top/sec05_bg.png") no-repeat right 0 top / auto 558px;
    padding: 225px 0 10rem;
    position: relative;
    /* margin-top: 10rem; */
}

.sec05::before {
    content: "";
    width: 426px;
    height: 189px;
    background: url("img/top/txt_interview.png") no-repeat right bottom , url("img/top/txt_05.png") no-repeat left top;
    background-size: 100% auto , 198px auto;
    position: absolute;
    left: 0;
    top: 0;
}

.sec05::after {
    content: "";
    width: 100vw;
    height: 578px;
    clip-path: polygon(0 100%, 100% 0%, 100% 100%);
    background: #DFDCE3 url("img/top/txt_iret02.png") no-repeat right bottom / auto 96px;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    bottom: 0;
}

.sec05 .inner {
    position: relative;
    z-index: 2;
}

.sec05 .catch {
    color: #F78733;
    font-size: 2rem;
    line-height: 1.4;
    font-weight: bold;
    margin: 0 0 1rem;
}

.sec05 .titleIndex01 {
    margin: 0 0 11rem;
}

.sec05 p.notes {
    text-align: right;
    font-size: 1.5rem;
}

.sec05 .interview_parts01 {
    margin: 0 auto;
    padding: 3.8rem 6rem;
    border-bottom: none;
    border-radius: 5px 5px 0 0;
}

.sec05 .interview_parts01 + .interview_parts01 {
    border-top: none;
    border-bottom: solid 1px #707070;
    border-radius: 0 0 5px 5px;
}

.sec05 .interview_parts01::before {
    content: none;
}

.sec05 .interview_parts01 .title::before {
    left: -6rem;
}

.sec05 .interview_parts01 .catch02 {
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.27;
    color: #000;
    padding: 0 0 1rem;
    border-bottom: solid 1px #1A2930;
    margin: 0rem 0 2rem;
}

.sec05 .interview_parts01 .catch02 .big {
    color: #F78733;
    font-size: 2.2rem;
}

.sec05 .interview_parts01 .catch02 + div {
    font-size: 1.8rem;
    font-weight: bold;
}

.sec05 .interview_parts01 .catch02 + div span {
    font-size: 2.8rem;
}

.sec05 .btnWrap {
    display: flex;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto;
}

.sec05 .btnWrap > div {
    width: 363px;
}

.sec05 .btnWrap div div[class^="btn"] {
    max-width: 100%;
    margin: 5rem 0 0;
}

.sec05 .btnWrap div div[class^="btn"] a {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sec05 .btnWrap div:last-child .btn-web a {
    background-color: #1F69D2;
    border-color: #1F69D2;
}

.sec05 .btnWrap div:last-child .btn-web a img {
    display: inline-block;
    width: 82px;
    margin: 0 0.2rem 0.2rem 0;
}

/*--------------------------------------
 .secAws
---------------------------------------*/
.secAws .stickyArea {
    background: rgba(223,220,227,0.3) url("img/top/txt_aws.png") no-repeat left top;
    background-size: auto 88px;
    padding: 13rem 0 0;
    padding-right: 6rem;
}

.secAws .stickyArea .titleIndex02 a {
    /* background-position: left bottom 1px; */
}

.secAws .stickyArea .pic {
    display: none;
    margin: 6rem 0 0;
    width: 50vw;
    margin-left: calc(-50vw + 100%);
}

.secAws .stickyArea .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

/*--------------------------------------
 .secTobe
---------------------------------------*/
.secTobe .splitLayout {
    /* flex-direction: row-reverse; */
}

#contents .secTobe .splitLayout .fixArea .inner {
    margin: 0 0 0 auto;
    padding-bottom: 47.5rem;
    padding-right: 6rem;
}

.secTobe .stickyArea {
    background: url("img/top/txt_tobe.png") no-repeat right top;
    background-size: auto 86px;
    padding: 15rem 0 0;
    /* padding-right: 6rem; */
}

.secTobe .stickyArea .inner {
    position: relative;
    height: calc(100vh - 15rem);
    padding-left: 4rem;
}

.secTobe .stickyArea .titleIndex02 a {
    /* background-position: left bottom 1px; */
}

.secTobe .storyBox {
    background: url("img/top/secTobe_img01.jpg") no-repeat left top / cover;
}

#contents .secTobe .splitLayout .scrollArea .inner {
    margin: 0 0 0 auto;
    text-align: right;
    width: auto;
    background: rgba(223,220,227,0.3);
}

.secTobe .scrollArea .box {
    text-align: left;
}

.secTobe .scrollArea .box a::after {
    content: "";
    width: 80px;
    height: 35px;
    background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 25px;
    position: absolute;
    bottom: 47px;
    right: 0px;
}

.secTobe .scrollArea .box a {
    padding-left: 0;
    padding-right: 0;
    width: 500px;
    margin: 0 0 0 7%;
}

.secTobe .scrollArea .box .title {
    padding-right: 12rem;
    /* background: url("img/top/btn_more02.jpg") no-repeat right 0 top 10px / auto 18px; */
    margin-bottom: 1.5rem;
}

.secTobe .scrollArea .box::after {
    content: "";
    display: block;
    width: 146px;
    height: 69px;
    position: absolute;
    left: 0;
    top: -68px;
    background: url("img/top/txt_01000100.png") no-repeat left bottom , url("img/top/txt_1.png") no-repeat right bottom -1.5rem;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(3)::after {
    background: url("img/top/txt_01000100.png") no-repeat left bottom , url("img/top/txt_2.png") no-repeat right bottom -1.5rem;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(4)::after {
    background: url("img/top/txt_01000100.png") no-repeat left bottom , url("img/top/txt_3.png") no-repeat right bottom -0.5rem;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(5)::after {
    background: url("img/top/txt_01000100.png") no-repeat left bottom , url("img/top/txt_4.png") no-repeat right bottom -0.7rem;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(6)::after {
    background: url("img/top/txt_01000100.png") no-repeat left top , url("img/top/txt_5.png") no-repeat right top;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(7)::after {
    background: url("img/top/txt_01000100.png") no-repeat left top , url("img/top/txt_6.png") no-repeat right top;
    background-size: auto 33px , auto 100%;
}

.secTobe .scrollArea .inner .box:nth-child(8)::after {
    background: url("img/top/txt_01000100.png") no-repeat left top , url("img/top/txt_7.png") no-repeat right top;
    background-size: auto 33px , auto 100%;
}

/*--------------------------------------
 .secCareer
---------------------------------------*/
.secCareer .stickyArea {
    background: url("img/top/txt_career.png") no-repeat left top , rgba(223,220,227,0.3);
    background-size: auto 89px;
    padding: 13rem 0 0;
    /* position: relative; */
    /* max-height: none; */
}

#contents .secCareer .stickyArea .inner {
    height: auto;
    padding-bottom: 47.5rem;
    padding-right: 6rem;
    /* margin-right: 3%; */
    min-height: 92rem;
}

.secCareer .stickyArea .titleIndex02 a {
    /* background-position: left bottom 1px; */
}

.secCareer .storyBox {
    background: url("img/top/secCareer_img01.jpg") no-repeat right 50% / cover;
}

.secCareer .stickyArea .inner .storyBox {
    text-align: right;
    left: auto;
    right: 0;
    /* bottom: auto; */
    /* top: 24vw; */
}

.secCareer .stickyArea .inner .storyBox .text {
    margin: 0 0 0 auto;
    text-align: left;
}

.secCareer .stickyArea .inner .storyBox .text + p {
    margin-left: auto;
    padding-right: 2rem;
    position: absolute;
    right: 1rem;
    bottom: 0;
}

.secCareer .scrollArea .box .title {
    padding-right: 12rem;
    /* background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 18px; */
    margin-bottom: 1.5rem;
}

#contents .secCareer .splitLayout .scrollArea .inner {
    width: auto;
}

.secCareer .scrollArea .box a {
    width: 500px;
}

.secCareer .scrollArea .box a::after {
    content: "";
    width: 80px;
    height: 35px;
    background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 25px;
    position: absolute;
    bottom: 47px;
    right: 0;
}

.secCareer .scrollArea .box::after {
    content: "";
    display: block;
    width: 146px;
    height: 71px;
    position: absolute;
    right: 0;
    top: 0;
    background: url("img/top/txt_01000100.png") no-repeat right top , url("img/top/txt_1.png") no-repeat left top;
    background-size: auto 33px , auto 100%;
}

.secCareer .scrollArea .inner .box:nth-child(3)::after {
    background: url("img/top/txt_01000100.png") no-repeat right top , url("img/top/txt_2.png") no-repeat left top;
    background-size: auto 33px , auto 100%;
}

/*--------------------------------------
 .secQuestion
---------------------------------------*/
.secQuestion {
    overflow: hidden;
    position: relative;
    padding: 11.5rem 0 10rem;
    background: url("img/top/txt_question.png") no-repeat right top / auto 114px;
}

.secQuestion::after {
    content: "";
    width: 100%;
    height: 122px;
    background-color: #EEECF0;
    position: absolute;
    top: 82px;
    left: 0;
    z-index: -1;
}

.secQuestion::before {
    content: "";
    width: 84px;
    height: calc(100% - 59px - 150px - 100px );
    background-color: #EEECF0;
    position: absolute;
    bottom: 226px;
    left: 0;
}

.secQuestion .inner {
    position: relative;
    z-index: 1;
}

.secQuestion .inner::before {
    content: "";
    width: 149px;
    height: 163px;
    background: #EEECF0;
    clip-path: polygon(0 0, 100% 0%, 0% 100%);
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -50vw;
}

.secQuestion .inner::after {
    content: "";
    width: 107px;
    height: 100%;
    background: url("img/top/txt_answer.png") no-repeat right bottom / 90px auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -50vw;
}

.secQuestion .titleIndex02 {
    margin-top: 4.2rem;
}

.secQuestion p +.questionBox {
    margin-top: 5rem;
}

.questionBox {
    display: flex;
    width: 100%;
    text-decoration: none;
    flex-direction: row;
    align-items: center;
    border-bottom: #1A2930 solid 1px;
    position: relative;
}

.questionBox::after {
    content: "";
    display: block;
    width: 80px;
    height: 44px;
    background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 25px;
    position: absolute;
    right: 2rem;
    bottom: 28px;
}

.questionBox .pic, .questionBox .text {
    width: 50%;
    height: auto;
}

.questionBox .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

.questionBox:nth-of-type(2n) {
    flex-direction: row-reverse;
}

.questionBox:nth-of-type(2n)::after {
    right: 52%;
}

.questionBox .text {
    padding-bottom: 57px;
    padding: 3rem 0 5.7rem 4rem;
}

.questionBox:nth-of-type(2n) .text {
    padding: 3rem 2rem 5.7rem 0;
}

.questionBox .text::after {
    content: "";
    width: 57px;
    height: 57px;
}

.questionBox .text .title {
    font-size: 2.4rem;
    font-weight: 700;
    color: #000;
    line-height: 1.458;
    margin: 0 0 2rem;
}

#contents .secQuestion .inner p:last-child {
    margin-bottom: 0;
}

/*--------------------------------------
 .secFeature
---------------------------------------*/
.secFeature {
    background: #F5F4F6 ;
    position: relative;
    overflow: hidden;
}

.secFeature::after {
    content: "";
    display: block;
    width: 42.5vw;
    height: 100%;
    background: url("img/top/secFeature_img01.jpg") no-repeat left top / cover;
    position: absolute;
    top: 0;
    right: 50%;
    margin-right: -50vw;
}

.secFeature .inner {
    padding: 5rem 41rem 4rem 0;
}

.secFeature .title_sub {
    display: flex;
    align-items: flex-end;
    margin: 0 0 3rem;
}

.secFeature .title_sub div:first-child {
    display: inline-block;
    color: #F78733;
    font-size: 3.6rem;
    line-height: 36px;
    font-weight: bold;
    position: relative;
}

.secFeature .title_sub div:first-child::before {
    content: "";
    width: calc((100vw - 100%)/2);
    height: 1px;
    background-color: #F78733;
    position: absolute;
    left: 50%;
    margin-left: -50vw;
    bottom: -1px;
}

.secFeature .title_sub div:first-child::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #F78733;
    position: absolute;
    left: 0;
    bottom: -1px;
}

.secFeature .title_sub div:last-child {
    margin-left: 1rem;
    font-size: 1.5rem;
    line-height: 1.2;
}

.secFeature .title_sub div:last-child .min {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 1.8rem;
}

.secFeature .btn-internal {
    margin-left: 0;
}

/*--------------------------------------
 .secSupervision
---------------------------------------*/
.secSupervision {
    background: #4abdac url("img/top/secSupervision_bg.jpg") no-repeat right top / auto 100%;
    position: relative;
    overflow: hidden;
    color: #fff;
}

.secSupervision::before {
    content: "";
    width: 100%;
    height: 83px;
    background: url("img/top/txt_iret03.png") no-repeat right top / auto 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.secSupervision .inner {
    padding: 10rem 0;
}

.secSupervision .titleWrap {
    display: flex;
    align-items: flex-end;
    line-height: 1.2;
    color: #fff;
    font-weight: 700;
    margin: 0 0 4rem;
    position: relative;
}

.secSupervision .titleWrap::before {
    content: "";
    width: 100vw;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
}

.secSupervision .titleWrap .title_sub .bg {
    display: inline-block;
    font-size: 3rem;
    background-color: #fff;
    color: #4ABDAC;
    padding: 0.1rem 1rem;
    margin-right: 1rem;
}

.secSupervision .titleWrap .title_sub .min {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 1.8rem;
    margin-right: 1rem;
    font-weight: normal;
}

.secSupervision .titleWrap .title {
    margin: 0;
    color: #fff;
    font-weight: 700;
    font-size: 3rem;
    position: relative;
}

.secSupervision .wrap {
    overflow: hidden;
}

.secSupervision .wrap .pic {
    width: 469px;
    float: left;
}

.secSupervision .wrap .text {
    width: 490px;
    float: right;
}

.secSupervision .wrap .catch {
    font-weight: bold;
    font-size: 3rem;
}

/*--------------------------------------
 .secLastly
---------------------------------------*/
.secLastly {
    background: #fff ;
    position: relative;
    overflow: hidden;
}

.secLastly::after {
    content: "";
    display: block;
    width: 40vw;
    height: 100%;
    background: url("img/top/secLastly_img01.jpg") no-repeat center bottom / cover;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -50vw;
}

.secLastly .catch02 {
    font-weight: bold;
    font-size: 2.5rem;
    color: #ff7812;
    margin-bottom: 1rem;
}

.secLastly .inner {
    padding: 4rem 0 4rem 39rem;
}

.secLastly .titleIndex01 .bg {
    display: inline-block;
    background-color: #000;
    padding: 0.2rem 1rem;
    font-size: 1.8rem;
    color: #fff;
}

.secLastly .btn-internal {
    margin-left: 0;
}

/*--------------------------------------
 .unei_parts
---------------------------------------*/
#contents #index .unei_parts {
    margin: 0;
    padding: 0;
}

.unei_parts {
    overflow: hidden;
}

.unei_parts .inner {
    padding: 6rem 43rem 6rem 0;
}
footer #page-top {
top:50%;
    bottom:50%;;

}

@media screen and (max-width: 1000px) {
    body {
        min-width: 100%;
        background: none;
    }

    header .textArea {
        display: block;
        margin: 1rem auto 0;
        color: #707070;
    }

    #contents .inner {
        width: 100%;
        margin: 0 auto;
        padding: 0 2rem;
    }




    
    /*--------------------------------------

  parts

 ---------------------------------------*/
    .titleIndex01 {
        font-size: 1.7rem;
        margin-bottom: 2rem;
    }

    .titleIndex01 .big {
        font-size: 2.5rem;
    }

    .titleIndex01.pickup::before {
        width: 53px;
        height: 22px;
    }

    #contents .titleIndex01 a {
        /* background-size: auto 30px; */
        /* background-position: left bottom 0; */
        padding-bottom: 1.9rem;
    }

    .storyBox .text .titleIndex02 {
        margin: 0 0 2rem;
    }

    .titleIndex02 {
        font-size: 1.7rem;
        line-height: 1.6;
        margin-bottom: 2rem;
    }

    .titleIndex02 .big {
        font-size: 2.7rem;
    }

    .titleIndex02 .orange {
        font-size: 2.4rem;
        margin: 0;
    }

    #contents .titleIndex02 a {
        /* background-size: auto 30px; */
        /* background-position: left bottom 0; */
        padding-bottom: 6.4rem;
    }

    /* splitLayout */
    .splitLayout {
        display: block;
    }

    #contents .splitLayout .inner {
        width: 100%;
        padding: 0 2rem;
    }

    .splitLayout .fixArea {
        width: 100%;
        padding-bottom: 4rem;
    }

    .splitLayout .stickyArea {
        position: relative;
        min-height: auto;
        max-height: none;
        overflow: auto;
    }

    #contents .splitLayout .fixArea .inner {
        margin: 0;
        padding-bottom: 0 !important;
        min-height: auto;
    }

    .secAws .stickyArea .pic {
        display: none;
    }

    .splitLayout .scrollArea {
        width: 100%;
        margin-left: 0;
    }

    .secTobe .splitLayout .scrollArea {
        width: 100%;
    }

    .scrollArea .inner > .title {
        margin: 3rem 0 0;
        font-size: 2.1rem;
        line-height: 33px;
        padding: 0 1rem;
    }

    .scrollArea .box::before {
        margin-left: 0;
    }

    .scrollArea .box a {
        padding: 1.4rem 0 8.4rem;
    }

    .scrollArea .box .title {
        font-size: 1.8rem;
    }

    .scrollArea .box .en {
        font-size: 1.2rem;
    }

    .scrollArea .box .pic::after {
        width: 50px;
        height: 50px;
    }

    .secCareer .scrollArea .box a::after {
        content: "";
        width: 80px;
        height: 35px;
        background: url(img/top/btn_more02.jpg) no-repeat right top 10px / auto 25px;
        position: absolute;
        bottom: 40px;
        right: 20px;
    }

    .scrollArea .box .icon {
        font-size: 1.6rem;
    }

    .stickyArea .inner .storyBox {
        display: none;
    }

    .sp .storyBox {
        width: 100%;
    }

    .sp .storyBox a {
        padding: 0 2rem 4rem 0;
        position: relative;
    }

    .sp .storyBox .text {
        width: auto;
        margin-left: -2rem;
    }

    .sp .storyBox .text + p {
        width: 100%;
        text-align: right;
        padding-right: 2rem;
    }

    .storyBox .icon {
        font-size: 1.5rem;
    }

    /*--------------------------------------

  section

 ---------------------------------------*/
    /*--------------------------------------
  .mv
 ---------------------------------------*/
    .mv {
        background: url("img/top/mv.png") no-repeat right -9.5rem top 6rem / auto 110vw;
        padding: 1.4rem 0 0;
    }

    .mv .inner > .bg {
        font-size: 3.5vw;
        padding: 0.9rem;
    }

    .mv h2 {
        font-size: 7vw;
        margin: 1.2rem 0 0;
    }

    .mv h2 .green {font-size: 9vw;}

    .mv h2 .small {
        font-size: 1.8rem;
    }

    .mv .inner p {
        font-size: 1.4rem;
        font-weight: normal;
    }

    .mv h2 + p {
        padding-right: 22%;
    }

    .mv .editorialteam_parts {
        margin: 2rem 0 0 0;
        display: block;
        padding: 2rem;
    }

    .mv .editorialteam_parts div {
        display: block;
    }

    .mv .editorialteam_parts div:first-child .bg {
        width: auto;
        display: flex;
        align-items: center;
        padding: 0 0 0 76px;
        background-position: left 50%;
        background-size: 68px auto;
        min-height: 58px;
        margin: 0 0 1.5rem;
        font-size: 1.2rem;
    }

    .mv .editorialteam_parts div:last-child {
        padding: 0;
    }

    /*--------------------------------------
  .secStart
 ---------------------------------------*/
    .secStart {
        background-size: auto 50px;
        padding-top: 10rem;
        background-position: top 20px left 0;
        margin-top: -1rem;
    }

    .summarybox_wrap {
        padding: 4rem 0;
    }

    .summarybox_wrap::before {
        width: 100vw;
    }

    .summarybox_wrap::after {
        height: 50px;
        top: -37px;
        left: -20px;
    }

    .secStart .summarybox_wrap .summarybox {
        width: 48%;
        margin: 2rem 0 0;
    }

    .secStart .summarybox_wrap .summarybox:nth-child(1), .secStart .summarybox_wrap .summarybox:nth-child(2) {
        margin-top: 0;
    }

    .summarybox_wrap .summarybox::before {
        width: 48px;
        margin-left: -14px;
        height: 24px;
        top: -12px;
        left: 45%;
    }

    .summarybox_wrap .summarybox a {
        padding: 2.2rem 0.2rem 2.6rem;
        font-size: 1.0rem;
    }

    .summarybox_wrap .summarybox a .big {
        font-size: 1.2rem;
    }

    .summarybox_wrap .summarybox.pickup a {
        background-size: 39px auto;
    }

    /*--------------------------------------
  .sec01
 ---------------------------------------*/
    .sec01 {
        background-size: auto 55px;
        padding-top: 10rem;
        background-position: top 5rem left;
    }

    .sec01 .graph {
        margin: 3rem 0;
    }

    .sec01 .inner::after {
        width: 100%;
        height: 72px;
        left: 56px;
    }

    .sec01 .inner p:last-child {
        margin-bottom: 0;
    }

    /*--------------------------------------
  .sec02
 ---------------------------------------*/
    .sec02 {
        background-size: auto 55px;
    }

    .sec02 .titleIndex01::after {
        width: 128px;
        left: -2rem;
    }

    .sec02 .titleIndex01 {
        padding-bottom: 3rem;
    }

    /* arrowBox */
    .arrowBox {
        display: block;
    }

    .arrowBox > div {
        width: 100%;
    }

    .arrowBox > div + div {
        margin-top: 2.8rem
    }

    .arrowBox > div .title {
        font-size: 1.8rem;
    }

    .arrowBox > div .title .small {
        font-size: 1.4rem;
    }

    .arrowBox > div .box {
        padding: 2.5rem 3rem;
    }

    .arrowBox > div .box:last-child::after {
        width: 135px;
        height: 27px;
    }

    .arrowBox > div .box .titleCircle {
        width: 80px;
        height: 80px;
        font-size: 1.4rem;
        transform: none;
        right: -1rem;
        top: 2.5rem;
    }

    .arrowBox > div .box .catch {
        justify-content: flex-start;
        min-height: 80px;
        text-align: left;
        font-size: 1.5rem;
        padding-right: 5rem;
        margin: 0;
    }

    .arrowBox .orange .box .titleCircle {
        display: flex;
        right: auto;
        left: -1rem;
    }

    .arrowBox .orange .box .catch {
        padding: 0 0 0 5rem;
    }

    /* matome_parts */
    .sec02 .matome_parts .title {
        width: 227px;
    }

    .sec02 .matome_parts .text {
        font-size: 1.6rem;
    }

    /* editorBox */
    .editorBox {
        padding: 4.7rem 1rem 1rem;
    }

    .editorBox .text {
        padding: 0;
    }

    .editorBox .text .name {
        position: relative;
        margin: 0 auto 2rem;
    }

    .editorBox .text .catch {
        /* font-size: 1.4rem; */
    }

    .editorBox .articlelist {
        margin: 3rem 0 0;
    }

    .editorBox .articlelist .title {
        font-size: 1.4rem;
    }

    .editorBox .articlelist .articlelistWrap {
        display: block;
    }

    .editorBox .articlelist .articlelistWrap .articlelistbox {
        text-decoration: none;
        line-height: 1.66;
        font-weight: normal;
        width: 100%;
        background-color: #fff;
        border-radius: 5px;
        padding: 1rem;
        display: table;
        align-items: center;
        margin: 2rem 0 0;
    }

    .editorBox .articlelist .articlelistWrap :nth-child(1) {
        margin: 0;
    }

    .editorBox .articlelist .articlelistWrap a {
        width: 100%;
        padding: 0;
    }

    .editorBox .articlelist .articlelistWrap a + a, .editorBox .articlelist .articlelistWrap a:nth-child(2) {
        margin-top: 0.5rem;
    }

    .editorBox .articlelist .articlelistWrap a div:first-child {
        width: 64px;
    }

    .editorBox .articlelist .articlelistWrap .articlelistbox .articlelistimg {
        width: 5rem;
        height: auto;
    }

    .editorBox .articlelist .articlelistWrap div:first-child img {
    }

    .editorBox .articlelist .articlelistWrap a div:last-child {
        font-size: 1.3rem;
        padding: 0 1rem;
        width: 75%;
    }

    .editorBox .articlelist .articlelistWrap .articlelistbox div {
        padding: 0 1rem;
        width: 75%;
    }

    /*--------------------------------------
  .sec03
 ---------------------------------------*/
    .sec03 {
        background-size: auto 55px;
        background-position: top 6rem left;
    }

    .lifetimeBox {
        padding: 2rem 4rem;
        margin: 4rem -2rem 0;
        background: url("img/top/sec03_lifetimeBox_bg_sp.jpg") no-repeat left bottom -7rem / cover;
        /* background-attachment: fixed; */
    }

    .lifetimeBox::before {
        height: 30px;
        top: -30px;
        background-position: right bottom;
    }

    .lifetimeBox::after {
        content: none;
    }

    .lifetimeBox .wrap::after {
        width: calc(100% + 40px);
        height: 100%;
    }

    .lifetimeBox .wrap {
        padding: 2rem 0;
        display: flex;
        flex-direction: column;
    }

    .lifetimeBox .wrap > div div {
        font-size: 1.4rem;
        padding: 2rem 1.5rem;
        /* text-align: left; */
        width: 100%;
    }

    .lifetimeBox .wrap > div:nth-child(1) {
        margin: 0 0 0 20%;
        order: 0;
    }

    .lifetimeBox .wrap > div:nth-child(2) {
        position: relative;
        margin: 2rem 0 0 20%;
        top: auto;
        right: auto;
        order: 2;
    }

    .lifetimeBox .wrap > div:nth-child(3) {
        margin: 2rem 20% 0 0;
        order: 1;
    }

    .iconLight {
        height: 160px;
        padding: 8.9rem 0 0;
        margin: -2rem 0 0;
        background: none;
        position: relative;
    }

    .iconLight::before {
        content: "";
        width: 1px;
        height: 100%;
        background-color: #1A2930;
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -1;
    }

    .iconLight > div {
        width: 70%;
        font-size: 1.7rem;
        padding: 1.8rem 0;
    }

    .iconLight > div::before, .iconLight > div::after {
        width: 74px;
        height: 74px;
        margin-left: -37px;
        top: -37px;
    }

    .iconLight > div::after {
        background-size: 32px auto;
        background-position: top 12px left 50%;
    }

    .solutionBoxWrap {
        display: block;
        padding-bottom: 3rem;
    }

    .solutionBoxWrap::after {
        content: none;
    }

    .solutionBoxWrap::before {
        content: "";
        width: 1px;
        height: 100%;
        background-color: #1A2930;
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -1;
    }

    .solutionBoxWrap .solutionBox {
        width: 100%;
    }

    .solutionBoxWrap .solutionBox + .solutionBox {
        margin-top: 2rem;
    }

    .solutionBoxWrap .solutionBox .pic {
        min-height: auto;
        margin: auto 3rem;
        padding-bottom: 1.5rem;
    }

    .sec03 .fukidashi {
        width: 100%;
        position: relative;
    }

    .sec03 .fukidashi > div {
        font-size: 4.3vw;
    }

    .sec03 .fukidashi::after {
        content: "";
        width: 100vw;
        height: calc(100% + 24px);
        background: linear-gradient(transparent 50%, rgba(223,220,227,0.5) 50%,rgba(223,220,227,0.5) 100%);
        position: absolute;
        left: 50%;
        margin-left: -50vw;
        top: 0;
        z-index: -1;
    }

    /*--------------------------------------
  .sec04
 ---------------------------------------*/
    .sec04 {
        margin: 0;
        padding: 1.5rem 0 0;
    }

    .sec04::before {
        background: url("img/top/txt_04.png") no-repeat left top / auto 55px;
        width: 100%;
        height: 61px;
        top: -4rem;
    }

    .sec04 .titleWrap {
        display: flex;
        background-size: auto 22px;
        padding-top: 0.4rem;
    }

    .sec04 .inner .title_sub {
        max-width: 73px;
        height: auto;
    }

    .sec04 .inner .title_sub .green {
        display: none;
    }

    .sec04 .inner .title_sub .small {
        font-size: 1.3rem;
    }

    .sec04 .titleWrap .title {
        display: inline-block;
        font-size: 7.5vw;
    }

    .sec04 .capBox .cap, .sec04 .capBox .catch, .sec04 .capBox p {
        float: none;
        width: 100%;
    }

    .sec04 .capBox .catch {
        font-size: 4.5vw;
    }

    .sec04 .capBox .cap {
        margin: 2rem 0;
    }

    .numBoxWrap {
        display: block;
        position: relative;
    }

    .numBoxWrap::after {
        content: "";
        width: 1px;
        height: 100%;
        background-color: #1A2930;
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -1;
    }

    .numBoxWrap .numBox {
        width: 100%;
        font-size: 1.8rem;
        margin-bottom: 4rem;
    }

    .numBoxWrap .numBox .big {
        font-size: 2.4rem;
    }

    .numBoxWrap .numBox + .numBox {
        margin: 2rem 0 4rem;
    }

    .sec04 .titleCircle {
        height: 74px;
    }

    .sec04 .titleCircle > div {
        width: 110px;
        height: 110px;
        font-size: 2rem;
    }

    .sec04 .titleCircle::before {
        content: none;
    }

    .sec04 .titleCircle::after {
        content: "";
        width: 1px;
        height: 100%;
        background-color: #1A2930;
        position: absolute;
        left: 50%;
        top: -40px;
        z-index: -1;
    }

    .sec04 .whiteBox {
        padding: 7rem 2rem 0;
    }

    .sec04 .whiteBox .catch {
        font-size: 1.7rem;
    }

    .sec04 .bg {
        margin: 10rem 0 0;
        padding: 3rem 0 0;
        background-size: auto 100%;
        background-position: 55% top;
    }

    .sec04 .catchArrow {
        font-size: 1.8rem;
        padding-right: 2rem;
    }

    .sec04 .catchArrow .icon {
        font-size: 1.4rem;
        line-height: 26px;
        margin: 0 0 1rem -2rem;
    }

    .sec04 .catchArrow .big {
        font-size: 2.9rem;
    }

    .sec04 .catchArrow::before, .sec04 .catchArrow::after {
        background-size: auto 105px;
    }

    .sec04 .titleGrowth {
        font-size: 1.8rem;
        margin: 5rem 0 2rem;
    }

    .sec04 .growthBoxWrap {
        display: block;
        padding-bottom: 3rem;
    }

    .sec04 .growthBoxWrap::before {
        width: 1px;
        height: 90%;
        left: 50%;
        margin-left: 0;
        top: 0;
    }

    .sec04 .growthBoxWrap .growthBox {
        width: 100%;
        padding: 2.4rem 1.4rem;
    }

    .sec04 .growthBoxWrap .growthBox + .growthBox {
        margin-top: 2rem;
    }

    .sec04 .growthBoxWrap .growthBox .title {
        font-size: 1.8rem;
    }

    /*--------------------------------------
  .sec05
 ---------------------------------------*/
    .sec05 {
        padding: 11rem 0 8rem;
        background-image: none;
    }

    .sec05::before {
        content: "";
        width: 213px;
        height: 93px;
        background: url("img/top/txt_interview.png") no-repeat right bottom , url("img/top/txt_05.png") no-repeat left top;
        background-size: 100% auto , auto 55px;
        position: absolute;
        left: 0;
        top: 0;
    }

    .sec05::after {
        height: 482px;
        clip-path: polygon(0% 100% , 100% 100%, 101% 0%, 0% 20%);
        background-size: 108px;
        background-position: left bottom;
    }

    .sec05 .catch {
        font-size: 1.4rem;
    }

    .sec05 .titleIndex01 {
        margin: 0 0 4rem;
        position: relative;
    }

    .sec05 .titleIndex01::after {
        content: "";
        display: block;
        width: calc(100% + 2rem);
        aspect-ratio: 669 / 363;
        background: url("img/top/sec05_bg_sp.jpg") no-repeat right top / cover;
        margin: 2rem -2rem 0 0;
    }

    .sec05 p.notes {
        font-size: 1rem;
        line-height: 1.4;
        margin: 0 0 1rem;
    }

    .sec05 .interview_parts01 {
        padding: 2rem;
    }

    .sec05 .interview_parts01 .catch02 {
        font-size: 1.5rem;
        line-height: 1.57;
    }

    .sec05 .interview_parts01 .catch02 .big {
        font-size: 2.1rem;
    }

    .sec05 .interview_parts01 .catch02 + div, .sec05 .interview_parts01 .catch02 + div span {
        font-size: 1.8rem;
    }

    .sec05 .btnWrap, .sec05 .btnWrap > div {
        width: 100%;
        display: block;
    }

    .sec05 .btnWrap, .sec05 .btnWrap > div:last-child div {
        margin-top: 3rem;
    }

    /*--------------------------------------
  .secAws
 ---------------------------------------*/
    .secAws {
        position: relative;
    }

    .secAws::after {
        /* content: ""; */
        display: block;
        background: url("img/top/secAws_img01_sp.jpg") no-repeat center top / cover;
        aspect-ratio: 1500 / 778;
    }

    .secAws .stickyArea {
        padding-top: 7rem;
        background: url(img/top/txt_aws.png) no-repeat right top , url(img/top/secAws_bg.png) no-repeat center top;
        background-size: auto 52px , 100% auto;
    }

    /*--------------------------------------
  .secTobe
 ---------------------------------------*/
    .secTobe .stickyArea {
        background: url(img/top/txt_tobe.png) no-repeat right top , url(img/top/secAws_bg.png) no-repeat left top;
        background-size: auto 49px , 100% auto;
        padding-top: 7rem;
    }

    .secTobe .stickyArea .inner {
        height: auto;
    }

    #contents .secTobe .splitLayout .scrollArea .inner {
        text-align: left;
        padding-right: 0;
    }

    .secTobe .scrollArea .box a {
        width: auto;
        padding-right: 2rem;
        padding-bottom: 7rem;
        margin: 0;
    }

    .secTobe .scrollArea .box::after {
        width: 123px;
        height: 50px;
        left: auto;
        right: 0;
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_1.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
        top: 0;
    }

    .secTobe .scrollArea .inner .box:nth-child(3)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_2.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .inner .box:nth-child(4)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_3.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .inner .box:nth-child(5)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_4.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .inner .box:nth-child(6)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_5.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .inner .box:nth-child(7)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_6.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .inner .box:nth-child(8)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_7.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secTobe .scrollArea .box .title {
        background-position: right 0 bottom 0;
        background-size: 60.3px auto;
        padding-right: 7rem;
    }

    .secTobe .scrollArea .box a::after {
        bottom: 40px;
        right: 20px;
    }

    /*--------------------------------------
  .secCareer
 ---------------------------------------*/
    .secCareer .stickyArea {
        background: url(img/top/txt_career.png) no-repeat right top , url(img/top/secAws_bg.png) no-repeat left top;
        background-size: auto 52px , 100% auto;
        padding: 7rem 0 0;
    }

    .secCareer .stickyArea .inner {
        height: auto;
    }

    #contents .secCareer .splitLayout .scrollArea .inner {
        padding-right: 0;
    }

    .secCareer .scrollArea .box a {
        width: auto;
        padding-right: 2rem;
        padding-top: 4rem;
    }

    .secCareer .scrollArea .box::after {
        width: 123px;
        height: 50px;
        left: auto;
        right: 0;
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_1.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secCareer .scrollArea .inner .box:nth-child(3)::after {
        background: url(img/top/txt_01000100.png) no-repeat left top , url(img/top/txt_2.png) no-repeat right top;
        background-size: auto 24px , auto 100%;
    }

    .secCareer .scrollArea .box .title {
        background-position: right bottom 1px;
        background-size: 60.3px auto;
    }

    /*--------------------------------------
  .secQuestion
 ---------------------------------------*/
    .secQuestion {
        padding: 4.6rem 0 0;
        background: url(img/top/txt_question.png) no-repeat right top / auto 47px;
        margin-bottom: 4rem;
        margin-top: 6rem;
    }

    .secQuestion::before {
        width: 75px;
        height: calc(100% - 35px );
        bottom: 0;
    }

    #contents .secQuestion .inner {
        padding-bottom: 10rem;
    }

    .secQuestion::after {
        height: 43px;
        top: 35px;
    }

    .secQuestion .inner::after {
        width: calc(100vw - 100px);
        height: 58px;
        background: #EEECF0;
        position: absolute;
        bottom: 0;
        left: 50%;
        margin-left: -50vw;
        z-index: -1;
    }

    .secQuestion .inner::before {
        left: auto;
        margin-left: 0;
        height: 99px;
        width: 115px;
        clip-path: polygon(100% 100%, 0 100%, 0% 0%);
        right: 0;
        bottom: 0;
        z-index: -1;
    }

    .questionBox {
        display: block;
        margin: 3rem 0 0;
    }

    .questionBox::after {
        /* width: 50px; */
        /* height: 50px; */
    }

    .questionBox:nth-of-type(2n)::after {
        right: 0;
    }

    .questionBox .pic, .questionBox .text {
        width: 100%;
    }

    .questionBox .text, .questionBox:nth-of-type(2n) .text {
        background-color: #fff;
        padding: 2rem 2rem 8rem;
    }

    .questionBox .text .title {
        font-size: 1.8rem;
    }

    .questionBox:last-child {
        position: relative;
    }

    .secQuestion .questionBox + .sp {
        content: "";
        display: block;
        width: 100vw;
        height: 10rem;
        background: url("img/top/txt_answer_sp.png") no-repeat bottom 30px right 0 / auto 28px;
        position: absolute;
        left: 50%;
        margin-left: -50vw;
    }

    /*--------------------------------------
  .secFeature
 ---------------------------------------*/
    .secFeature::before {
        content: "";
        display: block;
        width: 100%;
        aspect-ratio: 750 / 440;
        background: url("img/top/secFeature_img01_sp.jpg") no-repeat center top / cover;
    }

    .secFeature::after {
        content: none;
    }

    #contents .secFeature .inner {
        padding: 4rem 2rem;
    }

    .secFeature .title_sub div:last-child .min {
        display: block;
    }

    .secFeature .btn-internal {
        margin: 3rem auto 0;
    }

    /*--------------------------------------
  .secSupervision
 ---------------------------------------*/
    .secSupervision {
        background: #4ABDAC;
        padding-bottom: 6rem;
    }

    .secSupervision::before {
        content: none;
    }

    .secSupervision .titleWrap {
        margin: 4rem 0 2rem;
    }

    .secSupervision .titleWrap .title_sub .bg {
        font-size: 2rem;
        padding: 0.1rem 0.4rem
    }

    .secSupervision .titleWrap .title_sub .min {
        font-size: 1.4rem;
    }

    .secSupervision .titleWrap .title {
        font-size: 2.1rem;
    }

    .secSupervision .wrap .pic, .secSupervision .wrap .text {
        width: 100%;
        float: none;
    }

    .secSupervision .wrap .catch {
        font-size: 1.8rem;
        margin: 2rem 0;
    }

footer #page-top {
    top: auto;
    bottom: 0;
}
    

    /*--------------------------------------
  .secLastly
 ---------------------------------------*/
    .secLastly::before {
        content: "";
        display: block;
        width: 100%;
        aspect-ratio: 750 / 440;
        background: url("img/top/secLastly_img01_sp.jpg") no-repeat center top / cover;
    }

    .secLastly::after {
        content: none;
    }

    #contents .secLastly .inner {
        padding: 4rem 2rem;
    }

    .secLastly .titleIndex01 .bg {
        background-color: #F78733;
        font-size: 1.4rem;
        margin: 0 0 1rem -2rem;
        padding: 0.2rem 1rem 0.2rem 3rem;
    }

    .secLastly .btn-internal {
        margin: 3rem auto;
    }

    /*--------------------------------------
  .unei_parts
 ---------------------------------------*/
    #contents .unei_parts .inner {
        padding: 4rem 2rem;
    }
}
