/* Layout */
@media screen and (min-width:768px) {
    .spver { display: none; }
    div.container {
        margin-left: 100px;
    }
    footer {
        padding-top: 170px;
    }
}
@media screen and (max-width:767px) {
    .pcver { display: none; }
    div.container {
        margin-left: 0;
    }
    .content_title img.topics { width: clamp(90px, 135px, 181px); }
    .content_title img.news { width: clamp(74px, 111px, 147px); }
    .content_title img.playlists { width: clamp(114px, 166px, 227px); }
    .content_title img.aftermovie { width: clamp(151px, 226px, 302px); }
    body.hidden {
        overflow: hidden;
        height: 100%;
    }
    body {
        font-size: 1.3rem!important;
    }
    footer {
        padding-top: 80px;
    }
}
body {
    font-family: Helvetica, "YuGothic", "游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
    background-color: #E7EAE8;
}
.wrap { width: auto; }
.sub-footer>.title,
.content_title,
.btn a {
    font-family: Helvetica, "YuGothic", "游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
}
.content_title span {
    display: block;
    font-weight: 400;
    position: relative;
    margin-top: 14px;
    font-size: 1.8rem;
}
.content_title img.topics { max-width: 181px; }
.content_title img.news { max-width: 147px; }
.content_title img.playlists { max-width: 227px; }
.content_title img.aftermovie { max-width: 302px; }
.topics_wrap,
.banner_wrap,
.pickup_wrap,
.c-playlist,
.sub-footer,
footer {
    background-color: #E7EAE8;
}
.content_title,
.sub-footer > .title,
.pickup_cat,
.pickup_title,
.slider__mask p.date,
.topics_list_date,
.topics_list_title,
.topics_list_arrow,
.btn a:hover,
footer .copy-wrap > .copy,
footer ul.links li a,
body a,
.article_disc_list li a:not([href^="tel:"]),
.notice_table td a,
a[href^="tel:"],
.article_num_list li a:not([href^="tel:"]),
.contact_form_wrap p span a {
    color: #000;
}
.sub-footer>.title {
    font-weight: 300;
}
.topics_btn.btn a {
    background-color: #E7EAE8;
    color: #000;
    border: none;
    font-weight: 400;
}
.content img {
    width: 100%;
}
section.main_section.first .content {
    padding-top: 0;
}
.ul_list__item a {
    text-decoration: underline;
}
.ul_list__item a:hover {
    text-decoration: none;
}
.link_disable a,
#global-nav .link_disable a,
#global-nav .sub-menu .sub-menu-nav .link_disable a {
    pointer-events: none;
    color: rgba(0,0,0,0.3);
}
a:hover,
.tickets .scroll-wrap>.main-contents>.main-inner p a:hover {
    text-decoration: none;
}
a:hover,
#global-nav ul li a:hover,
#global-nav .sub-menu > a:hover,
#global-nav .sub-menu-nav a:hover,
.topics_btn.btn a:hover,
.topics_list_item a:hover,
.topics_list_item a:hover .topics_list_detail .topics_list_date,
.topics_list_item a:hover .topics_list_detail .topics_list_title,
footer ul.links li a:hover,
.article_disc_list li a:not([href^="tel:"]):hover,
.notice_table td a:hover,
a[href^="tel:"]:hover,
.article_num_list li a:not([href^="tel:"]):hover,
.tickets .scroll-wrap>.main-contents>.main-inner p a:hover,
.contact_form_wrap p span a:hover,
.red_txt {
    color: #CD4B7A;
}
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after {
    background-color: #CD4B7A;
}
.temp_hidden { display: none!important; }

/* MENU */
@media screen and (min-width:768px) {
    #sidebar {
        width: auto;
        height: 100vh;
        text-align: center;
    }
    #global-nav {
        transform: translateX(-400px);
        transition: transform 250ms ease-in-out;
        width: 276px;
        height: 100%;
        position: fixed;
        left: 0;
        background-color: #fff;
        z-index: 10;
        padding: 0 34px;
    }
    #global-nav.submenu_hover {
        width: 500px;
    }
    #global-nav .sub-menu-nav {
        position: fixed;
        color: #000;
        top: 0;
        left: 240px;
        width: 0;
        height: 100vh;
        overflow: hidden;
    }
    #global-nav .sub-menu-nav a,
    #global-nav .sub-menu:hover .sub-menu-nav {
        width: 100%;
    }
    #global-nav .sub-menu.is-active > a span:after,
    #global-nav .sub-menu > a:hover span:after {
        transform: translateY(-50%) rotate(180deg);
    }
    .fixed_side_menu {
        width: 100px;
        height: 100%;
    }
    .head_logo img {
        width: 50px;
        top: 20px;
        left:25px;
    }
    input[type="checkbox"]:checked ~ #global-nav {
        transform: translateX(100px);
    }
    #global-nav .menu_box {
        width: 208px;
    }
    label.sidebarIconToggle {
        transition: all 0.3s;
        box-sizing: border-box;
        cursor: pointer;
        position: absolute;
        height: 100%;
        width: 100%;
        top: 50%;
        transform: translate(-50%, -50%);
        left: 50%;
        height: 28px;
        width: 32px;
        padding: 0;
        margin: 0;
        z-index: 11;
    }
    .horizontal {
        top: 14px;
    }
    .diagonal.part-2 {
        top: 29px;
    }
}
@media screen and (max-width:767px) {
    #sidebar {
        width: 100%;
        height: 50px;
        top: 0;
    }
    #global-nav {
        transform: translateX(-200%);
        transition: transform 250ms ease-in-out;
        width: 100%;
        height: 100%;
        position: fixed;
        left: 0;
        background-color: #fff;
        z-index: 10;
        padding: 0 34px;
        overflow: scroll;
        top: 50px;
    }
    .sub-menu-nav { display: none; }
    #global-nav .sub-menu > a.active span:after {
        transform: translateY(-50%) rotate(180deg);
    }
    .fixed_side_menu {
        width: 100%;
        height: 50px;
    }
    .head_logo img {
        width: 76px;
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
    }
    input[type="checkbox"]:checked ~ #global-nav {
        transform: translateX(0px);
    }
    #global-nav .menu_box {
        max-height: 100%;
        width: calc(100% - 134px);
    }
    .header-sns li a img {
        width: 100%;
        height: auto;
    }
    label.sidebarIconToggle {
        transition: all 0.3s;
        box-sizing: border-box;
        cursor: pointer;
        position: absolute;
        height: 100%;
        width: 100%;
        top: 50%;
        transform: translateY(-50%);
        left: 16px;
        height: 12px;
        width: 27px;
        padding: 0;
        margin: 0;
        z-index: 11;
    }
    .horizontal {
        top: 6px;
    }
    .diagonal.part-2 {
        top: 12px;
    }
}
#sidebar {
	position: fixed;
	color: #000;
	background: #fff;
    z-index: 10;
}
.fixed_side_menu {
    position: fixed;
    left: 0;
    background: #fff;
    z-index: 11;
}
.head_logo img {
    position: absolute;
    z-index: 11;
}
input[type=checkbox] {
    transition: all 0.3s;
    box-sizing: border-box;
    display: none;
}
label.sidebarIconToggle:before,
label.sidebarIconToggle:after {
    content: none;
}
.spinner {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #000;
}
.horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
}
.diagonal.part-1 {
    position: absolute;
    left: 0;
    top: 0;
    transition: all 0.3s;
    box-sizing: border-box;
}
.diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
}
input[type=checkbox]:checked ~ label.sidebarIconToggle > .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    opacity: 0;
}
input[type=checkbox]:checked ~ label.sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 8px;
}
input[type=checkbox]:checked ~ label.sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    top: 8px;
}
#global-nav .menu_box {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    text-align: left;
    padding: 0;
}
#global-nav ul {
	list-style: none;
	margin-left: 0;
}
#global-nav > ul > li {
	position: relative;
}
#global-nav a {
	text-decoration: none;
	display: block;
	padding: 10px 0;
	-moz-transition: background-color .3s linear;
	-webkit-transition: background-color .3s linear;
	transition: background-color .3s linear;
    color: #000;
}
#global-nav .sub-menu.is-active > a,
#global-nav a:hover {
	color: rgba(0,0,0,0.8);
	background: #fff;
}
#global-nav .sub-menu {
    width: calc(100% + 36px);
}
#global-nav .sub-menu > a {
	position: relative;
    color: #000;
}
#global-nav .sub-menu > a span {
    position: relative;
}
#global-nav .sub-menu > a span:before,
#global-nav .sub-menu > a span:after {
	content: "";
    display: inline-block;
	position: absolute;
    top: 50%;
	right: -2em;
	margin: auto;
	vertical-align: middle;
	width: 11px;
	height: 1px;
	transform: translateY(-50%);
    transition: opacity .5s;
    background-color: #000;
}
#global-nav .sub-menu > a span:after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform .5s;
}
#global-nav .sub-menu-nav a {
	color: #000;
}
#global-nav .sub-menu-nav a:hover {
	background: #fff;
}
.history {
    display: block;
    margin: 50px auto 25px;
    text-align: center;
}
ul.header-sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
ul.header-sns li {
    width: 15%;
}

/* FV */
section.fv ul.top_slide li img  {
    /*
    height: 100vh;
    width: auto;
    object-fit: cover;
    */
    animation: fadeIn 3s cubic-bezier(0.33, 1, 0.68, 1) forwards;
    width: 100%;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* TOPICS */
@media screen and (min-width:768px) {
    .pickup_wrap {
        padding: 250px 0;
    }
}
@media screen and (max-width:767px) {
    .pickup_wrap {
        padding: 125px 0 50px;
    }
}
.pickup_inner {
    width: 90%;
    margin: 70px auto 50px;
}
.slider__mask {
    aspect-ratio: 1 / 1;
    position: relative;
}
.slider__mask p.date {
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 1.7rem;
    font-weight: 300;
    background-color: #fff;
    padding: 4px;
}
.pickup_cat {
    background-color: rgba(255,255,255,0);
    font-size: 1.4rem;
    margin-top: 10px;
    padding: 0;
    font-weight: 600;
}
.pickup_title {
    line-height: 1.3;
    font-weight: 500;
}
.slider_arrow.wrap {
    width: 100%!important;
}

/* NEWS */
@media screen and (max-width:767px) {
    .topics_wrap {
        padding: 50px 0 50px;
    }
}
.news_list {
    margin-top: 70px;
}
.news_list .topics_list_item {
    border-bottom: 1px solid #707070;
}
.btn a {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
}

/* AFTER MOVIE */
@media screen and (min-width:768px) {
    .movie_wrap .banner {
        margin: 70px auto 0;
    }
}
@media screen and (max-width:767px) {
    .movie_wrap .banner {
        margin: 35px auto 0;
    }
}
.movie_wrap {
    background-image: none!important;
}
.movie_wrap .banner {
    width: 90%;
}

/* PLAYLIST */
.c-playlist__flex {
    margin: 70px 0 auto;
}

/* SUB FOOTER */
@media screen and (min-width:768px) {
    .sub-footer>.logo-list.mb {
        margin-bottom: 150px;
    }
    .sub-footer>.logo-list>li {
        width: 30%;
        max-width: 280px;
        margin-left: 2%;
        margin-right: 2%;
    }
    .sub-footer>.logo-list>li.hmv {
        max-width: 220px;
    }
    .sub-footer>.logo-list>li.logos {
        max-width: 220px;
        margin-top: -30px;
    }
}
@media screen and (max-width:767px) {
    .sub-footer>.logo-list.mb {
        margin-bottom: 50px;
    }
    .sub-footer>.logo-list>li {
        width: 45%;
        max-width: 110px;
        margin-left: 10px;
        margin-right: 10px;
    }
    .sub-footer>.logo-list>li.hmv {
        max-width: 80px;
    }
    .sub-footer>.logo-list>li.logos {
        display: contents;
        max-width: 90px;
        margin-top: 5px;
    }
    .sub-footer>.logo-list>li.logos img {
        max-width: 90px;
    }
}
.sub-footer>.logo-list {
    width: 100%;
}
.sub-footer>.logo-list.powered_by li {
    max-width: 450px;
}
/* footer */
@media screen and (min-width:768px) {
    footer .wrap .inner > div {
        width: 30%;
    }
    .footer-sns {
        justify-content: flex-start;
        margin-bottom: 5px;
    }
}
@media screen and (max-width:767px) {
    footer .wrap .inner > div {
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
    }
    .footer-sns {
        justify-content: center;
        margin-bottom: 20px;
    }
}
footer .wrap {
    width: 100%;
}
footer .wrap .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}
.footer-sns {
    align-items: center;
}
.footer-sns > li {
    margin: 0 12.5px 0 0;
}
.footer-sns > li:last-child {
    margin: 0;
}
.footer-sns>li a img {
    width: 44px;
    height: 44px;
}
footer ul.links li {
    display: inline-block;
    margin-right: 20px;
}
footer ul.links li:last-child {
    margin-right: 0;
}
.footer_logo {
    text-align: center;
}
footer .footer_logo .logo {
    margin: 0 auto;
}
footer .copy-wrap {
    text-align: right;
}

/* Pop Up */
body.open_popup {
    overflow: hidden;
}
.bg_onetime_popup {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 9999;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.5s;
}
body.open_popup .bg_onetime_popup {
    opacity: 1;
    visibility: visible;
}
.onetime_popup {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 80%;
    max-width: 700px;
}
.onetime_popup_title {
    position: relative;
    margin: 0px;
    text-align: center;
}
.onetime_popup_title_close {
    position: absolute;
    top: -25px;
    right: 0;
    width: 30px;
    height: 30px;
    transform: translateY(-50%);
    cursor: pointer;
}
.onetime_popup_title_close::before,
.onetime_popup_title_close::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 100%;
    height: 4px;
    background-color: #fff;
    content: "";
}
.onetime_popup_title_close::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.onetime_popup_title_close::after {
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

/* breadcrumb */
@media screen and (min-width:768px) {
    section.breadcrumb ul li,
    section.breadcrumb ul li a {
        font-size: 1.6rem;
    }
    section.breadcrumb ul li a:after {
        width: 8px;
        height: 8px;
        margin: -4px 20px 0;
    }
    section.breadcrumb {
        margin: 0 auto 30px;
    }
}
@media screen and (max-width:767px) {
    section.breadcrumb ul li,
    section.breadcrumb ul li a {
        font-size: 1rem;
    }
    section.breadcrumb ul li a:after {
        width: 6px;
        height: 6px;
        margin: -2px 10px 0;
    }
    section.breadcrumb {
        margin: 0 auto 30px;
    }
}

section.breadcrumb ul li {
    display: inline;
}
section.breadcrumb ul li a:after {
    content: "";
    border-top: 1px solid #000;
    border-left: 1px solid #000;
    transform: rotate(135deg);
    display: inline-block;
    vertical-align: middle;
}

/* Subpage Layout */
@media screen and (min-width:768px) {
    main.subpage {
        padding: 70px 5% 0;
        margin: 0 auto;
    }
    .sub_fv h1 {
        text-align: center;
        margin: 0 auto 100px;
    }
    .sub_fv h1 img {
        margin-bottom: 25px;
    }
    .sub_fv h1 span {
        font-size: 1.8rem;
    }
    .sub_fv .content {
        padding: 0 0 85px;
    }
    section.main_section .content {
        padding: 85px 0;
    }
    table.c-table tr th {
        font-size: 2rem;
        border-top: 1px solid #707070;
        border-bottom: 1px solid #707070;
        padding: 40px 0;
        width: 25%;
    }
    table.c-table tr td {
        font-size: 1.8rem;
        border-top: 1px solid #707070;
        border-bottom: 1px solid #707070;
        padding: 40px 0;
        width: 75%;
    }
    table.c-table tr th span {
        display: block;
        font-size: 1.6rem;
    }
    section.main_section .content h2 {
        padding: 25px;
        font-size: 2.2rem;
        margin-bottom: 70px;
    }
}
@media screen and (max-width:767px) {
    main.subpage {
        padding: 30px 20px 0;
        margin: 50px auto 0;
    }
    .sub_fv h1 {
        text-align: center;
        margin: 0 auto 50px;
    }
    .sub_fv h1 img {
        margin-bottom: 5px;
    }
    .sub_fv h1 span {
        font-size: 1.5rem;
    }
    .sub_fv .content {
        padding: 0 0 40px;
    }
    section.main_section .content {
        padding: 40px 0;
    }
    section.main_section.food_section .content {
        padding: 0 0 40px;
    }
    table.c-table tr th {
        font-size: 1.7rem;
        border-top: 1px solid #707070;
        padding: 20px 0;
        width: 100%;
    }
    table.c-table tr td {
        padding: 0 0 20px;
        width: 100%;
    }
    table.c-table tr:last-child td {
        border-bottom: 1px solid #707070;
    }
    table.c-table tr th span {
        display: inline-block;
        margin-left: 10px;
        font-size: 1.4rem;
    }
    section.main_section .content h2 {
        padding: 15px 10px;
        font-size: 1.7rem;
        margin-bottom: 35px;
    }
}
main.subpage {
    width: 100%;
    overflow: hidden;
}
main.subpage.sticky {
    overflow: visible;
}
.sub_fv h1.has_fv_image {
    margin: 0 auto 40px;
}
.sub_fv h1 span {
    display: block;
    font-weight: 500;
}
section.main_section .content h2 {
    background-color: #fff;
    font-weight: 500;
}
table.c-table tr th {
    color: #000;
    vertical-align: middle;
}
table.c-table tr td {
    color: #090A09;
    vertical-align: middle;
}
.link_box {
    margin-top: 100px;
    padding-bottom: 35px;
    display: inline-block;
}
.link_box.submargin {
    margin-top: 50px;
}
.link_box a {
    padding: 0 100px 35px 10px;
    position: relative;
    border-bottom: 1px solid #000;
}
.link_box a:hover {
    text-decoration: none;
    border-bottom: 1px solid #CD4B7A;
}
.link_box a:after {
    content: "";
    background-image: url("../img/common/link_icon.png");
    width: 11px;
    height: 20px;
    background-size: cover;
    position: absolute;
    right: 0;
    top: calc(50% - 17.5px);
    transform: translateY(-50%);
}
.link_box a:hover:after {
    background-image: url("../img/common/link_icon_hover.png");
}
.c-table tr {
    border-top: none;
}

/* INFO */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_info {
        max-width: 338px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_info {
        max-width: calc((338px * 2)/3);
    }
}
.point-box .item .point_title h3 {
    font-size: 2rem;
    margin-bottom: 17px;
    font-weight: 500;
}
.point-box .item .point_title h3 span {
    font-size: 1.6rem;
    border-bottom: 1px solid #000;
    display: inline-block;
    margin-bottom: 5px;
}
.info .point-box>.item>.img {
    margin-bottom: 17px;
}
.info .point-box>.item>p {
    text-align: right;
    margin: 40px auto 0;
}

/* Message */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_message {
        max-width: 244px;
    }
    .message_content p {
        margin-bottom: 6vh;
        font-size: 2rem;
    }
    .message_content p.sign {
        font-size: 1.8rem;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_message {
        max-width: calc((244px * 2)/3);
    }
    .message_content p {
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    .message_content p.sign {
        font-size: 1.3rem;
    }
}
.message_content p {
    text-align: center;
}
.message_content p.sign {
    text-align: right;
}
.message_content p.sign span {
    display: inline-block;
    margin-left: 1em;
}

/* Notice */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_notice {
        max-width: 157px;
    }
    .sub_fv h2 {
        font-size: 1.8rem;
        margin-bottom: 70px;
    }
    main.notice .content p {
        margin-bottom: 20px;
        font-size: 1.8rem;
    }
    section.main_section.notice_section .content h2:first-child {
        margin: 0 auto 70px;
    }
    section.main_section.notice_section .content h2 {
        margin: 140px auto 70px;
    }
    .resale_table.notice_table.is-ticket {
        margin-top: 70px;
    }
    .notice_table .resale_cell.table_heading.type_normal {
        padding: 40px 0;
        font-size: 1.8rem;
    }
    .resale_table.notice_table.is-ticket td {
        padding: 40px 0;
        font-size: 1.8rem;
    }
    .p-resale__logo .p-resale__tag {
        padding-bottom: 0;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_notice {
        max-width: calc((157px * 2)/3);
    }
    .sub_fv h2 {
        font-size: 1.4rem;
        margin-bottom: 35px;
    }
    main.notice .content p {
        margin-bottom: 10px;
        font-size: 1.4rem;
    }
    section.main_section.notice_section .content h2:first-child {
        margin: 0 auto 35px;
    }
    section.main_section.notice_section .content h2 {
        margin: 70px auto 35px;
    }
    .resale_table.notice_table.is-ticket {
        margin-top: 35px;
    }
    .notice_table .resale_cell.table_heading.type_normal,
    .resale_table.notice_table.is-ticket td {
        padding: 20px 10px;
        font-size: 1.3rem;
    }
    .detail .p-resale__flex {
        display: block;
    }
    .detail .p-resale__flex .p-resale__logo {
        width: 100%;
    }
    .p-resale__logo .p-resale__tag {
        padding-bottom: 1px;
    }
}
.sub_fv h2 {
    font-weight: 700;
}
.notice_table .resale_cell.table_heading.type_normal {
    background-color: #000;
    height: auto;
    color: #fff;
    text-align: center;
    font-weight: 500;
    border: 1px solid #707070;
}
.resale_table.notice_table.is-ticket td {
    width: 65%;
    border: 1px solid #707070;
    background-color: #E7EAE8;
    text-align: center;
}
.p-resale__flex {
    margin-bottom: 10px;
}
.p-resale__logo a img.ticket_logo {
    max-width: 96px;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-heading>.panel-title .title-tab>.name>span.cat {
    padding: 5px 10px 4px;
}

/* FAQ */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_faq {
        max-width: 113px;
    }
    section.main_section .content h2.p-faq__title {
        font-size: 2rem;
        margin-top: 120px;
        margin-bottom: 70px;
    }
    .p-faq__body {
        padding: 24px 24px 100px 40px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_faq {
        max-width: calc((113px * 2)/3);
    }
    section.main_section .content h2.p-faq__title {
        font-size: 1.5rem;
        margin-top: 60px;
        margin-bottom: 35px;
    }
    .p-faq__body {
        padding: 24px 24px 50px 40px;
    }
}
section.main_section.faq_section .content {
    padding: 0 0 85px;
}
section.main_section .content h2.p-faq__title {
    background-color: #E7EAE8;
    padding: 0;
    font-weight: 700;
    color: #000;
}
section.main_section .content h2.p-faq__title:first-child {
    margin-top: 0;
}
.p-faq__content {
    background-color: #fff;
    border-radius: 0;
}
.p-faq__heading {
    background-color: #fff;
    border-radius: 0;
    padding: 24px 60px 24px 24px;
}
.p-faq__text {
    color: #000;
    font-weight: 500;
}
.p-faq__heading::before, .p-faq__heading::after {
    background-color: #000;
    height: 1px;
    width: 20px;
    right: 24px;
}
.p-faq__content+.p-faq__content {
    margin-top: 1px;
}
.p-faq__body {
    background-color: #E7EAE8;
    position: relative;
}
.p-faq__body:before {
    background-color: #000;
    content: "";
    height: 1px;
    width: 20px;
    right: 24px;
    pointer-events: none;
    position: absolute;
    top: 40px;
    left: 0;
    transform: translateX(-40px);
    opacity: 0;
    transition: all 400ms ease-in-out;
}
.p-faq__body.is-open:before {
    transform: translateX(0px);
    opacity: 1;
}

/* News */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_news {
        max-width: 147px;
    }
    .topics_list_title {
        font-size: 2.6rem;
    }
    .topics_list_date {
        font-size: 1.7rem;
        width: 90px;
        margin-right: 20px;
    }
    .topics_list_title {
        width: calc(100% - 120px);
    }
    .news_list.topics_list {
        margin-bottom: 50px;
    }
    .pagination .wp-pagenavi a,
    .article-nav .item.to-list a.back {
        font-size: 2.6rem;
    }
    .pagination .wp-pagenavi a.nextpostslink:after,
    .previouspostslink:before,
    .article-nav .item.to-list a.back:before {
        width: 30.5px;
        height: 11px;
        margin-top: -13px;
    }
    body.home .news_list.topics_list {
        width: 90%;
    }
    .news_list.topics_list {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_news {
        max-width: calc((147px * 2)/3);
    }
    .topics_list_title {
        font-size: 1.6rem;
    }
    .topics_list_date {
        font-size: 1.3rem;
    }
    .news_list.topics_list {
        margin-bottom: 25px;
        padding: 0 20px;
    }
    .pagination .wp-pagenavi a,
    .article-nav .item.to-list a.back {
        font-size: 1.6rem;
    }
    .pagination .wp-pagenavi a.nextpostslink:after,
    .previouspostslink:before,
    .article-nav .item.to-list a.back:before {
        width: 15.25px;
        height: 5.5px;
        margin-top: -6.5px;
    }
    .news_list.topics_list {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
}
.sub_fv.news .content {
    padding: 0;
}
section.main_section.news_section .content {
    padding: 0;
}
.topics_list_title {
    font-weight: 500;
}
.topics_list_item a:after {
    content: "";
    background-image: url("../img/common/link_icon.png");
    width: 11px;
    height: 20px;
    background-size: cover;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.topics_list_item a:hover:after {
    background-image: url("../img/common/link_icon_hover.png");
}
.topics_list_item a:hover .topics_list_detail {
    opacity: 1;
}
.pagination .wp-pagenavi {
    display: block;
}
.pagination .wp-pagenavi a {
    -webkit-transition: all .4s;
    background: none;
    border: none;
    color: #000;
    display: block;
    margin: 0;
    transition: all .4s;
    font-weight: 500;
}
.pagination .wp-pagenavi a:hover {
    background: none;
    border: none;
    color: #CD4B7A;
}
.pagination .wp-pagenavi a.nextpostslink:after,
.previouspostslink:before,
.article-nav .item.to-list a.back:before {
    display: inline-block;
    content: "";
    line-height: 2.6rem;
    background-size: cover;
    vertical-align: middle;
}
.pagination .wp-pagenavi a.nextpostslink:after {
    background-image: url("../img/common/pagenext_icon.png");
    margin-left: 13px;
    transition: all .3s;
}
.previouspostslink:before,
.article-nav .item.to-list a.back:before {
    background-image: url("../img/common/pageprev_icon.png");
    margin-right: 13px;
    transition: all .3s;
}
.pagination .wp-pagenavi a.nextpostslink:hover:after {
    background-image: url("../img/common/pagenext_icon_hover.png");
}
.previouspostslink:hover:before,
.article-nav .item.to-list a.back:hover:before {
    background-image: url("../img/common/pageprev_icon_hover.png");
}
.pagination .wp-pagenavi a.nextpostslink {
    float: right;
}
.previouspostslink {
    float: left;
}
.article-nav .item.to-list a.back {
    background: none;
    border: none;
    color: #000;
    display: block;
    text-align: left;
}
.topics_list_detail {
    width: 100%;
}

/* Map */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_map {
        max-width: 307px;
    }
    section.area_section .content .appli h3.normal_title.is-mb__sm,
    section.area_section .content h4.appli_label_title {
        font-size: 2rem;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_map {
        max-width: calc((307px * 2)/3);
    }
    section.area_section .content .appli h3.normal_title.is-mb__sm,
    section.area_section .content h4.appli_label_title {
        font-size: 1.8rem;
    }
}
.list_tab.is-appli li,
.list_tab.is-appli li.active {
    padding: 0;
}
.appli_wrap,
.list_tab.is-appli {
    background-color: rgba(255,255,255,0);
}
.appli .appli_main__title {
    background-color: #fff;
    color: #000;
}
.appli_label_title.is-type1 span {
    background-color: #000;
}
.appli_label_title.is-type2 span {
    background-color: #CD4B7A;
}

/* Campsites */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_campsites {
        max-width: 291px;
    }
    section.sub_fv p.sub_fv_catch {
        margin: 0 auto 100px;
        font-size: 2rem;
    }
    section.main_section.area_section .content h2:not(:first-child) {
        margin-top: 140px;
    }
    section.area_section .content h3 {
        font-size: 3rem;
        margin-bottom: 30px;
    }
    .area_info ul,
    .area_info {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 30px auto 0;
    }
    .area_info ul li:not(:last-child),
    .area_info dl:not(:last-child) {
        margin-right: 5%;
    }
    section.area_section .content h4 {
        font-size: 2.2rem;
        margin-bottom: 25px;
    }
    section.area_section dl dt,
    section.area_section dl dd {
        display: inline-block;
        font-size: 2rem;
    }
    .logos_rental > div.txt {
        width: 80%;
    }
    .logos_rental > div.image {
        max-width: 184px;
        width: 15%;
    }
    .detail_button a,
    .detail_button.unavailable {
        padding: 38px 0;
        font-size: 2.2rem;
    }
    .logos_goods_rental_box {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .logos_goods_rental_box > div:not(:last-child) {
        margin-right: 5%;
        margin-bottom: 40px;
    }
    .logos_goods_rental_box > div h5:not(:first-child) {
        margin-top: 20px;
    }
    .logos_goods_rental_box > div h5 {
        font-size: 2rem;
        margin-bottom: 10px;
    }
    .two_col_goods {
        display: grid;
        gap: 0 30px;
        align-items: start;
        grid-template-columns: 1fr 1fr;
        justify-content: space-between;
        margin: 70px auto 0;
    }
    .three_col_goods {
        display: grid;
        gap: 30px;
        align-items: start;
        grid-template-columns: 1fr 1fr 1fr;
        justify-content: space-between;
        margin: 70px auto 0;
    }
    .logos_goods_rental {
        margin-top: 90px;
    }
    .two_col_goods ul li,
    .three_col_goods ul li {
        font-size: 2rem;
        list-style-type: disc;
        margin-left: 1em;
    }
    .two_col_goods p,
    .three_col_goods p {
        font-size: 1.8rem;
        margin-left: 1.1em;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_campsites {
        max-width: calc((291px * 2)/3);
    }
    section.sub_fv p.sub_fv_catch {
        margin: 0 auto 50px;
        font-size: 1.5rem;
    }
    section.main_section.area_section .content h2:not(:first-child) {
        margin-top: 70px;
    }
    section.area_section .content h3 {
        font-size: 1.7rem;
        margin-bottom: 15px;
    }
    .area_info ul,
    .area_info {
        margin: 15px auto 0;
    }
    section.area_section .content h4 {
        font-size: 1.7rem;
        margin-bottom: 15px;
    }
    section.area_section dl dt,
    section.area_section dl dd {
        display: inline;
    }
    .logos_rental > div.txt {
        width: 100%;
    }
    .logos_rental > div.image {
        max-width: 184px;
        margin-top: 20px;
        width: 100%;
    }
    .detail_button a,
    .detail_button.unavailable {
        padding: 20px 0;
        font-size: 1.7rem;
    }
    .logos_goods_rental_box > div:not(:first-child) {
        margin-top: 30px;
    }
    .logos_goods_rental_box > div h5:not(:first-child) {
        margin-top: 20px;
    }
    .logos_goods_rental_box > div h5 {
        font-size: 1.7rem;
        margin-bottom: 10px;
    }
    .two_col_goods,
    .three_col_goods {
        margin: 35px auto 0;
    }
    .two_col_goods > div,
    .three_col_goods > div {
        margin-bottom: 20px;
    }
    .logos_goods_rental {
        margin-top: 45px;
    }
    .two_col_goods ul li,
    .three_col_goods ul li {
        font-size: 1.6rem;
        list-style-type: disc;
        margin-left: 1em;
    }
    .two_col_goods p,
    .three_col_goods p {
        font-size: 1.5rem;
        margin-left: 1.1em;
    }
}
.area_info ul li span,
section.area_section .area_info dl dt {
    font-weight: 700;
}
section.area_section .area_info dl dt,
section.area_section .area_info dl dd {
    font-size: 1.6rem;
    vertical-align: top;
    margin-left: 0;
}
section.area_section .content .logos_rental h3 {
    margin-bottom: 20px;
}
section.area_section .content h4 {
    font-weight: 500;
}
.area_detail {
    margin: 70px auto 30px;
}
.logos_rental {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
section.area_section dl dt {
    font-weight: 700;
}
section.area_section dl dd {
    margin-left: 0.5em;
}
.detail_button {
    margin: 50px auto 0;
    width: 100%;
}
.detail_button a {
    display: block;
    width: 100%;
    text-align: center;
    border: 1px solid #707070;
    transition: all .3s;
}
.detail_button a:hover {
    text-decoration: none;
    border: 1px solid #000;
    color: #fff;
    background-color: #000;
}
.detail_button.unavailable {
    background-color: #707070;
    border: 1px solid #000;
    display: block;
    width: 100%;
    text-align: center;
}
.two_col_goods > div img,
.three_col_goods > div img {
    margin-bottom: 20px;
}
.two_col_goods > div ul,
.three_col_goods > div ul {
    margin-bottom: 10px;
}

/* Food */
@media screen and (min-width:1400px) {
    .info .point-box {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .info .point-box>.item {
       width: 100%;
       margin: 0;
    }
}
@media screen and (min-width:768px) and (max-width:1399px) {
    .info .point-box {
        grid-template-columns: 1fr 1fr;
    }
    .info .point-box>.item {
       width: 100%;
       margin: 0;
    }
}
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_food {
        max-width: 355px;
    }
    section.main_section.food_section .content {
        padding: 0 0 85px;
    }
    .food_list_item a small {
        background-color: rgba(255,255,255,0);
        border-radius: 50%;
        width: 30px;
        height: 30px;
        color: #000;
        border: 1px solid #000;
    }
    .food_list_item a span {
        font-size: 2rem;
    }

.phover:hover{
    color: #CD4B7A;    
}

    .info .point-box>.item>.title.is-num small,
    .item>.title_box>.title.is-num small  {
        width: 30px;
        height: 30px;
        font-size: 2rem;
        margin-right: 12px;
    }
    .info .point-box>.item>.title.is-num span,
    .item>.title_box>.title.is-num span {
        font-size: 2rem;
    }
    .info .point-box {
        gap: 60px 2%;
    }
    .point-box .title_box {
        margin-bottom: 20px;
    }
    .point-box .title_box > .title {
        width: 100%;
    }
    .p-cash__list {
        width: 100%;
    }
    .food_section .info .point-box>.item>.img img {
        height: 300px;
        width: 100%;
        object-fit: cover;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_food {
        max-width: calc((355px * 2)/3);
    }
    .food_list_item a small {
        background-color: rgba(255,255,255,0);
        border-radius: 50%;
        width: 15px;
        height: 15px;
        color: #000;
        border: 1px solid #000;
    }
    .food_list_item a span {
        font-size: 1.1rem;
    }
    .info .point-box>.item>.title.is-num small,
    .item>.title_box>.title.is-num small  {
        width: 20px;
        height: 20px;
        font-size: 1.5rem;
        margin-right: 6px;
    }
    .info .point-box>.item>.title.is-num span,
    .item>.title_box>.title.is-num span {
        font-size: 1.5rem;
    }
    .info .point-box {
        gap: 30px 0;
    }
    .point-box .title_box {
        margin-bottom: 10px;
    }
    .point-box .title_box > .title {
        width: 100%;
    }
    .p-cash__list {
        width: 100%;
    }
}
.food_list_item a span {
    color: #000;
    text-decoration: none;
}
.info>h2 {
    color: #000;
}
.info .point-box {
    display: grid;
    align-items: start;
    justify-content: space-between;
}
.info .point-box>.item>.title.is-num small,
.item>.title_box>.title.is-num small  {
    background-color: rgba(255,255,255,0);
    border-radius: 50%;
    color: #000;
    border: 1px solid #000;
    font-weight: 500;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    align-items: center;
    display: flex;
}
.info .point-box>.item>.title.is-num span,
.item>.title_box>.title.is-num span {
    font-weight: 500;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.point-box .title_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.point-box .title_box > .title {
    display: flex;
    flex-wrap: wrap;
}
.p-cash__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.p-cash__list .p-cash__list-icon {
    border-radius: 50%;
    margin-right: 5px;
    font-size: 1rem;
    width: 40px;
    height: 40px;
    vertical-align: middle;
    background-color: #000;
    color: #fff;
    text-align: center;
    position: relative;
}
.p-cash__list .p-cash__list-icon:last-child {
    margin-right: 0;
}
.p-cash__list .p-cash__list-icon span {
    position: absolute;
    display: inline-block;
    text-align: center;
    left: 50%;
    top: 50%;
    width: 40px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    line-height: 1;
}
.info .point-box>.item>.img>small {
    margin-top: 10px;
    text-align: left;
}

/* Supporter */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_supporter {
        max-width: 495px;
    }
    section.main_section.areas_section h3 {
        font-size: 2rem;
        margin: 30px auto 10px;
    }
    section.main_section.areas_section .about_shop h3 {
        margin: 0 auto 10px;
    }
    p.shop_link a {
        position: relative;
        font-size: 1.8rem;
        padding-right: 100px;
    }
    ul.supporter_payment {
        position: absolute;
        right: 0;
        top: 0;
    }
    p.shop_link {
        margin: 50px auto 0;
    }
    p.shop_link.submargin {
        margin: 25px auto;
    }
    .about_shop {
        margin-top: 50px;
        padding: 50px 0;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_supporter {
        max-width: calc((495px * 2)/3);
    }
    section.main_section.areas_section h3 {
        font-size: 1.5rem;
        margin: 30px auto 10px;
    }
    section.main_section.areas_section .about_shop h3 {
        margin: 0 auto 10px;
    }
    p.shop_link a {
        position: relative;
        font-size: 1.5rem;
        padding-right: 30px;
    }
    ul.supporter_payment {
        text-align: right;
        margin-top: 10px;
    }
    p.shop_link {
        margin: 25px auto 0;
    }
    p.shop_link.submargin {
        margin: 25px auto;
    }
    .about_shop {
        margin-top: 25px;
        padding: 25px 0;
    }
}
section.main_section.areas_section h3 {
    font-weight: 500;
}
section.main_section.areas_section.first .content {
    padding-top: 0;
}
.supporter_detail {
    position: relative;
}
.supporter_detail p:not(:first-child) {
    margin-top: 1em;
}
ul.supporter_payment li {
    display: inline-block;
    border-radius: 50%;
    margin-right: 5px;
    font-size: 1.2rem;
    width: 40px;
    height: 40px;
    vertical-align: middle;
    background-color: #000;
    color: #fff;
    text-align: center;
    position: relative;
}
ul.supporter_payment li span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    text-align: center;
    transform: translate(-50%,-50%);
    line-height: 1.2;
}
p.shop_link a:hover {
    text-decoration: none;
}
p.shop_link a:after {
    content: "";
    display: inline-block;
    background-image: url("../img/common/link_icon.png");
    width: 11px;
    height: 20px;
    background-size: cover;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
p.shop_link a:hover:after {
    background-image: url("../img/common/link_icon_hover.png");
}

.about_shop {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}
.about_shop.second {
    margin-top: 0;
    border-top: none;
}

/* Attractions */
@media screen and (min-width:1200px) {
    .attractions_list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media screen and (min-width:768px) and (max-width:1199px) {
    .attractions_list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr;
    }
}
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_attractions {
        max-width: 305px;
    }
    section.main_section.areas_section h4 {
        font-size: 2.0rem;
        margin: 70px auto 30px;
    }
    .attractions_list h5 {
        margin: 0px auto 5px;
        font-size: 1.6rem;
    }
    .attractions_list h5,
    .attractions_list p {
        font-size: 2rem;
    }
    .notice_box {
        margin-top: 170px;
    }
    .notice_box p.notice_title {
        font-size: 2rem;
        padding: 16px 32px 15px;
    }
    .notice_box .notice_content {
        padding: 20px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_attractions {
        max-width: calc((305px * 2)/3);
    }
    section.main_section.areas_section h4 {
        font-size: 1.5rem;
        margin: 35px auto 15px;
    }
    .attractions_list {
        gap: 20px 0;
        grid-template-columns: 1fr;
    }
    .attractions_list h5 {
        margin: 15px auto 5px;
        font-size: 1.3rem;
    }
    .notice_box {
        margin-top: 85px;
    }
    .notice_box p.notice_title {
        font-size: 1.6rem;
        padding: 8px 10px 7px;
    }
    .notice_box .notice_content {
        padding: 10px;
    }
}
section.main_section.areas_section.first .content {
    padding-top: 0;
}
.attractions_list {
    display: grid;
    align-items: start;
    justify-content: space-between;
}
.attractions_list h5 { 
    font-weight: 700;
}
.notice_box p.notice_title {
    background-color: #CD4B7A;
    color: #fff;
    margin-bottom: 0;
}
.notice_box .notice_content {
    background-color: #fbd2df;
    color: #000;
}
.notice_box .notice_content p:not(:last-child) {
    margin-bottom: 1em;
}
section.areas_section p.target {
    margin-top: 1em;
}

/* Arts */
@media screen and (min-width:1200px) {
    .art_list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media screen and (min-width:768px) and (max-width:1199px) {
    .art_list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr;
    }
}
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_art {
        max-width: 330px;
    }
    .art_list h5,
    .art_list p {
        font-size: 2rem;
    }
    section.main_section.areas_section .art_detail h3 span {
        margin-right: 20px;
    }
    section.main_section.areas_section .art_detail h3 {
        margin: 70px auto 30px;
    }
    .arts_mv {
        margin: 0 auto 70px;
    }
    .art_content.two_col {
        grid-template-columns: 1fr 1fr;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_art {
        max-width: calc((330px * 2)/3);
    }
    .art_list {
        gap: 20px 0;
        grid-template-columns: 1fr;
    }
    section.main_section.areas_section .art_detail h3 span {
        display: table;
        margin: 0 0 10px;
    }
    section.main_section.areas_section .art_detail h3 {
        margin: 40px auto 15px;
    }
    .arts_mv {
        margin: 0 auto 35px;
    }
    .art_content.two_col {
        grid-template-columns: 1fr;
    }
}
.art_list {
    display: grid;
    align-items: start;
    justify-content: space-between;
    margin-top: 30px;
}
section.main_section.areas_section .art_detail h3 span {
    background-color: #000;
    color: #fff;
    padding: 5px 10px;
}
section.main_section.areas_section .art_detail .about_shop h3 {
    margin: 0 auto 10px;
}
section.main_section.areas_section .art_detail h4 {
    margin: 30px auto 10px;
}
.arts_mv {
    text-align: center;
}
.arts_mv img {
    max-width: 600px;
}
.art_detail p img {
    margin-bottom: 30px;
}
.art_content.two_col {
    display: grid;
    justify-content: space-between;
    gap: 30px;
}
.art_content.two_col p {
    text-align: center;
}
.art_content.two_col p img {
    margin: 0 auto 10px;
}

/* Services */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_services {
        max-width: 238px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_services {
        max-width: calc((238px * 2)/3);
    }
}
section.services h4:first-child {
    margin: 0 auto;
}
section.services h4 {
    margin: 20px auto 0;
}
section.services ul.info {
    margin: 20px auto 0;
}
section.services ul.info li {
    list-style-type: none;
    margin-left: 0;
    padding-left: 0;
    text-indent: 0;
    font-size: 1.3rem;
}
section.main_section.artist_section.services .content {
    padding-top: 0;
}

/* Artist */
@media screen and (min-width:1200px) {
    .artist_list__flex .artist_thumb__list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media screen and (min-width:768px) and (max-width:1199px){
    .artist_list__flex .artist_thumb__list {
        gap: 40px 2%;
        grid-template-columns: 1fr 1fr;
    }
}
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_artists {
        max-width: 183px;
    }
    .list_tab li {
        font-size: 3rem;
        padding: 30px 0;
    }
    .artist_thumb_list__item .artist_thumb_list__name {
        font-size: 2rem;
        margin: 20px auto 0;
    }
    section.main_section .content h2.artist__name {
        margin-bottom: 40px;
    }
    .list_tab.is-artist {
        top: 0;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_artists {
        max-width: calc((183px * 2)/3);
    }
    .list_tab li {
        font-size: 2.5rem;
        padding: 15px 0;
    }
    .artist_list__flex .artist_thumb__list {
        gap: 20px 0;
        grid-template-columns: 1fr;
    }
    .artist_thumb_list__item .artist_thumb_list__name {
        font-size: 1.3rem;
        margin: 10px auto 0;
    }
    section.main_section .content h2.artist__name {
        margin-bottom: 20px;
    }
    .list_tab.is-artist {
        top: 50px;
    }
}
.list_tab li {
    text-align: center;
    font-weight: 700;
    background-color: #fff;
    color: #000;
}
.list_tab li.active {
    background-color: #000;
    color: #fff;
}
.artist_list__flex .artist_thumb__list {
    display: grid;
    align-items: start;
    justify-content: space-between;
}
.artist_thumb_list__item {
    width: 100%;
}
.artist_thumb_list__item .artist_thumb_list__name {
    color: #000;
    text-align: left;
}
.artist_thumb_list__item a:hover {
    text-decoration: none;
}
.artist__name {
    color: #000;
}
.artist_detail__inner dl {
    display: block;
}
.artist_detail__inner dl dt {
    margin: 30px auto 10px;
    color: #000;
}
.artist_detail__inner dl dd .time {
    font-size: 1.6rem;
}
section.main_section .content h2.artist__name {
    background-color: rgba(255,255,255,0);
    padding: 0;
}
.artist_photo_wrap {
    margin-bottom: 10px;
}
.artist_detail__inner dl dt.text__middle {
    margin: 15px auto 5px;
}
.artist_detail_flex__item.size__xl {
    margin: 0 0 30px 0;
}
.artist_detail__inner dl dd .logo {
    display: inline-block; 
}
.artist_detail__inner dl dd p {
    font-size: 1.7rem;
    font-weight: bold;
}
.artist_detail__inner dl dd p.future_flowers {
    color: #DA8F11;
}
.artist_detail__inner dl dd p.rose_stage {
    color: #B24E51;
}
.artist_detail__inner dl dd p.velvet_circus {
    color: #7B486C;
}
.artist_detail__inner dl dd p.neo_waltz {
    color: #1C74A0;
}
.artist_detail__inner dl dd p.miracle_leaf {
    color: #218E65;
}

/* Ticket */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_tickettypes {
        max-width: 347px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_tickettypes {
        max-width: calc((347px * 2)/3);
    }
    .tickets .scroll-wrap > .main-contents > .main-inner > .flex-box > .item.is-box img {
        max-width: 240px;
    }
}
.red_attention__title {
    background-color: #CD4B7A;
}
.red_attention__detail {
    background-color: #fbd2df;
}
.tickets .scroll-wrap>.main-contents>.main-inner>h2 {
    padding: 25px;
    font-size: 2.2rem;
    margin-top: 0;
    margin-bottom: 70px;
    color: #000;
    font-weight: 500;
}
.tickets .scroll-wrap>.main-contents>.main-inner>h2 span.label {
    padding: 0;
    background-color: #fff;
}
.tickets .scroll-wrap>.main-contents>.main-inner>.ticket-list>.item>.flex-box>.item.name,
.tickets .scroll-wrap>.main-contents>.main-inner p a {
    color: #000;
}
.tickets .scroll-wrap>.main-contents>.main-inner ul.info li {
    list-style-type: disc;
    margin-left: 1em;
    padding-left: 0;
    text-indent: 0;
}
.tickets .scroll-wrap>.main-contents>.main-inner>.flex-box .border-box {
    border: 1px solid #000;
    color: #000;
    padding: 20px;
}
.tickets .scroll-wrap>.main-contents>.main-inner p.shop_link {
    margin: 50px auto;
}
.tickets .scroll-wrap > .main-contents > .main-inner > .flex-box > .item.is-box {
    background-color: #E7EAE8;
}

/* Ticket　Schedule */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_ticketschedule {
        max-width: 683px;
    }
    .schedule .scroll-wrap .main-contents .aside-contents ul {
        grid-template-columns: 1fr 1fr 1fr;
        margin: 0 auto 70px;
    }
    .schedule .scroll-wrap .main-contents .aside-contents ul li > div {
        font-size: 1.8rem;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_ticketschedule {
        max-width: calc((683px * 2)/3);
    }
    .schedule .scroll-wrap .main-contents .aside-contents ul {
        grid-template-columns: 1fr 1fr;
        margin: 0 auto 35px;
    }
    .schedule .scroll-wrap .main-contents .aside-contents ul li > div {
        font-size: 1.2rem;
    }
    .schedule .scroll-wrap .main-contents .aside-contents ul li {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
.wrap.schedule .main-inner {
    display: block;
    overflow: hidden;
}
.wrap.schedule .panel-group {
    overflow: visible;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-heading>.panel-title {
    background-color: #fff;
    color: #000;
    border: 1px solid #000;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-heading>.panel-title .title-tab>.date,
.schedule .scroll-wrap>.main-contents>.main-inner .panel-heading>.panel-title .title-tab>.name {
    color: #000;
    font-weight: 500;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-heading>.panel-title .title-tab>.option-list>span.type {
    background-color: #000;
    color: #fff;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel.off .panel-heading>.panel-title .title-tab>.date,
.schedule .scroll-wrap>.main-contents>.main-inner .panel.off .panel-heading>.panel-title .title-tab>.name {
    color: #fff;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-body>.item>.detail>p>span.mark {
    color: #000;
    font-weight: 700;
}
.logo-box a img {
    max-width: 150px;
}
.schedule .scroll-wrap .main-contents .aside-contents {
    width: 100%;
}
.schedule .scroll-wrap .main-contents .aside-contents ul {
    display: grid;
    gap: 1px;
    align-items: stretch;
    justify-content: space-between;
}
.schedule .scroll-wrap .main-contents .aside-contents ul li {
    cursor: pointer;
    text-align: center;
    background-color: #fff;
}
.schedule .scroll-wrap .main-contents .aside-contents ul li > div {
    background-color: #fff;
    padding: 10px 0;
    height: 100%;
    width: 100%;
    align-self: center;
    display: grid;
    align-items: center;
}
.schedule .scroll-wrap .main-contents .aside-contents ul li > div.active,
.schedule .scroll-wrap .main-contents .aside-contents ul li:hover > div {
    background-color: #000;
    color: #fff;
}
/*
.schedule .scroll-wrap>.main-contents>.main-inner .panel-collapse {
    height: 0;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-collapse.show {
    height: auto;
}
    */
.schedule .scroll-wrap>.main-contents>.main-inner .panel-body {
    display: none;
}
.schedule .scroll-wrap>.main-contents>.main-inner .panel-collapse.show .panel-body {
    display: block;
}

/* Resale */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_resale {
        max-width: 371px;
    }
    .resale p.notice {
        font-size: 1.8rem;
        line-height: 2;
        margin-bottom: 2rem;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_resale {
        max-width: calc((371 * 2)/3);
    }
    .resale p.notice {
        font-size: 1.4rem;
        line-height: 2;
        margin-bottom: 2rem;
    }
}

h3.resale_image {
    margin: 40px auto 60px;
}

/* Access */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_access {
        max-width: 202px;
    }
    .is-access .list_tab {
        gap: 0 20px;
        margin: 70px auto 50px;
    }
    table.p-access__table.no_accessimage {
        margin-top: 70px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_access {
        max-width: calc((202px * 2)/3);
    }
    .is-access .list_tab {
        gap: 0 10px;
        margin: 35px auto 25px;
    }
    .red_attention__title,
    .access .parking-info>.title {
        font-size: 1.5rem;
    }
    .is-access .list_tab li {
        font-size: 1.3rem;
    }
    table.p-access__table.no_accessimage {
        margin-top: 35px;
    }
}
.access h2,
.access>h3 {
    color: #000;
}
a.is-external {
    background-image: url(../img/common/icon_external_01.png);
    background-position: right top;
    width: 22px;
    height: 22px;
    content: "";
    background-size: contain;
}
.p-access__table,
.p-access__inner {
    width: 100%;
}
.p-access__table th,
.p-access__table td {
    border: 1px solid #707070;
}
.access .past-box {
    border: 1px solid #000;
    color: #000;
}
.access .parking-info>.notice>.point {
    background-color: #000;
}
.is-access .list_tab {
    display: grid;
    align-items: start;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    justify-content: space-between;
}
.is-access .list_tab > li {
    width: 100%;
}
.is-access .list_tab li.is-c {
    background-color: #ae6ad2;
}
.is-access .list_tab li.is-d {
    background-color: #3aa55b;
}
.red_attention__title.is-mainColor {
    background-color: #fff;
    color: #000;
}
.red_attention_box.is-accordion .red_attention__title::before {
    border-left: 3px solid #fff;
    border-top: 3px solid #fff;
}
.red_attention_box.is-accordion .red_attention__title.back_white::before {
    border-left: 3px solid #000;
    border-top: 3px solid #000;
}
.red_attention__detail.is-white {
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}
.p-access__label {
    background-color: #CD4B7A;
}
.access>h3>span.type-c {
    color: #ae6ad2;
}
.access>h3>span.type-d {
    color: #3aa55b;
}
.access>h3>span.type-f {
    color: #ea6384;
}

/* Privacy */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_privacy {
        max-width: 386px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_privacy {
        max-width: calc((386px * 2)/3);
    }
}

/* Contact */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_contact {
        max-width: 215px;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_contact {
        max-width: calc((215px * 2)/3);
    }
}
.contact_form_wrap .btn-wrap .item input {
    background-color: #000;
    border: 2px solid #000;
    opacity: 1;
}
.contact_form_wrap .btn-wrap .item input:hover {
    background-color: #fff;
    color: #000;
    opacity: 1;
}

/* Area */
@media screen and (min-width:768px) {
    .area_tab .list_tab li,
    .area_tab .list_tab li.active {
        font-size: clamp(1.8rem, 1.5vw, 2.8rem);
        width: auto;
    }
    .area_tab .list_tab li.active span:after {
        bottom: -10px;
    }
    .area_tab .list_tab li:not(:last-child) {
        margin-right: 4%;
    }
    .area_tab .appli_sub_flex__item {
        width: 48%;
    }
    .area_tab .tab_box_content {
        margin-top: 90px;
    }
    section.area_section .content .appli_sub_flex__item h4 {
        font-size: 3rem;
        margin: 40px auto 15px;
    }
    section.area_section .content .appli_sub_flex__item h4:first-child {
        margin: 0 auto 15px;
    }
    section.area_section .content .appli_sub_flex__item h5 span {
        font-size: 1.8rem;
    }
    .two_col.twoone > div.txt {
        width: 60%;
    }
    .two_col.twoone > div.image {
        width: 35%;
    }
    .area_tab .list_tab.is-appli {
        justify-content: center;
    }
}
@media screen and (max-width:767px) {
    .area_tab .list_tab li,
    .area_tab .list_tab li.active {
        font-size: 1.7rem;
        width: 50%;
        text-align: left;
    }
    .area_tab .list_tab li.active span:after {
        bottom: -5px;
    }
    .area_tab .list_tab li:not(:last-child) {
        margin-bottom: 20px;
    }
    .area_tab .tab_box_content {
        margin-top: 45px;
    }
    section.area_section .content .appli_sub_flex__item h4 {
        font-size: 1.7rem;
        margin: 20px auto 5px;
    }
    section.area_section .content .appli_sub_flex__item h4:first-child {
        margin: 0 auto 5px;
    }
    section.area_section .content .appli_sub_flex__item h5 span {
        font-size: 1.6rem;
    }
    .area_tab .appli_sub_flex__item {
        width: 100%;
    }
    .two_col.twoone > div.txt,
    .two_col.twoone > div.image {
        width: 100%;
    }
    .area_tab .list_tab.is-appli {
        justify-content: flex-start;
    }

}
.area_tab .list_tab li,
.area_tab .list_tab li.active {
    
    background-color: rgba(255,255,255,0);
    color: #9A9A9A;
}
.area_tab .list_tab li span {
    position: relative;
    display: inline-block;
}
.area_tab .list_tab li.active span:after {
    content: "";
    height: 1px;
    display: block;
    position: absolute;
    width: 100%;
}
.area_tab .list_tab li.active.rose_stage span,
.tab_content.rose_stage h3 {
    color: #B24E51;
}
.area_tab .list_tab li.active.rose_stage span:after {
    background-color: #B24E51;
}
.area_tab .list_tab li.active.future_flowers span,
.tab_content.future_flowers h3  {
    color: #DA8F11;
}
.area_tab .list_tab li.active.future_flowers span:after {
    background-color: #DA8F11;
}
.area_tab .list_tab li.active.velvet_circus span,
.tab_content.velvet_circus h3  {
    color: #7B486C;
}
.area_tab .list_tab li.active.velvet_circus span:after {
    background-color: #7B486C;
}
.area_tab .list_tab li.active.neo_waltz span,
.tab_content.neo_waltz h3  {
    color: #1C74A0;
}
.area_tab .list_tab li.active.neo_waltz span:after {
    background-color: #1C74A0;
}
.area_tab .list_tab li.active.miracle_leaf span,
.tab_content.miracle_leaf h3  {
    color: #218E65;
}
.area_tab .list_tab li.active.miracle_leaf span:after {
    background-color: #218E65;
}
section.area_section .content .appli_sub_flex__item h4 {
    font-weight: 700;
}
section.area_section .content .appli_sub_flex__item h5 {
    margin: 0 auto 15px;
}
section.area_section .content .appli_sub_flex__item h5 span {
    font-weight: 500;
    border-bottom: 1px solid #000;
    padding-right: 20px;
}
.area_tab .appli_sub__flex {
    gap: 8% 2%;
}
.two_col.twoone {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.f00{
    width:100%;
    /*align-items: center;*/
    display: flex;
    width: 100%;
}
.f01{
    font-size:26px;
    font-weight:bold;
}
.f02{
    margin-top:30px;
}
.f03{
    font-size:26px;
    font-weight:bold;
    margin-top:60px;
}
.f04{
    background-color: #fff;
    padding:10px 20px 10px 20px;
    margin-top:30px;
    width:33%;
}
.f05{
    display:flex;
    width:100%;
    /*align-items: center;*/
}
.f06{
    width:40px;
}
.f07{
    margin-left:10px;
    font-weight:bold;
    font-size:20px;
    margin-top:auto;
    margin-bottom:auto;
}
.f08{
    text-align:center;
    margin-top:20px;
    margin-bottom:20px;
    color:#2e2e2e;
    width:fit-content;
    padding:10px 20px 10px 20px;
    margin-right:auto;
    margin-left:auto;
    font-weight:bold;
    border: 1px solid #707070;
    transition: .6s;
}
.f08:hover {
    background: #1a1a1a;
    color:#fff;
  }
.f09{
    margin-top:0px;
    text-align:left;
    font-size:13px;
}
.f10{
width:2.5%;
margin:0px 20px 0px 20px;
margin-top:auto;
margin-bottom:auto;
padding-top:20px;
}
.f11{
    margin-top:10px;
    font-weight:bold;
    font-size:20px;
    text-align:center;
}
.f12{
    margin-top:10px;
    margin-bottom:10px;
    font-weight:bold;
    font-size:26px;
    text-align:center;
}
.f_sp{
    display:none;
}
.f_pc{
    display:block;
}

.c-new{
    background-color:#CD4B7A!important;
}


@media (max-width: 767px) {
.f00{
    display: block;
    width:100%;
}
.f04{
    background-color: #fff;
    padding:10px 20px 10px 20px;
    margin-top:30px;
    width:100%;
}

.f08{
    font-size:24px;
}
.f10{
    width:30px;
    margin:10px 0px 0px 0px;
    text-align: center;
    margin-right:auto;
    margin-left:auto;
    }
.f_sp{
    display:block;
}
.f_pc{
    display:none;
}
}

/* Time Table */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_timetable {
        max-width: 300px;
    }
    section.timetable_page .list_tab li {
        padding: 15px 0;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_timetable {
        max-width: calc((300px * 2)/3);
    }
    section.timetable_page .list_tab li {
        padding: 10px 0;
        font-size: 1.5rem;
    }
}
section.timetable_page .list_tab li.active.sat {
    background-color: #E4007F;

    color: #fff;
}
section.timetable_page .list_tab li.active.sun {
    background-color: #A039B7;
    color: #fff;
}
section.timetable_page .list_tab li {
     background-color: #B4B4B4;
     color: #676767;
}
section.timetable_page .tab_box_content {
    padding-top: 40px;
}

/* Goods */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_goods {
        max-width: 150px;
    }
    .p-goods__list {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        gap: 0;
        justify-content: space-between;
        align-items: center;
    }
    .p-goods__item {
        width: 100%;
    }
    .p-goods__nav.js-float {
        top: 0;
    }
}
@media screen and (max-width:767px) {
   .sub_fv h1 img.title_goods {
         max-width: calc((150px * 2)/3);
    }
    .p-goods__nav.js-float {
        top: 50px;
    }
    article.is-goods+.article {
        padding-bottom: 0;
    }
    article {
        padding-left: 0;
        padding-right: 0;
    }
    .target__header.is-goods {
        padding-top: 100px;
        margin-top:-100px;
    }
}
.p-goods__list .p-goods__item a {
    background-color: #000;
    border: 1px solid #000;
}
.p-goods__list .p-goods__item a:hover {
    color: #000;
    background-color: #fff;
}
section.goods_page .content h3 {
    margin: 40px auto 20px;
}
.attention_label,
.appli .ol_list__item .num {
    background-color: #000;
}
.attention_box {
    margin-bottom: 40px;
    border: 1px solid #707070;
}
.attention_title.is-border {
    border-bottom: 1px solid #707070;
    margin-bottom: 20px;
}
.article.goods_content {
    padding-bottom: 0;
}
section.main_section.goods_page .content {
    padding: 85px 0 0;
}

/* Arts */
@media screen and (min-width:768px) {
    .art_col {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 50px;
        margin: 20px auto 60px;
    }
    .art_col.top {
        margin: 60px auto 0;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    .artist_col {
        display: grid;
        grid-template-columns: .2fr 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 50px;
        margin: 20px auto 60px;
    }
    section.main_section.areas_section .art_col h4 {
        margin: 0 auto 30px;
    }
    div.sponsorship dl dt {
        font-weight: 700;
        font-size: 1.8rem;
    }
    div.sponsorship dl dd {
        color: #0e6eb8;
        font-weight: 700;
        font-size: 1.8rem;
    }
    section.artist_section h3 {
        font-size: 2rem;
    }
    .supporter_logo {
        margin: 40px auto 0;
    }
    .art_col dl dt,
    .art_col dl dd {
        font-weight: 700;
        font-size: 1.8rem;
    }
    section.artist_section dl.gallery_list dt {
        width: 200px;
        font-weight: 700;
        padding: 5px 0;
    }
    section.artist_section dl.gallery_list dd {
        width: calc(100% - 200px);
        padding: 5px 0;
    }
    .art_three_col {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 30px;
        margin: 20px auto 40px;
    }
    .art_three_col > div img {
        margin: 0 auto 10px;
        height: 300px;
        width: auto;
    }
}
@media screen and (max-width:767px) {
    .art_col {
        display: grid;
        grid-template-columns: 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 25px;
        margin: 20px auto 60px;
    }
    .art_col.top {
        margin: 30px auto 0;
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .artist_col {
        display: grid;
        grid-template-columns: .5fr 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 10px;
        margin: 20px auto 60px;
    }
    section.main_section.areas_section .art_col h4 {
        margin: 0 auto 15px;
    }
    div.sponsorship dl dt {
        font-weight: 700;
        font-size: 1.6rem;
    }
    div.sponsorship dl dd {
        color: #0e6eb8;
        font-weight: 700;
        font-size: 1.6rem;
    }
    section.artist_section h3 {
        font-size: 1.7rem;
    }
    .supporter_logo {
        margin: 20px auto 0;
    }
    .art_col dl dt,
    .art_col dl dd {
        font-weight: 700;
        font-size: 1.6rem;
    }
    section.artist_section dl.gallery_list dt {
        width: 150px;
        font-weight: 700;
        padding: 5px 0;
    }
    section.artist_section dl.gallery_list dd {
        width: calc(100% - 150px);
        padding: 5px 0;
    }
    .art_three_col {
        display: grid;
        grid-template-columns: 1fr;
        align-items: flex-start;
        justify-content: space-between;
        gap: 30px;
        margin: 20px auto 40px;
    }
    .art_three_col > div img {
        margin: 0 auto 10px;
        width: 100%;
    }
}
.art_col.include_artist {
    margin: 20px auto 0;
}
section.main_section.artist_section .content {
    padding: 85px 0 0;
}
div.sponsorship {
    margin: 60px auto 0;
}
section.artist_section h3 span,
.art_col dl dd span {
    color: #CD4B7A;
}
.art_col dl {
    margin: 20px auto 0;
}
.supporter_logo {
    color: #000;
    font-size: 1.5rem;
    font-weight: 300;
    width:60%;
    float:left;
}
@media screen and (max-width:767px) {
.supporter_logo {
    width:100%;
}
}

.art_col .photo p:not(:first-child) {
    margin-top: 20px;
}
section.artist_section h4.gallery {
    font-size: 2rem;
    font-weight: 700;
    margin: 40px auto 10px;
}
section.artist_section dl.gallery_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.art_three_col > div {
    text-align: center;
    font-weight: 700;
}
.art_ank_list {
    border: 1px solid #000000;
    padding: 20px;
    display: inline-block;
    margin: 0 auto 60px;
    width:100%;
}
.art_ank_list li {
    padding: 5px 0;
}
.art_ank_list li a{
    color: #000000;
    font-weight:bold;   
}
.art_ank_list li a:hover{
    color: #CD4B7A;    
}
.artist_waku{
    border: solid 1px #000000;
padding:20px;
}
.un_br{
margin-bottom:20px;
}
.un_br2{
margin-top:120px;
}
.un_br3{
margin-top:-40px;
}
.arts_img2{
    height:460px;
}

.at_box1{
   text-align:center;
}
.at_box2{
   margin-top:0px;
}
.at_box3{
    margin-top:-5px;
   margin-bottom:10px;
}
.at_box4{
    margin-top:10px;
}
.at_box5{
    margin-top:60px;
    font-size:14px;
    margin-bottom:60px;
}
.at_box5-2{
    margin-top:60px;
    font-size:14px;
}
.at_box5-3{
    margin-top:60px;
    font-size:14px;
    margin-bottom:-200px;
}

@media screen and (max-width:767px) {
.at_box5-3{
    margin-bottom:0px;
}

}


.at_box6{
    font-weight:bold;
}

.supc{
display:inline-block;
}
.susp{
display:none;
}

@media screen and (max-width:767px) {
.supc{
display:none;
}
.susp{
display:inline-block;
}
}

/* Gallery */
@media screen and (min-width:768px) {
    .sub_fv h1 img.title_notice {
        max-width: 375.5px;
    }
    section.main_section.gallery .content {
        padding: 0;
    }
}
@media screen and (max-width:767px) {
    .sub_fv h1 img.title_notice {
        max-width: calc((375.5px * 2)/3);
    }
}
.gl_mega_flex h3.rose_stage {
    color: #B24E51;
}
.gl_mega_flex h3.future_flowers_stage {
    color: #DA8F11;
}
.gl_mega_flex h3.velvet_circus_stage {
    color: #7B486C;
}
.gl_mega_flex h3.neo_waltz_stage {
    color: #1C74A0;
}
.gl_mega_flex h3.miracle_leaf_stage {
    color: #218E65;
}
.gl_prev {
    left: -10px;
}
.is-local .gl_next {
    right: -10px;
}

/*2026*/

/* =========================================================
   Dark theme override (append-only)
   bg:#1B1718 / text:white / hover:#CD4B7A
   keep white heading boxes + fix plain links
========================================================= */
:root{
  --bg:#1B1718;
  --txt:#fff;
  --txt85:rgba(255,255,255,.85);
  --txt35:rgba(255,255,255,.35);
  --bd:rgba(255,255,255,.25);
  --hover:#CD4B7A; /* ホバー/アクセント */
}

/* ===== Base background ===== */
body,
.topics_wrap,
.banner_wrap,
.pickup_wrap,
.c-playlist,
.sub-footer,
footer{
  background-color:var(--bg) !important;
  color:var(--txt);
}

/* ===== Global text: black -> white（黒指定を上書き） ===== */
body,
p, li, dt, dd,
.content_title,
.sub-footer > .title,
.pickup_cat,
.pickup_title,
.topics_list_date,
.topics_list_title,
.topics_list_arrow,
footer .copy-wrap > .copy,
footer ul.links li a,
.notice_box .notice_content,
.access h2,
.access>h3,
.info>h2,
.artist__name,
.artist_detail__inner dl dt,
.artist_detail__inner dl dd p,
.supporter_logo{
  color:var(--txt) !important;
}

/* ===== Plain links (囲みなしリンク) を白に統一 ===== */
a,
.link_box a,
.ul_list__item a,
.article_disc_list li a:not([href^="tel:"]),
.article_num_list li a:not([href^="tel:"]),
.notice_table td a,
.contact_form_wrap p span a,
.food_list_item a span,
.art_ank_list li a,
p.shop_link a,
.topics_list_item a,
#global-nav a{
  color:var(--txt) !important;
}

/* ===== Hover color (pink) ===== */
a:hover,
.link_box a:hover,
.ul_list__item a:hover,
.article_disc_list li a:not([href^="tel:"]):hover,
.article_num_list li a:not([href^="tel:"]):hover,
.notice_table td a:hover,
.contact_form_wrap p span a:hover,
.food_list_item a:hover span,
.art_ank_list li a:hover,
p.shop_link a:hover,
.topics_list_item a:hover,
#global-nav a:hover,
.red_txt,
.phover:hover{
  color:var(--hover) !important;
}

/* サブメニューの「＋」線もホバーでピンク */
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after{
  background-color:var(--hover) !important;
}

/* disable link */
.link_disable a,
#global-nav .link_disable a,
#global-nav .sub-menu .sub-menu-nav .link_disable a{
  color:var(--txt35) !important;
}

/* ===== MENU (bg dark / text white / hamburger white) ===== */
#sidebar,
.fixed_side_menu,
#global-nav{
  background:var(--bg) !important;
  color:var(--txt) !important;
}

#global-nav .sub-menu > a,
#global-nav .sub-menu-nav,
#global-nav .sub-menu-nav a{
  color:var(--txt) !important;
}

/* hover/active で白背景に戻るのを防ぐ */
#global-nav .sub-menu.is-active > a,
#global-nav a:hover{
  background:var(--bg) !important;
  color:var(--txt85) !important;
}

/* + / - の線を白 */
#global-nav .sub-menu > a span:before,
#global-nav .sub-menu > a span:after{
  background-color:var(--txt) !important;
}

/* hamburger 3本線 */
.spinner{
  background-color:var(--txt) !important;
}

/* ===== Keep: white heading boxes + black text =====
   「白い囲み＋中が黒文字」はそのままにする */
section.main_section .content h2,
.notice_table .resale_cell.table_heading.type_normal,
.tickets .scroll-wrap>.main-contents>.main-inner>h2 span.label,
.appli .appli_main__title,
.slider__mask p.date{
  background-color:#fff !important;
  color:#000 !important;
  border-color:#707070 !important;
}

/* FAQの白カード＆黒文字も維持 */
.p-faq__content,
.p-faq__heading{
  background-color:#fff !important;
}
.p-faq__text{
  color:#000 !important;
}
.p-faq__heading::before,
.p-faq__heading::after{
  background-color:#000 !important;
}

/* ===== Ticket name fix: 背景暗いのに文字も黒 → 白に ===== */
.ticket-list .item.name,
.ticket-list .flex-box .item.name,
.tickets .scroll-wrap>.main-contents>.main-inner>.ticket-list>.item>.flex-box>.item.name{
  color:#fff !important;
}

/* ===== Borders on dark bg ===== */
.news_list .topics_list_item,
.about_shop,
.p-access__table th,
.p-access__table td,
.access .past-box,
.artist_waku,
.art_ank_list{
  border-color:var(--bd) !important;
}


/* ===== FIX: グローバルメニューのホバー文字色をピンクに戻す ===== */
#global-nav a:hover,
#global-nav ul li a:hover,
#global-nav .sub-menu > a:hover,
#global-nav .sub-menu-nav a:hover{
  color: #CD4B7A !important;
}

/* hover時も背景は暗いまま維持（白に戻らないように） */
#global-nav a:hover{
  background-color: #1B1718 !important;
}

/* 「＋」アイコンの線もピンク */
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after{
  background-color: #CD4B7A !important;
}



.tt2026{
    font-family: "Special Gothic Expanded One", sans-serif;
    color:#CD4B7A;
    font-size:45px;
}


/* 通常時：文字白＋下線白（必要最低限） */
.link_box a{
  color:#fff;
  border-bottom: 1px solid #fff;
  text-decoration: none;
}

/* ホバー時：元のホバー色に合わせて変更（例：ピンク） */
.link_box a:hover{
  color:#CD4B7A;
  border-bottom-color:#CD4B7A;
}


/* main_section 内のテーブル文字を白に */
.main_section .c-table th,
.main_section .c-table td,
.main_section .c-table th span{
  color:#fff !important;
}

/* ===== breadcrumb 区切り矢印を /img/svg/icon_arrow.svg に統一 ===== */
.breadcrumb ul{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0; /* 余計な間隔は li 側で調整 */
}

.breadcrumb li{
  display: inline-flex;
  align-items: center;
}

/* 2つ目以降の li の前に矢印を出す */
.breadcrumb li + li{
  position: relative;
  padding-left: 18px; /* 矢印分の余白 */
  margin-left: 10px;  /* 項目間の余白 */
}

.breadcrumb li + li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background: url("/assets/img/svg/icon_arrow.svg") no-repeat center / contain;
  opacity: 1;
}

/* 文字色（必要なら） */
.breadcrumb,
.breadcrumb a{
  color: #fff;
  text-decoration: none;
}

/* ホバー（必要なら） */
.breadcrumb a:hover{
  color: #CD4B7A;
}


/* =================================================
   breadcrumb 区切りをSVG画像に置き換え（最終追記）
   画像: ../img/svg/icon_arrow.svg
   調整: 矢印を少し上 / 矢印右側の余白+15px
   ※SPは上げ量を弱める
================================================= */

/* 既存のborder矢印（a:after）を無効化 */
section.breadcrumb ul li a::after{
  content: none !important;
  display: none !important;
}

/* リストを横並び */
section.breadcrumb ul{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

/* liはインラインで整列 */
section.breadcrumb ul li{
  display: inline-flex;
  align-items: center;
}

/* 2つ目以降のliの手前に矢印画像を表示 */
section.breadcrumb ul li + li{
  position: relative;
  padding-left: 30px;  /* 矢印〜文字の距離（必要ならSPだけ変えるのもOK） */
  margin-left: 20px;
}

/* ===== デフォルト（PC寄り）：少し上に ===== */
section.breadcrumb ul li + li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(calc(-50% - 2px)); /* PCは-2px */
  width: 8px;
  height: 8px;
  background: url("../img/svg/icon_arrow.svg") no-repeat center / contain;
}

/* 文字色（ダーク用） */
section.breadcrumb,
section.breadcrumb a{
  color:#fff !important;
  text-decoration:none;
}
section.breadcrumb a:hover{
  color:#CD4B7A !important;
}

/* 最後の現在地（リンクじゃないli）も白に */
section.breadcrumb ul li:last-child{
  color:#fff !important;
}

/* ===== PC ===== */
@media screen and (min-width:768px){
  section.breadcrumb ul li + li::before{
    width: 12px;
    height: 12px;
    transform: translateY(calc(-50% - 2px)); /* PCはそのまま */
  }
}

/* ===== SP ===== */
@media screen and (max-width:767px){
  section.breadcrumb ul li + li::before{
    width: 6px;
    height: 6px;
    transform: translateY(-50%); /* ← SPは上げない（必要なら -1px に） */
  }

  /* SPだけ矢印〜文字の間隔も最適化したい場合（任意） */
  /* section.breadcrumb ul li + li{ padding-left: 25px; margin-left: 12px; } */
}

/* 「view more」ボタンだけ背景をページ背景と同色に */
.topics_btn.btn a{
  background-color: var(--bg) !important; /* #1B1718 と同じ */
  border-color: var(--bd) !important;     /* 枠は薄い白（好みで） */
  color: var(--txt) !important;           /* 文字は白 */
}

/* ホバー時（ピンク維持） */
.topics_btn.btn a:hover{
  background-color: var(--bg) !important;
  border-color: var(--hover) !important;
  color: var(--hover) !important;
}

/* チケットの左一覧：非アクティブは黒、アクティブは白 */
.aside-contents #anchor .list{
  color:#000 !important;
}
.aside-contents #anchor .list span{
  color:#000 !important;
}

/* active（選択中）だけ白に戻す */
.aside-contents #anchor .list.active,
.aside-contents #anchor .list.active span{
  color:#fff !important;
}

.aside-contents #anchor .list:hover,
.aside-contents #anchor .list:hover span{
  color:#CD4B7A !important;
}

/* スケジュール詳細（panel-body）内の文字を黒に */
.schedule .panel-body,
.schedule .panel-body .tit,
.schedule .panel-body .detail,
.schedule .panel-body .detail .list,
.schedule .panel-body .detail .list li{
  color:#000 !important;
}

/* スケジュール詳細（panel-body）内の文字を黒に：p等も含めて */
.schedule .panel-body,
.schedule .panel-body *{
  color:#000 !important;
}

/* ===== チケット左一覧：active/hover 背景 #009188、文字白 ===== */

/* 非アクティブ（通常）は黒文字・背景なし */
.aside-contents #anchor .list,
.aside-contents #anchor .list span{
  color:#000 !important;
  background: transparent !important;
}

/* hover（選択っぽい） */
.aside-contents #anchor .list:hover,
.aside-contents #anchor .list:hover span{
  color:#fff !important;
}
.aside-contents #anchor .list:hover{
  background-color:#ffffff !important;
}

/* active（選択中） */
.aside-contents #anchor .list.active,
.aside-contents #anchor .list.active span{
  color:#fff !important;
}
.aside-contents #anchor .list.active{
  background-color:#009188 !important;
}

/* クリックできるように見せる（任意） */
.aside-contents #anchor .list{
  cursor: pointer;
}

/* Access：白背景のアコーディオン内は黒文字に戻す */
.p-access__inner .red_attention_box.back_white,
.p-access__inner .red_attention_box.back_white * ,
.p-access__inner .red_attention__title.back_white,
.p-access__inner .red_attention__detail.is-white,
.p-access__inner .red_attention__detail.is-white *{
  color:#000 !important;
}

/* 外部リンクアイコン（is-external）が背景画像だけなら、リンク文字だけ黒に */
.p-access__inner .red_attention__detail.is-white a{
  color:#000 !important;
}
.p-access__inner .red_attention__detail.is-white a:hover{
  color:#CD4B7A !important;
}

/* タブ：非アクティブ（白背景・黒文字） */
.list_tab.is-artist .tab{
  background:#fff !important;
  color:#000 !important;
}

/* タブ：アクティブ（ピンク背景・白文字） */
.list_tab.is-artist .tab.active{
  background:#CD4B7A !important;
  color:#fff !important;
}

/* 任意：ホバー（非activeだけ軽く） */
.list_tab.is-artist .tab:not(.active):hover{
  background:#fff !important;
  color:#CD4B7A !important;
}

/* アーティスト一覧：名前（テキスト表示時）を白に */
.artist_thumb_list__name{
  color:#fff !important;
}

/* a など別指定に負ける場合の保険 */
.artist_thumb_list__item a,
.artist_thumb_list__item a .artist_thumb_list__name{
  color:#fff !important;
}

/* NEWラベルの中も白にしたい場合（必要なら） */
.artist_thumb_list__name .c-new,
.artist_thumb_list__name .new,
.artist_thumb_list__name .label-new{
  color:#fff !important;
}

.artist__name{
    color:#fff!important;
}

/* ラインナップ一覧：ホバーでピンク背景＋白文字 */
p.detail_button a:hover{
  background-color:#CD4B7A !important;
  color:#fff !important;
  border-color:#CD4B7A !important; /* 枠も合わせる */
  text-decoration:none;
}

/* ===== この aside の #anchor だけに限定 ===== */

/* 通常（非active）：黒文字・背景なし */
.aside-contents .aside-inner ul#anchor .list,
.aside-contents .aside-inner ul#anchor .list span{
  color:#000 !important;
  background: transparent !important;
}

/* active：文字だけ #CD4B7A（背景はそのまま） */
.aside-contents .aside-inner ul#anchor .list.active,
.aside-contents .aside-inner ul#anchor .list.active span{
  color:#CD4B7A !important;
}

/* hover：背景 #CD4B7A、文字白（activeでもhoverでもOK） */
.aside-contents .aside-inner ul#anchor .list:hover{
  background-color:#CD4B7A !important;
}
.aside-contents .aside-inner ul#anchor .list:hover,
.aside-contents .aside-inner ul#anchor .list:hover span{
  color:#fff !important;
}

/* ===== この aside の #anchor だけ：active/hover をピンク背景＋白文字 ===== */

/* 通常（非active）：白背景＋黒文字 */
.aside-contents .aside-inner ul#anchor .list{
  background:#fff !important;
  color:#000 !important;
}
.aside-contents .aside-inner ul#anchor .list span{
  color:#000 !important;
}

/* active：背景 #CD4B7A、文字白 */
.aside-contents .aside-inner ul#anchor .list.active{
  background:#CD4B7A !important;
  color:#fff !important;
}
.aside-contents .aside-inner ul#anchor .list.active span{
  color:#fff !important;
}

/* hover：背景 #CD4B7A、文字白 */
.aside-contents .aside-inner ul#anchor .list:hover{
  background:#CD4B7A !important;
  color:#fff !important;
}
.aside-contents .aside-inner ul#anchor .list:hover span{
  color:#fff !important;
}

/* 背景が面で乗るように（必要なら） */
.aside-contents .aside-inner ul#anchor .list{
  padding: 10px 12px !important;
  cursor: pointer;
}

.p-faq__title{
    color:#fff;
    font-size:20px;
    margin-bottom:50px;
}

/* FAQ：回答本文(is-answer)を「背景=ページ背景」「文字=白」「先頭の横線=白」 */
.p-faq__body{
  background-color: var(--bg) !important; /* 背景をページと同色に */
}

.p-faq__body .p-faq__text.is-answer{
  color: #fff !important;
}

/* 文章頭の横線（.p-faq__body:before）を白に */
.p-faq__body::before{
  background-color: #fff !important;
}

/* ===== 全体背景を #000 に（サイドメニューは #1B1718 のまま） ===== */

/* ページ全体（背景だけ）を黒に */
body,
.topics_wrap,
.banner_wrap,
.pickup_wrap,
.c-playlist,
.sub-footer,
footer{
  background-color:#000 !important;
}

/* サイドメニューだけは #1B1718 を維持 */
#sidebar,
.fixed_side_menu,
#global-nav{
  background-color:#1B1718 !important;
}

/* main_section配下のh2全部：背景 #1B1718 / 文字 白 */
section.main_section .content h2{
  background-color:#1B1718 !important;
  color:#fff !important;
}

/* サイドメニューを開いた時の背景を #1B1718 に */
input[type="checkbox"]:checked ~ #global-nav{
  background-color:#1B1718 !important;
}

/* 中のリンク文字も白に（必要なら） */
input[type="checkbox"]:checked ~ #global-nav a{
  color:#fff !important;
}

/* サイドメニュー：ホバー時に四角く明るくならないように（背景だけ消す） */
#global-nav a:hover,
#global-nav ul li a:hover,
#global-nav .sub-menu > a:hover,
#global-nav .sub-menu-nav a:hover{
  background: transparent !important;
  background-color: transparent !important;
}

/* サイドメニュー：ホバー時の文字色を確実に #CD4B7A に */
#global-nav a:hover,
#global-nav a:hover span,
#global-nav a:hover *{
  color:#CD4B7A !important;
}

/* ついでに、明るい四角が出るのを防ぐ（背景は変えない） */
#global-nav a:hover{
  background: transparent !important;
  background-color: transparent !important;
}

/* 「＋」アイコンの線もホバーでピンクに */
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after{
  background-color:#CD4B7A !important;
}

/* サイドメニュー：全リンク（span有無問わず）ホバー文字を #CD4B7A に固定 */
#global-nav a:hover{
  color:#CD4B7A !important;
}

/* spanがあるタイプも念のため */
#global-nav a:hover span{
  color:#CD4B7A !important;
}

/* 明るい四角背景が出ないように（背景は固定/透明） */
#global-nav a:hover{
  background: transparent !important;
  background-color: transparent !important;
}

/* ＋記号の線もピンク */
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after{
  background-color:#CD4B7A !important;
}

/* ===== #global-nav の「記号なし」も含め、ホバー文字色を強制でピンクに ===== */

/* まず通常色（開いたメニュー内は白） */
#global-nav .menu_box > ul > li > a{
  color:#fff !important;
}

/* 記号なし（通常項目）も確実に hover でピンク */
#global-nav .menu_box > ul > li > a:hover{
  color:#CD4B7A !important;
  background: transparent !important;          /* 明るい四角を出さない */
  background-color: transparent !important;
}

/* サブメニュー側（spanがある項目）も合わせて */
#global-nav .menu_box > ul > li.sub-menu > a:hover,
#global-nav .menu_box > ul > li.sub-menu > a:hover span{
  color:#CD4B7A !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* 「＋」アイコンの線もピンク */
#global-nav .sub-menu > a:hover span:before,
#global-nav .sub-menu > a:hover span:after{
  background-color:#CD4B7A !important;
}

/* 子メニュー（sub-menu-nav）だけ：ホバー文字を #CD4B7A、背景は明るくしない */
#global-nav .sub-menu-nav a{
  color:#fff !important;                 /* 通常は白（必要なら） */
  background: transparent !important;
  background-color: transparent !important;
}

#global-nav .sub-menu-nav a:hover{
  color:#CD4B7A !important;              /* ← ホバーでピンク */
  background: transparent !important;    /* 明るい四角を出さない */
  background-color: transparent !important;
}

#global-nav .sub-menu-nav li:hover > a{
  color:#CD4B7A !important;
}

/* チケット見出し（tickets-a/tickets-e など）：背景 #1B1718、文字白 */
h2.flex[id^="tickets-"]{
  background-color:#1B1718 !important;
  color:#fff !important;

  /* 余白（元の設計を崩さない用の標準値） */
  padding: 25px !important;
  margin: 0 0 70px !important;
}

/* ラベル/補足テキストも白、白背景があれば透明化 */
h2.flex[id^="tickets-"] .label,
h2.flex[id^="tickets-"] .label .text{
  color:#fff !important;
  background: transparent !important;
}

/* 枠線や下線が黒なら白に */
h2.flex[id^="tickets-"] .label{
  border-color:#fff !important;
}

/* tickets見出し：白帯の原因（.label背景）を消して白文字に */
h2.flex[id^="tickets-"]{
  background-color:#1B1718 !important; /* 帯は残す */
  color:#fff !important;
  padding: 25px !important;           /* 余白は維持 */
}

/* ←ここが肝：labelの白背景を殺す */
h2.flex[id^="tickets-"] .label{
  background: transparent !important;
  background-color: transparent !important;
  color:#fff !important;
}

/* 補足テキストも白寄りに */
h2.flex[id^="tickets-"] .label .text{
  color: rgba(255,255,255,.85) !important;
  background: transparent !important;
}
h2.flex[id^="tickets-"] .label{
  box-shadow:none !important;
  border-color: rgba(255,255,255,.25) !important;
}

/* ===== tickets 見出しの白帯（span.label）だけをダーク化 ===== */
.tickets .scroll-wrap > .main-contents > .main-inner > h2.flex[id^="tickets-"]{
  background-color:#1B1718 !important;
  color:#fff !important;
}

/* 白い帯の原因：span.label の白背景/黒文字を潰す */
.tickets .scroll-wrap > .main-contents > .main-inner > h2.flex[id^="tickets-"] span.label{
  background-color: transparent !important;
  color:#fff !important;
}

/* 補足テキスト */
.tickets .scroll-wrap > .main-contents > .main-inner > h2.flex[id^="tickets-"] span.label span.text{
  background-color: transparent !important;
  color: rgba(255,255,255,.85) !important;
}

/* sub-footer だけ白背景に戻す */
.sub-footer{
  background-color:#e7eae8!important;
}

/* sub-footer 内の文字色も黒に（必要なら） */
.sub-footer,
.sub-footer .title,
.sub-footer a,
.sub-footer p,
.sub-footer li{
  color:#000 !important;
}

/* ===== Contact 送信ボタン ===== */
.contact_form_wrap .btn-wrap .item input[type="submit"]{
  background:#000 !important;           /* 中：黒 */
  border:2px solid #707070 !important;  /* 枠：グレー */
  color:#fff !important;                /* 文字：白 */
  opacity:1 !important;
}

/* 無効時（off/disabled）はそのまま固定 */
.contact_form_wrap .btn-wrap .item input[type="submit"].off,
.contact_form_wrap .btn-wrap .item input[type="submit"]:disabled{
  background:#000 !important;
  border-color:#707070 !important;
  color:#fff !important;
  cursor:not-allowed;
}

/* 有効時だけホバーで中をピンクに */
.contact_form_wrap .btn-wrap .item input[type="submit"]:not(.off):not(:disabled):hover{
  background:#CD4B7A !important;  /* 中：ピンク */
  border-color:#CD4B7A !important; /* 枠も合わせるならON（枠グレーのままが良ければこの行消してOK） */
  color:#fff !important;
}

/* FAQ：回答リスト（notice-answers）
   - li同士の間隔：2em
   - li内の行間：0.5em相当（かなり詰まる） */
.p-faq__body .notice-answers{
  list-style: none;   /* もし「・」を付けたいなら別途擬似要素で付与 */
  margin: 0;
  padding: 0;
}

.p-faq__body .notice-answers > li{
  margin: 2em 0 !important;     /* li同士（上下）の間隔 */
  line-height: 1.5em !important;  /* li内（改行したときの行間） */
}

/* FAQ：開いた中（dd）の内容を上に詰める */
.p-faq__body{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* 中のulも上の余白があると下がるのでゼロに */
.p-faq__body .notice-answers{
  margin-top: 30px !important;
  padding-top: 0 !important;
}

/* li自体の上余白が効いてるなら最初の項目だけ0に（必要なら） */
.p-faq__body .notice-answers > li:first-child{
  margin-top: 0 !important;
}

/* このtdの中だけ：通常時は黒 */
td.child-ticket-link a,
td.child-ticket-link a:link,
td.child-ticket-link a:visited{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important; /* Safari保険 */
}

/* ホバー色を明示したいなら（不要なら消してOK） */
td.child-ticket-link a:hover{
  color:#CD4B7A !important;
  -webkit-text-fill-color:#CD4B7A !important;
}

.kodomo a{
    color:#000!important;
}

/* 共通：枠＆背景は白 */
.item.is-box{
  border: 1px solid #fff !important;
  background: #fff !important;
  box-shadow: none !important;
  outline: none !important;
}

.item.is-box img{ display:block; }

/* SP：中央 */
@media (max-width: 767px){
  .item.is-box{
    width: fit-content;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
  }
}

/* PC：右寄せ */
@media (min-width: 768px){
  .item.is-box{
    width: fit-content;
    margin-left: auto !important;   /* 右寄せの定番 */
    margin-right: 0 !important;
    text-align: right;
  }
}

.notice-answers {
  list-style: none !important;
  padding-left: 0;
  margin-left: 0;
}

.notice-answers li {
  position: relative;
  padding-left: 40px;
}

.notice-answers li::before {
  content: "●";
  position: absolute;
  left: 20px;
  top: -2px;
}

/* notice_mini_title が入っている li だけ点を消す */
.notice-answers li:has(.notice_mini_title)::before {
  content: none;
}


/* notice_mini_title が入っている li だけ点を消す */
.notice-answers li:has(.notice_mini_title2)::before {
  content: none;
}

.notice-answers li:has(.resale_table)::before {
  content: none;
}

.notice-answers li:has(.link_box)::before {
  content: none;
}

.resale_table td a {
  color: #000 !important;
}
/*
.notice-answers a {
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
*/
.notice-answers li:has(.notice_mini_title) {
  padding-left: 0 !important;
}

.notice-answers li:has(.notice_mini_title) .notice_mini_title {
  margin-left: 20px;
}

.notice-answers li:has(.notice_mini_title2) {
  padding-left: 0 !important;
}

.notice-answers li:has(.notice_mini_title2) .notice_mini_title2 {
  margin-left: 20px;
}

.notice-answers li:has(.nresale_table) {
  padding-left: 0 !important;
}

.notice-answers li:has(.resale_table) .resale_table {
  margin-left: 20px;
}

.notice-answers li:has(.link_box) {
  padding-left: 0 !important;
}

.notice-answers li:has(.link_box) .link_box {
  margin-left: 20px;
}


.notice-answers li:has(.link_box) .link_box,
.notice-answers li:has(.link_box) .link_box a {
  text-decoration: none !important;
}

/* FAQ：.p-faq__text.is-answer が入っているものだけ元の余白に戻す */
@media screen and (min-width:768px){
  .p-faq__body:has(.p-faq__text.is-answer){
    padding: 24px 24px 100px 40px !important;
    margin-top: 10 !important;
  }
}

@media screen and (max-width:767px){
  .p-faq__body:has(.p-faq__text.is-answer){
    padding: 24px 24px 50px 40px !important;
    margin-top: 10 !important;
  }
}

.p-faq__body .p-faq__text.is-answer{
  margin-top: 10 !important;
}



.seat_note_list li {
  line-height: 1 !important;
}

.detail_button.is-disabled a {
  background: #bdbdbd;
  color: #fff;
  border-color: #bdbdbd;
  pointer-events: none;
  cursor: default;
  opacity: 0.7;
  text-decoration: none;
}