
/*------------------------------------------------------------------

COMMON

------------------------------------------------------------------*/

/*-- BASE --*/
html { -webkit-text-size-adjust: 100%;}
img{ border:none; vertical-align:bottom; image-rendering: -webkit-optimize-contrast; max-width: 100%;}
ul{ list-style:none; margin:0; padding:0;}
p{ margin:0; font-size: 16px; line-height: 2.2;}
p a{ text-decoration: underline; color: #CC0000;}
li a{ text-decoration: underline; color: #CC0000;}
body{ margin:0 auto; padding:0; font-smoothing: antialiased; color: #333333;}
a{ color: #333333;}
.sp{ display: none !important;}


/*-- CONTENT --*/
#container{ min-width: 1220px; font-family: 'Noto Sans JP', sans-serif;}
#container.pdb00{ padding-bottom: 0;}
.innerContent{ width: 1220px; margin: 0 auto; font-size: 16px;}
.sectionBgWhite{ padding: 60px; background: #fff; box-sizing: border-box; margin-bottom: 80px;}
.sectionBgWhite:last-child{ margin-bottom: 0;}

/*MAIN*/
.mainBox{ margin: 0 auto 120px;}
.mainBox .mainSection{ background: #fff; width: 1220px; margin: 0 auto; position: relative; z-index: 2; padding: 60px 60px 0; box-sizing: border-box; min-height: 250px;}
.mainBox .mainSection.wide{ padding: 0;}
.mainBox .mainSection p{ letter-spacing: 0.06em; margin: 0 auto 50px; font-size: 18px;}
.mainBox .mainSection p:last-child{ margin-bottom: 0;}

.mainSection div.top-button{background-color:#0E079F; margin:10px 0 40px;}
.mainSection div.top-button p{margin:0 0 0 15px; padding:15px 0 20px;font-size:1.6em; color:#FFFFFF;font-weight:500; }
.mainSection div.top-button a{ text-decoration: none;}
.mainSection div.top-button a:hover{text-decoration: underline;color:#FFFFFF;}

.mainSection div.top-box{margin:5px 0 55px;}
.mainSection div.top-box p{margin:0 auto; padding:15px 0 20px;font-size:1.5em; color:#232323;font-weight:400; line-height: 1.4em; }
.mainSection div.top-box a{text-decoration: none; float: right; margin-right:1.5em;font-size:0.8em; line-height: 1.9em;}
.mainSection div.top-box a:hover{text-decoration: underline;}

/*-- BREADCRUMB --*/
#breadcrumb{ display: block; width: 1220px; margin: 20px auto 0; }
#breadcrumb ol{ list-style: none; padding: 0; margin: 0; display: flex; justify-content: flex-start; font-size: 14px;}
#breadcrumb ol li{ display: inline-block; margin-right: 25px; padding-right: 35px; position: relative; color: #4D4D4D;}
#breadcrumb ol li::after{ content: ""; display: block; width: 8px; height: 8px; border-top: 1px solid #333; border-right: 1px solid #333; position: absolute; right: 0; top: calc(50% - 4px); transform: rotate(45deg);}
#breadcrumb ol li:last-child{ margin-right: 0; padding-right: 0;}
#breadcrumb ol li:last-child::after{ content: none;}
#breadcrumb ol li a{ text-decoration: none; color: #4D4D4D; transition: all 0.5s;}
#breadcrumb ol li a:hover{ color: #CC0000;}


/*-- PAGE TOP --*/
#page-top{ width: 50px; display:none; position:fixed; right: 20px; bottom: 20px; z-index: 10000;}
#page-top p{ margin:0; padding:0;}
#page-top p img{ width: 100%;}
#move-page-top{ text-decoration:none; display:block; cursor:pointer; transition: opacity 0.5s;}


/*---- TEXT PAGE ----*/
.textPageSection{ background: #fff; width: 1220px; margin: 0 auto; position: relative; z-index: 2; padding: 60px 100px 0; box-sizing: border-box; min-height: 250px;}
.textPageSection .date{ text-align: right; margin-bottom: 20px; font-size: 14px;}
.textPageSection .subPressTtlType01{ font-weight: 500; font-size: 26px; margin: 0 auto 40px; line-height: 1.8; text-align: center;}
.textPageSection p{ font-size: 16px; margin: 0 auto 60px;}
.textPageSection p:last-child{ margin-bottom: 0;}
.textPageSection p img{ display: block; margin: 0 auto; max-width: 100%;}


/*-- ACROBAT --*/
.acrobatBox{ width: 800px; margin: 120px auto 0; background: #F2F2F2; padding: 58px; box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;}
.acrobatBox .icon{ width: 130px !important; margin: 0 !important;}
.acrobatBox .icon a{ display: block; transition: all 0.5s;}
.acrobatBox .icon a:hover{ opacity: 0.7;}
.acrobatBox .icon a img{ display: block;}
.acrobatBox .text{ width: 535px !important; font-size: 14px !important; line-height: 1.6 !important; margin: 0 !important;}


/*-- OTHER --*/
/*TITLE*/
.pageTtlType01{ width: 100%; position: relative;  margin: 75px auto 60px; z-index: 1; color: #515663; font-weight: 500;}
.pageTtlType01 .inner{ position: relative; z-index: 2; display: flex; align-items: baseline; width: 1220px; margin: 0 auto;}
.pageTtlType01 .inner .en,
.pageTtlType01 .inner .ja{ display: inline-block; line-height: 1.2;}
.pageTtlType01 .inner .en img{ height: 60px; width: auto; }
.pageTtlType01 .inner .ja{ font-size: 30px; margin-left: 35px;}
.pageTtlType01::after{ content: ""; width: 50%; height: 340px; position: absolute; top: 30px; right: 50%; background: #eee; z-index: 1;}
.pageTtlType01.jaOnly{ width: 100%; position: relative;  margin: 75px auto 60px; z-index: 1; color: #333; font-weight: 700;}
.pageTtlType01.jaOnly .inner .ja{ font-size: 45px; margin-left: 0; display: block; min-height: 60px;}

.pageTtlType02{ height: 490px; width: 100%; display: flex; flex-direction: column; justify-content: center; margin: 75px auto 80px;}
.pageTtlType02 .inner{ width: 1220px; margin: 0 auto;}
.pageTtlType02 .inner .en{ display: block; margin-bottom: 30px;}
.pageTtlType02 .inner .en img{ height: 60px; width: auto; display: block; }
.pageTtlType02 .inner .ja{ font-size: 30px; line-height: 1.4;}

.pageTtlType03{ width: 100%; position: relative;  margin: 75px auto 60px; z-index: 1; color: #515663; font-weight: 500;}
.pageTtlType03 .inner{ position: relative; z-index: 2; display: block; width: 1220px; margin: 0 auto;}
.pageTtlType03 .inner .en,
.pageTtlType03 .inner .ja{ display: block; line-height: 1.2;}
.pageTtlType03 .inner .en{ margin-bottom: 25px;}
.pageTtlType03 .inner .en img{ height: 60px; width: auto; }
.pageTtlType03 .inner .ja{ font-size: 30px;}
.pageTtlType03::after{ content: ""; width: 50%; height: 340px; position: absolute; top: 30px; right: 50%; background: #eee; z-index: 1;}

.subTtlType01{ font-weight: 500; font-size: 30px; margin: 0 auto 40px; border-bottom: 1px solid #CC0000; line-height: 1.8; padding-bottom: 15px;}

.subTtlType02{ font-size: 20px; margin: 40px auto 15px; font-weight: 700; text-align: left;}
.subTtlType02 span{ border-bottom: 5px solid #EAEAEA; display: inline-block; line-height: 2;}

.subTtlType03{ font-size: 22px; margin: 30px auto 10px; font-weight: 700; text-align: left; color: #515663;}

.bdrTtlType01{font-size: 24px; margin: 30px auto 10px; font-weight: 700; text-align: left; color: #333333; box-sizing: border-box; padding-left: 20px; line-height: 1.6; position: relative;}
.bdrTtlType01::before{ content: ""; display: block; position: absolute; width: 5px; height: calc(100% - 15px); top: 9px;  left: 0; background: #C60F28;}

/*CATCH*/
.catchType01{ color: #515663; font-size: 26px; font-weight: 700; margin-bottom: 40px; line-height: 1.8;}

/*BUTTON*/
.btnList01{ display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 auto;}
.btnList01 li{ width: calc(50% - 40px); min-width: 510px;}
.btnType01.single{ width: 510px; margin: 0 auto;}
.btnType01 a{ display: block; padding: 40px 40px 40px; text-decoration: none; font-size: 26px; box-sizing: border-box; border: 1px solid #333333; line-height: 1.6; color: #333333; position: relative; transition: all 0.3s; font-weight: 500;}
.btnType01 a::before,
.btnType01 a::after{ width: 14px; height: 23px; position: absolute; top: calc(50% - 7px); right: 50px; transition: all 0.5s;}
.btnType01 a::before{ content: ""; background: url("../../common/img/arrow-b.png"); background-size: 100%;}
.btnType01 a::after{ content: ""; background: url("../../common/img/arrow-r.png"); background-size: 100%; opacity: 0;}
.btnType01 a:hover{ border: 1px solid #CC0000; color: #CC0000;}
.btnType01 a:hover::before{ opacity: 0; right: 40px;}
.btnType01 a:hover::after{ opacity: 1; right: 40px;}

.btnType02{ width: auto; margin: 0 auto;}
.btnType02 a{ display: block; padding: 20px 20px 22px; text-decoration: none; font-size: 18px; box-sizing: border-box; border: 1px solid #333333; line-height: 1.6; color: #333333; position: relative; transition: all 0.3s; font-weight: 500;}
.btnType02 a::before,
.btnType02 a::after{ width: 10px; height: 16px; position: absolute; top: calc(50% - 7px); right: 20px; transition: all 0.5s;}
.btnType02 a::before{ content: ""; background: url("../../common/img/arrow-b.png"); background-size: 100%;}
.btnType02 a::after{ content: ""; background: url("../../common/img/arrow-r.png"); background-size: 100%; opacity: 0;}
.btnType02 a:hover{ border: 1px solid #CC0000; color: #CC0000;}
.btnType02 a:hover::before{ opacity: 0; right: 10px;}
.btnType02 a:hover::after{ opacity: 1; right: 10px;}

.imgBtn01{ width: 510px; margin: 0 auto;}
.imgBtn01 a{ display: block; width: 100%; position: relative;}
.imgBtn01 a img{ display: block; width: 100%;}
.imgBtn01 a::before{ content: ""; width: 14px; height: 23px; position: absolute; top: calc(50% - 7px); right: 50px; transition: all 0.5s; background: url("../../common/img/arrow-b.png"); background-size: 100%; z-index: 2;}
.imgBtn01 a:hover::before{ right: 40px;}

/*BACK-GROUND*/
.bgGray{ background: #F6F6F6; padding: 120px 0;}
.bgWhite{ background: #fff; padding: 120px 0;}
.bgGray.pd00{ padding: 0;}
.bgWhite.pd00{ padding: 0;}
.bgWhite:last-child{ padding-bottom: 0;}

/*BORDER*/
.bdrGrayBox{ border: 5px solid #E6E6E6; padding: 55px; box-sizing: border-box;}
.bdrGrayBox.min{ padding: 30px;}

/*TABLE*/
.tableBox{ width: 100%; position: relative; }
.tableBox .swipeIcon{ display: none;}

.tableType01{ max-width: 1220px; width: 100%; margin: 0 auto; border-top: 1px solid #DFDFDF; font-size: 16px; }
.tableType01 th{ text-align: left; box-sizing: border-box; padding: 40px 50px; border-bottom: 1px solid #DFDFDF; font-weight: 700; vertical-align: top;}
.tableType01 td{ text-align: left; box-sizing: border-box; padding: 40px 50px 40px 0; border-bottom: 1px solid #DFDFDF; font-weight: 400; vertical-align: top;}

.tableType02{ max-width: 1220px; width: 100%; margin: 0 auto; border-top: 1px solid #DFDFDF; border-right: 1px solid #DFDFDF; font-size: 16px; line-height: 1.8}
.tableType02 th{ text-align: center; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #fff; font-weight: 500; background: #F6F6F6; vertical-align: middle;}
.tableType02 td{ text-align: center; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; font-weight: 400; vertical-align: middle;}
.tableType02 td:first-of-type{ border-left: none;}
.tableType02 td.gray{ background: #F6F6F6;}
.tableType02 thead th{ background: #DFDFDF; border-left: 1px solid #fff; font-weight: 700; text-align: center;}
.tableType02 thead th:first-child{ border-left: none;}
.tableType02 th.bdb,
.tableType02 tbody tr:last-child th{ border-bottom: 1px solid #DFDFDF;}
.tableType02 thead th.bdl{ border-left: 1px solid #fff;}

.tableType02 td.td-center{text-align: center;}
.tableType02 td.bdl{text-align: center; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; font-weight: 400; vertical-align: middle;}
/*TABLE 250616追記*/
.tableType02 th.seat{ background: #F6F6F6; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; vertical-align: middle;text-align: center;}

/*LIST*/
.spaceList01 li{ margin-bottom: 30px;}
.spaceList01 li:last-child{ margin-bottom: 0;}

.numList01{ list-style: none; margin: 0 auto; padding: 0;}
.numList01 > li{ margin-bottom: 10px; text-indent: -1.5em; padding-left: 1.5em; line-height: 2;}
.numList01 > li:last-child{ margin-bottom: 0;}
.numList01 > li span{ margin-right: 0.5em;}

.numList02{ list-style: none; margin: 0 auto; padding: 0;}
.numList02 > li{ margin-bottom: 10px; margin-left:0em; padding-left:0em; line-height: 2;}
.numList02 > li:last-child{ margin-bottom: 0;}
.numList02 p{margin-left:2em;}

.numList03{ list-style: none; margin: 0 0 0 1em; padding: 0em;}
.numList03 li{ list-style: none; margin-bottom: 10px; margin-left:0.8em; text-indent: -1em; padding-left: 1em; line-height: 2;}
.numList03 li:last-child{ margin-bottom: 0;}

.numList04{ list-style: none; margin: 0 0 0 2em; padding: 0em;}
.numList04 li{ list-style: none; margin-bottom: 10px; margin-left:0.8em; text-indent: -1em; padding-left: 1em; line-height: 2;}
.numList04 li:last-child{ margin-bottom: 0;}

.listType01 > li{ margin-bottom: 10px; line-height: 2; padding-left: 20px; position: relative; text-indent: 0;}
.listType01 > li::before{ content: ""; width: 10px; height: 2px; display: inline-block; background: #E6E6E6; position: absolute; left: 0; top: 16px;}
.listType01 > li:last-child{ margin-bottom: 0 !important;}
.listType01 > li.big02::before{ content: ""; width: 10px; height: 2px; display: inline-block; background: #E6E6E6; position: absolute; left: 0; top: 22px;}

.listType02 > li{ margin-bottom: 10px; text-indent: -1.5em; padding-left: 1.5em; position: relative; font-size: 16px; line-height: 2;}
.listType02 > li::before{ content: "\25CF"; color: #515663; display: inline; margin-right: 0.5em;}
.listType02 > li:last-child{ margin-bottom: 0 !important;}

/*privacy 202409追記*/
.tableType03{ max-width: 1220px; width: 100%; margin: 0 auto; border-top: 1px solid #DFDFDF; border-right: 1px solid #DFDFDF; font-size: 16px; line-height: 1.8}
.tableType03 th{ text-align: left; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #fff; font-weight: 500; background: #F6F6F6; vertical-align: top;}
.tableType03 td{ text-align: left; box-sizing: border-box; padding: 20px 25px; border-bottom: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; font-weight: 400; vertical-align: top;}
.tableType03 thead th{ background: #DFDFDF; border-left: 1px solid #fff; font-weight: 700; text-align: center;}
.tableType03 thead th:first-child { border-left: 1px solid #DFDFDF;}

.numIndent { text-indent: -2.5em; padding-left: 2.5em; margin: 0;}
.dotIndent { text-indent: -1em; padding-left: 1em; margin: 0;}

.numList05{ list-style: none; margin: 0; padding: 0em;}
.numList05 li{ list-style: none; margin-bottom: 10px; text-indent: -2.5em; padding-left: 2.5em; line-height: 2;}
.numList05 li:last-child{ margin-bottom: 0;}

.listType03 > li{ margin-bottom: 10px; text-indent: -1em; padding-left: 1em; position: relative; font-size: 16px; line-height: 2;}

.mt1em {margin-top: 1em !important;}
.mt2em {margin-top: 2em !important;}



/*ARCHIVE*/
.archiveList{ width: 100%; display: flex; flex-wrap: wrap; margin: 0 auto 30px;}
.archiveList li{ width: 200px; margin: 25px 25px 0 0; font-size: 16px;}
.archiveList li:nth-child(-n+5){ margin-top: 0;}
.archiveList li:nth-child(5n){ margin-right: 0;}
.archiveList li a{ display: block; padding: 20px 0; line-height: 1; text-align: center; background: #F2F2F2; color: #333; transition: all 0.5s; text-decoration: none;}
.archiveList li a > span{ display: inline-block; padding-right: 25px; line-height: 1; position: relative;}
.archiveList li a > span::after{ content: "";  position: absolute; right: 5px; top: calc(50% - 3px); width: 6px; height: 6px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg); transition: all 0.5s;}
.archiveList li a:hover{ background: #CC0000; color: #fff; }
.archiveList li a:hover > span::after{ right: 0; border-top: 1px solid #fff; border-right: 1px solid #fff; }

/*ABOUT BOX*/
.aboutBox{ width: 800px; margin: 80px auto 0; padding: 58px; box-sizing: border-box; background: #F2F2F2; letter-spacing: 0.06em; font-size: 14px;}
.aboutBox h5.title-aboutBox{ font-size: 20px; color: #515663; margin: 0 0 20px;}

/* MS Buy Method(JAF・HM) */
.image-MS{ width: 740px; margin: 20px auto; text-align: center; border: solid 1px #CCC; padding: 30px;}
.image-MS img{ width: 100%; text-align: center; padding-left: 1.5em !important;}


/*FONT*/
.small{font-size: 88% !important;}
.big01{font-size: 120% !important;}
.big02{font-size: 140% !important;}
.r-cau{ text-align: right; font-size: 88%;}
.l-cau{ text-align: left; font-size: 88%;}
.fRed{ color: #CC0000 !important;}

.taR{ text-align: right !important;}
.taC{ text-align: center !important;}

.fw400{ font-weight: 400 !important;}
.fw500{ font-weight: 500 !important;}
.fw700{ font-weight: 700 !important;}
.fw800{ font-weight: 800 !important;}
.fw900{ font-weight: 900 !important;}

.ls00{ letter-spacing: 0 !important; }

/*MARGIN*/
.mt00{margin-top:0px !important;}
.mt05{margin-top:5px !important;}
.mt10{margin-top:10px !important;}
.mt15{margin-top:15px !important;}
.mt20{margin-top:20px !important;}
.mt25{margin-top:25px !important;}
.mt30{margin-top:30px !important;}
.mt35{margin-top:35px !important;}
.mt40{margin-top:40px !important;}
.mt45{margin-top:45px !important;}
.mt50{margin-top:50px !important;}
.mt55{margin-top:55px !important;}
.mt60{margin-top:60px !important;}

.mb00{margin-bottom:0px !important;}
.mb05{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}
.mb15{margin-bottom:15px !important;}
.mb20{margin-bottom:20px !important;}
.mb25{margin-bottom:25px !important;}
.mb30{margin-bottom:30px !important;}
.mb35{margin-bottom:35px !important;}
.mb40{margin-bottom:40px !important;}
.mb45{margin-bottom:45px !important;}
.mb50{margin-bottom:50px !important;}
.mb55{margin-bottom:55px !important;}
.mb60{margin-bottom:60px !important;}
.mb75_pc{margin-bottom:75px !important;}
.mb80_pc{margin-bottom:80px !important;}

/*WIDTH*/
.w07per{ width: 7% !important;}
.w10per{ width: 10% !important;}
.w11per{ width: 11% !important;}
.w12per{ width: 12% !important;}
.w13per{ width: 13% !important;}
.w14per{ width: 14% !important;}
.w15per{ width: 15% !important;}
.w16per{ width: 16% !important;}
.w17per{ width: 17% !important;}
.w18per{ width: 18% !important;}
.w19per{ width: 19% !important;}
.w20per{ width: 20% !important;}
.w21per{ width: 21% !important;}
.w22per{ width: 22% !important;}
.w23per{ width: 23% !important;}
.w24per{ width: 24% !important;}
.w25per{ width: 25% !important;}
.w26per{ width: 26% !important;}
.w27per{ width: 27% !important;}
.w28per{ width: 28% !important;}
.w29per{ width: 29% !important;}
.w30per{ width: 30% !important;}
.w31per{ width: 31% !important;}

