@charset "utf-8";
#wrapper {
    overflow: hidden;
}
.p_data {
    margin-top: 146px;
}
.p_data .c_ttl {
    margin-bottom: 72px;
}
.p_data_content {
    --gap-item-data: 40px;
    --gap-item-data: clamp( 25px, 3vw, 40px);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--gap-item-data);
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
}
.p_data_content [class*=p_data_col] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--gap-item-data);
}
.p_data_chart,
.p_data_pie {
    grid-column: 1 / span 2;
}
.p_data_chart .p_data_dd,
.p_data_pie .p_data_dd {
    min-height: 560px;
    padding-top: 13px;
}
.p_data_pie svg {
    max-width: 504px;
}
.p_data_chart svg {
    max-width: 402px;
}
.p_data_dl {
    position: relative;
    background-color: white;
    z-index: 0;
    font-weight: bold;
}
.p_data_dl::after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: -1;
    width: 100%;
    height: 10px;
    background-color: #344454;
}
.p_data_dd {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    padding-right: 15px;
    padding-left: 15px;
}
.p_data_dt {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 180px;
    font-size: 2.4rem;
    height: 54px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #344454;
    color: white;
}
.p_data_dt.w_sm {
    width: 120px;
}
.p_data_dt.w_md {
    width: 150px;
}
.p_data_dd {
    flex-direction: column;
    padding-top: 39px;
}
.p_data_dd.pd_stretch{
    padding-top: 63px;
}
.p_data_txt__notice {
    line-height: 2.6;
}
.p_data_txt__p {
    font-size: 2.4rem;
    line-height: 1;
}
.p_data_txt__p.f_en {
    font-size: 3rem;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
}
.p_data_txt__p > .txt_num {
    font-size: 8rem;
    color: #E53935;
    font-weight: 600;
    line-height: 1;
    font-family: 'Poppins', sans-serif;
}
.p_data_txt__p > .txt_num.txt_sm {
    font-size: 6rem;
}
.p_data_txt__small {
    font-size: 2rem;
    line-height: 1;
}
.p_benefit{
    margin-top: 163px;
    margin-top: clamp(100px, 50vw - 500px, 163px);
}

.p_benefit_img {
    max-width: calc(100% - 160px);
    max-width: max(calc(100% - 160px), 1760px);
    width: 95%;
}
.p_benefit_img img {
    width: 100%;
}
.p_benefit_content {
    margin: 0px auto 0px;
    width: 95%;
    z-index: 0;
    padding: 315px 0px 145px;
    padding-bottom: clamp(80px, 50vw - 500px, 145px);
    padding-top: clamp(100px, 50vw - 500px, 315px);
}
.p_benefit_collect {
    /* pointer-events: none; */
    width: 100%;
}
.p_benefit_collect img {
    width: 100%;
}
.slick-track {
    display: flex;
}
.slick-track.none_ease {
    transition: none !important;
}
.slick-list {
    width: 116.25%;
    min-width: 1000px;
}
.p_benefit_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 40px;
    grid-row-gap: 56px;
    margin-top: 82px;
    grid-column-gap: clamp(25px, 3vw, 40px)
}
.p_benefit_item__txt_first{
    font-size: 2.4rem;
    font-weight: bold;
    max-width: 240px;
    width: 100%;
    min-width: max-content;
    max-width: clamp(140px, 50vw - 280px, 240px);
}
.p_benefit_item__txt_last {
    font-size: inherit;
    white-space: nowrap;
    line-height: 2;
    flex-shrink: 0;
}
.p_benefit_item__p {
    margin-top: 27px;
    display: flex;
    align-items: flex-start;
}
.p_message {
    position: relative;
    z-index: 0;
    margin-top: 162px;
    padding: 168px 0px 164px;
    padding-top: clamp(60px, 50vw - 500px, 168px);
    padding-bottom: clamp(60px, 50vw - 500px, 164px);
    margin-top: clamp(40px, 50vw - 500px, 162px);
}
.p_message_content {
    display: flex;
    max-width: 1710px;
    max-width: max(calc(50% + 750px), 1690px);
    justify-content: space-between;
    padding-right: 20px;
    align-items: flex-start;

}
.p_message::after {
    background-color: white;
    position: absolute;
    max-width: calc(100% - 160px);
    width: 100%;
    content: '';
    right: 0px;
    top: 0px;
    width: 95%;
    z-index: -1;
    height: 100%;
}
.p_message_dl {
    padding-left: 30px;
    padding-top: 7px;
}
.p_message_dt {
    margin-top: 5px;
}
.p_message_dd {
    max-width: 600px;
    line-height: 2.5;
    margin-top: -18px;
}
.p_message_img {
    width: 55.5%;
    flex-shrink: 0;
    max-width: max(calc(50vw - 20px), 940px);
}
.p_table {
    margin-top: 155px;
}
.p_table_dl {
    display: flex;
    position: relative;
    z-index: 0;
}
.p_table_dl::after {
    position: absolute;
    content: '';
    top: 0px;
    left: 0px;
    z-index: -1;
    width: 100vw;
    height: 100%;
    background-color: white;
}
.p_table_mid::before,
.p_table_dt {
    width: 33.33vw;
    flex-shrink: 0;
    min-height: 565px;
    padding: 112px 20px 20px 100px;
    max-width: 640px;
    margin-bottom: 0px;
    padding-left: clamp(30px, 50vw - 600px, 100px);
    min-width: 265px;
}
.p_table .c_ttl__en {
    line-height: 1;
    font-size: clamp(4rem, 5vw, 6rem);
}
.p_table_dd {
    width: 100%;
    max-width: 770px;
    padding-right: 20px;
    margin-left: 150px;
    margin-left: clamp(30px, 50vw - 500px, 150px)
}
.p_table_new a {
    transition: opacity 0.3s ease;
    display: table;
}
.p_table_new a:hover {
    opacity: 0.8;
}
.p_table_new .p_table_dt {
    background-color: #E53935;
}
.p_table_new .p_table_dd {
    padding-top: 115px;
    padding-bottom: 40px;
}
.p_table_new__img {
    max-width: 500px;
}
.p_table_new__p {
    font-size: 2rem;
    margin-bottom: 15px;
}
.p_table_mid  {
    overflow: hidden;
}
.p_table_mid.fixed::before {
    content: '';
    background-color: #475D73;
}
.p_table_mid.fixed .p_table_dt  {
    position: fixed;
    z-index: 1;
    top: 0px;
    left: 0px;
    height: 100vw;
}
.p_table_mid  .p_table_dt {
    position: relative;
    top: 0px;
    z-index: 0;
}
.p_table_mid  .p_table_dt::after {
    content: '';
    width: 100%;
    height: 100vh;
    z-index: -1;
    background-color: #475D73;
    position: absolute;
    left: 0px;
    top: 0px;
}
.p_table_mid .p_table_dd {
    padding-top: 107px;
    padding-bottom: 120px;
}
.p_table_mid__p {
    line-height: 1;
    font-size: 3.2rem;
    font-weight: bold;
    margin-bottom: 67px;
}
.p_table_ul {
    border-bottom: 1px solid rgba(52, 68, 84, 0.1);
}
.p_table_li {
    display: flex;
    border-top: 1px solid rgba(52, 68, 84, 0.1);
    justify-content: space-between;
    align-items: flex-start;
}
.p_table_txt__b {
    font-size: 2.4rem;
    line-height: 1;
    width: 130px;
    flex-shrink: 0;
    padding-top: 46px;
}
.p_table_txt__wrap {
    width: 100%;
    max-width: 500px;
}
.p_table_txt__wrap >* {
    padding: 38px 0px 37px;
    line-height: 2;
    width: 100%;
}
.p_table_txt__wrap >*:not(:last-child) {
    border-bottom: 1px solid rgba(52, 68, 84, 0.1);
}
.p_table_txt__p.mult_p> *:not(:last-child) {
    padding-bottom: 20px;
}
.p_table_txt__p > .p_table_flex:not(:last-child) {
    padding-bottom: 15px;
}
.p_table_flex {
    display: flex;
}
.p_table_txt__span {
    width: 151px;
    flex-shrink: 0;
    width: clamp(125px, 55vw - 500px, 151px);
}
.p_table_btn {
    margin-top: 100px;
}

@media only screen and (max-width: 767px) {
    .slick-list {
        max-width: 900px;
        width: 300%;
        min-width: 0px;
    }
    .p_data {
        margin-top: 80px;
    }
    .p_data .c_ttl {
        margin-bottom: 35px;
    }
    .p_data_content {
        display: block;
        max-width: 600px;
        margin-right: auto;
        margin-left: auto;
    }
    .p_data_content >*:last-child {
        margin-top: 10px;
    }
    .p_data_dl::after {
        height: 5px;
    }
    .p_data_dt {
        height: 35px;
        font-size: 1.8rem;
        width: 50% !important;
        min-width: 100px;
    }
    .p_data_chart .p_data_dt,
    .p_data_pie .p_data_dt {
        max-width: 200px;
    }
    .p_data_dd {
        padding: 50px 10px 15px !important;
    }
    .p_data_dd {
        min-height: 180px !important;
    }
    .p_data_content [class*=p_data_col] {
        grid-gap: 10px;
    }
    @supports (grid-gap: clamp(10px, 3vw, 20px)) {
        .p_data_content [class*=p_data_col] {
            grid-gap: clamp(10px, 100vw - 310px, 20px)
        }
        .p_data_content >*:last-child {
            margin-top: clamp(10px, 100vw - 310px, 20px);
        }
    }
    .p_data_pie img,
    .p_data_chart img{
        max-width: 350px;
    }
    .p_data_chart > dd,
    .p_data_pie > dd {
        min-height: 400px;
    }
    .p_data_txt__p > .txt_num {
        font-size: 5rem;
    }
    .p_data_txt__p > .txt_num.txt_sm {
        font-size: 4rem;
    }
    .p_data_txt__p {
        font-size: 1.8rem !important;
    }
    .p_data_txt__small {
        font-size: 1.6rem;
        white-space: nowrap;
    }
    .p_data_txt__notice {
        line-height: 2;
        font-size: 1.4rem;
    }
    .p_benefit {
        margin-top: 80px;
        font-size: 1.4rem;
    }
    .p_benefit_img {
        max-width: 100%;
        width: 100%;
    }
    .p_benefit_content {
        margin-top: 0px;
        width: 100%;
        background-color: white;
        padding: 40px 0px 60px;
    }
    .p_benefit_list {
        margin-top: 0px;
        grid-column-gap: 20px;
        grid-row-gap: 40px;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr))
    }
    .p_benefit_item__p {
        margin-top: 15px;
        display: block;
    }
    .p_benefit_item__p >* {
        display: block;
    }
    .p_benefit_item__txt_first {
        font-size: 2rem;
        max-width: 110px;
        margin-bottom: 5px;
    }
    .p_message {
        padding: 60px 20px;
        background-color: white;
        margin-top: 80px;
    }
    .p_message_content {
        display: block;
        padding-right: 0px;
    }
    .p_message_img {
        width: 100%;
        max-width: 100%;
    }
    .p_message_dl {
        padding: 0px;
        margin-top: 25px;
    }
    .p_message_dd {
        max-width: 100%;
        margin-top: 0px;
		font-size: 1.4rem;
    }
    .p_message::after {
        content: none;
    }
    .p_table {
        font-size: 1.4rem;
        margin-top: 80px;
    }
    .p_table_dl {
        display: block;
    }
    .p_table_dt {
        width: 100%;
        max-width: 100%;
        min-height: auto;
        padding: 40px 20px;
    }
    .p_table .c_ttl__en {
        font-size: 3rem;
    }
    .p_table_new .p_table_dd p {
        font-size: 1.6rem;
    }
    @supports (font-size: clamp(1.6rem, 5vw ,1.8rem)) {
        .p_table_new .p_table_dd p {
            font-size: clamp(1.6rem, 5vw ,1.8rem);
        }
    }
    .p_table_dd {
        padding-left: 20px;
    }
    .p_table dt br {
        display: none;
    }
    .p_table_new .p_table_dd {
        padding-top: 40px;
        margin-left: 0px;
    }
    .p_table_new__img {
        max-width: 400px;
    }
    .p_table_mid__p {
        font-size: 2rem;
        margin-bottom: 40px;
    }
    .p_table_txt__b {
        font-size: 1.8rem;
        margin-bottom: 5px;
    }
    .p_table_mid .p_table_dd {
        padding: 60px 20px;
        margin-left: 0px;
    }
    .p_table_txt__wrap {
        flex: 380px;
    }
    .p_table_txt__wrap >* {
        padding: 25px 0px;
    }
    .p_table_flex {
        display: block;
    }
    .p_table_flex > * {
        display: block;
    }
    .p_table_flex > *:first-child {
        margin-bottom: 10px;
    }
    .p_table_txt__b {
        padding-top: 25px;
        width: 100px;
    }
    .p_table_txt__span {
        width: 120px;
    }
    .p_table_btn {
        margin-top: 50px;
    }
    .p_table_mid  .p_table_dt::after {
        height: 100%;
    }
    .p_table_li {
        flex-wrap: wrap;
    }
    .p_table_li:last-child {
        flex: auto;
    }
}