@charset "utf-8";
/*全体///////////////////////////////////////////////////////////////////////////////////////////*/
html {
    background: none;
}

body {
    font-size: 90%;
    width: auto;
    -webkit-text-size-adjust: none;
    background-color: #fff;
    line-height: 1.5;
}

h4 {
    margin-bottom: 5px;
}

#Wrapper {
    width: auto;
    margin: 0 auto -60px;
    min-height: 100%;
    height: auto !important;
}

#pageTop {
    bottom: 12px;
    right: 12px;
}

#pageTop a {
    padding: 10px;
    width: 30px;
    height: 30px;
}

#pageTop a i {
    margin-top: -10px;
}

@media screen and (max-width: 620px) {
    h2 {
        font-size: 6vw !important;
    }

    h3 {
        font-size: 5.5vw !important;
    }

    h4 {
        font-size: 5vw !important;
    }
}

@media screen and (max-width: 700px) {
    .bxslider li.visual_contents {
        background-size: 250%;
        background-repeat: no-repeat;
    }

    .bxslider li.visual_contents img {
        top: 0;
        width: 150% !important;
        position: absolute;
        right: 0 !important;
    }

    .bxslider li img {
        width: 100% !important;
        position: absolute;
        top: -30px;
    }

    .prize_box .tyusen {
        padding-top: 10px;
    }

    .logo h1 {
        margin: 0 auto;
    }

    div.visual_contents {
        padding-bottom: 35px;
    }

    .pc {
        display: none;
    }

    .tb {
        display: none;
    }

    .mb {
        display: block;
    }

    .visual_contents {
        align-items: flex-end;
    }

    .logo {
        position: static;
    }

    .logo h1 {
        width: 100%;
    }

    .senga_box > div:last-child,
    .senga_box > div {
        width: 100%;
        box-sizing: border-box;
    }

    .senga_chara_name {
        font-size: 100%;
    }

    h2 {
        padding-top: 20px;
    }

    .pad_left {
        padding-left: 2em;
    }
}

@media screen and (max-width: 700px) {
    .button-wrap {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 1000px) {
    .main_copyright {
        padding: 5px;
        text-align: center;
        width: 100%;
        box-sizing: border-box;
        font-size: 9px;
    }
}

@media screen and (max-width: 700px) {
    .logo h1 {
        margin: 0 auto;
    }

    div.visual_contents {
        padding-bottom: 35px;
    }

    .main_copyright {
        padding-left: 5px;
        padding-right: 5px;
        text-align: center;
        width: 100%;
        box-sizing: border-box;
        font-size: 0.5rem;
    }

    .pc {
        display: none;
    }

    .tb {
        display: none;
    }

    .mb {
        display: block;
    }

    .visual_contents {
        align-items: flex-end;
    }

    .logo {
        position: static;
    }

    .theme_m {
        position: absolute;
        bottom: auto;
        top: 5px;
        right: 5px;
        width: 40%;
    }

    .logo h1 {
        width: 100%;
    }

    .senga_box > div {
        width: 100%;
        box-sizing: border-box;
    }

    .senga_box {
        display: block;
        margin: 0;
    }

    .senga_chara_name {
        font-size: 100%;
    }

    h2 {
        padding-top: 20px;
    }

    .prize_header {
        display: inline-block;
        margin: 35px auto 30px;
        font-size: 5vw;
        line-height: 1;
        text-align: center;
    }
}

@media screen and (max-width: 900px) {
    .bt_more {
        font-size: 1rem;
    }
}

@media screen and (max-width: 700px) {
    .prize_contents, .tips_contents, .youkou_contents, .oubo_contents, .comment_contents, .software_contents, .gallery_contents {
        padding: 0 15px 10px;
    }
}

@media screen and (max-width: 520px) {
    .menu .menu__content .box_x3 > div img {
        width: 150px;
    }
}

/*********************************************************************************メインビジュアル*/
@media screen and (max-width: 700px) {
    #Youkou,
    #Prize,
    #Tips,
    #Footer,
    #Oubo,
    #Software,
    #Gallery,
    #Software,
    #comment {
        background-size: 100%;
    }

    .bx-viewport {
        max-height: 1000px;
    }

    .bx-viewport {
        padding-bottom: 28%;
    }

    #Visual, .visual_contents {
        height: 1100px;
    }
}

@media screen and (max-width: 600px) {
    .bx-viewport {
        padding-bottom: 27%;
    }
}

@media screen and (max-width: 580px) {
    #Visual, .visual_contents {
        height: 1000px;
    }
}

@media screen and (max-width: 530px) {
    #Visual, .visual_contents {
        height: 900px;
    }
}

@media screen and (max-width: 510px) {
    .bx-viewport {
        padding-bottom: 26%;
    }
}

@media screen and (max-width: 480px) {
    #Visual, .visual_contents {
        height: 860px;
    }

    .visual_contents {
        padding: 0;
    }
}

@media screen and (max-width: 440px) {
    #Visual, .visual_contents {
        height: 800px;
    }
}

@media screen and (max-width: 430px) {
    #Visual, .visual_contents {
        height: 760px;
    }
}

@media screen and (max-width: 400px) {
    #Visual, .visual_contents {
        height: 700px;
    }

    .bx-viewport {
        padding-bottom: 25%;
    }
}

@media screen and (max-width: 380px) {
    #Visual, .visual_contents {
        height: 650px
    }

    .bxslider li.visual_contents img {
        top: 0;
        width: 160% !important;
        position: absolute;
        right: -1.5% !important;
    }
}

@media screen and (max-width: 320px) {
    .bxslider li.visual_contents img {
        top: -3px;
    }

    .bx-viewport {
        padding-bottom: 20%;
    }

    #Visual, .visual_contents {
        height: 600px
    }
}

/*メニュー///////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (max-width: 1000px) {
    .menu .menu__content .content__item {
        margin: 10px 0;
    }

    .menu .menu__content .content__item a {
        font-size: 1rem;
    }
}

@media screen and (max-width: 900px) {
    .menu .menu__content .content__item {
        width: 24.5%;
        box-sizing: border-box;
    }

    .menu .menu__content {
        padding: 10px;
    }

    .menu .menu__content nav {
        justify-content: flex-start;
    }

    .menu .menu__content .content__item img {
        width: 100%;
    }

    .menu .menu__content .content__item a {
        font-size: 1rem;
    }
}

@media screen and (max-width: 700px) {
    .menu .menu__content .content__item {
        width: 48%;
        height: 50px;
    }

    .menu .menu__content .content__item img {
        width: 70%;
    }

    .menu .menu__content nav {
        justify-content: space-between;
    }
}

@media screen and (max-width: 520px) {
    .menu .menu__content .content__item img {
        width: 100%;
    }

    .menu .menu__content {
        padding: 10px;
    }
}

@media screen and (max-width: 420px) {
    .menu .menu__content .content__item {
        height: 50px;
        font-size: 110%;
    }
}

@media screen and (max-width: 350px) {
    .menu .menu__content .content__item {
        height: 50px;
    }
}

/*********************************************************************************section*/
.prize_contents .button .bt_apple {
    font-size: 0.8rem;
    padding: 10px;
}

@media screen and (max-width: 700px) {
    .box_x2 {
        margin-bottom: 10px !important;
    }

    .box_x2:last-child {
        margin-bottom: 0 !important;
    }

    .box_x2 > div {
        width: 100%;
        padding-bottom: 10px;
    }

    h2 {
        font-size: 135%;
        margin: 0 0 20px 0;
    }

    .oubo .oubo__senga-wrapper {
        padding: 10px;
        border-radius: 10px;
    }

    .timelaps_box {
        padding: 0;
        border: 3px solid #65b9b5;
        margin-top: 25px;
    }

    .timelaps_box h4 {
        font-size: 1.2rem !important;
    }

    .timelaps_box > div {
        padding: 15px;
    }

    .nurie .box_x2 {
        display: -webkit-flex;
        display: flex;
    }

    .tips_box {
        margin-bottom: 15px;
        border-radius: 15px;
    }

    .gallery_waku {
        border-radius: 10px;
        padding: 10px;
    }

    .gallery_box {
        border-radius: 10px;
        padding: 10px;
    }

    .oubo .oubo__step-heading {
        font-size: 150%;
        font-weight: 800;
    }

    .oubo .oubo__step-heading span {
        display: table;
        margin-bottom: 10px;
    }

    .oubo__senga-wrapper .agreement {
        border-radius: 10px;
    }

    /*賞品*/
    .prize_box h4 {
        border-radius: 0;
        position: static;
        margin-bottom: 10px;
        text-align: center;
    }

    .prize_box h4 img {
        width: 100%;
        max-width: 381px;
        max-height: none;
        margin: 0 auto;
    }

    .prize_box_white {
        padding: 10px 10px;
        margin-bottom: 10px;
        border-radius: 10px;
    }

    .box_x2 > div.prize_box_white {
        padding-bottom: 10px !important;
    }

    .box_x2 > div.tips_box {
        padding-bottom: 15px !important;
    }

    .prize_box_white:last-child {
        margin-bottom: 0;
    }

    .prize_box_white .name,
    .prize_box_white.name {
        font-size: 100%;
    }

    .prize_box_white .right,
    .prize_box_white.right {
        padding-left: 0;
        text-align: left;
    }

    .padd_off .box_x2 > div {
        margin-bottom: 25px;
    }

    .prize_box_white .box_x2 > div > div {
        border-radius: 0;
    }

    .bt_product {
        margin-top: 5px;
    }

    .midashi_text_icon {
        width: 1.4rem;
        height: 1.4rem;
    }

    .prize_box_white a {
        margin-top: 10px;
    }

    .padd_off .box_x2 > div:last-child {
        margin-bottom: 0;
    }

    .galaxy_contents .button-wrap {
        margin-bottom: 10px;
    }

    .galaxy_contents .button {
        width: 100%;
        display: block;
        margin: 10px auto 20px;
    }

    .galaxy_contents .button.ibis {
        margin-bottom: 0;
    }

    .galaxy_contents .box_x2 .text-box p {
        margin-bottom: 10px;
    }

    .galaxy_contents .button > p {
        font-size: 100%;
    }

    .galaxy_contents .button {
        padding: 0;
    }

    .galaxy_contents .wacomonedex .text-box {
        margin-top: 0;
    }

    .archive_box {
        width: 49%;
    }

    .dummy_box {
        display: none;
    }

    .menu .menu__content .content__item a {
        font-size: 110%;
    }

}

@media screen and (max-width: 480px) {
    /*セクション共通*/
    .comment_contents h2 img, .prize_contents h2 img, .tips_contents h2 img, .youkou_contents h2 img, .oubo_contents h2 img, .comment_contents h2 img, .gallery_contents h2 img, .software_contents h2 img {
        max-height: 40px;
    }

    /*********************************************************************************リスト*/
    a.list_headerimage {
        background-position: left 2px !important; /****上書き*/
    }

    ul.ui-listview li {
        background-image: none !important;
        padding-left: 0 !important;
    }

    ul.list_type02 li {
        font-size: 120%; /****上書き*/
        margin-right: 30px; /****上書き*/
    }

    /*********************************************************************************ボタン*/
    @media screen and (max-width: 480px) {
        .bt_questionnaire a {
            padding: 0 7px;
        }

        .bt_questionnaire a span.icon {
            padding: 0 7px;
        }

        .bt_questionnaire a span.text {
            font-size: 95%;
            line-height: 1.32em;
            padding: 5px 7px;
        }
    }
    /*********************************************************************************テーブル*/
    td, th {
        white-space: normal !important;
        display: block;
    }

    @media screen and (max-width: 700px) {
        .social_link_simple_buttons {
            text-align: center;
            margin: -10px 0 0;
        }

        .social_link_simple_buttons a {
            text-decoration: none;
            display: inline-block;
            margin: 0 2px;
            width: 35px;
        }
    }

    @media screen and (max-width: 780px) {
        #Oubo {
            padding-top: 30px;
        }

        .oubo_contents {
            border-top-left-radius: 15px;
            border-top-right-radius: 15px;
        }
    }

    @media screen and (max-width: 700px) {
        /*キービジュアル縮小挙動変更～右起点・拡大率・位置調整*/
        .bxslider img {
            float: right;
            width: 165%;
            margin-right: 0;
            margin-top: -10px;
        }
    }
}

@media screen and (max-width: 960px) {
    #Galaxy .box_x2 > div {
        width: 100%;
    }

    .galaxy_contents .button.ibis .bt_more {
        font-size: 150%;
    }
}

@media screen and (max-width: 450px) {
    .sp-arrow {
        width: 15px;
        height: 27px;
    }

    .sp-horizontal .sp-previous-arrow {
        left: -18px !important;
    }

    .sp-horizontal .sp-next-arrow {
        right: -18px !important;
    }

    .sp-image-container {
        border: 2px solid;
    }

    .official_illust_caption_wrapper {
        padding-bottom: 3px;
        height: 28px;
    }

    .sp-bottom-thumbnails {
        margin-top: 10px;
    }

    .official_illust__team {
        font-size: 10px;
        letter-spacing: 0.05rem;
    }

    .official_illust__name {
        font-size: 18px;
    }

    .book_contents > div, .senga_box > div {
        width: 100%;
        margin-bottom: 30px;
    }

    .prize_header_number {
        font-size: 0.9rem;
    }

    .main_image img {
        border: 3px solid #ef8b29;
    }
}

@media screen and (max-width: 800px) {
    .about .content--wrapper {
        padding: 80px 50px 60px;
    }

    .about .wrapper__text-box {
        margin: 10px 25px 0;
    }

    .about .text-box__btn-head {
        width: 70%;
    }

    .about .btn__text {
        font-size: 0.9rem;
    }

    .about .about__note {
        font-size: 0.7rem;
    }

    .prize_box, .tyusen {
        margin-bottom: 40px;
    }

    .box_x2 > div {
        width: 100%;
    }

    .galaxy_contents .box_x2 .img-box {
        width: 100%;
    }

    .senga {
        width: 47%;
    }

    .prize_contents .comment h4 {
        font-size: 0.8rem !important;
    }

    #Software .box_x2 > div {
        margin-bottom: 10px;
        padding-bottom: 0;
    }
}

@media screen and (max-width: 700px) {
    .heading--text {
        font-size: 1.5rem !important;
    }

    .about .text-box__btn-wrapper {
        display: block;
    }

    .about .btn-wrapper__btn {
        margin: 10px auto 0;
        padding: 5px 20px;
    }
}

@media screen and (max-width: 500px) {
    .content--wrapper {
        padding: 0 20px 30px;
    }

    #About {
        padding: 30px 10px;
    }

    .about .content--wrapper {
        padding: 40px 15px 20px;
        border: 3px solid #cf9a4c;
    }

    .about .about__head {
        width: 100%;
    }

    .about .text-box--border {
        margin-top: 30px;
    }

    .about .about__wrapper {
        margin: 4px;
    }

    .about .wrapper__head {
        width: 100%;
    }

    .about .wrapper__text-box {
        margin: 10px 20px 0;
    }

    .about .text-box__btn-head {
        width: 100%;
    }

    .about .text-box__text {
        font-size: 0.75rem;
    }

    .about .text-box__note {
        font-size: 0.6rem;
        margin-top: 10px;
    }

    .timelaps__icon {
        display: none;
    }

    .prize_header__icon {
        width: 25px;
    }

    .prize_header {
        font-size: 1.5rem;
        margin: 25px auto 30px;
    }

    .prize_header_number {
        margin-top: 10px;
    }

    .prize_box {
        padding: 15px 10px;
    }

    .senga {
        width: 100%;
    }

    .senga--dummy {
        display: none;
    }

    #Footer {
        padding: 30px 0;
    }

    .about .text-box--border {
        border-left: 1px solid #479fff;
        border-right: 1px solid #fd81ec;
    }

    .about .text-box--border::before,
    .about .text-box--border::after {
        height: 1px;
    }

    /*ボーダーIE対応*/
    @media all and (-ms-high-contrast: none) {
        .about .text-box--border {
            border: 1px solid #479fff;
        }
    }

    .youkou {
        font-size: 0.75rem;
    }

    .prize-color--a.prize_box {
        border: 3px solid #ff916a;
    }

    .prize-color--b.prize_box {
        border: 3px solid #65b9b5;
    }

    .prize-color--c.prize_box {
        border: 3px solid #cf9a4c;
    }
}

@media screen and (max-width: 350px) {
    .menu .menu__content .content__item a {
        font-size: 100%;
    }

    #About,
    .bg_01,
    .bg_02 {
        padding-right: 8px;
        padding-left: 8px;
    }

    .content--wrapper {
        padding-right: 15px;
        padding-left: 15px;
    }

    .heading--text {
        font-size: 1.25rem !important;
    }
}

/*結果発表///////////////////////////////////////////////////////////////////////////////////////////*/
#Result {
    background-size: 240%, 20%, 100%;
}

.result .result_title__small {
}

@media screen and (max-width: 700px) {
    .result .result_title__small {
        margin-right: 10px;
        font-size: 1.2rem;
    }
}

.result .result_title__large {
    font-size: 3rem;
}

@media screen and (max-width: 700px) {
    .result .result_title__large {
        font-size: 2.2rem;
    }
}

.result .result__main {
    padding: 30px 40px;
}

@media screen and (max-width: 700px) {
    .result .result__main {
        padding: 0 10px 30px 10px;
    }
}

.result .result_contents {
    margin: 30px auto;
}

@media screen and (max-width: 500px) {
    .result .result_contents {
        padding: 5px;
    }
}

.result .result_header {
    margin: 20px auto 0;
}

@media screen and (max-width: 700px) {
    .result .result_header {
        font-size: 2.3rem;
    }
}

@media screen and (max-width: 500px) {
    .result .result_header {
        font-size: 1.7rem;
    }
}

.result .result_about .text li {
    font-size: 75%;
    line-height: 1.5;
}

@media screen and (max-width: 500px) {
    .result .result_about .text li {
        font-size: 0.75rem;
        text-align: left !important;
    }
}

.result .text {
    margin: 30px 0;
}

.result .popup--border {
    border-left: 1px solid #479fff;
    border-right: 1px solid #fd81ec;
}

.result .popup--border::before,
.result .popup--border::after {
    height: 1px;
}

/*ボーダーIE対応*/
@media all and (-ms-high-contrast: none) {
    .result .popup--border {
        border: 1px solid #479fff;
    }
}

.result .popup--border .popup__btn {
}

@media screen and (max-width: 500px) {
    .result .popup--border .popup__btn {
        margin: 5px;
    }

    .result .timelapssyou .movie-box video {
        padding: 5px;
    }
}

.result .name {
}

.result .kasaku .name {
    margin: 20px auto;
    text-align: left;
    line-height: 1.25;
}

@media screen and (max-width: 500px) {
    .result .name {
        margin: 20px auto;
    }

    .result .kasaku .name {
        margin: 15px auto;
    }
}

.result .name__head {
    margin-right: 10px;
    padding: 0 6px;
    font-size: 0.75rem;
    border-right: 4px solid #cf9a4c;
    border-left: 4px solid #cf9a4c;
}

.result .kasaku .name__head {
    margin-right: 5px;
    padding: 0 3px;
    font-size: 0.65rem;
    border-right: 3px solid #cf9a4c;
    border-left: 3px solid #cf9a4c;
}

.result .name a {
    font-size: 1rem;
    text-decoration: underline;
    line-height: 1.25;
}

.result .kasaku .name a {
    font-size: 0.85rem;
}

.result .name__san {
    font-size: 0.7rem;
    line-height: 1.25;
}

.result .kasaku .name__san {
    font-size: 0.65rem;
}

@media screen and (max-width: 700px) {
    .result .result_about .image {
        padding-top: 15px;
    }

    .result .vertical-grid .contents_img {
        flex-basis: 48%;
    }

    .result .result_header_img img {
        width: 80%;
    }

    .result .result_about .image img {
        width: 100%;
    }

    .result .result_about .image {
        padding-bottom: 10px;
    }

    .result .result_contents__inline {
        padding: 30px 30px;
    }

    .result .result_about {
        display: block;
        margin-bottom: 2rem;
    }

    .result .result_header_img {
        margin-right: 0;
        margin-bottom: 2rem;
        display: block;
    }

    .result .result_header_img img {
        width: auto;
        max-height: 110px;
    }

    .result .result_header__icon {
        width: 30px;
    }

    .result .result_header_number {
        margin-top: 5px;
        font-size: 1rem;
    }

    .result .gallery_x2 {
        display: block;
        margin-bottom: 0;
    }

    .result .gallery_x2 > div {
        width: 100%;
        margin: 50px auto 0 auto;
    }

    .result .valucomment,
    .result .gallery_x2 .valucomment {
        padding: 15px 20px;
        text-align: justify;
    }

    .result .valucomment p {
        font-size: 0.75rem;
        line-height: 1.5;
    }

    .result .valucomment .valucomment_name {
        font-size: 0.65rem;
    }

    .result .timelaps-comment {
        margin-top: 20px;
    }

    .result .grid {
        column-count: 2;
        justify-content: space-between;
    }

    .result .result_contents.kasaku {
        margin-bottom: 0;
    }

    .result .result_about .image {
        padding-top: 15px;
    }
}

@media screen and (max-width: 480px) {
    .result .result_about {
        display: block;
        margin: 0 auto 30px;
    }

    .result .result_header_img {
        margin-right: 0;
        margin-bottom: 20px;
    }

    .result .result_header_img img {
        height: auto;
        width: 60%;
    }

    .result .prize_header {
        width: auto;
    }

    .result .box_x2 > div {
        width: 100%;
    }

    .result .result_contents__inline {
        margin: 0;
        padding: 20px 20px 40px 20px;
        border: none;
    }

    .result .kasaku .result_contents__inline {
        padding-bottom: 20px;
    }
}

/*結果発表ここまで///////////////////////////////////////////////////////////////////////////////////////////*/