@charset "utf-8";

body {
    /* font-family: "ヒラギノ角ゴ ProN W3", arial, "Hiragino Kaku Gothic ProN", "Meiryo", "メイリオ", sans-serif; */
    background-color: #E53333;
}

strong {
    font-weight: bold;
}

.HeadBnr01 {
    z-index: 1;
}

header {
    z-index: 3;
}

footer {
    position: relative;
    z-index: 1;
    background: #fff !important;
}

@media screen and (min-width: 1100px) {
    header {
        position: relative;
    }

    nav.ContentNavi01 {
        position: relative;
        z-index: 1;
        margin-bottom: 0 !important;
    }
}

.Main {
    position: relative;
    margin: 0px auto;
    text-align: justify;
    background: #fff;
    color: #222222;
    overflow: hidden;
    background-color: #DB3535;
}

.MainInner {
    background-color: #E53333;
    max-width: 960px;
    margin: 0 auto;
    padding-bottom: 116px;
}

img {
    max-width: 100%;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

.pc_view {
    display: block !important;
}

.sp_view {
    display: none !important;
}

.fadeup {
    animation: fadeup 1s 0.1s forwards;
    opacity: 0;
}

@keyframes fadeup {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.delay-time01 {
    animation-delay: 0.3s;
}

.delay-time02 {
    animation-delay: 0.5s;
}

.delay-time03 {
    animation-delay: 0.7s;
}

.delay-time04 {
    animation-delay: 0.9s;
}

.fade.fadein {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.fadein {
    transform: translateY(0px);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.5s, opacity 0.5s, visibility 0s;
    transform: scale(0.8);
}

.is-fadein {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

.icon-anime01 {
    animation: anime01 0.8s 0.25s forwards;
    opacity: 0;
}

@keyframes anime01 {
    from {
        opacity: 0;
        transform: translateX(100px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.icon-anime02 {
    animation: anime02 0.6s 0.25s forwards;
    opacity: 0;
}

@keyframes anime02 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.Netkeirin_3rd .fv {
    max-width: 582px;
    margin: 0 auto;
}

.Netkeirin_3rd .fv_inner {
    background: url("/common/img/campaign/202312/3rd/fv_bg_pc.png") no-repeat;
    background-size: contain;
    background-position: center top;
    margin: 0 auto;
    padding-top: 18.5px;
    animation: zoomin 0.4s 0.1s forwards;
}

@keyframes zoomin {
    0% {
        transform: scale(0.5);
        opacity: 0;
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.Netkeirin_3rd .fv .fv_img01 {
    max-width: 335.84px;
    margin: 0 auto 4.8px;
}

.Netkeirin_3rd .fv .fv_img02 {
    max-width: 174px;
    margin: 0 auto 10.4px;
}

.Netkeirin_3rd .fv .fv_img03 {
    max-width: 404.69px;
    margin: 0 auto 33.8px;
}

.Netkeirin_3rd .fv_text {
    text-align: center;
    color: #fff;
    margin-bottom: 24px;

}

.Netkeirin_3rd .fv_text p {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.45;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
}

.Netkeirin_3rd .fv_text .fv_text01 {
    margin-bottom: 15px;
}

.Netkeirin_3rd .btn {
    display: inherit;
    max-width: 335px;
    height: 50px;
    line-height: 50px;
    margin: 0 auto;
    border-radius: 80px;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    position: relative;
}

.Netkeirin_3rd .btn::after {
    position: absolute;
    content: "";
    width: 18.3px;
    height: 11.41px;
    top: 19px;
    right: 20px;
}

.Netkeirin_3rd .btn:hover {
    box-shadow: none;
    transform: translate3d(0, 5px, 0);
}

.Netkeirin_3rd .gift_btn {
    background-color: #fff;
    color: #453E3E;
    box-shadow: 0px 5px 0 #C02B2B;
}

.Netkeirin_3rd .gift_btn::after {
    background: url("/common/img/campaign/202312/3rd/arrow.png") no-repeat;
    background-size: contain;
}

.Netkeirin_3rd .yoso_campaign_btn {
    background-color: #E53333;
    color: #fff;
    box-shadow: 0px 5px 0 #C02B2B;
}

.Netkeirin_3rd .yoso_campaign_btn::after {
    background: url("/common/img/campaign/202312/3rd/arrow_white.png") no-repeat;
    background-size: contain;
}

.Netkeirin_3rd .amagif_campaign_btn {
    background-color: #E75922;
    color: #fff;
    box-shadow: 0px 5px 0 #D54D19;
}

.Netkeirin_3rd .amagif_campaign_btn::after {
    background: url("/common/img/campaign/202312/3rd/arrow_white.png") no-repeat;
    background-size: contain;
}

.Netkeirin_3rd .interview_btn {
    background-color: #fff;
    color: #453E3E;
    box-shadow: 0px 5px 0 #C02B2B;
    font-size: 19px;
}

.Netkeirin_3rd .interview_btn span {
    color: #E53333;
    font-size: 17px;
}

.Netkeirin_3rd .interview_btn::after {
    background: url("/common/img/campaign/202312/3rd/arrow.png") no-repeat;
    background-size: contain;
}



.Netkeirin_3rd .gift {
    margin: 0 auto 56px;
    max-width: 582px;
}

.Netkeirin_3rd .gift .gift_title {
    background: url("/common/img/campaign/202312/3rd/gift_bg_pc.png") no-repeat;
    background-size: cover;
    background-position: center top;
    max-width: 582px;
    height: 164px;
}

.Netkeirin_3rd .gift .gift_icon {
    max-width: 40.49px;
    margin: 0 auto 21px;
}

.Netkeirin_3rd .gift h2 {
    max-width: 427.77px;
    margin: 0 auto 26.4px;
}

.Netkeirin_3rd .gift .gift_present {
    margin: -13px auto 28px;
}

.Netkeirin_3rd .campaignBanner {
    max-width: 542px;
    margin: 0 auto;
}

.Netkeirin_3rd .gift_present_img01 {
    max-width: 582px;
    height: 107px;
    margin: 0 auto;
}

.Netkeirin_3rd .gift_text01 {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    margin-bottom: 7px;
}

.Netkeirin_3rd .gift_text01 span {
    font-size: 14px;
}

.Netkeirin_3rd .campaign {
    max-width: 582px;
    margin: 0 auto 20px;
}

.Netkeirin_3rd .campaign h3 {
    max-width: 280px;
    margin: 0 auto 21px;
}

.Netkeirin_3rd .yoso_campaign {
    background-color: #FCEBEB;
    padding: 30px 20px;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_text01 {
    font-size: 15px;
    font-weight: 300;
    color: #E53333;
    text-align: center;
    letter-spacing: -0.01em;
    line-height: 1.4;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
    margin-bottom: 6px;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_text02 {
    font-size: 17px;
    font-weight: 600;
    color: #453E3E;
    text-align: center;
    letter-spacing: -0.01em;
    line-height: 1.4;
    margin-bottom: 17px;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_list {
    max-width: 335px;
    margin: 0 auto;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_list li {
    margin-bottom: 10px;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_text03 {
    text-align: center;
    color: #5F5A5A;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -0.01em;
    margin-bottom: 18px;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
}

.Netkeirin_3rd .yoso_campaign .yoso_campaign_img {
    max-width: 315px;
    margin: 0 auto 10px;
}

.Netkeirin_3rd .amagif_campaign {
    background-color: #FFEFE8;
    padding: 30px 20px;
}

.Netkeirin_3rd .amagif_campaign .amagif_campaign_text01 {
    font-size: 17px;
    font-weight: 600;
    color: #453E3E;
    text-align: center;
    letter-spacing: -0.01em;
    line-height: 1.4;
    margin-bottom: 17px;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
}

.Netkeirin_3rd .interview {
    margin: 0 auto;
    max-width: 582px;
}

.Netkeirin_3rd .interview_inner {
    background: url("/common/img/campaign/202312/3rd/interview_bg_pc.png") no-repeat;
    background-size: cover;
    background-position: center top;
    max-width: 582px;
    height: 356.55px;
    margin: 0 auto;
}

.Netkeirin_3rd .interview_inner .interview_icon {
    max-width: 35.36px;
    margin: 0 auto 4px;
    padding-top: 10px;
}

.Netkeirin_3rd .interview_inner h2 {
    max-width: 364.49px;
    /* margin: 0 auto 20px; */
    margin: 0 auto 9px;
    position: relative;
}

.Netkeirin_3rd .interview_inner h2::before {
    content: "";
    position: absolute;
    background: url("/common/img/campaign/202312/3rd/interview_icon02.png") no-repeat;
    background-size: contain;
    bottom: -31.5px;
    left: -28px;
    width: 45px;
    height: 46px;
}

.Netkeirin_3rd .interview_inner h2::after {
    content: "";
    position: absolute;
    background: url("/common/img/campaign/202312/3rd/interview_icon03.png") no-repeat;
    background-size: contain;
    bottom: -31.5px;
    right: -30px;
    width: 50px;
    height: 40px;
}

.Netkeirin_3rd .interview .interview_text {
    font-size: 22px;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
    font-weight: 600;
    color: #fff;
    text-align: center;
    max-width: 542px;
    margin: 0 auto 23.5px;
}

.Netkeirin_3rd .interview .interview_text01 {
    line-height: 1.45;
    margin-bottom: 35px;
}

.Netkeirin_3rd .interview .interview_text02 {
    line-height: 1.45;
}

.Netkeirin_3rd .interview .interview_scheduled {
    max-width: 542px;
    margin: -4.5px auto 0;
}

.Netkeirin_3rd .interview .scheduled_date {
    max-width: 542px;
    height: 45px;
    background-color: #B52929;
    margin: 0 auto 20px;
}

.Netkeirin_3rd .interview .scheduled_date p {
    color: #fff;
    font-family: "ヒラギノUD角ゴ Std", "Hiragino Kaku Gothic Std", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", arial, "Meiryo", "メイリオ", sans-serif;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    line-height: 45px;
}

.Netkeirin_3rd .campaignBanner ul {
    position: relative;
    padding: 0 0 21px 10px;
    font-size: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
}

.Netkeirin_3rd .campaignBanner li {
    /* width: 62.5%; */
    width: 175px;
    display: inline-block;
    /* padding: 0 10px 0 0; */
    padding-right: 8.5px;
    vertical-align: top;
}

.Netkeirin_3rd .campaignBanner li a {
    display: block;
    overflow: hidden;
    border-radius: 4px;
}

.Netkeirin_3rd .campaignBanner li img {
    display: block;
    width: 100%;
    border-radius: 4px;
}

/* PC */
@media only screen and (min-width: 1025px) {
    .Netkeirin_3rd .campaignBanner li {
        /* width: 46%; */
        width: 175px;
    }
}

/* ★アコーディオン */

.race_present {
    max-width: 582px;
    margin: 0 auto;
}

.accordion {
    background-color: rgba(69, 62, 62, 0.9);
}

.accordion__title {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    background-color: #453E3E;
    color: #fff;
    height: 44px;
    line-height: 44px;
    position: relative;
    cursor: pointer;
}

.accordion__title .arrow {
    background: url("/common/img/campaign/202312/3rd/arrow_accordion.png") no-repeat;
    background-size: contain;
    width: 17px;
    height: 10px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    transition: 0.2s;
}

.is-active .arrow {
    transform: translateY(-50%);
    transition: 0.2s;
}

.accordion__content {
    display: none;
    margin: auto;
    padding: 20px 0 0;
    margin: 0 10px;
    text-align: left;
}

.T-shirt {
    background-color: #462E2E;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #7C7C7C;
    border-bottom: 1px solid #7C7C7C;
}

.T-shirt_left {
    width: 427px;
}

.T-shirt .T-shirt_left_box:first-of-type {
    border-bottom: 1px solid #7C7C7C;
}

.name {
    padding: 7px 0 4px;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}

.detail {
    color: #fff;
    padding-bottom: 7px;
    font-size: 16px;
    font-weight: 300;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #7C7C7C;
    align-items: center;
}

.T-shirt .detail {
    border-bottom: 0;
}

.T-shirt .name,
.T-shirt .detail {
    margin-left: 10px;
}

.T-shirt_right {
    max-width: 100px;
    margin-right: 10px;
    /* margin-left: 24px; */
}

.product_name {
    line-height: 1.3;
}

.product_name small {
    font-size: 14px;
}

.product_name span {
    margin-left: 8px;
}

.product_name .gray {
    color: #989898;
}

.number_of_people {
    color: #FFF8A3;
}

.number_of_people span {
    font-weight: 600;
    font-size: 20px;
}

.accordion__content.is-open {
    display: block;
}

.accordion__close {
    width: 100%;
    height: 44.5px;
    position: relative;
    cursor: pointer;
}

.accordion__close .arrow {
    background: url("/common/img/campaign/202312/3rd/arrow_accordion.png") no-repeat;
    background-size: contain;
    width: 25px;
    height: 14px;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    top: 10px;
}

@media screen and (max-width: 767px) {

    .pc_view {
        display: none !important;
    }

    .sp_view {
        display: block !important;
    }

    .MainInner {
        max-width: 100%;
        padding-bottom: 30px;
    }

    .Netkeirin_3rd .fv {
        margin: 0 auto;
        max-width: 100%;
    }

    .Netkeirin_3rd .fv_inner {
        background: url("/common/img/campaign/202312/3rd/fv_bg_sp.png") no-repeat;
        background-size: contain;
        background-position: center top;
        padding-top: 17.7px;
    }

    .Netkeirin_3rd .fv .fv_img01 {
        max-width: 315px;
        margin: 0 auto;
    }

    .Netkeirin_3rd .fv .fv_img02 {
        max-width: 144px;
        margin: -4px auto 10px;
    }

    .Netkeirin_3rd .fv .fv_img03 {
        max-width: 335px;
        margin: 0 auto 25.2px;
    }

    .Netkeirin_3rd .fv_text {
        margin-bottom: 16px;
    }

    .Netkeirin_3rd .fv_text p {
        font-size: 18px;
        line-height: 1.55;
    }

    .Netkeirin_3rd .fv_text .fv_text01 {
        margin-bottom: 27.9px;
    }

    .Netkeirin_3rd .gift {
        margin: 0 auto 30px;
        max-width: 100%;
    }

    .Netkeirin_3rd .gift .gift_title {
        background: url("/common/img/campaign/202312/3rd/gift_bg_sp.png") no-repeat;
        background-size: cover;
        background-position: center top;
        max-width: 365px;
        height: 102.85px;
        margin: 0 auto;
    }

    .Netkeirin_3rd .gift .gift_icon {
        max-width: 40.49px;
        margin: 0 auto;
    }

    .Netkeirin_3rd .gift h2 {
        max-width: 335px;
        margin: 0 auto;
        padding-top: 20.6px;
    }

    .Netkeirin_3rd .gift .gift_present {
        margin: 0 20px 18px;
    }

    .Netkeirin_3rd .gift_present_img01 {
        max-width: 335px;
        height: 132px;
    }

    .race_present {
        max-width: 335px;
        margin: 0 auto;
    }

    .accordion__title .arrow {
        width: 13px;
        height: 7.28px;
        right: 10px;
    }

    .T-shirt_left {
        width: 184px;
    }

    .T-shirt .name {
        margin-bottom: 3px;
    }

    .product_name {
        line-height: 1;
    }

    .name {
        padding: 7px 0 0;
        font-size: 15px;
    }

    .detail {
        padding-bottom: 9px;
        font-size: 14px;
        align-items: flex-end;
    }

    .product_name small {
        font-size: 12px;
    }

    .product_name span {
        font-size: 12px;
    }

    .number_of_people {
        font-size: 12px;
    }

    .number_of_people span {
        font-size: 17px;
    }

    .T-shirt_right {
        max-width: 98px;
    }

    .accordion__close {
        height: 40px;
    }

    .accordion__close .arrow {
        width: 19px;
        height: 10.64px;
        top: 9px;
    }

    .Netkeirin_3rd .gift_text01 {
        font-size: 16px;
        margin-bottom: 8px;
    }

    .Netkeirin_3rd .btn {
        max-width: 315px;
        height: 46px;
        line-height: 46px;
        font-size: 19px;
    }

    .Netkeirin_3rd .btn::after {
        top: 18px;
    }

    .Netkeirin_3rd .yoso_campaign .yoso_campaign_text02 {
        text-align: left;
        max-width: 335px;
        margin: 0 auto 17px;
    }

    .Netkeirin_3rd .yoso_campaign .yoso_campaign_text03 {
        margin-bottom: 19px;
    }

    .Netkeirin_3rd .yoso_campaign .yoso_campaign_img {
        margin: 0 auto 8px;
    }

    .Netkeirin_3rd .amagif_campaign {
        background-color: #FFEFE8;
        padding: 30px 0;
    }

    .Netkeirin_3rd .amagif_campaign .amagif_campaign_text01 {
        text-align: left;
        margin: 0 auto 22px;
        max-width: 335px;
    }

    .Netkeirin_3rd .campaignBanner {
        padding-left: 20px;
    }

    .Netkeirin_3rd .campaignBanner ul {
        padding: 0 0 21px 0;
    }

    .Netkeirin_3rd .campaignBanner li {
        width: 227px;
        padding-right: 10px;
    }

    .Netkeirin_3rd .interview {
        margin: 0 auto;
        max-width: 100%;
    }

    .Netkeirin_3rd .interview_inner {
        background: url("/common/img/campaign/202312/3rd/interview_bg_sp.png") no-repeat;
        background-size: contain;
        background-position: center top;
        max-width: 375px;
        height: 285px;
        margin: 0 auto;
    }

    .Netkeirin_3rd .interview_inner .interview_icon {
        max-width: 24.1px;
        margin: 0 auto 3px;
        padding-top: 2.6666vw;
    }

    .Netkeirin_3rd .interview_inner h2 {
        max-width: 248.44px;
        margin: 0 auto 12px;
    }

    .Netkeirin_3rd .interview_inner h2::before {
        bottom: -16px;
        left: -43px;
        width: 40px;
        height: 40.9px;
    }

    .Netkeirin_3rd .interview_inner h2::after {
        bottom: -14.5px;
        right: -44px;
        width: 45px;
        height: 36px;
    }

    .Netkeirin_3rd .interview .interview_text {
        font-size: 18px;
        max-width: 335px;
        margin: 0 auto;
    }

    .Netkeirin_3rd .interview .interview_text01 {
        line-height: 1.55;
        margin-bottom: 25px;
    }

    .Netkeirin_3rd .interview .interview_text02 {
        line-height: 1.55;
    }

    .Netkeirin_3rd .interview .interview_scheduled {
        margin: 16px auto 0;
    }

    .Netkeirin_3rd .interview .scheduled_date p {
        font-size: 18px;
    }

}

@media screen and (max-width: 340px) {
    .Netkeirin_3rd .fv {
        margin: 0 auto;
        max-width: 95%;
    }

    .Netkeirin_3rd .fv_text p {
        font-size: 5.2vw;
    }

    .Netkeirin_3rd .btn {
        max-width: 84vw;
        font-size: 5.06vw;
    }

    .Netkeirin_3rd .amagif_campaign .amagif_campaign_text01 {
        margin: 0 20px 22px;
    }

    .Netkeirin_3rd .interview_btn span {
        font-size: 4.53vw;
    }

    .Netkeirin_3rd .interview_inner h2::before {
        bottom: -16px;
        left: -33px;
        width: 10.66vw;
        height: 10.906vw;
    }

    .Netkeirin_3rd .interview_inner h2::after {
        bottom: -14.5px;
        right: -34px;
        width: 12vw;
        height: 9.6vw;
    }

    .Netkeirin_3rd .interview .interview_text {
        font-size: 4.8vw;
    }

    .Netkeirin_3rd .gift_present_img01 {
        height: initial;
    }

    .accordion {
        margin: -2px auto 0;
    }

    .accordion__content {
        margin: 0 5px;
    }

    .T-shirt_right {
        max-width: 26.13vw;
        margin-right: 5px;
    }

    .name {
        font-size: 4vw;
    }

    .detail {
        font-size: 3.73vw;
    }

    .T-shirt .name,
    .T-shirt .detail {
        margin-left: 5px;
    }

    .product_name span {
        font-size: 3.2vw;
    }

    .number_of_people {
        font-size: 3.2vw;
    }

    .number_of_people span {
        font-size: 4.53vw;
    }

}
