@charset "UTF-8";

.device-detail .box-link-area {
    text-align: center;
    padding-top: 1rem;
}

.device-detail a.box-link {
    text-decoration: none;
    color: #337ab7;
    margin: 0 auto 5px;
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    background-repeat: no-repeat;
    background-position: 4px;
    padding-left: 26px;
    background-image: url(/device/popup_include/img/ar-icon_b.png);
    cursor: pointer;
    background-size: 16px;
}

.pagetop_title {
    margin: 0px auto;
    padding: 0 0 30px 0;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 2px;
    text-align: center;
    font-weight: bold;
}

#device2_main,
.special-price {
    display: none;
}

#device-selector .row {
    justify-content: flex-start;
}

.submit_close_btn {
    background: rgb(153, 153, 153);
    background: -moz-linear-gradient(left, rgba(153, 153, 153, 1) 0%, rgba(102, 102, 102, 1) 100%);
    background: -webkit-linear-gradient(left, rgba(153, 153, 153, 1) 0%, rgba(102, 102, 102, 1) 100%);
    background: linear-gradient(to right, rgba(153, 153, 153, 1) 0%, rgba(102, 102, 102, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#999999', endColorstr='#666666', GradientType=1);
    width: 715px;
    height: 106px;
    margin: 0 auto 1rem;
    padding: 2.5rem 2rem 2rem;
    border-radius: 4px;
    font-size: 3rem;
    letter-spacing: 2px;
    color: #FFF;
    font-weight: bold;
    text-align: center;
    border: 2px solid #AAA;
    cursor: pointer;
    user-select: none;
    box-sizing: border-box;
}

.page_title h1 {
    margin: 20px 0;
}

@media screen and (min-width: 641px) {
    .pagetop_title {
        background: url(/campaign/device/gigapctab202212/img/main.png) top center no-repeat;
        height: 350px;
    }
}

@media screen and (max-width: 640px) {
    .submit_close_btn {
        width: 95%;
        height: auto;
        font-size: 4vw;
        padding: 1rem;
    }

    .pagetop_title {
        width: 100%;
        padding: 0px 0 30px 0;
    }
}

.pastGift a {
    display: block;
    color: red;
    border: 1px solid red;
    padding: 10px;
    text-align: center;
    letter-spacing: 1px;
    margin: 20px auto;
    width: 960px;
    box-sizing: border-box;
}

.mainArea .gaiyo_link_unker {
    text-align: center;
}

.mainArea .gaiyo_link_unker .link_gaiyo {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #3e5fab;
    text-decoration: underline;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

.mainArea .gaiyo_link_unker .link_gaiyo:before {
    content: url(/campaign/device/img/oppo201907/icon_blue.png);
    margin: 10px;
    top: 8px;
}

.deviceItem-apt-btn2.apt-btn-gray {
    font-size: 24px;
    background: #999;
    background: -webkit-gradient(linear,left top,right top,from(#999),to(#666));
    background: linear-gradient(90deg,#999 0,#666);
    cursor: not-allowed;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

}

@media screen and (max-width: 640px) {
    .pastGift a {
        margin: 10px auto 0;
        width: 95%;
        font-size: 3.5vw;
    }
}

/* 端末一覧 */
/*.deviceListItem {
    margin-top: .5rem;
    margin-bottom: .5rem
}

#entry .deviceList-scbox-input-sort {
    max-width: 11em
}

.deviceList {
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
    padding-top: 1rem
}

.deviceList-scbox {
    padding: .7rem 1rem;
    background: #fcfcfc;
    margin-top: 1.5rem;
    border-top: 1px solid #e5e5e5
}

.deviceList-scbox .form-inline {
    justify-content: space-around;
    display: flex
}

.deviceList-scbox .form-group {
    padding: 0;
    text-align: right
}

.deviceList-scbox .form-sort {
    width: 30%;
    margin-left: 1rem
}

.deviceList-scbox .form-change {
    min-width: 15rem
}

.deviceList-scbox .fil {
    margin: 0 5px;
    border-radius: .5rem
}

.deviceList-scbox input {
    box-shadow: inset 1px 1px 1px 1px rgba(0, 0, 0, .1);
    font-size: 1.3rem
}

.deviceList-scbox label {
    display: inline;
    margin: 0 .5rem;
    font-size: 1.2rem;
    font-weight: 400
}

.deviceList-scbox-input-sort {
    min-height: 2.5em;
    box-shadow: 2px 2px 3px #e0e0e0;
    border-radius: .5rem
}

.deviceList-scbox .btn-default.active,
.deviceList-scbox .btn-default:active,
.deviceList-scbox .open>.btn-default.dropdown-toggle {
    color: #fff;
    background-color: #6084ce;
    border-color: #adadad
}

.deviceList-box {
    display: flex;
    background: #f5f5f5;
    margin-bottom: 1rem
}

.deviceList-box-title {
    background: #e5e5e5;
    width: 7em
}

.deviceList-box-head,
.deviceList-box-title {
    align-items: center;
    display: flex;
    font-weight: 700;
    justify-content: center
}

.deviceList-box-head {
    min-width: 7em;
    margin-bottom: 0;
    padding: .8rem
}

.deviceList-box-body {
    width: 100%
}

.deviceList-box-body>.deviceList-box-flex {
    border-bottom: 1px dotted #e5e5e5
}

.deviceList-box-select {
    padding: .8rem
}

.deviceList-box-item {
    padding-right: 2rem
}

.deviceList-box-chkbtn {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 1px solid #aaa;
    background: #fff;
    margin-right: .3rem;
    vertical-align: middle;
    border-radius: 3px;
    position: relative
}

.deviceList-box-chkbtn:after {
    content: "";
    position: absolute;
    width: 9px;
    height: 5px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-48deg);
    top: 2px;
    left: 2px
}

.deviceList-box-flex {
    display: flex;
    text-align: left
}

.deviceList-box input {
    display: none
}

.deviceList-box input:checked+.deviceList-box-chkbtn {
    background: #337ab7;
    border: 1px solid #337ab7
}

.deviceList-box label {
    margin: .2rem 0;
    font-weight: 400;
    cursor: pointer
}

.deviceList-box label:hover {
    color: #337ab7
}

.dlt-question {
    display: inline-flex;
    position: relative;
    border: 1px solid #999;
    border-radius: 50%;
    width: 12px;
    height: 12px;
    align-items: center;
    justify-content: center;
    background: #fff;
    cursor: pointer
}

.dlt-question:hover .dlt-question-box {
    display: block;
    position: absolute;
    top: 1em;
    left: 0;
    width: 220px;
    min-height: 4rem;
    background: hsla(0, 0%, 100%, .9);
    line-height: 1.2;
    color: #000;
    padding: .5rem;
    border: 1px solid #999;
    text-align: left;
    z-index: 11
}

.dlt-question:hover .dlt-question-box h5 {
    font-weight: 700
}

.dlt-question-btn {
    font-weight: 700;
    color: #777;
    font-family: Franklin Gothic Medium;
    font-size: 12px;
    position: absolute;
    top: -2px;
    left: 0
}

.dlt-question-box {
    display: none
}

.dlt-sortbtn {
    border: 1px solid #e80588;
    background: #fff;
    border-radius: 4px;
    padding: 2px 2px 1px;
    margin: 0 4px 4px;
    font-size: 9px;
    color: #e64d97
}

.dlt-sortbtn:hover {
    color: #fff;
    background: #e64d97
}

input:checked+.dlt-sortbtn {
    color: #fff;
    background: #e80588
}*/

.-before-price {
    font-size: 0.8em;
    text-decoration: line-through;
}

@media screen and (min-width:641px) {
    .dlt {
        table-layout: fixed
    }

    .device-detail-payment .-price .-flex .-num.red {
        line-height: 1;
    }
}

@media screen and (max-width:640px) {
/*.deviceList-scbox {
        padding: 0 1rem;
        background: #f3f3f3
    }

    .deviceList-scbox .form-inline {
        display: flex;
        flex-wrap: wrap
    }

    .deviceList-scbox .form-group {
        display: flex;
        align-items: center;
        flex-wrap: wrap
    }

    .deviceList-scbox .form-group input[type=text] {
        margin: 1rem 0
    }

    .deviceList-scbox .form-group .btn {
        margin: 0 .5rem
    }

    .deviceList-scbox .form-group .btn-group .btn {
        margin: 0
    }

    .deviceList-scbox .form-group label {
        margin: 0 .5rem 0 1rem
    }

    .deviceList-scbox .form-sort {
        width: 46%;
        margin-left: 0
    }

    .deviceList-scbox-input-sort {
        min-height: 2.4em
    }

    .deviceList-box {
        display: block;
        position: relative;
        padding-bottom: 1rem
    }

    .deviceList-box-title {
        width: 90%;
        height: 2.5em;
        border-radius: 6px;
        margin: 0 auto;
        background: linear-gradient(180deg, #eff4ff 0, #f6f9ff);
        color: #6084ce !important;
        letter-spacing: .1em;
        box-shadow: 2px 2px 3px #e0e0e0;
        transition-duration: .1s;
        border: 1px solid #6084ce;
        position: relative
    }

    .deviceList-box-title:after {
        content: "";
        position: absolute;
        right: 14px;
        top: 5px;
        width: 16px;
        height: 16px;
        border-bottom: 4px solid #6084ce;
        border-left: 4px solid #6084ce;
        transform: rotate(315deg);
        transition-duration: .3s
    }

    .deviceList-box-head {
        display: block;
        background: #ddd
    }

    .deviceList-box-body {
        padding-bottom: .1rem
    }

    .deviceList-box-body>.deviceList-box-flex {
        border: 1px solid #e5e5e5
    }

    .deviceList-box-flex {
        display: block;
        margin: .5rem;
        background: #fff
    }

    .deviceList-box-select {
        margin: 0;
        padding: 0;
        justify-content: space-between;
        display: flex
    }

    .deviceList-box-select>label {
        margin: 0;
        width: 49.8%;
        padding: 1rem;
        border-right: 1px solid #ededed;
        border-bottom: 1px solid #ededed;
        text-indent: -20px;
        padding-left: 25px
    }

    input[type=checkbox]:checked+.deviceList-box-title {
        margin-bottom: 0
    }

    input[type=checkbox]:checked+.deviceList-box-title:after {
        top: 10px;
        transform: rotate(135deg) translate(4px, -2px)
    }

    #entry .deviceList-scbox-input-sort {
        max-width: 100%
    }*/

    .-flex-2col {
        width: 50%;
        box-sizing: border-box;
    }

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

    .-before-price {
        font-size: 0.7em;
        margin-right: 5px;
    }
}

/*@media (min-width:768px) {
    .form-control.col-sm-5 {
        width: 41.66667%
    }

    .deviceList .deviceList-scbox .form-control.col-sm-7,
    .form-control.col-sm-7 {
        width: 58.33333%
    }
    }

    @media screen and (max-width:640px) {
    .deviceList .row {
        margin: 0
    }
    }

    @media (-ms-high-contrast:none) {

    .deviceList-scbox .form-change,
    ::-ms-backdrop {
        min-width: 20rem
    }

    .dlt-question-btn,
    ::-ms-backdrop {
        top: -4px;
        left: -3px
    }
    }

    @-moz-document url-prefix() {
    .dlt-question-btn {
        left: -2px
    }
    }

    .device-modal {
    padding: 10px
    }

    .device-modal .popup_point_title {
    width: 70%
    }

    .device-modal-header {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    flex-wrap: wrap
    }

    .device-modal-header-img {
    padding: 0 5rem
    }

    .device-modal-header-catch {
    font-size: 1.5rem;
    letter-spacing: 1px;
    min-height: 4em;
    line-height: 1.4
    }

    .device-modal-header-brand {
    font-size: 2.4rem;
    letter-spacing: 5px;
    margin-bottom: 0
    }

    .device-modal-features {
    display: flex;
    justify-content: space-around;
    padding-bottom: 2rem;
    text-align: center
    }

    .device-modal-features-img {
    width: 100%
    }

    .device-modal-features section {
    width: 33%;
    padding: 0 5px 5px;
    font-size: 1.1rem;
    margin: 16px 0;
    border-right: 1px solid #eee
    }

    .device-modal-features section:last-child {
    border-right: none
    }

    .device-modal-features section p {
    min-height: 5em;
    display: block;
    line-height: 1.8;
    margin: 1.2rem 0;
    text-align: left
    }

    .device-modal-spec {
    text-align: left
    }

    .device-modal-spec table {
    table-layout: fixed;
    width: 100%
    }

    .device-modal-spec table tr {
    border-bottom: 1px solid #ccc
    }

    .device-modal-spec table tr:first-child {
    border-top: 1px solid #ccc
    }

    .device-modal-spec table th {
    width: 6em;
    padding: .5rem;
    vertical-align: middle;
    background: #efefef
    }

    .device-modal-spec table td {
    padding: .5rem;
    text-align: left
    }

    .device-modal-spec-annotation {
    font-size: .8rem
    }

    .device-modal-footer {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700
    }

    .device-modal-footer .btn-close {
    width: 40%
    }

    .close-ber {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, .8);
    color: #fff;
    padding: 2rem;
    z-index: 10;
    user-select: none;
    cursor: pointer
    }

    .close-ber-btn {
    text-align: center
    }

    @media screen and (min-width:641px) {
    .modal-dialog {
        margin: 30px auto 80px
    }

    .device-modal {
        padding: 15px
    }

    .device-modal .popup_point_title {
        width: auto
    }

    .device-modal-spec {
        width: 50%
    }

    .device-modal-features section {
        padding: 0 20px 20px
    }
    }

    @media screen and (max-width:640px) {
    .modal-dialog {
        margin: 30px auto 80px
    }

    .device-modal-header-catch {
        font-size: 2rem
    }

    .device-modal-features {
        display: block
    }

    .device-modal-features section {
        width: 100%;
        margin: 32px 0
    }

    .device-modal-features section:first-child {
        margin: 40px 0 16px
    }

    .device-modal-features section p {
        font-size: 1.4rem;
        min-height: auto
    }

    .device-modal-features-img {
        max-width: 80%
    }

    .device-modal .popup_point_title {
        width: auto
    }
}

    .deviceItem a,
    .deviceItem a:link {
    color: #337ab7
    }

    .deviceItem a:hover {
    color: #e7198c
    }

    .deviceItem a:visited {
    color: #337ab7
    }

    .deviceItem.hddsignup {
    padding-top: 3.2rem;
    cursor: pointer
    }

    .deviceItem.hddsignup:hover:not(.stopDisabled) {
    background: #ffeff8
    }

    .deviceItem.hddsignup.stopDisabled {
    cursor: not-allowed
    }

    .deviceItem:hover {
    transform: scale(1.01)
    }

    .deviceItem.stopDisabled.hddsignup,
    .deviceItem.stopDisabled:not(.soon) {
    opacity: .6
    }

    .deviceItem-main {
    width: 100%;
    display: flex;
    flex-flow: column;
    justify-content: space-around
    }

    .deviceItem-sub {
    height: 100%;
    padding: 8px
    }

    .deviceItem-sub-special {
    max-width: 100%
    }

    .deviceItem-check {
    position: absolute;
    top: 6px;
    left: 7px
    }

    .deviceItem.active {
    border: 3px solid #e64d97;
    background: #ffeff8
    }

    .deviceItem.active:hover {
    transform: scale(1.01);
    background: #ffeff8
    }

    .deviceItem.stopDisabled:hover {
    background: #fff;
    transform: scale(1)
    }

    .deviceItem-head h4 {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 2.2em;
    margin: 0 0 .2em;
    font-weight: 700
    }

    .deviceItem-type span {
    border: 1px solid #ccc;
    font-size: 1.2rem;
    background: #fff;
    margin: 0 .3rem;
    padding: .2em .4em
    }

    .deviceItem-images {
    position: relative;
    min-height: 120px
    }

    .deviceItem-images-device {
    max-height: 110px;
    margin: .5rem
    }

    .deviceItem-images-accessory {
    position: absolute;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    padding: 2px
    }

    .deviceItem-images-color {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 8px 0
    }

    .deviceItem-images-color i {
    display: block;
    width: 14px;
    height: 14px;
    margin: 3px;
    border: 1px solid #ccc;
    border-radius: 50%;
    position: relative
    }

    .deviceItem-images-color .nostock:after {
    position: absolute;
    content: "/D7";
    color: red;
    top: -3px;
    left: 10px;
    width: 14px;
    height: 14px
    }

    .deviceItem-catch {
    text-align: left;
    font-size: 1.3rem;
    min-height: 3.6em
    }

    .deviceItem-catch p {
    font-size: 1.3rem;
    margin: 0;
    text-align: center
    }

    .deviceItem-detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    height: 3.6em;
    overflow: hidden
    }

    .deviceItem-detail span {
    background: #e9e9e9;
    font-size: .9em;
    height: 1.8em;
    margin: .1em;
    padding: .3em .4em;
    color: #333;
    word-break: keep-all;
    display: inline-block
    }

    .deviceItem-campaign {
    margin: .6rem 0;
    min-height: 5em
    }

    .deviceItem-campaign-ob {
    border: 1px solid #e64d97;
    font-size: 1.1rem;
    padding: .3em 0 .1em;
    font-weight: 700;
    color: #e64d97;
    background: #fff
    }

    .deviceItem-campaign-ob-blue {
    border: 1px solid #4d8ce6;
    color: #4d8ce6
    }

    .deviceItem-campaign-ob-orange {
    border: 1px solid #f60;
    color: #f60
    }

    .deviceItem-campaign-ob-orange-annotation {
    font-size: 8px;
    text-align: right;
    margin-top: 4px
    }

    .deviceItem-campaign-ob:nth-child(2),
    .deviceItem-campaign-ob:nth-child(3) {
    margin-top: 3px
    }

    .deviceItem-discountline {
    font-size: 12px;
    min-height: 1.5em
    }

    .deviceItem-discountline div {
    background: #e64d97;
    color: #fff;
    text-align: center
    }

    .deviceItem-price {
    text-align: left
    }

    .deviceItem-price .d-flex {
    justify-content: space-around;
    align-items: center;
    min-height: 4.2em
    }

    .deviceItem-price-pay {
    font-size: 1.2rem
    }

    .deviceItem-price-num {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1
    }

    .deviceItem-price-num small {
    font-size: 75%
    }

    .deviceItem-eco-msg {
    border-top: 1px dotted #bfbfbf;
    border-bottom: 1px dotted #bfbfbf;
    font-size: 1.2rem;
    padding: .1em 0;
    font-weight: 700;
    color: #666;
    background: #fff
    }

    .deviceItem-eco-flex {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: .5rem auto 0;
    line-height: 1.8;
    min-height: 6.2rem
    }

    .deviceItem-eco-price p {
    margin: 0;
    line-height: 1
    }

    .deviceItem-eco-price-num {
    font-size: 2.8rem;
    font-weight: 700
    }

    .deviceItem-eco-btn {
    background: linear-gradient(180deg, #eff4ff 0, #f6f9ff);
    color: #6084ce !important;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 1rem 0;
    border-radius: 5px;
    box-shadow: 2px 2px 3px #e0e0e0;
    transition-duration: .1s;
    position: relative;
    border: 1px solid #6084ce;
    margin: .5rem auto .2rem;
    text-align: center;
    display: block;
    text-decoration: none;
    max-width: 14em;
    user-select: none;
    cursor: pointer
    }

    .deviceItem-eco-btn:hover {
    opacity: .8;
    text-decoration: none
    }

    .deviceItem-eco-btn span {
    padding-right: 1rem
    }

    .deviceItem-apt a:hover {
    color: #fff;
    text-decoration: none
    }

    .deviceItem-apt-btn {
    background: linear-gradient(180deg, #8fc31f 0, #61b118);
    color: #fff !important;
    font-size: 1.6rem;
    letter-spacing: .1em;
    text-align: center;
    font-weight: 700;
    padding: 1.1rem 0 1rem 2rem;
    display: block;
    margin: .5rem auto .2rem;
    border-radius: 5px;
    box-shadow: 2px 2px 3px #e0e0e0;
    transition-duration: .1s;
    max-width: 14em;
    position: relative
    }

    .deviceItem-apt-btn:after {
    content: "";
    position: absolute;
    width: 14px;
    height: 14px;
    top: .9em;
    left: .5em;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg)
    }

    .deviceItem-apt-btn:hover {
    color: #fff !important;
    text-decoration: none;
    opacity: .8
    }

    .deviceItem-apt-closebtn {
    background: #ababab;
    color: #fff !important;
    font-size: 1.6rem;
    letter-spacing: .1em;
    text-align: center;
    padding: 1.1rem .5rem;
    display: block;
    margin: .5rem auto .2rem;
    border-radius: 0;
    transition-duration: .1s;
    max-width: 14em;
    cursor: not-allowed
    }

    .deviceItem-apt-closebtn.soon {
    background: #eee !important;
    color: red !important;
    font-weight: 700
    }

    .deviceItem-dev-btn {
    display: block;
    text-align: right;
    width: 10em;
    margin: 2rem 0 .2em auto
    }

    .deviceItem-dev-btn-icon {
    background: #337ab7;
    color: #fff;
    margin-right: .4rem;
    padding: 2px;
    font-size: 80%;
    border-radius: 3px
    }

    .deviceItem-label {
    position: absolute;
    top: -4px;
    left: 18px;
    font-size: 1.3rem;
    font-style: oblique
    }

    .deviceItem-label span {
    padding: .2rem 1rem;
    background: #e64d97;
    color: #fff;
    margin-right: .2rem
    }

    .deviceItem-label span.yellow {
    background: #ffeb3b;
    color: #e80588;
    font-weight: 700
    }

    .deviceItem-label span.glay {
    background: #888
    }

    .deviceItem-label span.soon {
    background: #fff;
    border: 1px solid #e80588;
    margin-right: -1rem;
    margin-left: 1rem;
    padding: 1px 6px;
    color: #e80588;
    font-style: normal
    }

    @media screen and (min-width:641px) {
    .deviceItem-main.col-sm-6 {
        width: 49.5%
    }
    }*/

/*@media screen and (max-width:640px) {
    .deviceItem {
        margin: 1.5rem;
        padding-top: 1.6rem;
        padding-bottom: 1.8rem;
        box-sizing: border-box
    }

    .deviceItem-detail {
        height: auto;
        min-height: 1.4rem;
        margin-bottom: 1rem
    }

    .deviceItem-catch {
        height: auto;
        min-height: 2.2rem
    }

    .deviceItem-catch p {
        margin-bottom: 1rem
    }

    .deviceItem-campaign {
        min-height: auto
    }

    .deviceItem-price .d-flex {
        min-height: auto;
        margin-top: .3rem
    }

    .deviceItem-dev-btn {
        background: linear-gradient(180deg, #eff4ff 100%, #f7f9ff 0);
        color: #337ab7 !important;
        font-size: 1.6rem;
        letter-spacing: .1em;
        text-align: center;
        font-weight: 700;
        padding: 1.1rem 0 1rem 2rem;
        display: block;
        margin: .5rem auto .2rem;
        border-radius: 5px;
        box-shadow: 2px 2px 3px #e0e0e0;
        transition-duration: .1s;
        max-width: 14em;
        position: relative;
        width: 100%;
        border: 1px solid #337ab7
    }

    .deviceItem-dev-btn:after {
        content: "";
        position: absolute;
        width: 14px;
        height: 14px;
        top: .9em;
        left: .5em;
        border-top: 3px solid #337ab7;
        border-right: 3px solid #337ab7;
        transform: rotate(45deg)
    }

    .deviceItem-dev-btn:hover {
        color: #fff !important;
        text-decoration: none;
        opacity: .8
    }

    .deviceItem-dev-btn span {
        display: none
    }

    .deviceItem-eco-flex {
        min-height: 4.6rem;
        display: block
    }

    .deviceItem-eco-price-num {
        line-height: 1
    }
    }

    .debug {
    position: absolute;
    right: 0;
    bottom: 0;
    opacity: .8;
    padding: 0 !important
    }

    .deviceList .row {
    justify-content: flex-start;
    }

    .deviceItem {
    border: 1px solid #ccc;
    background: #fff;
    font-size: 14px;
    padding: 1em .8em .7em;
    height: 100%;
    position: relative;
    text-align: center;
    transition-duration: .2s;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    }

    .-head {
    box-sizing: border-box;
    }

    .-dname {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 2.2em;
    margin: 0 0 .2em;
    font-weight: 700;
    }

    .-maker {
    text-overflow: clip;
    overflow: hidden;
    white-space: nowrap;
    margin-bottom: 0;
    }

    .-main {
    width: 100%;
    display: flex;
    flex-flow: column;
    flex-grow: 3;
    }

    .deviceItem .-images {
    position: relative;
    min-height: 120px;
    }

    .deviceItem .-catch {
    font-size: 12px;
    text-align: center;
    }

    .deviceItem .-images .-device {
    max-height: 110px;
    margin: .5em;
    user-select: none;
    }

    .-color {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 8px 0;
    }

    .deviceItem .-images .-color i {
    display: block;
    width: 14px;
    height: 14px;
    margin: 3px;
    border: 1px solid #ccc;
    border-radius: 50%;
    position: relative;
    }

    .deviceItem .-detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    height: 3.6em;
    overflow: hidden;
    }

    .deviceItem .-detail span {
    background: #e9e9e9;
    font-size: .9em;
    height: 1.8em;
    margin: .1em;
    padding: .3em .4em;
    color: #333;
    word-break: keep-all;
    display: inline-block;
    }

    .-ob {
    border: 1px solid #e64d97;
    font-size: .8em;
    padding: .3em 0 .1em;
    font-weight: 700;
    color: #e64d97;
    background: #fff;
    margin: 3px 0;
    }

    .-ob.-orange {
    border: solid 1px #FF6600;
    color: #FF6600;
    }

    .-ob.-blue {
    border: 1px solid #4d8ce6;
    color: #4d8ce6;
    }

    .-ob.-gray {
    border: 1px solid #7d7d7d;
    color: #7d7d7d;
    }

    .deviceItem .-discountline {
    font-size: 12px;
    }

    .deviceItem .-eco,
    .deviceItem .-price {
    text-align: left;
    }

    .deviceItem .-eco .-flex,
    .deviceItem .-price .-flex {
    display: flex;
    justify-content: space-around;
    align-items: center;
    min-height: 4.2em;
    }*/

.device-detail-payment .-price .-flex {
    display: flex;
    min-height: 4.2em;
    width: 83%;
    justify-content: space-between;
    font-size: 20px;
}

.device-detail-payment .-price .-flex .-num {
    font-size: 24px;
    font-weight: bold;
}

.device-detail-payment .-price .-flex .-num small {
    font-weight: bold;
    font-size: 70%;
}

/*
    .deviceItem .-eco .-pay,
    .deviceItem .-price .-pay {
    font-size: .9em;
    }

    .deviceItem .-eco .-num,
    .deviceItem .-price .-num {
    font-size: 1.4em;
    font-weight: 700;
    line-height: 1;
    }

    .discount {
    font-size: 1.4em;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0;
    }

    .deviceItem .-downmsg {
    font-size: 10px;
    }

    .deviceItem .-label {
    position: absolute;
    top: -6px;
    left: 10px;
    font-size: .9em;
    font-style: oblique;
    }

    .deviceItem .-label span {
    padding: .3em 1em .2em;
    background: #e64d97;
    color: #fff;
    margin-right: .2em;
    }

    .deviceItem .-label span.-glay {
    background: #888;
    }

    .deviceItem .-label span.-yellow {
    background: #ffeb3b;
    color: #e80588;
    font-weight: 700;
    }

    .deviceItem .-apt .-btn {
    background: linear-gradient(to bottom, #8FC31F 0%, #61B118 100%);
    color: #FFF !important;
    font-size: 1.1em;
    letter-spacing: 0.1em;
    text-align: center;
    font-weight: bold;
    padding: 0.7em .5em;
    display: block;
    margin: .5em auto .2em;
    border-radius: 5px;
    box-shadow: 2px 2px 3px #E0E0E0;
    transition-duration: .1s;
    max-width: 14em;
    position: relative;
    text-indent: 0.6em;
    }

    .deviceItem .-apt .-btn::after {
    content: "";
    position: absolute;
    width: 14px;
    height: 14px;
    top: 0.9em;
    left: 0.4em;
    border-top: solid 3px #FFF;
    border-right: solid 3px #FFF;
    transform: rotate(45deg);
    }

    .deviceItem .-details {
    font-size: 12px;
    }

    .deviceItem .-dev-btn {
    display: block;
    text-align: right;
    width: 10em;
    margin: 1em 0 .2em auto;
    }

    .deviceItem .-dev-btn .-icon {
    background: #337ab7;
    color: #FFF;
    margin-right: 0.4em;
    padding: 2px;
    font-size: 80%;
    border-radius: 3px;
    }

    @media screen and (min-width:641px) {
    .deviceItem .-downmsg {
        text-align: right;
    }
    }*/

@media screen and (max-width: 640px) {
/*.deviceItem {
        margin: 0;
        padding: 1.4em 8px 1em;
        box-sizing: border-box;
    }

    .deviceItem .-catch {
        height: auto;
        min-height: 2.2em;
    }

    .deviceItem .-detail {
        height: auto;
        min-height: 1.4em;
        margin-bottom: 1em;
    }

    .deviceItem .-eco .-flex,
    .deviceItem .-price .-flex {
        min-height: auto;
        margin-top: .3em;
    }*/

    .device-detail-payment .-price .-flex {
        margin: 0 auto;
        width: 100%;
    }

    /*.deviceItem .-apt .-btn {
        font-size: .8em;
        max-width: none;
    }*/
}

@media screen and (max-width: 425px) {
    .device-detail-payment .-price .-flex .-num {
        font-size: 20px;
    }
}

/*@media screen and (max-width: 349px) {
    .deviceListItem {
        width: 100% !important;
    }
}*/

/* キャンペーン概要 */
.af-cp1,
.af-cp2,
.af-cp3,
.af-cp4 {
    display: none;
}

#otoku_gaiyo,
.otoku_gaiyo-af {
    padding: 30px 0 55px 0;
}

#otoku_gaiyo h2,
.otoku_gaiyo-af h2 {
    width: 90%;
    margin: 0px auto;
    padding: 30px 0 0 0;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 2px;
    text-align: center;
    font-weight: bold;
}

#otoku_gaiyo .inner,
.otoku_gaiyo-af .inner {
    display: block;
    width: 90%;
    max-width: 920px;
    margin: 40px auto;
    padding: 0;
}

#otoku_gaiyo .inner2,
.otoku_gaiyo-af .inner2 {
    display: block;
    width: 90%;
    max-width: 920px;
    margin: 50px auto 0px auto;
    padding: 0;
}

#otoku_gaiyo h3,
.otoku_gaiyo-af h3 {
    width: 100%;
    margin: 10px 0 0 0px;
    padding: 5px 0px;
    font-size: 16px;
    line-height: 1.6;
    font-weight: bold;
    background: #3f64ab;
    color: #fff;
    text-align: center;
}

#otoku_gaiyo h3 p,
.otoku_gaiyo-af h3 p {
    width: 95%;
    margin: 0 auto;
}

#otoku_gaiyo h3 p span,
.otoku_gaiyo-af h3 p span {
    display: inline-block;
}

#otoku_gaiyo table,
.otoku_gaiyo-af table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-bottom: solid 1px #cecece;
    box-sizing: border-box;
}

#otoku_gaiyo table th,
.otoku_gaiyo-af table th {
    width: 135px;
}

#otoku_gaiyo table th,
#otoku_gaiyo table td,
.otoku_gaiyo-af table th,
.otoku_gaiyo-af table td {
    padding: 15px 20px;
    border-top: #cecece solid 1px !important;
    font-size: 13px;
    line-height: 1.5;
}

#otoku_gaiyo table th,
.otoku_gaiyo-af table th {
    background: #f7f7f6;
}

#otoku_gaiyo table td .dev_name,
.otoku_gaiyo-af table td .dev_name {
    font-weight: bold;
    position: relative;
    padding-left: 15px;
}

#otoku_gaiyo table td .dev_name::before,
.otoku_gaiyo-af table td .dev_name::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #999;
    display: inline-block;
    margin-right: 5px;
    position: absolute;
    left: 0px;
    top: 4px;
}

.-feature {
    max-width: 960px;
    margin: 70px auto;
}

.moviebnr {
    max-width: 960px;
    text-align: center;
    background: #f1f1f1;
    padding: 30px 0;
}

.moviebnr_area {
    padding-bottom: 30px;
}

.video {
    text-align: center;
}

video {
    max-width: 790px;
}

.video_text {
    padding-top: 10px;
    font-size: 20px;
    letter-spacing: 3px;
}

.-squarebox {
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    margin-top: 3em;
}

.-squarebox .-item {
    -ms-flex-preferred-size: 45%;
    flex-basis: 45%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    border-bottom: 1px solid #CCC;
    line-height: 1.5;
    padding: 1em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.-squarebox .-item.bb_not {
    border-bottom: none;
}

.-squarebox .-item .-title {
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    color: green;
    min-height: 4em;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.-squarebox .-item .-img>img {
    width: 100%;
}

.-squarebox .-item .-text {
    padding-top: 1em;
    padding-bottom: 1em;
}

.cp-inner {
    width: 960px;
    margin: 40px auto;
}

.device_second {
    padding-top: 30px;
}

.device-detail .device-detail-list {
    clear: both;
    padding: 30px 0 60px;
}

.device-detail .device-detail-left {
    display: inline-block;
    width: 480px;
    vertical-align: top;
    text-align: right;
}

.device-detail .device-detail-img {
    margin-left: auto;
    margin-right: 0;
}

.device-detail .device-detail-right {
    display: inline-block;
    vertical-align: top;
    padding-left: 50px;
    width: 340px;
}

.device-detail .device-detail-title h4 {
    font-size: 24px;
}

.device-detail .device-detail-maker {
    font-size: 12px;
}

.device-detail .device-detail-type {
    margin-top: 10px;
}

.device-detail .device-detail-type .device-detail-type-list {
    display: inline-block;
    border: 1px solid #040404;
    font-size: 10.72px;
    padding: 2px 8px;
    margin-right: 10px;
}

.device-detail .device-detail-text {
    margin-top: 20px;
    font-size: 15px;
}

.device-detail .device-detail-icon {
    margin-top: 10px;
}

.device-detail .device-detail-icon .device-detail-icon-list {
    display: inline-block;
    background-color: #E9E9E9;
    margin-right: 3px;
    margin-bottom: 3px;
    padding: 1px 6px;
}

.device-detail .device-detail-ob {
    display: inline-block;
    border: solid 1px #E64D97;
    font-size: 14px;
    padding: 0.3em;
    font-weight: bold;
    color: #E64D97;
    background: #FFF;
    margin-top: 10px;
}

.device-detail .device-detail-ob-goaiko {
    display: inline-block;
    border: solid 1px #FF6600;
    font-size: 14px;
    padding: 0.3em;
    font-weight: bold;
    color: #FF6600;
    background: #FFF;
    margin-top: 10px;
}

.device-detail .device-detail-ob-esim {
    display: inline-block;
    border: solid 1px blue;
    font-size: 14px;
    padding: 0.3em;
    font-weight: bold;
    color: blue;
    background: #FFF;
    margin-top: 10px;
}

.device-detail .device-detail-kome {
    display: inline-block;
    color: #E64D97;
    font-size: 14px;
    vertical-align: top;
    padding-top: 0.3em;
}

.device-detail .device-detail-kome-goaiko {
    display: inline-block;
    color: #FF6600;
    font-size: 14px;
    vertical-align: top;
    padding-top: 0.3em;
}

.device-detail .device-detail-kome-esim {
    display: inline-block;
    color: #FF6600;
    font-size: 14px;
    vertical-align: top;
    padding-top: 0.3em;
}

.device-detail .device-detail-ob2 {
    font-size: 12px;
    margin-top: 10px;
    padding-left: 2.5em;
    text-indent: -2.5em;
    width: 300px;
}

.device-detail .device-detail-payment {
    margin-top: 10px;
}

.device-detail .device-detail-payment .device-detail-payment-list {
    display: inline-block;
    width: 100px;
}

.device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-type {
    display: block;
    font-size: 12px;
}

.device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-price {
    display: block;
    font-size: 22px;
    font-weight: bold;
}

.device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-price small {
    font-size: 13px;
    font-weight: bold;
}

.deviceItem-apt-btn2 {
    background: linear-gradient(to bottom, #8FC31F 0%, #61B118 100%);
    color: #FFF !important;
    font-size: 23px;
    letter-spacing: 0.1em;
    text-align: center;
    font-weight: bold;
    padding: 2.1rem 0 2rem 2rem;
    display: block;
    margin: 1rem auto 0.2rem;
    border-radius: 5px;
    box-shadow: 2px 2px 3px #E0E0E0;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    transition-duration: 0.1s;
    width: 420px;
    position: relative;
}

.deviceItem-apt-btn2:hover {
    opacity: 0.8;
    text-decoration: none !important;
}

.deviceItem-apt-btn2::after {
    content: "";
    position: absolute;
    display: block;
    border-top: 4px solid #FFF;
    border-right: 4px solid #FFF;
    width: 16px;
    height: 16px;
    top: 30px;
    left: 12px;
    transform: rotate(45deg);
}

.deviceItem-apt-btn.apt-btn-gray {
    font-size: 24px;
    background: #999;
    background: -webkit-gradient(linear, left top, right top, from(#999), to(#666));
    background: linear-gradient(90deg, #999 0, #666);
    cursor: not-allowed;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


@media screen and (max-width: 640px) {
    .deviceItem-apt-btn2::after {
        border-top: 3px solid #FFF;
        border-right: 3px solid #FFF;
        width: 14px;
        height: 14px;
        top: 18px;
    }

    .deviceItem-apt-btn2 {
        padding: 1.5rem 0 1.5rem 2rem;
    }

    .device-detail .device-detail-left {
        display: none;
    }

    #otoku_gaiyo,
    .otoku_gaiyo-af {
        padding: 0px 0 55px 0;
    }

    #otoku_gaiyo h2,
    .otoku_gaiyo-af h2 {
        width: 90%;
        margin: 0px auto;
        padding: 55px 0 0 0;
        font-size: 22px;
        line-height: 1.5;
        letter-spacing: 2px;
        text-align: center;
    }

    #otoku_gaiyo table th,
    .otoku_gaiyo-af table th {
        width: 60px;
    }

    #otoku_gaiyo table th,
    .otoku_gaiyo-af table th,
    #otoku_gaiyo table td,
    .otoku_gaiyo-af table td {
        padding: 15px 10px;
        border-top: #cecece solid 1px !important;
        font-size: 13px;
        line-height: 1.5;
    }

    .-feature {
        width: 100%;
        margin: 30px auto 0;
    }

    .moviebnr_area {
        width: 90%;
        margin: 0 auto;
        padding-bottom: 20px;
    }

    .video {
        width: 90%;
        margin: 0 auto;
    }

    video {
        width: 100%;
    }

    .video_text {
        font-size: 14px;
        letter-spacing: 1px;
    }

    .-squarebox {
        font-size: 20px;
        display: block;
        margin-top: 0;
    }

    .-squarebox .-item {
        border-bottom: none;
    }

    .-squarebox .-item .-title {
        font-size: 4.4vw;
    }

    .-squarebox .-item .-text {
        font-size: 14px;
    }

    .cp-inner {
        width: 95%;
        margin: 0 auto;
    }

    .device_second {
        padding-top: 0;
    }

    .device-detail .device-detail-list {
        padding: 8% 0;
    }

    .device-detail .device-detail-right {
        display: block;
        vertical-align: top;
        padding-left: 0;
        text-align: center;
        width: 100%;
    }

    .device-detail .device-detail-title h4 {
        font-size: 7vw;
    }

    .device-detail .device-detail-maker {
        font-size: 3.5vw;
    }

    .device-detail .device-detail-type {
        margin-top: 10px;
    }

    .device-detail .device-detail-type .device-detail-type-list {
        margin: 0 5px;
        display: inline-block;
        border: 1px solid #040404;
        font-size: 4vw;
        padding: 2px 8px;
    }

    .device-detail .device-detail-img {
        margin-left: auto;
        margin-right: 0;
    }

    .device-detail .device-detail-img img {
        width: 60%;
        margin-top: 4%;
    }

    .device-detail .device-detail-text {
        margin-top: 4%;
        font-size: 4vw;
    }

    .device-detail .device-detail-icon {
        margin-top: 5%;
        text-align: center;
    }

    .device-detail .device-detail-icon .device-detail-icon-list {
        display: inline-block;
        background-color: #E9E9E9;
        margin-right: 1.5%;
        margin-top: 1.5%;
        padding: 1px 6px;
        font-size: 4vw;
    }

    .device-detail .device-detail-payment {
        margin-top: 5%;
    }

    .device-detail .device-detail-payment .device-detail-payment-list {
        display: inline-block;
        width: 50%;
    }

    .device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-type {
        display: block;
        font-size: 12px;
    }

    .device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-price {
        display: block;
        font-size: 8vw;
        font-weight: bold;
    }

    .device-detail .device-detail-payment .device-detail-payment-list .device-detail-payment-price small {
        font-size: 4.8vw;
        font-weight: bold;
    }

    .deviceItem-apt-btn2,
    .deviceItem-apt-btn.apt-btn-gray {
        margin: 5% auto;
        font-size: 4vw;
        width: 75%;
    }

    .device-detail .device-detail-ob2 {
        text-align: left;
    }
}

/*END*/
.otoku_gaiyo-af #otoku_gaiyo table.table2,
.otoku_gaiyo-af table.table2 {
    margin: 0 0 10px 0;
    border-left: solid 1px #cecece;
    box-sizing: border-box;
}

#otoku_gaiyo table.table2 thead th,
.otoku_gaiyo-af table.table2 thead th {
    text-align: center;
    padding: 7px 20px;
    border-right: solid 1px #cecece;
    background: #eee;
}

#otoku_gaiyo table.table2 tbody th,
.otoku_gaiyo-af table.table2 tbody th,
#otoku_gaiyo table.table2 tbody td,
.otoku_gaiyo-af table.table2 tbody td {
    text-align: center;
    padding: 12px 20px;
    border-right: solid 1px #cecece;
}

@media screen and (max-width: 640px) {

    #otoku_gaiyo table.table2 thead th,
    .otoku_gaiyo-af table.table2 thead th {
        text-align: center;
        padding: 7px 5px;
        border-right: solid 1px #cecece;
        background: #eee;
    }

    #otoku_gaiyo table.table2 tbody th,
    .otoku_gaiyo-af table.table2 tbody th,
    #otoku_gaiyo table.table2 tbody td,
    .otoku_gaiyo-af table.table2 tbody td {
        text-align: center;
        padding: 10px 5px;
        border-right: solid 1px #cecece;
    }
}

/*END*/
.otoku_gaiyo-af {
    padding: 0 0 40px;
}

#otamesi_manual {
    background: #f1f1f1;
    text-align: center;
    padding: 3rem 0;
    color: #333;
    margin-top: 2rem;
}

#otamesi_manual h2 {
    font-size: 22px;
    font-weight: bold;
}

.otamesi_manual_reed_text {
    display: flex;
    max-width: 950px;
    margin: 20px auto;
}

.reed_text_sikaku {
    border: solid 1px #3f64ab;
    background: #ffffff;
    color: #3f64ab;
    font-size: 15px;
    line-height: 20px;
    width: 20%;
    padding: 5px 0;
}

.reed_text_setumei {
    font-size: 15px;
    line-height: 20px;
    text-align: left;
    margin-left: 15px;
    padding: 5px 0;
}

.otamesi_esim_flow {
    width: 100%;
    max-width: 960px;
    margin: 1rem auto;
    background: #FFF;
    border: solid 2px #3f64ab;
}

.otamesi_esim_flow h4 {
    padding: 3rem 0 1rem;
    font-weight: bold;
    letter-spacing: 1px;
}

.otamesi_esim_flow_flex {
    display: flex;
    justify-content: center;
    padding-bottom: 2rem;
}

.otamesi_esim_flow h5 {
    border-bottom: 1px solid #CCC;
    font-size: 2rem;
    padding: 0.4rem 0;
}

.otamesi_esim_flow .otamesi_esim_flow_item_arrow {
    height: fit-content;
    margin: auto 0;
}

@media screen and (max-width: 640px) {
    #otamesi_manual {
        padding: 2rem 0;
    }

    #otamesi_manual h2 {
        line-height: 26px;
    }

    .otamesi_manual_reed_text {
        display: block;
    }

    .reed_text_sikaku,
    .reed_text_setumei {
        width: 90%;
        margin: 0 auto;
    }

    .otamesi_esim_flow_flex {
        display: block;
    }

    .otamesi_esim_flow h4 {
        line-height: 24px;
    }

    .otamesi_esim_flow {
        display: block;
        width: 90%;
    }

    .otamesi_esim_flow h5 {
        background: #999;
        color: #FFF;
        padding: 1rem 0;
        width: 80%;
        margin: 0 auto;
    }

    .otamesi_esim_flow .otamesi_esim_flow_item_arrow {
        padding: 20px 0 30px 0;
    }
}

.inc_member-step {
    width: 960px;
    margin: 1em auto 0;
    padding-top: 1px;
    padding-bottom: 6rem;
    font-size: 14px;
}

.inc_member-step h2 {
    font-size: 1.8em;
    line-height: 38px;
    letter-spacing: 2px;
    margin: 3rem 0 0;
    text-align: center;
}

.inc_member-step .annotation-label {
    background: url(/campaign/wotoku/img/annotation-label.png) center left no-repeat;
    padding: .5rem 0 .5rem 50px;
    display: block;
    margin: 0 auto;
}

.inc_member-step .annotation-label strong {
    font-size: 120%;
    font-weight: bold;
}

.inc_member-step .row-step {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    margin: 1rem 0;
    border-top: 1px solid #CCC;
    padding: 1rem;
}

.inc_member-step .mg-h1 {
    margin: 1rem 0;
}

.inc_member-step a.ar_link {
    background-image: url(/image/ar-icon.png);
    background-repeat: no-repeat;
    background-position: center left;
    color: #e7198c;
    padding-left: 15px;
}

.inc_member-step a.link_bl {
    color: #e7198c;
    text-decoration: underline;
    background: url(/campaign/share_no1/img/link_bl.png) left center no-repeat;
    background-size: 11px;
    padding: 0 0 0 12px;
    cursor: pointer;
}

@media screen and (min-width: 641px) {
    .inc_member-step .annotation-label {
        width: 56em;
        font-size: 13px;
        transform: translateX(45px);
    }

    .inc_member-step .row-step {
        width: 927px;
    }

    .inc_member-step .row-step div {
        width: 640px;
        text-align: left;
    }

    .annotation-text {
        padding-left: 135px;
    }
}

@media screen and (max-width: 640px) {
    .inc_member-step {
        width: 92%;
        margin: 0 4%;
    }

    .inc_member-step .annotation-label {
        width: 100%;
        max-width: 80vw;
        padding: 0 0 0 50px;
        box-sizing: border-box;
    }
}

.application-btn_p {
    width: 22em;
    font-size: 2rem;
    margin: 1rem auto;
    padding: 0 1rem;
    letter-spacing: 0.2em;
}

.application-btn_p small {
    font-size: 1.6rem;
    font-weight: 700;
}

@media screen and (max-width: 640px) {
    .application-btn_p {
        width: 100%;
        max-width: 80vw;
        font-size: 1.2rem;
    }

    .application-btn_p small {
        font-size: 1rem;
    }
}

/* 吹き出し */
.blow-text {
    text-align: center;
    font-weight: 700;
    position: relative;
    display: block;
    margin: 20px auto;
    color: #2ba639;
}

.blow-text::after,
.blow-text::before {
    content: "";
    position: absolute;
    height: 3em;
    width: 2px;
    background: #2ba639;
    display: block;
    top: 0;
}

.blow-text::before {
    transform: rotate(-25deg);
    left: 0;
}

.blow-text::after {
    transform: rotate(25deg);
    right: 0;
}

.blow-text::after,
.blow-text::before {
    height: 1.5em;
}

@media screen and (max-width: 640px) {
    .blow-text {
        font-size: .9em;
        margin-bottom: .5em;
    }

    .blow-text::after,
    .blow-text::before {
        height: 1.5em;
    }

    .blow-text::before {
        left: 1em;
    }

    .blow-text::after {
        right: 1em;
    }
}

.gigapctab_midashi {
    text-align: center;
    margin-top: 60px
}

.gigapctab_midashi h2,
.gigapctab_midashi h2 span {
    font-weight: bold
}

.gigapctab_pickup_midashi {
    position: relative;
    font-size: 25px;
    font-weight: bold;
    margin: 0 auto;
    margin-top: 20px;
    padding: 10px;
    background-color: #FDEAF5;
    color: #E85299;
    letter-spacing: 3px;
    width: 450px;
}

.gigapctab_pickup_midashi::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 47%;
    border: 10px solid transparent;
    border-top: 10px solid #FDEAF5;
}

.gigapctab_devicelist {
    margin-top: 80px;
}
.gigapctab_devicelist h1 {
    font-size: 30px;
    text-align: center;
}
.gigapctab_devicelist h2 {
    text-align: center;
}

.gigapctab_cp_otoku {
    margin-top: 60px;
    margin-bottom: 60px;
}

.gigapctab_cp_otoku h2 {
    text-align: center;
    margin-bottom: 20px;
    font-weight: bold;
    letter-spacing: 5px;
}

.gigapctab_cp_otoku h2 span {
    font-weight: bold;
}

.gigapctab_cp_otoku p {
    text-align: center;
    font-size: 18px;
}

@media screen and (max-width: 640px) {

    .gigapctab_midashi {
        margin-top: 30px;
    }

    .gigapctab_midashi h2,
    .gigapctab_midashi h2 span {
        font-size: 20px;
    }

    .gigapctab_pickup_midashi {
        font-size: 20px;
        letter-spacing: 0;
        width: 300px;
    }

    .gigapctab_devicelist {
        margin-top: 50px;
    }

    .gigapctab_devicelist h2 {
        font-size: 18px;
    }

    .gigapctab_cp_otoku {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .gigapctab_cp_otoku p {
        font-size: 12px;
    }

    .gigapctab_cp_otoku h2 {
        font-size: 20px;
    }
}

/* 端末詳細表示切替 */
#vm_deviceIndex {
    padding-bottom: 5rem;
}

.deviceList.categoryFixed {
    padding-top: 0;
}

.deviceList-categorybox.categoryFixed,
.deviceList-categorybox {
    display: none;
}

.deviceList #categoryFixed {
    background-color: #fff;
}

.deviceList-scbox,
.deviceList-box {
    display: none !important;
}

.deviceListItem {
    display: none;
}

#gigapctab_linup .deviceListItem[devicename="PAMP02LNASIL"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_RedmiPad_SET"],
#gigapctab_linup .deviceListItem[devicename="32Gipad6"],
#gigapctab_linup .deviceListItem[devicename="PB75JQC4427AD21ABLK"],
#gigapctab_linup .deviceListItem[devicename="CFLX6RDGVSASIL"],
#gigapctab_linup .deviceListItem[devicename="20LXS0ABLK"],
#gigapctab_linup .deviceListItem[devicename="AIR-2"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_XiaomiPad5_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_ZenBook_13_OLED_UX325JA_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_A5_X1-CJP2130SB_AORUS_M4_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_VivoBook_14_X413EA_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_MateBook_E_Core_i5_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_TUF_Gaming_A15_FA506IHR_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_AERO_15_OLED_XD-73JP624SR_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_Panasonic_Lets_note_CF-LX6_SET"],
#gigapctab_linup .deviceListItem[devicename="AtermMP02LNSA_LIFEBOOK_U937_SET"],
#gigapctab_linup .deviceListItem[devicename="32Gipad8AWC"],
#gigapctab_linup .deviceListItem[devicename="64Gipadair4AWC"] {
    display: initial;
}

.deviceList-anno,
.scboxWindow,
.scboxBtn {
    display: none;
}

.deviceItem .-eco .gift-goaiko,
.deviceItem .-price .gift-goaiko {
    display: none;
}

/* #tokuten2_linup .gift-goaiko {
            display: block;
          } */