@charset "utf-8";

:root {
    --green-text: #56A523;
    --red-span: #CF0F31;
}

#docomo01 {
    letter-spacing: 0;
}

/* anime */
.zuumo-anime {
    -webkit-animation: zuumo-anime 1.0s linear 0s 1;
    animation: zuumo-anime 1.0s linear 0s 1;
}

@-webkit-keyframes zuumo-anime {
    0% {
        -webkit-transform: scale(0.8, 1.2) translate(0%, -20%);
    }

    10% {
        -webkit-transform: scale(0.8, 1.2) translate(0%, -15%);
    }

    20% {
        -webkit-transform: scale(1.2, 0.9) translate(0%, 20%);
    }

    30% {
        -webkit-transform: scale(0.9, 1.1) translate(0%, -10%);
    }

    40% {
        -webkit-transform: scale(0.95, 1.2) translate(0%, -20%);
    }

    50% {
        -webkit-transform: scale(0.9, 1.2) translate(0%, -10%);
    }

    60% {
        -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
    }

    70% {
        -webkit-transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    100% {
        -webkit-transform: scale(1.0, 1.0) translate(0%, 0%);
    }
}

@keyframes zuumo-anime {
    0% {
        transform: scale(0.8, 1.2) translate(0%, -20%);
    }

    10% {
        transform: scale(0.8, 1.2) translate(0%, -15%);
    }

    20% {
        transform: scale(1.2, 0.9) translate(0%, 20%);
    }

    30% {
        transform: scale(0.9, 1.1) translate(0%, -10%);
    }

    40% {
        transform: scale(0.95, 1.2) translate(0%, -20%);
    }

    50% {
        transform: scale(0.9, 1.2) translate(0%, -10%);
    }

    60% {
        transform: scale(1.1, 0.9) translate(0%, 5%);
    }

    70% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    100% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }
}

.scroll-zuumo {
    animation: none;
    transform: none;
    transition: unset;
    opacity: 0;
}

.scroll-zuumo.active {
    -webkit-animation: scroll-zuumo 1.0s linear 0s 1;
    animation: scroll-zuumo 1.0s linear 0s 1;
    opacity: 1;
}

@-webkit-keyframes scroll-zuumo {
    0% {
        -webkit-transform: scale(0.8, 1.2) translate(0%, -20%);
    }

    10% {
        -webkit-transform: scale(0.8, 1.2) translate(0%, -15%);
    }

    20% {
        -webkit-transform: scale(1.2, 0.9) translate(0%, 20%);
    }

    30% {
        -webkit-transform: scale(0.9, 1.1) translate(0%, -10%);
    }

    40% {
        -webkit-transform: scale(0.95, 1.2) translate(0%, -20%);
    }

    50% {
        -webkit-transform: scale(0.9, 1.2) translate(0%, -10%);
    }

    60% {
        -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
    }

    70% {
        -webkit-transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    100% {
        -webkit-transform: scale(1.0, 1.0) translate(0%, 0%);
    }
}

@keyframes scroll-zuumo {
    0% {
        transform: scale(0.8, 1.2) translate(0%, -20%);
    }

    10% {
        transform: scale(0.8, 1.2) translate(0%, -15%);
    }

    20% {
        transform: scale(1.2, 0.9) translate(0%, 20%);
    }

    30% {
        transform: scale(0.9, 1.1) translate(0%, -10%);
    }

    40% {
        transform: scale(0.95, 1.2) translate(0%, -20%);
    }

    50% {
        transform: scale(0.9, 1.2) translate(0%, -10%);
    }

    60% {
        transform: scale(1.1, 0.9) translate(0%, 5%);
    }

    70% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    100% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }
}

/*ふきだしふわふわ*/
.bub_anime{
    animation:bub_anime ease-in-out 1.4s infinite alternate;
    -webkit-animation:bub_anime ease-in-out 1.4s infinite alternate;
    -moz-animation:bub_anime ease-in-out 1.4s infinite alternate;
}
@keyframes bub_anime{
    0%   { transform:translate(0%, 0%); }
    100% { transform:translate(0%, -8px); }
}
@-webkit-keyframes bub_anime{
    0%   { -webkit-transform:translate(0%, 0%); }
    100% { -webkit-transform:translate(0%, -8px); }
}

/* 230426 anime docomo01*/
.txtzoom {
    animation: none;
    transform: none;
    transition: unset;
}

.txtzoom.active {
    animation: txtzoom ease-in-out 2.0s;
}

@keyframes txtzoom {
    0% {
        transform: scale(1);
    }

    60% {
        transform: scale(0.8);
    }

    70% {
        transform: scale(0.8);
    }

    80% {
        transform: scale(1.5);
    }

    100% {
        transform: scale(1);
    }
}

@media all and (min-width: 768px) {
    .sp-only {
        display: none !important;
    }

    .zuumo-area {
        max-width: 262px;
    }

    .footerListName::before,
    .footerListName::after {
        display: none;
    }

    .footerListName .doorText {
        font-weight: 400;
        display: inline-block;
        font-size: 1.2rem;
    }
}

@media all and (max-width: 767px) {
    .pc-only {
        display: none !important;
    }
}

.mvdocomo {
    background: url(../img/docomo_new/bg_pattern.jpg) center no-repeat;
    background-color: #15A369;
    background-size: cover;
    min-height: auto;
}

.sisddocomo {
    margin: 0px auto;
    padding: 80px 0px 61px;
    max-width: 942px;
    width: 100%;
    display: flex;
    justify-content: center;
}

.zuumo-area {
    width: 100%;
    transform: translate(38%, 0px);
}

/*.twitter-btn img*/
.questionnaire-btn img {
    margin-top: 8px;
    margin-left: -9px;
    width: 240px;
    transition: all 0.2s;
    display: inline-block;
}

/*.twitter-btn img:hover*/
.questionnaire-btn img:hover {
    opacity: 0.8;
    transform: scale(1.05, 1.06);
}

.mv-img {
    margin-left: 9px;
    margin-top: -32px;
}

.continuations {
    font-size: 32px;
    font-weight: 700;
    color: #fff;
    line-height: 1.4;
    margin-top: -2px;
    margin-left: 8%;
}

.count {
    color: #FFD200;
    font-size: 54px;
    font-weight: 700;
    line-height: 1.2;
    font-family: 'Lato', sans-serif;
    letter-spacing: -0.03em;
}

.month {
    color: #FFD200;
}

.mv-contents {
    margin: 0 auto;
}

.mv-block {
    max-width: 694px;
    text-align: center;
    transform: translate(12%, -10px);
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
}

.docomo-about img {
    margin: 12px auto 25px 14%;
}

.continuation_block {
    position: relative;
    margin: -35px auto 0px;
}

.percent-area {
    display: flex;
    align-items: baseline;
}

.persistence-rate {
    width: 234px;
    height: 74px;
}

.continuation_block::after {
    display: inline-block;
    content: '';
    background: url(../img/docomo_new/goldline.svg) center no-repeat;
    position: absolute;
    width: 756px;
    height: 75px;
    left: 0;
    bottom: 15%;
    background-size: cover;
}

.fluctuating::before {
    display: inline-block;
    content: '';
    background: url(../img/docomo_new/sparkles.svg) center no-repeat;
    position: absolute;
    width: 324px;
    height: 64px;
    top: 20%;
    left: 29%;
    background-size: contain;
}

.fluctuating {
    color: transparent;
    background-image: linear-gradient(80deg, #F3D980 0%, #FFFFFF 60%, #F3D980 100%);
    -webkit-background-clip: text;
    font-size: 210px;
    font-family: 'Lato', sans-serif;
    line-height: 1.276;
    -webkit-text-stroke: 2px #D1D19A;
    text-stroke: 2px #D1D19A;
    letter-spacing: -0.03em;
}

.barometer {
    width: 235px;
    height: 74px;
    transform: translate(-22px, 0px);
}

.most-recent {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    text-align: right;
    line-height: 1.458;
    margin-top: -4.5%;
    letter-spacing: 0.02em;
}

.current {
    font-size: 16px;
}

.about-docomo {
    background-color: #CCE4BC;
    padding-bottom: 160px;
}

.about-docomoInner {
    width: 100%;
    /* max-width: 536px; */
    margin: 0px auto 0;
    position: relative;
    text-align: center;
}

.about-docomoDesc {
    margin: 23px auto 24px;
    font-size: 24px;
    font-weight: 900;
    color: #333333;
    text-align: center;
}

.docomoTitle img {
    margin-top: -57px;
    max-width: 510px;
}

.opticalline,
.connection,
.oneservice {
    font-size: 40px;
    line-height: 1.5;
}

.opticalline {
    color: var(--red-span);
}

.connection {
    color: var(--green-text);
}

.venndiagram-Area {
    margin: 16px auto 22px;
    text-align: center;
}

.inside-area {
    margin: 0 auto;
    display: inline-block;
}

.c-type {
    font-size: 20px;
}

.type-block {
    margin: 0 auto;
}

.type-item {
    background-color: #fff;
    padding: 5px 38px 3px;
    text-align: center;
    letter-spacing: 0.04em;
}

.type-item:first-child {
    border-right: 1px solid #CCE4BC;
    border-left: 1px solid #fff;
}

.type-item:last-child {
    border-right: 1px solid #fff;
}

.type-monthly {
    padding: 7px 14px 6px 13px;
    border: 1px solid #fff;
    font-weight: 700;
}

.cost {
    color: var(--red-span);
    font-size: 34px;
}

.spec-desc {
    margin: 28px auto 21px;
    max-width: 536px;
}

.ipv6-area {
    margin-bottom: 19px;
}

.gbps {
    margin-bottom: 21px;
}

/* おすすめポイント */
.sec_docomowise {
    padding: 72px 0px 50px;
    margin-top: -80px;
    border-radius: 100px 100px 0 0;
    position: relative;
}

.sec_docomowise::after {
    content: '';
    display: inline-block;
    background: url(../img/docomo_new/silhouette_city.svg) bottom no-repeat;
    width: 100%;
    max-width: 100%;
    height: 62px;
    bottom: 0;
    left: 0;
    position: absolute;
    background-size: cover;
}

.docomowiseInner {
    max-width: 1062px;
}

.docomowise-point-area img {
    max-width: 168px;
}

.docomowiseTitle {
    font-size: 48px;
    line-height: 1.458;
    font-weight: 700;
    text-align: center;
    margin-top: 9px;
}

.heading-docomowise-en {
    font-size: 18px;
    display: block;
    margin-top: 5px;
    line-height: 1.44;
    font-weight: 900;
}

.pointList {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 33px;
    position: relative;
}

.pointItem {
    width: calc(49% - 48px);
    margin-right: 48px;
    margin-bottom: 69px;
}

.pointDesc-area {
    border: 4px solid #EAEAEA;
    border-radius: 31px;
    padding: 40px 0px 41px;
    background-color: #fff;
    margin-top: 15px;
    position: relative;
    max-width: 472px;
}

.variable01,
.variable02,
.variable03,
.variable04 {
    position: absolute;
    z-index: 1;
}

.variable01 {
    width: 94px;
    height: 142px;
    top: 21%;
    left: 2px;
}

.variable03 {
    width: 95px;
    height: 134px;
    bottom: 8%;
    left: -1px;
}

.variable02 {
    width: 101px;
    height: 141px;
    top: 21%;
    right: -2px;
}

.variable04 {
    width: 74px;
    height: 142px;
    bottom: 8%;
    right: 6px;
}

.variable01::before,
.variable03::before {
    display: inline-block;
    content: '';
    z-index: 1;
}

.variable01::before {
    background: url(../img/docomo_new/illust/icon-dlist01.png) center no-repeat;
    width: 94px;
    height: 142px;
    background-size: contain;
}

.variable03::before {
    background: url(../img/docomo_new/illust/icon-dlist03.png) center no-repeat;
    width: 95px;
    height: 134px;
    background-size: contain;
}

.variable02::after,
.variable04::after {
    display: inline-block;
    content: '';
    z-index: 1;
}

.variable02::after {
    background: url(../img/docomo_new/illust/icon-dlist02.png) center no-repeat;
    width: 101px;
    height: 141px;
    background-size: contain;
}

.variable04::after {
    background: url(../img/docomo_new/illust/icon-dlist04.png) center no-repeat;
    width: 74px;
    height: 142px;
    background-size: contain;
}

.item03 {
    padding: 59px 0px 58px;
}

.item04 {
    padding: 40px 0px 30px;
}

.pointItem:nth-child(2n) {
    margin-right: 0px;
}

.pointDesc-title {
    color: var(--red-span);
    font-size: 32px;
    font-weight: 900;
    line-height: 1.375;
    z-index: 2;
    position: relative;
}

.dver-btn {
    margin-top: 25px;
}

.dver-btn a {
    width: 300px;
    padding: 20px 0;
    line-height: 1.5;
}

.dver-btn a::before {
    top: 27px;
    right: 40px;
}

.window-wrap {
    margin: 0 auto;
    max-width: 300px;
    width: 100%;
    text-align: left;
}

.window-area {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.45;
    margin-top: 20px;
    width: 100%;
}

.annotation {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.05em;
}

.c-btn--r {
    margin: 33px auto 80px;
}

.c-btn--r img {
    text-align: center;
    max-width: 185px;
    display: block;
    margin: 0 auto;
}

.c-btn--r a {
    width: 556px;
    background-color: #CF0F31;
    box-shadow: 0px 4px #AA2D0E;
    border-radius: 69px;
    padding: 25px 0px 29px;
    font-size: 32px;
    font-weight: 900;
    border: 4px solid #AA2D0E;
}

.c-btn--r a::before {
    top: 56px;
    right: 54px;
    width: 12px;
    height: 20px;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
      sec_news(新着情報)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */
.sec_news {
    background: url(/assets/speedia/img/sec_news/img-newsBG.svg) center repeat;
    background-size: cover;
    padding: 86px 0 120px 0;
    border-bottom: 1px solid #eaeaea;
}

.c-TitleIcon {
    text-align: center;
}

.c-TitleIcon.u-mini {
    font-size: 1.6rem;
    font-weight: bold;
}

.c-TitleIcon.u-big {
    margin-top: 80px;
    margin-bottom: 48px;
}

.c-TitleIcon.common_mg {
    margin-top: 0;
    margin-bottom: 48px;
}

.c-TitleIcon .TitleIcon-en {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    color: #44831c;
}

.c-TitleIcon .TitleIcon-en::before {
    content: "";
    display: inline-block;
    margin-right: 16px;
    width: 23px;
    height: 12px;
    background: url(../../speedia/img/icon-title_left.svg) left center no-repeat;
}

.c-TitleIcon .TitleIcon-en::after {
    content: "";
    display: inline-block;
    margin-left: 16px;
    width: 23px;
    height: 12px;
    background: url(../../speedia/img/icon-title_right.svg) right center no-repeat;
}

.c-TitleIcon .TitleIcon-ja {
    display: block;
    font-weight: 700;
}

.c-TitleIcon.u-mini .TitleIcon-ja {
    font-size: 1.8rem;
}

.c-TitleIcon.u-big .TitleIcon-ja {
    font-size: 3.2rem;
}

.newsInner {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}

.newsTitle {
    margin-bottom: 62px;
}

.newsListItem {
    border-bottom: 1px solid #707070;
}

.newsListItem>.ListItemInner {
    position: relative;
    padding: 16px 85px 16px 20px;
}

.ListItemInner::before {
    content: "";
    display: inline-flex;
    position: absolute;
    top: 50%;
    right: 35px;
    transform: translate(0, -50%);
    background: url(/assets/speedia/img/sec_news/icon-newsArrow.svg) center no-repeat;
    background-size: contain;
    width: 9px;
    height: 13px;
    transition: right 0.2s;
}

#docomo01 .ListItemInner>.date {
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 2;
    margin-right: 10px;
    border: none;
    padding: 0;
}

#docomo01 .ListItemInner>.date::before {
    content: none;
    width: 0;
    height: 0;
}

.ListItemInner>.service {
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 2;
    color: #56a520;
    padding: 3px 8px;
    border-left: 4px double #56a520;
    border-right: 4px double #56a520;
}

.ListItemInner>.service.dcm {
    color: #cc0033;
    border-left: 4px double #cc0033;
    border-right: 4px double #cc0033;
}

.ListItemInner>.service.hikari {
    color: #f9be00;
    border-left: 4px double #f9be00;
    border-right: 4px double #f9be00;
}

.newsListItem>.ListItemInner:hover::before {
    right: 28px;
}

.newsListItem:last-of-type {
    margin-bottom: 70px;
}

.newsListText {
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.75;
    text-align: left;
    padding-top: 7px;
}

.c-btn--r a:hover {
    background-color: #8D280F;
}

#docomo01 .c-btn--n a {
    width: 302px;
    padding: 16px 0;
}

#docomo01 .c-btn--n a::before {
    top: 23px;
}

@media all and (max-width: 767px) {
    #docomo01 .c-btn--n a {
        max-width: 302px;
        width: 90%;
    }

    .sec_news {
        padding: 80px 0;
    }

    .newsInner {
        width: 87%;
        margin: 0 auto;
    }
}

@media all and (min-width: 1200px) and (max-width: 1300px) {
    .mv-img {
        margin-left: 20px;
    }

    .zuumo-area {
        max-width: 262px;
        width: 70%;
        transform: translate(45%, -5px);
    }
}

@media all and (min-width: 1100px) and (max-width: 1199px) {

    /*.twitter-btn*/
    .questionnaire-btn {
        width: 90%;
    }

    .zuumo-area {
        max-width: 240px;
        transform: translate(38%, 2vw);
    }

    .mv-img img {
        width: 240px;
        margin-left: 0;
    }

    .variable01,
    .variable01::before {
        width: 8.724vw;
        height: 13.021vw;
        left: 0;
    }

    .variable02,
    .variable02::after {
        width: 9.36vw;
        height: 13.09vw;
        right: 0;
    }

    .variable03,
    .variable03::before {
        width: 8.7vw;
        height: 12.44vw;
        left: 0;
    }

    .variable04,
    .variable04::after {
        width: 6.84vw;
        height: 13.17vw;
        right: 0;
    }
}

@media all and (min-width: 1001px) and (max-width: 1099px) {
    .mv-block {
        max-width: 694px;
        transform: translate(10%, 0px);
    }

    .zuumo-area {
        transform: translate(19%, 15%);
    }

    .continuation_block::after {
        width: 750px;
    }

    .fluctuating {
        padding-left: 6px;
    }

    .fluctuating::before {
        width: 30vw;
        left: 35%;
    }

    .pointItem {
        width: calc(50% - 60px);
        margin-right: 30px;
    }

    /*.twitter-btn a*/
    .questionnaire-btn a {
        width: 100%;
    }

    /*.twitter-btn img*/
    .questionnaire-btn img {
        margin-top: -12%;
        width: 86%;
        margin-left: 8%;
    }

    .zuumo-ani img {
        margin-left: 15%;
        margin-top: 6%;
        width: 86%;
    }

    .variable01,
    .variable01::before {
        width: 8.724vw;
        height: 13.021vw;
        left: 10px;
    }

    .variable02,
    .variable02::after {
        width: 9.36vw;
        height: 13.09vw;
        right: 10px;
    }

    .variable03,
    .variable03::before {
        width: 8.7vw;
        height: 12.44vw;
        left: 10px;
    }

    .variable04,
    .variable04::after {
        width: 6.84vw;
        height: 13.17vw;
        right: 10px;
    }
}

@media all and (min-width: 951px) and (max-width: 1000px) {
    .zuumo-ani img {
        margin-left: 8%;
        margin-top: 8%;
        width: 87%;
    }
}

@media all and (min-width: 768px) and (max-width: 950px) {
    .zuumo-ani img {
        margin-left: 8%;
        margin-top: 10%;
        width: 76%;
    }
}

@media all and (min-width: 768px) and (max-width: 1000px) {
    .mv-block {
        transform: translate(-1%, 0px);
    }

    .continuations {
        font-size: 3.2vw;
        margin-left: 0px;
    }

    .continuation_block {
        margin: -15px auto 0px;
    }

    .sisddocomo {
        max-width: 100%;
        padding: 80px 0px 60px;
    }

    .docomo-about img {
        margin-bottom: 20px;
    }

    /*.twitter-btn a*/
    .questionnaire-btn a {
        width: 90%;
    }

    /*.twitter-btn img*/
    .questionnaire-btn img {
        margin-top: -12%;
        width: 80%;
        margin-left: 8%;
    }

    .count {
        font-size: 5.4vw;
    }

    .persistence-rate {
        width: 20vw;
        transform: translate(0px, 10px);
    }

    .fluctuating {
        font-size: 16vw;
        padding-left: 0px;
        margin-left: -5px;
        padding-right: 5px;
    }

    .fluctuating::before {
        width: 26vw;
        top: 17%;
        left: 30%;
    }

    .continuation_block::after {
        width: 66vw;
        height: 75px;
        bottom: 13%;
        background-size: contain;
        background-position: left;
    }

    .most-recent {
        margin-top: -10px;
        font-size: 21px;
    }

    .pointItem {
        width: calc(46% - 20px);
        margin-right: 20px;
        margin-bottom: 30px;
    }

    .pointDesc-title {
        font-size: 28px;
    }

    .variable01,
    .variable01::before {
        width: 8.724vw;
        height: 13.021vw;
        top: 31%;
        left: 0.8%;
    }

    .variable02,
    .variable02::after {
        width: 9.36vw;
        height: 13.09vw;
        top: 31%;
        right: 0.8%;
    }

    .variable03,
    .variable03::before {
        width: 8.7vw;
        height: 12.44vw;
        bottom: 3.5%;
        left: 0.8%;
    }

    .variable04,
    .variable04::after {
        width: 6.84vw;
        height: 13.17vw;
        bottom: 3.5%;
        right: 0.8%;
    }

    .dver-btn a {
        width: 260px;
    }
}

@media screen and (min-width: 901px) and (max-width: 1000px) {
    .barometer {
        width: 21vw;
        transform: translate(-3vw, 10px);
    }
}

@media screen and (min-width: 768px) and (max-width: 900px) {
    .barometer {
        width: 20vw;
        transform: translate(-2vw, 0px);
        height: inherit;
    }
}

@media screen and (min-width: 781px) and (max-width: 1000px) {
    .zuumo-area {
        width: 80%;
        transform: translate(1vw, 0vw);
        margin-top: 40px;
    }
}

@media screen and (min-width: 768px) and (max-width: 780px) {
    .zuumo-area {
        transform: translate(2vw, 1vw);
    }
}

@media screen and (max-width: 767px) {
    .newsTitle {
        margin-bottom: 40px;
    }

    .c-TitleIcon.u-big .TitleIcon-ja {
        font-size: 2.4rem;
    }

    .Copy small {
        display: block;
        width: 87%;
        margin: 0 auto;
        font-size: 1rem;
    }

    .mvdocomo {
        background: url(../img/docomo_new/bg_pattern-sp.jpg) 50% 0% no-repeat;
        width: 100%;
        background-size: cover;
    }

    .sisddocomo {
        margin: 0px auto;
        padding: 42px 0px 6px;
        max-width: 100%;
        display: block;
    }

    /*.twitter-btn*/
    .questionnaire-btn {
        margin-top: 2px;
        width: 210px;
        margin-right: 0px;
    }

    /*.twitter-btn a*/
    .questionnaire-btn a {
        width: 210px;
    }

    .zuumo-area {
        max-width: 330px;
        width: 100%;
        transform: translate(0, 0);
        margin: 0 auto;
    }

    .percent-area {
        display: flex;
        align-items: baseline;
        justify-content: center;
    }

    .mv-img {
        margin-left: 23%;
        margin-top: -36px;
    }

    .continuations {
        font-size: 17px;
        margin-top: 1px;
        white-space: nowrap;
        margin-left: 0px;
    }

    .count {
        font-size: 26px;
        line-height: 1.2;
    }

    .mv-contents {
        margin: 0 auto;
    }

    .mv-block {
        width: 88vw;
        transform: translate(0, 0);
    }

    .docomo-about img {
        margin: 0 auto 24px;
        width: 74.2%;
    }

    .continuation_block {
        margin: -23px auto 0px;
    }

    .persistence-rate {
        width: 30%;
        transform: translate(0, 7px);
        height: inherit;
    }

    .continuation_block::after {
        display: inline-block;
        content: '';
        background: url(../img/docomo_new/goldline.svg) center no-repeat;
        position: absolute;
        width: 91vw;
        height: 100%;
        left: 0px;
        bottom: -19%;
        background-size: contain;
    }

    .fluctuating::before {
        width: 67%;
        height: 20%;
        top: 28%;
        left: 20%;
        background-size: contain;
    }

    .fluctuating {
        font-size: 105px;
        padding-left: 0px;
    }

    .barometer {
        width: 30%;
        transform: translate(-15px, 7px);
        height: inherit;
    }

    .most-recent {
        color: #fff;
        font-size: 18px;
        font-weight: 700;
        text-align: left;
        line-height: 1.417;
        margin-top: -11px;
        width: 100%;
        display: block;
        letter-spacing: -0.01em;
    }

    .current {
        font-size: 12px;
        margin-right: -4px;
        letter-spacing: -0.01em;
        white-space: nowrap;
    }

    .about-docomoInner {
        width: 100%;
        margin: 0px auto -24px;
        position: relative;
        text-align: center;
        background: #CCE4BC;
    }

    .docomoTitle img {
        margin: -36px auto 0px;
        max-width: 342px;
        width: 90.2vw;
    }

    .about-docomoDesc {
        margin: 23px auto 14px;
        font-size: 16px;
    }

    .opticalline,
    .connection,
    .oneservice {
        font-size: 24px;
        line-height: 1.667;
    }

    .venndiagram-Area {
        margin: 17px auto 24px;
        width: 92.5%;
    }

    .inside-area {
        margin: 0 auto;
        display: inline-block;
    }

    .c-type {
        text-align: left;
        font-size: 14px;
    }

    .type-block {
        margin: 0 auto;
        width: 87.4%;
    }

    .type-item {
        padding: 5px 0px 5px;
        text-align: center;
    }


    .type-monthly {
        padding: 8px 0px 13px;
        border: 1px solid #fff;
        font-weight: 700;
        font-size: 12px;
        text-align: center;
    }

    .cost {
        color: var(--red-span);
        font-size: 26px;
        line-height: 1.077;
    }

    .about-docomo {
        padding-bottom: 130px;
    }

    .spec-desc {
        margin: 27px auto 20px;
        padding-bottom: 10px;
    }

    .ipv6-area {
        margin-bottom: 20px;
        width: 50%;
    }

    .gbps {
        width: 72.3%;
    }

    /* おすすめポイント */
    .sec_docomowise {
        padding: 30px 0px 45px;
        margin-top: -50px;
        border-radius: 60px 60px 0 0;
    }

    .sec_docomowise::after {
        content: '';
        display: inline-block;
        background: url(../img/docomo_new/silhouette_city.svg) bottom no-repeat;
        width: 100%;
        max-width: 100%;
        height: 62px;
        bottom: 0;
        left: 0;
        position: absolute;
        background-size: cover;
    }

    .docomowiseInner {
        width: 87.5%;
    }

    .docomowise-point-area img {
        width: 24vw;
    }

    .docomowiseTitle {
        font-size: 32px;
        line-height: 1.438;
        font-weight: 700;
        text-align: center;
        margin-top: 2px;
    }

    .heading-docomowise-en {
        font-size: 16px;
        display: block;
        margin-top: 6px;
        line-height: 1.5;
    }

    .pointList {
        max-width: 329px;
        width: 100%;
        margin: 38px auto 0;
    }

    .pointItem {
        max-width: 329px;
        width: 100%;
        margin-bottom: 25px;
        margin-right: 0px;
    }

    .pointItem img {
        width: 24.27vw;
    }

    .l-number {
        margin-left: 20%;
    }

    .r-number {
        margin-right: 20%;
    }

    .pointDesc-area {
        border-radius: 31px;
        padding: 24px 0px 31px;
        margin-top: 12px;
        position: relative;
        max-width: 264px;
    }

    .item01,
    .item03 {
        margin-right: 0px;
        margin-left: auto;
    }

    .variable01,
    .variable02,
    .variable03,
    .variable04 {
        position: absolute;
        z-index: 1;
    }

    .variable01::before,
    .variable02::after,
    .variable03::before,
    .variable04::after {
        position: absolute;
    }

    .variable01,
    .variable01::before {
        width: 83px;
        height: 126px;
        top: 4.7%;
        left: 0;
    }

    .variable01::before {
        background: url(../img/docomo_new/illust/icon-dlist01.png) center no-repeat;
        background-size: contain;
    }

    .variable03,
    .variable03::before {
        width: 84px;
        height: 119px;
        left: 0;
        bottom: 30.7%;
    }

    .variable03::before {
        background: url(../img/docomo_new/illust/icon-dlist03.png) center no-repeat;
        background-size: contain;
    }

    .item02,
    .item04 {
        margin-right: auto;
        margin-left: 0;
    }

    .variable02,
    .variable02::after {
        width: 89px;
        height: 125px;
        top: 25.2%;
        right: 0;
    }

    .variable02::after {
        background: url(../img/docomo_new/illust/icon-dlist02.png) center no-repeat;
        background-size: contain;
    }

    .variable04,
    .variable04::after {
        width: 66px;
        height: 127px;
        bottom: 6.3%;
        right: 1%;
    }

    .variable04::after {
        background: url(../img/docomo_new/illust/icon-dlist04.png) center no-repeat;
        background-size: contain;
    }

    .item03 {
        padding: 24px 0px 31px;
        margin-top: 9px;
    }

    .item04 {
        padding: 22px 0px 20px;
        margin-top: 16px;
    }

    .pointItem:nth-child(2n) {
        margin-right: 0px;
    }

    .pointDesc-title {
        color: var(--red-span);
        font-size: 24px;
        line-height: 1.33;
        text-align: center;
    }

    .dver-btn {
        margin-top: 18px;
    }

    .dver-btn a {
        width: 146px;
        padding: 6px 0;
        line-height: 1.5;
        font-size: 12px;
    }

    .dver-btn a::before {
        top: 41.6%;
        right: 20px;
        width: 3px;
        height: 5px;
    }

    .window-wrap {
        margin: 0 auto;
        max-width: 300px;
        width: 100%;
        text-align: left;
    }

    .window-area {
        font-size: 14px;
        line-height: 2;
        margin-top: 11px;
        padding-left: 24px;
    }

    .annotation {
        margin-top: 5px;
        font-size: 12px;
        padding-left: 24px;
    }

    .c-btn--r {
        margin: 14px auto 55px;
    }

    .c-btn--r img {
        width: 47.5%;
        display: block;
        margin: 0 auto 7px;
    }

    .c-btn--r a {
        width: 100%;
        border-radius: 69px;
        padding: 22px 0px 20px;
        font-size: 18px;
    }

    .c-btn--r a::before {
        top: 41.5%;
        right: 8.5%;
        width: 8px;
        height: 14px;
    }

    @keyframes txtzoom {
        0% {
            transform: scale(1);
        }

        60% {
            transform: scale(0.7);
        }

        70% {
            transform: scale(0.7);
        }

        80% {
            transform: scale(1.3);
        }

        100% {
            transform: scale(1);
        }
    }

}

@media all and (max-width: 350px) {
    .fluctuating {
        font-size: 28vw;
    }

    .count {
        font-size: 21px;
    }

    .continuations {
        font-size: 15px;
    }

    .most-recent {
        font-size: 16px;
    }

    /*.twitter-btn img*/
    .questionnaire-btn img {
        margin-top: 5px;
        width: 56vw;
        margin-right: 0px;
    }

    .zuumo-ani img {
        width: 69.3vw;
    }

    .opticalline,
    .connection,
    .oneservice {
        font-size: 21px;
    }

    .cost {
        font-size: 21px;
    }

    .docomowiseTitle {
        font-size: 28px;
    }

    .pointDesc-title {
        font-size: 21px;
    }

    .variable01,
    .variable01::before {
        width: 22.1vw;
        height: 33.6vw;
        top: 10%;
        left: -3%;
    }

    .variable02,
    .variable02::after {
        width: 23.7vw;
        height: 33.3vw;
        right: -3%;
    }

    .variable03,
    .variable03::before {
        width: 22.4vw;
        height: 31.73vw;
        bottom: 30%;
        left: -3%;
    }

    .variable04,
    .variable04::after {
        width: 17.6vw;
        height: 33.86vw;
        right: -3%;
        bottom: 2.5%;
    }

    .window-area {
        line-height: 1.8;
        margin-top: 8px;
        padding-left: 20px;
    }
}