@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap);@-webkit-keyframes cv_swing {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25% {
        -webkit-transform: rotate(4deg);
        transform: rotate(4deg)
    }

    50% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    75% {
        -webkit-transform: rotate(-4deg);
        transform: rotate(-4deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@keyframes cv_swing {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25% {
        -webkit-transform: rotate(4deg);
        transform: rotate(4deg)
    }

    50% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    75% {
        -webkit-transform: rotate(-4deg);
        transform: rotate(-4deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@-webkit-keyframes cv_baunce {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    20% {
        -webkit-transform: scale(1.05,.95);
        transform: scale(1.05,.95)
    }

    33% {
        -webkit-transform: scale(.95,1.05) translateY(-3px);
        transform: scale(.95,1.05) translateY(-3px)
    }

    60.5% {
        -webkit-transform: scale(1) translateY(-1px);
        transform: scale(1) translateY(-1px)
    }

    65% {
        -webkit-transform: scale(1) translate(0);
        transform: scale(1) translate(0)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes cv_baunce {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    20% {
        -webkit-transform: scale(1.05,.95);
        transform: scale(1.05,.95)
    }

    33% {
        -webkit-transform: scale(.95,1.05) translateY(-3px);
        transform: scale(.95,1.05) translateY(-3px)
    }

    60.5% {
        -webkit-transform: scale(1) translateY(-1px);
        transform: scale(1) translateY(-1px)
    }

    65% {
        -webkit-transform: scale(1) translate(0);
        transform: scale(1) translate(0)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes flash {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes flash {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.is-hidden,.is-none {
    display: none!important
}

.is-ellipsis {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

.is-count {
    color: #ff6577!important;
    pointer-events: none
}

.is-blur {
    -webkit-filter: blur(5px);
    filter: blur(5px)
}

.o-item {
    position: relative
}

.o-item * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.m-item__section {
    position: relative;
    margin-bottom: 30px
}

.m-item__section:first-child {
    border-radius: 0
}

.m-item__inner {
    margin-bottom: 30px
}

.m-item__inner:last-child {
    margin: 0
}

.m-item__detail__wrapper {
    padding-bottom: 15px
}

.m-item__detail__wrapper.done {
   
    background-position: 100% 3px;
    background-repeat: no-repeat
}

.m-item__banner {
    position: relative
}

.m-item__banner figure {
    margin: 0 auto 5px;
    width: 100px;
    height: auto
}

.m-item__banner figure img {
    width: 100%;
    height: auto
}

.m-item__info {
    position: relative;
    width: calc((100% - 100px) - 10px)
}

.m-item__info__wrapper {
    margin-bottom: 5px
}

.m-item__usable {
    margin-bottom: 10px
}

.m-item__review {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 8px;
    color: #666;
    font-size: 11px
}

.m-item__review .a-review__rating {
    letter-spacing: -.1em;
    font-size: 14px
}

.m-item__review .a-review__point {
    margin-left: .2em;
    font-size: 15px
}

.m-item__point {
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    margin-top: 5px;
    width: 100%;
    line-height: 1.2
}

.m-item__note {
    word-break: break-all;
    font-size: 12px;
    line-height: 1.7
}

.m-item__note:not(:first-child) {
    margin-top: 20px
}

.m-item__note__wrapper {
    margin-bottom: 30px
}

.m-item__note--attention {
    color: #e74c3c;
    line-height: 1.6
}

.m-item__note--list {
    color: #666
}

.m-item__note--list .a-list {
    font-size: 12px
}

.m-item__note__anchor .a-title__h2 {
    margin-right: 10px
}

.m-item__note__anchor .a-btn__about {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-bottom: 10px
}

.m-item__userrank__rankup {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100px;
    background: #cea500
}

.m-item__userrank__rankup .tooltip {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 5px 2px;
    text-align: center
}

.m-item__userrank__rankup .tooltip__ico {
    width: 12px;
    height: 12px;
    background: none;
    color: #fff;
    font-size: 12px;
    line-height: 12px
}

.m-item__userrank__rankup .tooltip__block {
    top: 0!important;
    left: 0
}

.m-item__userrank__rankup span {
    color: #fff;
    letter-spacing: -.1em;
    font-size: 11px
}

.m-item__userrank__rankbonus {
    position: relative;
    margin: 5px 0 0;
    padding: 10px 2px;
    width: 100%;
    border-radius: 2em;
    background: #fdfcca;
    text-align: center;
    font-size: 12px;
    line-height: 1.5em
}

.m-item__userrank__rankbonus em {
    color: #ff3939;
    vertical-align: top;
    font-weight: 700
}

.m-item__userrank__rankbonus img {
    vertical-align: middle
}

.m-item__userrank__rankbonus .a-item__userrank__rankbonus {
    font-size: 18px;
    -webkit-animation: flash .4s ease-in-out 9 alternate;
    animation: flash .4s ease-in-out 9 alternate
}

.m-item__userrank__rankbonus .tooltip__block {
    top: 10px!important;
    left: 0
}

.m-item__userrank__rankbonus .lecture-persnal__wrap {
    text-align: left
}

.a-item__recommend {
    margin: -15px -15px 0;
    padding: 8px 15px;
    background-color: #fff5bd;
    font-weight: 700;
    font-size: 12.5px;
    line-height: 1.6
}

.a-item__recommend+.m-item__detail {
    margin-top: 10px
}

.a-item__h1 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ddd;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.3
}

.a-item__target--jal {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 10px;
    padding: 3px;
    width: 100px;
    border: 1px solid;
    border-radius: 3px;
    color: #fb1717!important;
    text-align: center;
    font-weight: 700;
    font-size: 11px
}

.a-item__action {
    margin: 10px 0;
    width: 100%;
    color: #666;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.25
}

.a-item__usable--d {
    background: #eb4e4e
}

.a-item__usable--a,.a-item__usable--d {
    padding: 2px 4px;
    border-radius: 3px;
    color: #fff;
    font-weight: 700;
    font-size: 11px
}

.a-item__usable--a {
    background: #eba74e
}

.a-item__usable--s {
    background: #b7b7b7
}

.a-item__usable--c,.a-item__usable--s {
    padding: 2px 4px;
    border-radius: 3px;
    color: #fff;
    font-weight: 700;
    font-size: 11px
}

.a-item__usable--c {
    background: #444
}

.a-item__point--now {
    color: #ff3939;
    font-weight: 700;
    font-size: 32px
}

.a-item__point--none {
    padding: 8px 15px;
    background: #eee;
    color: #fb1717;
    font-weight: 700;
    font-size: 16px
}

.a-item__attention {
    display: block;
    padding: 10px;
    border: 1px solid #ff3939;
    border-radius: 3px;
    background-color: #fff;
    -webkit-box-shadow: 0 2px 0 0 #ddd;
    box-shadow: 0 2px 0 0 #ddd;
    color: #ff3939!important;
    text-align: center;
    font-weight: 700
}

.a-item__attention span {
    display: inline-block;
    margin-right: 10px;
    padding: 5px 0;
    width: 3.5em;
    background-color: #ff3939;
    color: #fff
}

.m-item__btn {
    margin-bottom: 30px
}

.a-item__btn {
    border-radius: 3px;
    position: relative;
    display: block;
    margin-bottom: 20px;
    padding: 20px;
    background: #d70d25;
    -webkit-box-shadow: 0 2px 0 0 #ddd;
    box-shadow: 0 2px 0 0 #ddd;
    color: #fff!important;
    text-align: center;
    letter-spacing: .05em;
    font-weight: 700;
    font-size: 22px
}

.a-item__btn__get {
    position: relative;
    display: inline-block;
    width: 100%
}



.a-item__btn__none {
    position: relative;
    display: inline-block;
    width: 100%
}

.a-item__btn__none:before {
    position: absolute;
    top: -32px;
    left: -10px;
    z-index: 1;
    display: inline-block;
    width: 60px;
    height: 83px;
    
    content: "";
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation: cv_swing 1s linear infinite;
    animation: cv_swing 1s linear infinite
}

.a-item__btn.disabled {
    padding: 15px;
    background: #999;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-weight: 400;
    font-size: 14px
}

.a-item__login-btn--blur {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: auto;
    width: 100%;
    height: 100%;
    text-indent: 0
}

.a-item__login-btn--blur .a-btn__login {
    width: 70%
}

.m-item__define {
    display: -webkit-box;
    line-height: 1.25
}

.m-item__define .tooltip__ico {
    margin-left: .2em
}

.m-item__define dd {
    padding-left: .2em
}

.m-item__define em {
    color: #ff3939;
    font-weight: 700;
    font-size: 13px
}

.m-item__define__timing {
    margin-bottom: 5px;
    font-size: 13px;
    font-weight: bold;
    color: #d70d25;
}

.m-item__define__timing .a-item__define__timing--title {
    width: 6em
}

.m-item__define__timing .a-item__define__timing--body {
    width: calc(100% - 6em)
}

.m-item__define__timing .lecture-persnal__wrap {
    margin-right: -95px
}

.m-item__define__timing:last-of-type {
    margin-bottom: 0
}

.m-item__define__reward {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 12px
}

.m-item__define__reward:not(:last-child) {
    margin-right: 5px;
    padding-right: 5px;
    border-right: 1px solid #ccc
}

.m-item__define__reward .exclude {
    margin: 0 5px;
    padding: 2px 8px;
    border-radius: 2em;
    background: #eee;
    color: #666;
    font-size: 11px
}

.a-item__about__text {
    word-break: break-all;
    line-height: 1.6
}

.a-item__about--more {
    position: absolute;
    bottom: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 80px;
    border-radius: 0 0 3px 3px;
    background: -webkit-gradient(linear,left bottom,left top,color-stop(30%,#fff),to(hsla(0,0%,100%,.1)));
    background: -webkit-linear-gradient(bottom,#fff 30%,hsla(0,0%,100%,.1));
    background: linear-gradient(0deg,#fff 30%,hsla(0,0%,100%,.1));
    cursor: pointer
}

.a-item__about--more:after {
    position: absolute;
    right: 0;
    bottom: 20px;
    left: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border-top: 3px solid #15aaa1;
    border-right: 3px solid #15aaa1;
    content: "";
    cursor: pointer;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.m-item__question {
    margin-top: -10px;
    padding-top: 10px
}

.m-item__question__inner {
    position: relative
}

.m-item__question__inner:not(:last-child) {
    margin-bottom: 10px
}

.m-item__question__btn__wrap {
    position: relative
}

.a-item__question--q {
    margin-bottom: 10px;
    padding-left: 1.6em;
    text-indent: -1.6em;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.6
}

.a-item__question--q em {
    margin-right: 10px;
    color: #15aaa1
}

.a-item__question--a {
    padding-left: 1.9em;
    text-indent: -1.9em
}

.a-item__question--a em {
    margin-right: 10px;
    color: #15aaa1;
    font-weight: 700
}

.a-item__question--a.is-ellipsis {
    margin-bottom: 20px
}

.qa-read-more {
    position: absolute;
    right: 15px;
    bottom: 10px;
    display: none;
    cursor: pointer;
    -webkit-transition: All .2s ease;
    transition: All .2s ease
}

.a-detail__share__text {
    padding: 8px 15px;
    background-color: #fff5bd;
    font-weight: 700;
    line-height: 1.6
}

.a-detail__share__text--bonus {
    color: #15aaa1
}

.a-detail__share__text--point {
    color: #ff5176;
    font-size: 15px
}

.m-item__badge {
    margin-bottom: 7px
}

.m-item__badge li {
    display: inline-block;
    margin: 3px 5px 3px 0;
    padding: 5px 10px 3px;
   background: #1769cf;
    color: #fff;
    font-size: 11px;
    line-height: 1
}

.m-item__badge li.a-item__badge--anshin,.m-item__badge li.a-item__badge--campaign {
    padding: 0;
    background: #f95d89;
    -webkit-transition: All .2s ease;
    transition: All .2s ease
}

.m-item__badge li.a-item__badge--anshin a,.m-item__badge li.a-item__badge--campaign a {
    display: block;
    padding: 5px 10px 3px;
    color: #fff
}

.m-item__badge li.a-item__badge--anshin {
    background: #15aaa1
}

@-webkit-keyframes icon-rotate {
    0% {
        opacity: 0;
        -webkit-transform-origin: center;
        transform-origin: center
    }

    15% {
        opacity: 0;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg)
    }

    25%,75% {
        opacity: 1;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    85% {
        opacity: 0;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg)
    }

    to {
        opacity: 0
    }
}

@keyframes icon-rotate {
    0% {
        opacity: 0;
        -webkit-transform-origin: center;
        transform-origin: center
    }

    15% {
        opacity: 0;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg)
    }

    25%,75% {
        opacity: 1;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    85% {
        opacity: 0;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg)
    }

    to {
        opacity: 0
    }
}

.a-icon--new,.a-icon--sale {
    background-color: #ff3939
}

.a-icon--hot,.a-icon--new,.a-icon--sale {
    position: absolute;
    top: -5px;
    left: -5px;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    font-weight: 400;
    font-size: 10px;
    line-height: 1;
    -webkit-animation: icon-rotate 6s ease infinite normal;
    animation: icon-rotate 6s ease infinite normal
}

.a-icon--hot {
    background-color: #ffa900
}

.a-icon--new__wide,.a-icon--sale__wide {
    position: absolute;
    top: -7px;
    left: 50%;
    display: block;
    margin-left: -2.65em;
    padding: .8em;
    width: 4em;
    border-radius: 2em;
    background-color: #ff3939;
    color: #fff;
    text-align: center;
    font-size: 9px;
    line-height: 0
}

.m-item__icon__block {
    margin-left: auto
}

.m-item__icon:not(:last-child) {
    margin-right: 10px
}

.a-item__icon,.m-item__icon--relative {
    position: relative
}

.a-item__icon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 32px;
    height: 32px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: #fff;
    color: #bbb;
    font-size: 18px;
    line-height: 0;
    -webkit-transition: All .2s ease;
    transition: All .2s ease
}

.a-item__icon--add_home i,.a-item__icon--share {
    color: #15aaa1
}

.a-item__icon--favorite i {
    color: #ff7676
}

.a-item__icon--favorite.on {
    border: #fff0f0;
    background: #fff0f0;
    color: #ff7676
}

.is--favorite-delete {
    border-radius: 3px;
    position: absolute;
    top: -32px;
    right: 1px;
    z-index: 0;
    display: inline-block;
    padding: 2px 4px;
    width: 7em;
    border: 1px solid #ddd;
    background-color: #fff;
    color: #666;
    text-align: center;
    font-size: 10px
}

.is--favorite-delete:after,.is--favorite-delete:before {
    position: absolute;
    left: 50%;
    margin-left: 15px;
    width: 0;
    height: 0;
    border-width: 5px 5px 0;
    border-style: solid;
    border-radius: .1px
}

.is--favorite-delete:before {
    bottom: -3px;
    z-index: 1;
    border-color: #fff transparent transparent;
    content: ""
}

.is--favorite-delete:after {
    bottom: -5px;
    border-color: #ddd transparent transparent;
    content: ""
}

.is--favorite-delete span:before {
    content: "お気に入り\a解除"
}

.is--favorite-add {
    border-radius: 3px;
    position: absolute;
    top: -32px;
    right: 1px;
    z-index: 0;
    display: inline-block;
    padding: 2px 4px;
    width: 7em;
    border: 1px solid #ddd;
    background-color: #fff;
    color: #666;
    text-align: center;
    font-size: 10px
}

.is--favorite-add:after,.is--favorite-add:before {
    position: absolute;
    left: 50%;
    margin-left: 15px;
    width: 0;
    height: 0;
    border-width: 5px 5px 0;
    border-style: solid;
    border-radius: .1px
}

.is--favorite-add:before {
    bottom: -3px;
    z-index: 1;
    border-color: #fff transparent transparent;
    content: ""
}

.is--favorite-add:after {
    bottom: -5px;
    border-color: #ddd transparent transparent;
    content: ""
}

.is--favorite-add span:before {
    content: "お気に入り\a登録"
}

#modal__add__home,#modal__share {
    padding: 30px 15px
}

#modal__add__home .modal__title,#modal__share .modal__title {
    position: relative;
    margin-bottom: 30px;
    padding: 10px 5px;
    background: #fff5bd;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.3
}

#modal__add__home .modal__title em,#modal__share .modal__title em {
    color: #ff5176
}

#modal__add__home .modal__title:before,#modal__share .modal__title:before {
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -24px;
    border: 20px solid transparent;
    border-top: 15px solid #fff5bd;
    content: ""
}

#modal__add__home .modal__text,#modal__share .modal__text {
    text-align: center
}

#modal__add__home .modal__text em,#modal__share .modal__text em {
    color: #15aaa1;
    font-weight: 700
}

#modal__add__home .modal__text .a-modal__share__text--point,#modal__share .modal__text .a-modal__share__text--point {
    color: #ff5176;
    font-size: 15px
}

#modal__add__home .modal__add__home__title,#modal__share .modal__add__home__title {
    margin: 10px auto 3px;
    padding: 5px 10px;
    width: 80%;
    border-radius: 2em;
    background: #15aaa1;
    color: #fff;
    text-align: center;
    font-weight: 700
}

#modal__add__home .modal__add__home__flow,#modal__share .modal__add__home__flow {
    margin: 0
}

#modal__add__home .modal__add__home__flow .slick-next,#modal__add__home .modal__add__home__flow .slick-prev,#modal__share .modal__add__home__flow .slick-next,#modal__share .modal__add__home__flow .slick-prev {
    top: 50%;
    z-index: 10;
    width: 32px;
    height: 32px;
    background-size: contain
}

#modal__add__home .modal__add__home__flow .slick-prev,#modal__share .modal__add__home__flow .slick-prev {
    left: -10px;
    background-position: 0
}

#modal__add__home .modal__add__home__flow .slick-next,#modal__share .modal__add__home__flow .slick-next {
    right: -10px;
    background-position: 100%
}

#modal__add__home .modal__add__home__flow .slick-counter,#modal__share .modal__add__home__flow .slick-counter {
    margin: 5px auto 0;
    padding: 5px 0;
    width: 60px;
    border-radius: 10px;
    background: #eee;
    color: #333;
    text-align: center;
    font-weight: 700;
    font-size: 90%
}

#modal__add__home .modal__add__home__flow__item,#modal__share .modal__add__home__flow__item {
    position: relative;
    padding: 10px 20px 0;
    width: 100%
}

#modal__add__home .modal__add__home__flow__item .slick-list,#modal__share .modal__add__home__flow__item .slick-list {
    margin: 0 0 -3px
}

#modal__add__home .modal__add__home__flow__item .slick-track,#modal__share .modal__add__home__flow__item .slick-track {
    width: 100%!important
}

#modal__add__home .modal__add__home__flow__img,#modal__share .modal__add__home__flow__img {
    width: 100%;
    border: 1px solid #ddd
}

#modal__add__home .modal__add__home__flow__text,#modal__share .modal__add__home__flow__text {
    margin-top: 5px;
    font-weight: 700;
    font-size: 90%;
    line-height: 1.5
}

#modal__add__home .modal__add__home__flow__text.kerning,#modal__share .modal__add__home__flow__text.kerning {
    letter-spacing: -.02em
}

#modal__add__home .modal__share__list,#modal__share .modal__share__list {
    position: relative;
    width: 86px;
    height: auto;
    border-radius: 3px;
    border-radius: 8px;
    color: #15aaa1;
    text-align: center;
    font-weight: 700;
    font-size: 13px
}

#modal__add__home .modal__share__list__link,#modal__share .modal__share__list__link {
    display: block;
    padding: 20px 0;
    color: #15aaa1
}

#modal__add__home .modal__share__img,#modal__share .modal__share__img {
    margin-bottom: 15px
}

#modal__add__home .is--copied:before,#modal__share .is--copied:before {
    position: absolute;
    top: -5px;
    right: 0;
    left: -14px;
    margin: auto;
    padding: 3px;
    width: 9em;
    border: 1px solid #ddd;
    border-radius: 2em;
    background: #fff;
    color: #666;
    content: "コピーしました!";
    font-weight: 400;
    font-size: 12px
}

#modal__add__home .a-friend__invite-tag,#modal__share .a-friend__invite-tag {
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    width: 100%;
    height: 50px;
    border: 2px solid #15aaa1;
    border-radius: 3px;
    text-align: center;
    font-size: 16px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.detail__share {
    position: relative
}

.detail__share .is--copied:before {
    position: absolute;
    top: -10px;
    right: 0;
    left: -5px;
    margin: auto;
    padding: 5px;
    width: 80px;
    border: 1px solid #ddd;
    border-radius: 2em;
    background: #fff;
    color: #666;
    content: "コピー完了!";
    font-weight: 400;
    font-size: 12px
}

.detail__share .a-friend__invite-tag {
    overflow: hidden;
    margin-right: 10px;
    padding: 0 10px;
    width: calc(100% - 90px);
    height: 50px;
    border: 2px solid #15aaa1;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.detail__share .a-friend__copybtn {
    width: 80px;
    height: 50px;
    background: #15aaa1!important
}

.a-review__point {
    margin-left: .5em;
    color: #ffce17;
    font-weight: 700;
    font-size: 16px
}

.a-review__rating {
    position: relative;
    z-index: 0;
    display: inline-block;
    color: #ccc;
    white-space: nowrap;
    letter-spacing: -.1em;
    font-size: 16px
}

.a-review__rating:after,.a-review__rating:before {
    content: "★ ★ ★ ★ ★"
}

.a-review__rating:after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
    color: #ffce17;
    white-space: nowrap
}

.a-review__rating[data-rate="5"]:after {
    width: 100%
}

.a-review__rating[data-rate="4.5"]:after {
    width: 93%
}

.a-review__rating[data-rate="4"]:after {
    width: 80%
}

.a-review__rating[data-rate="3.5"]:after {
    width: 72%
}

.a-review__rating[data-rate="3"]:after {
    width: 60%
}

.a-review__rating[data-rate="2.5"]:after {
    width: 52%
}

.a-review__rating[data-rate="2"]:after {
    width: 40%
}

.a-review__rating[data-rate="1.5"]:after {
    width: 30%
}

.a-review__rating[data-rate="1"]:after {
    width: 20%
}

.a-review__rating[data-rate="0.5"]:after {
    width: 9%
}

.a-review__rating[data-rate="0"]:after {
    width: 0
}

.m-item__review-list .a-review__point {
    margin-left: .2em;
    font-size: 15px
}

.m-item__review-list__inner {
    border-radius: 3px;
    position: relative;
    margin-bottom: 10px;
    padding: 15px;
    min-height: 132px!important;
    background: #fff
}

.m-item__review-list__wrapper {
    position: relative;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 5px
}

.a-item__review-list__text {
    margin-bottom: 15px;
    color: #666;
    word-break: break-all;
    line-height: 1.6
}

.m-item__review-list__value {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.m-item__review-list__define {
    font-weight: 700;
    font-size: 13px;
    line-height: 1.4
}

.m-item__review-list__define dt {
    margin: 0 5px 5px 0
}

.m-item__review-list__define dd {
    margin-bottom: .5em;
    color: #15aaa1
}

.a-item__review-list__value__btn .good-sign {
    color: #bbb;
    font-size: 22px
}

.a-item__review-list__value__num {
    margin-left: .3em;
    color: #bbb;
    font-weight: 700;
    font-size: 14px
}

.a-item__review-list__name {
    font-weight: 700;
    font-size: 13px
}

.a-item__review-list__sup {
    margin-left: .2em;
    color: #999;
    font-weight: 400;
    font-size: 11px
}

.a-item__review-list__empty {
    padding: 15px;
    border-radius: 3px;
    background-color: #fef9c4;
    text-align: center;
    line-height: 1.5
}

.a-item__review-list__empty em {
    font-weight: 700
}

.a-item__review-list__empty em.point {
    color: #ff3939
}

.review-read-more {
    position: absolute;
    right: 15px;
    bottom: 17px;
    display: none;
    cursor: pointer;
    -webkit-transition: All .2s ease;
    transition: All .2s ease
}

.exchangelist {
    margin: 0 auto;
    width: 90vw
}

.exchangelist__wrapper:not(:last-child) {
    margin-bottom: 2%
}

.exchangelist__category {
    padding: 2% 0;
    border-radius: 10px 10px 0 0;
    background-color: #ffd21c;
    color: #5d3d00;
    text-align: center;
    font-weight: 700;
    font-size: 14px
}

.exchangelist__logo {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2%;
    border: solid #ffd21c;
    border-width: 0 3px 3px;
    border-radius: 0 0 10px 10px;
    background-color: #fff
}

.exchangelist__logo__item {
    width: 23.5%
}

.exchangelist__logo__item:not(:nth-child(4n)) {
    margin-right: 2%
}

.exchangelist__logo__item img {
    width: 100%;
    height: auto
}

.exchangeappeal {
    margin: 0 auto;
    width: 90vw
}

.exchangeappeal__img {
    margin-bottom: 10px
}

.exchangeappeal__img img {
    width: 100%;
    height: auto
}

.exchangeappeal__note {
    margin: 5px auto 10px;
    padding: 0 0 0 1em!important;
    text-align: left;
    text-indent: -1em;
    font-size: 10px;
    line-height: 1.6
}

@-webkit-keyframes chara_jump {
    77% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    85% {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px)
    }

    88% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    91% {
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px)
    }

    93% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

@keyframes chara_jump {
    77% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    85% {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px)
    }

    88% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    91% {
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px)
    }

    93% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}



@-webkit-keyframes reflection {
    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(45deg);
        transform: scale(0) rotate(45deg)
    }

    80% {
        opacity: .5;
        -webkit-transform: scale(0) rotate(45deg);
        transform: scale(0) rotate(45deg)
    }

    81% {
        opacity: 1;
        -webkit-transform: scale(4) rotate(45deg);
        transform: scale(4) rotate(45deg)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(50) rotate(45deg);
        transform: scale(50) rotate(45deg)
    }
}

@keyframes reflection {
    0% {
        opacity: 0;
        -webkit-transform: scale(0) rotate(45deg);
        transform: scale(0) rotate(45deg)
    }

    80% {
        opacity: .5;
        -webkit-transform: scale(0) rotate(45deg);
        transform: scale(0) rotate(45deg)
    }

    81% {
        opacity: 1;
        -webkit-transform: scale(4) rotate(45deg);
        transform: scale(4) rotate(45deg)
    }

    to {
        opacity: 0;
        -webkit-transform: scale(50) rotate(45deg);
        transform: scale(50) rotate(45deg)
    }
}

.m-item__regist__block {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 -15px 20px;
    padding: 20px 15px;
    border-radius: 3px;
    background: #fffef4;
    color: #624300
}

.m-item__regist__inner {
    text-align: center
}

.m-item__regist__inner:not(:last-child) {
    margin-bottom: 50px
}

.m-item__regist__img img {
    width: 100%;
    height: auto
}

.m-item__regist__voice {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 20px;
    background: #fff;
    -webkit-box-shadow: 0 0 12px -8px;
    box-shadow: 0 0 12px -8px;
    text-align: left
}

.m-item__regist__voice:first-child {
    margin-bottom: 20px
}

.m-item__regist__voice dt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 0 10px auto;
    width: calc(100% - 80px);
    height: 70px;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.5
}

.m-item__regist__voice:before {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 70px;
    height: 70px;
    content: ""
}

.m-item__regist__voice.voice01 dt {
    color: #ba9747
}

.m-item__regist__voice.voice01:before {
   
}

.m-item__regist__voice.voice02 dt {
    color: #74ced1
}

.m-item__regist__voice.voice02:before {
    
}

.m-item__regist .a-item__btn {
    overflow: hidden
}

.a-item__btn__regist {
    position: relative;
    left: 25px;
    font-size: 20px
}

.a-item__btn__regist:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -52px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: auto;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #fff;
    color: #ff3939;
    content: "簡単\A1分";
    white-space: pre;
    font-size: 14px;
    line-height: 1.2
}

.reflection {
    position: absolute;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-animation: reflection 2s ease-in-out infinite;
    animation: reflection 2s ease-in-out infinite
}

.lp__block__title {
    margin-bottom: 20px;
    text-align: center;
    font-weight: 900;
    font-size: 20px;
    font-family: Noto Sans JP,sans-serif;
    line-height: 1.2
}

.lp__block__title em {
    color: #ff5176
}



.lp__block__ttl {
    margin-bottom: 20px
}

.lp__block__ttl img {
    width: 100%;
    height: auto
}

.lp__block__txt {
    margin-bottom: 20px;
    text-align: left;
    line-height: 1.75
}

.lp__block__txt em {
    color: #ff5176
}

.exchangeappeal,.exchangelist {
    width: 100%
}

.m-item__strategy_review__inner {
    margin: 0 -15px;
    padding: 15px;
    background: #eafcfb
}

.m-item__strategy_review__block {
    position: relative;
    margin-bottom: 20px;
    padding: 15px 5px;
    border-radius: 3px;
    background: #fff
}

.m-item__strategy_review__schema {
    margin-bottom: 10px
}

.a-item__strategy_review__title {
    margin-bottom: 10px;
    color: #15aaa1;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.4
}

.a-item__strategy_review__graph {
    margin: auto
}

.a-item__strategy_review__time {
    margin: auto;
    margin-left: 25px;
    font-size: 14px;
    line-height: 1.5
}

.a-item__strategy_review__time li {
    position: relative
}

.a-item__strategy_review__time li:before {
    position: absolute;
    top: 0;
    left: -20px;
    content: "●"
}

.a-item__strategy_review__time li:first-child::before {
    color: #ff65b1
}

.a-item__strategy_review__time li:nth-child(2):before {
    color: #ff473f
}

.a-item__strategy_review__time li:nth-child(3):before {
    color: #ffa539
}

.a-item__strategy_review__time li:nth-child(4):before {
    color: #66cf25
}

.a-item__strategy_review__time li:nth-child(5):before {
    color: #3cbeff
}

.a-item__strategy_review__time li:nth-child(6):before {
    color: #6c5eff
}

.a-item__strategy_review__average {
    text-align: center;
    font-weight: 700;
    font-size: 16px
}

.a-item__strategy_review__average em {
    margin-left: 10px;
    color: #ff3939;
    font-size: 24px
}

.a-item__strategy_review__novote {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 3px;
    background: rgba(255,203,90,.55)
}

.a-item__strategy_review__novote span {
    padding: 8px;
    width: 200px;
    border-radius: 2em;
    background: #fff;
    color: #15aaa1;
    text-align: center;
    letter-spacing: .08em;
    font-weight: 700;
    font-size: 18px
}

.m-item__strategy_review .m-item__review-list__value {
    position: absolute;
    top: -4px;
    right: 0
}

.m-item__strategy_review .a-item__review-list__border {
    margin-bottom: 10px;
    border-top: 1px solid #ddd
}

.m-item_dream_chance {
    position: relative
}

.m-item_dream_chance .a-btn__about {
    display: block;
    margin: auto 0 10px auto;
    padding: 5px 4px;
    width: 170px;
    border: 1px solid;
    border-radius: 3px;
    background-color: #fff;
    color: #15aaa1;
    text-align: center;
    font-size: 11px
}

.m-item_dream_chance span {
    color: #0072d1
}

.m-item_dream_chance em {
    color: #ff3939
}

.m-item_dream_chance__inner {
    position: relative;
    height: auto;
    border-right: 8px solid #ffe0ff;
    border-left: 8px solid #ffb0b1;
    border-radius: 3px
}

.m-item_dream_chance__inner:after,.m-item_dream_chance__inner:before {
    background: -webkit-gradient(linear,left top,right top,from(#ffb0b1),color-stop(20%,#ffc78f),color-stop(35%,#feffb3),color-stop(50%,#caffc9),color-stop(65%,#d3fffe),color-stop(80%,#d8d7ff),to(#ffe0ff));
    background: -webkit-linear-gradient(left,#ffb0b1,#ffc78f 20%,#feffb3 35%,#caffc9 50%,#d3fffe 65%,#d8d7ff 80%,#ffe0ff);
    background: linear-gradient(90deg,#ffb0b1 0,#ffc78f 20%,#feffb3 35%,#caffc9 50%,#d3fffe 65%,#d8d7ff 80%,#ffe0ff);
    display: block;
    height: 8px;
    content: ""
}

.m-item_dream_chance__present {
    position: relative;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 15px 18px
}

.m-item_dream_chance__present:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background-image: -webkit-gradient(linear,left top,right top,from(#ffb0b1),color-stop(20%,#ffc78f),color-stop(35%,#feffb3),color-stop(50%,#caffc9),color-stop(65%,#d3fffe),color-stop(80%,#d8d7ff),to(#ffe0ff));
    background-image: -webkit-linear-gradient(left,#ffb0b1,#ffc78f 20%,#feffb3 35%,#caffc9 50%,#d3fffe 65%,#d8d7ff 80%,#ffe0ff);
    background-image: linear-gradient(90deg,#ffb0b1 0,#ffc78f 20%,#feffb3 35%,#caffc9 50%,#d3fffe 65%,#d8d7ff 80%,#ffe0ff);
    content: ""
}

.m-item_dream_chance__box {
    padding: 15px
}

.m-item_dream_chance .a-item_dream_chance--name {
    position: relative;
    width: calc(100% - 66px);
    word-break: break-word;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.3
}

.m-item_dream_chance .a-item_dream_chance--detail {
    margin: 15px 0 5px;
    width: 100%
}

.m-item_dream_chance .a-item_dream_chance--detail .a-text {
    padding-left: 1.1em;
    text-indent: -1.2em;
    font-size: 12px
}

.m-item_dream_chance .a-item_dream_chance__icon {
    display: inline-block;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 3px;
    margin-bottom: 5px;
    padding: 5px 1px;
    width: 101px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: #d7a83a;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 12px;
    line-height: 1
}

.m-item_dream_chance .a-item_dream_chance__icon--count {
    padding: 3px 6px;
    background: #ff3939;
    font-size: 14px
}

.m-item_dream_chance .a-item_dream_chance--img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.m-item_dream_chance dd {
    font-weight: 700;
    font-size: 13px
}

.m-item_dream_chance .flex--start {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.m-item_dream_chance .tooltip__btn {
    display: block;
    padding: 6px;
    width: 66px;
    border: 1px solid;
    border-radius: 3px;
    background: #15aaa1;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 13px
}

.m-item_dream_chance .tooltip__block {
    position: absolute;
    top: -50%!important;
    right: 25%!important;
    left: 0!important;
    margin: 0 auto;
    border: 1px solid #15aaa1
}

.m-item_dream_chance .tooltip__block .a-dream_chance__present--txt {
    margin: 10px 0;
    line-height: 1.6
}

.m-dream_chance__special {
    margin-top: 10px
}

.m-dream_chance__special__title {
    text-align: center;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.6
}

.m-dream_chance__special__box {
    padding: 10px
}

.m-dream_chance__special__list {
    margin-bottom: 10px
}

.m-dream_chance__special__list li {
    position: relative;
    width: 33.33333%;
    text-align: center
}

.m-dream_chance__special__list li img {
    width: 96%;
    height: auto
}

.m-dream_chance__special .a-dream_chance__special__date {
    display: block;
    margin-bottom: 5px;
    color: #333;
    font-weight: 700;
    font-size: 12px
}

.m-dream_chance__special .a-dream_chance__special__people {
    display: inline-block;
    padding: 6px 20px 4px;
    border-radius: 2em;
    background: #ff3939;
    color: #fff;
    font-weight: 700;
    font-size: 14px
}

.m-dream_chance__special .a-text--note--full {
    text-align: right;
    font-size: 13px
}

.m-item__sale__inner {
    border: 8px solid #eafcfb;
    border-radius: 3px
}

.m-item__sale__inner:not(:last-child) {
    margin-bottom: 15px
}

.m-item__sale__inner .a-item__sale__title {
    padding: 5px 0 13px;
    background: #eafcfb;
    color: #15aaa1;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.4
}

.m-item__sale__detail {
    padding: 15px
}

.m-item__sale__detail .a-item__sale__text {
    line-height: 1.7
}

.m-item__sale__detail .a-item__sale__text+div {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #ddd
}

.m-item__sale__detail .a-item__sale__limit {
    margin-right: 5px;
    width: 6em;
    border-radius: 10px;
    background-color: #f2f2f2;
    color: #ff3939;
    text-align: center;
    font-weight: 700;
    font-size: 12px;
    line-height: 20px
}

.m-item__sale__detail .a-item__sale__date {
    margin: auto 0;
    font-weight: 700
}

.m-item__sale__detail .a-item__sale__update {
    text-align: right;
    font-size: 12px
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: .5
    }

    to {
        opacity: 1
    }
}

.m-slick .slick-next,.m-slick .slick-prev {
    position: absolute;
    top: 93%;
    display: block;
    width: 20px;
    height: 20px;
    outline: none;
    border: none;
    background: transparent;
    color: transparent;
    font-size: 0;
    line-height: 0;
    cursor: pointer
}

.m-slick .slick-next:before,.m-slick .slick-prev:before {
    position: absolute;
    top: 50%;
    display: block;
    margin-top: -7px;
    width: 10px;
    height: 10px;
    border-top: 4px solid #ccc;
    border-right: 4px solid #ccc;
    content: "";
    font-size: 10px
}

.m-slick .slick-next.slick-disabled:before,.m-slick .slick-prev.slick-disabled:before {
    opacity: .25
}

.m-slick .slick-prev:before {
    left: 5px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

.m-slick .slick-next:before {
    right: 5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.m-slick .slick-prev {
    left: 0
}

[dir=rtl] .m-slick .slick-prev {
    right: 0;
    left: auto
}

.m-slick .slick-prev:before,[dir=rtl] .m-slick .slick-prev:before {
    content: ""
}

.m-slick .slick-next {
    right: 0
}

[dir=rtl] .m-slick .slick-next {
    right: auto;
    left: 0
}

.m-slick .slick-next:before,[dir=rtl] .m-slick .slick-next:before {
    content: ""
}

.m-slick--button .slick-prev {
    left: -8px;
    border-radius: 3px
}

.m-slick--button .slick-next {
    right: -8px;
    border-radius: 3px
}

.m-slick--button .slick-next,.m-slick--button .slick-prev {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    margin: auto;
    width: 32px;
    height: 60px;
    outline: none;
    border: none;
    background: hsla(0,0%,73%,.5);
    cursor: pointer;
    font-size: 0;
    line-height: 0
}

.m-slick--button .slick-prev:before {
    content: "\e110"
}

.m-slick--button .slick-next:before,.m-slick--button .slick-prev:before {
    position: absolute;
    top: 50%;
    margin-top: -.5em;
    speak: none
}

.m-slick--button .slick-next:before {
    content: "\e10e"
}

.m-slick--button .slick-next:before,.m-slick--button .slick-prev:before {
    position: relative;
    top: 5px;
    left: 0;
    color: #fff;
    font-size: 20px
}

.slick-dots {
    padding: 5px;
    list-style: none;
    text-align: center
}

.slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 3px;
    padding: 0
}

.slick-dots li,.slick-dots li button {
    width: 20px;
    height: 20px;
    cursor: pointer
}

.slick-dots li button {
    display: block;
    padding: 5px;
    outline: none;
    border: 0;
    background: transparent;
    color: transparent;
    font-size: 0;
    line-height: 0
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    color: #15aaa1;
    content: "●";
    text-align: center;
    font-size: 10px;
    font-family: slick;
    line-height: 20px;
    opacity: .25
}

.slick-dots li.slick-active button:before {
    color: #15aaa1;
    opacity: .75
}

.slick-slider {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list,.slick-slider {
    position: relative;
    display: block
}

.slick-list {
    overflow: hidden;
    margin: 0 -7px;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,.slick-slider .slick-track {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block
}

.slick-track:after,.slick-track:before {
    display: table;
    content: ""
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    min-height: 1px;
    height: 100%
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.m-item__movie .m-item__movie__inner {
    text-align: left
}

.m-item__movie .m-item__movie__inner .a-text {
    margin-top: 10px;
    font-size: 10px
}

.m-item__movie .m-item__movie__main {
    width: 100%
}

.m-item__movie .m-item__movie__main .slick-list {
    margin: 0 0 -3px
}

.m-item__movie .m-item__movie__main .slick-track {
    width: 100%!important
}

.m-item__movie .a-item__movie__main {
    position: relative;
    display: none;
    overflow: hidden;
    margin-bottom: 5px;
    padding-bottom: 56.25%;
    height: 0
}

.m-item__movie .a-item__movie__main iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.m-item__movie .slick-active {
    left: 0!important;
    display: block
}

.m-item__movie .m-item__movie__thumbnail {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow-x: scroll;
    margin: 10px auto 0
}

.m-item__movie .a-item__movie__thumbnail {
    position: relative;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 120px;
    -ms-flex: 0 1 120px;
    flex: 0 1 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 3px;
    cursor: pointer
}

.m-item__movie .a-item__movie__thumbnail:first-child {
    margin: 0 3px 0 0
}

.m-item__movie .a-item__movie__thumbnail:last-child {
    margin: 0 0 0 3px
}

.m-item__movie .a-item__movie__thumbnail:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    -webkit-transition: all .3s linear;
    transition: all .3s linear
}

.m-item__movie .a-item__movie__thumbnail--current:after {
    background-color: rgba(0,0,0,.5)
}

.m-item__movie .a-item__movie__thumbnail img {
    margin: 0 auto;
    width: 100%
}

.o-list--portrait {
    position: relative;
    padding: 0 10px
}

.o-list--portrait * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.o-list--portrait .m-list__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 7px;
    width: 49%;
    border: solid 1px #eee;
}

.o-list--portrait .m-list__item:nth-child(odd) {
    margin-right: 2%
}

.o-list--portrait .m-list__item a {
    border-radius: 3px;
    display: block;
    padding: 0;
    width: 100%;
    background-color: #fff;
  
}

.o-list--portrait .m-list__item a.is-done {
   
    background-position: 110% 110%;
    background-size: 50%;
    background-repeat: no-repeat
}

.o-list--portrait .m-list__item__point {
    text-align: center;
    line-height: 1
}

.o-list--portrait .a-list__title {
    margin: 30px auto 10px;
    font-weight: 700;
    font-size: 139%;
    line-height: 1.2
}

.o-list--portrait .a-list__item__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto 0px;
    width: 96px;
    height: 96px;
    background: rgb(255 255 255 / 15%);
}

.o-list--portrait .a-list__item__img img {
    display: block;
    width: 100%;
    height: auto
}

.o-list--portrait .a-list__item__title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    margin-bottom: 8px;
    padding: .5em;
    height: 3.4em;
   background-color: #4a4a4a;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 12px;
    line-height: 1.4
}

.o-list--portrait .a-list__item__title span {
    display: -webkit-box;
    overflow: hidden;
    max-height: 2.8em;
    line-height: 1.4em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    word-break: break-word
}

.o-list--portrait .a-list__item__action {
    overflow: hidden;
    margin-bottom: 8px;
    padding: 0 8px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px
}

.o-list--portrait .a-list__item__point {
    color: #d70d25;
    font-weight: 700;
    font-size: 20px
}

.o-list--portrait .a-list__item__benefit {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    margin: 0 auto;
    padding: 5px;
    width: 90%;
    background: #eee;
    color: #ff3939;
    text-align: center;
    font-weight: 700;
    font-size: 13px
}

.o-list--col3 .m-list__item {
    margin-right: 2%;
    width: 32%;
    border: solid 1px #eee;
}

.o-list--col3 .m-list__item:nth-child(3n) {
    margin-right: 0
}

.o-list--col3 .m-list__item a {
    outline: none
}

.o-list--col3 .a-list__item__img {
    width: 80px;
    height: 80px
}

.o-list--col3 .a-list__item__title {
    -webkit-box-align: normal;
    -webkit-align-items: normal;
    -ms-flex-align: normal;
    align-items: normal;
    padding: 0 .5em;
    height: 2.5em;
    background: none;
     color: #000;
}

.o-list--col3 .a-list__item__point {
    font-size: 16px
}

.o-list--col3 .a-list__item__benefit {
    font-size: 12px
}

.o-campaign-list .m-list__item a {
    padding: 5px
}

.o-campaign-list .a-list__item__banner img {
    width: 100%;
    height: auto
}

.lecture-persnal__wrap {
    position: absolute;
    top: 0;
    right: 50%;
    z-index: 12;
    display: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 40px -150px 0 0;
    padding: 20px;
    width: 300px;
    border: 2px solid #15aaa1;
    border-radius: 3px;
    background-color: hsla(0,0%,100%,.95);
    -webkit-box-shadow: 0 2px 10px hsla(0,0%,47%,.35);
    box-shadow: 0 2px 10px hsla(0,0%,47%,.35);
    font-size: 12px
}

.lecture-persnal__wrap .persnal__title {
    margin-bottom: 5px;
    color: #15aaa1;
    font-weight: 700;
    font-size: 13px
}

.lecture-persnal__wrap .persnal__text {
    margin-bottom: 5px;
    font-size: 11px;
    line-height: 1.5
}

.lecture-persnal__wrap .persnal__text a {
    color: #15aaa1;
    text-decoration: underline
}

.lecture-persnal__wrap .persnal__text a:hover {
    text-decoration: none
}

.lecture-persnal__wrap .personal-img {
    display: block;
    margin-bottom: 10px
}

.lecture-persnal__wrap .persnal__note {
    margin-bottom: 3px;
    color: #888;
    font-size: 11px;
    line-height: 1.3
}

.personal__question__badge {
    display: inline-block;
    padding: 4px 0;
    width: 20px;
    height: 20px;
    border: 1px solid #15aaa1;
    border-radius: 50%;
    color: #15aaa1;
    font-weight: 700;
    font-style: normal;
    font-size: 10px;
    line-height: 1
}

.persnal__del,.personal__question__badge {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center
}

.persnal__del {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #15aaa1;
    color: #fff;
    font-size: 18px;
    line-height: 30px;
    cursor: pointer
}

.lecture-persnal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 11;
    display: none;
    min-width: 100%;
    min-height: 100%;
    background: rgba(0,0,0,.5)
}

.lecture-persnal__wrap.kutikomi img {
    display: block;
    margin-bottom: 10px
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__icon {
    padding-right: 5px
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__bankbook {
    position: relative;
    display: block;
    margin-bottom: 10px;
    padding: 18px 0;
    border-bottom: 2px solid #ccc;
    border-radius: 25px;
    background: #00aaa1;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 1
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__bankbook:hover {
    color: #fff;
    opacity: .8
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__bankbook:after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__review {
    position: relative;
    display: block;
    margin-bottom: 10px;
    padding: 18px 0;
    border-bottom: 2px solid #ccc;
    border-radius: 25px;
    background: #ff5a89;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 1
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__review:hover {
    color: #fff;
    opacity: .8
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__review:after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__kutikomi {
    position: relative;
    display: block;
    margin-bottom: 10px;
    padding: 18px 0;
    border-bottom: 2px solid #ccc;
    border-radius: 25px;
    background: #ffa900;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 1
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__kutikomi:hover {
    color: #fff;
    opacity: .8
}

.lecture-persnal__wrap.kutikomi .btn__block .btn__kutikomi:after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.lecture-persnal__wrap.kutikomi .btn__block a:last-child {
    margin-bottom: 0
}

.example {
    margin-bottom: 5px
}

.example__ico {
    display: inline-block;
    margin-right: 5px;
    padding: 1px 4px;
    background: #15aaa1;
    color: #fff;
    vertical-align: 1px;
    font-weight: 400;
    font-size: 10px;
    line-height: 13px
}

.example__dt {
    margin-bottom: 2px;
    font-size: 12px;
    line-height: 1.3
}

.example__dd {
    margin-bottom: 10px;
    font-size: 11px;
    line-height: 1.4
}

.example__dd:last-child {
    margin-bottom: 0
}

.tooltip__block {
    position: absolute;
    z-index: 50001;
    display: none;
    padding: 10px;
    border-radius: 3px;
    background-color: #fff;
    -webkit-box-shadow: 0 15px 20px 5px hsla(0,0%,40%,.5);
    box-shadow: 0 15px 20px 5px hsla(0,0%,40%,.5)
}

.tooltip__ico {
    position: inherit;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: -1px 0 0 2px;
    width: 16px;
    height: 16px;
    border-radius: 2em;
    background: #fff;
    color: #15aaa1;
    vertical-align: -1px;
    text-align: center;
    font-size: 16px;
    line-height: 16px
}

.tooltip__ico .exclamation:after,.tooltip__ico .question:after {
    position: inherit;
    display: inline;
   
}

.tooltip__ico .exclamation:after {
    content: "\e109"
}

.tooltip__ico .question:after {
    content: "\e10a"
}

.tooltip__close {
    padding-top: 0
}

.tooltip-on {
    display: block
}

.persnal__del--icon {
    position: absolute;
    top: -10px;
    right: -10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #15aaa1;
    color: #fff;
    text-align: center;
    font-size: 18px;
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer
}

.modal__wrap {
    position: absolute;
    z-index: 50110;
    text-align: left
}

.modal__overlay,.modal__wrap {
    top: 0;
    left: 0;
    display: none;
    width: 100%
}

.modal__overlay {
    position: fixed;
    z-index: 50100;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    -webkit-backface-visibility: hidden
}

.modal__closebtn {
    position: absolute;
    top: -10px;
    right: -10px;
    border-radius: 2em;
    background-color: #333
}

.modal__closebtn i {
    display: block;
    padding: .5em;
    font-size: 20px
}

.modal__closebtn i:before {
    color: #fff
}

.modal__content {
    position: relative;
    display: none;
    margin: 15px;
    padding: 10px 15px;
    border-radius: 3px;
    background: #fff
}

.modal__heading {
    margin: 5px 0 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #ccc
}

.modal__heading h2 {
    font-weight: 700;
    font-size: 140%
}

.modal__about_full {
    display: table;
    margin-top: 30px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    width: 100%;
    border-bottom: 1px solid #ccc
}

.modal__about__condition_full {
    display: table-cell;
    width: 100%;
    vertical-align: top
}

.modal__about__img img {
    width: 120px;
    height: auto
}

.modal__about__point {
    margin: -60px 0 30px
}

.modal__about__point dt {
    margin-bottom: 5px;
    margin-left: auto;
    padding: 5px 0;
    width: 120px;
    background-color: #666;
    color: #fff;
    text-align: center
}

.modal__about__point dd {
    position: relative;
    margin-top: 10px;
    color: #3f3e3e;
    text-align: right;
    font-weight: 700;
    font-size: 100%
}

.modal__about__point dd .point {
    color: #ff3939;
    font-weight: 700;
    font-size: 24px
}

.modal__about__table {
    margin: 10px 0;
    padding: 10px;
    width: 100%
}

.modal__about__table,.modal__about__table tr {
    border: 1px solid #ccc;
    border-collapse: collapse;
    text-align: center
}

.modal__about__table tr {
    margin: 0;
    padding: 0
}

.modal__about__table td {
    display: block;
    padding: 5px;
    vertical-align: middle;
    text-align: left;
    line-height: 1.4
}

.modal__about__table th {
    padding: 5px;
    width: 30%;
    background: #eee;
    vertical-align: middle
}

.modal__detail {
    margin-bottom: 20px
}

.modal__detail__heading {
    margin: 10px 0 15px
}

.modal__detail__heading h3 {
    font-weight: 700;
    font-size: 120%
}

.modal__detail__text {
    padding: 10px;
    line-height: 1.4
}

.modal__detail__text .condition {
    color: #ff3939
}

.modal__detail__well {
    padding: 15px;
    border-radius: 3px;
    background-color: #eee;
    font-size: 90%;
    line-height: 1.4;
    margin-bottom: 10px
}

.modal__detail__well ul li {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: .5em
}

.modal__detail__well ul li:last-child {
    margin-bottom: 0
}

.modal__detail__well p {
    padding-top: 5px
}

#modal__tracking {
    margin: 20px;
    padding: 15px
}

#modal__tracking .modal__heading h2 {
    color: #ff3939;
    font-size: 120%
}

#modal__tracking .modal__detail {
    margin-bottom: 10px
}

#modal__tracking .modal__detail__text {
    margin-bottom: 10px;
    padding: 0
}

#modal__tracking .modal__detail__text .a-text--bold {
    color: #ff3939
}

#modal__tracking .modal__tracking__note__ttl {
    display: inline-block;
    margin-bottom: 0;
    padding: 3px 10px;
    background: #15aaa1;
    color: #fff;
    font-weight: 700
}

#modal__tracking .modal__tracking__note__text {
    font-weight: 700
}

#modal__tracking .modal__tracking__note__text:not(:last-child) {
    margin-bottom: 10px
}

#modal__tracking .modal__tracking__flow {
    margin: 0 0 20px
}

#modal__tracking .modal__tracking__flow .slick-next,#modal__tracking .modal__tracking__flow .slick-prev {
    top: 50%;
    z-index: 10;
    width: 32px;
    height: 32px;
    background-size: contain
}

#modal__tracking .modal__tracking__flow .slick-prev {
    left: -10px;
    background-position: 0
}

#modal__tracking .modal__tracking__flow .slick-next {
    right: -10px;
    background-position: 100%
}

#modal__tracking .modal__tracking__flow .slick-counter {
    margin: 5px auto 0;
    padding: 5px 0;
    width: 60px;
    border-radius: 10px;
    background: #eee;
    color: #333;
    text-align: center;
    font-weight: 700;
    font-size: 90%
}

#modal__tracking .modal__tracking__flow__item {
    position: relative;
    padding: 10px 20px 0;
    width: 100%
}

#modal__tracking .modal__tracking__flow__item .slick-list {
    margin: 0 0 -3px
}

#modal__tracking .modal__tracking__flow__item .slick-track {
    width: 100%!important
}

#modal__tracking .modal__tracking__flow__img {
    width: 100%
}

#modal__tracking .modal__tracking__flow__text {
    margin-top: 5px;
    font-weight: 700;
    font-size: 90%;
    line-height: 1.5
}

#modal__tracking .modal__tracking__flow__text.kerning {
    letter-spacing: -.02em
}

#modal__tracking .modal__tracking__img {
    margin-bottom: 20px
}

#modal__tracking .modal__tracking__img img {
    width: 100%
}

#modal__tracking .a-btn--l {
    padding: 16px 10px!important
}

#modal__tracking .modal__closebtn {
    position: absolute;
    top: -15px;
    right: -15px;
    background: #15aaa1
}

@-webkit-keyframes slideIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-64px);
        transform: translateX(-64px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-64px);
        transform: translateX(-64px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

#top__campaign {
    margin-bottom: 30px
}

#top__campaign .title {
    font-size: 15px
}

.a-item__consider {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 5px;
    border-radius: 2em;
    font-size: 12px;
    margin: 0 auto 10px;
    width: 90%;
    background: #e1fbfa;
    opacity: 0;
    -webkit-animation: slideIn 1.5s ease-out .5s 1 forwards;
    animation: slideIn 1.5s ease-out .5s 1 forwards
}

.a-item__consider em {
    margin: 0 .3em;
    color: #ff3939;
    font-weight: 700
}

.a-item__consider i {
    margin-right: .3em;
    color: #15aaa1;
    font-size: 16px
}

.a-item__consider__floating {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 5px;
    border-radius: 2em;
    font-size: 12px;
    position: absolute;
    top: -30px;
    left: 10px;
    padding: 3px;
    width: 85%;
    background: rgba(21,170,161,.9);
    color: #fff;
    opacity: 0;
    -webkit-animation: fadeIn .3s linear .3s 1 forwards;
    animation: fadeIn .3s linear .3s 1 forwards
}

.a-item__consider__floating em {
    margin: 0 .3em;
    color: #ff3939;
    font-weight: 700
}

.a-item__consider__floating i {
    margin-right: .3em;
    color: #15aaa1;
    font-size: 16px
}

.a-item__consider__floating em {
    color: #fe0
}

.a-item__consider__floating i {
    color: #fff
}

.m-item__btn__floating {
    position: fixed;
    bottom: 50px;
    left: 0;
    z-index: 3;
    display: none;
    width: 100%
}

.a-item__btn__floating {
    margin: 0;
    padding: 15px 10px;
    border-radius: 0
}

.a-item__btn__floating--del {
    position: absolute;
    top: -18px;
    right: 7px;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: #333;
    color: #fff;
    font-size: 24px;
    opacity: 0;
    -webkit-animation: fadeIn .3s linear .3s 1 forwards;
    animation: fadeIn .3s linear .3s 1 forwards
}

.a-item__btn__floating--del,.m-cardappeal__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.m-cardappeal__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    border: 2px solid #ffa900;
    border-radius: 3px;
    background-color: #fff;
    -webkit-box-shadow: 0 2px 0 0 #ddd;
    box-shadow: 0 2px 0 0 #ddd
}

.a-cardappeal__title,.m-cardappeal__item {
    position: relative;
    width: 100%;
    text-align: center;
    font-weight: 700
}

.a-cardappeal__title {
    margin: 0 auto 15px;
    padding: 8px;
    border-radius: 2em;
    background-color: #ffa900;
    color: #fff
}

.a-cardappeal__title:after {
    position: absolute;
    bottom: -8px;
    left: 50%;
    margin-left: -8px;
    width: 0;
    height: 0;
    border-width: 8px 8px 0;
    border-style: solid;
    border-color: #ffa900 transparent transparent;
    border-radius: .1px;
    content: ""
}

.a-cardappeal__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 15px;
    width: 100px;
    height: 100px
}

.a-cardappeal__img img {
    width: 100px;
    height: auto
}

.a-cardappeal__text {
    font-size: 18px;
    line-height: 1.25
}

.a-cardappeal__point {
    margin: 0 8px;
    color: #ff3939;
    font-size: 30px
}

.modal__closebtn {
    background: #15aaa1
}

#footer {
    margin-bottom: 50px!important
}

.m-bannerarea {
    margin-bottom: 10px;
    padding: 5px;
    background: #fff
}

.o-list--portrait_s {
    position: relative;
    padding: 15px 10px;
    background: #fffce5;
}

o-list--portrait_s * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

o-list--portrait_s .m-list__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 7px;
    width: 49%;
    border: solid 1px #eee;
}

o-list--portrait_s .m-list__item:nth-child(odd) {
    margin-right: 2%
}

o-list--portrait_s .m-list__item a {
    border-radius: 3px;
    display: block;
    padding: 10px 0;
    width: 100%;
    background-color: #fff;
  
}

o-list--portrait_s .m-list__item a.is-done {
   
    background-position: 110% 110%;
    background-size: 50%;
    background-repeat: no-repeat
}

o-list--portrait_s .m-list__item__point {
    text-align: center;
    line-height: 1
}

o-list--portrait_s .a-list__title {
    margin: 30px auto 10px;
    font-weight: 700;
    font-size: 139%;
    line-height: 1.2
}

o-list--portrait_s .a-list__item__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto 10px;
    width: 96px;
    height: 96px;
    background: rgb(255 255 255 / 15%);
}

o-list--portrait_s .a-list__item__img img {
    display: block;
    width: 100%;
    height: auto
}

o-list--portrait_s .a-list__item__title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    margin-bottom: 8px;
    padding: .5em;
    height: 3.4em;
   background-color: #4a4a4a;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 12px;
    line-height: 1.4
}

o-list--portrait_s .a-list__item__title span {
    display: -webkit-box;
    overflow: hidden;
    max-height: 2.8em;
    line-height: 1.4em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    word-break: break-word
}

o-list--portrait_s .a-list__item__action {
    overflow: hidden;
    margin-bottom: 8px;
    padding: 0 8px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px
}

o-list--portrait_s .a-list__item__point {
    color: #d70d25;
    font-weight: 700;
    font-size: 20px
}

o-list--portrait_s .a-list__item__benefit {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    margin: 0 auto;
    padding: 5px;
    width: 90%;
    background: #eee;
    color: #ff3939;
    text-align: center;
    font-weight: 700;
    font-size: 13px
}