/* ...............................

    index

............................... 

    # base

    # header.php
    
    # page-top.php
    
    # page-news.php
    
    # single-news.php
    
    # page-topics.php
    
    # single-topics.php
    
    # page-members_only.php
    
    # single-members_only.php
    
    # page-games.php
    
    # single-games.php
    
    # page-players.php
    
    # single-posts_players.php

    # page-goods.php
    
    # page-about.php

    # page-blog.php
    
    # page-fanclub.php
    
    # page-partner.php
    
    # page-contact.php
    
        ## page-confirm.php
    
        ## page-complete.php
    
    # page-commercial.php
    
    # page-privacy_policy.php

    # page-ticket.php

    # page-ticket-lp.php

        ## dec

        ## jan
        ## mar

        ##hakodate

        ## nov2025
    
    # footer.php

    # 404.php

    
    プラグイン「simple-membership」内を編集しています。
    プラグイン更新の際は必ずバックアップを取り、
    更新後は以下のファイルをアップロードするようお願いします。

    plugins/simple-membership/views/

    # login.php

    # loggedin.php

*/

/* =============================

    base

==============================*/

:root {
    --black: #1a1311;
    --black-a085: #3C3634;
    --black-a060: #757170;
    --black-a040: #A3A09F;
    --black-a025: #C5C3C3;
    --black-a010: #E7E7E6;
    --black-a005: #F3F3F2;
    --yellow: #ffbb01;
    --yellow-a085: #FFD667;
    --yellow-a060: #FFE499;
    --yellow-a040: #FFEEBF;
    --yellow-a025: #FFF8E5;
    --yellow-a005: #FFFCF2;
    --yellow-lp: #fbc70d;
    --yellow-nov2025: #f2d825;
    --white: #fff;
    --link-blue: #1f6dff;
    --cv-pink: #fd517f;
    --err-red: #ff400c;
}

* {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 62.5%;
}

h1 {
    font-size: 2.8rem;
    margin: 0;
}

h2 {
    font-size: 2.4rem;
    margin: 0;
}

h3 {
    font-size: 2.0rem;
    margin: 0;
}

p {
    font-size: 1.6rem;
    margin: 0;
}

th,
td {
    font-size: 1.6rem;
}

span,
a {
    font-size: 1.4rem;
}

a:hover {
    text-decoration: none;
}

ul {
    padding: 0;
    margin: 0;
}

li {
    list-style: none;
    padding: 0;
    margin: 0;
}

img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

table {
    margin: 0;
    width: 100%;
}

.mg_10_pc {
    margin-right: 1.0rem;
    display: inline-block;
}

.mg_10_sp {
    display: none;
}

.en {
    font-family: 'Open Sans', sans-serif;
}

.view_pc {
    display: block;
}

.view_sp {
    display: none;
}

/*ヘッダー グロナビ調整用*/

.view_under-1445 {
    display: none;
}

.view_over-1446 {
    display: block;
}

/*ヘッダー グロナビ調整用*/
@media screen and (max-width: 1445px) {
    .view_under-1445 {
        display: block;
    }

    .view_over-1446 {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    h1 {
        font-size: 2.4rem;
    }

    h2 {
        font-size: 2.0rem;
    }

    h3 {
        font-size: 1.6rem;
    }

    p {
        font-size: 1.4rem;
    }

    th,
    td {
        font-size: 1.4rem;
    }

    span,
    a {
        font-size: 1.2rem;
    }

    .mg_10_pc {
        display: none;
    }

    .mg_10_sp {
        margin-right: 1.0rem;
        display: inline-block;
    }

    .view_pc {
        display: none;
    }

    .view_sp {
        display: block;
    }
}

/*------------------------------------
    btn
------------------------------------ */
#top-wrapper .view_more_btn,
#about-wrapper .view_more_btn,
#company-wrapper .view_more_btn,
#games-wrapper .view_more_btn,
#blog-wrapper .blog_fc_link .view_more_btn,
#blog-wrapper .fc_login .view_more_btn,
#blog-wrapper .blog_fc_link .view_more_btn,
#fc-wrapper .fc_login .view_more_btn {
    position: relative;
    width: fit-content;
    margin: 5.6rem auto 0;
    padding: 2.5rem 0;
}

#top-wrapper .view_more_btn a,
#games-wrapper .view_more_btn a,
#games-wrapper .view_more_btn.more_btn p,
#blog-wrapper .fc_login .view_more_btn a,
#blog-wrapper .blog_fc_link .view_more_btn a,
#fc-wrapper .fc_login .view_more_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 6.9rem 2.5rem 3.2rem;
}

#about-wrapper .view_more_btn a,
#company-wrapper .view_more_btn a {
    background: var(--yellow);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 6.9rem 2.5rem 3.2rem;
}

#top-wrapper .view_more_btn:hover a,
#top-wrapper .swpm-login-submit.view_more_btn:hover input,
#about-wrapper .view_more_btn:hover a,
#company-wrapper .view_more_btn:hover a,
#blog-wrapper .fc_login .view_more_btn:hover a,
#blog-wrapper .fc_login .view_more_btn:hover input,
#blog-wrapper .blog_fc_link .view_more_btn:hover a,
#fc-wrapper .fc_login .view_more_btn:hover a,
#fc-wrapper .fc_login .view_more_btn:hover input {
    background: var(--black-a010);
}

#games-wrapper .view_more_btn.more_btn {
    cursor: pointer;
    margin: 0 auto 14.0rem;
    width: 38.0rem;
}

#top-wrapper .top_links_txt,
#top-wrapper .buy_tk_btn,
#top-wrapper .top_games_buy_tk_btn,
#top-wrapper .top_games_view_more_btn,
#top-wrapper .top_games_view_report_btn,
#top-wrapper .top_fc .view_more_btn a,
#games-wrapper .buy_tk_btn,
#single-players-wrapper .post_back_btn {
    position: relative;
}

#top-wrapper .view_more_btn .allow,
#top-wrapper .top_links_txt .allow,
#top-wrapper .top_games_buy_tk_btn .allow,
#top-wrapper .top_games_view_more_btn .allow,
#top-wrapper .top_games_view_report_btn .allow,
#about-wrapper .view_more_btn .allow,
#company-wrapper .view_more_btn .allow,
#games-wrapper .view_more_btn .allow,
#single-players-wrapper .post_back_btn .allow,
#blog-wrapper .fc_login .view_more_btn .allow,
#blog-wrapper .blog_fc_link .view_more_btn .allow,
#fc-wrapper .fc_login .view_more_btn .allow {
    position: absolute;
    background: var(--black-a005);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2.0rem;
    top: 2.15rem;
    right: 2.0rem;
}

#top-wrapper .view_more_btn .allow::before,
#top-wrapper .top_links_txt .allow::before,
#top-wrapper .top_games_buy_tk_btn .allow::before,
#top-wrapper .top_games_view_more_btn .allow::before,
#top-wrapper .top_games_view_report_btn .allow::before,
#about-wrapper .view_more_btn .allow::before,
#company-wrapper .view_more_btn .allow::before,
#games-wrapper .view_more_btn .allow::before,
#single-players-wrapper .post_back_btn .allow::before,
#blog-wrapper .fc_login .view_more_btn .allow::before,
#blog-wrapper .blog_fc_link .view_more_btn .allow::before,
#fc-wrapper .fc_login .view_more_btn .allow::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 12px;
    width: 6px;
    height: 6px;
    border-top: 2px solid var(--link-blue);
    border-right: 2px solid var(--link-blue);
    transform: rotate(45deg);
}

#top-wrapper .view_more_btn .allow::after,
#top-wrapper .top_links_txt .allow::after,
#top-wrapper .top_games_buy_tk_btn .allow::after,
#top-wrapper .top_games_view_more_btn .allow::after,
#top-wrapper .top_games_view_report_btn .allow::after,
#about-wrapper .view_more_btn .allow::after,
#company-wrapper .view_more_btn .allow::after,
#games-wrapper .view_more_btn .allow::after,
#single-players-wrapper .post_back_btn .allow::after,
#blog-wrapper .fc_login .view_more_btn .allow::after,
#blog-wrapper .blog_fc_link .view_more_btn .allow::after,
#fc-wrapper .fc_login .view_more_btn .allow::after,
#rw-fc-wrapper .fc_mv_line_contain a .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: var(--link-blue);
}

#top-wrapper .view_more_btn:hover .allow,
#about-wrapper .view_more_btn:hover .allow,
#company-wrapper .view_more_btn:hover .allow {
    background: var(--white);
}

#games-wrapper .view_more_btn.more_btn .allow {
    right: 3.2rem;
    width: 2.8rem;
    height: 2.8rem;
}

#games-wrapper .view_more_btn.more_btn .allow::before {
    transform: rotate(135deg);
    top: 1.2rem;
    left: 1.2rem;
    width: 0.6rem;
    height: 0.6rem;
}

#games-wrapper .view_more_btn.more_btn .allow::after {
    top: 1.2rem;
    left: 1.2rem;
    transform: rotate(90deg);
}

#single-players-wrapper .post_back_btn .allow {
    left: 2.0rem;
    margin-right: 2.0rem;
    margin-left: 0;
}

#single-players-wrapper .post_back_btn .allow::before {
    left: 1.2rem;
    transform: rotate(225deg);
}

#single-players-wrapper .post_back_btn .allow::after {
    left: 1.3rem;
}

#top-wrapper .buy_tk_btn,
#top-wrapper .top_ticket_buy_tk_btn,
#games-wrapper .buy_tk_btn {
    position: relative;
    width: fit-content;
    padding: 2.5rem 0;
}

#top-wrapper .buy_tk_btn::before,
#games-wrapper .buy_tk_btn::before {
    content: "";
    background: url(img/top/buy_tk_icon.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 2.4rem;
    width: 2.4rem;
    height: 2.4rem;
}

#top-wrapper .buy_tk_btn:hover::before {
    background: url(img/top/buy_tk_icon_pnk.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    left: 2.4rem;
    width: 2.4rem;
    height: 2.4rem;
}

#top-wrapper .buy_tk_btn a,
#top-wrapper .top_ticket_buy_tk_btn a,
#games-wrapper .buy_tk_btn a {
    background: var(--cv-pink);
    color: var(--white);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 6.9rem 2.5rem 3.2rem;
}

#top-wrapper .buy_tk_btn .allow,
#top-wrapper .top_ticket_buy_tk_btn .allow,
#games-wrapper .buy_tk_btn .allow {
    position: absolute;
    background: var(--white);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2.0rem;
    top: 2.15rem;
    right: 2.0rem;
}

#top-wrapper .buy_tk_btn .allow::before,
#top-wrapper .top_ticket_buy_tk_btn .allow::before,
#games-wrapper .buy_tk_btn .allow::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 12px;
    width: 6px;
    height: 6px;
    border-top: 2px solid var(--cv-pink);
    border-right: 2px solid var(--cv-pink);
}

#top-wrapper .buy_tk_btn .allow::after,
#top-wrapper .top_ticket_buy_tk_btn .allow::after,
#games-wrapper .buy_tk_btn .allow:after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: var(--cv-pink);
    transform: rotate(135deg);
}

/* =============================

    header.php

==============================*/
#header-wrapper.header {
    position: fixed;
    width: 100%;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.08);
    z-index: 20;
}

#header-wrapper .header_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 95%;
    margin: 0 auto;
}

#header-wrapper .header_logo {
    width: 14%;
    margin: 2.4rem 0;
}

#header-wrapper .header_logo a {
    display: block;
}

#header-wrapper nav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 85%;
}

#header-wrapper nav ul {
    display: flex;
    margin: 0;
    padding: 0;
}

#header-wrapper nav ul li a {
    color: var(--black);
    font-weight: bold;
    font-size: 1.4rem;
}

#header-wrapper nav .header_menu {
    display: flex;
    justify-content: center;
    align-items: center;
}

#header-wrapper nav .header_menu::after {
    content: '';
    border: solid 1px var(--black-a010);
    height: 1.6rem;
}

#header-wrapper nav .header_menu ul li {
    padding: 0 1.0rem;
    height: 2.0rem;
}

#header-wrapper nav .header_menu ul li a:hover {
    border-bottom: solid 1px var(--black);
}

#header-wrapper nav .header_sns {
    display: flex;
    justify-content: center;
    align-items: center;
}

#header-wrapper nav .header_sns ul li {
    padding: 0 0.8rem;
    height: 2.0rem;
}

#header-wrapper nav .header_sns img {
    object-fit: contain;
}

@media screen and (max-width: 768px) {
    #header-wrapper .header_logo {
        margin: 1.2rem 0;
    }
}

/* =============================

    page-top.php

==============================*/
/* background */
#top-wrapper {
    position: relative;
    overflow: hidden;
    background: var(--white);
    background-image: url(img/partners_bk.png);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}

#top-wrapper::before {
    content: '';
    background-image: url(img/top/top_logo_bg);
    background-repeat: no-repeat;
    background-size: 30%;
    position: fixed;
    top: 15%;
    left: -11.8rem;
    width: 100%;
    height: 100%;
    z-index: -10;
}

#top-wrapper .top_bg_blur {
    position: relative;
    z-index: 0;
}

#top-wrapper .top_bg_blur::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    backdrop-filter: blur(2.0rem);
}

/* btn */
#top-wrapper .buy_tk_btn.fixed_btn {
    position: fixed;
    right: 3.0rem;
    bottom: 1.0rem;
    z-index: 10;
}

#top-wrapper .buy_tk_btn.fixed_btn a {
    padding: 2.2rem 7.3rem 2.2rem 6.4rem;
}

#top-wrapper .buy_tk_btn:hover a,
#top-wrapper .top_ticket_buy_tk_btn:hover a {
    background: var(--black);
    color: var(--cv-pink);
}

#top-wrapper .buy_tk_btn.fixed_btn .allow::after {
    top: 14px;
}

/*------------------------------------
    mv
------------------------------------ */
#top-wrapper .mv_wrap {
    margin: 2.0rem auto 9.8rem;
}

/*------------------------------------
    top_sns
------------------------------------ */
#top-wrapper .top_sns ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

#top-wrapper .top_sns ul li {
    padding: 0 1.0rem;
    height: 2.5rem;
}

#top-wrapper .top_sns img {
    object-fit: contain;
}

#top-wrapper ul li a {
    color: var(--black);
}

/*------------------------------------
    top_players
------------------------------------ */
#top-wrapper .players_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#top-wrapper .players_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 0 7.8rem;
}

#top-wrapper .players_wrap::after {
    display: block;
    content: "";
    width: calc(95%/6);
}

#top-wrapper .players_contain {
    width: calc(95%/6);
    position: relative;
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    color: var(--white);
    margin-bottom: 3.0rem;
}

#top-wrapper .players_contain_number {
    position: absolute;
    top: 2px;
    left: 2px;
    z-index: 0;
    font-size: 5rem;
    font-weight: bold;
    color: var(--white);
    opacity: 0.6;
    line-height: 1;
    letter-spacing: -0.5rem;
}


#top-wrapper .players_contain a {
    color: var(--white);
}

#top-wrapper .players_contain_pic {
    overflow: hidden;
    width: 100%;
    height: 18rem;
    background: #c1c1c1;
}

#top-wrapper .players_contain_pic img {
    transform: scale(1);
    transition: .3s ease-in-out;
    object-position: top;
}

#top-wrapper .players_contain:hover .players_contain_pic img {
    transform: scale(1.05);
    overflow: hidden;
}

#top-wrapper .players_box {
    position: absolute;
    left: 0;
    bottom: 0;
    background: var(--black);
    opacity: 0.85;
    width: 100%;
    height: 45%;
    clip-path: polygon(0 0, 100% 20%, 100% 100%, 0 100%);
}

#top-wrapper .players_box_inner {
    position: absolute;
    bottom: 0;
    padding: 1rem 1.2rem;
    width: 100%;
}

#top-wrapper .players_box_position {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 0.7rem;
}

#top-wrapper .players_box_name_ja {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.2rem;
}

#top-wrapper .players_box_name_en {
    font-size: 1rem;
}

#top-wrapper .players_box_attention {
    font-size: 1.2rem;
}

#top-wrapper .empty_box {
    width: calc(95%/6);
}

/*------------------------------------
    top_schedule
------------------------------------ */
#top-wrapper .top_schedule {
    background: var(--yellow);
}

#top-wrapper .top_schedule_wrap {
    padding: 8.0rem 0;
}

#top-wrapper .top_schedule_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a040);
    position: relative;
}

#top-wrapper .top_schedule_ttl::after {
    content: "試合日程";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#top-wrapper .top_schedule_img_pc,
#top-wrapper .top_schedule_img_sp {
    max-width: 890px;
    margin: 0 auto;
    padding: 3.0rem 0;
}

/*------------------------------------
    top_ticket
------------------------------------ */

#top-wrapper .top_ticket {
    max-width: 1040px;
    width: 80%;
    margin: 0 auto;
    padding: 12.0rem 0;
}

#top-wrapper .top_ticket_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

#top-wrapper .top_ticket_contain {
    width: calc(95%/2);
}

#top-wrapper .top_ticket_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

#top-wrapper .top_ticket_ttl::after {
    content: "チケット購入";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#top-wrapper .top_ticket_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
    margin: 0 auto 3.4rem;
    width: fit-content;
    text-align: center;
}

#top-wrapper .top_ticket_buy_tk_btn {
    margin: 4.8rem auto 0;
}

/*------------------------------------
    top_games
------------------------------------ */
#top-wrapper .top_games {
    position: relative;
}

#top-wrapper .top_games_inner {
    width: 90%;
    margin: 0 auto;
    background: url(img/top/top_games_bg.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding-bottom: 11.0rem;
}

#top-wrapper .top_games_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    padding-top: 6.0rem;
}

#top-wrapper .top_games_ttl::after {
    content: "試合日程／試合結果";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    letter-spacing: 0.5rem;
    width: 100%;
}

#top-wrapper .swiper.games_swiper {
    max-width: 1040px;
    margin-top: 5.6rem;
}

#top-wrapper .top_games_wrap {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
}

#top-wrapper .top_games_hr {
    display: flex;
    justify-content: left;
    align-items: center;
    background: var(--black);
    color: var(--white);
    padding: 2.4rem;
    font-weight: bold;
    position: relative;
}

#top-wrapper .top_games_hr .top_games_venue_pic {
    width: 5.4rem;
    height: 4.6rem;
    background: var(--white);
    margin-right: 1.6rem;
}

#top-wrapper .top_games_hr .top_games_venue_pic img {
    object-fit: contain;
}

#top-wrapper .top_games_hr .top_games_date_wrap {
    display: flex;
    flex-direction: column;
}

#top-wrapper .top_games_hr .top_games_date {
    font-size: 2.0rem;
    font-weight: bold;
}

#top-wrapper .top_games_hr .top_games_date_w {
    font-size: 1.8rem;
    font-weight: bold;
}

#top-wrapper .top_games_hr .top_games_time {
    font-size: 1.8rem;
}

#top-wrapper .top_games_hr .top_games_venue_name {
    font-size: 1.4rem;
    font-weight: normal;
    width: 21.2rem;
}

#top-wrapper .top_games_detail {
    background: var(--white);
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    padding: 2.4rem 2.9rem 0 2.9rem;
}

#top-wrapper .top_games_detail .top_games_summary {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
}

#top-wrapper .top_games_detail .top_games_team_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

#top-wrapper .top_games_detail .top_ys_team_logo {
    width: 7.0rem;
    height: 7.0rem;
    margin-right: 1.3rem;
}

#top-wrapper .top_games_detail .top_games_date {
    text-align: center;
    border: solid 1px rgb(26 29 17 / 0.2);
    margin: 1.7rem 0 1.3rem;
    padding: 0.9rem 2rem;
}

#top-wrapper .top_games_detail .top_games_time {
    font-size: 2.4rem;
    font-weight: bold;
    display: block;
    line-height: 1;
}

#top-wrapper .top_games_detail .top_games_vs_logo {
    width: 7.0rem;
    height: 7.0rem;
    margin-left: 1.3rem;
}

#top-wrapper .top_games_detail .top_games_vs_name {
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    text-align: center;
    border-bottom: solid 1px rgb(26 29 17 / 0.2);
    padding-bottom: 2.2rem;
}

#top-wrapper .top_games_detail .top_games_team_score {
    margin: 2.2rem 0.7rem 1.7rem;
    padding: 1.2rem 2rem;
    background: var(--yellow);
    font-size: 2.4rem;
    font-weight: bold;
}

#top-wrapper .top_games_posts_btn_wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    background: var(--white);
    padding: 1.6rem 2.9rem;
}

#top-wrapper .top_games_posts_btn_wrap a {
    color: var(--black);
}

#top-wrapper .top_games_btn_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

#top-wrapper .top_games_buy_tk_btn {
    width: 6.5rem;
    margin-right: 2.0rem;
}

#top-wrapper .top_games_view_more_btn {
    width: 9.4rem;
}

#top-wrapper .top_games_view_report_btn {
    width: 10.4rem;
}

#top-wrapper .top_games_buy_tk_btn .allow,
#top-wrapper .top_games_view_more_btn .allow,
#top-wrapper .top_games_view_report_btn .allow {
    width: 2.0rem;
    height: 2.0rem;
    top: 0.4rem;
    right: 0;
}

#top-wrapper .top_games_buy_tk_btn .allow::before,
#top-wrapper .top_games_view_more_btn .allow::before,
#top-wrapper .top_games_view_report_btn .allow::before {
    top: 7px;
    left: 8px;
}

#top-wrapper .top_games_buy_tk_btn .allow::after,
#top-wrapper .top_games_view_more_btn .allow::after,
#top-wrapper .top_games_view_report_btn .allow::after {
    top: 9px;
    left: 6px
}

#top-wrapper .top_games_buy_tk_btn:hover a,
#top-wrapper .top_games_view_more_btn:hover a,
#top-wrapper .top_games_view_report_btn:hover a {
    text-decoration: underline;
    color: var(--black-a060);
}

#top-wrapper .top_games .view_more_btn {
    margin: 5.6rem 0.8rem 0 auto;
}

#top-wrapper .top_games .view_more_btn a {
    padding: 2.5rem 9.3rem 2.5rem 3.2rem;
}

#top-wrapper .top_games .buy_tk_btn {
    margin: 5.6rem auto 0 0.8rem;
}

#top-wrapper .top_games .buy_tk_btn a {
    padding: 2.5rem 10.1rem 2.5rem 7.2rem;
}

#top-wrapper .top_games .buy_tk_btn::before {
    left: 3.2rem;
}

/*------------------------------------
    top_games
------------------------------------ */
#top-wrapper .top_games {
    position: relative;
}

#top-wrapper .top_games_inner {
    width: 90%;
    margin: 0 auto;
    background: url(img/top/top_games_bg.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding-bottom: 11.0rem;
}

#top-wrapper .top_games_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    padding-top: 6.0rem;
}

#top-wrapper .top_games_ttl::after {
    content: "試合日程／試合結果";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    letter-spacing: 0.5rem;
    width: 100%;
}

#top-wrapper .swiper.games_swiper {
    max-width: 1040px;
    margin-top: 5.6rem;
}

#top-wrapper .top_games_wrap {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
}

#top-wrapper .top_games_hr {
    display: flex;
    justify-content: left;
    align-items: center;
    background: var(--black);
    color: var(--white);
    padding: 2.4rem;
    font-weight: bold;
    position: relative;
}

#top-wrapper .top_games_hr .top_games_venue_pic {
    width: 5.4rem;
    height: 4.6rem;
    background: var(--white);
    margin-right: 1.6rem;
}

#top-wrapper .top_games_hr .top_games_venue_pic img {
    object-fit: contain;
}

#top-wrapper .top_games_hr .top_games_date_wrap {
    display: flex;
    flex-direction: column;
}

#top-wrapper .top_games_hr .top_games_date {
    font-size: 2.0rem;
    font-weight: bold;
}

#top-wrapper .top_games_hr .top_games_date_w {
    font-size: 1.8rem;
    font-weight: bold;
}

#top-wrapper .top_games_hr .top_games_time {
    font-size: 1.8rem;
}

#top-wrapper .top_games_hr .top_games_venue_name {
    font-size: 1.4rem;
    font-weight: normal;
    width: 21.2rem;
}

#top-wrapper .top_games_detail {
    background: var(--white);
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    padding: 2.4rem 2.9rem 0 2.9rem;
}

#top-wrapper .top_games_detail .top_games_summary {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
}

#top-wrapper .top_games_detail .top_games_team_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

#top-wrapper .top_games_detail .top_ys_team_logo {
    width: 7.0rem;
    height: 7.0rem;
    margin-right: 1.3rem;
}

#top-wrapper .top_games_detail .top_games_date {
    text-align: center;
    border: solid 1px rgb(26 29 17 / 0.2);
    margin: 1.7rem 0 1.3rem;
    padding: 0.9rem 2rem;
}

#top-wrapper .top_games_detail .top_games_time {
    font-size: 2.4rem;
    font-weight: bold;
    display: block;
    line-height: 1;
}

#top-wrapper .top_games_detail .top_games_vs_logo {
    width: 7.0rem;
    height: 7.0rem;
    margin-left: 1.3rem;
}

#top-wrapper .top_games_detail .top_games_vs_name {
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    text-align: center;
    border-bottom: solid 1px rgb(26 29 17 / 0.2);
    padding-bottom: 2.2rem;
}

#top-wrapper .top_games_detail .top_games_team_score {
    margin: 2.2rem 0.7rem 1.7rem;
    padding: 1.2rem 2rem;
    background: var(--yellow);
    font-size: 2.4rem;
    font-weight: bold;
}

#top-wrapper .top_games_posts_btn_wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    background: var(--white);
    padding: 1.6rem 2.9rem;
}

#top-wrapper .top_games_posts_btn_wrap a {
    color: var(--black);
}

#top-wrapper .top_games_btn_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

#top-wrapper .top_games_buy_tk_btn {
    width: 6.5rem;
    margin-right: 2.0rem;
}

#top-wrapper .top_games_view_more_btn {
    width: 9.4rem;
}

#top-wrapper .top_games_view_report_btn {
    width: 10.4rem;
}

#top-wrapper .top_games_buy_tk_btn .allow,
#top-wrapper .top_games_view_more_btn .allow,
#top-wrapper .top_games_view_report_btn .allow {
    width: 2.0rem;
    height: 2.0rem;
    top: 0.4rem;
    right: 0;
}

#top-wrapper .top_games_buy_tk_btn .allow::before,
#top-wrapper .top_games_view_more_btn .allow::before,
#top-wrapper .top_games_view_report_btn .allow::before {
    top: 7px;
    left: 8px;
}

#top-wrapper .top_games_buy_tk_btn .allow::after,
#top-wrapper .top_games_view_more_btn .allow::after,
#top-wrapper .top_games_view_report_btn .allow::after {
    top: 9px;
    left: 6px
}

#top-wrapper .top_games_buy_tk_btn:hover a,
#top-wrapper .top_games_view_more_btn:hover a,
#top-wrapper .top_games_view_report_btn:hover a {
    text-decoration: underline;
    color: var(--black-a060);
}

#top-wrapper .top_games .view_more_btn {
    margin: 5.6rem 0.8rem 0 auto;
}

#top-wrapper .top_games .view_more_btn a {
    padding: 2.5rem 9.3rem 2.5rem 3.2rem;
}

#top-wrapper .top_games .buy_tk_btn {
    margin: 5.6rem auto 0 0.8rem;
}

#top-wrapper .top_games .buy_tk_btn a {
    padding: 2.5rem 10.1rem 2.5rem 7.2rem;
}

#top-wrapper .top_games .buy_tk_btn::before {
    left: 3.2rem;
}


/*------------------------------------
    top_links
------------------------------------ */
#top-wrapper .top_links {
    position: relative;
    padding: 12.0rem 0;
}

/* #top-wrapper .top_links::after {
    content: '';
    background: var(--black);
    opacity: 0.85;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 20.0rem;
    z-index: -2;
} */

#top-wrapper .top_links_inner {
    max-width: 1040px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

#top-wrapper .top_links_wrap {
    margin-right: 4.0rem;
    width: 50%;
    position: relative;
}

#top-wrapper .top_links_wrap:last-of-type {
    margin-right: 0;
}

#top-wrapper .top_links_wrap:hover {
    filter: brightness(0.95);
}

#top-wrapper .top_links_pic {
    width: 100%;
    height: 30.0rem;
}

#top-wrapper .top_links_txt_wrap {
    background: var(--white);
    padding: 4.0rem 3.2rem;
    border-top: solid 1px var(--black-a010);
}

#top-wrapper .top_links_txt {
    font-size: 3.2rem;
    font-weight: bold;
    color: var(--black);
    line-height: 3.2rem;
}

#top-wrapper .top_links_txt span {
    font-size: 1.8rem;
}

/*------------------------------------
    top_topics
------------------------------------ 
#top-wrapper .top_topics {
   position: relative;
   z-index: 0;
   padding: 12.0rem 0;
}

#top-wrapper .top_topics::before {
    content: '';
    background: var(--black);
    opacity: 0.85;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
}

#top-wrapper .top_topics_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#top-wrapper .top_topics_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: rgb(255 255 255 / 0.12);
    position: relative;
}

#top-wrapper .top_topics_ttl::after {
    content: "トピックス";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--white);
    letter-spacing: 0.5rem;
    width: 100%;
}

#top-wrapper .top_topics_wrap {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

#top-wrapper .top_topics_wrap a {
    margin-right: 4.0rem;
    position: relative;
}

#top-wrapper .top_topics_wrap a:last-of-type {
    margin-right: 0;
}

#top-wrapper .top_topics_wrap a:hover::after {
    content: '';
    background: var(--black);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    opacity: 0.05;
    transition: 1.5s;
    -webkit-transition: 1.5s;
}

#top-wrapper .top_topics_txt_wrap {
    background: var(--white);
    padding: 2rem 2.4rem;
}

#top-wrapper .top_topics_date {
    color: var(--black-a040);
    font-size: 1.4rem;
}

#top-wrapper .top_topics_txt {
    color: var(--black);
    font-size: 1.6rem;
}

#top-wrapper .top_topics_pic {
    width: 100%;
    height: 18.0rem;
}  
*/

/*------------------------------------
    top_fc
------------------------------------ */
#top-wrapper .top_fc {
    position: relative;
    background: var(--yellow);
}

#top-wrapper .top_fc_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: absolute;
    top: 7.2rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

#top-wrapper .top_fc_ttl::after {
    content: "ファンクラブ";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}


#top-wrapper .top_fc-ab {
    padding: 25rem 0 10rem;
}

#top-wrapper .top_fc-mo {
    padding: 5rem 30% 10rem;
}

#top-wrapper .top_fc_border {
    border: solid 3px var(--white);
    width: 1040px;
    margin: 0 auto;
}

#top-wrapper .top_fc_cp {
    text-align: center;
    font-size: 5.2rem;
    font-weight: bold;
}

#top-wrapper .top_fc_cp::before {
    content: '“';
    color: var(--white);
    font-size: 5.2rem;
    padding-right: 2.4rem;
}

#top-wrapper .top_fc_cp::after {
    content: '”';
    color: var(--white);
    font-size: 5.2rem;
    padding-left: 2.2rem;
}

#top-wrapper .top_fc_cp span {
    color: var(--white);
    font-size: 5.2rem;
}

#top-wrapper .top_fc_cp_txt {
    text-align: center;
}

#top-wrapper .top_fc_cp_txt,
#top-wrapper .top_fc_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
    margin: 3.1rem auto 3.4rem;
    width: fit-content;
}

#top-wrapper .top_fc-ab_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    width: 80%;
    max-width: 1040px;
}

#top-wrapper .top_fc-ab_pic {
    width: calc(95% / 2);
    filter: drop-shadow(10px 10px 20px rgb(0, 0, 0, 0.1));
}

#top-wrapper .top_fc_privilege_ttl {
    background: var(--black);
    color: var(--white);
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 1.7rem;
}

#top-wrapper .top_fc_privilege_txt {
    background: var(--white);
    width: 100%;
    height: 22.0rem;
    font-weight: bold;
    padding: 3.0rem;
}

#top-wrapper .top_fc .view_more_btn {
    margin: 4.8rem auto 0;
}

#top-wrapper .top_fc .view_more_btn a {
    padding-right: 11.9rem;
}

#top-wrapper .top_fc_mo_pic {
    width: 15%;
    margin: 0 auto;
}

#top-wrapper .top_fc_mo {
    font-size: 4.0rem;
    font-weight: bold;
    text-align: center;
    margin: 2.0rem auto 3.6rem;
}

#top-wrapper .top_fc_mo_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
}

#top-wrapper .top_fc_entry_input {
    width: 100%;
    padding: 2.8rem 9.0rem 2.8rem 2.4rem;
    font-size: 1.6rem;
    border: 0;
    box-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.12) inset;
}

#top-wrapper .top_fc_entry_input:focus-visible {
    outline: none;
}

#top-wrapper .top_fc-mo .view_more_btn {
    margin: 4.8rem auto 0;
}

#top-wrapper .top_fc-mo .swpm-password-input {
    position: relative;
    margin-top: 6.5rem;
}

#top-wrapper .top_fc-mo .swpm-password-input span {
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
}

#top-wrapper .top_fc-mo .swpm-password-input span img {
    object-fit: contain;
}

.swpm-username-input,
.swpm-password-input {
    margin: 0;
}

.swpm-username-input {
    height: 0;
}

#top-wrapper .top_fc-mo .view_more_btn input {
    border: 0;
    cursor: pointer;
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 18.7rem 2.5rem 3.2rem;
    font-size: 1.4rem;
    font-weight: bold;
}

#top-wrapper .top_fc-mo .view_more_btn .allow {
    top: 5.0rem;
}

#top-wrapper .top_fc-mo .view_more_btn.mo_link .allow {
    top: 2.15rem;
}

#top-wrapper .swpm-logged-logout-link {
    text-align: center;
    margin-top: 4.8rem;
}

#top-wrapper .swpm-logged-logout-link a {
    font-weight: bold;
    color: var(--black);
}

/*old top_fc
#top-wrapper .top_fc {
    position: relative;
}

#top-wrapper .top_fc_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: absolute;
    top: 7.2rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

#top-wrapper .top_fc_ttl::after {
    content: "私たちにエールを";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#top-wrapper .top_fc_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: var(--white);
}

#top-wrapper .top_fc_inner {
    width: 80%;
    margin: 0 auto;
}

#top-wrapper .top_fc_left {
    background: var(--yellow);
    width: 50%;
    padding: 34.6rem 0;
}

#top-wrapper .top_fc_right {
    width: 50%;
    padding: 28.6rem 0 10rem;
}

#top-wrapper .top_fc_cp {
    text-align: center;
    font-size: 5.2rem;
    font-weight: bold;
}

#top-wrapper .top_fc_cp::before {
    content: '“';
    color: var(--white);
    font-size: 5.2rem;
    padding-right: 2.4rem;
}

#top-wrapper .top_fc_cp::after {
    content: '”';
    color: var(--white);
    font-size: 5.2rem;
    padding-left: 2.2rem;
}

#top-wrapper .top_fc_cp span {
    color: var(--white);
    font-size: 5.2rem;
}

#top-wrapper .top_fc_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
    margin: 3.1rem auto 3.4rem;
}

#top-wrapper .top_fc_privilege_ttl {
    background: var(--black);
    color: var(--white);
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 1.7rem;
}

#top-wrapper .top_fc_privilege_txt {
    background: var(--white);
    width: 100%;
    height: 22.0rem;
    font-weight: bold;
    padding: 3.0rem;
}

#top-wrapper .top_fc .view_more_btn {
    margin: 4.8rem 0 0 0;
}

#top-wrapper .top_fc .view_more_btn a {
    padding-right: 11.9rem;
}

#top-wrapper .top_fc_right .top_fc_inner {
    background: var(--yellow);
    padding: 4.0rem 4.0rem 7.0rem;
}

#top-wrapper .top_fc_mo_pic {
    width: 15%;
    margin: 0 auto;
}

#top-wrapper .top_fc_mo {
    font-size: 4.0rem;
    font-weight: bold;
    text-align: center;
    margin: 2.0rem auto 3.6rem;
}

#top-wrapper .top_fc_mo_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
}

#top-wrapper .top_fc_entry_input {
    width: 100%;
    padding: 2.8rem 9.0rem 2.8rem 2.4rem;
    font-size: 1.6rem;
    border: 0;
    box-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.12) inset;
}

#top-wrapper .top_fc_entry_input:focus-visible {
    outline: none;
}

#top-wrapper .top_fc_right .view_more_btn {
    margin: 4.8rem auto 0;
}

#top-wrapper .top_fc_right .swpm-password-input {
    position: relative;
    margin-top: 6.5rem;
}

#top-wrapper .top_fc_right .swpm-password-input span {
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
}

#top-wrapper .top_fc_right .swpm-password-input span img {
    object-fit: contain;
}

.swpm-username-input,
.swpm-password-input {
    margin: 0;
}

.swpm-username-input {
    height: 0;
}

#top-wrapper .top_fc_right .view_more_btn input {
    border: 0;
    cursor: pointer;
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 18.7rem 2.5rem 3.2rem;
    font-size: 1.4rem;
    font-weight: bold;
}

#top-wrapper .top_fc_right .view_more_btn .allow {
    top: 5.0rem;
}

#top-wrapper .top_fc_right .view_more_btn.mo_link .allow {
    top: 2.15rem;
}

#top-wrapper .swpm-logged-logout-link {
    text-align: center;
    margin-top: 4.8rem;
}

#top-wrapper .swpm-logged-logout-link a {
    font-weight: bold;
    color: var(--black);
}*/

/*------------------------------------
    top_goods
------------------------------------ */
#top-wrapper .top_goods {
    background: var(--black-a005);
    padding: 12.0rem 0;
}

#top-wrapper .top_goods_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#top-wrapper .top_goods_ttl {
    font-size: 5.2rem;
    text-align: center;
}

#top-wrapper .top_goods_txt {
    text-align: center;
    margin: 2.4rem auto 5.8rem;
}

#top-wrapper .top_goods_wrap {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

#top-wrapper .top_goods_contain {
    width: calc((100% - 6.0rem) / 4);
    margin-right: 2.0rem;
    box-shadow: 0.8rem 0.8rem 1.6rem 0 rgba(0, 0, 0, 0.1);
}

#top-wrapper .top_goods_contain:last-of-type {
    margin-right: 0;
}

#top-wrapper .top_goods_contain a {
    color: var(--black);
}

#top-wrapper .top_goods_detail {
    background: var(--white);
    padding: 2.4rem;
}

#top-wrapper .top_goods_detail_price {
    font-size: 2.0rem;
    font-weight: bold;
}

#top-wrapper .top_goods_detail_price span {
    font-size: 1.2rem;
}

#top-wrapper .top_goods .view_more_btn .allow::before {
    top: 10px;
    transform: rotate(0deg);
}

#top-wrapper .top_goods .view_more_btn .allow::after {
    transform: rotate(135deg);
}

/*------------------------------------
    top_news
------------------------------------ */
#top-wrapper .top_news {
    padding: 6.0rem 0;
}

#top-wrapper .top_news_wrap {
    background-color: var(--white);
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 0 50px 50px;
}

#top-wrapper .top_news_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#top-wrapper .top_news_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    margin-bottom: 2.6rem;
}

#top-wrapper .top_news_ttl::after {
    content: "ニュース";
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#top-wrapper .top_news_txt_wrap {
    display: inline-block;
    width: 100%;
    padding: 1rem 0;
    border-bottom: solid 1px var(--yellow);
}

#top-wrapper .top_news_txt_wrap:last-of-type {
    border-bottom: 0;
}

#top-wrapper .top_news_txt_wrap:hover p {
    opacity: 0.5;
}


#top-wrapper .top_news_post_date {
    color: var(--black-a040);
    font-size: 1.4rem;
}

#top-wrapper .top_news_post_ttl {
    color: var(--black);
}

#top-wrapper .view_more_btn {
    text-align: center;
}

/*------------------------------------
    top_ys_girls
------------------------------------ */
#top-wrapper .top_ys_girls {
    background: #00000080;
    padding: 12rem 0;
    position: relative;
}

/* #top-wrapper .top_ys_girls::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    border-left: 100vw solid transparent;
    border-top: 10.0rem solid var(--black-a005);
    width: 0;
    height: 0;
    z-index: 1;
} */

#top-wrapper .top_ys_girls_inner {
    max-width: 1040px;
    margin: 4% auto 0;
}

#top-wrapper .top_ys_girls_pic {
    width: 60%;
    margin: 0 auto;
    position: relative;
}

#top-wrapper .top_ys_girls_ttl {
    font-size: 3.2rem;
    text-align: center;
    font-weight: bold;
    margin: 2.6rem auto 0;
    color: var(--white);
}

#top-wrapper .top_ys_girls .view_more_btn {
    margin: 2.6rem auto 0;
}

#top-wrapper .top_ys_girls .view_more_btn .allow::before {
    top: 10px;
    transform: rotate(0deg);
}

#top-wrapper .top_ys_girls .view_more_btn .allow::after {
    transform: rotate(135deg);
}

/*------------------------------------
    top_partners
------------------------------------ */
#top-wrapper .top_partners {
    background: var(--yellow);
    padding: 6.0rem 0;
}

#top-wrapper .top_partners_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#top-wrapper .top_partners_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    margin-bottom: 2.6rem;
}

#top-wrapper .top_partners_ttl::after {
    content: "パートナー";
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#top-wrapper .top_partners .partners_flex {
    width: 100%;
    margin: 3.8rem 0;
    text-align: center;
}

#top-wrapper .top_partners .partners_flex p {
    font-weight: bold;
    font-size: 1.4rem;
}

#top-wrapper .top_partners .partners_flex_center {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
}

#top-wrapper .top_partners .partners_flex_center.flex_start {
    justify-content: flex-start;
}

#top-wrapper .top_partners .partners_flex_center.flex_between {
    justify-content: space-between;
}

#top-wrapper .top_partners .partners_flex_center .partners_flex_cs {
    font-size: 1.8rem;
    font-weight: bold;
}

#top-wrapper .top_partners .top_partners_list .partners_flex_duo_contain {
    height: 120px;
}

#top-wrapper .top_partners .partners_flex_duo_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: calc(94% / 3);
    background: var(--white);
    height: 100px;
    padding: 1rem;
    transition: 0.5s;
    margin: 0 auto;
    margin-bottom: 2.8rem;
    position: relative;
}

#top-wrapper .top_partners .partners_flex_center.flex_between .partners_flex_duo_contain:last-child {
    margin: 0 0 2.8rem 10px;
}

#top-wrapper .top_partners .partners_flex_duo_contain img {
    object-fit: contain;
}

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

    #top-wrapper {
        background-image: unset;
        position: relative;
    }

    #top-wrapper::after {
        display: none;
        /*
        content: '';
        display: block;
        background-image: url(img/partners_bk_sp.png);
        background-repeat: no-repeat;
        background-position: top 200px right;
        background-size: cover;
        position: fixed;
        top: 0%;
        right: 0;
        width: 100%;
        height: 100vh;
        z-index: -1;*/
    }


    #top-wrapper .buy_tk_btn.fixed_btn {
        bottom: 0;
    }

    /*------------------------------------
        mv
    ------------------------------------ */
    #top-wrapper .mv_wrap {
        margin: 0 0 3rem;
    }

    /*------------------------------------
        top_sns
    ------------------------------------ */
    #top-wrapper .top_sns {
        margin-left: 0;
        position: relative;
        padding: 2.4rem 0 4.0rem;
        width: 100%;
    }

    /*
    #top-wrapper .top_sns::before {
        content: 'Follow us';
        position: absolute;
        top: -3.0rem;
        font-size: 2.0rem;
        font-weight: bold;
        color: rgb(255 255 255 / 0.3);
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
*/
    #top-wrapper .top_sns ul {
        justify-content: center;
        width: 80%;
        margin: 0 auto;
    }

    #top-wrapper .top_sns ul li {
        height: 2.8rem;
        width: calc(100% / 5);
    }

    /*------------------------------------
        top_players
    ------------------------------------ */
    section.top_players {
        padding-bottom: calc(10vw + 10px);
        position: relative;
        overflow: hidden;
        background-color: var(--black-a085);
        z-index: 1;
    }

    section.top_players::after {
        content: '';
        position: absolute;
        top: 0;
        width: 110%;
        left: 0px;
        border-top: 80vw solid var(--white);
        border-right: 130vw solid transparent;
        z-index: -1;
    }

    #top-wrapper .players_inner {
        width: 90%;
    }

    #top-wrapper .players_ttl {
        font-size: 5.6rem;
    }

    #top-wrapper .players_wrap {
        padding: 2.4rem 0 0;
        width: 90%;
    }

    #top-wrapper .players_contain {
        width: calc((100% - 0.9rem)/ 2);
        margin-bottom: 2.4rem;
    }

    #top-wrapper .players_contain::before {
        font-size: 5.0rem;
    }

    #top-wrapper .players_contain:nth-child(3n+2) {
        margin: 0;
    }

    #top-wrapper .players_contain:nth-child(odd) {
        margin-right: 0.9rem;
    }

    #top-wrapper .players_contain_pic {
        height: 24.0rem;
    }

    #top-wrapper .players_box {
        padding: 0;
        height: 45%;
    }

    #top-wrapper .players_box_inner {
        padding: 1.2rem;
    }

    #top-wrapper .players_box_position {
        font-size: 1.1rem;
    }

    #top-wrapper .players_box_name_ja {
        font-size: 2.2rem;
    }

    #top-wrapper .players_box_name_en {
        font-size: 1.2rem;
    }

    #top-wrapper .players_box_attention {
        display: none;
    }

    #top-wrapper .players_tab_group {
        justify-content: center;
    }

    #top-wrapper .players_tab a {
        color: var(--white);
        font-size: 1.6rem;
        width: 16.1rem;
        padding: 1.7rem 0;
    }

    /*------------------------------------
        showmore(さらに表示)
    ------------------------------------ */
    #top-wrapper .show-more_btn {
        border: 0;
        cursor: pointer;
        background: var(--white);
        color: var(--black);
        font-weight: bold;
        box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
        padding: 2.5rem 18.7rem 2.5rem 3.2rem;
        font-size: 1.4rem;
        font-weight: bold;
        position: relative;
        margin: 4.0rem auto 0;
        width: fit-content;
        display: block;
    }

    #top-wrapper .show-more_btn::before {
        content: "さらに表示"
    }

    #top-wrapper .show-more_btn a {
        background: var(--white);
        color: var(--black);
        font-weight: bold;
        box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
        padding: 2.5rem 11.9rem 2.5rem 3.2rem;
    }

    #top-wrapper .show-more_btn:hover {
        background: var(--black-a010);
    }

    #top-wrapper .show-more_btn .allow {
        position: absolute;
        background: var(--black-a005);
        border-radius: 50%;
        width: 2.8rem;
        height: 2.8rem;
        margin-left: 2.0rem;
        top: 2.15rem;
        right: 2.0rem;
    }

    #top-wrapper .show-more_btn .allow:before {
        content: "";
        position: absolute;
        top: 12px;
        left: 12px;
        width: 6px;
        height: 6px;
        border-top: 2px solid var(--link-blue);
        border-right: 2px solid var(--link-blue);
        transform: rotate(135deg);
    }

    #top-wrapper .show-more_btn .allow:after {
        content: "";
        position: absolute;
        top: 9px;
        left: 49%;
        width: 2px;
        height: 9px;
        background: var(--link-blue);
    }


    #top-wrapper .show-more_item {
        position: relative;
        overflow: hidden;
        height: 105.6rem;
        /*隠した状態の高さ*/
    }

    #top-wrapper .show-more_item::before {
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 40px;
        content: "";
    }

    #top-wrapper .show-more_trigger {
        display: none;
        /*チェックボックスは常に非表示*/
    }

    #top-wrapper .show-more_trigger:checked~.show-more_btn::before {
        content: "閉じる"
            /*チェックされていたら、文言を変更する*/
    }

    #top-wrapper .show-more_trigger:checked~.show-more_btn .allow::before {
        content: "";
        position: absolute;
        top: 8px;
        left: 11.5px;
        width: 6px;
        height: 6px;
        border-top: 2px solid var(--link-blue);
        border-right: 2px solid var(--link-blue);
        transform: rotate(-45deg);
    }

    #top-wrapper .show-more_trigger:checked~.show-more_item {
        height: auto;
        /*チェックされていたら、高さを戻す*/
    }

    #top-wrapper .show-more_trigger:checked~.show-more_item::before {
        display: none;
        /*チェックされていたら、show-more_itemのbeforeを非表示にする*/
    }

    /*------------------------------------
        top_schedule
    ------------------------------------ */
    #top-wrapper .top_schedule_ttl {
        font-size: 7.2rem;
    }

    #top-wrapper .top_schedule_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_schedule_img_sp {
        width: 90%;
    }

    /*------------------------------------
        top_ticket
    ------------------------------------ */
    #top-wrapper .top_ticket {
        padding: 8.0rem 0;
    }

    #top-wrapper .top_ticket_wrap {
        flex-direction: column;
    }

    #top-wrapper .top_ticket_contain {
        width: 80%;
        margin: 0 auto;
    }

    #top-wrapper .top_ticket_ttl {
        font-size: 7.2rem;
        top: 0;
    }

    #top-wrapper .top_ticket_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_ticket_txt {
        margin: 2.4rem auto;
    }

    #top-wrapper .top_ticket_buy_tk_btn {
        margin: 4.0rem auto 3.2rem;
        width: max-content;
    }

    /*------------------------------------
        top_games
    ------------------------------------ */
    #top-wrapper .top_games_inner {
        width: 100%;
        background-size: 100% 100%;
    }

    #top-wrapper .top_games_ttl {
        font-size: 7.2rem;
    }

    #top-wrapper .top_games_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_games_hr {
        padding: 2.0rem;
    }

    #top-wrapper .top_games_hr .top_games_venue_pic {
        width: 5.0rem;
        border-radius: 0.8rem;
    }

    #top-wrapper .top_games_hr .top_games_venue_name {
        width: 18.9rem;
        font-size: 1.3rem;
        letter-spacing: -0.1rem;
    }

    #top-wrapper .top_games_detail {
        padding: 2.4rem 2rem 0 2rem;
    }

    #top-wrapper .top_games_detail .top_games_date {
        padding: 0.9rem 1.6rem;
    }

    #top-wrapper .top_games_detail .top_games_team_score {
        padding: 0.9rem 1.4rem;
        margin: 2.2rem 0 1.7rem;
    }

    #top-wrapper .top_games_detail .top_games_vs_name {
        letter-spacing: -0.1rem;
    }

    #top-wrapper .top_games_btn_wrap {
        display: block;
    }

    #top-wrapper .top_games .view_more_btn {
        margin: 5.6rem auto 2.4rem;
    }

    #top-wrapper .top_games .view_more_btn a {
        font-size: 1.4rem;
    }

    #top-wrapper .top_games .buy_tk_btn {
        margin: 0 auto;
    }

    #top-wrapper .buy_tk_btn a {
        font-size: 1.4rem;
    }

    /*------------------------------------
        top_links
    ------------------------------------ */
    #top-wrapper .top_links {
        margin-top: 8.0rem;
        position: relative;
        z-index: 1;
    }

    #top-wrapper .top_links::after {
        background: none;
    }

    #top-wrapper .top_links_inner {
        display: block;
        width: 90%;
    }

    #top-wrapper .top_links_wrap {
        width: 100%;
        margin-bottom: 3.2rem;
    }

    #top-wrapper .top_links_wrap:last-of-type {
        margin-bottom: 0;
    }

    #top-wrapper .top_links_pic {
        height: 19.6rem;
    }

    #top-wrapper .top_links_txt_wrap {
        padding: 2.4rem;
    }

    #top-wrapper .top_links_txt {
        font-size: 2.8rem;
    }

    #top-wrapper .top_links_txt span {
        font-size: 1.5rem;
    }

    #top-wrapper .top_links_txt .allow {
        right: 0;
    }

    /*------------------------------------
        top_topics
    ------------------------------------ */
    #top-wrapper .top_topics {
        padding: 8.0rem 0 7.2rem;
    }

    #top-wrapper .top_topics::before {
        top: -45.0rem;
        background: var(--black);
        transform: skewY(-30deg);
        transform-origin: top right;
    }

    #top-wrapper .top_topics_inner {
        width: 100%;
    }

    #top-wrapper .top_topics_ttl {
        font-size: 7.2rem;
        margin-bottom: 4.8rem
    }

    #top-wrapper .top_topics_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_topics_wrap {
        display: block;
    }

    /*------------------------------------
        top_fc
    ------------------------------------ */

    #top-wrapper .top_fc-ab {
        padding-top: 20rem;
    }

    #top-wrapper .top_fc-ab_pic {
        width: 80%;
        margin: 0 auto;
    }

    #top-wrapper .top_fc_ttl {
        font-size: 7.2rem;
        top: 5.6rem;
    }

    #top-wrapper .top_fc_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_fc_about {
        width: 100%;
        padding: 20.2rem 0 6.4rem;
    }

    #top-wrapper .top_fc-ab_wrap {
        display: none;
    }

    #top-wrapper .top_fc_cp {
        font-size: 3.8rem;
    }

    #top-wrapper .top_fc_cp::before {
        font-size: 3.8rem;
        padding-right: 1.6rem;
    }

    #top-wrapper .top_fc_cp::after {
        font-size: 3.8rem;
        padding-left: 1.6rem;
    }

    #top-wrapper .top_fc_cp span {
        font-size: 3.8rem;
    }

    #top-wrapper .top_fc_cp_txt {
        text-align: center;
    }

    #top-wrapper .top_fc_cp_txt,
    #top-wrapper .top_fc_txt {
        font-size: 1.6rem;
        margin: 2.4rem auto;
        width: 80%;
    }

    #top-wrapper .top_fc_privilege_ttl {
        font-size: 1.6rem;
    }

    #top-wrapper .top_fc_privilege_txt {
        height: auto;
        padding: 2.0rem;
    }

    #top-wrapper .top_fc .view_more_btn {
        margin: 4.0rem auto 0;
        padding: 0;
    }

    #top-wrapper .top_fc_border {
        width: 80%;
    }

    #top-wrapper .top_fc-mo {
        width: 100%;
        padding: 4.2rem 2.0rem 4.8rem;
    }

    #top-wrapper .top_fc-mo .view_more_btn .allow {
        margin-left: 2.0rem;
        top: 2.15rem;
        right: 2.0rem;
    }

    #top-wrapper .top_fc_mo_pic {
        width: 30%;
    }

    #top-wrapper .top_fc_mo {
        font-size: 3.4rem;
        white-space: nowrap;
        margin: 2rem auto 3.2rem;
    }

    #top-wrapper .top_fc_mo_txt {
        font-size: 1.6rem;
        text-align: center;
    }

    #top-wrapper .top_fc_entry_input {
        padding: 2.8rem 7.0rem 2.8rem 2.4rem;
        border-radius: 0;
    }

    #top-wrapper .top_fc-mo .view_more_btn input {
        padding-right: 7rem;
        border-radius: 0;
    }

    /*old top_fc
        #top-wrapper .top_fc_ttl {
        font-size: 7.2rem;
        top: 5.6rem;
    }

    #top-wrapper .top_fc_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_fc_wrap {
        display: block;
    }

    #top-wrapper .top_fc_left {
        width: 100%;
        padding: 20.2rem 0 6.4rem;
    }

    #top-wrapper .top_fc_inner {
        width: 90%;
    }

    #top-wrapper .top_fc_cp {
        font-size: 3.8rem;
    }

    #top-wrapper .top_fc_cp::before {
        font-size: 3.8rem;
        padding-right: 1.6rem;
    }

    #top-wrapper .top_fc_cp::after {
        font-size: 3.8rem;
        padding-left: 1.6rem;
    }

    #top-wrapper .top_fc_cp span {
        font-size: 3.8rem;
    }

    #top-wrapper .top_fc_txt {
        font-size: 1.6rem;
        margin: 3.2rem auto 6.3rem;
    }

    #top-wrapper .top_fc_privilege_ttl {
        font-size: 1.6rem;
    }

    #top-wrapper .top_fc_privilege_txt {
        height: auto;
        padding: 2.0rem;
    }

    #top-wrapper .top_fc .view_more_btn {
        margin: 4.0rem auto 0;
        padding: 0;
    }

    #top-wrapper .top_fc_right .view_more_btn .allow {
        top: 2.5rem;
    }

    #top-wrapper .top_fc_right {
        width: 100%;
        padding: 4.0rem 0;
    }

    #top-wrapper .top_fc_right .top_fc_inner {
        padding: 4.2rem 2.0rem 4.8rem;
    }

    #top-wrapper .top_fc_mo_pic {
        width: 30%;
    }

    #top-wrapper .top_fc_mo {
        font-size: 3.4rem;
        white-space: nowrap;
        margin: 2rem auto 3.2rem;
    }

    #top-wrapper .top_fc_mo_txt {
        font-size: 1.6rem;
        text-align: center;
    }

    #top-wrapper .top_fc_entry_input {
        padding: 2.8rem 7.0rem 2.8rem 2.4rem;
    }
*/

    /*------------------------------------
        top_goods
    ------------------------------------ */
    #top-wrapper .top_goods {
        padding: 8.0rem 0;
    }

    #top-wrapper .top_goods_ttl {
        font-size: 4.4rem;
    }

    #top-wrapper .top_goods_wrap.view_pc {
        display: none;
    }

    #top-wrapper .top_goods_contain {
        width: 100%;
    }

    /*------------------------------------
        top_news
    ------------------------------------ */
    #top-wrapper .top_news_inner {
        width: 90%;
        margin: 0 auto;
    }

    #top-wrapper .top_news_ttl {
        font-size: 7.2rem;
    }

    #top-wrapper .top_news_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_news_wrap {
        padding: 0 20px 40px;
    }

    /*------------------------------------
        top_ys_girls
    ------------------------------------ */
    #top-wrapper .top_ys_girls {
        padding: 8.0rem 0;
        position: relative;
    }

    #top-wrapper .top_ys_girls::after {
        content: '';
        display: block;
        position: absolute;
        background-image: url(img/partners_bk_sp.png);
        background-repeat: no-repeat;
        background-position: top 200px right;
        background-size: cover;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 80vh;
        z-index: -1;
    }

    #top-wrapper .top_ys_girls_pic {
        width: 80%;
    }

    #top-wrapper .top_ys_girls_ttl {
        font-size: 2.8rem;
    }

    #top-wrapper .top_ys_girls::before {
        border-top: 5rem solid var(--black-a005);
    }

    /*------------------------------------
        top_partners
    ------------------------------------ */
    #top-wrapper .top_partners_inner {
        width: 90%;
        margin: 0 auto;
    }

    #top-wrapper .top_partners_ttl {
        font-size: 6.2rem;
    }

    #top-wrapper .top_partners_ttl::after {
        font-size: 2.0rem;
        letter-spacing: 0.25rem;
        bottom: 1.0rem;
    }

    #top-wrapper .top_partners .top_partners_list .partners_flex_duo_contain {
        height: 80px;
        width: 70%;
    }

    #top-wrapper .top_partners .partners_flex_duo_contain {
        width: calc(94% / 2);
        height: 60px;
        margin-bottom: 1.8rem;
    }

    #top-wrapper .top_partners .partners_flex_center.flex_between .partners_flex_duo_contain:last-child,
    #top-wrapper .top_partners .partners_flex_duo_contain:last-child {
        margin: 0 auto;
    }
}

/* =============================

    page-news.php

==============================*/
#news-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
}

#news-wrapper .news_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#news-wrapper .news_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#news-wrapper .news_ttl::after {
    content: '最新情報';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*------------------------------------
    news_flex
------------------------------------ */
#news-wrapper .news_flex {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
}

#news-wrapper .news_flex_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 32%;
    margin-bottom: 3.8rem;
    transition: 1.0s;
}

#news-wrapper .news_flex_contain:hover {
    background: var(--black-a010);
}

#news-wrapper .news_flex_contain:hover .content {
    color: var(--black-a060);
}

#news-wrapper .news_flex_contain a {}

#news-wrapper .thumbnail_area {
    height: 200px;
    width: 100%;
}

#news-wrapper .thumbnail_area .thumbnail_image {
    height: 100%;
}

#news-wrapper .thumbnail_area .thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}


#news-wrapper .thumbnail_area .thumbnail_image image {}

#news-wrapper .content_area {
    padding: 3rem;
    color: var(--black-a085);
}

#news-wrapper .content_area .date {
    font-size: 1rem;
    padding-bottom: 1rem;
    color: var(--black-a040);
}

#news-wrapper .content_area .ttl {
    font-size: 1.8rem;
    font-weight: bold;
}

#news-wrapper .content_area .content {
    font-size: 1.6rem;
    font-weight: bold;
    transition: 1.0s;
}

@media screen and (max-width: 768px) {
    #news-wrapper .news_ttl {
        font-size: 5.6rem;
    }

    #news-wrapper .news_flex_contain {
        box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
        width: 100%;
        margin-bottom: 3rem;
    }

}

/* =============================

    single-posts_news.php

==============================*/
#single_posts_news-wrapper {
    padding: 9rem 0 14rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
}

#single_posts_news {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

#single_posts_news .posts_news_inner {
    width: 80%;
    max-width: 1040px;
    background: var(--white);
    padding: 5rem 10rem;
}

#single_posts_news .posts_news_inner .posts_news_date {
    font-size: 1rem;
    padding-bottom: 2rem;
    color: var(--black-a040);
}

#single_posts_news .posts_news_inner .posts_news_ttl {
    color: var(--black);
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--black-a025);
}

/* #single_posts_news .posts_news_thumbnail_area {
    height: 500px;
    width: 100%;
    margin: 8rem auto;
}

#single_posts_news .posts_news_thumbnail_area .posts_news_thumbnail_image {
    height: 100%;
}

#single_posts_news .posts_news_thumbnail_area .posts_news_thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}

#single_posts_news .posts_news_thumbnail_area .posts_news_thumbnail_image image {
} */

#single_posts_news .posts_news_content_area {
    margin: 8.0rem auto;
}

#single_posts_news .posts_news_content_area .posts_news_content {}

#single_posts_news .posts_news_content_area .posts_news_content p {
    padding-bottom: 3rem;
}

#single_posts_news .post_back_btn {
    text-align: center;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    margin-top: 10rem;
    padding: 2.5rem 0;
}

#single_posts_news .post_back_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 3.2rem 2.5rem 6.9rem;
}

#single_posts_news .post_back_btn a:after {}

#single_posts_news .post_back_btn a:hover {
    background: var(--black-a005);
}

#single_posts_news .post_back_btn .allow {
    position: absolute;
    background: var(--black-a010);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-right: 2rem;
    top: 2.15rem;
    left: 2rem;
}

#single_posts_news .post_back_btn .allow::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 10px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #1f6dff;
    border-right: 2px solid #1f6dff;
    transform: rotate(225deg);
}

#single_posts_news .post_back_btn .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: #1f6dff;
}

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

    #single_posts_news {
        padding: 0;
    }

    #single_posts_news .posts_news_inner {
        width: 100%;
        padding: 2rem;
    }

    #single_posts_news .posts_news_thumbnail_area {
        height: 200px;
        width: 100%;
        margin: 3rem auto;
    }
}


/* =============================

    page-topics.php

==============================*/
#topics-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
}

#topics-wrapper .topics_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#topics-wrapper .topics_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#topics-wrapper .topics_ttl::after {
    content: 'トピックス';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*------------------------------------
    topics_flex
------------------------------------ */
#topics-wrapper .topics_flex {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
}

#topics-wrapper .topics_flex_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 32%;
    margin-bottom: 3.8rem;
    transition: 1.0s;
}

#topics-wrapper .topics_flex_contain:hover {
    background: var(--black-a010);
}

#topics-wrapper .topics_flex_contain:hover .content {
    color: var(--black-a060);
}


#topics-wrapper .topics_flex_contain a {}

#topics-wrapper .thumbnail_area {
    height: 200px;
    width: 100%;
}

#topics-wrapper .thumbnail_area .thumbnail_image {
    height: 100%;
}

#topics-wrapper .thumbnail_area .thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}


#topics-wrapper .thumbnail_area .thumbnail_image image {}

#topics-wrapper .content_area {
    padding: 3rem;
    color: var(--black-a085);
}

#topics-wrapper .content_area .date {
    font-size: 1rem;
    padding-bottom: 1rem;
    color: var(--black-a040);
}

#topics-wrapper .content_area .content {
    font-size: 1.6rem;
    font-weight: bold;
    transition: 1.0s;
}



@media screen and (max-width: 768px) {
    #topics-wrapper .topics_ttl {
        font-size: 5.6rem;
    }

    #topics-wrapper .topics_flex_contain {
        box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
        width: 100%;
        margin-bottom: 3rem;
    }

}

/* =============================

    single-posts_topics.php

==============================*/
#single_posts_topics-wrapper {
    padding: 9rem 0 14rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
}

#single_posts_topics {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

#single_posts_topics .posts_topics_inner {
    width: 80%;
    max-width: 1040px;
    background: var(--white);
    padding: 5rem 10rem;
}

#single_posts_topics .posts_topics_inner .posts_topics_date {
    font-size: 1rem;
    padding-bottom: 2rem;
    color: var(--black-a040);
}

#single_posts_topics .posts_topics_inner .posts_topics_ttl {
    color: var(--black);
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--black-a025);
}

#single_posts_topics .posts_topics_thumbnail_area {
    height: 500px;
    width: 100%;
    margin: 8rem auto;
}

#single_posts_topics .posts_topics_thumbnail_area .posts_topics_thumbnail_image {
    height: 100%;
}

#single_posts_topics .posts_topics_thumbnail_area .posts_topics_thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}

#single_posts_topics .posts_topics_thumbnail_area .posts_topics_thumbnail_image image {}

#single_posts_topics .posts_topics_content_area {}

#single_posts_topics .posts_topics_content_area .posts_topics_content {}

#single_posts_topics .posts_topics_content_area .posts_topics_content p {
    padding-bottom: 3rem;
}

#single_posts_topics .post_back_btn {
    text-align: center;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    margin-top: 10rem;
    padding: 2.5rem 0;
}

#single_posts_topics .post_back_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 3.2rem 2.5rem 6.9rem;
}

#single_posts_topics .post_back_btn a:after {}

#single_posts_topics .post_back_btn a:hover {
    background: var(--black-a005);
}

#single_posts_topics .post_back_btn .allow {
    position: absolute;
    background: var(--black-a010);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-right: 2rem;
    top: 2.15rem;
    left: 2rem;
}

#single_posts_topics .post_back_btn .allow::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 10px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #1f6dff;
    border-right: 2px solid #1f6dff;
    transform: rotate(225deg);
}

#single_posts_topics .post_back_btn .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: #1f6dff;
}

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

    #single_posts_topics {
        padding: 0;
    }

    #single_posts_topics .posts_topics_inner {
        width: 100%;
        padding: 2rem;
    }

    #single_posts_topics .posts_topics_thumbnail_area {
        height: 200px;
        width: 100%;
        margin: 3rem auto;
    }

}

/* =============================

    page-members_only.php

==============================*/
#mo-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
}

#mo-wrapper .mo_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#mo-wrapper .mo_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#mo-wrapper .mo_ttl::after {
    content: 'メンバーズコンテンツ';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*------------------------------------
    mo_flex
------------------------------------ */
#mo-wrapper .mo_flex {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
}

#mo-wrapper .mo_flex_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 32%;
    margin-bottom: 3.8rem;
    transition: 1.0s;
}

#mo-wrapper .mo_flex_contain:hover {
    background: var(--black-a010);
}

#mo-wrapper .mo_flex_contain:hover .content {
    color: var(--black-a060);
}

#mo-wrapper .mo_flex_contain a {}

#mo-wrapper .thumbnail_area {
    height: 200px;
    width: 100%;
}

#mo-wrapper .thumbnail_area .thumbnail_image {
    height: 100%;
}

#mo-wrapper .thumbnail_area .thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}


#mo-wrapper .thumbnail_area .thumbnail_image image {}

#mo-wrapper .content_area {
    padding: 3rem;
    color: var(--black-a085);
}

#mo-wrapper .content_area .date {
    font-size: 1rem;
    padding-bottom: 1rem;
    color: var(--black-a040);
}

#mo-wrapper .content_area .content {
    font-size: 1.6rem;
    font-weight: bold;
    transition: 1.0s;
}



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

    #mo-wrapper .mo_flex_contain {
        box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
        width: 100%;
        margin-bottom: 3rem;
    }

}

/* =============================

    single-posts_members_only.php

==============================*/
#single_posts_mo-wrapper {
    padding: 9rem 0 14rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
}

#single_posts_mo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

#single_posts_mo .posts_mo_inner {
    width: 80%;
    max-width: 1040px;
    background: var(--white);
    padding: 5rem 10rem;
}

#single_posts_mo .posts_mo_inner .posts_mo_date {
    font-size: 1rem;
    padding-bottom: 2rem;
    color: var(--black-a040);
}

#single_posts_mo .posts_mo_inner .posts_mo_ttl {
    color: var(--black);
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--black-a025);
}

/* #single_posts_mo .posts_mo_thumbnail_area {
    height: 500px;
    width: 100%;
    margin: 8rem auto;
}

#single_posts_mo .posts_mo_thumbnail_area .posts_mo_thumbnail_image {
    height: 100%;
}

#single_posts_mo .posts_mo_thumbnail_area .posts_mo_thumbnail_image_bk {
    height: 100%;
    background: var(--black-a010);
}

#single_posts_mo .posts_mo_thumbnail_area .posts_mo_thumbnail_image image {
} */

#single_posts_mo .posts_mo_content_area {
    margin: 8.0rem auto;
}

#single_posts_mo .posts_mo_content_area .posts_mo_content {}

#single_posts_mo .posts_mo_content_area .posts_mo_content p {
    padding-bottom: 3rem;
}

#single_posts_mo .post_back_btn {
    text-align: center;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    margin-top: 10rem;
    padding: 2.5rem 0;
}

#single_posts_mo .post_back_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 3.2rem 2.5rem 6.9rem;
}

#single_posts_mo .post_back_btn a:after {}

#single_posts_mo .post_back_btn a:hover {
    background: var(--black-a005);
}

#single_posts_mo .post_back_btn .allow {
    position: absolute;
    background: var(--black-a010);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-right: 2rem;
    top: 2.15rem;
    left: 2rem;
}

#single_posts_mo .post_back_btn .allow::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 10px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #1f6dff;
    border-right: 2px solid #1f6dff;
    transform: rotate(225deg);
}

#single_posts_mo .post_back_btn .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: #1f6dff;
}

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

    #single_posts_mo {
        padding: 0;
    }

    #single_posts_mo .posts_mo_inner {
        width: 100%;
        padding: 2rem;
    }

    #single_posts_mo .posts_mo_thumbnail_area {
        height: 200px;
        width: 100%;
        margin: 3rem auto;
    }
}


/* =============================

    page-games.php

==============================*/
#games-wrapper {
    margin-top: 17.0rem;
}

#games-wrapper::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--yellow);
    width: 100%;
    height: 83%;
    z-index: -1;
    transform: skewY(-17deg);
    transform-origin: top left;
}

#games-wrapper .games_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#games-wrapper .games_ttl_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

#games-wrapper .games_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 7.8rem;
}

#games-wrapper .games_ttl::after {
    content: "試合日程 ／ 試合結果";
    font-size: 1.6rem;
    position: absolute;
    bottom: -1.5rem;
    left: 0.5rem;
}

#games-wrapper .games_nothing {
    padding: 2.0rem 0 20.0rem;
}

#games-wrapper .games_search {
    font-size: 1.6rem;
    border: 0;
    box-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.12) inset;
    padding: 2.8rem 9rem 2.3rem 2.4rem;
    appearance: none;
    width: 38.0rem;
}

#games-wrapper .games_search_wrap {
    position: relative;
}

#games-wrapper .games_search_wrap::after {
    content: '';
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    background: var(--black);
    height: calc(tan(60deg) * 1.0rem / 2);
    width: 1.6rem;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}


#games-wrapper .games_search:focus-visible {
    outline: none;
}

#games-wrapper .games_search option {
    font-size: 1.6rem;
}

#games-wrapper .games_wrap {
    width: 100%;
    margin-bottom: 3.2rem;
}

#games-wrapper .games_wrap:last-of-type {
    margin-bottom: 14.0rem;
}

#games-wrapper .games_hr {
    display: flex;
    justify-content: left;
    align-items: center;
    background: var(--black);
    color: var(--white);
    padding: 2.0rem 3.2rem;
    font-weight: bold;
    position: relative;
}

#games-wrapper .games_venue_pic {
    height: 3.2rem;
    width: 5.4rem;
    margin-right: 2.0rem;
}

#games-wrapper .games_date {
    font-size: 2.2rem;
    position: relative;
}

#games-wrapper .games_date::after {
    content: '';
    position: absolute;
    border: solid 1px rgb(255 255 255 / 0.25);
    height: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#games-wrapper .games_date_w {
    font-size: 1.8rem;
}

#games-wrapper .games_time {
    font-size: 1.8rem;
    margin-right: 2.6rem;
}

#games-wrapper .games_summary {
    margin-left: 2.4rem;
}

#games-wrapper .games_finish_flg {
    position: absolute;
    right: 3.1rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    border: solid 1px var(--white);
    font-size: 1.2rem;
    padding: 0.8rem 1.9rem;
}

#games-wrapper .games_detail {
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--white);
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    padding: 2.4rem 3.2rem 2.4rem 4.8rem;
}

#games-wrapper .games_team_wrap {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 42.3rem;
    position: relative;
}

#games-wrapper .games_detail .games_team_wrap::after {
    content: '';
    position: absolute;
    border: solid 1px var(--black-a010);
    height: 8.8rem;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#games-wrapper .games_detail .ys_team_logo {
    width: 8.0rem;
    height: 8.0rem;
    margin-right: 2.0rem;
}

#games-wrapper .games_detail .games_vs_logo {
    width: 8.0rem;
    height: 8.0rem;
    margin-left: 3.0rem;
}

#games-wrapper .games_detail .ys_team_logo img,
#games-wrapper .games_detail .games_vs_logo img {
    object-fit: contain;
}

#games-wrapper .games_detail .games_team_score {
    padding: 3px;
    background: var(--yellow);
    font-size: 1.8rem;
    font-weight: bold;
    width: 12.2rem;
    text-align: center;
}

#games-wrapper .games_detail .games_vs_name {
    font-weight: bold;
    margin-left: 2.0rem;
    margin-right: 3.2rem;
    position: relative;
    width: 19.8rem;
}

#games-wrapper .games_venue_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

#games-wrapper .games_detail .games_venue_prefectures {
    position: relative;
    width: 6.2rem;
    margin: 0 3.2rem;
    text-align: center;
}

#games-wrapper .games_detail .games_venue_prefectures::after {
    content: '';
    position: absolute;
    border: solid 1px var(--black-a010);
    height: 8.8rem;
    top: 50%;
    right: -3.2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#games-wrapper .games_detail .games_venue_name {
    position: relative;
    width: 14.0rem;
    margin: 0 3.2rem;
}

#games-wrapper .games_detail .games_venue_name::after {
    content: '';
    position: absolute;
    border: solid 1px var(--black-a010);
    height: 8.8rem;
    top: 50%;
    right: -3.2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#games-wrapper .games_btn_wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    width: 20.4rem;
}

/* btn */
#games-wrapper .buy_tk_btn,
#games-wrapper .view_more_btn,
#games-wrapper .view_report_btn {
    padding: 0;
    width: fit-content;
}

#games-wrapper .view_more_btn {
    margin: 0;
    margin-top: 0.8rem;
}

#games-wrapper .buy_tk_btn a {
    font-size: 1.2rem;
    padding: 1.1rem 5.0rem 1.1rem 4.8rem;
    display: inline-block;
    height: 4.0rem;
}

#games-wrapper .buy_tk_btn a span {
    font-size: 1.2rem;
    display: inline-block;
    padding-right: 0.2rem;
}

#games-wrapper .view_more_btn a {
    font-size: 1.2rem;
    padding: 1.1rem 9.0rem 1.1rem 1.6rem;
    display: inline-block;
    height: 4.0rem;
}

#games-wrapper .view_report_btn a {
    font-size: 1.2rem;
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 1.1rem 9rem 1.1rem 1.6rem;
    position: relative;
}

#games-wrapper .buy_tk_btn::before {
    width: 2.0rem;
    height: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    left: 1.6rem;
}

#games-wrapper .buy_tk_btn .allow,
#games-wrapper .view_more_btn .allow,
#games-wrapper .view_report_btn .allow {
    width: 2.0rem;
    height: 2.0rem;
    right: 1.2rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#games-wrapper .view_report_btn .allow {
    position: absolute;
    background: var(--black-a005);
    border-radius: 50%;
    margin-left: 2rem;
}

#games-wrapper .view_report_btn .allow::before {
    content: '';
    position: absolute;
    border-top: 0.2rem solid var(--link-blue);
    border-right: 0.2rem solid var(--link-blue);
}

#games-wrapper .view_report_btn .allow::after {
    content: '';
    position: absolute;
    background: var(--link-blue);
    height: 0.2rem;
}

#games-wrapper .buy_tk_btn .allow::before,
#games-wrapper .view_more_btn .allow::before,
#games-wrapper .view_report_btn .allow::before {
    transform: rotate(0deg);
    top: 7px;
    left: 9px;
    width: 5px;
    height: 5px;
}

#games-wrapper .buy_tk_btn .allow::after,
#games-wrapper .view_more_btn .allow::after,
#games-wrapper .view_report_btn .allow::after {
    top: 10px;
    left: 7px;
    transform: rotate(135deg);
    width: 6px;
}

@media screen and (max-width: 768px) {
    #games-wrapper {
        margin-top: 12.0rem;
    }

    #games-wrapper::before {
        height: 48%;
        transform: skewY(-25deg);
    }

    #games-wrapper .games_inner {
        width: 90%;
    }

    #games-wrapper .games_ttl_wrap {
        display: block;
    }

    #games-wrapper .games_ttl {
        font-size: 5.6rem;
        margin-bottom: 5.4rem;
        letter-spacing: 0.4rem;
    }

    #games-wrapper .games_search_wrap {
        margin-bottom: 4.8rem;
    }

    #games-wrapper .games_search {
        width: 100%;
    }

    #games-wrapper .games_wrap {
        width: 100%;
        margin: 0 auto 2.4rem;
    }

    #games-wrapper .games_hr {
        padding: 2rem 2.4rem;
        margin-right: 0;
    }

    #games-wrapper .games_venue_pic {
        height: 4.6rem;
        background: var(--white);
        margin-right: 1.6rem;
    }

    #games-wrapper .games_venue_pic img {
        object-fit: contain;
    }

    #games-wrapper .games_date_wrap {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap;
        width: 100%;
        margin-left: 2rem;
        letter-spacing: 0.1rem;
    }

    #games-wrapper .games_date {
        font-size: 2.0rem;
    }

    #games-wrapper .games_detail {
        display: block;
        padding: 5.2rem 2.4rem 2.4rem 2.4rem;
    }

    #games-wrapper .games_team_wrap {
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        margin-bottom: 1.8rem;
        padding-top: 2.0rem;
    }

    #games-wrapper .games_summary {
        position: absolute;
        bottom: -4.5rem;
        left: 50%;
        color: black;
        margin: 0 auto;
        font-size: 1.6rem;
        width: fit-content;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        white-space: nowrap;
    }

    #games-wrapper .games_finish_flg {
        font-size: 1.1rem;
        padding: 0.2rem 0.9rem;
        margin-left: 3rem;
        position: relative;
        top: 10px;
        text-align: center;
    }

    #games-wrapper .games_detail .games_team_wrap::after {
        border: 0;
        border-bottom: solid 1px var(--black-a010);
        top: 0;
        height: 1rem;
        width: 100%;
    }

    #games-wrapper .games_detail .ys_team_logo {
        width: 7.0rem;
        height: 7.0rem;
    }

    #games-wrapper .games_vs_txt {
        font-size: 1.6rem;
    }

    #games-wrapper .games_detail .games_vs_logo {
        width: 7.0rem;
        height: 7.0rem;
    }

    #games-wrapper .games_detail .games_team_score {
        width: auto;
        padding: 0 1.4rem;
    }

    #games-wrapper .games_detail .games_vs_name {
        width: auto;
        margin: 1.6rem auto 0;
    }

    #games-wrapper .games_date::after,
    #games-wrapper .games_detail .games_venue_name::after {
        display: none;
    }

    #games-wrapper .games_venue_wrap {
        background: var(--black-a005);
        padding: 2.0rem;
        margin-bottom: 1.6rem;
        justify-content: space-around;
    }

    #games-wrapper .games_detail .games_venue_prefectures {
        width: 5.4rem;
        margin: 0;
        margin-right: 2rem;
    }

    #games-wrapper .games_detail .games_venue_prefectures::after {
        border: solid 1px var(--white);
        height: 5.9rem;
        right: -2rem;
    }

    #games-wrapper .games_detail .games_venue_name {
        margin: 0;
        margin-left: 2.0rem;
        width: 14.4rem;
    }

    #games-wrapper .games_btn_wrap {
        flex-wrap: nowrap;
        width: auto;
        position: relative;
        padding-top: 2.0rem;
    }

    #games-wrapper .games_btn_wrap::before {
        content: '';
        border-bottom: solid 1px var(--black-a010);
        position: absolute;
        top: 0;
        left: -2.4rem;
        right: -2.4rem;
    }

    #games-wrapper .buy_tk_btn {
        padding: 0;
        margin: 0;
        margin-right: 0.9rem;
        width: 50%;
    }

    #games-wrapper .buy_tk_btn a {
        letter-spacing: 0.1rem;
        margin: 0;
        width: 100%;
    }

    #games-wrapper .buy_tk_btn a span.view_pc {
        display: none;
    }

    #games-wrapper .view_more_btn {
        padding: 0;
        margin: 0;
        width: 50%;
    }

    #games-wrapper .view_more_btn a {
        letter-spacing: 0.1rem;
        margin: 0;
        width: 100%;
        white-space: nowrap;
    }

    #games-wrapper .view_report_btn {
        width: 100%;
        right: 1.6rem;
    }

    #games-wrapper .view_report_btn a {
        display: inline-block;
        width: 100%;
        letter-spacing: 0.1rem;
        padding: 1.6rem 18.7rem 1.6rem 1.6rem;
        box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.2);
    }

    #games-wrapper .view_more_btn.more_btn {
        width: 100%;
    }
}

/* =============================

    page-players.php

==============================*/
#players-wrapper {
    margin-top: 17.0rem;
    counter-reset: number 0;
}

#players-wrapper::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--yellow);
    width: 100%;
    height: 83%;
    z-index: -1;
    transform: skewY(-17deg);
    transform-origin: top left;
}

#players-wrapper .players_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#players-wrapper .players_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 7.8rem;
}

#players-wrapper .players_ttl::after {
    content: "選手・スタッフ紹介";
    font-size: 1.6rem;
    position: absolute;
    bottom: -1.5rem;
    left: 0.5rem;
}

#players-wrapper .players_wrap {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1040px;
    margin: 0 auto;
    padding: 5.8rem 0 7.8rem;
}

#players-wrapper .players_contain {
    width: calc((100% - 8rem)/ 3);
    position: relative;
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    color: var(--white);
    margin-bottom: 6.0rem;
}

#players-wrapper .players_contain_number {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    font-size: 10rem;
    font-weight: bold;
    color: var(--white);
    opacity: 0.6;
    line-height: 1;
    letter-spacing: -0.5rem;
}

#players-wrapper .players_contain:nth-child(3n+2) {
    margin: 0 4rem;
}

#players-wrapper .players_contain a {
    color: var(--white);
}

#players-wrapper .players_contain_pic {
    overflow: hidden;
    width: 100%;
    height: 40.5rem;
    background: #c1c1c1;
}

#players-wrapper .players_contain_pic img {
    transform: scale(1);
    transition: .3s ease-in-out;
}

#players-wrapper .players_contain:hover .players_contain_pic img {
    transform: scale(1.05);
    overflow: hidden;
}

#players-wrapper .players_box {
    position: absolute;
    left: 0;
    bottom: 0;
    background: var(--black);
    opacity: 0.85;
    width: 100%;
    height: 40%;
    clip-path: polygon(0 0, 100% 35%, 100% 100%, 0 100%);
}

#players-wrapper .players_box_inner {
    position: absolute;
    bottom: 0;
    padding: 2rem 2.4rem;
    width: 100%;
}

#players-wrapper .players_box_position {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 1rem;
}

#players-wrapper .players_box_name_ja {
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.2rem;
}

#players-wrapper .players_box_name_en {
    font-size: 1.4rem;
}

#players-wrapper .players_box_attention {
    font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
    #players-wrapper::before {
        height: 48%;
        transform: skewY(-25deg);
    }

    #players-wrapper .players_inner {
        width: 90%;
    }

    #players-wrapper .players_ttl {
        font-size: 5.6rem;
    }

    #players-wrapper .players_wrap {
        padding: 2.4rem 0 6.2rem;
        width: 90%;
    }

    #players-wrapper .players_contain {
        width: calc((100% - 0.9rem)/ 2);
        margin-bottom: 2.4rem;
    }

    #players-wrapper .players_contain::before {
        font-size: 5.0rem;
    }

    #players-wrapper .players_contain:nth-child(3n+2) {
        margin: 0;
    }

    #players-wrapper .players_contain:nth-child(odd) {
        margin-right: 0.9rem;
    }

    #players-wrapper .players_contain_pic {
        height: 24.0rem;
    }

    #players-wrapper .players_box {
        padding: 0;
        height: 45%;
    }

    #players-wrapper .players_box_inner {
        padding: 1.2rem;
    }

    #players-wrapper .players_box_position {
        font-size: 1.1rem;
    }

    #players-wrapper .players_box_name_ja {
        font-size: 2.2rem;
    }

    #players-wrapper .players_box_name_en {
        font-size: 1.2rem;
    }

    #players-wrapper .players_box_attention {
        display: none;
    }
}

/* =============================

    single-posts_players.php

==============================*/
#single-players-wrapper {
    margin-top: 17.0rem;
    counter-reset: number 0;
}

#single-players-wrapper::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--yellow);
    width: 100%;
    height: 83%;
    z-index: -1;
    transform: skewY(-17deg);
    transform-origin: top left;
}

#single-players-wrapper .single_players_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#single-players-wrapper .single_players_main_flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#single-players-wrapper .single_players_main_pic {
    width: 42.0rem;
    height: 42.0rem;
    margin-right: 10.0rem;
    background: #c1c1c1;
}

#single-players-wrapper .single_players_main_pic img {
    object-position: top;
}

#single-players-wrapper .single_players_main_number {
    font-size: 12.0rem;
    font-weight: bold;
}

#single-players-wrapper .single_players_main_position {
    font-size: 2.0rem;
    font-weight: bold;
}

#single-players-wrapper .single_players_main_name_ja {
    font-size: 6.4rem;
    font-weight: bold;
}

#single-players-wrapper .single_players_main_name_en {
    font-size: 2.0rem;
}

#single-players-wrapper .single_players_main_nickname_wrap,
#single-players-wrapper .single_players_main_number_wrap,
#single-players-wrapper .single_players_main_back_name_wrap {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

#single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname_ttl,
#single-players-wrapper .single_players_main_number_wrap .single_players_main_number_ttl,
#single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name_ttl {
    background: var(--white);
    border: solid 1px var(--black);
    font-size: 1.4rem;
    font-weight: bold;
    padding: 0.5rem 2.0rem;
    width: 140px;
    text-align: center;
}

#single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname,
#single-players-wrapper .single_players_main_number_wrap .single_players_main_number,
#single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name {
    font-size: 2.4rem;
    font-weight: bold;
}

#single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname::before,
#single-players-wrapper .single_players_main_number_wrap .single_players_main_number::before,
#single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name::before {
    content: "「";
    font-size: 2.4rem;
}

#single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname::after,
#single-players-wrapper .single_players_main_number_wrap .single_players_main_number::after,
#single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name::after {
    content: "」";
    font-size: 2.4rem;
}

#single-players-wrapper .single_players_main_sns {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 1.0rem;
}

#single-players-wrapper .single_players_main_sns p {
    margin-right: 1.6rem;
}

#single-players-wrapper .single_players_main_sns p:last-of-type {
    margin-right: 0;
}

#single-players-wrapper .single_players_main_sns img {
    object-fit: contain;
}

#single-players-wrapper .single_players_main_instagram,
#single-players-wrapper .single_players_main_x,
#single-players-wrapper .single_players_main_tiktok,
#single-players-wrapper .single_players_main_note {
    width: 2.4rem;
    height: 2.4rem;
}

#single-players-wrapper .single_players_main_pics_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 6.0rem;
}

#single-players-wrapper .single_players_main_pics_wrap.view_sp {
    display: none;
}

#single-players-wrapper .single_players_main_pics {
    margin-right: 1.6rem;
    width: calc((100% - 1.6rem * 3) / 4);
    height: 16.5rem;
}

#single-players-wrapper .single_players_main_pics:last-of-type {
    margin-right: 0;
}

#single-players-wrapper .single_players_bottom_wrap {
    display: flex;
    justify-content: center;
    align-items: stretch;
    margin: 8.0rem 0;
}

#single-players-wrapper .single_players_personal_wrap,
#single-players-wrapper .single_players_biography_wrap {
    width: 50%;
    background: var(--white);
}

#single-players-wrapper .single_players_personal_wrap {
    margin-right: 2.0rem;
}

#single-players-wrapper .single_players_biography_wrap {
    margin-left: 2.0rem;
}

#single-players-wrapper .single_players_personal_ttl,
#single-players-wrapper .single_players_biography_ttl {
    background: var(--black);
    color: var(--white);
    font-size: 1.8rem;
    font-weight: bold;
    padding: 1.7rem 6.0rem;
    position: relative;
}

#single-players-wrapper .single_players_personal_ttl::before {
    content: '';
    background-image: url(img/players/players_personal_icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.0rem;
    height: 2.0rem;
}

#single-players-wrapper .single_players_biography_ttl::before {
    content: '';
    background-image: url(img/players/players_volleyball_icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.0rem;
    height: 2.0rem;
}

#single-players-wrapper .single_players_personal_table,
#single-players-wrapper .single_players_biography_list {
    padding: 3.2rem 3.2rem 3.4rem 3.2rem;
}

#single-players-wrapper .single_players_personal_wrap table {
    margin: 0;
}

#single-players-wrapper .single_players_personal_wrap table tr {
    border-bottom: solid 1px var(--black-a010);
}

#single-players-wrapper .single_players_personal_wrap table tr:last-of-type {
    border-bottom: 0;
}

#single-players-wrapper .single_players_personal_wrap table th {
    font-size: 1.8rem;
    font-weight: normal;
    padding: 2.4rem 0 1.8rem 1.6rem;
    color: var(--black-a060);
    width: 38%;
    vertical-align: top;
}

#single-players-wrapper .single_players_personal_wrap table tr:first-of-type th,
#single-players-wrapper .single_players_personal_wrap table tr:first-of-type td {
    padding-top: 0;
}

#single-players-wrapper .single_players_personal_wrap table td {
    font-size: 1.8rem;
    padding: 2.4rem 1.6rem 1.8rem 2.4rem;
    width: 62%;
}

#single-players-wrapper .single_players_personal_wrap table tr:last-of-type th,
#single-players-wrapper .single_players_personal_wrap table tr:last-of-type td {
    padding-bottom: 0;
}

#single-players-wrapper .single_players_biography_list li {
    font-size: 1.8rem;
    border-bottom: solid 1px var(--black-a010);
    padding: 2.4rem 1.6rem 1.8rem;
}

#single-players-wrapper .single_players_biography_list li:first-of-type {
    padding-top: 0;
}

#single-players-wrapper .single_players_biography_list li:last-of-type {
    border-bottom: 0;
}

#single-players-wrapper .post_back_btn {
    text-align: center;
    position: relative;
    width: fit-content;
    margin: 8.0rem auto 14.0rem;
    padding: 2.5rem 0;
}

#single-players-wrapper .post_back_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 4.8rem 2.5rem 6.8rem;
}

#single-players-wrapper .post_back_btn:hover a {
    background: var(--black-a010);
}

#single-players-wrapper .post_back_btn:hover .allow {
    background: var(--white);
}

@media screen and (max-width: 768px) {
    #single-players-wrapper .single_players_inner {
        width: 90%;
    }

    #single-players-wrapper .single_players_main_flex {
        display: block;
    }

    #single-players-wrapper .single_players_main_pic {
        width: 31.1rem;
        height: 31.1rem;
        margin: 0 auto;
    }

    #single-players-wrapper .single_players_main_number {
        font-size: 6.8rem;
    }

    #single-players-wrapper .single_players_main_position {
        font-size: 1.6rem;
    }

    #single-players-wrapper .single_players_main_name_ja {
        font-size: 4.8rem;
    }

    #single-players-wrapper .single_players_main_name_en {
        font-size: 1.6rem;
    }

    #single-players-wrapper .single_players_main_nickname_wrap,
    #single-players-wrapper .single_players_main_number_wrap,
    #single-players-wrapper .single_players_main_back_name_wrap {
        margin-top: 2.3rem;
    }

    #single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname_ttl,
    #single-players-wrapper .single_players_main_number_wrap .single_players_main_number_ttl,
    #single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name_ttl {
        font-size: 1.2rem;
    }

    #single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname,
    #single-players-wrapper .single_players_main_number_wrap .single_players_main_number,
    #single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name {
        font-size: 2.0rem;
    }

    #single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname::before,
    #single-players-wrapper .single_players_main_number_wrap .single_players_main_number::before,
    #single-players-wrapper .single_players_main_back_name .single_players_main_back_name::before {
        font-size: 2.0rem;
    }

    #single-players-wrapper .single_players_main_nickname_wrap .single_players_main_nickname::after,
    #single-players-wrapper .single_players_main_number_wrap .single_players_main_number::after,
    #single-players-wrapper .single_players_main_back_name_wrap .single_players_main_back_name::after {
        font-size: 2.0rem;
    }

    #single-players-wrapper .single_players_main_sns {
        justify-content: left;
        padding-top: 3.2rem;
        margin-top: 3.0rem;
        border-top: 1px solid var(--black-a010);
    }

    #single-players-wrapper .single_players_main_sns p {
        margin-right: 2.4rem;
    }

    #single-players-wrapper .single_players_main_pics_wrap.view_pc {
        display: none;
    }

    #single-players-wrapper .single_players_main_pics_wrap.view_sp {
        display: block;
    }

    #single-players-wrapper .single_players_main_pics:last-of-type {
        width: 100%;
    }

    #single-players-wrapper .single_players_bottom_wrap {
        display: block;
    }

    #single-players-wrapper .single_players_personal_wrap,
    #single-players-wrapper .single_players_biography_wrap {
        width: 100%;
    }

    #single-players-wrapper .single_players_personal_wrap {
        margin-bottom: 2.4rem;
    }

    #single-players-wrapper .single_players_personal_table,
    #single-players-wrapper .single_players_biography_list {
        padding: 3.2rem 1.6rem 5.1rem 1.6rem;
    }

    #single-players-wrapper .single_players_personal_wrap table th,
    #single-players-wrapper .single_players_personal_wrap table td {
        font-size: 1.6rem;
    }

    #single-players-wrapper .single_players_biography_wrap {
        margin-left: 0;
    }

    #single-players-wrapper .single_players_biography_list li {
        font-size: 1.6rem;
    }
}


/* =============================

    page-goods.php

==============================*/
#goods-wrapper {
    margin-top: 17.0rem;
    overflow: hidden;
    padding: 9rem 0 14rem;
    position: relative;
    overflow: hidden;
    background: var(--yellow);
    margin-top: -1rem;
}

#goods-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--white);
    width: 100vw;
    height: 230vh;
    z-index: 0;
    transform: skewY(-50deg);
    transform-origin: top left;
}

#goods-wrapper .goods_inner {
    max-width: 1040px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

#goods-wrapper .kinto {
    font-family: 'Kinto Sans', sans-serif;
    ;
}

#goods-wrapper .goods_ttl {
    text-align: center;
    font-size: 11.0rem;
    color: var(--yellow-a085);
    position: relative;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

#goods-wrapper .goods_ttl::after {
    content: "グッズ";
    position: absolute;
    bottom: 2.0rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 2.4rem;
    color: var(--black);
    width: 100%;
}

#goods-wrapper .goods_pickup {
    display: flex;
}

#goods-wrapper .goods_pickup .goods_pickup_img_wrap {
    width: 100%;
    height: 554px;
    position: relative;
}

#goods-wrapper .goods_pickup .goods_pickup_img_wrap p {
    position: absolute;
    left: 16px;
    bottom: 12px;
    color: var(--white);
    font-size: 1.7rem;
    font-weight: bold;
}

#goods-wrapper .goods_first_time {
    font-weight: bold;
    border: solid 2px var(--yellow);
    font-size: 1.8rem;
    background: var(--white);
    margin-top: 3%;
    padding: 1%;
}

#goods-wrapper .goods_all .goods_all_box {
    display: flex;
    background: var(--white);
    margin-top: 3%;
    height: auto;
}

#goods-wrapper .goods_all .goods_all_img_wrap {
    width: 40%;
    height: 413px;
    padding: 0;
    display: inline-block;
}

.lb-nav a.lb-prev,
.lb-nav a.lb-next {
    outline: none;
}

#goods-wrapper .goods_all .goods_all_img_wrap .swiper-button-prev::after,
#goods-wrapper .goods_all .goods_all_img_wrap .swiper-button-next::after {
    font-size: 2.0rem;
    color: #000;
    text-shadow: none;
}

#goods-wrapper .goods_all .goods_all_img_wrap .swiper-pagination {
    bottom: 5%;
}

#goods-wrapper .goods_all .goods_all_summary_wrap {
    width: 60%;
    padding: 25px 26px 100px 20px;
    position: relative;
    display: inline-block;
}

#goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_name {
    font-size: 3.0rem;
    font-weight: bold;
}

#goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_price {
    color: var(--yellow);
    font-size: 3.2rem;
    font-weight: bold;
}

#goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_price span {
    font-size: 2.3rem;
    font-weight: bold;
}

#goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_detail {
    font-size: 1.8rem;
}

#goods-wrapper .goods_all .goods_all_buy_btn {
    background: #000;
    width: 50%;
    text-align: center;
    box-shadow: 8px 8px 12px rgba(0, 0, 0, 0.5);
    margin-top: 3%;
    position: relative;
    padding: 0.8rem;
    position: absolute;
    bottom: 4%;
}

#goods-wrapper .goods_all .goods_all_buy_btn a {
    display: block;
    font-size: 2.5rem;
    font-weight: bold;
    color: var(--yellow);
}

#goods-wrapper .goods_all_buy_btn .allow {
    top: 1.5rem;
}

@media screen and (max-width: 768px) {
    #goods-wrapper::before {
        height: 49vh;
        transform: skewY(-45deg);
    }

    #goods-wrapper .goods_inner {
        width: 90%;
    }

    #goods-wrapper .goods_ttl {
        font-size: 7.2rem;
    }

    #goods-wrapper .goods_ttl::after {
        font-size: 2.0rem;
    }

    #goods-wrapper .goods_pickup {
        display: block;
    }

    #goods-wrapper .goods_pickup .goods_pickup_img_wrap {
        width: 100%;
        height: 243px;
    }

    #goods-wrapper .goods_pickup .goods_pickup_img_wrap img {
        object-position: 50% 15%;
    }

    #goods-wrapper .goods_pickup .goods_pickup_img_wrap p {
        font-size: 1.6rem;
    }

    #goods-wrapper .goods_first_time {
        font-size: 1.6rem;
        margin-top: 10%;
        padding: 3%;
    }

    #goods-wrapper .goods_all .goods_all_box {
        display: block;
        height: auto;
        margin-top: 10%;
    }

    #goods-wrapper .goods_all .goods_all_img_wrap {
        width: 100%;
        height: auto;
    }

    #goods-wrapper .goods_all .swiper-slide {
        height: 287px;
    }

    #goods-wrapper .goods_all .goods_all_img_wrap .swiper-pagination {
        bottom: 7%;
    }

    #goods-wrapper .goods_all .goods_all_summary_wrap {
        width: 100%;
        padding-bottom: 30px;
    }

    #goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_name {
        font-size: 2.4rem;
    }

    #goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_price {
        font-size: 2.6rem;
    }

    #goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_price span {
        font-size: 1.6rem;
    }

    #goods-wrapper .goods_all .goods_all_summary_wrap .goods_all_detail {
        font-size: 1.6rem;
    }

    #goods-wrapper .goods_all .goods_all_buy_btn {
        margin-top: 10%;
        position: relative;
        width: 100%;
    }

    #goods-wrapper .goods_all .goods_all_buy_btn a {
        font-size: 2.2rem;
    }

    #goods-wrapper .goods_all_buy_btn .allow {
        top: 1.2rem;
    }
}


/* =============================

    page-about.php

==============================*/
#about-wrapper {
    margin-top: 17.0rem;
    overflow: hidden;
    padding: 9rem 0 14rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
    background-image: url(img/partners_bk.png);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -1rem;
    z-index: -5;
}

#about-wrapper .about_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#about-wrapper .about_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#about-wrapper .about_ttl::after {
    content: 'チームについて';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* bg */
#about-wrapper::before {
    content: '';
    background-image: url(img/top/top_logo_bg);
    background-repeat: no-repeat;
    background-size: 30%;
    position: fixed;
    top: 15%;
    left: -11.8rem;
    width: 100%;
    height: 100%;
    z-index: -3;
}

#about-wrapper .about_bg_line {
    position: relative;
}

#about-wrapper .about_bg_line::before {
    content: '';
    top: 105.6rem;
    width: 200%;
    left: -50%;
    height: 20%;
    background: var(--yellow);
    transform: skewY(20deg);
    transform-origin: top right;
    position: absolute;
    z-index: -2;
}

#about-wrapper .about_bg_line::after {
    content: '';
    top: 57%;
    right: -50%;
    width: 200%;
    height: 20%;
    background: var(--black);
    transform: skewY(-34deg);
    transform-origin: top left;
    position: absolute;
    z-index: 0;
}

#about-wrapper .about_bg_blur::before {
    content: '';
    position: absolute;
    top: 20%;
    left: -50%;
    width: 200%;
    height: 90%;
    z-index: -3;
    backdrop-filter: blur(2rem);
}

/*------------------------------------
    about_mission
------------------------------------ */
#about-wrapper .about_mission {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_mission_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_mission_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_mission_main {
    background: var(--black);
    color: var(--white);
    text-align: center;
    padding: 5.6rem 8.0rem 6.6rem;
}

#about-wrapper .about_mission_cp {
    font-size: 6.4rem;
    font-weight: bold;
}

#about-wrapper .about_mission_cp::before {
    content: '“';
    font-size: 6.4rem;
}

#about-wrapper .about_mission_cp::after {
    content: '”';
    font-size: 6.4rem;
}

#about-wrapper .about_mission_cp span {
    font-size: 6.4rem;
    color: var(--yellow);
}

#about-wrapper .about_mission_contain {
    padding: 6.4rem 8.0rem 8.0rem;
}

#about-wrapper .about_mission_txt {
    font-size: 1.8rem;
    font-weight: bold;
}

#about-wrapper .about_mission_box {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 4.8rem;
}

#about-wrapper .about_mission_box_num {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 4.8rem;
    font-weight: bold;
    color: var(--white);
    width: 16.0rem;
    height: 16.0rem;
    margin-right: 4.0rem;
    line-height: 1.2;
}

#about-wrapper .about_mission_box_num::before {
    content: "MISSION";
    font-size: 1.2rem;
    font-weight: bold;
}

#about-wrapper .about_mission_box:nth-of-type(odd) .about_mission_box_num {
    background: var(--yellow);
}

#about-wrapper .about_mission_box:nth-of-type(even) .about_mission_box_num {
    background: var(--black);
}

#about-wrapper .about_mission_sub-box {
    width: 68.0rem;
}

#about-wrapper .about_mission_box_ttl {
    font-size: 2.4rem;
    font-weight: bold;
    border-bottom: solid 2px var(--yellow);
}

#about-wrapper .about_mission_box_txt {
    font-size: 1.6rem;
    text-align: left;
    margin-top: 2.4rem;
}

/*------------------------------------
    about_vision
------------------------------------ */
#about-wrapper .about_vision {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_vision_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_vision_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_vision_main {
    background: var(--black);
    color: var(--white);
    text-align: center;
    padding: 5.6rem 21.0rem;
}

#about-wrapper .about_vision_cp {
    font-size: 4.0rem;
    font-weight: bold;
}

#about-wrapper .about_vision_cp::before {
    content: '“';
    font-size: 4.0rem;
}

#about-wrapper .about_vision_cp::after {
    content: '”';
    font-size: 4.0rem;
}

#about-wrapper .about_vision_txt {
    text-align: center;
    padding: 4.8rem 8.0rem 7.4rem;
}

/*------------------------------------
    about_value
------------------------------------ */
#about-wrapper .about_value {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_value_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_value_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_value_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 8.0rem 8.2rem;
}

#about-wrapper .about_value_box {
    width: calc((100% - 2rem)/2);
    border: solid 1px var(--black);
}

#about-wrapper .about_value_box:nth-of-type(odd) {
    margin-right: 2.0rem;
}

#about-wrapper .about_value_box:first-of-type,
#about-wrapper .about_value_box:nth-of-type(2) {
    margin-bottom: 2.0rem;
}

#about-wrapper .about_value_box_ttl {
    background: var(--black);
    color: var(--white);
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 3.2rem 2.4rem 2.7rem;
}

#about-wrapper .about_value_box_ttl .about_value_box_ylw {
    color: var(--yellow);
    font-size: 3.2rem;
}

#about-wrapper .about_value_box_ja {
    font-size: 1.6rem;
    display: block;
}

#about-wrapper .about_value_box_txt {
    text-align: center;
    font-size: 1.8rem;
    padding: 5.8rem 2.4rem 5.2rem;
    font-weight: bold;
}

/*------------------------------------
    about_team_name
------------------------------------ */
#about-wrapper .about_team_name {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_team_name_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_team_name_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_team_name_pic {
    width: 64.5rem;
    margin: 0 auto;
}

#about-wrapper .about_team_name_txt {
    text-align: center;
    padding: 4.8rem 8.0rem 7.5rem;
}

/*------------------------------------
    about_logo
------------------------------------ */
#about-wrapper .about_logo {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_logo_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_logo_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_logo_pic {
    width: 16.0rem;
    height: 16.0rem;
    margin: 0 auto;
}

#about-wrapper .about_logo_txt {
    text-align: center;
    padding: 4.8rem 8.0rem 7.5rem;
}

/*------------------------------------
    about_history
------------------------------------ */
#about-wrapper .about_history {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 2.0rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_history_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_history_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_history_table_wrap {
    padding: 4.6rem 8.0rem 8.0rem;
}

#about-wrapper .about_history table tr {
    border-bottom: dotted 1px var(--black-a010);
    vertical-align: top;
}

#about-wrapper .about_history table th {
    padding: 3.2rem 2.0rem 3.2rem 2.4rem;
    width: 17%;
}

#about-wrapper .about_history table td {
    padding: 3.2rem 2.4rem 3.2rem 2.0rem;
    width: 85%;
    line-height: 2;
}

#about-wrapper .about_history table tr:first-of-type {
    border-top: dotted 1px var(--black-a010);
}

/*------------------------------------
    about_company
------------------------------------ */
body.page-id-14 #contents {
    position: relative;
    z-index: 0;
}

#about-wrapper .about_company {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 15.7rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#about-wrapper .about_company_ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#about-wrapper .about_company_ttl span {
    font-size: 1.6rem;
}

#about-wrapper .about_company_table_wrap {
    padding: 4.6rem 8.0rem 8.0rem;
}

#about-wrapper .about_company table tr {
    border-bottom: solid 1px var(--black-a010);
    vertical-align: top;
}

#about-wrapper .about_company table th {
    padding: 3.2rem 2.0rem 3.2rem 2.4rem;
    width: 17%;
}

#about-wrapper .about_company table td {
    padding: 3.2rem 2.4rem 3.2rem 2.0rem;
    width: 85%;
    line-height: 2;
}

#about-wrapper .about_company table td a {
    color: #333;
    font-size: 1.6rem;
    text-decoration: underline;
}

#about-wrapper .about_company table tr:first-of-type {
    border-top: solid 1px var(--black-a010);
}

#about-wrapper .about_company table img {
    width: 30%;
    height: 100px;
    object-fit: contain;
}

#about-wrapper .about_company table tr.partner_ttl {
    border-bottom: 0;
}

@media screen and (max-width: 768px) {
    #about-wrapper {
        padding: 8.4rem 0 8.8rem;
        background-image: unset;
    }

    #about-wrapper::before {
        background-size: 85%;
        top: 16%;
        left: -8.8rem;
    }

    #about-wrapper::after {
        content: '';
        display: block;
        background-image: url(img/partners_bk_sp.png);
        background-repeat: no-repeat;
        background-position: top 200px right;
        background-size: cover;
        position: fixed;
        top: 0%;
        right: 0;
        width: 100%;
        height: 100vh;
        z-index: -3;
    }

    #about-wrapper .about_inner {
        width: 90%;
    }

    #about-wrapper .about_ttl {
        padding: 0;
        padding-bottom: 1.0rem;
    }

    /*------------------------------------
    about_mission
------------------------------------ */
    #about-wrapper .about_mission_ttl {
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_mission_cp,
    #about-wrapper .about_mission_cp::before,
    #about-wrapper .about_mission_cp::after {
        font-size: 4.8rem;
    }

    #about-wrapper .about_mission_main {
        padding: 4rem 2.4rem 4.5rem;
    }

    #about-wrapper .about_mission_contain {
        padding: 4.8rem 2.4rem 6.7rem;
    }

    #about-wrapper .about_mission_box {
        display: block;
        position: relative;
    }

    #about-wrapper .about_mission_box_num {
        width: 9.0rem;
        height: 9.0rem;
        position: absolute;
        top: 0;
        left: 0;
        font-size: 3.6rem;
    }

    #about-wrapper .about_mission_box_num::before {
        font-size: 1.0rem;
    }

    #about-wrapper .about_mission_box_ttl {
        width: 16.5rem;
        height: 9.0rem;
        margin-left: 11.4rem
    }

    #about-wrapper .about_mission_txt {
        font-size: 1.6rem;
    }

    #about-wrapper .about_mission_sub-box {
        width: 100%;
    }

    /*------------------------------------
    about_vision
------------------------------------ */
    #about-wrapper .about_vision_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_vision_main {
        padding: 6.0rem 3.0rem;
    }

    #about-wrapper .about_vision_cp {
        font-size: 2.8rem;
        position: relative;
    }

    #about-wrapper .about_vision_cp::before {
        font-size: 2.8rem;
        position: absolute;
        left: 0
    }

    #about-wrapper .about_vision_cp::after {
        font-size: 2.8rem;
        position: absolute;
        right: 0;
    }

    #about-wrapper .about_mission_cp span {
        font-size: 4.8rem;
    }

    #about-wrapper .about_vision_txt {
        font-size: 1.6rem;
        padding: 3.2rem 2.4rem 6.7rem;
        text-align: left;
    }

    /*------------------------------------
    about_value
------------------------------------ */
    #about-wrapper .about_value_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_value_ttl span {
        font-size: 1.4rem;
    }

    #about-wrapper .about_value_wrap {
        display: block;
        padding: 0 2.4rem 2.0rem;
    }

    #about-wrapper .about_value_box {
        width: 100%;
        margin-bottom: 2.0rem;
    }

    #about-wrapper .about_value_box:last-of-type {
        margin-bottom: 0;
    }

    #about-wrapper .about_value_box_txt {
        padding: 4.0rem 2.4rem 3.4rem;
    }

    /*------------------------------------
    about_team_name
------------------------------------ */
    #about-wrapper .about_team_name_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_team_name_ttl span {
        font-size: 1.4rem;
    }

    #about-wrapper .about_team_name_pic {
        width: 27.9rem;
    }

    #about-wrapper .about_team_name_txt {
        font-size: 1.6rem;
        text-align: left;
        padding: 4.0rem 2.4rem 3.5rem;
    }

    /*------------------------------------
    about_logo
------------------------------------ */
    #about-wrapper .about_logo_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_logo_ttl span {
        font-size: 1.4rem;
    }

    #about-wrapper .about_logo_pic {
        width: 10.0rem;
        height: 10.0rem;
    }

    #about-wrapper .about_logo_txt {
        font-size: 1.6rem;
        text-align: left;
        padding: 4.0rem 2.4rem 6.7rem;
    }

    /*------------------------------------
    about_history
------------------------------------ */
    #about-wrapper .about_history_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_history_ttl span {
        font-size: 1.4rem;
    }

    #about-wrapper .about_history_table_wrap {
        padding: 4.0rem 2.4rem;
    }

    #about-wrapper .about_history table th {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        padding-right: 1.0rem;
        width: 30%;
    }

    #about-wrapper .about_history table td {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        width: 70%;
    }

    /*------------------------------------
    about_company
------------------------------------ */
    #about-wrapper .about_company_ttl {
        font-size: 2.4rem;
        padding: 4.0rem 0 3.8rem;
    }

    #about-wrapper .about_company_ttl span {
        font-size: 1.4rem;
    }

    #about-wrapper .about_company_table_wrap {
        padding: 4.0rem 2.4rem;
    }

    #about-wrapper .about_company table th {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        padding-right: 1.0rem;
        width: 30%;
    }

    #about-wrapper .about_company table td {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        width: 70%;
    }

    #about-wrapper .about_company table img {
        width: 70%;
        height: 50px;
    }
}

/* =============================

    page-company.php

==============================*/
#company-wrapper {
    padding: 9rem 0 14rem;
    background: var(--black-a005);
}

#company-wrapper .company_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#company-wrapper .company_ttl {
    font-size: 5.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
    ;
}


#company-wrapper .company_ttl::after {
    content: '会社概要';
    font-size: 1.6rem;
    position: absolute;
    bottom: -5px;
    left: 0;
}

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

    #company-wrapper {
        padding: 8.4rem 0 8.8rem;
        background-image: unset;
    }

    #company-wrapper::before {
        background-size: 85%;
        top: 16%;
        left: -8.8rem;
    }

    #company-wrapper .company_inner {
        width: 90%;
    }

    #company-wrapper .company_ttl {
        padding: 0;
        padding-bottom: 1.0rem;
    }
}

/*------------------------------------
    company_partners
------------------------------------ */
#company-wrapper .partners_flex {
    width: 100%;
    margin: 3.8rem 0;
    text-align: center;
    background: #fff;
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
}

#company-wrapper .partners_flex h3 {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#company-wrapper .partners_flex span {
    font-weight: bold;
    font-size: 1.6rem;
}

#company-wrapper .partners_flex_center {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 0 auto;
    flex-wrap: wrap;
    align-content: center;
    padding: 0 4rem;
}

#company-wrapper .partners_flex_center .partners_flex_cs {
    font-size: 1.8rem;
    font-weight: bold;
}

#company-wrapper .partners_flex_between {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
}

#company-wrapper .partners_flex_duo_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 44%;
    height: 120px;
    padding: 1rem;
    transition: 0.5s;
    margin: 0 3%;
    margin-bottom: 3.8rem;
    position: relative;
}


#company-wrapper .partners_flex:first-of-type .partners_flex_duo_contain {
    width: 60%;
    height: 240px;
    padding: 3rem;
}

#company-wrapper .partners_flex_trip_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 31%;
    height: 100px;
    padding: 1rem;
    transition: 0.5s;
    margin: 0 1%;
    margin-bottom: 3.8rem;
    position: relative;
}

#company-wrapper .partners_flex_duo_contain p.partners_name {
    font-size: 2rem;
    display: block;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: var(--black);
}

#company-wrapper .partners_flex_duo_contain img {
    object-fit: contain;
}

#company-wrapper .partners_flex_duo_contain:hover {
    box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

#company-wrapper .partners_flex_duo_contain:hover .content {
    box-shadow: none;
}

@media screen and (max-width: 768px) {
    #company-wrapper .partners_ttl {
        font-size: 5.6rem;
        padding-top: 0;
    }

    #company-wrapper .partners-season_ttl {
        font-size: 3rem;
        padding: 6.0rem 0 3.0rem;
        margin-bottom: 0;
    }

    #company-wrapper .partners_flex {
        padding: 0 0 4.0rem;
    }

    #company-wrapper .partners_flex_center {
        padding: 0 2.4rem;
    }

    #company-wrapper .partners_flex_duo_contain {
        width: 100%;
        height: 100px;
        margin: 0;
        margin-bottom: 2rem;
    }

    #company-wrapper .partners_flex:first-of-type .partners_flex_duo_contain {
        width: 100%;
        height: 150px;
        padding: 1rem;
    }

}

/*------------------------------------
    company
------------------------------------ */
body.page-id-14 #contents {
    position: relative;
    z-index: 0;
}

#company-wrapper .company {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 15.7rem;
    background: var(--white);
    position: relative;
    z-index: 1;
}

#company-wrapper .company_subttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    padding: 6.8rem 0 4.6rem;
    line-height: 1;
}

#company-wrapper .company_subttl span {
    font-size: 1.6rem;
}

#company-wrapper .company_table_wrap {
    padding: 4.6rem 8.0rem 8.0rem;
}

#company-wrapper .company table tr {
    border-bottom: solid 1px var(--black-a010);
    vertical-align: top;
}

#company-wrapper .company table th {
    padding: 3.2rem 2.0rem 3.2rem 2.4rem;
    width: 17%;
}

#company-wrapper .company table td {
    padding: 3.2rem 2.4rem 3.2rem 2.0rem;
    width: 85%;
    line-height: 2;
}

#company-wrapper .company table td a {
    color: #333;
    font-size: 1.6rem;
    text-decoration: underline;
}

#company-wrapper .company table tr:first-of-type {
    border-top: solid 1px var(--black-a010);
}

#company-wrapper .company table img {
    width: 30%;
    height: 100px;
    object-fit: contain;
}

#company-wrapper .company table tr.partner_ttl {
    border-bottom: 0;
}

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

    #company-wrapper .company_table_wrap {
        padding: 4.0rem 2.4rem;
    }

    #company-wrapper .company table th {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        padding-right: 1.0rem;
        width: 30%;
    }

    #company-wrapper .company table td {
        font-size: 1.6rem;
        padding: 2.8rem 0;
        width: 70%;
    }

    #company-wrapper .company table img {
        width: 70%;
        height: 50px;
    }
}

/* =============================

    page-blog.php

==============================*/
#blog-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
}

#blog-wrapper::after {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: var(--yellow);
    transform: skewY(-25deg);
    transform-origin: top right;
}

#blog-wrapper .blog_container {
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
}

#blog-wrapper .blog_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#blog-wrapper .blog_ttl::after {
    content: '会員限定ブログ';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*------------------------------------
    fc_login
    ※page-fanclub.phpのfc_loginに記載
------------------------------------ */

/*------------------------------------
    blog_fc_link
------------------------------------ */
#blog-wrapper .blog_fc_link {
    background: var(--white);
    margin-bottom: 4.0rem;
}

#blog-wrapper .blog_fc_link_ttl {
    background: var(--black);
    color: var(--white);
    text-align: center;
    font-size: 2.4rem;
    padding: 3.6rem;
    margin-bottom: 0;
}

#blog-wrapper .blog_fc_link_wrap {
    padding: 6.0rem 0;
}

#blog-wrapper .blog_fc_link_inner {
    width: 80%;
    margin: 0 auto;
}

#blog-wrapper .blog_fc_link_cp {
    text-align: center;
    font-size: 5.2rem;
    font-weight: bold;
}

#blog-wrapper .blog_fc_link_cp::before {
    content: '“';
    color: var(--yellow);
    font-size: 5.2rem;
    padding-right: 2.4rem;
}

#blog-wrapper .blog_fc_link_cp::after {
    content: '”';
    color: var(--yellow);
    font-size: 5.2rem;
    padding-left: 2.2rem;
}

#blog-wrapper .blog_fc_link_cp span {
    color: var(--yellow);
    font-size: 5.2rem;
}

#blog-wrapper .blog_fc_link_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
    margin: 3.1rem auto 3.4rem;
}

#blog-wrapper .blog_fc_link_privilege {
    border: solid 1px var(--black);
}

#blog-wrapper .blog_fc_link_privilege_ttl {
    background: var(--black);
    color: var(--white);
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 1.7rem;
}

#blog-wrapper .blog_fc_link_privilege_txt {
    background: var(--white);
    width: 100%;
    height: 22.0rem;
    font-weight: bold;
    padding: 3.0rem;
}

#blog-wrapper .blog_fc_link .view_more_btn a {
    padding-right: 11.9rem;
}

@media screen and (max-width: 768px) {
    #blog-wrapper {
        padding: 0 0 8.8rem;
    }

    #blog-wrapper .blog_container {
        width: 90%;
    }

    #blog-wrapper::after {
        top: 33%;
        transform: skewY(-30deg);
    }

    #blog-wrapper .blog_ttl {
        font-size: 5.6rem;
    }

    /*------------------------------------
        blog_fc_link
    ------------------------------------ */
    #blog-wrapper .blog_fc_link_ttl {
        font-size: 2.0rem;
        padding: 2.8rem;
    }

    #blog-wrapper .blog_fc_link_inner {
        width: 90%;
    }

    #blog-wrapper .blog_fc_link_cp {
        font-size: 3.6rem;
    }

    #blog-wrapper .blog_fc_link_cp::before {
        font-size: 3.6rem;
        padding-right: 1.6rem;
    }

    #blog-wrapper .blog_fc_link_cp::after {
        font-size: 3.6rem;
        padding-left: 1.6rem;
    }

    #blog-wrapper .blog_fc_link_cp span {
        font-size: 3.6rem;
    }

    #blog-wrapper .blog_fc_link_txt {
        font-size: 1.6rem;
        margin: 3.2rem auto 6.3rem;
    }

    #blog-wrapper .blog_fc_link_privilege_ttl {
        font-size: 1.6rem;
    }

    #blog-wrapper .blog_fc_link_privilege_txt {
        height: auto;
        padding: 2.0rem;
    }

    #blog-wrapper .blog_fc_link .view_more_btn {
        margin: 4.0rem auto 0;
    }
}


/* =============================

    page-fanclub.php

==============================*/
/* 欧文フォント */
.poppins-semibold {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: normal;
}

.poppins-semibold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: italic;
}

#fc-wrapper-2025-26 .fc_mv_inner {
    padding-bottom: 10.0rem;
}

#rw-fc-wrapper .fc_mv_inner,
#cg-fc-wrapper .fc_mv_inner,
#fc-wrapper-2025-26 .fc_mv_inner,
#rw-fc-wrapper .fc_benefit_inner,
#rw-fc-wrapper .fc_goods_inner,
#rw-fc-wrapper .fc_faq_inner,
#fc-wrapper-2025-26 .fc_faq_inner {
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
}

#rw-fc-wrapper .ptm {
    color: #eeeeec;
}

#rw-fc-wrapper .gld {
    color: #ddbe35;
}

#rw-fc-wrapper .slv {
    color: #d8d8d8;
}

#rw-fc-wrapper .yel {
    color: #eabd47;
}

/*------------------------------------
    fc_mv
------------------------------------ */
#rw-fc-wrapper #fc_mv {
    position: relative;
}

#fc-wrapper-2025-26 #fc_mv {
    background-color: var(--yellow);
}

#rw-fc-wrapper #fc_mv::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    background: var(--yellow);
    height: 0.2rem;
    width: 15vw;
}

#rw-fc-wrapper .fc_mv_ttl,
#cg-fc-wrapper .fc_mv_ttl,
#fc-wrapper-2025-26 .fc_mv_ttl {
    font-size: 10.0rem;
    -webkit-text-stroke: 2px var(--black);
    color: transparent;
    line-height: 1;
    padding: 11.0rem 0 6.0rem;
}

#fc-wrapper-2025-26 .fc_mv_ttl {
    color: var(--white);
}

#rw-fc-wrapper .fc_mv_ttl span,
#cg-fc-wrapper .fc_mv_ttl span,
#fc-wrapper-2025-26 .fc_mv_ttl span {
    font-size: 10.0rem;
    color: var(--black);
    -webkit-text-stroke: 0;
}

#rw-fc-wrapper .fc_mv_ttl_wrap p {
    font-weight: bold;
    margin: 0 0 8.0rem;
}

#cg-fc-wrapper .fc_mv_ttl_wrap p {
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    margin: 6.0rem 0 12.0rem;
}

#fc-wrapper-2025-26 .fc_mv_ttl_wrap .fc_sub_ttl {
    font-size: 2.6rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 3rem;
}

#fc-wrapper-2025-26 .fc_mv_ttl_wrap .fc_summary_txt {
    text-align: center;
    padding-bottom: 3rem;
}

#cg-fc-wrapper .fc_coming_soon a {
    display: inline-block;
    font-size: 2rem;
    margin: 3% 0;
}

#rw-fc-wrapper .fc_mv_img {
    position: relative;
}

#rw-fc-wrapper .fc_mv_img::before {
    content: '';
    position: absolute;
    top: -10%;
    right: 8.0rem;
    background: var(--yellow);
    height: 16.0rem;
    width: 0.2rem;
}

#rw-fc-wrapper .fc_mv_img::after {
    content: '';
    background: url(img/fanclub/cp_logo.png) no-repeat center center / contain;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60%;
    height: 15vh;
}

/* 
#fc-wrapper-2025-26 .fc_mv_bf_wrap .fc_mv_bf_ttl {
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    padding: 3.0rem 0;
}

#fc-wrapper-2025-26 .fc_mv_bf_wrap .fc_mv_bf_txt {
    text-align: center;
    padding-bottom: 5.0rem;
} 
*/

/*--- LINE --- */
#rw-fc-wrapper .fc_mv_line,
#fc-wrapper-2025-26 .fc_mv_line {
    display: flex;
    align-items: center;
    background: var(--black);
    position: fixed;
    z-index: 10;
    top: 75vh;
    right: 0;
    width: 20%;
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_left,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_left {
    width: 75%;
    padding: 1rem;
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_left p,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_left p {
    color: var(--white);
    font-weight: bold;
    display: flex;
    align-items: center;
    line-height: 1.2;
    font-size: 1.4rem;
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_left p::before,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_left p::before {
    content: '';
    background: url(img/fanclub/fc_mv_line_icon.png) no-repeat center center / contain;
    width: 3.4rem;
    height: 3.4rem;
    margin-right: 1.0rem;
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_left a,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_left a {
    color: var(--white);
    font-weight: bold;
    background: #5ac263;
    display: inline-block;
    margin-top: 1.0rem;
    padding: 0.5rem 3.5rem 0.5rem 1.0rem;
    position: relative;
}

#rw-fc-wrapper .fc_mv_line_contain a .allow,
#fc-wrapper-2025-26 .fc_mv_line_contain a .allow {
    position: absolute;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2.0rem;
    top: 0;
    right: 2.0rem;
}

#rw-fc-wrapper .fc_mv_line_contain a .allow::before,
#fc-wrapper-2025-26 .fc_mv_line_contain a .allow::before {
    content: "";
    position: absolute;
    left: 22px;
    width: 10px;
    height: 10px;
    border-top: 2px solid var(--white);
    border-right: 2px solid var(--white);
    top: 10px;
    transform: rotate(0deg);
}

#rw-fc-wrapper .fc_mv_line_contain a .allow::after,
#fc-wrapper-2025-26 .fc_mv_line_contain a .allow::after {
    content: "";
    position: absolute;
    top: 15px;
    left: 19px;
    width: 13px;
    height: 2px;
    background: var(--white);
    transform: rotate(135deg);
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_right,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_right {
    width: 30%;
    margin: 1rem;
}

#rw-fc-wrapper .fc_mv_line_contain.fc_mv_line_contain_right img,
#fc-wrapper-2025-26 .fc_mv_line_contain.fc_mv_line_contain_right img {
    object-fit: contain;
}

/* ------- */

/*------------------------------------
    fc_grade
------------------------------------ */
#rw-fc-wrapper .fc_grade_inner,
#rw-fc-wrapper .fc_process_inner {
    width: 100%;
}

#rw-fc-wrapper .fc_grade_flex {
    display: flex;
    justify-content: center;
    align-items: stretch;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap {
    background: var(--yellow);
    width: 30%;
    position: relative;
    padding: 12.0rem 3.0rem 0 10.0rem;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap h3.fc_grade_ttl {
    font-size: 12.0rem;
    letter-spacing: 1rem;
    line-height: 1;
    transform: rotate(90deg);
    display: flex;
    flex-direction: column;
    margin-top: 2.0rem;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap::after {
    content: '';
    background: url(img/fanclub/kachiboshi.png) no-repeat top center / cover;
    width: 80%;
    height: 40vh;
    bottom: 0;
    position: absolute;
    left: 50%;
    transform: translateY(-0%) translateX(-50%);
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap h3.fc_grade_ttl::before {
    content: 'GRADE';
    font-size: 12.0rem;
    letter-spacing: 1rem;
    -webkit-text-stroke: 2px var(--black);
    color: transparent;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap p {
    background: var(--black);
    color: var(--yellow);
    font-size: 2.2rem;
    padding: 0 2rem;
    width: max-content;
    position: absolute;
    top: 50%;
    left: 60%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_txt_wrap {
    background: #211815;
    width: 70%;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_txt_wrap ul {
    padding: 10rem;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_txt_wrap li {
    color: var(--white);
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl {
    font-size: 2.4rem;
    font-weight: bold;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box li {
    position: relative;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.ptm::before {
    content: '';
    position: absolute;
    top: -4rem;
    left: -6rem;
    width: 100%;
    height: 12rem;
    background: url(img/fanclub/fc_grade_ptm.png) no-repeat left / contain;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.ptm::after,
#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.gld::after,
#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.slv::after,
#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.yel::after {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 8.0rem;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: italic;
    letter-spacing: 0.6rem;
    color: transparent;
    opacity: 0.3;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.ptm::after {
    content: 'Platinum';
    -webkit-text-stroke: 2px #eeeeec;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.gld::before {
    content: '';
    position: absolute;
    top: -4rem;
    left: -6rem;
    width: 100%;
    height: 12rem;
    background: url(img/fanclub/fc_grade_gld.png) no-repeat left / contain;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.gld::after {
    content: 'Gold';
    -webkit-text-stroke: 2px #ddbe35;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.slv::before {
    content: '';
    position: absolute;
    top: -4rem;
    left: -6rem;
    width: 100%;
    height: 12rem;
    background: url(img/fanclub/fc_grade_slv.png) no-repeat left / contain;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.slv::after {
    content: 'Silver';
    -webkit-text-stroke: 2px #d8d8d8;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.yel::before {
    content: '';
    position: absolute;
    top: -4rem;
    left: -6rem;
    width: 100%;
    height: 12rem;
    background: url(img/fanclub/fc_grade_yel.png) no-repeat left / contain;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.yel::after {
    content: 'Yell';
    -webkit-text-stroke: 2px #eabd47;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_hr {
    font-weight: bold;
    margin: 3.4rem 0 2.0rem;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_txt {
    margin-bottom: 10.0rem;
}

#rw-fc-wrapper .fc_grade_flex .fc_grade_box li:last-child .fc_grade_box_txt {
    margin-bottom: 0;
}


/*------------------------------------
    fc_benefit
------------------------------------ */
#rw-fc-wrapper .fc_benefit_ttl_wrap {
    text-align: center;
    position: relative;
}

#rw-fc-wrapper .fc_benefit_ttl {
    font-size: 24.0rem;
    -webkit-text-stroke: 2px var(--yellow);
    color: transparent;
    text-align: right;
}

#rw-fc-wrapper .fc_benefit_ttl_wrap p {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 3.2rem;
    font-size: 3.0rem;
    font-weight: bold;
}

#rw-fc-wrapper .fc_benefit_table {
    margin-bottom: 20.0rem;
}

#rw-fc-wrapper .fc_benefit_table th {
    font-size: 2.2rem;
    padding: 8.0rem 0 4.4rem;
    border-bottom: solid 1px var(--yellow);
}

#rw-fc-wrapper .fc_benefit_table th span {
    font-size: 2.2rem;
}

#rw-fc-wrapper .fc_benefit_table th.fc_benefit_grade p {
    background: var(--black);
    width: 95%;
    margin-left: auto;
    font-size: 2.0rem;
}

#rw-fc-wrapper .fc_benefit_table th.fc_benefit_grade p span {
    font-size: 3.0rem;
    display: block;
}

#rw-fc-wrapper .fc_benefit_table tr.fc_banefit_table_hr th {
    padding: 0;
    text-align: center;
    border-bottom: 0;
    width: calc(100% / 5);
}

#rw-fc-wrapper .fc_benefit_table td {
    font-size: 2.6rem;
    font-weight: bold;
    padding: 8.0rem 0 4.4rem;
    text-align: center;
    border-bottom: solid 1px var(--yellow);
}

#rw-fc-wrapper .fc_benefit_table td span {
    font-size: 2.2rem;
}

/*------------------------------------
    fc_goods
------------------------------------ */
#rw-fc-wrapper .fc_goods_ttl {
    font-size: 4.0rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 12.0rem;
}

#rw-fc-wrapper .fc_goods_ttl span {
    font-size: 4.0rem;
    color: var(--yellow);
}

#rw-fc-wrapper .fc_goods_list_ttl {
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 8.0rem;
}

#rw-fc-wrapper .fc_goods_img {
    margin-bottom: 12.0rem;
}

#rw-fc-wrapper .fc_kachiboshi_wrap {
    display: flex;
    justify-content: right;
    align-items: center;
}

#rw-fc-wrapper .fc_kachiboshi_wrap p {
    position: relative;
    display: inline-block;
    margin: 3.0rem 3.2rem 3.0rem 0;
    padding: 3.5rem 2.5rem;
    min-width: 120px;
    max-width: 100%;
    color: var(--black);
    font-size: 2.0rem;
    background: #FFF;
    border: solid 2px var(--black);
    box-sizing: border-box;
    border-radius: 1rem;
    font-weight: bold;
}

#rw-fc-wrapper .fc_kachiboshi_wrap p::before {
    content: "";
    position: absolute;
    top: 54%;
    right: -29px;
    margin-top: -12px;
    border: 8px solid transparent;
    border-left: 22px solid #FFF;
    z-index: 2;
}

#rw-fc-wrapper .fc_kachiboshi_wrap p::after {
    content: "";
    position: absolute;
    top: 55%;
    right: -35px;
    margin-top: -13px;
    border: 8px solid transparent;
    border-left: 25px solid var(--black);
    z-index: 1;
}

#rw-fc-wrapper .fc_kachiboshi_wrap .fc_kachiboshi_img {
    width: 15%;
}

/**/
#rw-fc-wrapper .fc_goods_list {
    counter-reset: item;
    position: relative;
}

#rw-fc-wrapper .fc_goods_list li {
    margin: 3.6rem 0;
    cursor: pointer;
}

#rw-fc-wrapper .fc_goods_list li::before {
    content: counter(item);
    display: inline-block;
    counter-increment: item;
    width: 3.2rem;
    height: 3.2rem;
    font-size: 2.0rem;
    font-weight: bold;
    background: var(--black);
    color: var(--yellow);
    border-radius: 50%;
    text-align: center;
    margin-right: 2.0rem;
}

#rw-fc-wrapper .fc_goods_list li p {
    font-size: 2.2rem;
    font-weight: bold;
    color: var(--black);
    display: inline-block;
}

#rw-fc-wrapper .fc_goods_list li p:hover {
    color: var(--yellow);
    text-decoration: underline;
}


#rw-fc-wrapper .fc_goods_list li p span {
    font-weight: bold;
    color: var(--yellow);
    display: inline-block;
    vertical-align: middle;
    font-size: 1.8rem;
    margin-left: 0.5rem;
}

#rw-fc-wrapper .modal__wrapper {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
}

#rw-fc-wrapper .modal__layer {
    height: 100%;
    background: rgba(50, 50, 50, .85);
    cursor: pointer;
}

#rw-fc-wrapper .modal__container {
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -55%);
    width: min(calc(100% - 40px), 1000px);
    height: calc(100% - 150px);
    padding: 20px;
    background: #fff;
}

#rw-fc-wrapper .modal__inner {
    position: relative;
    overflow-y: scroll;
    height: 100%;
    padding: 80px 20px 20px;
}

#rw-fc-wrapper .modal__title {
    font-size: 2.8rem;
    font-weight: bold;
}

#rw-fc-wrapper .modal__close {
    cursor: pointer;
    transition: opacity .6s;
    text-align: center;
    font-weight: bold;
    font-size: 2.4rem;
}

#rw-fc-wrapper .modal__close:hover {
    opacity: .6;
    text-decoration: underline;
}

#rw-fc-wrapper .modal__text {
    margin-top: 30px;
}

#rw-fc-wrapper .fc_goods_ov_wrap .fc_goods_ov {
    margin-bottom: 2.0rem;
}

#rw-fc-wrapper .fc_goods_ov_wrap table tr {
    vertical-align: top;
}

#rw-fc-wrapper .fc_goods_ov_wrap table th {
    font-weight: bold;
    font-size: 1.6rem;
    margin-right: 1.0rem;
    width: 5%;
}

#rw-fc-wrapper .fc_goods_contain_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#rw-fc-wrapper .fc_goods_contain_wrap::before {
    content: "";
    display: block;
    width: calc((100% / 4) - 1rem);
    margin: 0.5rem;
    order: 1;
}

#rw-fc-wrapper .fc_goods_contain_wrap::after {
    content: "";
    display: block;
    width: calc((100% / 4) - 1rem);
    margin: 0.5rem;
}

#rw-fc-wrapper .fc_goods_contain_wrap .fc_goods_contain {
    width: calc((100% / 4) - 1rem);
    margin: 4.0rem 0.5rem;
}

#rw-fc-wrapper .fc_goods_contain_wrap .fc_goods_one_column {
    width: 100%;
}

#rw-fc-wrapper .fc_goods_contain_wrap .fc_goods_contain figure {
    background: var(--black-a010);
    padding: 3rem;
}

#rw-fc-wrapper .fc_goods_contain_wrap .fc_goods_contain p {
    text-align: center;
    font-weight: bold;
    font-size: 2.4rem;
    margin-top: 1.6rem;
}

/**/

/*------------------------------------
    fc_process
------------------------------------ */
#rw-fc-wrapper #fc_process,
#fc-wrapper-2025-26 #fc_process {
    position: sticky;
    top: 11.0rem;
}

#rw-fc-wrapper .fc_process_inner {
    background: #ccc;
    padding-bottom: 28.0rem;
}

#fc-wrapper-2025-26 .fc_process_inner {
    background: var(--white);
    padding-bottom: 28.0rem;
}

#rw-fc-wrapper .fc_process_ttl_wrap,
#fc-wrapper-2025-26 .fc_process_ttl_wrap {
    text-align: center;
}

#rw-fc-wrapper .fc_process_ttl_wrap .fc_process_ttl,
#fc-wrapper-2025-26 .fc_process_ttl_wrap .fc_process_ttl {
    font-size: 14.0rem;
    color: var(--yellow);
}

#rw-fc-wrapper .fc_process_ttl_wrap p,
#fc-wrapper-2025-26 .fc_process_ttl_wrap p {
    font-weight: bold;
    font-size: 2.2rem;
}


/**/
#rw-fc-wrapper .fc_process_wrap,
#fc-wrapper-2025-26 .fc_process_wrap {
    display: flex;
    justify-content: space-between;
    position: relative;
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
}

#rw-fc-wrapper .fc_process_contain,
#fc-wrapper-2025-26 .fc_process_contain {
    width: 60vw;
}

#rw-fc-wrapper .fc_process_contain div,
#fc-wrapper-2025-26 .fc_process_contain div {
    padding-top: 50vh;
    text-align: center;
}

#rw-fc-wrapper .fc_process_contain div:last-child,
#fc-wrapper-2025-26 .fc_process_contain div:last-child {
    padding-bottom: 50vh;
}

#rw-fc-wrapper .fc_process_contain div h2,
#fc-wrapper-2025-26 .fc_process_contain div h2 {
    border: solid 2px var(--black);
    border-radius: 50%;
    font-size: 5.0rem;
    text-align: center;
    line-height: 1;
    padding: 2rem;
    width: 30%;
    margin: 0 auto 12rem;
}

#rw-fc-wrapper .fc_process_contain div h2 span,
#fc-wrapper-2025-26 .fc_process_contain div h2 span {
    display: block;
    font-weight: bold;
    font-size: 2.0rem;
    letter-spacing: 0.1rem;
}

#rw-fc-wrapper .fc_process_contain p,
#fc-wrapper-2025-26 .fc_process_contain p {
    font-size: 2.4rem;
    font-weight: bold;
}

#rw-fc-wrapper .fc_process_img,
#fc-wrapper-2025-26 .fc_process_img {
    width: 40vw;
    height: 100vh;
    display: flex;
    align-items: center;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
}

#rw-fc-wrapper .fc_process_img p,
#fc-wrapper-2025-26 .fc_process_img p {
    height: 80vh;
    margin: auto;
    display: block;
    visibility: hidden;
    position: absolute;
    top: 20vh;
    bottom: 0;
    transition: .8s;
    opacity: 0;
}

#rw-fc-wrapper .fc_process_img p:first-child,
#rw-fc-wrapper .fc_process_img p.active,
#fc-wrapper-2025-26 .fc_process_img p:first-child,
#fc-wrapper-2025-26 .fc_process_img p.active {
    visibility: visible;
    opacity: 1;
}


/**/

#rw-fc-wrapper .fc_line_banner,
#fc-wrapper-2025-26 .fc_line_banner {
    margin-top: -8rem;
    position: relative;
    z-index: 2;
}

/*------------------------------------
    fc_faq
------------------------------------ */
#rw-fc-wrapper .fc_faq_ttl_wrap,
#fc-wrapper-2025-26 .fc_faq_ttl_wrap {
    position: relative;
}

#rw-fc-wrapper .fc_faq_ttl_wrap .fc_faq_ttl,
#fc-wrapper-2025-26 .fc_faq_ttl_wrap .fc_faq_ttl {
    font-size: 24.0rem;
    -webkit-text-stroke: 2px var(--yellow);
    color: transparent;
}

#rw-fc-wrapper .fc_faq_ttl_wrap p,
#fc-wrapper-2025-26 .fc_faq_ttl_wrap p {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 3.2rem;
    font-size: 3.0rem;
    font-weight: bold;
    text-align: center;
}

#rw-fc-wrapper .fc_faq_accordion_wrap,
#fc-wrapper-2025-26 .fc_faq_accordion_wrap {
    position: relative;
    padding-bottom: 10rem;
}

#rw-fc-wrapper .fc_faq_accordion_wrap::after {
    content: '';
    background: url(img/fanclub/cp_logo.png) no-repeat center center / contain;
    width: 100%;
    height: 20vh;
    position: absolute;
    bottom: 0;
}

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

    /*------------------------------------
        fc_mv
    ------------------------------------ */
    #fc-wrapper-2025-26 .fc_mv_inner {
        padding-bottom: 5.0rem;
    }

    #rw-fc-wrapper .fc_mv_inner,
    #cg-fc-wrapper .fc_mv_inner,
    #fc-wrapper-2025-26 .fc_mv_inner {
        width: 90%;
    }

    #rw-fc-wrapper .fc_mv_ttl,
    #cg-fc-wrapper .fc_mv_ttl,
    #fc-wrapper-2025-26 .fc_mv_ttl {
        font-size: 7.2rem;
        padding: 6.0rem 0 3.0rem;
    }

    #rw-fc-wrapper .fc_mv_ttl span,
    #cg-fc-wrapper .fc_mv_ttl span,
    #fc-wrapper-2025-26 .fc_mv_ttl span {
        font-size: 7.2rem;
    }

    #rw-fc-wrapper .fc_mv_ttl_wrap p,
    #cg-fc-wrapper .fc_mv_ttl_wrap p {
        margin: 4.0rem 0 8.0rem;
    }

    #fc-wrapper-2025-26 .fc_mv_ttl_wrap p {
        margin: 3rem 0;
    }

    #fc-wrapper-2025-26 .fc_mv_ttl_wrap .fc_sub_ttl {
        font-size: 2.2rem;
        padding-bottom: 0;
    }

    #fc-wrapper-2025-26 .fc_mv_ttl_wrap .fc_summary_txt {
        padding-bottom: 0;
    }

    #rw-fc-wrapper .fc_mv_img::before {
        height: 8.0rem;
        top: -15%;
        right: 4.0rem;
    }

    #rw-fc-wrapper .fc_mv_img::after {
        width: 70%;
        height: 5vh;
    }

    #rw-fc-wrapper .fc_mv_line,
    #fc-wrapper-2025-26 .fc_mv_line {
        display: none;
    }

    #fc-wrapper-2025-26 .fc_mv_bf_wrap .fc_mv_bf_ttl {
        font-size: 2.0rem;
    }

    /*------------------------------------
        fc_grade
    ------------------------------------ */
    #rw-fc-wrapper .fc_grade_flex {
        display: block;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap {
        width: 100%;
        padding: 2.0rem 4.0rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap::after {
        top: 50%;
        bottom: 50%;
        left: 17%;
        transform: translateY(-50%) translateX(-50%);
        width: 25%;
        height: 13vh;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap h3.fc_grade_ttl {
        transform: rotate(0deg);
        font-size: 6.0rem;
        letter-spacing: 0.3rem;
        flex-direction: column-reverse;
        align-items: end;
        margin-top: 0;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap h3.fc_grade_ttl::before {
        font-size: 6.0rem;
        letter-spacing: 0.3rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_ttl_wrap p {
        top: 80%;
        left: 26%;
        z-index: 1;
        font-size: 1.6rem;
        padding: 0 1rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_txt_wrap {
        width: 100%;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_txt_wrap ul {
        padding: 8.0rem 4.0rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl {
        font-size: 2.0rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_txt {
        margin-bottom: 5.0rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_hr {
        margin: 2.4rem 0 1.0rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.ptm::before,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.gld::before,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.slv::before,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.yel::before {
        top: -3rem;
        left: -3rem;
        height: 8rem;
    }

    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.ptm::after,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.gld::after,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.slv::after,
    #rw-fc-wrapper .fc_grade_flex .fc_grade_box .fc_grade_box_ttl.yel::after {
        font-size: 4.2rem;
        letter-spacing: 0.2rem;
    }

    /*------------------------------------
        fc_benefit
    ------------------------------------ */
    #rw-fc-wrapper .fc_benefit_ttl_wrap p {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_benefit_ttl {
        font-size: 8.0rem;
    }

    #rw-fc-wrapper .fc_benefit_inner {
        overflow-x: scroll;
    }

    #rw-fc-wrapper .fc_benefit_table {
        width: 70.0rem;
        margin: 2.0rem;
    }

    #rw-fc-wrapper .fc_benefit_table th,
    #rw-fc-wrapper .fc_benefit_table td {
        color: #303263;
        font-size: 1.6rem;
        text-align: center;
        border: solid 1px #303263;
        padding: 0.5rem;
    }

    #rw-fc-wrapper .fc_benefit_table th span,
    #rw-fc-wrapper .fc_benefit_table td span {
        font-size: 1.4rem;
    }

    #rw-fc-wrapper .fc_benefit_table th.fc_benefit_grade p {
        background: var(--black-a005);
        margin: 0;
        width: 100%;
        font-size: 1.6rem;
    }

    #rw-fc-wrapper .fc_benefit_table th.fc_benefit_grade p span {
        display: none;
    }


    /*------------------------------------
        fc_goods
    ------------------------------------ */
    #rw-fc-wrapper .fc_goods_ttl,
    #rw-fc-wrapper .fc_goods_ttl span {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_goods_ttl {
        margin: 6.0rem auto 4.0rem;
    }

    #rw-fc-wrapper .fc_goods_list {
        width: 90%;
        margin: 0 auto;
    }

    #rw-fc-wrapper .fc_goods_img {
        margin-bottom: 6.0rem;
    }

    #rw-fc-wrapper .fc_goods_list_ttl {
        margin-bottom: 4.0rem;
    }

    #rw-fc-wrapper .fc_goods_list li::before {
        font-size: 1.6rem;
        width: 2.6rem;
        height: 2.6rem;
        margin-right: 1.0rem;
        vertical-align: middle;
    }

    #rw-fc-wrapper .fc_goods_list li p {
        font-size: 1.8rem;
        width: 85%;
        vertical-align: middle;
    }

    #rw-fc-wrapper .fc_goods_contain_wrap .fc_goods_contain {
        width: 100%;
        margin: 2rem 0;
    }

    #rw-fc-wrapper .modal__container {
        top: 62%;
    }

    #rw-fc-wrapper .modal__inner {
        padding: 40px 10px 10px;
    }

    #rw-fc-wrapper .modal__title {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_goods_ov_wrap table th,
    #rw-fc-wrapper .fc_goods_ov_wrap table td {
        display: block;
        width: 100%;
        font-size: 1.4rem;
    }

    #rw-fc-wrapper .fc_goods_ov_wrap table th.fc_goods_spec {
        margin-top: 1.0rem;
    }

    #rw-fc-wrapper .fc_kachiboshi_wrap {
        flex-direction: column;
    }

    #rw-fc-wrapper .fc_kachiboshi_wrap p {
        margin: 1.5rem auto 5.0rem;
        width: 90%;
    }

    #rw-fc-wrapper .fc_kachiboshi_wrap p::before {
        top: auto;
        bottom: -21%;
        right: 50%;
        transform: rotate(90deg);
    }

    #rw-fc-wrapper .fc_kachiboshi_wrap p::after {
        top: auto;
        bottom: -27%;
        right: 49%;
        transform: rotate(90deg);
        border: 10px solid transparent;
        border-left: 26px solid var(--black);
    }

    #rw-fc-wrapper .fc_kachiboshi_wrap .fc_kachiboshi_img {
        width: 25%;
    }

    /*------------------------------------
        fc_process
    ------------------------------------ */
    #rw-fc-wrapper .fc_process_ttl_wrap .fc_process_ttl,
    #fc-wrapper-2025-26 .fc_process_ttl_wrap .fc_process_ttl {
        font-size: 7.0rem;
    }

    #rw-fc-wrapper .fc_process_ttl_wrap p,
    #fc-wrapper-2025-26 .fc_process_ttl_wrap p {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_process_wrap,
    #fc-wrapper-2025-26 .fc_process_wrap {
        display: block;
    }

    #rw-fc-wrapper .fc_process_inner,
    #fc-wrapper-2025-26 .fc_process_inner {
        padding-bottom: 14.0rem;
    }

    #rw-fc-wrapper .fc_process_contain,
    #fc-wrapper-2025-26 .fc_process_contain {
        width: 100%;
    }

    #rw-fc-wrapper .fc_process_contain div,
    #fc-wrapper-2025-26 .fc_process_contain div {
        padding-top: 10vh;
    }

    #rw-fc-wrapper .fc_process_contain div:last-child,
    #fc-wrapper-2025-26 .fc_process_contain div:last-child {
        padding-bottom: 0;
    }

    #rw-fc-wrapper .fc_process_contain div h2,
    #fc-wrapper-2025-26 .fc_process_contain div h2 {
        margin: 0 auto 3.0rem;
        font-size: 3.0rem;
        padding: 1.5rem;
        width: 25%;
    }

    #rw-fc-wrapper .fc_process_contain div h2 span,
    #fc-wrapper-2025-26 .fc_process_contain div h2 span {
        font-size: 1.4rem;
    }

    #rw-fc-wrapper .fc_process_contain p,
    #fc-wrapper-2025-26 .fc_process_contain p {
        font-size: 1.8rem;
        top: 0;
        margin: 0 auto;
    }

    #rw-fc-wrapper .fc_process_img,
    #fc-wrapper-2025-26 .fc_process_img {
        width: 100%;
        height: 80vh;
    }

    #rw-fc-wrapper .fc_process_img p,
    #fc-wrapper-2025-26 .fc_process_img p {
        height: 75vh;
    }

    /*------------------------------------
        fc_faq
    ------------------------------------ */
    #rw-fc-wrapper .fc_faq_ttl_wrap .fc_faq_ttl,
    #fc-wrapper-2025-26 .fc_faq_ttl_wrap .fc_faq_ttl {
        font-size: 12.0rem;
    }

    #rw-fc-wrapper .fc_faq_ttl_wrap p,
    #fc-wrapper-2025-26 .fc_faq_ttl_wrap p {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_faq_acc_ttl h3,
    #fc-wrapper-2025-26 .fc_faq_acc_ttl h3 {
        padding-right: 10%;
    }

    #rw-fc-wrapper .fc_faq_acc_ttl span,
    #fc-wrapper-2025-26 .fc_faq_acc_ttl span {
        font-size: 2.2rem;
    }

    #rw-fc-wrapper .fc_faq_acc_box p,
    #fc-wrapper-2025-26 .fc_faq_acc_box p {
        font-size: 1.6rem;
    }

    #rw-fc-wrapper .fc_faq_accordion_wrap::after,
    #fc-wrapper-2025-26 .fc_faq_accordion_wrap::after {
        height: 10vh;
    }
}

/* --- */

#fc-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
}

#fc-wrapper::after {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: var(--yellow);
    transform: skewY(-25deg);
    transform-origin: top right;
}

#fc-wrapper .fc_container {
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
}

#fc-wrapper .fc_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#fc-wrapper .fc_ttl::after {
    content: 'ファンクラブについて';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*------------------------------------
    fc_recruit
------------------------------------ */
#fc-wrapper .fc_recruit {
    background: var(--white);
    padding-bottom: 6.0rem;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_recruit_ttl {
    background: var(--black);
    color: var(--white);
    text-align: center;
    font-size: 2.4rem;
    padding: 3.6rem;
    margin-bottom: 0;
}

#fc-wrapper .fc_recruit_pic {
    width: 10%;
    margin: 5.6rem auto 0;
}

#fc-wrapper .fc_recruit_txt {
    text-align: center;
    line-height: 4.5rem;
    margin: 3.7rem auto;
}

#fc-wrapper .fc_recruit_cp {
    text-align: center;
    font-size: 5.2rem;
    font-weight: bold;
}

#fc-wrapper .fc_recruit_cp::before {
    content: '“';
    color: var(--yellow);
    font-size: 5.2rem;
    padding-right: 2.4rem;
}

#fc-wrapper .fc_recruit_cp::after {
    content: '”';
    color: var(--yellow);
    font-size: 5.2rem;
    padding-left: 2.2rem;
}

#fc-wrapper .fc_recruit_cp span {
    color: var(--yellow);
    font-size: 5.2rem;
}

/*------------------------------------
    fc_login
------------------------------------ */
#blog-wrapper .fc_login,
#fc-wrapper .fc_login {
    margin-bottom: 4.0rem;
    background: var(--white);
    padding: 2.0rem;
}

#blog-wrapper .fc_login_inner,
#fc-wrapper .fc_login_inner {
    background: var(--yellow);
    padding: 4rem 4rem 7rem;
}

#blog-wrapper .fc_login_pic,
#fc-wrapper .fc_login_pic {
    width: 15%;
    margin: 0 auto;
}

#blog-wrapper .fc_login_ttl,
#fc-wrapper .fc_login_ttl {
    font-size: 4.0rem;
    font-weight: bold;
    text-align: center;
    margin: 2rem auto 3.6rem;
}

#blog-wrapper .fc_login_txt,
#fc-wrapper .fc_login_txt {
    font-size: 1.8rem;
    line-height: 3.1rem;
    text-align: center;
}

#blog-wrapper .fc_login .swpm-password-input,
#fc-wrapper .fc_login .swpm-password-input {
    position: relative;
    margin-top: 6.5rem;
}

#blog-wrapper .top_fc_entry_input,
#fc-wrapper .top_fc_entry_input {
    width: 100%;
    padding: 2.8rem 9rem 2.8rem 2.4rem;
    font-size: 1.6rem;
    border: 0;
    box-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.12) inset;
}

#blog-wrapper .fc_login .swpm-password-input span,
#fc-wrapper .fc_login .swpm-password-input span {
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
}

#blog-wrapper .eye_icon,
#fc-wrapper .eye_icon {
    background-image: url(img/top/eye_icon.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
}

#blog-wrapper .eye_slash_icon,
#fc-wrapper .eye_slash_icon {
    background-image: url(img/top/eye_slash_icon.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
}

#blog-wrapper .fc_login .view_more_btn,
#fc-wrapper .fc_login .view_more_btn {
    margin: 4.8rem auto 0;
    text-align: center;
}

#blog-wrapper .fc_login .view_more_btn a,
#fc-wrapper .fc_login .view_more_btn a {
    padding-right: 11.9rem;
}

#blog-wrapper .fc_login .view_more_btn input,
#fc-wrapper .fc_login .view_more_btn input {
    border: 0;
    cursor: pointer;
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 18.7rem 2.5rem 3.2rem;
    font-size: 1.4rem;
}

#blog-wrapper .fc_login .swpm-login-form-inner .view_more_btn .allow,
#fc-wrapper .fc_login .swpm-login-form-inner .view_more_btn .allow {
    top: 5rem;
}

#blog-wrapper .swpm-logged-logout-link,
#fc-wrapper .swpm-logged-logout-link {
    text-align: center;
    margin-top: 4.8rem;
}

#blog-wrapper .swpm-logged-logout-link a,
#fc-wrapper .swpm-logged-logout-link a {
    font-weight: bold;
    color: var(--black);
}

/*------------------------------------
    fc_grade
------------------------------------ */
#fc-wrapper .fc_grade {
    background: var(--white);
    padding: 6.0rem 0;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_grade_ttl {
    text-align: center;
    position: relative;
    font-size: 3.2rem;
    padding-bottom: 3.0rem;
    margin: 0;
}

#fc-wrapper .fc_grade_ttl::after {
    content: '会員グレード';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 1.6rem;
}

#fc-wrapper .fc_grade_wrap {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 90%;
    margin: 3.8rem auto 0;
}

#fc-wrapper .fc_grade_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 50%;
}

#fc-wrapper .fc_grade_contain:nth-child(1) {
    margin-right: 2rem;
}

#fc-wrapper .fc_grade_contain:nth-child(2) {
    margin-left: 2rem;
}

#fc-wrapper .fc_grade_contain_ttl {
    text-align: center;
    position: relative;
    padding: 2.0rem 0 1.8rem;
}

#fc-wrapper .fc_grade_contain_ttl p {
    font-size: 2.2rem;
    font-weight: bold;
}

#fc-wrapper .fc_grade_contain:nth-child(1) .fc_grade_contain_ttl {
    color: var(--white);
    background: linear-gradient(to top, #F5317C, #FFA701);
}

#fc-wrapper .fc_grade_contain:nth-child(2) .fc_grade_contain_ttl {
    background: var(--yellow);
}

#fc-wrapper .fc_grade_contain_ttl span {
    font-size: 1.2rem;
}

#fc-wrapper .fc_grade_contain_pic {
    width: 10%;
    margin: 0 auto 0.8rem;
}

#fc-wrapper .fc_grade_contain_txt_wrap {
    width: 80%;
    margin: 3.2rem auto 0;
}

#fc-wrapper .fc_grade_contain_txt {
    padding: 2.4rem 0 5.1rem;
}

#fc-wrapper .fc_grade_contain_price {
    text-align: center;
    font-weight: bold;
    border-bottom: solid 1px var(--black-a010);
    padding-bottom: 1.8rem;
}

#fc-wrapper .fc_grade_contain_btn {
    text-align: center;
    margin-bottom: 3.2rem;
}

#fc-wrapper .fc_grade_contain_btn .fc_modal_open {
    position: relative;
    background: var(--black);
    color: var(--white);
    padding: 1.0rem 9.7rem 1.0rem 2.0rem;
    font-size: 1.4rem;
}

#fc-wrapper .fc_grade_contain_btn .plus {
    position: absolute;
    background: var(--white);
    border-radius: 50%;
    width: 2.0rem;
    height: 2.0rem;
    margin-left: 6.2rem;
    top: 1.0rem;
    right: 1.6rem;
}

#fc-wrapper .fc_grade_contain_btn .plus::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    width: 7px;
    height: 1px;
    background: var(--link-blue);
}

#fc-wrapper .fc_grade_contain_btn .plus::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    width: 1px;
    height: 7px;
    background: var(--link-blue);
}

#fc-wrapper .fc_grade_contain_btn .fc_modal_open:hover {
    color: rgb(255 255 255 / 0.8);
}

#fc-wrapper .fc_grade_contain_btn .fc_modal_open:hover .plus {
    background: rgb(255 255 255 / 0.8);
}

/*------------------------------------
    fc_benefit
------------------------------------ */
#fc-wrapper .fc_benefit {
    background: var(--white);
    padding: 6.0rem 0;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_benefit_ttl {
    text-align: center;
    position: relative;
    font-size: 3.2rem;
    padding-bottom: 3.0rem;
}

#fc-wrapper .fc_benefit_ttl::after {
    content: '特典内容';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 1.6rem;
}

#fc-wrapper .fc_benefit table {
    position: relative;
    width: 90%;
    margin: 3.8rem auto 0;
}

#fc-wrapper .fc_benefit table tr {
    border-bottom: solid 1px var(--black-a060);
    display: table-row;
}

#fc-wrapper .fc_benefit table th {
    background: var(--black);
    color: var(--white);
    text-align: center;
    padding: 2.4rem 1.2rem;
    width: 24%;
    font-weight: normal;
}

#fc-wrapper .fc_benefit table td {
    padding: 2.4rem;
    width: 38%;
    border-right: solid 1px var(--black-a060);
    text-align: center;
    background: var(--white);
}

#fc-wrapper .fc_benefit table tr.view_pc td:first-of-type {
    border-top: 0;
}

#fc-wrapper .fc_benefit table tr td.fc_benefit_hr {
    font-weight: bold;
}

#fc-wrapper .fc_benefit table tr td.fc_benefit_hr:nth-of-type(1) {
    color: var(--white);
    background: linear-gradient(to top, #F5317C, #FFA701);
}

#fc-wrapper .fc_benefit table tr td.fc_benefit_hr:nth-of-type(2) {
    background: var(--yellow)
}

#fc-wrapper .fc_benefit_pic {
    display: block;
    width: 12%;
    margin: 0 auto 0.4rem;
}

#fc-wrapper .fc_benefit table td.txt_lf {
    text-align: left;
    padding: 2.4rem 3.2rem;
}

/*------------------------------------
    fc_flow
------------------------------------ */
#fc-wrapper .fc_flow {
    background: var(--white);
    padding: 6.0rem 0;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_flow_ttl {
    text-align: center;
    position: relative;
    font-size: 3.2rem;
    padding-bottom: 3.0rem;
}

#fc-wrapper .fc_flow_ttl::after {
    content: '会員登録の流れ';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 1.6rem;
}

#fc-wrapper .fc_flow_wrap {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 90%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
}

#fc-wrapper .fc_flow_contain {
    background: var(--black-a005);
    width: calc(93% / 3);
    position: relative;
    z-index: 0;
    overflow: hidden;
    padding: 3.2rem 0 4.8rem;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_flow_contain::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 32%;
    z-index: 0;
    background: var(--black);
    transform: skewY(-15deg);
    transform-origin: top left;
}

#fc-wrapper .fc_flow_contain:last-child {
    margin-right: 0;
}

#fc-wrapper .fc_flow_contain_ttl {
    text-align: center;
    color: var(--white);
    position: relative;
    z-index: 1;
}

#fc-wrapper .fc_flow_contain_ttl p {
    font-size: 1.6rem;
    font-weight: bold;
    height: 5rem;
}

#fc-wrapper .fc_flow_contain_step {
    position: relative;
}

#fc-wrapper .fc_flow_contain_step span {
    font-size: 2.8rem;
    font-weight: bold;
}

#fc-wrapper .fc_flow_contain_step span:before {
    content: 'STEP';
    font-size: 1.2rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}

#fc-wrapper .fc_flow_contain_pic {
    width: 80%;
    margin: 1.8rem auto 2.4rem;
    position: relative;
    z-index: 1;
}

#fc-wrapper .fc_flow_contain_pic img {
    object-fit: contain;
}

#fc-wrapper .fc_flow_contain_txt {
    width: 80%;
    margin: 0 auto;
}

/*------------------------------------
    fc_line
------------------------------------ */
#fc-wrapper .fc_line {
    background: var(--white);
    padding: 6.0rem 0;
    margin-bottom: 4.0rem;
}

#fc-wrapper .fc_line_ttl {
    text-align: center;
    font-size: 2.4rem;
}

#fc-wrapper .fc_line_pic {
    width: 15%;
    margin: 3.7rem auto 3.2rem;
}

#fc-wrapper .fc_line_btn {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 2.5rem 0;
}

#fc-wrapper .fc_line_btn a {
    background: #06C755;
    color: var(--white);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 6.9rem 2.5rem 3.2rem;
}

#fc-wrapper .fc_line_btn .allow {
    position: absolute;
    background: var(--white);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2.0rem;
    top: 2.15rem;
    right: 2.0rem;
}

#fc-wrapper .fc_line_btn .allow::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 12px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #06c755;
    border-right: 2px solid #06c755;
}

#fc-wrapper .fc_line_btn .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: #06c755;
    transform: rotate(135deg);
}

#fc-wrapper .fc_line_btn a:hover {
    background: var(--black);
    color: #06C755;
    transition: 0.2s;
    box-shadow: none;
}

#fc-wrapper .fc_line_btn a:hover .allow {
    top: 1.95rem;
    right: 1.8rem;
    transition: 0.2s;
}

@media screen and (max-width: 768px) {
    #fc-wrapper {
        padding: 0 0 8.8rem;
    }

    #fc-wrapper .fc_container {
        width: 90%;
    }

    #fc-wrapper::after {
        top: 33%;
        transform: skewY(-30deg);
    }

    #fc-wrapper .fc_ttl {
        font-size: 5.6rem;
    }

    /*------------------------------------
        fc_recruit 
    ------------------------------------ */
    #fc-wrapper .fc_recruit {
        padding-bottom: 4.8rem;
    }

    #fc-wrapper .fc_recruit_ttl {
        font-size: 2.0rem;
        padding: 2.8rem;
    }

    #fc-wrapper .fc_recruit_pic {
        margin: 4.0rem auto 0;
        width: 7.0rem;
        height: 7.0rem;
    }

    #fc-wrapper .fc_recruit_cp {
        font-size: 3.2rem;
    }

    #fc-wrapper .fc_recruit_cp::before {
        font-size: 3.2rem;
    }

    #fc-wrapper .fc_recruit_cp::after {
        font-size: 3.2rem;
    }

    #fc-wrapper .fc_recruit_cp span {
        font-size: 3.2rem;
    }

    /*------------------------------------
        fc_login
    ------------------------------------ */
    #blog-wrapper .fc_login,
    #fc-wrapper .fc_login {
        padding: 1.0rem;
    }

    #blog-wrapper .fc_login_inner,
    #fc-wrapper .fc_login_inner {
        padding: 4.2rem 1.0rem 4.8rem;
    }

    #blog-wrapper .fc_login_pic,
    #fc-wrapper .fc_login_pic {
        width: 30%;
    }

    #blog-wrapper .fc_login_ttl,
    #fc-wrapper .fc_login_ttl {
        font-size: 3.2rem;
        white-space: nowrap;
        margin: 2rem auto 3.2rem;
    }

    #blog-wrapper .fc_login_txt,
    #fc-wrapper .fc_login_txt {
        font-size: 1.6rem;
        text-align: center;
    }

    #blog-wrapper .top_fc_entry_input,
    #fc-wrapper .top_fc_entry_input {
        padding: 2.8rem 7.0rem 2.8rem 2.4rem;
    }

    /*------------------------------------
        fc_grade 
    ------------------------------------ */
    #fc-wrapper .fc_grade {
        padding: 4.0rem 0;
        margin-bottom: 3.2rem;
    }

    #fc-wrapper .fc_grade_ttl {
        font-size: 2.4rem;
    }

    #fc-wrapper .fc_grade_ttl::after {
        font-size: 1.4rem;
    }

    #fc-wrapper .fc_grade_wrap {
        display: block;
    }

    #fc-wrapper .fc_grade_contain {
        width: 100%;
    }

    #fc-wrapper .fc_grade_contain:nth-child(2) {
        margin-left: 0;
    }

    #fc-wrapper .fc_grade_contain_pic {
        width: 4.8rem;
        height: 4.8rem;
    }

    #fc-wrapper .fc_grade_contain_price {
        padding-bottom: 1.1rem;
    }

    #fc-wrapper .fc_grade_contain_txt {
        padding: 2.0rem 0 4.4rem;
    }

    #fc-wrapper .fc_grade_contain_btn {
        padding-bottom: 2.8rem;
        margin-bottom: 2.4rem;
    }

    /*------------------------------------
        fc_benefit 
    ------------------------------------ */
    #fc-wrapper .fc_benefit {
        padding: 4.0rem 0;
        position: relative;
        z-index: 0;
    }

    #fc-wrapper .fc_benefit_ttl {
        font-size: 2.4rem;
    }

    #fc-wrapper .fc_benefit_ttl::after {
        font-size: 1.4rem;
    }

    #fc-wrapper .fc_benefit table {
        margin: 2.0rem auto;
    }

    #fc-wrapper .fc_benefit table tr.view_pc {
        display: none;
    }

    #fc-wrapper .fc_benefit table td.txt_lf {
        padding: 2.4rem 1.6rem;
    }

    /*------------------------------------
        fc_flow
    ------------------------------------ */
    #fc-wrapper .fc_flow {
        padding: 4.0rem 0;
    }

    #fc-wrapper .fc_flow_ttl {
        font-size: 2.4rem;
    }

    #fc-wrapper .fc_flow_ttl::after {
        font-size: 1.4rem;
    }

    #fc-wrapper .fc_flow_wrap {
        display: block;
    }

    #fc-wrapper .fc_flow_contain {
        width: 100%;
        margin-bottom: 2.4rem;
        padding-bottom: 2.7rem;
    }

    #fc-wrapper .fc_flow_contain:last-of-type {
        margin-bottom: 0;
    }

    /*------------------------------------
        fc_line
    ------------------------------------ */
    #fc-wrapper .fc_line {
        padding: 3.6rem 0 4.0rem;
    }

    #fc-wrapper .fc_line_ttl {
        font-size: 2.0rem;
    }

    #fc-wrapper .fc_line_pic {
        display: none;
    }

    #fc-wrapper .fc_line_btn {
        margin: 3.7rem auto 0;
    }
}

/* =============================

    page-partners.php

==============================*/
#partners-wrapper {
    /*padding: 9rem 0 14.0rem;*/
    padding: 0rem 0 14.0rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a010);
    /*background-image: url(img/partners_bk.png);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;*/
    margin-top: -1rem;
}

#partners-wrapper .partners_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#partners-wrapper .partners_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#partners-wrapper .partners-season_ttl {
    padding: 11.0rem 0 6.0rem;
    margin-bottom: 0;
}

#partners-wrapper .partners_ttl::after {
    content: 'パートナー';
    font-size: 1.6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}

#partners-wrapper .partners-season_ttl::after {
    content: none;
}

#partners-wrapper .partners-season_txt {
    font-weight: bold;
    margin: 0 0 8.0rem;
}

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

    #partners-wrapper {
        background-image: unset;
        position: relative;
        background: unset;
    }

    #partners-wrapper::before {
        content: '';
        display: block;
        background: var(--black-a010);
        /*background-image: url(img/partners_bk_sp.png);
        background-repeat: no-repeat;
        background-position: top 200px right;
        background-size: cover;*/
        position: fixed;
        z-index: -1;
        top: 0%;
        right: 0;
        width: 100%;
        height: 100vh;
    }

    #partners-wrapper .partners_container {
        width: 90%;
    }

    #partners-wrapper .partners-season_txt {
        margin: 0 0 4.0rem;
    }

}

/*------------------------------------
    partners_flex
------------------------------------ */
#partners-wrapper .partners_flex {
    width: 100%;
    margin: 3.8rem 0;
    padding: 4rem;
    text-align: center;
    background: #fff;
}

#partners-wrapper .bp_ttl {
    font-size: 4.2rem;
    margin-top: 11.4rem;
}

#partners-wrapper .partners_flex h3 {
    margin-bottom: 0.5rem;
}

#partners-wrapper .partners_flex p {
    font-weight: bold;
    font-size: 1.4rem;
}

#partners-wrapper .partners_flex_center {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
}

#partners-wrapper .partners_flex_center.flex_start {
    justify-content: flex-start;
}

#partners-wrapper .partners_flex_center .partners_flex_cs {
    font-size: 1.8rem;
    font-weight: bold;
}

#partners-wrapper .partners_flex_between {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    margin: 3.8rem auto 0;
    flex-wrap: wrap;
    align-content: center;
}

#partners-wrapper .partners_flex_duo_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 44%;
    height: 120px;
    padding: 1rem;
    transition: 0.5s;
    margin: 0 3%;
    margin-bottom: 3.8rem;
    position: relative;
}


#partners-wrapper .partners_flex:first-of-type .partners_flex_duo_contain {
    width: 60%;
    height: 240px;
    padding: 3rem;
}

#partners-wrapper .partners_flex_trip_contain {
    box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.1);
    width: 31%;
    height: 100px;
    padding: 1rem;
    transition: 0.5s;
    margin: 0 1%;
    margin-bottom: 3.8rem;
    position: relative;
}

#partners-wrapper .partners_flex_duo_contain p.partners_name,
#partners-wrapper .partners_flex_trip_contain p.partners_name {
    font-size: 2rem;
    display: block;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: var(--black);
}

#partners-wrapper .partners_flex_duo_contain img,
#partners-wrapper .partners_flex_trip_contain img {
    object-fit: contain;
}

#partners-wrapper .partners_flex_duo_contain:hover,
#partners-wrapper .partners_flex_trip_contain:hover {
    box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

#partners-wrapper .partners_flex_duo_contain:hover .content,
#partners-wrapper .partners_flex_trip_contain:hover .content {
    box-shadow: none;
}

@media screen and (max-width: 768px) {
    #partners-wrapper .partners_ttl {
        font-size: 5.6rem;
        padding-top: 0;
    }

    #partners-wrapper .partners-season_ttl {
        font-size: 3rem;
        padding: 6.0rem 0 3.0rem;
        margin-bottom: 0;
    }

    #partners-wrapper .bp_ttl {
        font-size: 3.0rem;
        margin-top: 7.4rem;
    }

    #partners-wrapper .partners_flex {
        padding: 4rem 2rem;
    }

    #partners-wrapper .partners_flex:last-child {
        margin: 2.0rem 0;
    }

    #partners-wrapper .partners_flex:last-child .partners_flex_center {
        margin: 0;
    }

    #partners-wrapper .partners_flex_trip_contain,
    #partners-wrapper .partners_flex_duo_contain {
        width: 100%;
        height: 100px;
        margin: 0;
        margin-bottom: 2rem;
    }

    #partners-wrapper .partners_flex_duo_contain {
        box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.1);
    }

    #partners-wrapper .partners_flex:first-of-type .partners_flex_duo_contain {
        width: 100%;
        height: 130px;
        padding: 1rem;
    }

    #partners-wrapper .partners_flex:nth-of-type(3) .partners_flex_duo_contain,
    #partners-wrapper .partners_flex:nth-of-type(4) .partners_flex_duo_contain {
        width: 48%;
        margin: 2% auto;
        padding: 0.5rem;
        height: 50px;
    }
}

/* =============================

    page-contact.php

==============================*/
#contact-wrapper {
    margin-top: 17.0rem;
}

#contact-wrapper::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--yellow);
    width: 100vw;
    height: 75vh;
    z-index: -1;
    transform: skewY(-25deg);
    transform-origin: top left;
}

#contact-wrapper .contact_inner {
    max-width: 1040px;
    width: 80%;
    margin: 0 auto;
    padding-bottom: 10rem;
}

#contact-wrapper .contact_ttl_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

#contact-wrapper .contact_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 7.8rem;
}

#contact-wrapper .contact_ttl::after {
    content: "お問い合せ";
    font-size: 1.6rem;
    position: absolute;
    bottom: -1.0rem;
    left: 0;
}

#contact-wrapper .contact_form {
    width: 100%;
    background: var(--black-a005);
    padding: 5rem;
    font-size: 2.0rem;
}

#contact-wrapper .contact_form table {
    margin: 0;
    width: 100%;
}

#contact-wrapper .contact_form table th {
    margin-bottom: 2rem;
    display: block;
}

#contact-wrapper .contact_form option,
#contact-wrapper .contact_form button,
#contact-wrapper .contact_form input,
#contact-wrapper .contact_form select,
#contact-wrapper .contact_form textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    padding: 2rem 1.5rem;
    border: 1px solid #ddd;
    font-size: 1.4rem;
}

#contact-wrapper .contact_form option {}

#contact-wrapper .contact_form input:focus,
#contact-wrapper .contact_form select:focus,
#contact-wrapper .contact_form textarea:focus {
    outline: 1px solid #ccc;
}


#contact-wrapper .contact_form textarea,
#contact-wrapper .contact_form input {
    width: 100%;
    color: var(--black-a060);
}

#contact-wrapper .contact_form input.short,
#contact-wrapper .contact_form select {
    width: 50%;
}

#contact-wrapper .contact_form .comment_area {
    text-align: center;
    font-size: 1.6rem;
    padding: 3rem 0;
}

#contact-wrapper .contact_form .comment_area a {
    color: var(--black);
    font-weight: bold;
    font-size: 1.6rem;
    text-decoration: underline;
}

#contact-wrapper .contact_form .send_form_area {
    text-align: center;
    margin: 0 auto;
}

#contact-wrapper .contact_form button {
    width: auto;
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 1.5rem 7.9rem 1.5rem 7.2rem;
    position: relative;
    border: none;
    transition: 0.5s;
}

#contact-wrapper .contact_form button:hover {
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.16);
}

#contact-wrapper .contact_form .allow {
    position: absolute;
    background: var(--black-a010);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2rem;
    top: 1.25rem;
    right: 2rem;
}

#contact-wrapper .contact_form .allow::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--link-blue);
    border-right: 2px solid var(--link-blue);
    transform: rotate(45deg);
}

#contact-wrapper .contact_form .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: var(--link-blue);
    transform: rotate(180deg);
}

#contact-wrapper .contact_form .mw_wp_form .error {
    position: relative;
    font-size: 1.4rem;
    padding-left: 3rem;
    padding-top: 0.5rem;
    color: var(--err-red);
}

#contact-wrapper .contact_form .mw_wp_form .error:before {
    content: "！";
    font-size: 1.4rem;
    position: absolute;
    left: 5px;
    top: 5px;
    background: var(--err-red);
    color: #fff;
    border-radius: 50px;
    width: 20px;
    height: 20px;
    padding-left: 2px;
}

#contact-wrapper .contact_form #error_massage {
    text-align: center;
    padding: 2rem 0;
    display: none;
}

#contact-wrapper .contact_form #error_massage .error_massage_text {
    position: relative;
    font-size: 1.4rem;
    padding-left: 3rem;
    padding-top: 0.5rem;
    color: var(--err-red);
    display: initial;
    font-weight: bold;
}

#contact-wrapper .contact_form #error_massage .error_massage_text:before {
    content: "！";
    font-size: 1.4rem;
    position: absolute;
    left: 5px;
    top: 5px;
    background: var(--err-red);
    color: #fff;
    border-radius: 50px;
    width: 20px;
    height: 20px;
}

#contact-wrapper .contact_form #error_massage .error_massage_text .view_sp {
    display: none;
}

#contact-wrapper .contact_form .is-error select,
#contact-wrapper .contact_form .is-error textarea,
#contact-wrapper .contact_form .is-error input {
    border: 1px solid var(--err-red);
    background-color: rgb(255 64 12 / 12%);
}

#contact-wrapper .contact_form select {
    -webkit-appearance: none;
    appearance: none;
}

#contact-wrapper .contact_form select::-ms-expand {
    display: none;
}

#contact-wrapper .contact_form select {
    background-image: url(img/contact_icon.png);
    background-position: right 25px center;
    background-repeat: no-repeat;
    background-size: 25px 25px;
}

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

    #contact-wrapper .contact_inner {
        width: 100%;
        padding-bottom: 0;
    }

    #contact-wrapper .contact_ttl_wrap {
        width: 80%;
        margin: 0 auto;
    }

    #contact-wrapper .contact_ttl {
        font-size: 5.6rem;
    }

    #contact-wrapper .contact_form {
        padding: 4rem 2rem 10rem 2rem;
    }

    #contact-wrapper .contact_form input.short,
    #contact-wrapper .contact_form select {
        width: 100%;
    }

    #contact-wrapper .contact_form #error_massage .error_massage_text .view_sp {
        display: block;
    }

}

/*------------------------------------
    contact_complete_area
------------------------------------ */
#contact-wrapper .contact_complete_area {
    text-align: center;
}

#contact-wrapper .contact_complete_area p {
    font-weight: bold;
    line-height: 3rem;
    padding-bottom: 2rem;
}

#contact-wrapper .post_back_btn {
    text-align: center;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    margin-top: 10rem;
    padding: 2.5rem 0;
}

#contact-wrapper .post_back_btn a {
    background: var(--white);
    color: var(--black);
    font-weight: bold;
    box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.16);
    padding: 2.5rem 3.2rem 2.5rem 6.9rem;
}

#contact-wrapper .post_back_btn a:after {}

#contact-wrapper .post_back_btn a:hover {
    background: var(--black-a005);
}

#contact-wrapper .post_back_btn .allow {
    position: absolute;
    background: var(--black-a010);
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    margin-right: 2rem;
    margin-left: 0;
    top: 2.15rem;
    left: 2rem;
}

#contact-wrapper .post_back_btn .allow::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 10px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #1f6dff;
    border-right: 2px solid #1f6dff;
    transform: rotate(225deg);
}

#contact-wrapper .post_back_btn .allow::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 7px;
    height: 2px;
    background: #1f6dff;
}

/* =============================

    page-commercial.php

==============================*/
#commercial-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
    margin-top: -1rem;
}

#commercial-wrapper .commercial_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#commercial-wrapper .commercial_ttl {
    font-size: 4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#commercial-wrapper .commercial_area {
    width: 100%;
    background: var(--white);
    padding: 5rem;
}

#commercial-wrapper .commercial_area table {}

#commercial-wrapper .commercial_area table th {
    padding: 2rem 1rem 2rem 2rem;
    width: 30%;
    border-bottom: 2px solid var(--black-a010);
    font-size: 1.4rem;
}

#commercial-wrapper .commercial_area table td {
    padding: 2rem 1rem 2rem 3rem;
    width: 70%;
    border-bottom: 2px solid var(--black-a010);
    font-size: 1.4rem;
}

#commercial-wrapper .commercial_area table td a {
    color: var(--black);
    text-decoration: underline;
}



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

    #commercial-wrapper {
        padding: 0;
    }

    #commercial-wrapper .commercial_container {
        width: 100%;
    }

    #commercial-wrapper .commercial_ttl {
        width: 80%;
        margin: 0 auto;
        font-size: 3rem;
        font-weight: bold;
        position: relative;
        padding: 4rem 0 1rem;
        margin-bottom: 3rem;
    }

    #commercial-wrapper .commercial_area {
        padding: 1rem;
    }

    #commercial-wrapper .commercial_area table th {
        padding: 2rem 0.5rem 2rem 0.5rem;
    }

}

/* =============================

    page-privacy_policy.php

==============================*/
#pp-wrapper {
    padding: 9rem 0 14.0rem;
    position: relative;
    overflow: hidden;
    background: var(--black-a005);
    margin-top: -1rem;
}

#pp-wrapper .pp_container {
    width: 80%;
    max-width: 1040px;
    margin: 0 auto;
}

#pp-wrapper .pp_ttl {
    font-size: 4rem;
    font-weight: bold;
    position: relative;
    padding: 8.0rem 0 1rem;
    margin-bottom: 6.2rem;
}

#pp-wrapper .pp_area {
    width: 100%;
    background: var(--white);
    padding: 5rem;
}

#pp-wrapper .pp_area h3 {
    margin-bottom: 2rem;
}

#pp-wrapper .pp_area p {
    margin-bottom: 3rem;
}

#pp-wrapper .pp_area ul {
    margin-bottom: 3rem;
}

#pp-wrapper .pp_area li {
    font-size: 1.6rem;
}

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

    #pp-wrapper {
        padding: 0;
    }

    #pp-wrapper .pp_container {
        width: 100%;
    }

    #pp-wrapper .pp_ttl {
        width: 80%;
        margin: 0 auto;
        font-size: 3rem;
        font-weight: bold;
        position: relative;
        padding: 4rem 0 1rem;
        margin-bottom: 3rem;
    }

    #pp-wrapper .pp_area {
        padding: 2rem;
    }
}

/* =============================

    page-ticket.php

==============================*/
#ticket-wrapper {
    margin-top: 17.0rem;
}

#ticket-wrapper * {
    font-family: "hiragino-kaku-gothic-pron", "Hiragino Sans", noto-sans-cjk-jp, sans-serif, "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
}

#ticket-wrapper .en {
    font-family: 'Open Sans', sans-serif;
}

#ticket-wrapper::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--yellow);
    width: 100%;
    height: 83%;
    z-index: -1;
    transform: skewY(-17deg);
    transform-origin: top left;
}

#ticket-wrapper .ticket_inner {
    max-width: 1040px;
    margin: 0 auto;
}

#ticket-wrapper .ticket_ttl {
    font-size: 6.4rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 7.8rem;
    margin-left: 4.0rem;
}

#ticket-wrapper .ticket_ttl::after {
    content: "チケット";
    font-size: 1.6rem;
    position: absolute;
    bottom: -1.5rem;
    left: 0.5rem;
}

#ticket-wrapper .ticket_tab_group {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}

#ticket-wrapper #ticket_tab_panel_1,
#ticket-wrapper #ticket_tab_panel_2,
#ticket-wrapper #ticket_tab_panel_3,
#ticket-wrapper #ticket_tab_panel_4,
#ticket-wrapper #ticket_tab_panel_5,
#ticket-wrapper #ticket_tab_panel_6 {
    padding-top: 40.0rem;
    margin-top: -40.0rem;
}

#ticket-wrapper .ticket_tab {
    margin-right: 0.8rem;
    width: 100%;
}

#ticket-wrapper .ticket_tab:last-of-type {
    margin-right: 0
}

#ticket-wrapper .ticket_tab a {
    font-size: 2.0rem;
    font-weight: bold;
    background: var(--black-a060);
    color: var(--white);
    width: 100%;
    text-align: center;
    padding: 2rem 0 1.8rem;
    display: inline-block;
}

#ticket-wrapper .ticket_tab.is-ticket-active a {
    background: var(--black);
    padding-bottom: 2rem;
}

#ticket-wrapper .ticket_panel_inner {
    background: var(--white);
    width: 100%;
    border-top: solid 2px var(--black);
}

#ticket-wrapper .ticket_panel {
    display: none;
}

#ticket-wrapper .ticket_panel.is-ticket-show {
    display: block;
}

#ticket-wrapper .ticket_wrap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 5.8rem 0 7.8rem;
}

#ticket-wrapper section {
    margin-bottom: 8.0rem;
}

#ticket-wrapper .ticket_section_ttl {
    font-size: 3.4rem;
    font-weight: bold;
    text-align: center;
}

#ticket-wrapper .ticket_section_sub_ttl {
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
}

#ticket-wrapper .ticket_link_btn_wrap {
    margin-top: 6.0rem;
}

#ticket-wrapper .ticket_link_btn {
    background-color: var(--black);
    border: solid 2px var(--yellow);
    border-radius: 2.5rem;
    text-align: center;
    width: fit-content;
    padding: 0.8rem 6.0rem 0.8rem 4.0rem;
    margin: 0 auto;
}

#ticket-wrapper .ticket_link_btn a {
    color: var(--white);
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
}

#ticket-wrapper .ticket_link_btn .allow {
    position: absolute;
    background: var(--black-a005);
    border-radius: 50%;
}

#ticket-wrapper .ticket_link_btn .allow::before {
    content: '';
    position: absolute;
    border-top: 0.2rem solid var(--white);
    border-right: 0.2rem solid var(--white);
    top: 7px;
    left: 9px;
    width: 15px;
    height: 15px;
}

#ticket-wrapper .ticket_link_btn .allow::after {
    content: '';
    position: absolute;
    background: var(--white);
    height: 0.2rem;
    top: 14px;
    left: 6px;
    transform: rotate(135deg);
    width: 19px;
}

#ticket-wrapper .ticket_link_btn_disabled {
    background-color: var(--black);
    border: solid 2px #F5BD41;
    border-radius: 2.5rem;
    text-align: center;
    width: fit-content;
    padding: 0.5rem;
    color: var(--white);
    opacity: 0.3;
    font-size: 1.8rem;
    padding: 0.8rem 5.0rem;
    margin: 0 auto;
}

#ticket-wrapper .ticket_fc {
    display: flex;
    align-items: center;
    border: solid 3px var(--yellow);
    margin-top: 4.0rem;
}

#ticket-wrapper .ticket_fc_img {
    width: 35%;
    margin: 1.0rem;
}

#ticket-wrapper .ticket_fc_content {
    width: 65%;
    padding: 1.0rem;
}

#ticket-wrapper .ticket_fc_content .ticket_fc_ttl {
    font-size: 2.6rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_fc_content .ticket_fc_txt {
    font-size: 1.8rem;
    margin-top: 1.0rem;
}

#ticket-wrapper .ticket_fc_content .ticket_fc_link {
    margin-top: 2.0rem;
}

#ticket-wrapper .ticket_fc_content .ticket_fc_link a {
    background-color: var(--yellow);
    border-radius: 20.0rem;
    color: var(--black);
    font-weight: bold;
    padding: 1.0rem 2.0rem;
    font-size: 1.8rem;
}

@media screen and (max-width: 768px) {
    #ticket-wrapper .ticket_wrap {
        width: 90%;
        padding: 3.8rem 0 5.8rem;
    }

    #ticket-wrapper section {
        margin-bottom: 6.0rem;
    }

    #ticket-wrapper .ticket_section_sub_ttl {
        font-size: 2.0rem;
    }

    #ticket-wrapper .ticket_tab_group {
        flex-wrap: wrap;
        width: 96%;
        margin: 0 auto;
        background-color: var(--black-a060);
        align-items: stretch;
        justify-content: space-between;
    }

    #ticket-wrapper .ticket_tab {
        width: calc(100% / 3);
        display: flex;
        justify-content: center;
        align-items: center;
        margin-right: 0;
        position: relative;
    }

    #ticket-wrapper #ticket_tab_panel_1,
    #ticket-wrapper #ticket_tab_panel_2,
    #ticket-wrapper #ticket_tab_panel_3 {
        border-bottom: solid 1px var(--white);
    }

    #ticket-wrapper #ticket_tab_panel_1::after,
    #ticket-wrapper #ticket_tab_panel_2::after,
    #ticket-wrapper #ticket_tab_panel_4::after,
    #ticket-wrapper #ticket_tab_panel_5::after {
        content: "";
        border-right: solid 1px var(--white);
        position: absolute;
        top: 40rem;
        bottom: 0;
        right: 0;
        z-index: 1;
    }

    #ticket-wrapper .ticket_tab a {
        font-size: 1.6rem;
        padding-bottom: 1.0rem;
        position: relative;
        z-index: 1;
        padding: 0.5rem 0;
    }


    #ticket-wrapper .ticket_tab.is-ticket-active a {
        padding-bottom: 0.5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
    }

    #ticket-wrapper .ticket_section_ttl {
        font-size: 2.6rem;
    }

    #ticket-wrapper .ticket_link_btn_wrap {
        margin-top: 4.0rem;
    }

    #ticket-wrapper .ticket_link_btn {
        padding: 0.8rem 5.0rem 0.8rem 3.0rem;
    }

    #ticket-wrapper .ticket_link_btn a {
        font-size: 1.6rem;
    }

    #ticket-wrapper .ticket_link_btn .allow::before {
        top: 7px;
        left: 7px;
        width: 13px;
        height: 13px;
    }

    #ticket-wrapper .ticket_link_btn .allow::after {
        top: 13px;
        left: 4px;
        width: 17px;
    }

    #ticket-wrapper .ticket_link_btn_disabled {
        padding: 0.5rem 3.0rem;
        margin: 0 auto;
    }

    #ticket-wrapper .ticket_fc {
        display: block;
        width: 90%;
        margin: 2.0rem auto;
    }

    #ticket-wrapper .ticket_fc_img {
        width: 98%;
        margin: 0.5rem auto;
    }

    #ticket-wrapper .ticket_fc_content {
        margin: 0;
        width: 100%;
        padding: 1.0rem;
    }

    #ticket-wrapper .ticket_fc_content .ticket_fc_ttl {
        font-size: 1.8rem;
    }

    #ticket-wrapper .ticket_fc_content .ticket_fc_link {
        margin: 2.0rem auto;
        text-align: center;
    }

    #ticket-wrapper .ticket_fc_content .ticket_fc_link a {
        font-size: 1.6rem;
    }
}

/*------------------------------------
    チケット購入
    ticket_buy
------------------------------------ */
#ticket-wrapper .ticket_buy .ticket_buy_cs_wrap {
    text-align: center;
    margin: 10rem 0 16rem;
}

#ticket-wrapper .ticket_buy .ticket_buy_cs {
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 2.0rem;
}

/* ticket_recent */
#ticket-wrapper .ticket_buy .ticket_recent {
    background-color: var(--black);
    padding: 4.0rem 0;
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt {
    background-color: var(--yellow);
}

#ticket-wrapper .ticket_buy .ticket_recent .ticket_recent_inner {
    width: 90%;
    margin: 0 auto;
}

#ticket-wrapper .ticket_buy .ticket_recent .ticket_section_ttl {
    color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_section_ttl {
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_box_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin: 4.0rem 0;
}

#ticket-wrapper .ticket_buy .ticket_box:nth-of-type(odd)::after {
    content: "";
    border-right: solid 1px var(--black);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    height: 80%;
}

#ticket-wrapper .ticket_buy .ticket_box {
    position: relative;
    padding: 4.0rem;
    margin: 0 auto 2.0rem;
    text-align: center;
    background: #fff;
    width: 50%;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_date {
    font-family: "din-2014", sans-serif;
    font-size: 5.0rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_date_w {
    font-size: 1.6rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_time {
    font-family: "din-2014", sans-serif;
    font-size: 2.6rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_venue_wrap {
    font-weight: bold;
}


#ticket-wrapper .ticket_buy .ticket_box .ticket_venue span {
    background-color: var(--black);
    color: var(--white);
    padding: 0.5rem 1.0rem;
    margin-right: 0.5rem;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_team_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.0rem;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_team_wrap .ys_team_logo,
#ticket-wrapper .ticket_buy .ticket_box .ticket_team_wrap .ticket_vs_logo {
    width: 8.0rem;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_team_wrap .ticket_vs_txt {
    font-family: "din-2014", sans-serif;
    font-weight: bold;
    font-size: 2.8rem;
    line-height: 1;
    text-align: center;
    padding: 0 1rem;
    width: 140px;
}

#ticket-wrapper .ticket_buy .ticket_box .ticket_team_wrap .ticket_vs_txt span {
    font-size: 1.6rem;
}

#ticket-wrapper .ticket_buy .ticket_recent .ticket_link_btn_wrap {
    margin-top: 2.5rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_hayawari_img_wrap {
    display: flex;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
}

#ticket-wrapper .ticket_buy .ticket_recent_hayawari p {
    width: 90%;
    margin: 2% auto 0;
    color: var(--white);
    font-size: 1.4rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_hayawari_img:first-of-type {
    width: 68%;
}

#ticket-wrapper .ticket_buy .ticket_recent_hayawari_img:last-of-type {
    width: 30%;
}


#ticket-wrapper .ticket_buy .ticket_recent_hayawari_img img {
    object-fit: contain;
}

#ticket-wrapper .ticket_buy .ticket_recent_children {
    background-color: var(--yellow);
    margin-top: 6.0rem;
    padding: 0 4.0rem 4.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_children {
    background-color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_children_box {
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon {
    position: relative;
    display: inline-block;
    margin-top: -2.0rem;
    margin-left: 3.0rem;
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    border: 3px solid var(--black);
    border-radius: 8px;
    background-color: var(--white);
    text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 80%;
    border-style: solid;
    border-width: 20px 20px 0 0;
    border-color: var(--black) transparent transparent;
    translate: -50% 100%;
    transform: skew(50deg);
    transform-origin: top;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 80%;
    border-style: solid;
    border-width: 15.2px 15.2px 0 0;
    border-color: var(--white) transparent transparent;
    translate: calc(-50% - 0.4px) 100%;
    transform: skew(50deg);
    transform-origin: top;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon span {
    font-size: 2.0rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_img {
    width: 15%;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content p {
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 1.0rem;
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_children .ticket_recent_children_content p {
    color: var(--yellow);
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content span {
    font-size: 3.2rem;
    background: linear-gradient(transparent 60%, var(--white) 30%);
    display: inline-block;
    line-height: 1.2;
}

#ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content .ticket_recent_children_attention {
    font-size: 1.4rem;
    font-weight: normal;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_inner {
    background-color: var(--white);
    padding: 4.0rem 1.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits {
    margin: 4.0rem auto;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_ttl {
    text-align: center;
    font-size: 2.4rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_ttl span {
    font-size: 2.4rem;
    background: linear-gradient(transparent 70%, var(--yellow) 20%);
    display: inline-block;
    line-height: 1.2;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box_wrap {
    display: flex;
    margin-top: 2.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img_wrap {
    width: 40%;
    margin-right: 1.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_S1_wrap {
    display: flex;
    justify-content: space-between;
    font-size: 2.0rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_S1 p {
    font-size: 2.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_S1 span {
    font-size: 2.0rem;
    font-weight: bold;
    background-color: var(--yellow);
    padding: 0.2rem 1rem;
    margin-right: 0.5rem;
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_S1 .ticket_S1_price {
    font-family: "din-2014", sans-serif;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_tokuten_S1 {
    display: flex;
    align-items: center;
    margin-top: 1rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img {
    position: relative;
    height: 200px;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img.enjin {
    margin-bottom: 1.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img.enjin::after {
    content: "一緒に円陣を組もう！";
    position: absolute;
    bottom: 10%;
    left: 0;
    z-index: 1;
    font-size: 1.8rem;
    font-weight: bold;
    background-color: var(--yellow);
    padding: 0 1.0rem;
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img.shugo::after {
    content: "集合写真も参加できる！";
    position: absolute;
    bottom: 10%;
    right: 0;
    z-index: 1;
    font-size: 1.8rem;
    font-weight: bold;
    background-color: var(--yellow);
    padding: 0 1.0rem;
    color: var(--black);
}


#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap {
    width: 60%;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table th,
#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table td {
    font-size: 1.8rem;
    text-align: center;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table td {
    vertical-align: top;
    line-height: 1.2;
    padding: 0.5rem 0;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table th,
#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_tokuten td {
    border-bottom: solid 1px var(--yellow);
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_price {
    font-family: "din-2014", sans-serif;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_tokuten td {
    font-size: 1.4rem;
    padding-bottom: 0.5rem;
    text-align: left;
}

#ticket-wrapper tr.ticket_benefits_table_tokuten td br {
    display: block;
    content: "";
    margin: 5px 0;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_ttl {
    font-weight: bold;
    padding: 0.5rem 0;
    text-align: left;
    line-height: 1.2;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_hayawari {
    font-family: "din-2014", sans-serif;
    font-weight: bold;
    font-size: 2.0rem;
    line-height: 1;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_tokuten span,
#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box .ticket_recent_benefits_tokuten span {
    background-color: var(--black);
    color: var(--white);
    border-radius: 20.0rem;
    margin-right: 1.0rem;
    padding: 0.1rem 0.4rem;
    font-size: 1.4rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box .ticket_recent_benefits_tokuten span {
    display: inline-block;
    width: 6%;
    font-size: 1.4rem;
    padding: 0.4rem;
    line-height: 1.2;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box .ticket_recent_benefits_tokuten p {
    display: inline-block;
    width: 90%;
    font-size: 1.4rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .border_none {
    border-bottom: 0;
    border-right: solid 1.0rem var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_table_floor {
    background-color: var(--yellow);
    text-align: center;
    border-bottom: solid 1px var(--white);
    padding: 0.5rem;
    line-height: 1;
    font-size: 1.8rem;
    font-family: "din-2014", sans-serif;
}

#ticket-wrapper .ticket_buy .ticket_seat_link {
    text-align: right;
}

#ticket-wrapper .ticket_buy .ticket_seat_link a {
    display: inline;
    color: var(--white);
    text-decoration: underline;
    background-color: transparent;
    padding: 0;
    font-size: 1.6rem;
    cursor: pointer;
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_seat_link a {
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi {
    position: relative;
    padding: 12px 16px 12px 30px;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi::before {
    content: "";
    position: absolute;
    top: 65%;
    left: 43%;
    width: 20px;
    height: 2px;
    transform: rotate(66deg) translateY(-50%) translateX(-50%);
    box-sizing: border-box;
    background-color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi::after {
    content: "";
    position: absolute;
    top: 65%;
    left: 55%;
    width: 20px;
    height: 2px;
    transform: rotate(114deg) translateY(-50%) translateX(-50%);
    box-sizing: border-box;
    background-color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi>.ornament {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translateY(-50%) translateX(-50%);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi>.ornament::before {
    content: "";
    position: absolute;
    top: 65%;
    left: 42%;
    width: 20px;
    height: 2px;
    transform: rotate(56deg) translateY(-50%) translateX(-50%);
    box-sizing: border-box;
    background-color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi>.ornament::after {
    content: "";
    position: absolute;
    top: 65%;
    left: 56%;
    width: 20px;
    height: 2px;
    transform: rotate(124deg) translateY(-50%) translateX(-50%);
    box-sizing: border-box;
    background-color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_more_fukidashi::before,
#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_more_fukidashi::after,
#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_more_fukidashi>.ornament::before,
#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_more_fukidashi>.ornament::after {
    background-color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_more_ttl {
    font-size: 2.4rem;
    text-align: center;
    font-weight: bold;
    color: var(--white);
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_recent_more_ttl {
    color: var(--black);
}

#ticket-wrapper .ticket_buy .ticket_recent_more div:nth-of-type(even) {
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_wrap .ticket_recent_more_hr {
    background-color: var(--yellow);
    width: 100%;
    color: var(--black);
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
    padding: 0.5rem 1.0rem;
    font-family: "din-2014", sans-serif;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_wrap .ticket_recent_more_hr span {
    font-size: 1.6rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_inner {
    background-color: var(--white);
    border: solid 2px var(--yellow);
    border-top: 0;
    padding: 1.5rem 8.0rem;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_sub_ttl {
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center;
}

#ticket-wrapper .ticket_buy .ticket_recent_more_txt {
    font-size: 1.4rem;
    text-align: left;
    margin: 0 auto;
    width: 88%;
}

#ticket-wrapper .ticket_buy .ticket_guide_link {
    margin-top: 2.0rem;
}

#ticket-wrapper .ticket_buy .ticket_guide_link a {
    display: block;
    background-color: var(--yellow);
    text-align: center;
    color: var(--black);
    font-weight: bold;
    padding: 1.0rem 2.0rem;
    width: 100%;
    font-size: 1.8rem;
    cursor: pointer;
}

#ticket-wrapper .ticket_buy .ticket_recent_hkdt .ticket_guide_link a {
    background: var(--white);
    color: var(--black);
}

/* -------------------- */

/* ticket_others */
#ticket-wrapper .ticket_buy .ticket_others .ticket_link_btn_wrap {
    margin-top: 2.5rem;
}

#ticket-wrapper .ticket_buy .ticket_others .ticket_box {
    width: 50%;
    padding: 4.0rem;
}

/* -------------------- */

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

    /* ticket_recent */
    #ticket-wrapper .ticket_buy .ticket_box_wrap {
        display: block;
        margin: 2.0rem 0;
    }

    #ticket-wrapper .ticket_buy .ticket_box {
        width: 100%;
        padding: 1.0rem 1.0rem 2.0rem 1.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_box_wrap::after {
        display: none;
    }

    #ticket-wrapper .ticket_buy .ticket_box .ticket_date {
        font-size: 4.6rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent .ticket_recent_inner .ticket_box .ticket_link_btn {
        margin: 0 auto;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children {
        padding: 0 1.0rem 2.5rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon {
        margin-left: 0;
        font-size: 1.6rem;
        padding: 1.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_balloon span {
        font-size: 1.8rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children_box {
        position: relative;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_img {
        position: absolute;
        top: -35%;
        left: 0;
        width: 30%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content {
        margin-top: 3.0rem;
        width: 90%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_ttl,
    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_ttl span {
        font-size: 2.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_img_wrap {
        width: 100%;
        margin-right: 0;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box .ticket_recent_benefits_tokuten span {
        display: block;
        width: fit-content;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_box .ticket_recent_benefits_tokuten p {
        width: 100%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap {
        width: 100%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_hayawari_img_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_hayawari_img:first-of-type,
    #ticket-wrapper .ticket_buy .ticket_recent_hayawari_img:last-of-type {
        width: 90%;
        margin: 2.0rem auto;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content p {
        margin-bottom: 2.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_children .ticket_recent_children_content span {
        font-size: 2.8rem;
    }

    #ticket-wrapper .ticket_buy .ticket_seat_link {
        display: inline-block;
        width: 100%;
    }

    #ticket-wrapper .ticket_buy .ticket_seat_link a {
        font-size: 1.4rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi::before {
        left: 30%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi::after {
        left: 65%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi>.ornament::before {
        left: 28%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_fukidashi>.ornament::after {
        left: 67%;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_wrap .ticket_recent_more_hr {
        line-height: 1.2;
        padding: 1.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_inner {
        padding: 1.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_more_sub_ttl {
        font-size: 1.8rem;
    }

    #ticket-wrapper .ticket_buy .ticket_box:nth-of-type(odd)::after {
        display: none;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits {
        margin: 2.0rem auto;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_tokuten_S1 {
        display: block;
        margin-bottom: 1.0rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table .ticket_benefits_table_hayawari {
        font-size: 1.8rem;
    }

    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table th,
    #ticket-wrapper .ticket_buy .ticket_recent_benefits .ticket_recent_benefits_table_wrap table td {
        font-size: 1.6rem;
        padding: 0.5rem 0;
    }

    #ticket-wrapper .ticket_buy .ticket_guide_link.ticket_tab {
        display: block;
        width: 100%;
    }

    /* -------------------- */
    /* ticket_others */
    #ticket-wrapper .ticket_buy .ticket_others .ticket_link_btn {
        margin: 0 auto;
    }

    #ticket-wrapper .ticket_buy .ticket_others .ticket_box {
        padding: 1.0rem 1.0rem 2.0rem 1.0rem;
        width: 100%;
    }

    /* -------------------- */
}


/*------------------------------------
    座席・価格
    ticket_seat_price
------------------------------------ */
/* ticket_price */
#ticket-wrapper .ticket_seat_price .ticket_section_sub_ttl {
    margin: 6.0rem 0 4.0rem;
}

#ticket-wrapper .ticket_seat_price .ticket_section_sub_ttl_hkdt {
    padding-top: 6.0rem;
    border-top: solid 1px var(--black);
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box {
    margin-bottom: 4.0rem;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box p {
    margin-bottom: 1.0rem;
    font-size: 1.8rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box span {
    margin-right: 1.0rem;
    font-size: 1.8rem;
    padding: 0.5rem;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box:first-of-type span {
    background-color: #9acf7f;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box:nth-of-type(2) span {
    background-color: #80c9e1;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box:nth-of-type(3) span {
    background-color: #fab690;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_box:last-of-type span {
    background-color: #fbfcc6;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_img_wrap {
    display: flex;
    justify-content: space-between;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_img:first-of-type {
    width: 46%;
}

#ticket-wrapper .ticket_seat_price .ticket_seat_view_img:last-of-type {
    width: 50%;
}

@media screen and (max-width: 768px) {
    #ticket-wrapper .ticket_seat_price .ticket_section_sub_ttl {
        margin: 3.0rem 2.0rem;
    }

    #ticket-wrapper .ticket_seat_price .ticket_seat_view_img_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_seat_price .ticket_seat_view_img:first-of-type,
    #ticket-wrapper .ticket_seat_price .ticket_seat_view_img:last-of-type {
        width: 100%;
        height: auto;
    }
}

/*------------------------------------
    会場アクセス
    ticket_map
------------------------------------ */
/* ticket_access */
#ticket-wrapper .ticket_map .ticket_access_venue {
    text-align: center;
    font-size: 2.8rem;
    font-weight: bold;
    margin: 6.0rem 0 4.0rem;
}

#ticket-wrapper .ticket_map .ticket_access_venue_hkdt {
    padding-top: 6.0rem;
    border-top: solid 1px var(--black);
}

#ticket-wrapper .ticket_map .ticket_access_box_wrap {
    margin: 4.0rem 0;
}

#ticket-wrapper .ticket_map .ticket_access_box {
    display: flex;
    justify-content: space-between;
}

#ticket-wrapper .ticket_map .ticket_access_box_img {
    width: 40%;
    height: 300px;
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_map .ticket_access_box_noimg {
    width: 40%;
    height: auto;
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_map .ticket_access_ttl {
    font-weight: bold;
}

#ticket-wrapper .ticket_map .ticket_access_content {
    width: 55%;
}

#ticket-wrapper .ticket_map .ticket_access_content p {
    margin-bottom: 1.0rem;
}

#ticket-wrapper .ticket_map .ticket_access_txt {
    border-bottom: solid 1px var(--yellow);
    padding-bottom: 2.0rem;
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_map .ticket_access_txt:first-of-type p:last-of-type {
    margin-bottom: 0;
}

#ticket-wrapper .ticket_map .ticket_access_bold {
    font-size: 1.8rem;
    font-weight: bold;
}

/* -------------------- */

/* ticket_entrance */
#ticket-wrapper .ticket_map .ticket_entrance_box_wrap {
    margin-top: 6.0rem;
}

#ticket-wrapper .ticket_map .ticket_entrance_box_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#ticket-wrapper .ticket_map .ticket_entrance_box {
    width: 48%;
    margin-bottom: 3.0rem;
}

#ticket-wrapper .ticket_map .ticket_entrance_content {
    margin-top: 1.0rem;
}

/* -------------------- */

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

    /* ticket_access */
    #ticket-wrapper .ticket_map .ticket_access_venue {
        font-size: 2.0rem;
        margin: 3.0rem 0 2.0rem;
    }

    #ticket-wrapper .ticket_map .ticket_access_map iframe {
        height: 300px;
    }

    #ticket-wrapper .ticket_map .ticket_access_box_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_map .ticket_access_box {
        display: block;
    }

    #ticket-wrapper .ticket_map .ticket_access_box_img {
        width: 100%;
    }

    #ticket-wrapper .ticket_map .ticket_access_content {
        width: 100%;
    }

    #ticket-wrapper .ticket_map .ticket_access_ttl {
        font-size: 1.6rem;
    }

    /* -------------------- */

    /* ticket_entrance */
    #ticket-wrapper .ticket_map .ticket_entrance_box_wrap {
        display: block;
        margin-top: 3.0rem;
    }

    #ticket-wrapper .ticket_map .ticket_entrance_box {
        width: 100%;
    }

    /* -------------------- */
}

/*------------------------------------
    販売スケジュール
    ticket_sales_schedule
------------------------------------ */
/* ticket_schedule */
#ticket-wrapper .ticket_sales_schedule .ticket_section_ttl {
    margin-bottom: 6.0rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_all_link {
    color: var(--black);
    text-decoration: underline;
    font-size: 1.6rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_cs_wrap {
    text-align: center;
    margin: 10rem 0 16rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_cs {
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_box_wrap {
    border-bottom: 1px solid var(--black);
    padding: 4.0rem 0;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_box {
    display: flex;
    justify-content: space-between;
}

#ticket-wrapper .ticket_sales_schedule .ticket_hayawari_cp {
    background-color: var(--yellow);
    width: fit-content;
    padding: 0 0.5rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_vs_txt,
#ticket-wrapper .ticket_sales_schedule .ticket_vs_txt span {
    font-size: 1.8rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_sales_schedule .ticket_date {
    font-family: "din-2014", sans-serif;
    font-size: 5.0rem;
    font-weight: bold;
    vertical-align: middle;
}

#ticket-wrapper .ticket_sales_schedule .ticket_date_w {
    font-size: 1.6rem;
    font-weight: bold;
    vertical-align: middle;
}

#ticket-wrapper .ticket_sales_schedule .ticket_time {
    font-family: "din-2014", sans-serif;
    font-size: 2.6rem;
    font-weight: bold;
    vertical-align: middle;
}

#ticket-wrapper .ticket_sales_schedule .ticket_vs_logo {
    display: inline-block;
    width: 8.0rem;
    vertical-align: middle;
    margin-left: 2.0rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_venue {
    font-weight: bold;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind {
    font-size: 1.6rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr th,
#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr td {
    border-bottom: solid 1px var(--black-a010);
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr th {
    font-weight: bold;
    padding-right: 6.0rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr th::before {
    content: "★";
    font-size: 1.6rem;
    margin-right: 0.5rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind_platinum th::before {
    color: #eeeeec;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind_gold th::before {
    color: #ddbe35;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind_hayawari th::before {
    color: var(--yellow);
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind .ticket_schedule_kind_general th,
#ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind .ticket_schedule_kind_general td {
    border-bottom: 0;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_after {
    background-color: var(--black-a040);
    border-radius: 2.5rem;
    color: var(--white);
    width: fit-content;
    padding: 0.8rem 5.0rem 0.8rem;
    margin: 2.0rem auto 0;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 2.0rem;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap p {
    background-color: var(--black);
    border-radius: 2.5rem;
    width: fit-content;
    padding: 0.8rem 6.0rem 0.8rem 4.0rem;
    margin: 0 auto;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap a {
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap a .allow {
    position: absolute;
    background: var(--black-a005);
    border-radius: 50%;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap a .allow::before {
    content: '';
    position: absolute;
    border-top: 0.2rem solid var(--white);
    border-right: 0.2rem solid var(--white);
    top: 7px;
    left: 9px;
    width: 15px;
    height: 15px;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap a .allow::after {
    content: '';
    position: absolute;
    background: var(--white);
    height: 0.2rem;
    top: 14px;
    left: 6px;
    transform: rotate(135deg);
    width: 19px;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_platinum {
    border: solid 2px #eeeeec;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_platinum a {
    color: #eeeeec;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_platinum a .allow::before {
    border-top: 0.2rem solid #eeeeec;
    border-right: 0.2rem solid #eeeeec;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_platinum a .allow::after {
    background: #eeeeec;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_gold {
    border: solid 2px #ddbe35;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_gold a {
    color: #ddbe35;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_gold a .allow::before {
    border-top: 0.2rem solid #ddbe35;
    border-right: 0.2rem solid #ddbe35;
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_gold a .allow::after {
    background: #ddbe35;
}


#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_general {
    border: solid 2px var(--yellow);
}

#ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_general a {
    color: var(--white);
}

/* -------------------- */

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

    /* ticket_schedule */
    #ticket-wrapper .ticket_sales_schedule .ticket_section_ttl {
        margin-bottom: 4.0rem
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_box {
        display: block;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_game {
        margin-bottom: 2.0rem;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr th,
    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr td {
        display: block;
        width: 100%;
        font-size: 1.6rem;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr th {
        border-bottom: 0;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_kind tr td {
        padding-bottom: 1.0rem;
        margin-bottom: 1.0rem;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap p {
        margin: 1.0rem auto;
        width: 90%;
        text-align: center;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_wrap a {
        font-size: 1.4rem;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_general a .allow::before {
        left: 30px;
    }

    #ticket-wrapper .ticket_sales_schedule .ticket_schedule_link_general a .allow::after {
        left: 27px;
    }

    /* -------------------- */
}

/*------------------------------------
    観戦ガイド
    ticket_spectator_guide
------------------------------------ */
#ticket-wrapper .ticket_spectator_guide .ticket_guide_cs_wrap {
    text-align: center;
    margin: 10rem 0 16rem;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_cs {
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 2.0rem;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_cs_txt {
    font-size: 1.8rem;
    font-weight: bold;
}

/* ticket_guide */
#ticket-wrapper .ticket_spectator_guide .ticket_section_sub_ttl {
    margin-top: 6.0rem;
    margin-bottom: 4.0rem;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_ts_img_wrap {
    display: flex;
    justify-content: space-between;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_ts_img {
    width: 48%;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list {
    list-style: none;
    padding: 0;
    margin: 0;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list li {
    display: flex;
    align-items: center;
    margin: 5px 0;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list .list_ttl {
    font-size: 1.6rem;
    font-weight: bold;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list .list_ttl::before {
    content: "×";
    color: var(--err-red);
    font-size: 1.8rem;
    font-weight: bold;
    margin-right: 0.5rem;
    vertical-align: middle;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list .list_dots {
    flex-grow: 1;
    height: 1px;
    background: repeating-linear-gradient(to right, transparent, transparent 4px, black 4px, black 6px);
    margin: 0 10px;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list .list_description {
    min-width: 48%;
    text-align: left;
    font-size: 1.6rem;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_txt {
    font-size: 1.6rem;
    font-weight: bold;
}

/* -------------------- */

/* ticket_guide_fun */
#ticket-wrapper .ticket_spectator_guide .ticket_guide_fun {
    width: 75%;
    margin: 0 auto;
}

#ticket-wrapper .ticket_spectator_guide .ticket_guide_fun .ticket_guide_fun_img {
    width: 100%;
}

/* -------------------- */

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

    /* ticket_guide */
    #ticket-wrapper .ticket_spectator_guide .ticket_section_sub_ttl {
        margin-top: 4.0rem;
        margin-bottom: 2.0rem;
    }

    #ticket-wrapper .ticket_spectator_guide .ticket_guide_ts_img_wrap {
        display: block;
    }

    #ticket-wrapper .ticket_spectator_guide .ticket_guide_ts_img {
        width: 100%;
    }

    #ticket-wrapper .ticket_spectator_guide .ticket_guide_ts_img:first-of-type {
        margin-bottom: 2.0rem;
    }

    #ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list li {
        display: block;
    }

    #ticket-wrapper .ticket_spectator_guide .ticket_guide_attention_list .list_ttl {
        display: block;
    }

    /* -------------------- */
    /* ticket_guide_fun */
    #ticket-wrapper .ticket_spectator_guide .ticket_guide_fun {
        width: 100%;
    }

    /* -------------------- */
}

/*------------------------------------
    よくある質問
    ticket_venue_faq
------------------------------------ */
@media screen and (max-width: 768px) {

    /* ticket_faq */
    #ticket-wrapper .ticket_accordion_wrap {
        margin-top: 4.0rem;
    }

    #ticket-wrapper .ticket_acc_ttl p {
        font-size: 1.6rem;
    }

    #ticket-wrapper .ticket_acc_box p {
        font-size: 1.6rem;
    }

    /* -------------------- */
}

/* =============================

    page-ticket-lp.php

==============================*/
.page-id-2422 header {
    display: none !important;
}

div#ticket-lp-wrapper {
    background-color: var(--yellow-lp);
}

div#ticket-lp-wrapper img {
    width: 100%;
    object-fit: cover;
}

.ticket-lp_pic {
    margin-bottom: 30px;
}

.ticket-lp_pic_cp {
    margin-bottom: 10px;
}

/*------------------------------------
    ticket-lp_mv
 ------------------------------------ */
.ticket-lp_mv {
    border-bottom: 15px solid var(--white);
}

section.ticket-lp_mv img {
    width: 100%;
}

/*------------------------------------
    ticket-lp_about
 ------------------------------------ */
section.ticket-lp_about {
    padding: 30px 7% 40px;
}

.ticket-lp_pic-about {
    margin-bottom: 50px;
}

.ticket-lp_about-logo {
    width: 100px;
    height: auto;
    margin: 0 auto;
    padding: 5% 0 10%;
}

/*------------------------------------
    ticket-lp_ticket01
 ------------------------------------ */
section.ticket-lp_ticket01 {
    margin: 0 0 50px;
}

.ticket-lp_ticket01 .ticket-lp_pic,
.ticket-lp_ticket01 .ticket-lp_pic_cp {
    padding: 0 7%;
}

/*------------------------------------
    ticket-lp_players
 ------------------------------------ */
section.ticket-lp_players {
    margin-bottom: 60px;
}

/*------------------------------------
    ticket-lp_youtube
 ------------------------------------ */


section.ticket-lp_youtube .ticket-lp_youtube_wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin-bottom: 50px;
}

section.ticket-lp_youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*------------------------------------
    ticket-lp_seats
 ------------------------------------ */
section.ticket-lp_seats {
    padding: 0 7%;
    margin: 0 0 50px;
}


/*------------------------------------
    ticket-lp_access
 ------------------------------------ */
section.ticket-lp_access {
    margin: 0 7%;
}

section.ticket-lp_access iframe {
    width: 100%;
    height: 250px;
    margin-bottom: 10px;
}

/*------------------------------------
    ticket-lp_ticket02
 ------------------------------------ */
section.ticket-lp_ticket02 {
    margin: 0 0 50px;
}

.ticket-lp_ticket02 .ticket-lp_pic,
.ticket-lp_ticket02 .ticket-lp_pic_cp {
    padding: 0 7%;

}

.ticket-lp_footer-logo {
    width: 120px;
    height: auto;
    margin: 0 auto;
    padding: 5% 0 10%;
}

/* =============================

    dec

==============================*/
#ticket-lp-wrapper-dec {
    background-color: var(--yellow-lp);
    max-width: 767px;
    width: 100%;
    margin: 0 auto;
}

#ticket-lp-wrapper-dec img {
    width: 100%;
    object-fit: cover;
}

#ticket-lp-wrapper-dec .ticket-lp_pic_full {
    width: 100%;
    margin-bottom: 30px;
}

#ticket-lp-wrapper-dec .ticket-lp_btn {
    padding: 0 7%;
}

/*------------------------------------
    ticket-lp_mv
 ------------------------------------ */
#ticket-lp-wrapper-dec .ticket-lp_mv {
    border-bottom: 0;
}

/*------------------------------------
    ticket-lp_about
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_about {
    position: relative;
    padding: 80px 0 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_about .ticket-lp_pic {
    margin-bottom: 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_about .ticket-lp_btn {
    position: absolute;
    bottom: 60px;
}

/*------------------------------------
    ticket-lp_ticket01
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_ticket01 {
    background-color: #000;
    position: relative;
    z-index: 1;
    padding-bottom: 30px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_ticket01 .ticket-lp_pic_full:first-child {
    margin-bottom: 5px;
}

#ticket-lp-wrapper-dec section.ticket-lp_ticket01 .ticket-lp_pic_full:first-child img {
    margin-top: -20px;
}

/*------------------------------------
    ticket-lp_players
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_players {
    position: relative;
    z-index: 1;
    margin-bottom: 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_players .ticket-lp_pic {
    margin-bottom: 0;
}

/*------------------------------------
    ticket-lp_youtube
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_youtube {
    margin-top: -17px;
}

#ticket-lp-wrapper-dec section.ticket-lp_youtube .ticket-lp_youtube_ttl {
    width: 70%;
}

#ticket-lp-wrapper-dec section.ticket-lp_youtube .ticket-lp_youtube_area .ticket-lp_youtube_movie_wrap:nth-of-type(2) .ticket-lp_youtube_ttl {
    margin-left: auto;
}

#ticket-lp-wrapper-dec section.ticket-lp_youtube .ticket-lp_youtube_area {
    margin-top: -150px;
}

#ticket-lp-wrapper-dec section.ticket-lp_youtube .ticket-lp_youtube_wrap {
    width: 90%;
    margin: 0 auto 50px;
}

/*------------------------------------
    ticket-lp_seats
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_seats {
    padding: 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_seats .ticket-lp_seats_ttl {
    width: 70%;
    margin: 0 auto 30px;
}

#ticket-lp-wrapper-dec section.ticket-lp_seats .ticket-lp_pic_full {
    width: 70%;
}

#ticket-lp-wrapper-dec section.ticket-lp_seats .ticket-lp_seats_img {
    padding: 0 7%;
}

/*------------------------------------
    ticket-lp_access
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_access {
    margin: 0;
    padding-bottom: 30px;
}

#ticket-lp-wrapper-dec section.ticket-lp_access .ticket-lp_access_ttl {
    width: 70%;
    margin: 0 auto 30px;
}

#ticket-lp-wrapper-dec section.ticket-lp_access .ticket-lp_pic_full {
    width: 70%;
}

#ticket-lp-wrapper-dec section.ticket-lp_access .ticket-lp_map_wrap {
    margin-bottom: 30px;
}

#ticket-lp-wrapper-dec section.ticket-lp_access .ticket-lp_map {
    margin-bottom: 10px;
    padding: 0 7%;
}

#ticket-lp-wrapper-dec section.ticket-lp_access .ticket-lp_map_wrap .ticket-lp_map:first-child {
    margin-bottom: 0;
}

/*------------------------------------
    ticket-lp_ticket02
 ------------------------------------ */
#ticket-lp-wrapper-dec section.ticket-lp_ticket02 {
    background-color: #000;
    position: relative;
    z-index: 1;
    margin-bottom: 0;
}

#ticket-lp-wrapper-dec section.ticket-lp_ticket02 .ticket-lp_pic_full:first-child {
    margin-bottom: 5px;
}

#ticket-lp-wrapper-dec section.ticket-lp_ticket02 .ticket-lp_pic_full:first-child img {
    margin-top: -20px;
}

#ticket-lp-wrapper-dec section.ticket-lp_ticket02 .ticket-lp_bg_yellow {
    background-color: var(--yellow-lp);
    padding: 30px 0;
}

/* =============================

    jan
    mar

==============================*/
#ticket-lp-wrapper-jan,
#ticket-lp-wrapper-mar {
    background-color: var(--yellow-lp);
    max-width: 767px;
    width: 100%;
    margin: 0 auto;
}

#ticket-lp-wrapper-jan img,
#ticket-lp-wrapper-mar img {
    width: 100%;
    object-fit: cover;
}

/*------------------------------------
    ticket-lp_mv
 ------------------------------------ */
#ticket-lp-wrapper-jan .ticket-lp_mv,
#ticket-lp-wrapper-mar .ticket-lp_mv {
    border-bottom: 0;
}

/*------------------------------------
    ticket-lp_about
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_about,
#ticket-lp-wrapper-mar section.ticket-lp_about {
    position: relative;
    padding: 20px 0 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_about .ticket-lp_pic,
#ticket-lp-wrapper-mar section.ticket-lp_about .ticket-lp_pic {
    margin-bottom: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_about .ticket-lp_btn,
#ticket-lp-wrapper-mar section.ticket-lp_about .ticket-lp_btn {
    position: absolute;
    bottom: 30px;
}

/*------------------------------------
    ticket-lp_ticket01
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_ticket01,
#ticket-lp-wrapper-mar section.ticket-lp_ticket01 {
    background-color: #000;
    position: relative;
    z-index: 1;
    padding-top: 40px;
    padding-bottom: 30px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket01 .ticket-lp_pic,
#ticket-lp-wrapper-mar section.ticket-lp_ticket01 .ticket-lp_pic {
    padding: 0 4%;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket01 div:nth-child(2),
#ticket-lp-wrapper-mar section.ticket-lp_ticket01 div:nth-child(2) {
    margin-top: -100px;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket01 .ticket-lp_btn,
#ticket-lp-wrapper-mar section.ticket-lp_ticket01 .ticket-lp_btn {
    margin-bottom: 0;
}

/*------------------------------------
    ticket-lp_players
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_players,
#ticket-lp-wrapper-mar section.ticket-lp_players {
    margin-bottom: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_players .ticket-lp_pic,
#ticket-lp-wrapper-mar section.ticket-lp_players .ticket-lp_pic {
    margin-bottom: 0;
}

/*------------------------------------
    ticket-lp_youtube
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_youtube,
#ticket-lp-wrapper-mar section.ticket-lp_youtube {
    margin-top: -130px;
}

#ticket-lp-wrapper-jan section.ticket-lp_youtube .ticket-lp_youtube_ttl,
#ticket-lp-wrapper-mar section.ticket-lp_youtube .ticket-lp_youtube_ttl {
    width: 80%;
}

#ticket-lp-wrapper-jan section.ticket-lp_youtube .ticket-lp_youtube_area .ticket-lp_youtube_movie_wrap:nth-of-type(2) .ticket-lp_youtube_ttl,
#ticket-lp-wrapper-mar section.ticket-lp_youtube .ticket-lp_youtube_area .ticket-lp_youtube_movie_wrap:nth-of-type(2) .ticket-lp_youtube_ttl {
    margin-left: auto;
}

#ticket-lp-wrapper-jan section.ticket-lp_youtube .ticket-lp_youtube_wrap,
#ticket-lp-wrapper-mar section.ticket-lp_youtube .ticket-lp_youtube_wrap {
    width: 90%;
    margin: 0 auto 30px;
}

/*------------------------------------
    ticket-lp_seats
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_seats,
#ticket-lp-wrapper-mar section.ticket-lp_seats {
    padding: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_seats .ticket-lp_seats_ttl,
#ticket-lp-wrapper-mar section.ticket-lp_seats .ticket-lp_seats_ttl {
    width: 50%;
    margin: 60px auto 30px;
}

#ticket-lp-wrapper-jan section.ticket-lp_seats .ticket-lp_pic_full,
#ticket-lp-wrapper-mar section.ticket-lp_seats .ticket-lp_pic_full {
    width: 80%;
}

#ticket-lp-wrapper-jan section.ticket-lp_seats .ticket-lp_seats_img,
#ticket-lp-wrapper-mar section.ticket-lp_seats .ticket-lp_seats_img {
    margin-top: 20px;
    padding: 0 7%;
}

/*------------------------------------
    ticket-lp_access
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_access,
#ticket-lp-wrapper-mar section.ticket-lp_access {
    margin: 0;
    padding-bottom: 30px;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_access_ttl,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_access_ttl {
    width: 50%;
    margin: 0 auto 30px;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_pic_full,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_pic_full {
    width: 80%;
    margin-bottom: 20px;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_map_wrap,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_map_wrap {
    margin-bottom: 30px;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_map,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_map {
    margin-bottom: 10px;
    padding: 0 7%;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_map_wrap .ticket-lp_map:first-child,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_map_wrap .ticket-lp_map:first-child {
    margin-bottom: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_access .ticket-lp_btn,
#ticket-lp-wrapper-mar section.ticket-lp_access .ticket-lp_btn {
    margin-bottom: 0;
}

/*------------------------------------
    ticket-lp_ticket02
 ------------------------------------ */
#ticket-lp-wrapper-jan section.ticket-lp_ticket02,
#ticket-lp-wrapper-mar section.ticket-lp_ticket02 {
    background-color: #000;
    padding-top: 40px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket02 .ticket-lp_pic,
#ticket-lp-wrapper-mar section.ticket-lp_ticket02 .ticket-lp_pic {
    padding: 0 4%;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket02 div:nth-child(2),
#ticket-lp-wrapper-mar section.ticket-lp_ticket02 div:nth-child(2) {
    margin-top: -100px;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket02 .ticket-lp_bg_yellow,
#ticket-lp-wrapper-mar section.ticket-lp_ticket02 .ticket-lp_bg_yellow {
    background-color: var(--yellow-lp);
    padding: 30px 0;
}

#ticket-lp-wrapper-jan section.ticket-lp_ticket02 .ticket-lp_btn,
#ticket-lp-wrapper-mar section.ticket-lp_ticket02 .ticket-lp_btn {
    margin-bottom: 0;
}

/* =============================

    hakodate

==============================*/
#ticket-lp-wrapper-hakodate {
    background-color: var(--yellow-lp);
    max-width: 767px;
    width: 100%;
    margin: 0 auto;
}

#ticket-lp-wrapper-hakodate .ticket-lp_pic {
    padding: 0 5%;
    margin-bottom: 30px;
}

#ticket-lp-wrapper-hakodate img {
    width: 100%;
    object-fit: cover;
}

#ticket-lp-wrapper-hakodate .ticket-lp_wrap .ticket-lp_pic.ticket-lp_btn {
    padding: 0 5%;
}


/*------------------------------------
    ticket-lp_mv
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_mv {
    border-bottom: 0;
}

/*------------------------------------
    ticket-lp_ticket01
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_ticket01 {
    padding-top: 40px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_ticket01 .ticket-lp_pic {
    margin-bottom: 30px;
}

#ticket-lp-wrapper-hakodate .ticket-lp_ticket01 .ticket-lp_btn {
    margin-bottom: 10px;
}


/*------------------------------------
    ticket-lp_about
 ------------------------------------ */

#ticket-lp-wrapper-hakodate .ticket-lp_about {
    padding: 0;
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate section.ticket-lp_about .ticket-lp_pic {
    padding: 0;
    margin: 0;
}

#ticket-lp-wrapper-hakodate section.ticket-lp_about .ticket-lp_pic.ticket-lp_btn {
    background: #231815;
    padding: 6% 7% 5%;
}

/*------------------------------------
    ticket-lp_result
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_result {
    padding-bottom: 30px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_result .ticket-lp_pic {
    margin-bottom: 30px;
    padding: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_result .ticket-lp_btn {
    padding: 0 5%;
}

/*------------------------------------
    ticket-lp_movie
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_movie {
    padding-bottom: 30px;
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_movie .ticket-lp_pic {
    padding: 0;
}

#ticket-lp-wrapper-hakodate section.ticket-lp_movie .ticket-lp_youtube_wrap {
    padding: 0 5%;
    margin: 0 auto 30px;
}

#ticket-lp-wrapper-hakodate section.ticket-lp_movie .ticket-lp_youtube_wrap iframe {
    width: 100%;
    height: 400px;
}

@media screen and (max-width: 768px) {
    #ticket-lp-wrapper-hakodate section.ticket-lp_movie .ticket-lp_youtube_wrap iframe {
        height: 200px;
    }
}

/*------------------------------------
    ticket-lp_access
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_access {
    padding-bottom: 30px;
    margin: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_access .ticket-lp_pic:first-child {
    padding: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_access .ticket-lp_map {
    padding: 0 5%;
}

#ticket-lp-wrapper-hakodate .ticket-lp_access iframe {
    height: 400px;
}

@media screen and (max-width: 768px) {
    #ticket-lp-wrapper-hakodate .ticket-lp_access iframe {
        height: 200px;
    }
}

/*------------------------------------
    ticket-lp_gallery
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_gallery {
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_gallery .ticket-lp_pic:first-child {
    padding: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_wrap .ticket-lp_gallery a .ticket-lp_btn {
    padding: 0 5%;
}

/*------------------------------------
    ticket-lp_ticket02
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_ticket02 {
    margin-bottom: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_ticket02 .ticket-lp_pic:first-child {
    padding: 0;
}

#ticket-lp-wrapper-hakodate .ticket-lp_wrap .ticket-lp_ticket02 a .ticket-lp_btn {
    padding: 0 5%;
    margin-bottom: 10px;
}



/*------------------------------------
    ticket-lp_footer-logo
 ------------------------------------ */
#ticket-lp-wrapper-hakodate .ticket-lp_footer-logo {
    width: 250px;
}


@media screen and (max-width: 768px) {
    #ticket-lp-wrapper-hakodate .ticket-lp_footer-logo {
        width: 150px;
    }
}





/* =============================

    nov2025

==============================*/
#ticket-lp-wrapper-nov2025 {
    background-color: var(--yellow-nov2025);
    max-width: 767px;
    width: 100%;
    margin: 0 auto;
}


#ticket-lp-wrapper-nov2025 .ticket-lp_pic {
    padding: 0;
    margin-bottom: 0;
}


#ticket-lp-wrapper-nov2025 .ticket-lp_mv {
    border-bottom: 15px solid var(--yellow-nov2025);
}

#ticket-lp-wrapper-nov2025 .ticket-lp_about {
    padding: 0;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_btn {
    margin: 50px 20px;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_seats,
#ticket-lp-wrapper-nov2025 .ticket-lp_access {
    padding: 0;
    margin: 0;
}

#ticket-lp-wrapper-nov2025 section.ticket-lp_seats .ticket-lp_seats_ttl,
#ticket-lp-wrapper-nov2025 section.ticket-lp_access .ticket-lp_access_ttl {
    width: 50%;
    margin: 0 auto 35px;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_seats_txt {
    margin-bottom: 35px;
    width: 87%;
}


#ticket-lp-wrapper-nov2025 .ticket-lp_seats_img {
    margin-bottom: 100px;
    padding: 0 5%;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_access_txt {
    margin-bottom: 35px;
    width: 72%;
}


#ticket-lp-wrapper-nov2025 section.ticket-lp_access iframe{
    height: 230px;
    margin-bottom: 20px;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_map,
#ticket-lp-wrapper-nov2025 .ticket-lp_access01,
#ticket-lp-wrapper-nov2025 .ticket-lp_access02 {
    margin: 0 7%;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_access01 {
    margin-bottom: 16px;
}


#ticket-lp-wrapper-nov2025 section.ticket-lp_ticket02 .ticket-lp_sameday {
    margin-top:40px;
    padding: 0 4%;
}

#ticket-lp-wrapper-nov2025 .ticket-lp_footer-logo{
    width: 35%;
    padding-bottom:20%;
}
/* =============================

    footer.php

==============================*/
#footer-wrapper {
    position: relative;
    background: var(--black);
    overflow: hidden;
    z-index: 10;
}

#footer-wrapper::after {
    content: '';
    border: solid 2px var(--yellow);
    position: absolute;
    top: -10%;
    left: 28%;
    height: 120%;
    transform: rotate(34deg);
    z-index: 0;
}

#footer-wrapper .footer_wrap.view_sp {
    display: none;
}

#footer-wrapper .footer_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    margin: 0 auto;
    padding: 6rem 0 2.5rem;
}

#footer-wrapper .footer_wrap_pic {
    width: 15%;
    margin-right: 6rem;
}

#footer-wrapper ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    position: relative;
}

#footer-wrapper .footer_nav {
    display: flex;
    justify-content: center;
    align-items: center;
}

#footer-wrapper .footer_menu {
    position: relative;
    z-index: 1;
}

#footer-wrapper .footer_menu .footer_main_menu li {
    width: calc(100% / 3);
    font-weight: bold;
    padding-bottom: 2rem;
}

#footer-wrapper .footer_menu .footer_main_menu::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    border: solid 1px var(--black-a085);
    height: 15.2rem;
}

#footer-wrapper .footer_menu .footer_sub_menu li {
    /*width: calc(100% / 3);*/
    width: fit-content;
    font-weight: bold;
}

#footer-wrapper .footer_menu .footer_sub_menu li:last-child {
    margin-left: 35px;
}

#footer-wrapper .footer_sns {
    margin-left: 6.0rem;
}

#footer-wrapper .footer_sns ul {
    width: max-content;
}

#footer-wrapper .footer_sns ul li {
    padding: 0 1.0rem;
    height: 2.0rem;
}

#footer-wrapper .footer_sns img {
    object-fit: contain;
}

#footer-wrapper ul li a {
    color: var(--white);
}

#footer-wrapper .copyright {
    background: var(--black);
    text-align: right;
    color: var(--white);
}

@media screen and (max-width: 768px) {
    #footer-wrapper::after {
        display: none;
    }

    #footer-wrapper .footer_wrap.view_pc {
        display: none;
    }

    #footer-wrapper .footer_wrap.view_sp {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 7.2rem 0 3.2rem;
    }

    #footer-wrapper .footer_sns {
        margin-left: 0;
        position: relative;
        padding: 2.4rem 0 4.0rem;
        border-bottom: solid 1px var(--black-a085);
        width: 100%;
    }

    #footer-wrapper .footer_sns::before {
        content: 'Follow us';
        position: absolute;
        top: -3.0rem;
        font-size: 2.0rem;
        font-weight: bold;
        color: rgb(255 255 255 / 0.3);
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }

    #footer-wrapper .footer_sns ul {
        justify-content: center;
        align-items: center;
        margin: 0 auto;
        width: 80%;
    }

    #footer-wrapper .footer_sns ul li {
        height: 2.8rem;
        width: calc(100% / 5);
    }

    #footer-wrapper .footer_nav {
        border-bottom: solid 1px var(--black-a085);
        margin-top: 5.6rem;
        padding-bottom: 4.0rem;
        align-items: flex-start;
        width: 100%;
    }

    #footer-wrapper .footer_wrap_pic {
        margin-right: 4.0rem;
        width: 9.2rem;
    }

    #footer-wrapper .footer_menu {
        width: 18.2rem;
    }

    #footer-wrapper .footer_menu .footer_main_menu li {
        width: calc(100% / 2);
    }

    #footer-wrapper .footer_menu .footer_main_menu li a {
        font-size: 1.1rem;
    }

    #footer-wrapper .footer_menu .footer_main_menu::after {
        border: 0;
    }

    #footer-wrapper .footer_sub_menu {
        padding: 3.7rem 0;
        border-bottom: solid 1px var(--black-a085);
        width: 100%;
    }

    #footer-wrapper .footer_sub_menu ul {
        justify-content: center;
    }

    #footer-wrapper .footer_sub_menu ul li {
        margin: 0 1.1rem;
    }

    #footer-wrapper .copyright {
        text-align: center;
        padding: 0 0 3.2rem;
    }

    #footer-wrapper .copyright p {
        font-size: 1.0rem;
    }
}



/* =============================

    404.php

==============================*/
#error-wrapper {
    max-width: 1040px;
    margin: 0 auto 6.0rem;
}

#error-wrapper .error_ttl {
    text-align: center;
    font-size: 3.2rem;
    font-weight: bold;
    padding: 6rem 0;
}

#error-wrapper .error_txt {
    width: 60%;
    margin: 0 auto;
}

#error-wrapper .error_redtxt {
    color: var(--err-red);
    width: 60%;
    margin: 2.0rem auto;
}

#error-wrapper .error_redtxt a {
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
    #error-wrapper {
        width: 90%;
    }

    #error-wrapper .error_ttl {
        font-size: 2.4rem;
    }

    #error-wrapper .error_txt {
        width: 90%;
    }

    #error-wrapper .error_redtxt {
        width: 90%;
    }

    #error-wrapper .error_redtxt a {
        font-size: 1.4rem;
    }
}

@media(min-width: 768px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}