@charset "utf-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

:root {
  
}
/* var(--btn-action) */


html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

ul,
ol {
    list-style: none;
}

/* 初期設定 */
:root {
    --main-color: #0052a4;
    --main-color2: #192138;
    --bg-color1: #EFF0ED;
}

html {
    font-size: 16px;
    /* overflow: hidden; */
    /* letter-spacing: 0.05em; */
	scroll-behavior: smooth;
}

body {
    line-height: 1.2;
    font-family: serif;
    background: #fff;
    overflow-x: hidden;
    color: var(--main-color2);
    font-family: 'Noto Sans JP',sans-serif;
    font-weight: 400;
    /* padding: 4.6875rem 0 0 3.125rem; */
    position: relative;
}


.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
.oswald-<uniquifier> {
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
@media screen and (min-width: 961px) {
    body {
        /* min-width: 1080px; */
    }
}

@media screen and (max-width: 1024px) {
    html {
        font-size: 14px;
    }
}

@media screen and (max-width: 768px) {
    html {
        font-size: 2.266667vw;
    }

    body {
        min-width: 0;
        /* overflow: hidden; */
    }
}

@media screen and (max-width: 640px) {
    html {
        font-size: 15px;
    }
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    background: transparent;
    text-decoration: none;
    color: #333;
}
a.link {
    color: #0000ff;
    text-decoration: underline;
}
a:focus {
    outline: none
}

a:hover img {
    /* opacity: .85 */
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    /* table-layout: fixed; */
    word-break: keep-all;
    background: #fff;
}

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
    -webkit-appearance: none;
    padding: 0;
    border: 1px solid #c9c9c9;
    background-color: #fff;
    height: 2rem;
    font-size: 0.8125rem;
    padding: 0.4em 0.5em;
    outline: none;
    border-radius: 0.25rem;
    width: 100%;
    font-family: 'Noto Sans JP',sans-serif;
}
button {
    font-family: 'Noto Sans JP',sans-serif;
}
select {
    background: #fff url(../images/common/select_arrow.png) no-repeat center right 9px;
    background-size: auto 6px;
    padding-right: 2em;
}

select:disabled {
    background-image: url(../images/common/select_arrow_off.png);
}

input:focus,
select:focus {
    box-shadow: 0 0 2px 0px var(--blue);
}

* {
    box-sizing: border-box;
}
sup {
    vertical-align: super;
    font-size: 70%;
}
img {
    max-width: 100%;
    vertical-align: bottom;
    transition: .25s opacity;
    height: auto;
}

.clearfix {
    zoom: 1;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

a:hover img {
    /* opacity: .8; */
}

/* STYLE */
.menuBtn {
    display: flex;
    width: 5rem;
    height: 5rem;
    position: relative;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}
.menuBtn p.menuInner {
    width: 45%;
    height: 45%;
    position: relative;
}
.menuBtn span {
    display: block;
    height: 2px;
    background: #fff;
    border-radius: 1px;
    right: 0;
    position: absolute;
    transition: .25s
}
.menuCloseWrap {
    height: 10rem;
    display: flex;
    align-items: center;
}
#menuClose {
    margin-left: auto;
}
#menuClose span {
    background: #334a90;
    width: 100%;
    top: 50%;
}
#menuClose span:nth-child(1) {
    transform: rotate(45deg)
}
#menuClose span:nth-child(2) {
    transform: rotate(-45deg)
}
#menuBtn span:nth-child(1),
#menuBtn span:nth-child(3) {
    width: 66%
}
#menuBtn span:nth-child(2) {
    width: 100%;
}
#menuBtn:hover span:nth-child(1),
#menuBtn:hover span:nth-child(3) {
    width: 100%
}
#menuBtn:hover span:nth-child(2) {
    width: 66%;
}
#menuBtn span:nth-child(1) {
    top: 0;
}
#menuBtn span:nth-child(2) {
    top: 50%;
    margin-top: -1px;
}
#menuBtn span:nth-child(3) {
    bottom: 0;
}
#menu {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
    background: #fff;
    width: 100%;
    max-width: 23.5rem;
    padding: 0rem 3rem 3rem;
    text-align: right;
    transform: translateX(100%);
    transition: .5s ease;
    height: 100vh;
}
#menu.on {
    transform: translateX(0)
}
#menuLogo {
    margin-bottom: 4rem;
}
#menuLogo img {
    width: 100%;
}
#menu .menuList {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.75
}
#menu .menuList li {
    margin-bottom: 1rem
}
#menu .menuList li a {
    color: var(--main-color)
}
@media screen and (max-width: 768px) {
    #menu {
        padding: 0 1rem 3rem;
    }
    .menuCloseWrap {
        height: 5rem;
    }
}

/* 共通 */
section .inner {
    max-width: 1200px;
    max-width: calc(1200px + 2rem);
    margin: auto;
    /* width: 95%; */
    padding: 5rem 1rem;
    position: relative;
}
#underContWrap section .inner {
    /* max-width: calc(1700px + 2rem); */
}
.ttlStyle {
    text-align: center;
    font-size: 2.625rem;
    border-bottom: 1px solid var(--main-color2);
    padding-bottom: 1rem;
    position: relative;
    letter-spacing: 0.25rem;
    text-indent: 0.25rem;
    margin-bottom: 3rem;
}
.ttlStyle:after {
    content: "";
    display: block;
    position: absolute;
    width: 4.5rem;
    height: 0.5rem;
    background: var(--main-color2);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}
.ttlStyle .text {
    display: inline-block;
}
/* トップページ */
#topMain {
    
}

#topNews {
    background: var(--main-color);
    color: #fff;
    overflow: hidden;
}
#topNewsInner {
    position: relative;
    padding: 3.8rem 1rem;
}
#topNewsInner:before,
#topNewsInner:after {
    content: "";
    display: block;
    position: absolute;
    background: #1a203a;
    height: 50%;
    width: 100vw;
    transform: rotate(-3deg);
}
#topNewsInner:before {
}
#topNewsInner:after {
}
@media screen and (min-width: 1201px) {
    #topNewsInner:before {
        bottom: 100%;
        right: 0;
        transform-origin: right bottom;
    }
    #topNewsInner:after {
        top: 100%;
        left: 0;
        transform-origin: left top;
    }
}
@media screen and (max-width: 1200px) {
    #topNewsInner:before,
    #topNewsInner:after {
        height: 4rem;
        width: 150vw;
    }
    #topNewsInner:before {
        top: 0;
        left: 0;
        transform-origin: left bottom;
    }
    #topNewsInner:after {
        bottom: 0;
        right: 0;
        transform-origin: right bottom;
        
    }
}
#topNewsInner .newsArea {
    padding: 3rem 0rem;
}
#topNews .ttl {
    font-size: 2.5rem;
    position: absolute;
    left: 0;
    top: 0;
    height: 3.8rem;
    display: flex;
    align-items: center;
    font-family: 'Oswald';
    padding-left: 1rem;
}
#topNews a.link {
    color: #fff;
}


#detailListArea dl {
    text-align: center;
    font-size: 1rem;
    line-height: 1.5;
}
#detailListArea dl > div {
    margin-bottom: 2.5rem;
}
#detailListArea dl dt {
    font-size: 125%;
    font-weight: 500;
    margin-bottom: 0.25rem;
}
#detailListArea .bnr {
    text-align: center;
    margin-top: 3rem
}

.commaList li {
    display: inline-block;
}
.commaList li:not(:last-child):after {
    content:"，"
}
@media screen and (max-width: 768px) {
    
}

.newsList li {
    display: flex;
    padding: 1.5rem 2rem;
    line-height: 1.6;
    border-bottom: 1px solid;
}
.newsList li:not(:last-child) {
    border-bottom: 1px solid;
}
.newsList li .date {
    width: 10rem
}
.newsList li .text {
    width: calc(100% - 10rem);
}
@media screen and (max-width: 640px) {
    .newsList li {
        flex-direction: column;
        padding: 1rem;
    }
    .newsList li .date {
        width: 100%;
        margin-bottom: 0.25rem
    }
    .newsList li .text {
        width: 100%;
    }
}
/* 下層 */
#underWrap {
    overflow: hidden;
}
#underHead {
    background: var(--main-color2) url(../images/foot_bg.png) no-repeat left 14rem center;
    /* padding-left: 40%; */
    background-size: contain;
    height: 10rem;
    display: flex;
    align-items: center;
    padding: 0 3rem;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
}
#underHead #logo img {
    height: 7rem;
}
#underMain {
    background: var(--bg-color1);
}
#underHead:after {
    content: "";
    display: block;
    position: absolute;
    width: 1920px;
    height: 100%;
    top: 0;
    left: 50%;
    pointer-events: none;
    background: var(--main-color);
    transform: skewX(78deg);
    transform-origin: left top;
}
.breadcrumb {
    padding: 1rem;
}
.breadcrumb ul {
    display: flex;
}
.breadcrumb ul li:not(:last-child):after {
    content: ">";
    padding: 0 0.25rem
}
#underTtl {
    /* text-align: center; */
    padding: 2rem 1rem 3.5rem;
    max-width: calc(1700px + 2rem);
    margin: auto;
}
#underTtl h1 {
    display: flex;
    color: var(--main-color);
    line-height: 1;
    align-items: flex-end;
    gap: 1rem 0;
    position: relative;
    /* padding-left: 1rem; */
    font-size: 1rem;
}
#underTtl h1 .en:before {
    content: "";
    display: block;
    position: absolute;
    width: 3px;
    height: 80%;
    top: 13%;
    left: 0;
    background: #fff
}
#underTtl h1 .textWrap {
    display: flex;
    flex-direction: column;
    padding-left: 1.5rem;
}
#underTtl .en {
    font-weight: 500;
    font-size: 6.875rem;
    font-size: 687.5%;
    font-family: 'Oswald';
    display: block;
    position: relative;
    padding-left: 1.25rem;
}
#underTtl .jp {
    font-size: 2.625rem;
    font-weight: 700;
    display: block;
    margin-bottom: 0.5rem;
    font-size: 262.5%;
}
#underTtl .sub {
    font-size: 1.375rem;
    font-weight: 500;
    display: block;
    font-family: 'Oswald';
    letter-spacing: 0.1rem;
    padding-left: 0.275rem;
    font-size: 137.5%;
}
#underContWrap {
    /* overflow: hidden; */
    position: relative;
}
#underContWrap .sec {
    /* margin: 1rem 0; */
    /* overflow: hidden; */
    overflow: hidden;
}
#underContWrap .sec .underInner {
    max-width: 1000px;
    margin: 3rem auto 0;
    width: 96%;
}
#underContWrap .sec .underInner.btmWide {
    padding-bottom: 3rem;
}
#underContWrap .sec .underInner .box {
    margin-bottom: 5rem
}
#underContWrap .ttlStyle2 {
    max-width: calc(1700px + 2rem);
    margin: auto;
    /* padding: 5rem 1rem; */
    position: relative;
}
#underContWrap .ttlStyle2 h2 {
    position: absolute;
    top: 0;
    left: 0;
    height: 4.25rem;
    font-size: 2rem;
    /* font-size: 1.6rem; */
    color: #fff;
    z-index: 10;
    display: flex;
    align-items: center;
    padding-left: 1rem;
    width: 1800px;
    max-width: 100%;
}
#underContWrap .ttlStyle2 .ttlBg {
    max-width: 1200px;
    width: 100%;
    position: absolute;
    margin: auto;
    /* height: 5px; */
    /* background: red; */
    left: 50%;
    top: 0;
    transform: translateX(-50%);
}
#underContWrap .ttlStyle2 .ttlBg:after {
    content: "";
    display: block;
    position: absolute;
    background: var(--main-color);
    height: 10rem;
    width: 100vw;
    transform: rotate(-3deg);
}
@media screen and (min-width: 1201px) {
    #underContWrap .ttlStyle2 .ttlBg:after {
        bottom: 100%;
        right: 0;
        transform-origin: right bottom;
    }
}
@media screen and (max-width: 1200px) {
    #underContWrap .ttlStyle2 .ttlBg:after {
        height: 4.5rem;
        width: 150vw;
        top: 0;
        left: 0;
        transform-origin: left bottom;
    }
}
#ticketFixedBtn {
    position: sticky;
    position: fixed;
    right: 0;
    bottom: 2rem;
    text-align: right;
    margin-bottom: 2rem;
    z-index: 10;
}
#ticketFixedBtn a {
    display: flex;
    /* display: inline-flex; */
    width: 4.25em;
    /* height: 15rem; */
    justify-content: center;
    align-items: center;
    writing-mode: vertical-rl;
    aspect-ratio: 9/20;
    margin-left: auto;
    background: rgb(229,0,18);
    background: linear-gradient(150deg, rgba(229,0,18,1) 0%, rgba(100,0,8,1) 100%);
    border-radius: 1rem 0 0 1rem;
    border: 2px solid #fff;
    border-width: 2px 0 2px 2px;
    color: #fff;
    font-size: 1.25rem;
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.4);
    letter-spacing: 0.125rem;
}
@media screen and (max-width: 768px) {
    #underHead {
        height: 5rem;
        padding: 0 1rem;
        background-position: left 8rem center;
    }
    #underTtl {
        padding: 0.25rem 1rem 2rem;
    }
    #underTtl h1 {
        font-size: 0.75rem;
        flex-wrap: wrap;
    }
    #underHead #logo img {
        height: 3.75rem;
    }
    #ticketFixedBtn a {
        font-size: 1rem
    }
}


.seatMapDetail {
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    padding: 2rem 0;
    margin-bottom: 0rem;
}
.seatMapDetail .map {
    width: 40%;
}
.seatMapDetail .map img {
    width: 100%
}
.seatMapDetail .seatDetail {
    width: 55%;
}
.seatDetail table {
    vertical-align: middle;
    width: 100%;
    line-height: 1;
    line-height: 1.2;
    font-size: 87.5%;
}

.seatDetail table tr {
    border-bottom: 1px dotted #000;
    /* border-width: 1px 0 1px 0 */
}

.seatDetail table tr.bdNone {
    border: none
}

.seatDetail table tbody {
    font-weight: bold;
}
.seatDetail table tbody tr:first-child {
    border-top: 1px solid #000;
}
.seatDetail table tbody tr:last-child {
    border-bottom: 1px solid #000;
}

.seatDetail table thead th {
    padding: 0.5rem;
    /* font-size: .875rem; */
    /* font-size: 87.5%; */
    font-weight: 500;
}
.seatDetail table tbody th {
    font-weight: 500;
    text-align: left;
}
.seatDetail table tbody th.seatName {
    /* padding-top: 1.25rem; */
    /* padding-top: 1rem; */
    word-break: keep-all;
    vertical-align: middle;
}
.seatDetail table tbody td {
    vertical-align: middle;
    font-weight: 500;
}

.seatDetail table tbody th ,
.seatDetail table tbody td {
    padding: 1.05rem 0.5rem;
    padding: 0.825rem 0.25rem;
}
.seatDetail table tbody th.label {
    width: 20px;
    min-width: 20px;
    position: relative;
    padding: 0;
}
.seatDetail table tbody th.label p {
    position: absolute;
    background: #000;
    width: calc(100% - 10px);
    height: calc(100% - 16px);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.seatDetail table tbody th.label p.color1 { background-color: #004097;}
.seatDetail table tbody th.label p.color2 { background-color: #E7373C;}
.seatDetail table tbody th.label p.color3 { background-color: #FCD000;}
.seatDetail table tbody th.label p.color4 { background-color: #00AECB;}
.seatDetail table tbody th.label p.color5 { background-color: #A9CD36;}
.seatDetail table tbody th.label p.color6 { background-color: #FFFFFF;}
.seatDetail table tbody th.label p.color7 { background-color: #e9546b;}
.seatDetail table tbody th.label p.color8 { background-color: #abcd03;}
.seatDetail table tbody th.label p.color9 { background-color: #4d4d4d;}
.seatDetail table td.present {
    text-align: left;
    word-break: keep-all;
}
.seatDetail table td.price {
    text-align: right;
}

.seatDetail table .bdNone th,
.seatDetail table .bdNone td {
    padding-bottom: 1rem;
}
.ticketTable {
    width: 100%;
    word-break: normal;
    background: none;
}
.ticketTable thead th {
    padding: .5rem 1rem;
}
.ticketTable.type1 thead th {
    background: #e50012;
}
.ticketTable.type1 thead th.color2 {
    background: #0c1550;
}
.ticketTable.type2 thead th {
    background: #b29560;
    /* padding: 0; */
}
.ticketTable thead .textWrap {
    display: flex;
    font-size: 1rem;
    align-items: center;
    line-height: 1.4;
}
.ticketTable thead .textWrap p {
    padding: 0.25em 0.5em;
    color: #fff;
    font-weight: normal;
    text-align: left;
}
.ticketTable thead .textWrap p.text1 {
    border-right: 1px solid;
    font-size: 125%;
    font-weight: bold;
    width: 40%;
    text-align: left;
    min-width: 5rem;
    padding-left: 0em;
}
.ticketTable thead .textWrap p.text2 {
    padding: 0 1em
}

.ticketTable tbody {
    /* background: #fff; */
}
.ticketTable tbody tr {
    position: relative;
}
.ticketTable tbody tr:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 98%;
    height: 1px;
    border-bottom: 1px dotted;
    left: 1%
}
.ticketTable tbody tr:last-child:first-child:after {
    content: none
}
.ticketTable tbody tr.red td {
    color: #c1272d;
    font-size: 1.5rem;
    font-weight: bold;
    padding: 1.5rem 1.5rem 0;
}
.ticketTable tbody tr.red td p.normal {
    font-weight: normal;
    color: #000;
    font-size: 75%;
    padding-top: 0.5em;
}
.ticketTable tbody th {
    vertical-align: middle;
    padding: 1.5rem 1rem;
    width: 30%;
    text-align: center;
    min-width: 250px;
}
.ticketTable tbody th.official {
    position: relative;
    padding-top: 3rem;
}
.ticketTable tbody th.official .officialText {
    position: absolute;
    color: #e50012;
    top: 1rem;
    left: 0;
    width: 100%;
}
.ticketTable tbody th .logo {
    padding: 0.5rem 1.5rem;
    max-width: 25rem;
    margin: auto;
}
.ticketTable tbody th .logo img {
    /* width: 80%; */
}
.ticketTable tbody th .logo.logo_eplus img {
    width: 70%
}
.ticketTable tbody th .logo.logo_c-giants img {
    width: 45%
}
.ticketTable tbody th .logo.logo_g-ss img {
    width: 80%
}
.ticketTable tbody th .logo.logo_lawson-ticket img {
    width: 50%;
}
.ticketTable tbody th .logo.logo_7ticket img {
    width: 80%;
}
.ticketTable tbody th .logo.logo_pia img {
    width: 65%
}
.ticketTable tbody th .logo.textType {
    font-size: 1.125rem;
    text-align: left;
    /* display: inline-block; */
}
.ticketTable tbody th .logo.textType .small {
    font-size: 0.875rem;
    font-weight: 500;
}
.ticketTable.type2 tbody th {
    min-width: 10em;
    min-width: 6em;
    font-size: 1rem;
    font-size: 1.25rem;
    width: auto;
    width: 8em;
}
.ticketTable.type2 tbody td {
    font-size: 1rem;
    font-size: 1.25rem;
    line-height: 1.6;
    width: auto;
}
.ticketTable.type2 tbody td .colWrap:not(:last-of-type) {
    margin-bottom: 1rem;
}
.ticketTable.type2 tbody td .colWrap dl {
    display: table;
    border: 1px solid;
    align-items: center;
    width: 100%;
    /* font-size: 90%; */
}
.ticketTable.type2 tbody td .colWrap dl dt {
    color: #fff;
    width: 6em;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
}
.ticketTable.type2 tbody td .colWrap dl dd {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5rem 1rem;
}
.ticketTable.type2 tbody td .colWrap dl dd .anno {
    font-size: 75%;
    margin-top: .5em
}
.ticketTable.type2 tbody td .colWrap.type1 dl {border-color: #b81c22;}
.ticketTable.type2 tbody td .colWrap.type2 dl {border-color: #cb684a;}
.ticketTable.type2 tbody td .colWrap.type1 dl dt {background-color: #b81c22;}

.ticketTable.type2 tbody td .colWrap.type2 dl dt {background-color: #cb684a;}
.ticketTable tbody th .text {
    border-top: 1px solid;
    padding: 0.5rem 0.25rem 0;
    font-size: 1rem;
    font-weight: 500;
    margin-top: 0.25rem;
    font-size: 0.9125rem;
}
.ticketTable tbody td {
    vertical-align: middle;
    padding: 1.5rem 1rem;
    width: 70%;
    line-height: 1.6;
}
.ticketTable tbody .buy {
    width: 35%;
    min-width: 180px;
}
.ticketTable tbody .detail {
    width: 65%;
    padding-left: 3rem;
    padding-left: 3%;
}
.ticketTable tbody .detail.full {
    width: 100%
}
.ticketTable tbody .textonly {
    font-size: 0.875rem;
}
.ticketTable tbody td .btn a {
    background: #e50012;
    color: #fff;
    padding: 0.75em 3em;
    /* width: 170px; */
    /* max-width: 180px; */
    border-radius: 10rem;
    padding-right: 5rem;
    position: relative;
    display: flex;
    word-break: keep-all;
    justify-content: center;
}
.ticketTable tbody td .btn a:after {
    content: "";
    display: block;
    position: absolute;
    width: 2em;
    height: 2em;
    background: #fff;
    border-radius: 100%;
    right: 0.5em;
    top: 50%;
    transform: translateY(-50%);
}
.ticketTable tbody td .btn a:before {
    content: "";
    display: block;
    position: absolute;
    width: 0.5em;
    height: 0.5em;
    border: 2px solid #e50012;
    border-width: 2px 2px 0 0;
    transform: translateY(-50%) rotate(45deg);
    right: 1.3em;
    top: 50%;
    z-index: 1;
}
.ticketTable tbody td .btn.coming a {
    background: #888;
    pointer-events: none;
}
.ticketTable tbody td .btn.coming a:before {
    border-color: #888;
}
.ticketTable tbody td .btn a.disabled {
    pointer-events: none;
    background: #bbb;
    opacity: 0.8;
} 
.ticketTable.type2 tbody td .btn a {
    max-width: 100%;
}
.ticketTable tbody td .subText {
    margin-top: 0.25rem;
    font-size: 0.875rem;
}
.ticketTable tbody td .subText span {
    font-size: 0.875rem;
}
.ticketTable tbody .detail dt {
}
.ticketTable tbody .detail dd {
    font-size: 0.875rem;
    line-height: 1.25;
}
.ticketTable tbody .detail dl {
    line-height: 1.5
}
.ticketTable tbody .detail dl.small {
    font-size: 0.875rem;
}
.ticketTable tbody .detail dl.small dt {
    width: 5.5em;
    border-right: 1px solid
}
.ticketTable tbody .detail dl.small dd {
    margin-left: 6em
}
.ticketTable tbody .detail dl.large {
    font-size: 1.125rem;
    margin-bottom: .5rem;
}
.ticketTable tbody .detail dl.large dt {
    width: 4em
}
.ticketTable tbody .detail dl.large dd {
    margin-left: 4em;
}
.ticketTable tbody .detail dl.large dd .small {
    font-size: 75%
}
.ticketTable tbody .textCol {
    display: flex;
}

.ticketTable tbody .textCol p.text1 {
    width: 15em;
}
.ticketTable tbody .textCol p.text2 {
    width: calc(100% - 15em)
}
.ticketTable tbody .detailWrap .colWrap {
    display: flex;
    align-items: center
}
.tableAnnoWrap {
    font-size: 0.875rem;
    padding: 2rem
}
.seatDetail .tableAnnoWrap {
    padding: 0.5rem 0;
}
.tableAnnoList {
    margin-top: 0.25rem;
    line-height: 1.4;
}

.tableAnnoList li {
    padding-left: 1em;
    text-indent: -1em;
}

.tableAnnoList li > * {
    text-indent: 0
}
.tableAnnoList li:not(:last-child) {
    margin-bottom: .5em
}
.ticketLimitedArea .box {
   width: 95%;
   max-width: 900px;
   margin: auto;
   background: var(--bg-color1);
   padding: 2rem;
}
.ticketLimitedArea .imgTextBox {
    display: flex;
    margin-top: -3rem;
    gap: 2rem
}

.ticketLimitedArea .imgTextBox .textArea {
    width: 65%;
}
.ticketLimitedArea .imgTextBox .img {
    width: 35%;
}
h3.ttlStyle1 {
    /* background: rgb(0,0,0); */
    background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,135,207,1) 70%, rgba(165,213,238,1) 100%);
    background: var(--main-color);
    transform: skewX(-25deg);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 20rem;
    font-size: 1.25rem;
    height: 3rem;
    font-weight: 500;
    position: relative;
    box-shadow: 3px 3px 0 #000;
    margin-left: -4rem;
    margin-bottom: 2rem;
}

.seatAddArea {
    margin-bottom: 5rem;
    font-size: 0.875rem;
    background: #e5f3fa;
}
.seatAddArea .leadText {
    font-size: 1.125rem;
    margin-bottom: 0.75rem;
    padding: 1rem 1rem;
    border-bottom: 1px solid #000;
    font-weight: bold;
    background: #1d3662;
    color: #fff;
    line-height: 1.2;
}
.seatAddArea .tableAnnoList {
    padding: 0 1rem 1rem
}

h3.ttlStyle1 > span {
    transform: skewX(25deg);
    color: #fff;
    text-align: center;
}
.ticketLimitedArea .imgTextBox .textArea .text {
    line-height: 1.4;
    font-weight: 500
}
.officialArea {
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
    padding-bottom: 2rem;
}
.officialArea h3.ttlStyle1 {
    margin: 0 auto 2rem;
    max-width: 100%;
}
.officialArea .logoImg {
    text-align: center;
}
.officialArea .logoImg img {
    width: 90%;
    max-width: 33.75rem;
}
@media screen and (max-width: 768px) {
    .seatMapDetail {
        flex-direction: column;
        align-items: center
    }
    .seatMapDetail .map {
        max-width: 30rem;
        width: 100%
    }
    .seatMapDetail .seatDetail {
        width: 100%;
    }
    .ticketTable tbody .detailWrap .colWrap {
        flex-wrap: wrap;
    }  
    .ticketTable tbody td .subText {
        text-align: center
    }
    .ticketTable tbody .buy {
        width: 100%;
        /* text-align: center; */
    }
    .ticketTable.type1 tbody td .btn a {
        /* margin: auto; */
        max-width: 450px;
        width: 100%;
        margin: auto;
    }
    .ticketTable tbody th {
        width: 45%
    }
    .ticketTable tbody td {
        width: 55%
    }
    .ticketTable tbody th .logo.textType {
        text-align: center
    }
    .ticketTable tbody .detail {
        width: 100%;
        padding-left: 0;
        margin-top: 1rem;
        max-width: 450px;
        margin: 0 auto;
    }
    .ticketTable tbody .buy + .detail {
        padding-top: 1rem;
        border-top: 1px dotted #cacaca;
        margin-top: 1rem
    }
    .ticketTable tbody .detail dl {
        /* display: flex; */
    }
    .ticketTable tbody .detail dl.large {
        font-size: 1rem;
    }
    
    .ticketTable tbody .textCol {
        flex-wrap: wrap;
    }
    .ticketTable tbody .textCol:first-child {
        margin-bottom: 1rem
    }
    .ticketTable tbody .textCol p.text1 {
        
    }
    .ticketTable tbody .textCol p.text2 {
        width: 100%;
    }
    .ticketLimitedArea .imgTextBox {
        flex-direction: column;
        gap: 1rem;
    }
    
    .ticketLimitedArea .imgTextBox .textArea {
        width: 100%;
    }
    .ticketLimitedArea .imgTextBox .img {
        width: 100%;
        text-align: center
    }
    h3.ttlStyle1 {
        margin-left: -2rem;
        margin-bottom: 1rem;
    }
    .tableAnnoWrap {
        padding: 1.5rem 1rem 0
    }
}
@media screen and (max-width: 640px) {
    .ticketTable,
    .ticketTable tbody ,
    .ticketTable thead ,
    .ticketTable tr ,
    .ticketTable th ,
    .ticketTable td {
        display: block;
        width: 100%
    }
    .ticketTable tr {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        width: 100%;
    }
    .ticketTable.type1 tbody tr {
        padding: 0rem 0;
    }
    .ticketTable tbody th {
        width: 100%;
        padding: 0 1rem;
    }
    .ticketTable tbody td {
        width: 100%;
        padding: 1rem;
    }
    .ticketTable.type2 tbody th {
        width: 90%;
        border-bottom: 1px dotted;
        margin: auto;
    }
    .ticketTable.type2 tbody td {
        width: 100%
    }
    .ticketTable tbody th .logo {
        text-align: center;
    }
    .ticketTable tbody th .logo:not(.textType) {
        padding: 2rem 0 1rem;
    }
    .ticketTable tbody th .logo.textType {
        padding: 1.5rem 0 0rem;
        max-width: 100%;
    }
    .ticketTable tbody tr:after {
        height: 2px;
        border-bottom: 1px solid #999;
        left: 1%
    }
}

#ticket {
    background: var(--bg-color1)
}

/* PLAYERS */
#ichiro .imgWrap {
    /* overflow: hidden; */
    position: relative;
    /* padding-top: 2rem; */
}
#ichiro .img img {
    width: 1920px;
    max-width: 1920px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
}
#ichiro .textWrap {
    /* position: absolute; */
    max-width: 1000px;
    /* max-width: 1460px; */
    /* left: 50%; */
    /* top: 0; */
    height: 100%;
    z-index: 10;
    /* transform: translateX(-50%); */
    display: flex;
    justify-content: flex-end;
    color: #fff;
    color: #000;
    align-items: center;
    padding-top: 2rem;
    width: 100%;
    padding-right: 1rem;
    margin: auto;
    /* padding: 5rem 0 0; */
    position: relative;
}
#ichiro .textWrap > * {
    /* width: 50%; */
    /* max-width: 500px; */
    /* max-width: 1000px; */
}
#ichiro .textWrap .nameArea {
    width: 10rem;
    text-align: center;
    margin-left: auto;
    padding-bottom: 1rem;
}
#ichiro .textWrap .nameArea .name {
    font-size: 200%;
    font-weight: bold;
}
#ichiro .textWrap .textArea {
    padding-top: 1rem;
    position: relative;
    line-height: 1.5;
}
#ichiro .textWrap .textArea:before {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: 200vw;
    left: 0;
    left: -230px;
    top: 0;
    background: #fff;
    background: #000;
}
#special {
}
#special .leadText {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 2rem;
    padding-top: 2rem;
}
#special .specialMembers {
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    align-items: stretch;
}
#special .specialMembers li {
    flex: 1;
    max-width: 420px;
}
.specialMembers .imgArea {
    position: relative;
    container-type: inline-size;
    margin-bottom: 2rem;
}
.specialMembers .textArea {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 3.87125cqw;
    color: #fff;
    /* width: 50%; */
    display: block;
    width: 50%;
    padding-top: 1.5rem;
    z-index: 0;
}
.specialMembers .textArea:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: var(--main-color);
    position: absolute;
    clip-path: polygon(0 0, 100% 100%, 0 100%);
    bottom: -1rem;
    left: -1rem;
    z-index: -1;
}
.specialMembers .textArea .name {
    font-size: 200%;
    font-weight: bold;
    letter-spacing: 0.3rem;
    margin-top: 0.25rem;
}
.specialMembers .commentArea {
    padding: 0.5rem;
    line-height: 1.4;
    margin-bottom: 1.5rem;
    min-height: 12em;
}

.specialMembers .profile {
    padding-top: 0.5rem;
    border-top: 1px solid var(--main-color)
}
.specialMembers .profile dt {
    color: var(--main-color);
    margin-bottom: 0.25rem;
}
.specialMembers .profile dd {
    font-size: 0.875rem;
    line-height: 1.4;
}
@media screen and (max-width: 1000px) {
    #ichiro .img img {
        width: 1000px;
        left: 0;
        transform: none;
    }
    #ichiro .textWrap {
        left: 0;
        transform: none;
        padding: 7rem 2rem 0;
        padding: 0 2rem;
        /* text-shadow: 0 0 10px #000; */
    }
    #ichiro .textWrap > * {
        width: 100%;
        /* padding-left: 35%; */
    }
}
@media screen and (max-width: 768px) and (min-width: 501px) {
    #special .specialMembers {
        /* flex-wrap: wrap; */
        /* justify-content: center; */
        /* display: block; */
        flex-direction: column;
        gap: 3rem;
    }
    #special .specialMembers li {
        /* width: 45%; */
        flex: auto;
        /* max-width: 45%; */
        max-width: 100%;
        /* display: flex; */
        /* flex-wrap: wrap; */
        /* align-items: flex-start; */
    }
    .specialMembers .imgArea {
        width: 35%;
        float: left;
        margin-right: 1rem;
        max-width: 200px;
    }
    .specialMembers .commentArea {
        /* width: 60%; */
        padding-top: 0;
        min-height: 0;
    }
    .specialMembers .profile {
        clear: both
    }
    .specialMembers .textArea {
        width: 60%;
    }
}
@media screen and (max-width: 500px) {
    #special .specialMembers {
        flex-direction: column;
        justify-content: center;
        gap: 4rem;
    }
    #special .specialMembers li {
        max-width: 100%
    }
    
    .specialMembers .commentArea  {
        min-height: 0
    }
}
#underContWrap #member {
    /* background: var(--bg-color1); */
}
#underContWrap #member  .sec  {
    margin: 0;
    /* padding: 5rem 0; */
}
#underContWrap #member #girls {
    /* padding-top: 0; */
    background: var(--bg-color1);
    /* margin-top: -2rem; */
}
#underContWrap #member #girls .inner {
    /* padding-top: 0; */
}
/* #underContWrap #member  .sec .inner , */
#underContWrap  .sec .inner.middle {
    max-width: calc(1460px + 2rem);
    padding: 6rem 1rem;
}
#member .teamDetail {
    margin-bottom: 4.5rem;
}
#member .teamDetail .logo {
    max-width: 21.875rem;
    margin: auto;
    width: 40%;
    min-width: 18rem;
}
#member .teamDetail .leadText {
    font-size: 1rem;
    color: #fff;
    max-width: 43.75rem;
    width: 90%;
    margin: 3rem auto 0;
    font-weight: normal;
    line-height: 1.4;
}

.memberImgList + .memberImgList {
    margin-top: 5rem
}
.ttlWrap {
    font-size: 1.5rem;
    border-bottom: 1px solid;
    margin-bottom: 1rem;
    /* max-width: 30rem; */
    padding: 0.25rem 0.5rem;
    font-weight: 500;
    width: 50%;
    min-width: 20rem;
}
.memberImgList ul {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem 2rem;
}
.memberImgList ul li {
    width: calc((100% - 8rem)/5);
    position: relative;
    aspect-ratio: 3/4;
    background: #fff;
}
.memberImgList .profileArea {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 1rem 0.5rem 0.25rem;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    color: #fff;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0.15) 92%, rgba(0,0,0,0) 100%);
    text-shadow: 0 0 2px rgba(0,0,0,0.7);
}
.memberImgList .profileArea .number {
    width: 2.5rem;
    font-size: 2rem;
    font-family: "Oswald";
    font-weight: bold;
    text-align: center;
}
.memberImgList .profileArea .name span {
    display: block;
}
.memberImgList .profileArea .name .main {
    font-size: 1.25rem;
}
.memberImgList .profileArea .name .sub {
    font-size: 0.75rem;
}
.memberImgList .profileArea .detail {
    width: 100%;
    font-size: 0.875rem;
    padding: 0.5rem 0;
}
.memberImgList .profileArea .detail p {
    line-height: 1.5
}
.memberImgList .profileArea .detail p > span {
    display: block;
}
.memberImgList .profileArea .detail > div {
    display: flex;
}
.memberImgList .profileArea .detail > div:not(:last-child) {
    margin-bottom: 0.25rem
}
.memberImgList .profileArea .detail dt {
    width: 5rem;
}
.memberImgList .profileArea .detail dd {
    width: calc(100% - 5rem);
}

@media screen and (max-width: 1200px) {
    .memberImgList ul li {
        width: calc((100% - 6rem)/4)
    }
}
@media screen and (max-width: 768px) {
    .memberImgList ul li {
        width: calc((100% - 2rem)/2)
    }
}
@media screen and (max-width: 500px) {
    .memberImgList ul {
        gap: 1rem 1rem;
    }
    .memberImgList ul li {
        width: 90%;
        max-width: 20rem;
        margin: auto;
        /* width: calc((100% - 1rem)/2); */
    }
    .memberImgList .profileArea {
        padding-top: 0.5rem;
        /* bottom: auto; */
        /* position: static; */
    }
    .memberImgList .profileArea .number {
        /* font-size: 1.5rem; */
        /* width: 2rem; */
    }
    .memberImgList .profileArea .name .main {
        /* font-size: 1.125rem; */
    }
    .memberImgList .profileArea .name .sub {
        /* font-size: 0.65rem; */
    }
    .memberImgList .profileArea .detail {
        /* font-size: 0.75rem; */
        /* padding: 0.25rem 0; */
    }
}

#KobeChiben {
    /* background: rgb(0,14,65); */
    /* background: linear-gradient(180deg, rgba(0,14,65,1) 0%, rgba(0,7,33,1) 70%, rgba(0,0,0,1) 100%); */
    background: var(--main-color);
}

.memberTileList ul {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem;
}
.memberTileList ul li {
    width: calc(50% - 1.5rem);
    background: #fff;
    padding: 1rem 1.5rem;
    display: flex;
    gap: 2rem;
}
.memberTileItem {
}
.memberTileItem .profile {
    width: 12rem;
}
.memberTileList .fullProf .profile {
    width: 100%
}

.memberTileItem .history dt {
    color: #0c1550;
    font-weight: 600;
    margin-bottom: 0.75rem
}
.memberTileItem .history dd {
    font-weight: 500;
    line-height: 1.4
}
.memberTileItem .history {
    width: calc(100% - 13rem)
}
.memberTileItem .number {
    font-family: "Oswald";
    font-size: 4.375rem;
    font-weight: 500;
    margin-bottom: 1rem;
    color: #0c1550;
    line-height: 1;
}
.memberTileItem .nameArea .position {
    font-weight: 500;
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}
.memberTileItem .nameArea .name span {
    display: block;
}
.memberTileItem .nameArea .name span.main {
    font-size: 1.375rem;
    font-weight: 600;
}
.memberTileItem .nameArea .name span.sub {
    font-size: 0.875rem;
}

.memberTileItem .detail {
    margin-top: 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
}
.memberTileItem .detail > div {
    display: flex;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
    gap: 0.75rem;
}
.memberTileItem .detail dt {
    width: 2.25rem;
    border-right: 1px solid;
}
.memberTileItem .detail dd {
    /* max-width: calc(100% - 2.25rem); */
    /* padding-left: 0.5rem; */
}

.memberTileItem .msg {
    width: calc(100% - 13rem);
    /* padding-left: 1rem; */
    position: relative;
    padding-top: 1.5rem;
    display: flex;
}
.memberTileItem .msg .msgInner {
    position: relative;
    padding-top: 0.5rem;
    background: var(--bg-color1);
    display: flex;
    /* align-items: center; */
}
.memberTileItem .msg .msgTtl {
    background: #0c1550;
    border-radius: 10rem;
    color: #fff;
    padding: 0.5rem 1.5rem;
    min-height: 2.625rem;
    display: flex;
    align-items: center;
    width: 90%;
    transform: translateY(-50%);
    position: absolute;
    top: 0;
    left: 0;
    max-width: 21rem;
}
.memberTileItem .msg .msgTtl:after {
    content: "";
    width: 0;
    height:0;
    border-style:solid;
    border-width: 4px 0 4px 16px;
    border-color: transparent transparent transparent #0c1550;
    display: block;
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translate(-2px, -50%);
}
.memberTileItem .msg .msgText {
    background: var(--bg-color1);
    padding: 1.5rem;
    line-height: 1.4;
}

@media screen and (max-width: 1024px) {
    .memberTileList ul li {
        width: 100%
    }
    .memberTileItem .profile {
        width: 50%;
        max-width: 20rem;
    }
    .memberTileItem .msg {
        min-width: 50%;
        max-width: calc(100% - 20rem);
    }
    .memberTileItem .history {
        width: 50%;
    }
}
@media screen and (max-width: 768px) {
    .memberTileList ul li {
        width: 100%;
        max-width: 30rem;
        flex-wrap: wrap;
        margin: auto;
        gap: 1rem;
    }
    .memberTileItem .profile {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        max-width: 100%;
    }
    .memberTileItem .number {
        width: 4.75rem;
        margin-bottom: 0;
        /* text-align: center; */
    }
    .memberTileItem .detail {
        width: 100%
    }
    .memberTileItem .msg ,
    .memberTileItem .history {
        width: 100%;
        max-width: 100%;
    }
}
.leadText {
    line-height: 1.6;
}
/* 応援 */
#brassband .leadText .block {
    font-size: 0.875rem;
}
#brassband .leadText .block + .block {
    margin-top: 2rem
}
#brassband .leadText .block .ttl {
    border-bottom: 1px solid #999;
    margin-bottom: 0.5rem;
    /* display: inline-block; */
    padding: 0 1rem 0 0.5rem;
    max-width: 25rem;
    font-size: 110%;
}
.bbDetail {
    margin-top: 2.5rem
}

/* グッズ */
.goodsArea {
    margin-bottom: 4rem
}
.goodsArea .goodsList {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 3rem 3rem;
    text-align: center;
}
.goodsArea .goodsList .itemText {
    margin-top: 1rem;
}
.goodsArea .goodsList .itemText .name {
    font-weight: 600;
    font-size: 1.125rem;
}
.goodsArea .goodsList .itemText .name .small {
    font-size: 80%;
    font-weight: normal;
    display: inline-block;
}
.goodsArea .goodsList .itemText .price {
    margin-top: 0.5rem;
    font-size: 1.125rem;
}
@media screen and (max-width: 768px) {
    .goodsArea .goodsList {
        grid-template-columns: repeat(2,1fr);
    }
}
@media screen and (max-width: 500px) {
    .goodsArea .goodsList {
        grid-template-columns: 1fr;
        max-width: 300px;
        margin: auto
    }
}
#footer {
    background: #192039 url(../images/foot_bg.png) no-repeat left -270px center;
    /* padding-left: 40%; */
    background-size: contain;
    /* background-size: auto 100%; */
    padding: 0 0 0 10rem;
}
#footer .inner {
    padding: 0
}
#footer .footInner {
    display: flex;
    padding: 2.5rem 0;
    justify-content: space-between;
    align-items: center;
}
#footer .footInner .logoArea {
    width: 400px;
}
#footer .textArea {
    /* max-width: 1080px; */
    margin: auto;
    /* padding: 2.5rem 5.5rem 2.5rem 400px; */
    color: #fff;
    width: calc(100% - 400px);
    padding-left: 5rem;
    /* box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.5); */
    /* background: rgba(0,0,0,0.1); */
    filter: drop-shadow(0 0 5px rgba(0,0,0,0.7));
}
@media screen and (max-width: 1200px) {
    #footer .footInner {
        padding: 3rem 0
    }
    #footer .footInner .logoArea {
        width: 300px;
    }
    #footer .textArea {
        width: calc(100% - 300px);
        padding-left: 3rem;
    }
}
#footer .link {
    color: #fff;
    font-weight: 600;
    font-size: 125%;
    margin-bottom: 0.25rem;
    display: inline-block;
}
#footer h2 {
    font-size: 1.375rem;
    position: relative;
    margin-bottom: 2.5rem
}
#footer h2 span {
    display: inline-block;
    position: relative
}
#footer h2 span:after {
    content: "";
    display: block;
    position: absolute;
    width: 50%;
    height: 1px;
    background: #fff;
    top: 100%;
    left: 0;
    margin-top: 1rem
}
#footer .broadcast .box:not(:first-of-type) {
    margin-top: 2rem;
}
#footer .broadcast .box h3 {
    display: flex;
    align-items: center;
    font-size: 1.375rem;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    /* word-break: keep-all; */
    white-space: nowrap;
}
#footer .broadcast .box h3 .icon {
    width: 2.375rem;
}
#footer .broadcast .box h3 .icon img {
    width: 100%
}
#footer .broadcast .box h3 .text {
    width: calc(100% - 3.375rem);
    display: flex;
    flex-wrap: wrap;
}
#footer .broadcast .box > .text {
    /* padding-left: 3.375rem; */
    font-size: 0.875rem;
    line-height: 1.4;
}
#footer .broadcast .box > .text + .text {
    margin-top: 0.25rem
}
#copy {
    text-align: center;
    font-weight: bold;
    font-size: 0.875rem;
    padding: 1rem 0;
    background: #fff;
}
@media screen and (max-width: 1000px) {
    #footer {
        /* padding: 0 2rem 30%; */
        /* background-position: left 15% bottom; */
        /* background-size: 70%; */
        padding-right: 10%;
        padding-right: 1rem;
        background-size: auto 100%;
    }
    #footer .footInner {
        /* padding: 2rem 0 0; */
    }
    
    #footer .footInner .logoArea {
        width: 220px;
    }
    #footer .textArea {
        width: calc(100% - 220px);
        padding-left: 3rem;
    }
    #footer .textArea {
        /* padding: 2.5rem 3%; */
    }
    #footer .broadcast {
        display: flex;
        flex-wrap: wrap
    }
    #footer .broadcast .box {
        /* margin: 0!important; */
        /* padding: 1rem; */
        width: 100%;
    }
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 640px) {
    #footer {
        /* background-size: 100vw; */
        /* background-size: cover; */
        background-position: left -35vw center;
        /* background-position: left -55vw center; */
        padding-left: 30%;
        padding-bottom: 2rem;
        background-image: url(../images/foot_bg_s.png);
        background-position: left bottom;
        background-size: 100%;
    }
    #footer .footInner {
        flex-direction: column;
        align-items: flex-start;
    }
    #footer .footInner .logoArea {
        width: 100%;
        max-width: 300px;
        /* margin: auto; */
    }
    #footer .textArea {
        padding-left: 0;
        width: 100%;
        margin-top: 2rem;
        text-shadow: 0 0 3px #000;
    }
}
@media screen and (max-width: 500px) {
    .sec .ttlStyle h2 {
        font-size: 1.3725rem;
    }
    #footer {
        padding: 0 10% 55%;
    }
    #footer .footInner {
        align-items: center;
    }
    #footer .footInner .logoArea {
        max-width: 400px;
    }
}

/* class */
@media screen and (max-width: 768px) {
    .pc {
        display: none !important;
    }
}

@media screen and (min-width: 769px) {
    .sp {
        display: none !important;
    }
}

@media screen and (max-width: 1080px) {
    .o1080 {
        display: none !important;
    }
}

@media screen and (min-width: 1081px) {
    .u1080 {
        display: none !important;
    }
}

@media screen and (max-width: 768px) {
    .o768 {
        display: none !important;
    }
}

@media screen and (min-width: 769px) {
    .u768 {
        display: none !important;
    }
}

@media screen and (max-width: 640px) {
    .o640 {
        display: none !important;
    }
}

@media screen and (min-width: 641px) {
    .u640 {
        display: none !important;
    }
}

@media screen and (max-width: 480px) {
    .o480 {
        display: none !important;
    }
}

@media screen and (min-width: 481px) {
    .u480 {
        display: none !important;
    }
}

.dilb {
    display: inline-block;
}

.fll {
    float: left;
}

.tal {
    text-align: left;
}

.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.small {
    /* font-size: 90% */
}
.pb0 {
    padding-bottom: 0 !important;
}