@charset "UTF-8";

@keyframes shake {

    0%,
    100% {
        transform: rotate(0)
    }

    20% {
        transform: rotate(10deg)
    }

    40% {
        transform: rotate(-10deg)
    }

    70% {
        transform: rotate(5deg)
    }
}

@media screen and (max-width:767px) {

    header label,
    header label::after,
    header label::before {
        display: block;
        transition-duration: .3s;
        transition-delay: 0s;
        transition-timing-function: ease
    }

    header label {
        width: 60px;
        height: 60px;
        margin-left: auto;
        position: relative;
        background-image: linear-gradient(to right, #000, #000);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 30px 2px;
        transition-property: background-size
    }

    header label::after,
    header label::before {
        content: "";
        width: 30px;
        height: 2px;
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        background-color: #000;
        transition-property: all
    }

    header label::before {
        top: 18px
    }

    header label::after {
        bottom: 18px
    }

    .header__inner {
        padding-right: 10px
    }

    #chk_nav:checked~header label {
        background-size: 0 2px
    }

    #chk_nav:checked~header label::before {
        top: 29px;
        transform: rotate(135deg)
    }

    #chk_nav:checked~header label::after {
        bottom: 29px;
        transform: rotate(-135deg)
    }

    #chk_nav:checked~header #nav_global {
        transform: translateX(0)
    }
}

#nav_global {
    margin-left: auto
}

#nav_global ul.parents {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    line-height: 34px;
    font-size: 19px;
    font-weight: 700
}

#nav_global ul.parents li+li {
    margin-left: 10px
}

#nav_global ul.parents li.has_children {
    position: relative
}

#nav_global ul.parents li.has_children.active ul.children,
#nav_global ul.parents li.has_children:active ul.children,
#nav_global ul.parents li.has_children:hover ul.children {
    height: 130px;
    padding: 30px 30px 10px
}

#nav_global ul.parents li.has_children.active ul.children a,
#nav_global ul.parents li.has_children:active ul.children a,
#nav_global ul.parents li.has_children:hover ul.children a {
    height: 30px
}

#nav_global ul.parents a {
    padding: 0 15px;
    display: block;
    border-radius: 17px;
    transition-property: all;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#nav_global[data-active=home] a[href="#home"],
#nav_global[data-active=info] a[href="#info"],
#nav_global[data-active=whatis] a[href="#whatis"],
#nav_global[data-active=more] a[href="#more"],
#nav_global[data-active=campaign] a[data-key=campaign] {
    color: #fff;
    background-color: #000
}

#kv_sliders .swiper-slide,
#nav_global ul.children {
    background-color: #fff;
    transition-duration: .3s;
    transition-timing-function: ease
}

#nav_global ul.children {
    height: 0;
    padding: 0 30px;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 30;
    overflow: hidden;
    font-size: 14px;
    transition-property: all;
    transition-delay: 0s
}

#nav_global ul.children li {
    padding-left: 15px;
    position: relative
}

#nav_global ul.children li+li {
    margin-left: 0
}

#nav_global ul.children li::before {
    content: "";
    width: 8px;
    height: 2px;
    display: block;
    position: absolute;
    top: 13px;
    left: 0;
    background-color: #000
}

#nav_global ul.children a {
    padding: 0;
    text-align: left;
    line-height: 30px;
    transition-property: transform;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#nav_global ul.children a.active,
#nav_global ul.children a:active,
#nav_global ul.children a:hover {
    transform: translateX(5px)
}

#nav_global ul.sns {
    display: none
}

@media screen and (max-width:1030px) {
    #nav_global ul.parents {
        line-height: 1.6;
        font-size: 14px
    }

    #nav_global ul.parents a {
        padding: 0 10px
    }
}

@media screen and (max-width:767px) {
    .header-sns__list {
        display: none
    }

    #nav_global {
        padding: 10px 30px 80px 80px;
        display: flex;
        align-items: flex-end;
        flex-direction: column;
        position: absolute;
        top: 60px;
        right: 0;
        z-index: 90;
        background-image: url(../images/sp_menu_bg.png);
        background-position: 0 bottom;
        background-repeat: no-repeat;
        background-size: cover;
        transform: translateX(100%);
        transition-property: transform;
        transition-duration: .3s;
        transition-delay: 0s;
        transition-timing-function: ease
    }

    #nav_global .bg {
        display: block
    }

    #nav_global ul.parents {
        display: block;
        font-size: 16px;
        border-bottom: 1px solid #000
    }

    #nav_global ul.parents li {
        padding: 10px 0
    }

    #nav_global ul.parents li+li {
        margin: 0;
        border-top: 1px solid #000
    }

    #nav_global ul.parents li.has_children.active ul.children,
    #nav_global ul.parents li.has_children:active ul.children,
    #nav_global ul.parents li.has_children:hover ul.children {
        height: auto;
        padding: 0 0 0 20px
    }

    #nav_global ul.parents li.has_children.active ul.children a,
    #nav_global ul.parents li.has_children:active ul.children a,
    #nav_global ul.parents li.has_children:hover ul.children a {
        height: auto
    }

    #nav_global ul.parents a {
        padding: 0;
        display: inline-block;
        line-height: 20px;
        border-radius: 10px;
        transition-property: all;
        transition-duration: .3s;
        transition-delay: 0s;
        transition-timing-function: ease
    }

    #nav_global ul.children,
    #nav_global ul.children a {
        transition-property: none;
        transition-duration: .3s;
        transition-delay: 0s;
        transition-timing-function: ease
    }

    #nav_global[data-active=home] a[href="#home"],
    #nav_global[data-active=info] a[href="#info"],
    #nav_global[data-active=whatis] a[href="#whatis"] {
        padding: 0 10px;
        color: #fff;
        background-color: #000
    }

    #nav_global ul.children {
        height: auto;
        padding: 0 0 0 20px;
        position: static;
        overflow: visible;
        font-size: 14px
    }

    #nav_global ul.children li {
        margin-top: 8px;
        padding: 0 0 0 15px
    }

    #nav_global ul.children li+li {
        margin: 8px 0 0;
        border-top: 0
    }

    #nav_global ul.children li::before {
        height: 1px;
        top: 10px
    }

    #nav_global ul.children a {
        padding: 0;
        line-height: 20px
    }

    #nav_global ul.children a.active,
    #nav_global ul.children a:active,
    #nav_global ul.children a:hover {
        transform: translateX(0)
    }

    #nav_global ul.sns {
        padding: 0;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-direction: row
    }

    #nav_global ul.sns li {
        width: 30px
    }

    #nav_global ul.sns li+li {
        margin-left: 10px
    }
}

#kv_sliders .swiper-slide.swiper-slide-active,
.main-visual__top a.series.active,
.main-visual__top a.series:active,
.main-visual__top a.series:hover {
    transform: scale(1.1)
}

.to-top {
    z-index: 50
}

.teku_sp {
    display: none !important
}

.main-visual {
    padding: 0 0 min(10vw, 30px);
    background: #fffdf0
}

@media screen and (max-width:767px) {
    .teku_sp {
        display: block !important
    }

    .teku_sp+.teku_pc {
        display: none !important
    }

    .main-visual {
        overflow: hidden;
        background: #fff
    }
}

.main-visual__top {
    position: relative
}

.main-visual__top .charactors p,
.main-visual__top .logo,
.main-visual__top .logo_ov,
.main-visual__top .main-visual__top-img03,
.main-visual__top .series {
    position: absolute
}

.main-visual__top .logo {
    width: calc(773 / 1920 * 100%);
    top: calc(25 / 1016 * 100%);
    left: calc(573 / 1920 * 100%)
}
.main-visual__top .logo_ov {
    width: calc(773 / 1920 * 100%);
    top: calc(5 / 1016 * 100%);
    left: calc(573 / 1920 * 100%)
}

.main-visual__top .series {
    width: calc(336 / 1920 * 100%);
    top: calc(88 / 1016 * 100%);
    right: calc(348 / 1920 * 100%);
    display: block;
    transition-property: transform;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}

.main-visual__top .mv_top-character-01 {
    width: calc(398 / 1920 * 100%);
    top: calc(152 / 1016 * 100%);
    left: calc(381 / 1920 * 100%)
}

.main-visual__top .mv_top-character-03 {
    width: calc(223 / 1920 * 100%);
    top: calc(175 / 1016 * 100%);
    left: calc(708 / 1920 * 100%);
    z-index: 2
}

.main-visual__top .mv_top-character-02 {
    width: calc(346 / 1920 * 100%);
    top: calc(172 / 1016 * 100%);
    left: auto;
    right: calc(664 / 1920 * 100%);
    z-index: 2
}

.main-visual__top .mv_top-character-04 {
    width: calc(197 / 1920 * 100%);
    top: calc(172 / 1016 * 100%);
    left: auto;
    right: calc(472 / 1920 * 100%);
    z-index: 2
}

.main-visual__top .main-visual__top-img03 {
    width: calc(1151 / 1920 * 100%);
    max-width: none;
    margin: 0;
    top: calc(255 / 1016 * 100%);
    left: calc(364 / 1920 * 100%);
    z-index: 10
}

@media screen and (max-width:767px) {
    .main-visual__top .bg {
        height: 106vw;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-direction: row
    }

    .main-visual__top .bg img {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    .main-visual__top .logo {
        width: calc(171vw / 1237 * 720);
        margin: 0 auto;
        top: 1%;
        left: calc(0vw / 1237 * 250);
        right: auto;
    }

    .main-visual__top .series {
        width: 45%;
        top: 10.7%;
        right: 4%
    }

    .main-visual__top .mv_top-character-01 {
        width: 33%;
        top: 12.5%;
        left: 7%
    }

    .main-visual__top .mv_top-character-03 {
        width: 25%;
        top: 14.5%;
        left: 31%;
        z-index: 3
    }

    .main-visual__top .mv_top-character-02 {
        width: 37%;
        top: 14.74%;
        right: 17%
    }

    .main-visual__top .mv_top-character-04 {
        width: 19%;
        top: 14.74%;
        right: 6%
    }

    .main-visual__top .main-visual__top-img03 {
        width: 96%;
        top: 120vw;
        bottom: 2%;
        left: 2%;
        padding: 0 20px;
    }
}

#kv_sliders {
    padding: 60px 0 140px;
    position: relative;
    overflow: visible
}

#kv_sliders .swiper-slide {
    width:
        /*540px*/
        432px;
    padding: 25px;
    position: relative;
    border-radius: 25px;
    box-shadow: 0 0 10px rgba(0, 0, 0, .5);
    transition-property: transform;
    transition-delay: 0s
}

#kv_sliders .swiper-slide a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5
}

#kv_sliders .swiper-slide a.active~.slider_pic,
#kv_sliders .swiper-slide a:active~.slider_pic,
#kv_sliders .swiper-slide a:hover~.slider_pic {
    opacity: .6
}

#kv_sliders .swiper-slide .slider_pic {
    overflow: hidden;
    border-radius: 15px;
    transition-property: opacity;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#kv_sliders .swiper-slide .slider_title {
    margin: 20px 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    font-size: 16px;
    font-weight: 700
}

#kv_sliders .swiper-slide .slider_title span {
    min-width: 120px;
    padding: 0 20px;
    display: block;
    line-height: 46px;
    text-align: center;
    color: #fff;
    background-color: #89c33f
}

#kv_sliders .swiper-slide .slider_title span[data-label="キャンペーン"] {
    background-color: #ff6700
}

#kv_sliders .swiper-slide .slider_title span[data-label="放映中"] {
    background-color: red
}

#kv_sliders .swiper-slide .slider_title p {
    margin-left: 30px;
    flex: 1;
    line-height: 1.4
}

#kv_sliders .swiper-slide .slider_text {
    line-height: 1.8;
    font-size: 15px
}

#kv_sliders .swiper-slide .slider_detail {
    margin-top: 20px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: row;
    font-size: 16px
}

#kv_sliders .swiper-slide .slider_detail span {
    padding-bottom: 3px;
    display: block;
    border-bottom: 2px solid #000
}

#campaign_v2 .overflow_items .cover,
#kv_sliders .swiper-button-next::after,
#kv_sliders .swiper-button-prev::after {
    display: none
}

#kv_sliders .swiper-button-next,
#kv_sliders .swiper-button-prev {
    width: 40px;
    height: 40px;
    top: calc(50% - 25px);
    z-index: 50;
    background-size: 100% auto
}

#kv_sliders .swiper-button-prev {
    left: auto;
    right: calc(50% + 220px + 30px);
    background-image: url(../images/slider_prev.png)
}

#kv_sliders .swiper-button-next {
    right: auto;
    left: calc(50% + 220px + 30px);
    background-image: url(../images/slider_next.png)
}

#kv_sliders .swiper-pagination {
    min-width: 315px;
    max-width: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    top: calc(100% - 70px);
    bottom: auto
}

#kv_sliders .swiper-pagination span {
    width: 53px;
    height: 3px;
    display: block;
    left: 0 !important;
    opacity: 1;
    background-color: #eaeaea;
    border-radius: 0;
    transform: scale(1)
}

#kv_sliders .swiper-pagination span.swiper-pagination-bullet-active {
    background-color: #89c861
}

@media screen and (max-width:964px) {
    #kv_sliders {
        padding-top: 30px
    }

    #kv_sliders .swiper-slide {
        width: 70vw
    }

    #kv_sliders .swiper-slide.swiper-slide-active {
        transform: scale(1)
    }

    #kv_sliders .swiper-button-prev {
        right: auto;
        left: calc(15vw - 50px - 15px)
    }

    #kv_sliders .swiper-button-next {
        left: auto;
        right: calc(15vw - 50px - 15px)
    }
}

@media screen and (max-width:767px) {
    #kv_sliders {
        margin-top: 5vw;
        padding: 0 0 40px
    }

    #kv_sliders .swiper-slide {
        width: calc(100vw - 100px);
        padding: 10px;
        border-radius: 10px
    }

    #kv_sliders .swiper-slide .slider_title {
        margin: 10px 0;
        font-size: 11px
    }

    #kv_sliders .swiper-slide .slider_title span {
        min-width: auto;
        padding: 0 8px;
        line-height: 20px
    }

    #kv_sliders .swiper-slide .slider_title p {
        margin-left: 10px;
        line-height: 1.35
    }

    #kv_sliders .swiper-slide .slider_text {
        line-height: 1.35;
        font-size: 11px
    }

    #kv_sliders .swiper-slide .slider_detail {
        margin-top: 10px;
        font-size: 11px
    }

    #kv_sliders .swiper-slide .slider_detail span {
        padding-bottom: 2px;
        border-bottom-width: 1px
    }

    #kv_sliders .swiper-button-next,
    #kv_sliders .swiper-button-prev {
        width: 30px;
        height: 30px
    }

    #kv_sliders .swiper-button-prev {
        left: 10px
    }

    #kv_sliders .swiper-button-next {
        right: 10px
    }

    #kv_sliders .swiper-pagination {
        top: calc(100% - 20px)
    }

    #kv_sliders .swiper-pagination span {
        width: 30px;
        height: 2px
    }
}

#kv_sliders~.sns-youtube__list .sns-youtube {
    margin-top: 0
}

.countDay {
    left: 44%;
    top: min(9vw, 120px);
    margin-left: max(-40vw, -590px);
    color: #000;
    text-shadow: 1px 1px 1px #000, -1px -1px 1px #000, 1px -1px 1px #000, -1px 1px 1px #000;
    text-shadow: none
}

.countDay .countDay__date span {
    color: #000;
    text-shadow: none
}

@media screen and (max-width:767px) {
    .countDay {
        top: 19vw;
        left: auto;
        right: 2vw;
        overflow: hidden;
        color: #000;
        text-shadow: none;
        transform: scale(.86);
        transform-origin: right top
    }

    .countDay .coundDay__wrap {
        margin-left: 0
    }

    .countDay .countDay__01 {
        width: 22%;
        top: 4%;
        left: 9%
    }

    .countDay .countDay__02 {
        width: 24%;
        top: 10%;
        right: 5%
    }
}

.infoSlide-cover {
    margin-top: min(14vw, 150px)
}

.infoSlide-cover.season02,
.infoSlide-cover.season03,
.infoSlide-cover.season04 {
    margin-top: 25vw
}

.infoSlide-cover .infoSlide__wrapper .infoSlide__cont__btn a,
.infoSlide-cover .slick-dots li.slick-active button:before {
    background: #323333
}

.infoSlide-cover.season02::before {
    background: url(../images/bg-SlideInfo-cover-02.png);
    background-size: 100% auto
}

.infoSlide-cover.season02 .infoSlide {
    border-color: #00a568
}

.infoSlide-cover.season02 .infoSlide .infoSlide__title {
    background: 0 0
}

.infoSlide-cover.season02 .infoSlide .infoSlide__title::before {
    opacity: 1;
    background: url(../images/bg-SlideInfo-02.png) 0 center;
    background-size: 100% auto;
    border-radius: calc(min(1.66vw, 20px) - 2px) calc(min(1.66vw, 20px) - 2px) 0 0
}

.infoSlide-cover.season02 .infoSlide .infoSlide__title::after {
    width: 44vw;
    top: -20vw;
    left: -8vw;
    background: url(../images/ic-SlideInfo-02.png) center center/contain no-repeat
}

.infoSlide-cover.season02 .infoSlide .infoSlide__wrapper::before {
    background: url(../images/bg-SlideInfo-02b_sp.png) left bottom/auto 100% repeat-x
}

.infoSlide-cover.season02 .infoSlide .infoSlide__wrapper::after {
    content: "";
    width: 15vw;
    height: calc(15vw * 1.14);
    display: block;
    position: absolute;
    top: -10vw;
    left: -5vw;
    background-image: url(../images/ic-SlideInfo-02_obj.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto
}

.infoSlide-cover.season03::before {
    background: url(../images/bg-SlideInfo-cover-03.png) center center;
    background-size: auto 100%
}

.infoSlide-cover.season03 .infoSlide {
    border: none
}

.infoSlide-cover.season03 .infoSlide .infoSlide__title {
    background: 0 0
}

.infoSlide-cover.season03 .infoSlide .infoSlide__title::before {
    opacity: 1;
    background: url(../images/bg-SlideInfo-03.png) 0 center;
    background-size: 100% auto;
    border-radius: 2vw 2vw 0 0;
    border: 2px solid #ff7be6
}

.infoSlide-cover.season03 .infoSlide .infoSlide__title::after {
    width: 44vw;
    top: -20vw;
    left: -8vw;
    background: url(../images/ic-SlideInfo-03.png) center center/contain no-repeat
}

.infoSlide-cover.season03 .infoSlide .infoSlide__wrapper {
    border: 2px solid #ff7be6
}

.infoSlide-cover.season03 .infoSlide .infoSlide__wrapper::before {
    background: url(../images/bg-SlideInfo-03b_sp.png) left bottom/auto 100% repeat-x
}

.infoSlide-cover.season04::before {
    background: url(../images/bg-SlideInfo-cover-04.png) center center no-repeat;
    background-size: auto 100%
}

.infoSlide-cover.season04 .infoSlide {
    border: none
}

.infoSlide-cover.season04 .infoSlide .infoSlide__title {
    background: 0 0
}

.infoSlide-cover.season04 .infoSlide .infoSlide__title::before {
    opacity: 1;
    background: url(../images/bg-SlideInfo-04.png) 0 center;
    background-size: 100% auto;
    border-radius: 2vw 2vw 0 0;
    border: 2px solid #00b9cb
}

.infoSlide-cover.season04 .infoSlide .infoSlide__title::after {
    width: 24vw;
    top: -12vw;
    left: -4vw;
    background: url(../images/ic-SlideInfo-04.png) center center/contain no-repeat;
    aspect-ratio: 140/210
}

.infoSlide-cover.season04 .infoSlide .infoSlide__wrapper {
    border: 2px solid #00b9cb
}

.infoSlide-cover.season04 .infoSlide .infoSlide__wrapper::before {
    background: url(../images/bg-SlideInfo-04b_sp.png) left bottom/auto 100% repeat-x
}

@media screen and (min-width:768px) {

    .infoSlide-cover.season02,
    .infoSlide-cover.season03,
    .infoSlide-cover.season04 {
        margin-top: min(14vw, 150px)
    }

    .infoSlide-cover.season03 .infoSlide .infoSlide__title::before,
    .infoSlide-cover.season04 .infoSlide .infoSlide__title::before {
        border-radius: calc(min(1.66vw, 20px) - 2px) calc(min(1.66vw, 20px) - 2px) 0 0
    }

    .infoSlide-cover.season02 .infoSlide .infoSlide__title::after {
        width: 250px;
        max-width: 20vw;
        top: -52%;
        left: 8%
    }

    .infoSlide-cover.season02 .infoSlide .infoSlide__wrapper::before {
        background: url(../images/bg-SlideInfo-02_pc.png) left bottom/auto 100% repeat-x
    }

    .infoSlide-cover.season02 .infoSlide .infoSlide__wrapper::after {
        display: none
    }

    .infoSlide-cover.season03::before {
        background-size: 100% auto
    }

    .infoSlide-cover.season03 .infoSlide .infoSlide__title::after {
        width: 230px;
        max-width: 20vw;
        top: -46%;
        left: 7%
    }

    .infoSlide-cover.season03 .infoSlide .infoSlide__wrapper::before {
        background: url(../images/bg-SlideInfo-02_pc.png) left bottom/auto 100% repeat-x
    }

    .infoSlide-cover.season04::before {
        background-size: 100% auto
    }

    .infoSlide-cover.season04 .infoSlide .infoSlide__title::after {
        width: 140px;
        max-width: 20vw;
        top: -44%;
        left: 11%
    }

    .infoSlide-cover.season04 .infoSlide .infoSlide__wrapper::before {
        background: url(../images/bg-SlideInfo-02_pc.png) left bottom/auto 100% repeat-x
    }
}

.whatis {
    padding: 0 0 min(8.3vw, 100px);
    overflow: hidden;
    background-color: #dbcb9d
}

.whatis .main-visual__under {
    margin: 0 auto
}

.whatis .main-visual__under-right::before {
    z-index: 1;
    background-image: url(../images/what-bg_v3.png)
}

.whatis .main-visual__under-right::after {
    content: "";
    width: 100%;
    height: 60vw;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: #efefef
}

.whatis .main-visual__under-right div {
    z-index: 2
}

.whatis .main-visual__under-left {
    margin: 20px 15px 0;
    z-index: 2
}

.whatis .main-visual__under__small {
    margin: 0 15px
}

@media screen and (min-width:768px) {
    .whatis {
        padding: min(8.3vw, 100px) 0;
        background-color: #dbcb9d
    }

    .whatis .main-visual__under {
        margin: 0 auto
    }

    .whatis .main-visual__under-right::after {
        display: none
    }

    .whatis .main-visual__under-left {
        margin: 0
    }

    .whatis .main-visual__under__small {
        margin: min(.58vw, 7px) auto 0
    }

    .character {
        margin: min(14.17vw, 100px) auto 0
    }
}

#campaign .btn_campaign,
#campaign_v2 .btn_campaign,
.campaign_section .btn_campaign {
    width: calc(910 / 1920 * 100%);
    margin: 100px auto 60px;
    display: block;
    position: relative
}

#campaign .btn_campaign span,
#campaign_v2 .btn_campaign span,
.campaign_section .btn_campaign span {
    transition-property: transform;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#campaign .btn_campaign .text,
#campaign .btn_campaign::after,
#campaign_v2 .btn_campaign .text,
#campaign_v2 .btn_campaign::after,
.campaign_section .btn_campaign .text,
.campaign_section .btn_campaign::after {
    height: 132px;
    border-radius: 66px
}

#campaign .btn_campaign .text,
#campaign_v2 .btn_campaign .text,
.campaign_section .btn_campaign .text {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    position: relative;
    z-index: 1;
    color: #fff;
    font-size: 50px;
    text-indent: .1em;
    letter-spacing: .1em;
    background-color: #040000
}

#campaign .btn_campaign .arrow,
#campaign_v2 .btn_campaign .arrow,
.campaign_section .btn_campaign .arrow {
    width: calc(42 / 910 * 100%);
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    position: absolute;
    top: 0;
    right: calc(50 / 910 * 100%);
    z-index: 1
}

#campaign .btn_campaign::after,
#campaign_v2 .btn_campaign::after,
.campaign_section .btn_campaign::after {
    content: "";
    width: 100%;
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 0;
    background-color: #f9629f
}

#campaign .btn_campaign.active span,
#campaign .btn_campaign:active span,
#campaign .btn_campaign:hover span,
#campaign_v2 .btn_campaign.active span,
#campaign_v2 .btn_campaign:active span,
#campaign_v2 .btn_campaign:hover span,
.campaign_section .btn_campaign.active span,
.campaign_section .btn_campaign:active span,
.campaign_section .btn_campaign:hover span {
    transform: translate(12px, 12px)
}

#campaign .notices,
#campaign_v2 .notices,
.campaign_section .notices {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: row
}

#campaign .notices ul li,
#campaign_v2 .notices ul li,
.campaign_section .notices ul li {
    padding-left: 1.5em;
    position: relative;
    line-height: 2;
    font-size: 13px;
    font-weight: 700
}

#campaign .notices ul li::before,
#campaign_v2 .notices ul li::before,
.campaign_section .notices ul li::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0
}

#campaign .notices ul li+li,
#campaign_v2 .notices ul li+li,
.campaign_section .notices ul li+li {
    margin-top: 5px
}

@media screen and (max-width:1600px) {

    #campaign .btn_campaign .text,
    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign .text,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign .text,
    .campaign_section .btn_campaign::after {
        height: 100px;
        border-radius: 50px
    }
}

@media screen and (max-width:1300px) {

    #campaign .btn_campaign .text,
    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign .text,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign .text,
    .campaign_section .btn_campaign::after {
        height: 80px;
        border-radius: 40px
    }

    #campaign .btn_campaign .text,
    #campaign_v2 .btn_campaign .text,
    .campaign_section .btn_campaign .text {
        font-size: 36px
    }

    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign::after {
        top: 5px;
        left: 5px
    }

    #campaign .btn_campaign.active span,
    #campaign .btn_campaign:active span,
    #campaign .btn_campaign:hover span,
    #campaign_v2 .btn_campaign.active span,
    #campaign_v2 .btn_campaign:active span,
    #campaign_v2 .btn_campaign:hover span,
    .campaign_section .btn_campaign.active span,
    .campaign_section .btn_campaign:active span,
    .campaign_section .btn_campaign:hover span {
        transform: translate(5px, 5px)
    }
}

@media screen and (max-width:1000px) {

    #campaign .btn_campaign,
    #campaign_v2 .btn_campaign,
    .campaign_section .btn_campaign {
        margin-bottom: 40px
    }

    #campaign .btn_campaign .text,
    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign .text,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign .text,
    .campaign_section .btn_campaign::after {
        height: 60px;
        border-radius: 30px
    }

    #campaign .btn_campaign .text,
    #campaign_v2 .btn_campaign .text,
    .campaign_section .btn_campaign .text {
        font-size: 20px
    }

    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign::after {
        top: 5px;
        left: 5px
    }

    #campaign .btn_campaign.active span,
    #campaign .btn_campaign:active span,
    #campaign .btn_campaign:hover span,
    #campaign_v2 .btn_campaign.active span,
    #campaign_v2 .btn_campaign:active span,
    #campaign_v2 .btn_campaign:hover span,
    .campaign_section .btn_campaign.active span,
    .campaign_section .btn_campaign:active span,
    .campaign_section .btn_campaign:hover span {
        transform: translate(5px, 5px)
    }

    #campaign .notices,
    #campaign_v2 .notices,
    .campaign_section .notices {
        width: 90%;
        margin: 0 auto
    }

    #campaign .notices ul li,
    #campaign_v2 .notices ul li,
    .campaign_section .notices ul li {
        line-height: 1.6
    }

    #campaign .notices ul li+li,
    #campaign_v2 .notices ul li+li,
    .campaign_section .notices ul li+li {
        margin-top: 0
    }
}

@media screen and (max-width:767px) {

    #campaign .btn_campaign,
    #campaign_v2 .btn_campaign,
    .campaign_section .btn_campaign {
        width: calc(100vw / 1237 * 1060);
        margin: 0px auto 30px;
    }

    #campaign .btn_campaign .text,
    #campaign .btn_campaign::after,
    #campaign_v2 .btn_campaign .text,
    #campaign_v2 .btn_campaign::after,
    .campaign_section .btn_campaign .text,
    .campaign_section .btn_campaign::after {
        height: 60px;
        border-radius: 30px
    }

    #campaign .btn_campaign .text,
    #campaign_v2 .btn_campaign .text,
    .campaign_section .btn_campaign .text {
        font-size: 5.8vw
    }

    #campaign .btn_campaign .arrow,
    #campaign_v2 .btn_campaign .arrow,
    .campaign_section .btn_campaign .arrow {
        width: calc(68 / 1060 * 100%);
        right: calc(40 / 1060 * 100%)
    }

    #campaign .notices,
    #campaign_v2 .notices,
    .campaign_section .notices {
        width: 80%;
        margin: 0 auto
    }

    #campaign .notices ul li,
    #campaign_v2 .notices ul li,
    .campaign_section .notices ul li {
        font-size: 3vw
    }
}

#campaign {
    padding: 10vh 0;
    background-image: url(../images/campaign_bg.png)
}

#campaign .campaign_title {
    width: calc(1143 / 1920 * 100%);
    margin: 0 auto 60px;
    position: relative
}

#campaign .campaign_title .base {
    opacity: 0
}

#campaign .campaign_title .obj,
#campaign .campaign_title .thanks,
#campaign .campaign_title h2 {
    position: absolute
}

#campaign .campaign_title .thanks {
    width: calc(906 / 1143 * 100%);
    top: 0;
    left: calc(114 / 1143 * 100%);
    z-index: 0
}

#campaign .campaign_title .obj {
    transform: scale(0);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#campaign .campaign_title.js-anime .obj,
#campaign_v2.scrolled .anniversary {
    transform: scale(1)
}

#campaign .campaign_title .kuma {
    width: calc(529 / 1143 * 100%);
    top: calc(118 / 920 * 100%);
    left: calc(-114 / 1143 * 100%);
    z-index: 3;
    transition-delay: .1s
}

#campaign .campaign_title .pen {
    width: calc(485 / 1143 * 100%);
    top: calc(228 / 920 * 100%);
    left: calc(248 / 1143 * 100%);
    z-index: 1;
    transition-delay: .3s
}

#campaign .campaign_title .kawa {
    width: calc(284 / 1143 * 100%);
    top: calc(198 / 920 * 100%);
    right: calc(220 / 1143 * 100%);
    z-index: 2;
    transition-delay: .2s
}

#campaign .campaign_title .cat {
    width: calc(260 / 1143 * 100%);
    top: calc(220 / 920 * 100%);
    right: calc(-12 / 1143 * 100%);
    z-index: 1;
    transition-delay: .4s
}

#campaign .campaign_title h2 {
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 5
}

#campaign .campaign_subtitle {
    width: calc(902 / 1920 * 100%);
    margin: 0 auto 40px;
    display: block
}

#campaign .way{
    text-align: center;
    font-weight: 700
}

#campaign .way {
    line-height: 1.5;
    font-size: 26px
}

#campaign_v3 .notice {
    margin-bottom: 60px;
    text-align: center;
    font-weight: 700
}

#campaign .term {
    width: calc(896 / 1920 * 100%);
    margin: 0 auto 80px
}

#campaign .present {
    width: calc(660 / 1920 * 100%);
    margin: 0 auto 60px
}

#campaign .items {
    width: calc(1190 / 1920 * 100%);
    margin: 0 auto 60px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    flex-direction: row
}

#campaign .items .item {
    width: calc(578 / 1190 * 100%)
}
#campaign .items .itemL {
    width: calc(1146 / 1190 * 100%)
}

#campaign .items .item:nth-child(n+3) {
    margin-top: 40px
}

#campaign .notice {
    margin-bottom: 80px;
    text-align: center;
    line-height: 1.3;
    font-size: 34px;
    font-weight: 700
}

@media screen and (max-width:1300px) {

    #campaign .notice,
    #campaign .way {
        font-size: 22px
    }

    #campaign .items,
    #campaign .itemsL,
    #campaign .present {
        margin-bottom: 40px
    }
}

@media screen and (max-width:1000px) {
    #campaign {
        padding: 5vh 0
    }

    #campaign .campaign_title,
    #campaign .term {
        margin-bottom: 40px
    }

    #campaign .notice,
    #campaign .way {
        margin-bottom: 40px;
        font-size: 14px
    }
}

@media screen and (max-width:767px) {
    #campaign {
        margin-top: -1px;
        padding-top: 2vw
    }

    #campaign .campaign_title {
        width: calc(100vw / 1237 * 1205);
        margin-bottom: 5vw
    }

    #campaign .campaign_title .thanks {
        width: calc(1176 / 1205 * 100%);
        left: calc(18 / 1205 * 100%)
    }

    #campaign .campaign_title .kuma {
        width: calc(616 / 1205 * 100%);
        top: 17vw;
        left: 0
    }

    #campaign .campaign_title .pen {
        width: calc(564 / 1205 * 100%);
        top: 17vw;
        left: calc(420 / 1205 * 100%)
    }

    #campaign .campaign_title .kawa {
        width: calc(331 / 1205 * 100%);
        top: 36vw;
        right: calc(314 / 1205 * 100%);
        z-index: 4
    }

    #campaign .campaign_title .cat {
        width: calc(302 / 1205 * 100%);
        top: 30vw;
        right: calc(12 / 1205 * 100%)
    }

    #campaign .campaign_subtitle {
        width: calc(100vw / 1237 * 1016);
        margin-bottom: 5vw
    }

    #campaign .way {
        margin-bottom: 5vw;
        font-size: 4vw
    }

    #campaign .term {
        width: calc(100vw / 1237 * 1186);
        margin-bottom: 12vw
    }

    #campaign .present {
        width: calc(100vw / 1237 * 1076);
        margin-bottom: 8vw
    }

    #campaign .items {
        width: calc(100vw / 1237 * 1075);
        margin-bottom: 5vw;
        display: block
    }

    #campaign .items .item {
        width: auto
    }
    #campaign .items .itemL {
        width: auto
    }

    #campaign .items .item:nth-child(n+2) {
        margin-top: 5vw
    }
    #campaign .items .itemL:nth-child(n+2) {
        margin-top: 5vw
    }

    #campaign .notice {
        margin-bottom: 5vw;
        line-height: 1.5;
        font-size: 4.3vw
    }
}

#campaign_v2 {
    position: relative
}

#campaign_v2 .obj {
    position: absolute
}

#campaign_v2 .cover,
#campaign_v2 .papers {
    width: 100%;
    top: 0;
    left: 0
}

#campaign_v2 .papers .papers01,
#campaign_v2 .papers .papers02 {
    transform: scale(0);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .8s;
    transition-timing-function: ease-out
}

#campaign_v2 .papers .papers02 {
    transform-origin: center top
}

#campaign_v2 .cover {
    z-index: 1;
    mix-blend-mode: overlay
}

#campaign_v2 .anniversary {
    width: calc(1526 / 1920 * 100%);
    top: calc(207 / 3681 * 100%);
    left: calc(200 / 1920 * 100%);
    transform: scale(0);
    transform-origin: center bottom;
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#campaign_v2 .anniversary .anniversary01 {
    width: calc(191 / 1526 * 100%);
    top: calc(-132 / 280 * 100%);
    left: calc(908 / 1526 * 100%);
    transform: rotateY(0);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .5s;
    transition-timing-function: ease
}

#campaign_v2 .characters {
    width: calc(817 / 1920 * 100%);
    top: calc(815 / 3681 * 100%);
    left: calc(615 / 1920 * 100%);
    z-index: 0
}

#campaign_v2 .characters .box02 {
    width: calc(1413 / 817 * 100%);
    bottom: 0;
    right: 0;
    z-index: 3
}

#campaign_v2 .characters .box03 {
    width: calc(628 / 817 * 100%);
    top: calc(-370 / 576 * 100%);
    left: calc(-358 / 817 * 100%)
}

#campaign_v2 .characters .cat,
#campaign_v2 .characters .kawa,
#campaign_v2 .characters .kuma,
#campaign_v2 .characters .pen {
    transform: scale(0);
    transform-origin: center bottom
}

#campaign_v2 .characters .pen {
    width: calc(366 / 817 * 100%);
    top: calc(-345 / 576 * 100%);
    left: calc(-115 / 817 * 100%);
    z-index: 1;
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#campaign_v2 .characters .kuma,
#campaign_v3 .campaign_title .kuma {
    transition-delay: .2s;
    transition-property: transform;
    transition-timing-function: ease
}

#campaign_v2 .characters .kuma {
    width: calc(451 / 817 * 100%);
    top: calc(-365 / 576 * 100%);
    left: calc(270 / 817 * 100%);
    z-index: 1;
    transition-duration: .5s
}

#campaign_v2 .characters .kawa {
    width: calc(252 / 817 * 100%);
    top: calc(-208 / 576 * 100%);
    left: calc(146 / 817 * 100%);
    z-index: 2;
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .4s;
    transition-timing-function: ease
}

#campaign_v2 .characters .cat {
    width: calc(262 / 817 * 100%);
    top: calc(-210 / 576 * 100%);
    left: calc(636 / 817 * 100%);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .6s;
    transition-timing-function: ease;
    z-index: 2
}

#campaign_v2 .title {
    width: calc(1194 / 1920 * 100%);
    top: calc(1016 / 3681 * 100%);
    left: calc(312 / 1920 * 100%);
    z-index: 2
}

#campaign_v2 .title .balloon {
    width: calc(338 / 1194 * 100%);
    top: calc(-175 / 272 * 100%);
    left: calc(998 / 1194 * 100%);
    z-index: -1
}

#campaign_v2 .title_sub {
    width: calc(1103 / 1920 * 100%);
    top: calc(1321 / 3681 * 100%);
    left: calc(425 / 1920 * 100%);
    z-index: 2
}

#campaign_v2 .term {
    width: calc(853 / 1920 * 100%);
    top: calc(1570 / 3681 * 100%);
    left: calc(533 / 1920 * 100%);
    z-index: 2
}

#campaign_v2 .text_present {
    width: calc(660 / 1920 * 100%);
    top: calc(2023 / 3681 * 100%);
    left: calc(634 / 1920 * 100%);
    z-index: 2
}

#campaign_v2 .pic_present {
    width: calc(850 / 1920 * 100%);
    top: calc(2147 / 3681 * 100%);
    left: calc(535 / 1920 * 100%);
    z-index: 2
}

#campaign_v2 .result {
    width: 100%;
    top: calc(3153 / 3681 * 100%);
    left: 0;
    z-index: 2;
    text-align: center;
    color: #fff;
    font-size: 36px;
    letter-spacing: .1em
}

#campaign_v2 .button {
    width: 100%;
    top: calc(3295 / 3681 * 100%);
    left: 0
}

#campaign_v2 .notices {
    width: 100%;
    top: calc(3493 / 3681 * 100%);
    left: 0
}

#campaign_v2 .notices ul li {
    line-height: 1.6;
    font-size: 15px
}

#campaign_v2 .btn_campaign::after {
    background-color: #00FC3B
}

#campaign_v2.scrolled .anniversary .anniversary01 {
    transform: rotateY(360deg)
}

#campaign_v2.scrolled .characters .cat,
#campaign_v2.scrolled .characters .kawa,
#campaign_v2.scrolled .characters .kuma,
#campaign_v2.scrolled .characters .pen,
#campaign_v2.scrolled .papers .papers01,
#campaign_v2.scrolled .papers .papers02,
#campaign_v3 .campaign_title.js-anime .obj {
    transform: scale(1)
}

#campaign_v2.scrolled .title .balloon {
    animation-name: shake;
    animation-duration: .7s;
    animation-delay: 1s;
    animation-iteration-count: 1
}

@media screen and (max-width:1600px) {
    #campaign_v2 .result {
        font-size: 22px
    }

    #campaign_v2 .notices ul li {
        font-size: 13px
    }
}

@media screen and (max-width:1000px) {

    #campaign_v2 .cover,
    #campaign_v2 .overflow_items .cover {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    #campaign_v2 {
        margin-bottom: calc(340px - 10vh)
    }

    #campaign_v2 .overflow_items {
        width: 100%;
        position: absolute;
        top: 100%;
        left: 0
    }

    #campaign_v2 .overflow_items .cover {
        display: block;
        z-index: 1
    }

    #campaign_v2 .pic_present {
        width: 52vw;
        top: calc(2143 / 3681 * 100%);
        left: 24vw
    }

    #campaign_v2 .button,
    #campaign_v2 .notices,
    #campaign_v2 .result {
        margin: 0;
        position: static;
        background-color: #6DBB63
    }

    #campaign_v2 .result {
        height: 80px;
        margin-top: -10vh;
        font-size: 18px
    }

    #campaign_v2 .button {
        height: 100px
    }

    #campaign_v2 .button .btn_campaign {
        margin-bottom: 0
    }

    #campaign_v2 .notices {
        height: 120px
    }
}

@media screen and (max-width:767px) {
    #campaign_v2 {
        margin: -1px 0 calc(360px + 25vw)
    }

    #campaign_v2 .title {
        width: 84vw;
        top: 29%;
        left: 8vw
    }

    #campaign_v2 .title .balloon {
        width: 26%;
        top: -74%;
        left: auto;
        right: -8%
    }

    #campaign_v2 .title_sub {
        width: 74vw;
        top: 42%;
        left: 13vw
    }

    #campaign_v2 .term {
        width: 56vw;
        top: 52%;
        left: 22vw
    }

    #campaign_v2 .text_present {
        width: 40vw;
        top: 69%;
        left: 30vw
    }

    #campaign_v2 .pic_present {
        width: 60vw;
        top: 73%;
        left: 20vw
    }

    #campaign_v2 .overflow_items {
        padding-top: 25vw;
        background-color: #6DBB63
    }

    #campaign_v2 .result {
        margin-top: 0;
        font-size: 14px
    }

    #campaign_v2 .result p {
        padding: 0 20px
    }

    #campaign_v2 .result br {
        display: none
    }

    #campaign_v2 .button .btn_campaign .text {
        font-size: min(5.8vw, 22px)
    }

    #campaign_v2 .notices {
        height: 140px;
        padding: 0 20px
    }
}

#campaign_v3 {
    padding: 578px 0 80px;
    position: relative;
    z-index: 1;
    color: #000
}

#campaign_v3 .bg,
#campaign_v3 .obj {
    position: absolute
}

#campaign_v3 .bg {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1
}

#campaign_v3 .campaign_title h2,
#campaign_v3 .items .item {
    z-index: 1;
    position: relative
}

#campaign_v3 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

#campaign_v3 .campaign_title {
    width: calc(1280 / 1920 * 100%);
    max-width: 1280px;
    margin: 0 auto 45px;
    position: relative
}

#campaign_v3 .campaign_title .cat,
#campaign_v3 .campaign_title .kawa,
#campaign_v3 .campaign_title .kuma,
#campaign_v3 .campaign_title .pen {
    transform: scale(0);
    transform-origin: center bottom
}

#campaign_v3 .campaign_title .kuma {
    width: calc(444 / 1280 * 100%);
    top: calc(-512 / 376 * 100%);
    left: calc(290 / 1280 * 100%);
    transition-duration: .5s
}

#campaign_v3 .campaign_title .pen {
    width: calc(460 / 1280 * 100%);
    top: calc(-220 / 376 * 100%);
    left: calc(36 / 1280 * 100%);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: 0s;
    transition-timing-function: ease
}

#campaign_v3 .campaign_title .cat {
    width: calc(242 / 1280 * 100%);
    top: calc(-238 / 376 * 100%);
    left: calc(460 / 1280 * 100%);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .6s;
    transition-timing-function: ease
}

#campaign_v3 .campaign_title .kawa {
    width: calc(270 / 1280 * 100%);
    top: calc(-248 / 376 * 100%);
    left: calc(692 / 1280 * 100%);
    transition-property: transform;
    transition-duration: .5s;
    transition-delay: .4s;
    transition-timing-function: ease
}

#campaign_v3 .campaign_subtitle {
    width: calc(1140 / 1920 * 100%);
    max-width: 1140px;
    margin: 0 auto 40px;
    display: block
}

#campaign_v3 .way {
    text-align: center;
    line-height: 1.5;
    font-size: 27px;
    font-weight: 700
    margin-top:40px
}

#campaign_v3 .term {
    width: calc(834 / 1920 * 100%);
    max-width: 834px;
    margin: 0 auto 80px
}

#campaign_v3 .present {
    width: calc(660 / 1920 * 100%);
    max-width: 660px;
    margin: 0 auto 50px
}

#campaign_v3 .items {
    width: calc(1220 / 1920 * 100%);
    max-width: 1220px;
    margin: 60px auto ;
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
    flex-direction: row
}

#campaign_v3 .items .item {
    width: calc(582 / 1220 * 100%);
    transform: scale(0);
    transition-property: transform;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}
#campaign_v3 .items .itemL {
    transform: scale(0);
    transition-property: transform;
    transition-duration: .3s;
    transition-delay: 0s;
    transition-timing-function: ease
}


#campaign_v3 .items .item::before ,
#campaign_v3 .items .itemL::before {
    content: "";
    display: block;
    position: absolute;
    top: 11px;
    left: 11px;
    z-index: -1;
}

#campaign_v3 .items .item:nth-child(2),
#campaign_v3 .items .itemL:nth-child(2) {
    transition-delay: .2s
}

#campaign_v3 .items .item:nth-child(3),
#campaign_v3 .items .itemL:nth-child(3) {
    transition-delay: .4s
}

#campaign_v3 .items .item:nth-child(n+3),
#campaign_v3 .items .itemL:nth-child(n+3) {
    margin-top: 40px
}

#campaign_v3 .items.js-anime .item ,
#campaign_v3 .items.js-anime .itemL {
    transform: scale(1)
}

#campaign_v3 .notice {
    line-height: 1.3;
    font-size: 34px
}

#campaign_v3 .btn_campaign::after {
    background-color: #ffb4e4
}

@media screen and (max-width:1920px) {
    #campaign_v3 {
        padding-top: 30vw
    }
}

@media screen and (max-width:1300px) {

    #campaign_v3 .notice,
    #campaign_v3 .way {
        font-size: 22px
    }

    #campaign_v3 .present {
        margin-bottom: 40px
    }

    #campaign_v3 .items {
        width: 80%;
        margin-bottom: 40px
    }
}

@media screen and (max-width:1000px) {

    #campaign_v3 .campaign_title,
    #campaign_v3 .term {
        margin-bottom: 40px
    }

    #campaign_v3 .notice,
    #campaign_v3 .way {
        margin-bottom: 40px;
        font-size: 14px
    }
}

@media screen and (max-width:767px) {
    #campaign_v3 {
        margin-top: -1px;
        padding: 46vw 0 40px
    }

    #campaign_v3 .campaign_subtitle,
    #campaign_v3 .campaign_title {
        width: 90%;
        margin-bottom: 20px
    }

    #campaign_v3 .way {
        margin-bottom: 5vw;
        font-size: 4vw
    }

    #campaign_v3 .term {
        width: 80%;
        margin-bottom: 12vw
    }

    #campaign_v3 .present {
        width: calc(100vw / 1237 * 1076);
        margin-bottom: 8vw
    }

    #campaign_v3 .items {
        width: calc(100vw / 1237 * 1075);
        margin-top: 10vw;
        margin-bottom: 10vw;
        display: block
    }

    #campaign_v3 .items .item {
        width: auto
    }

    #campaign_v3 .items .item::before {
        top: 6px;
        left: 6px
    }

    #campaign_v3 .items .item:nth-child(n+2),
    #campaign_v3 .items .itemL:nth-child(n+2) {
        margin-top: 5vw
    }

    #campaign_v3 .btn_campaign .text {
        font-size: min(5.8vw, 22px)
    }

    #campaign_v3 .notice {
        margin-bottom: 5vw;
        line-height: 1.5;
        font-size: 4.3vw
    }

    .campaign_subtitle div
    {
        width: 100%;
    }
}