﻿/* common */
.mainTitle03_main {
    line-height: 1.4;
}

.specTable .specifications table th,
.specTable .ordering_info table th {
    text-transform: none;
}

/* banner */
.banner {
    position: relative;
    display: block;
    width: 100%;
    height: 900px;
    background: #000;
    overflow: hidden;
    z-index: 0;
}

.banner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 75%;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 63%);
    opacity: .16;
}

.banner_bg {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.banner_bg img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.banner_content {
    position: relative;
    display: block;
    width: calc(100% - 120px);
    margin: 95px auto 0 auto;
    z-index: 20;
}

.banner_content_logo {
    position: relative;
    display: block;
    width: 100%;
    max-width: 894px;
    margin: 0 auto 25px auto;
    text-align: center;
}

.banner_content_logo img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.banner_content_sub {
    position: relative;
    display: block;
    width: 100%;
    font-size: 24px;
    line-height: 1.5;
    color: #fff;
    font-family: inherit;
    font-weight: 500;
    opacity: .6;
}

.banner_content_slogan {
    position: relative;
    display: block;
    width: 100%;
    margin: 20px auto 0 auto;
}

.banner_content_slogan_item {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 2em 0 0;
    font-size: 35px;
    line-height: 1.35;
    color: #fff;
    font-family: inherit;
    font-weight: 700;
}

.banner_content_slogan_item:nth-child(even) {
    padding: 0 0 0 4em;
}

.banner_product {
    position: absolute;
    bottom: 10%;
    left: max(10%, calc(50% - 230px));
    display: block;
    width: 80%;
    max-width: 460px;
    margin: 0 auto;
}

.banner_product img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

/* speed */
.speed {
    position: relative;
    display: block;
    width: 100%;
    padding: 150px 0 140px 0;
    background: #000;
    overflow: hidden;
}

.speed_content {
    position: static;
    width: calc(100% - 120px);
    max-width: 1450px;
    margin: 0 auto;
    overflow: visible;
}

.speed_content_inner {
    position: static;
    width: 60%;
    max-width: 740px;
    margin: 0 0 0 auto;
}

.speed_content_inner_title {
    /* text-align: right; */
    z-index: 10;
}

.speed_content_inner_title .mainTitle03_main {
    color: #fff;
}

.speed_content_inner_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px 0 0 0;
    font-size: 18px;
    line-height: 1.6;
    color: rgba(207, 210, 211, .8);
    font-family: inherit;
    text-align: left;
    z-index: 10;
}

.speed_content_inner_bg {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 55%;
    height: 100%;
}

.speed_content_inner_bg::after {
    content: '';
    position: absolute;
    top: 0;
    right: max(0px, calc(50% - 500px));
    display: block;
    width: 50px;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, #000 70%);
}

.speed_content_inner_bg img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    user-select: none;
}

.speed_content_inner_group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-items: flex-start;
    justify-content: space-between;
    width: 100%;
    margin: 60px 0 0 0;
}

.speed_content_inner_group_box {
    position: relative;
    display: block;
    width: calc(50% - 35px);
    margin: 0 0 30px 0;
}

.speed_content_inner_group_box::after {
    content: '';
    position: absolute;
    top: -25%;
    right: 0;
    display: block;
    width: 80%;
    height: 150%;
    background:
        radial-gradient(ellipse at center, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, 0) 70%) top left no-repeat,
        radial-gradient(ellipse at center, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, 0) 70%) bottom right no-repeat;
    background-size: 90% 70%, 70% 70%;
    pointer-events: none;
}

.speed_content_inner_group_box_sub {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 5px 0;
    font-size: 20px;
    line-height: 1.2;
    color: #fff;
    font-family: inherit;
    font-weight: 700;
    text-align: right;
}

.speed_content_inner_group_box_title {
    position: relative;
    display: block;
    width: 100%;
    font-size: 20px;
    line-height: 1.2;
    color: #00abc7;
    font-family: inherit;
    font-weight: 700;
    text-align: right;
}

.speed_content_inner_group_box_count {
    position: relative;
    display: block;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 10px 15px 0 15px;
    border-top: 1px solid #323232;
}

.speed_content_inner_group_box_count_item {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto 15px auto;
}

.speed_content_inner_group_box_count_item_head {
    position: relative;
    display: flex;
    align-items: flex-end;
    align-content: flex-end;
    justify-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin: 0 0 7px 0;
}

.speed_content_inner_group_box_count_item_head_title {
    position: relative;
    display: block;
    width: 100%;
    font-size: 14px;
    line-height: 1;
    color: #d5d5d5;
    font-family: inherit;
    text-align: left;
    flex: 0 1 auto;
}

.speed_content_inner_group_box_count_item_head_num {
    position: relative;
    display: block;
    width: auto;
    max-width: 100%;
    font-size: 18px;
    line-height: 1;
    color: #d5d5d5;
    font-family: inherit;
    font-weight: 500;
    text-align: right;
    flex: 0 0 auto;
}

.speed_content_inner_group_box_count_item_head_num_unit {
    position: relative;
    width: auto;
    max-width: 100%;
    font-size: 15px;
    line-height: 1;
    color: #d5d5d5;
    font-family: inherit;
    font-weight: 400;
}

.speed_content_inner_group_box_count_item_bar {
    position: relative;
    display: block;
    width: 100%;
    height: 5px;
    background: #323232;
    overflow: hidden;
}

.speed_content_inner_group_box_count_item_bar::before {
    content: '';
    position: relative;
    display: block;
    width: 0;
    height: 100%;
    background: #1fcad9;
}

.speed_content_inner_notice {
    position: relative;
    display: block;
    width: 100%;
    font-size: 16px;
    line-height: 1.4;
    color: rgba(213, 213, 213, .5);
    font-family: inherit;
    text-align: right;
}

.speed_content_inner_group_box_count_item_bar[data-percentage="100"]::before {
    width: 100%;
}

.speed_content_inner_group_box_count_item_bar[data-percentage="84"]::before {
    width: 84%;
}

.speed_content_inner_group_box_count_item_bar[data-percentage="72.27"]::before {
    width: 72.27%;
}

.speed_content_inner_group_box[data-style="gold"] .speed_content_inner_group_box_title {
    color: #f8ad0d;
}

.speed_content_inner_group_box[data-style="gold"] .speed_content_inner_group_box_count_item_bar::before {
    background: #f8ad0d;
}

/* capacity */
.capacity {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    overflow: hidden;
}

.capacity_inner {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: flex-end;
    justify-content: space-between;
    width: calc(100% - 60px);
    max-width: calc(50% + 725px);
    margin: 0 0 0 auto;
}

.capacity_inner_content {
    position: relative;
    display: block;
    width: 100%;
    max-width: 660px;
    padding: 100px 0;
    flex: 0 1 auto;
}

.capacity_inner_content_title .mainTitle03_main {
    color: #111;
}

.capacity_inner_content_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px 0 0 0;
    font-size: 18px;
    line-height: 1.6;
    color: #525252;
    font-family: inherit;
    text-align: left;
}

.capacity_inner_content_notice {
    position: relative;
    display: block;
    width: 100%;
    margin: 20px 0 0 0;
    font-size: 16px;
    line-height: 1.6;
    color: #808080;
    font-family: inherit;
    text-align: left;
}

.capacity_inner_prodcut {
    position: relative;
    display: block;
    width: 50%;
    max-width: 720px;
    margin: 0 0 0 50px;
    /* padding: 0 0 115px 0; */
    flex: 0 0 auto;
}

.capacity_inner_prodcut_bg {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.capacity_inner_prodcut_item {
    position: absolute;
    top: 25%;
    left: 39.585%;
    display: block;
    width: 20.83%;
    height: auto;
}

.capacity_inner_prodcut_item::before {
    content: '';
    position: absolute;
    top: -13.005%;
    left: -47.81%;
    width: 195.62%;
    height: 126.01%;
    border-radius: 5px;
    background: radial-gradient(ellipse at center, #fff5cb 0%, rgba(255, 245, 203, 0) 50%);
}

.capacity_inner_prodcut_item img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.capacity_inner_prodcut_light {
    position: absolute;
    top: 1%;
    left: 1%;
    display: block;
    width: 70.4%;
    height: auto;

    display: none;
}

/* intro */
.intro {
    position: relative;
    display: block;
    width: 100%;
    background: #000;
    overflow: hidden;
}

.intro_inner {
    position: relative;
    display: block;
    width: calc(100% - 120px);
    max-width: 1450px;
    margin: 0 auto;
}

.intro_inner_item {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    margin: 0 auto 6.77vw auto;
    padding: 180px 0;
}

.intro_inner_item:last-child {
    margin: 0;
}

.intro_inner_item_bg {
    position: absolute;
    top: 0;
    left: calc((100vw - 120px)* -.08);
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.intro_inner_item_bg img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: auto;
    height: 100%;
    user-select: none;
}

.intro_inner_item_bg .pad {
    display: none;
}

.intro_inner_item_content {
    position: relative;
    display: block;
    width: 100%;
    /* margin: 0 max(0px, calc(50% - 725px)) 0 0; */
    margin: 0;
}

.intro_inner_item_content_inner {
    position: relative;
    display: block;
    width: 50%;
    max-width: 630px;
    margin: 0 0 0 50%;
}

/* .intro_inner_item_content_inner_title {
    text-align: right;
} */

.intro_inner_item_content_inner_title .mainTitle03_main {
    color: #fff;
}

.intro_inner_item_content_inner_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px 0 0 0;
    font-size: 18px;
    line-height: 1.6;
    color: rgba(207, 210, 211, .8);
    font-family: inherit;
    text-align: left;
}

.intro_inner_item_content_inner_notice {
    position: relative;
    display: block;
    width: 100%;
    margin: 20px 0 0 0;
    font-size: 16px;
    line-height: 1.6;
    color: rgba(207, 210, 211, .5);
    font-family: inherit;
    text-align: right;
}

/* .intro_inner_item:nth-child(even) .intro_inner_item_content {
    margin: 0 0 0 max(0px, calc(50% - 725px));
} */

.intro_inner_item:nth-child(even) .intro_inner_item_content_inner {
    margin: 0 auto 0 0;
}

.intro_inner_item:nth-child(even) .intro_inner_item_bg img {
    left: auto;
    right: 0;
}

.intro_inner_item:nth-child(even) .intro_inner_item_content_inner_title,
.intro_inner_item:nth-child(even) .intro_inner_item_content_inner_text,
.intro_inner_item:nth-child(even) .intro_inner_item_content_inner_notice {
    text-align: left;
}

.intro_inner_item[data-style="slim"] .intro_inner_item_bg img {
    top: max(calc(50% - 480px - 67px), calc(50% - 25vw - 3.5vw));
    height: 50vw;
    max-height: 960px;
}

.intro_inner_item[data-style="edge"] {
    padding: 160px 0 240px 0;
}

.intro_inner_item:nth-child(even)[data-style="edge"] .intro_inner_item_bg {
    left: 100px;
}

.intro_inner_item[data-style="edge"] .intro_inner_item_bg img {
    top: max(calc(50% - 290px), calc(50% - 16vw));
    height: 32.5vw;
    max-height: 680px;
}

/* optimal */
.optimal {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    min-height: 560px;
    padding: 110px 0 70px 0;
    overflow: hidden;
}

.optimal_bg {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #1e2e3d;
    overflow: hidden;
}

.optimal_bg img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .28;
}

.optimal_content {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: flex-end;
    justify-content: flex-end;
    width: calc(100% - 120px);
    max-width: 1450px;
    margin: 0 auto;
}

.optimal_content_inner {
    position: relative;
    display: block;
    width: 50%;
    max-width: 670px;
    margin: 0 auto 0 50%;
}

/* .optimal_content_inner_title {
    text-align: right;
} */

.optimal_content_inner_title .mainTitle03_main {
    color: #fff;
}

.optimal_content_inner_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px 0 0 0;
    font-size: 18px;
    line-height: 1.6;
    color: rgba(207, 210, 211, .8);
    font-family: inherit;
    text-align: left;
}

.optimal_content_inner_icon {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin: 35px 0 0 0;
}

.optimal_content_inner_icon_item {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: 0 40px 40px 0;
}

.optimal_content_inner_icon_item img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    filter: brightness(0) invert(1);
}

/* accelerate */
.accelerate {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    min-height: 580px;
    padding: 140px 0;
    background: #fff;
    overflow: hidden;
}

.accelerate_bg {
    position: absolute;
    top: 0;
    left: max(0px, calc(50% - 990px));
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    max-width: 1980px;
    height: 100%;
}

.accelerate_bg::after {
    content: '';
    position: absolute;
    top: 0;
    right: -30px;
    display: block;
    width: 50px;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #fff 50%);
}

.accelerate_bg img {
    position: relative;
    left: 30px;
    display: block;
    width: auto;
    height: 100%;
    margin: 0 0 0 auto;
    opacity: .17;
    user-select: none;
}

.accelerate_content {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: flex-start;
    justify-content: flex-start;
    width: calc(100% - 120px);
    max-width: 1450px;
    margin: 0 auto;
}

.accelerate_content_inner {
    position: relative;
    display: block;
    width: 50%;
    max-width: 670px;
}

.accelerate_content_inner_title .mainTitle03_main {
    color: #111;
}

.accelerate_content_inner_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px 0 0 0;
    font-size: 18px;
    line-height: 1.6;
    color: #525252;
    font-family: inherit;
    text-align: left;
}

.accelerate_content_inner_icon {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin: 35px 0 0 0;
}

.accelerate_content_inner_icon_item {
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: 0 40px 40px 0;
    overflow: hidden;
}

.accelerate_content_inner_icon_item img {
    position: relative;
    object-fit: contain;
    object-position: center;
    width: 100%;
    height: 100%;
}

/* includes */
.includes {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

.includes_top {
    position: relative;
    display: block;
    width: 100%;
    padding: 130px 0 350px 0;
    overflow: hidden;
}

.includes_top_bg {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.includes_top_bg img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.includes_top_content {
    position: relative;
    display: block;
    width: calc(100% - 120px);
    max-width: 690px;
    margin: 0 auto;
}

.includes_top_content_title {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.includes_top_content_title .mainTitle03_main {
    color: #fff;
}

.includes_top_content_text {
    position: relative;
    display: block;
    width: 100%;
    margin: 35px auto 0 auto;
    font-size: 18px;
    line-height: 1.6;
    color: rgba(207, 210, 211, .8);
    font-family: inherit;
    text-align: center;
}

.includes_center {
    position: relative;
    display: block;
    width: calc(100% - 120px);
    max-width: 580px;
    margin: -210px auto -158px auto;
    overflow: hidden;
    z-index: 10;
}

.includes_center img {
    display: block;
    width: 100%;
    height: auto;
}

.includes_bottom {
    position: relative;
    display: block;
    width: 100%;
    padding: 335px 0 145px 0;
    background: #fff;
    overflow: hidden;
}

.includes_bottom_content {
    position: relative;
    display: block;
    width: calc(100% - 120px);
    margin: 0 auto;
}

.includes_bottom_content_title {
    position: relative;
    display: block;
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    font-size: 42px;
    line-height: 1.2;
    color: #111;
    font-family: 'Anton';
    font-weight: normal;
}

[data-lang="sc"] .includes_bottom_content_title {
    font-family: 'Noto Sans SC';
    font-weight: 700;
}

[data-lang="jp"] .includes_bottom_content_title {
    font-family: 'Noto Sans JP';
    font-weight: 700;
}

[data-lang="ko"] .includes_bottom_content_title {
    font-family: 'Noto Sans KR';
    font-weight: 700;
}

[data-lang="tw"] .includes_bottom_content_title {
    font-family: 'Noto Sans TC';
    font-weight: 700;
}

.includes_bottom_content_text {
    position: relative;
    display: block;
    width: 100%;
    max-width: 595px;
    margin: 30px auto 40px auto;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    color: #505050;
}

.includes_bottom_icon {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-items: center;
    justify-content: center;
    width: calc(100% - 120px);
    margin: 40px auto 0 auto;
}

.includes_bottom_icon_item {
    display: flex;
    align-items: center;
    align-content: center;
    justify-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    margin: 2.5px;
    border-radius: 50%;
    background: #e9e8e4;
    border: 1px solid #d8d8d8;
    overflow: hidden;
}

.includes_bottom_icon_item img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

/* 商品規格 */
.specTable {
    padding: 115px 0 100px 0;
}

@media all and (max-width:1200px) {
    article {
        width: 100%;
        padding-left: 2%;
        padding-right: 2%
    }

    /* banner */
    .banner_content {
        width: calc(100% - 60px);
    }

    .banner_content_logo {
        max-width: 750px;
    }

    .banner_content_sub {
        font-size: 20px;
    }

    .banner_content_slogan_item {
        padding: 0 2em 0 0;
        font-size: 34px;
    }

    /* speed */
    .speed_content {
        position: relative;
        width: 100%;
        max-width: none;
        margin: 0 auto;
        overflow: visible;
    }

    .speed_content_inner {
        position: relative;
        width: calc(100% - 60px);
        max-width: none;
        margin: 0 auto;
    }

    .speed_content_inner_title {
        text-align: center;
    }

    .speed_content_inner_text {
        margin: 35px 0 0 0;
        font-size: 16px;
        text-align: center;
    }

    .speed_content_inner_bg {
        position: relative;
        left: calc(50% - 50vw);
        width: 100vw;
        height: auto;
    }

    .speed_content_inner_bg::after {
        display: none;
    }

    .speed_content_inner_group {
        margin: -7.5vw auto 0 auto;
    }

    /* capacity */
    .capacity_inner {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        align-content: flex-start;
        justify-items: center;
        justify-content: center;
        width: 100%;
        max-width: none;
        margin: 0;
    }

    .capacity_inner_content {
        width: calc(100% - 60px);
        max-width: none;
        padding: 0 0 150px 0;
        order: 10;
    }

    .capacity_inner_content_text {
        font-size: 16px;
    }

    .capacity_inner_content_notice {
        font-size: 14px;
    }

    .capacity_inner_prodcut {
        width: 100%;
        max-width: none;
        margin: 0;
        /* margin: 0 0 55px 0;
        padding: 0 0 10vw 0; */
    }

    .speed_content_inner_notice {
        font-size: 14px;
    }

    /* intro */
    .intro_inner {
        width: 100%;
    }

    .intro_inner_item {
        flex-wrap: wrap;
        align-items: flex-start;
        align-content: flex-start;
        width: 100%;
        margin: 0 auto;
        padding: 0;
    }

    .intro_inner_item_bg {
        left: 0;
    }

    .intro_inner_item_bg img {
        top: auto;
        left: 0;
        bottom: 0;
        width: 100%;
        height: auto;
    }

    .intro_inner_item_bg .pc {
        display: none;
    }

    .intro_inner_item_bg .pad {
        display: block;
    }

    .intro_inner_item_content {
        width: calc(100% - 60px);
        margin: 0 auto;
    }

    .intro_inner_item_content_inner {
        width: 100%;
        max-width: none;
        margin: 0;
    }

    .intro_inner_item_content_inner_title {
        text-align: left;
    }

    .intro_inner_item_content_inner_text {
        font-size: 16px;
        text-align: left;
    }

    .intro_inner_item_content_inner_notice {
        font-size: 14px;
        text-align: left;
    }

    .intro_inner_item:nth-child(even) .intro_inner_item_content {
        margin: 0 auto;
    }

    .intro_inner_item:nth-child(even) .intro_inner_item_content_inner {
        margin: 0;
    }

    .intro_inner_item[data-style="slim"] {
        padding: 135px 0 90vw 0;
    }

    .intro_inner_item[data-style="slim"] .intro_inner_item_bg img {
        top: auto;
        height: auto;
        max-height: none;
    }

    .intro_inner_item[data-style="edge"] {
        padding: 98vw 0 150px 0;
    }

    .intro_inner_item:nth-child(even)[data-style="edge"] .intro_inner_item_bg {
        left: 0;
    }

    .intro_inner_item[data-style="edge"] .intro_inner_item_bg img {
        top: 0;
        height: auto;
        max-height: none;
    }

    /* optimal */
    .optimal_content_inner {
        width: 100%;
        max-width: none;
        margin: 0 auto;
    }

    .optimal_content_inner_title {
        text-align: left;
    }

    .optimal_content_inner_text {
        font-size: 16px;
        text-align: left;
    }

    .optimal_content_inner_icon {
        justify-items: flex-start;
        justify-content: flex-start;
    }

    .optimal_content_inner_icon_item {
        margin: 0 40px 40px 0;
    }

    .optimal_content_inner_icon_item:last-child {
        margin: 0 0 40px 0;
    }

    /* accelerate */
    .accelerate_bg::after {
        display: none;
    }

    .accelerate_content_inner {
        width: 100%;
    }

    .accelerate_content_inner_text {
        font-size: 16px;
    }

    /* includes */
    .includes_bottom_content_title {
        font-size: 36px;
    }

    .includes_top_content_text,
    .includes_bottom_content_text {
        font-size: 16px;
    }
}

@media all and (max-width:990px) {

    /* 商品規格 */
    .specTable {
        padding: 85px 0 60px 0;
    }
}

@media all and (max-width:812px) {

    /* banner */
    .banner {
        height: 91.2em;
    }

    .banner_content_logo {
        max-width: 600px;
    }

    /* optimal */
    .optimal_content {
        width: calc(100% - 60px);
    }

    /* accelerate */
    .accelerate_content {
        width: calc(100% - 60px);
    }

    /* includes */
    .includes_top_content {
        width: calc(100% - 60px);
    }

    .includes_center {
        width: calc(100% - 60px);
    }

    .includes_bottom_content {
        width: calc(100% - 60px);
    }

    .includes_bottom_icon {
        width: calc(100% - 60px);
    }

}

@media all and (max-width:640px) {

    /* banner */
    .banner {
        height: 523px;
    }

    .banner_content {
        width: calc(100% - 40px);
        margin: 60px auto 0 auto;
    }

    .banner_content_logo {
        max-width: 400px;
        margin: 0 auto 20px auto;
    }

    .banner_content_sub {
        font-size: 13px;
    }

    .banner_content_slogan {
        margin: 15px auto 0 auto;
    }

    .banner_content_slogan_item {
        padding: 0 2em 0 0;
        font-size: 18px;
    }

    .banner_product {
        top: calc(160.42px + 60px + 10%);
        bottom: auto;
        left: max(15%, calc(50% - 125px));
        width: 70%;
        max-width: 250px;
    }
    
    /* speed */
    .speed {
        padding: 100px 0;
    }

    .speed_content_inner {
        width: calc(100% - 40px);
    }

    .speed_content_inner_group_box {
        width: 100%;
        margin: 0 0 20px 0;
    }

    .speed_content_inner_group_box_count {
        padding: 15px 0 0 0;
    }

    .speed_content_inner_text {
        margin: 20px 0 0 0;
        font-size: 12px;
    }

    .speed_content_inner_notice {
        font-size: 12px;
    }

    /* intro */
    .intro_inner_item_content {
        width: calc(100% - 40px);
    }

    .intro_inner_item_content_inner_text {
        margin: 20px 0 0 0;
        font-size: 12px;
    }

    .intro_inner_item_content_inner_text br {
        display: none;
    }

    .intro_inner_item_content_inner_notice {
        font-size: 12px;
    }

    .intro_inner_item[data-style="slim"] {
        padding: 75px 0 90vw 0;
    }

    .intro_inner_item[data-style="edge"] {
        padding: 98vw 0 80px 0;
    }

    /* capacity */
    .capacity_inner_content {
        width: calc(100% - 40px);
        padding: 0 0 80px 0;
    }

    .capacity_inner_content_text {
        margin: 20px 0 0 0;
        font-size: 12px;
    }

    .capacity_inner_content_notice {
        font-size: 12px;
    }

    /* .capacity_inner_prodcut {
        margin: 0 0 35px 0;
    } */

    /* optimal */
    .optimal {
        min-height: 500px;
        padding: 70px 0 30px 0;
    }

    .optimal_content {
        width: calc(100% - 40px);
    }

    .optimal_content_inner_text {
        margin: 20px 0 0 0;
        font-size: 12px;
    }

    .optimal_content_inner_icon_item {
        width: 30px;
        height: 30px;
        margin: 0 30px 30px 0;
    }

    /* accelerate */
    .accelerate {
        min-height: 500px;
        padding: 70px 0 30px 0;
    }

    .accelerate_content {
        width: calc(100% - 40px);
    }

    .accelerate_content_inner {
        width: 100%;
    }

    .accelerate_content_inner_text {
        margin: 20px 0 0 0;
        font-size: 12px;
    }

    .accelerate_content_inner_icon_item {
        width: 30px;
        height: 30px;
        margin: 0 30px 30px 0;
    }

    /* includes */
    .includes_top {
        padding: 80px 0 180px 0;
    }

    .includes_top_content {
        width: calc(100% - 40px);
    }

    .includes_top_content_text {
        margin: 20px auto 0 auto;
        font-size: 12px;
    }

    .includes_center {
        width: calc(100% - 40px);
        max-width: 340px;
        margin: -120px auto -90px auto;
    }

    .includes_bottom {
        padding: 220px 0 80px 0;
    }

    .includes_bottom_content {
        width: calc(100% - 40px);
    }

    .includes_bottom_content_title {
        font-size: 26px;
    }

    .includes_bottom_content_text {
        margin: 15px 0 40px 0;
        font-size: 12px;
    }

    .includes_bottom_icon {
        width: calc(100% - 40px);
    }

    .includes_bottom_icon_item {
        width: 50px;
        height: 50px;
    }

    /* 商品規格 */
    .specTable {
        padding: 70px 0 20px 0;
    }
}