@import url('https://fonts.googleapis.com/css2?family=Marcellus+SC&family=Noto+Sans+JP:wght@300;400;500;600;700&family=Noto+Serif+JP:wght@500;600;700&display=swap');

/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
html { box-sizing: border-box; -webkit-text-size-adjust: 100%; word-break: normal; -moz-tab-size: 4; tab-size: 4; } *,::before,::after { background-repeat: no-repeat; box-sizing: inherit; } ::before,::after { text-decoration: inherit; vertical-align: inherit; } * { padding: 0; margin: 0; } hr { overflow: visible; height: 0; color: inherit; } details,main { display: block; } summary { display: list-item; } small { font-size: 80%; } [hidden] { display: none; } abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; } a { background-color: transparent; } a:active,a:hover { outline-width: 0; } code,kbd,pre,samp { font-family: monospace, monospace; } pre { font-size: 1em; } b,strong { font-weight: bolder; } sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } table { border-color: inherit; text-indent: 0; } input { border-radius: 0; } [disabled] { cursor: default; } [type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button { height: auto; } [type='search'] { -webkit-appearance: textfield; outline-offset: -2px; } [type='search']::-webkit-search-decoration { -webkit-appearance: none; } textarea { overflow: auto; resize: vertical; } button,input,optgroup,select,textarea { font: inherit; } optgroup { font-weight: bold; } button { overflow: visible; } button,select { text-transform: none; } button,[type='button'],[type='reset'],[type='submit'],[role='button'] { cursor: pointer; color: inherit; } button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner { border-style: none; padding: 0; } button:-moz-focusring,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner { outline: 1px dotted ButtonText; } button,html [type='button'],[type='reset'],[type='submit'] { -webkit-appearance: button; } button,input,select,textarea { background-color: transparent; border-style: none; } a:focus,button:focus,input:focus,select:focus,textarea:focus { outline-width: 0; } select { -moz-appearance: none; -webkit-appearance: none; } select::-ms-expand { display: none; } select::-ms-value { color: currentColor; } legend { border: 0; color: inherit; display: table; max-width: 100%; white-space: normal; } ::-webkit-file-upload-button { -webkit-appearance: button; color: inherit; font: inherit; } img { border-style: none; } progress { vertical-align: baseline; } [aria-busy='true'] { cursor: progress; } [aria-controls] { cursor: pointer; } [aria-disabled='true'] { cursor: default; }


/* Definition */
:root {
  --base-color: #e20006;
  --sub-color: #1369DE;
}


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

	0. General

====================================*/
html { background: #ffffff; font-size: 62.5%; }
body { color: #000000; font-weight: 400; font-size: 1.0rem; font-family: 'Noto Sans JP', serif; }
img { vertical-align: middle; }

a { color: #000000; text-decoration: none; }
a.underline { text-decoration: underline; }
a:hover { opacity: 0.8; }
a:hover img { opacity: 0.9; }
ul, ol { list-style: none outside; }
@media (min-width: 768px) {
	.inner { display: block; overflow: hidden; margin: 0 auto; width: 1000px; }
	.pcOnly { visibility: visible; }
	.spOnly { visibility: hidden; display: none !important; }
	#page-top { position: fixed; right: 20px; bottom: 20px; z-index: 1000; }
	#page-top a { display: block; width: 60px; height: 60px; background: url(../image/icon_pagetop.svg) no-repeat 0 0; text-indent:-9999px; }
}
@media screen and (max-width: 767px) {
	img { width: 100%; height: auto; }
	.pcOnly { visibility: hidden; display: none !important; }
	.spOnly { visibility: visible; }
	#page-top { position: fixed; right: 5vw; bottom: 5vw; z-index: 100; }
	#page-top a { display: block; width: 10vw; height: 10vw; background: url(../image/icon_pagetop.svg) no-repeat 0 0 / 10vw auto; text-indent:-9999px; }
}



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

	1. Header

====================================*/
@media (min-width: 768px) {
	.l-header { min-width: 1200px; height: 90px; font-size: 1.4rem; font-weight: 500; box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.1); position: relative; padding-left: 20px; display: grid; align-items: center; grid-template-columns: 300px 1fr 90px; gap: 10px; z-index: 10; position: fixed; background: #fff; width: 100%; top: 0; left: 0; }
	.l-header h1 {}
	.l-header h1 img { width: 330px; height: auto; }
	.l-header .gnav { display: flex; justify-content: flex-end; align-items: center; gap: 20px; }
	.l-header-nav { display: flex; gap: 20px; }
	.l-header-nav_item { position: relative; cursor: pointer; }
	.l-header-nav_item > a { text-decoration: none; }
	.l-header-nav_item:hover,
	.l-header-nav_item.is-current { color: var(--base-color); }
	.l-header-navsub { position: absolute; top: 25px; z-index: 100; visibility: hidden; width: 220px; background: var(--base-color); transition: all .2s ease; }
	.l-header-nav_item:hover .l-header-navsub { top: 30px; visibility: visible; opacity: 1; }
	.l-header-navsub li:not(:last-child) { border-bottom: 1px solid rgba(255,255,255,0.5); }
	.l-header-navsub a { display: block; padding: 15px 20px; color: #fff; }
	.l-header-nav a.pamphlet { padding-left: 1.3em; position: relative; }
	.l-header-nav a.pamphlet:before { position: absolute; width: 20px; height: 20px; content: ""; background: url("../image/icon_pdf.svg") no-repeat 0 0; left: 0; top: 0; bottom: 0; margin: auto; }
	.l-header-ticket {}
	.l-header-ticket a { display: block; width: 90px; height: 90px; background: #e95151 url("../image/icon_ticket_w.svg") no-repeat 50% 21px; color: #fff; text-align: center; padding-top: 48px; font-size: 1.2rem; }
	.l-header #panel-btn { display: none !important; }
}
@media screen and (max-width: 767px) {
	.l-header { padding: 0; height: 15.6vw; position: fixed; top: 0; left: 0; width: 100vw; z-index: 110; background: #fff; font-weight: 500; box-shadow: 0 2vw 2vw 0 rgba(0, 0, 0, 0.1); }
	.l-header h1 { padding: 3.1vw 0 0 3.1vw; }
	.l-header h1 img { width: 60.3vw; height: auto; }
	#gnav { position: absolute; top: 0; right: 0; z-index: 1000; width: 0; } 
	#gnav.width100 { width: 100vw; }
	#panel-btn { position: relative; z-index: 1100; float: right; display: inline-block; width: 15.6vw; height: 15.6vw; text-indent: -9999px; background: #111613; } 
	#panel-btn-icon { position: absolute; top: 50%; left: 50%; display: block; margin: -0.075vw 0 0 -3.125vw; width: 6.25vw; height: 0.3vw; background: #fff; transition: .2s; }
	#panel-btn-icon:before,
	#panel-btn-icon:after { position: absolute; top: 50%; left: 0; display: block; width: 6.25vw; height: 0.3vw; background: #fff; content: ""; transition: .3s; } 
	#panel-btn-icon:before { margin-top: -2.4vw; }
	#panel-btn-icon:after { margin-top: 2.3vw; } 
	#panel-btn .close { background: transparent; } 
	#panel-btn .close:before,
	#panel-btn .close:after { margin-top: 0; } 
	#panel-btn .close:before { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
	#panel-btn .close:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } 
	.l-header .gnav { position: absolute; top: 0; z-index: 1000; display: none; padding: 21vw 7.8vw 9vw; width: 100%; height: 100vh; overflow: scroll; background: #fff; font-size: 3.7vw; } 
	.l-header-cmn .is-head { display: block; border-bottom: 0.3vw solid var(--base-color); padding: 4.7vw 4.7vw 4.7vw 0; position: relative; }
	.l-header-cmn .is-head:before { content: ''; width: 1em; height: 0.3vw; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 0; margin: auto; }
	.l-header-cmn .is-head:after { content: ''; width: 0.3vw; height: 1em; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 0.4em; margin: auto; }
	.l-header-cmn .is-head.is-open { color: var(--base-color); }
	.l-header-cmn .is-head.is-open:after { content: none; }
	.l-header-cmn a { display: block; padding: 4.7vw 4.7vw 4.7vw 0; position: relative; border-bottom: 0.3vw solid var(--base-color); }
	.l-header-cmn a:after { content: ''; width: 0.8em; height: 0.8em; border: 0; border-top: solid 0.3vw var(--base-color); border-right: solid 0.3vw var(--base-color); -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 0; bottom: 0; right: 0.5em; margin: auto; }
	.l-header-cmn .is-body a { display: block; padding: 4.7vw; position: relative; border-bottom: 0.3vw solid var(--base-color); }
	.l-header-cmn .is-body a:after { content: ''; width: 0.8em; height: 0.8em; border: 0; border-top: solid 0.3vw var(--base-color); border-right: solid 0.3vw var(--base-color); -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 0; bottom: 0; right: 1.5em; margin: auto; }
	.l-header-cmn a.pamphlet:after { width: 1.1em; height: 1.2em; border: none; -webkit-transform: rotate(0deg); transform: rotate(0deg);  content: ""; background: url("../image/icon_pdf.svg") no-repeat 0 0 / auto 1.2em; }
	.l-header-language { position: absolute; top: 3vw; left: 3vw; }
	.l-header-language img { width: auto; }
	.l-header-ticket { position: absolute; top: 0; right: 15.6vw; }
	.l-header-ticket a { width: 15.6vw; height: 15.6vw; display: block; background: #e95151 url("../image/icon_ticket_w.svg") no-repeat 50% 2.2vw / 6.25vw auto; font-size: 2.8vw; text-align: center; padding-top: 7.5vw; color: #fff; line-height: 1.1; }
}


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

	2. Main & Parts

====================================*/
@media (min-width: 768px) {
	main { font-size: 1.6rem; line-height: 1.4; position: relative; margin-top: 120px; }
	table { border-collapse: collapse; width: 100%; }
}
@media screen and (max-width: 767px) {
	main { font-size: 3.75vw; line-height: 1.6; position: relative; margin-top: 25vw; }
	table { border-collapse: collapse; width: 100%; }
}

/*---------------
	List
---------------*/
.discList > li { position: relative; padding-left: 1em; line-height: 1.6; }
.discList > li:before { position: absolute; top: 0; left: 0; content: "・"; }
.komeList > li { text-indent: -1em; padding-left: 1em; line-height: 1.6; }

/*---------------
	Btn
---------------*/
.btn { position: relative; display: inline-block; line-height: 1; text-align: center; }
@media (min-width: 768px) {
	.roundBtnW { background: #fff; border-radius: 9999px; padding: 18px 35px; color: var(--base-color); text-decoration: none !important; border: 1px solid var(--base-color); }
	.roundBtn { background: var(--base-color); border-radius: 9999px; padding: 18px 35px; color: #fff; text-decoration: none !important; }
	.roundBtnblank { background: var(--base-color); border-radius: 9999px; padding: 18px 62px 18px 30px; color: #fff; position: relative; text-decoration: none !important; }
	.roundBtnblank:after { content: ""; width: 13px; height: 13px; position: absolute; top: 0; bottom: 0; right: 33px; background: url("../image/icon_blank.svg") no-repeat; margin: auto; }
	.roundBtnTicketW { background: #fff; border-radius: 9999px; padding: 18px 30px 18px 62px; color: var(--base-color); position: relative; text-decoration: none !important; }
	.roundBtnTicketW:after { content: ""; width: 33px; height: 20px; position: absolute; top: 0; bottom: 0; left: 24px; background: url("../image/icon_ticket.svg") no-repeat; margin: auto; }
	.roundBtnTicket { background: var(--base-color); border-radius: 9999px; padding: 18px 30px 18px 62px; color: #fff; position: relative; text-decoration: none !important; }
	.roundBtnTicket:after { content: ""; width: 33px; height: 20px; position: absolute; top: 0; bottom: 0; left: 24px; background: url("../image/icon_ticket_w.svg") no-repeat; margin: auto; }
	.heightS { padding: 10px 20px; }
}
@media screen and (max-width: 767px) {
	.roundBtnW { display: inline-block; line-height: 1; background: #fff; border-radius: 9999px; padding: 2.8vw 5.4vw; color: var(--base-color); text-decoration: none !important; border: 0.15vw solid var(--base-color); }
	.roundBtn { display: inline-block; line-height: 1; background: var(--base-color); border-radius: 9999px; padding: 2.8vw 5.4vw; color: #fff; text-decoration: none !important; }
	.roundBtnblank { display: inline-block; line-height: 1; background: var(--base-color); border-radius: 9999px; padding: 2.8vw 10vw 2.8vw 2.8vw; color: #fff; position: relative; text-decoration: none !important; }
	.roundBtnblank:after { content: ""; width: 3vw; height: 3vw; position: absolute; top: 0; bottom: 0; right: 4vw; background: url("../image/icon_blank.svg") no-repeat 0 0 / 3vw auto; margin: auto; }
	.roundBtnTicketW { background: #fff; border-radius: 9999px; padding: 2.8vw 2.8vw 2.8vw 10vw; color: var(--base-color); position: relative; text-decoration: none !important; }
	.roundBtnTicketW:after { content: ""; width: 6vw; height: 6vw; position: absolute; top: 0; bottom: 0; left: 2.8vw; background: url("../image/icon_ticket.svg") no-repeat 0 50% / 6vw auto; margin: auto; }
	.roundBtnTicket { background: var(--base-color); border-radius: 9999px; padding: 2.8vw 2.8vw 2.8vw 10vw; color: #fff; position: relative; text-decoration: none !important; }
	.roundBtnTicket:after { content: ""; width: 6vw; height: 6vw; position: absolute; top: 0; bottom: 0; left: 2.8vw; background: url("../image/icon_ticket_w.svg") no-repeat 0 50% / 6vw auto; margin: auto; }
	.heightS { padding: 1.5vw 5.4vw; }
}

/*---------------
	Icon
---------------*/
.icon { position: relative; display: inline-block; line-height: 1; }
.icon.pdfIcon { padding-left: 1.5em; }
.icon.pdfIcon:before { width: 1.2em; height: 1.2em; content: ""; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; background: url("../image/icon_pdf.svg") 0 0 / auto 1.2em; }
.icon.blankIcon { padding-left: 1.5em; }
.icon.blankIcon:before { width: 1.2em; height: 1.2em; content: ""; position: absolute; top: 0; bottom: 0; right: 1em; margin: auto; background: url("../image/icon_blank.svg") no-repeat 0 0 / auto 1em; }
.icon.arrowIcon { padding-left: 1.5em; text-decoration: underline; position: relative; }
.icon.arrowIcon:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.icon.noticeIcon { padding-left: 1.5em;  color: var(--base-color); text-decoration: underline; margin-top: 1em; }
.icon.noticeIcon:before { width: 1.2em; height: 1.2em; content: ""; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; background: url("../image/icon_notice.svg") no-repeat 0 50% / 1.2em auto; }

/*---------------
	Text
---------------*/
.komeTxt { padding-left: 1em; text-indent: -1em; }
.ul { text-decoration: underline; }
.taC { text-align: center; }
.taR { text-align: right; }
.taL { text-align: left; }
.serif { font-family: 'Noto Serif JP', serif; }
.fwB { font-weight: bold; }
.fwN { font-weight: normal; }
.fcRed { color: #DA392B; }
.fcPink { color: var(--base-color); }
.fcWhite { color: #fff !important; }
.marker { background: linear-gradient(transparent 70%, #fff200 70%); }

/*---------------
	Title
---------------*/
@media (min-width: 768px) {
	.c-title01 { margin-bottom: 40px; padding-bottom: 40px; font-size: 4.8rem; font-family: 'Noto Serif JP', serif; line-height: 1.2; font-weight: normal; position: relative; text-align: center; }
	.c-title01 span { display: block; font-size: 2rem; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title01::after { position: absolute; content: ""; width: 380px; height: 1px; background: #ccc; bottom: 0; left: 0; right: 0; margin: auto; }
	.c-title02 { margin-bottom: 40px; font-size: 4.8rem; font-family: 'Noto Serif JP', serif; line-height: 1.2; font-weight: normal; }
	.c-title02 span { display: block; font-size: 2rem; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title03 { border-bottom: 1px solid #ccc; font-size: 2rem; font-family: 'Noto Serif JP', serif; line-height: 1; padding-bottom: 18px; font-weight: normal; }
	.c-title04 { font-size: 3.6rem; line-height: 1.2; font-weight: normal; }
	.c-title04 span { display: block; font-size: 8rem; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title05 { font-size: 3.6rem; line-height: 1.2; font-weight: normal; }
	.c-title05 span { display: block; }
	.c-title05 span:first-child { font-size: 8rem; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title05 span:last-child { padding: 20px 40px; color: #fff; background: var(--base-color); }
	.c-title05 em { font-size: 2rem; font-style: normal; }
	.c-title06 { font-size: 3.2rem; font-family: 'Lora', serif; color: var(--base-color); margin-top: 30px; font-weight: normal; }
	.c-title07 { border-bottom: 1px solid var(--base-color); font-size: 2.4rem; font-family: 'Noto Serif JP', serif; line-height: 1; padding-bottom: 10px; font-weight: normal; }
}
@media screen and (max-width: 767px) {
	.c-title01 { margin-bottom: 4vw; padding-bottom: 4vw; font-size: 9vw; font-family: 'Noto Serif JP', serif; line-height: 1.2; font-weight: normal; position: relative; text-align: center; }
	.c-title01 span { display: block; font-size: 4vw; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title01::after { position: absolute; content: ""; width: 38vw; height: 0.4vw; background: #ccc; bottom: 0; left: 0; right: 0; margin: auto; }
	.c-title02 { margin-bottom: 4vw; font-size: 9vw; font-family: 'Noto Serif JP', serif; line-height: 1.2; font-weight: normal; }
	.c-title02 span { display: block; font-size: 4vw; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title03 { border-bottom: 0.15vw solid #ccc; font-size: 5vw; font-family: 'Noto Serif JP', serif; line-height: 1; padding-bottom: 4vw; font-weight: normal; }
	.c-title04 { font-size: 6vw; line-height: 1.2; font-weight: normal; }
	.c-title04 span { display: block; font-size: 10vw; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title05 { font-size: 6vw; line-height: 1.2; font-weight: normal; }
	.c-title05 span { display: block; }
	.c-title05 span:first-child { font-size: 10vw; font-family: 'Lora', serif; color: var(--base-color); }
	.c-title05 span:last-child { padding: 2vw 5vw; color: #fff; background: var(--base-color); }
	.c-title05 em { font-size: 4vw; font-style: normal; }
	.c-title06 { font-size: 6vw; font-family: 'Lora', serif; color: var(--base-color); margin-top: 0.5em; font-weight: normal; }
	.c-title07 { border-bottom: 0.15vw solid var(--base-color); font-size: 5vw; font-family: 'Noto Serif JP', serif; line-height: 1; padding-bottom: 3vw; font-weight: normal; }
}


/*-----------------------------------------------------
Columns
------------------------------------------------------*/
@media (min-width: 768px) {
  .column { display: flex; flex-wrap: wrap; }
  .column.space-between { justify-content: space-between; }
  .column.center { justify-content: center; }
  .column.align-items-center { align-items: center; }
}
@media screen and (max-width: 767px) {
  .spcolumn { display: flex; flex-wrap: wrap; }
  .spcolumn.space-between { justify-content: space-between; }
  .spcolumn.center { justify-content: center; }
  .spcolumn.align-items-center { align-items: center; }
}

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

	3. Footer

====================================*/
@media (min-width: 768px) {
	.ticketBuyBlock { background: var(--base-color) url("../image/top_bg02.png") no-repeat 50% -140px; padding: 50px 0; margin: 100px 0 100px; font-size: 1.4rem; width: 100%; }
	.ticketBuyBlock dl { margin: 15px 0 30px; padding: 30px; text-align: center; line-height: 1.7; background: #fff; }
	.ticketBuyBlock dt { font-size: 3rem; margin-bottom: 15px; }
	.topSponsorBlock { width: 1000px; margin: 50px auto 0; }
	.topSponsorBlock ul { margin: 42px 0; }
	.topSponsorBlock ul li { margin: 0 18px; }
	.snsBlock { width: 1000px; margin: 50px auto 0; font-size: 1.6rem; }
	.snsBlock ul { display: flex; justify-content: center; align-items: center; margin: 55px 0 70px; }
	.snsBlock li { margin: 0 40px; }
	.snsBlock li a { display: inline-block; padding-left: 53px; position: relative; }
	.snsBlock li a:before { content: ""; position: absolute; width: 40px; height: 40px; top: 0; bottom: 0; left: 0; margin: auto; }
	.snsBlock li a.fbBtn { color: #3b5998; }
	.snsBlock li a.fbBtn:before { background: url("../image/icon_fb.svg") no-repeat 0 0 / 40px auto; }
	.snsBlock li a.twBtn { color: #55acee; }
	.snsBlock li a.twBtn:before { background: url("../image/icon_tw.svg") no-repeat 0 0 / 40px auto; }
	.snsBlock li a.igBtn { color: #c36cba; }
	.snsBlock li a.igBtn:before { background: url("../image/icon_ig.svg") no-repeat 0 0 / 40px auto; }
	.snsBlock li a.vcBtn { color: #ff7d32; }
	.snsBlock li a.vcBtn:before { background: url("../image/icon_vc.svg") no-repeat 0 0 / 40px auto; }
	.snsBlock li a.xBtn { color: #000; }
	.snsBlock li a.xBtn:before { background: url("../image/icon_x.svg") no-repeat 0 0 / 40px auto; }
	footer { background: var(--base-color) url("../image/bg_footer.png") no-repeat 50% -200px; line-height: 1; font-size: 1.2rem; padding: 20px 0; min-width: 1200px; color: #fff; }
	footer .infoBox { text-align: center; width: 1000px; margin: 30px auto; padding-bottom: 10px; border-bottom: 1px solid #ffffff; }
	footer .infoBox > * { width: 333px; position: relative; }
	footer .infoBox > *:nth-child(1)::after,
	footer .infoBox > *:nth-child(2)::after { position: absolute; content: ""; width: 1px; height: 75px; background: #ffffff; top: 0; right: 0; }
	footer .infoBox dl { margin-bottom: 25px; }
	footer .infoBox dt { font-size: 1.8rem; margin-bottom: 15px; }
	footer .infoBox dd { line-height: 1.6; }
	footer .infoBox a { position: relative; color: #fff; }
	footer .infoBox a:before { position: absolute; top: 0; left: -1em; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px #f7c7c6; border-right: solid 1px #f7c7c6; content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	footer .cmnBox { width: 1000px; margin: 30px auto; padding-bottom: 10px; border-bottom: 1px solid #ffffff; }
	footer .cmnBox > * { width: 200px; }
	footer .cmnBox dt { font-size: 1.4rem; margin-bottom: 15px; }
	footer .cmnBox dd { margin-bottom: 25px; }
	footer .cmnBox li { margin-bottom: 10px; }
	footer .cmnBox a { position: relative; margin-left: 1em; color: #fff; }
	footer .cmnBox a:before { position: absolute; top: 0; left: -1em; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px #f7c7c6; border-right: solid 1px #f7c7c6; content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	footer .pleaseBox { background: rgba(255,255,255,0.30); width: 1000px; margin: 0 auto; padding: 20px 40px; }
	footer .pleaseBox dl { display: flex; }
	footer .pleaseBox dt { font-size: 1.6rem; position: relative; padding-left: 45px; }
	footer .pleaseBox dt:before { width: 32px; height: 32px; content: ""; position: absolute; margin: auto; top: 0; bottom: 0; left: 0; background: url("../image/icon_ring.svg") no-repeat 0 0; }
	footer .pleaseBox dd { width: 660px; line-height: 1.6; }
	footer address { float: left; margin: 40px 0; font-style: normal; }
	footer address p { line-height: 1.6; margin-bottom: 1em; }
	footer address a { text-decoration: underline; color: #fff; }
}
@media screen and (max-width: 767px) {
	.ticketBuyBlock { background: var(--base-color) url("../image/top_bg02.png") no-repeat 0 0 / cover; margin-top: 8vw; padding: 7.8vw; position: relative; }
	.ticketBuyBlock dl { margin: 5vw 0; padding: 5vw; text-align: center; line-height: 1.7; background: #fff; }
	.ticketBuyBlock dt { font-size: 4.6vw; margin-bottom: 3vw; }
	.topSponsorBlock { margin: 8vw 7.8vw 0; }
	.topSponsorBlock ul { margin-bottom: 8vw; }
	.topSponsorBlock li { margin: 5vw 0; text-align: center; width: 100%; }
	.topSponsorBlock img { max-height: 16vw; max-width: 60vw; }
	.snsBlock { margin: 8vw 7.8vw 0; }
	.snsBlock ul { display: flex; justify-content: center; align-items: center; margin: 6vw 0 8vw; }
	.snsBlock li { margin: 0 2vw; }
	.snsBlock li a { display: inline-block; padding-top: 10vw; position: relative; }
	.snsBlock li a:before { content: ""; position: absolute; width: 8.5vw; height: 8.5vw; top: 0; right: 0; left: 0; margin: auto; }
	.snsBlock li a.fbBtn { color: #3b5998; }
	.snsBlock li a.fbBtn:before { background: url("../image/icon_fb.svg") no-repeat 0 0 / 8.5vw auto; }
	.snsBlock li a.twBtn { color: #55acee; }
	.snsBlock li a.twBtn:before { background: url("../image/icon_tw.svg") no-repeat 0 0 / 8.5vw auto; }
	.snsBlock li a.igBtn { color: #c36cba; }
	.snsBlock li a.igBtn:before { background: url("../image/icon_ig.svg") no-repeat 0 0 / 8.5vw auto; }
	.snsBlock li a.vcBtn { color: #ff7d32; }
	.snsBlock li a.vcBtn:before { background: url("../image/icon_vc.svg") no-repeat 0 0 / 8.5vw auto; }
	.snsBlock li a.xBtn { color: #000; }
	.snsBlock li a.xBtn:before { background: url("../image/icon_x.svg") no-repeat 0 0 / 8.5vw auto; }
	footer { background: var(--base-color) url("../image/bg_footer.png") no-repeat 50% 0 / 100vw auto; line-height: 1; font-size: 3.7vw; padding: 7.8vw; color: #fff; }
	footer .infoBox { text-align: center; margin-bottom: 7vw; }
	footer .infoBox div { border-right: 0.3vw solid #fff; width: 33.3%; }
	footer .infoBox div:last-child { border: none; }
	footer .infoBox dt { font-size: 3.4vw; }
	footer .infoBox dd { display: none; }
	footer .infoBox a { position: relative; padding-top: 10vw; display: block; color: #fff; }
	footer .infoBox a:before { position: absolute; top: 0; left: 0; right: 0; margin: auto; content: ""; }
	footer .infoBox div:nth-child(1) a:before { width: 6.25vw; height: 6.25vw; background: url("../image/icon_newsletter.svg") no-repeat 50% 0 / 6.25vw auto; }
	footer .infoBox div:nth-child(2) a:before { width: 7.3vw; height: 7.3vw; background: url("../image/icon_pamphlet.svg") no-repeat 50% 0 / 7.3vw auto; }
	footer .infoBox div:nth-child(3) a:before { width: 8.75vw; height: 8.75vw; background: url("../image/icon_casting.svg") no-repeat 50% 0 / 8.75vw auto; }
	footer .cmnBox { border-bottom: 0.1vw solid #fff; }
	footer .cmnBox > div { width: 84.4vw; }
	footer .cmnBox dt { padding: 4vw 1em 4vw 0; border-bottom: 0.3vw solid #fff; }
	footer .cmnBox dd { margin-left: 1em; }
	footer .cmnBox li { border-bottom: 0.3vw solid #fff; }
	footer .cmnBox a { display: block; padding: 4.7vw 4.7vw 4.7vw 0; position: relative; color: #fff; }
	footer .cmnBox a:after { content: ''; width: 0.8em; height: 0.8em; border: 0; border-top: solid 0.3vw #f7c7c6; border-right: solid 0.3vw #f7c7c6; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 0; bottom: 0; right: 0.5em; margin: auto; }
	footer .cmnBox dt.is-head { display: block; border-bottom: 0.3vw solid #fff; padding: 4.7vw 4.7vw 4.7vw 0; position: relative; }
	footer .cmnBox dt.is-head:before { content: ''; width: 1em; height: 0.3vw; background: #f7c7c6; position: absolute; top: 0; bottom: 0; right: 0; margin: auto; }
	footer .cmnBox dt.is-head:after { content: ''; width: 0.3vw; height: 1em; background: #f7c7c6; position: absolute; top: 0; bottom: 0; right: 0.4em; margin: auto; }
	footer .cmnBox dt.is-head.is-open:after { content: none; }
	footer .pleaseBox { background: rgba(255,255,255,0.30); margin: 6.5vw 0; padding: 7.8vw; }
	footer .pleaseBox dl {}
	footer .pleaseBox dt { position: relative; padding-left: 10vw; text-align: center; }
	footer .pleaseBox dt:before { width: 7vw; height: 7vw; content: ""; position: absolute; margin: auto; top: 0; bottom: 0; left: 0; background: url("../image/icon_ring.svg") no-repeat 0 0 / 7vw auto; }
	footer .pleaseBox dd { line-height: 1.6; font-size: 3.1vw; margin-top: 5.6vw; }
	footer address { margin: 40px 0; font-style: normal; }
	footer address p { line-height: 1.6; margin-bottom: 1em; }
	footer address a { text-decoration: underline; color: #fff; }
}




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

	4. Page

====================================*/
/*------------------------------
	pre page
------------------------------*/
@media (min-width: 768px) {
	.preBlock { min-width: 1200px; padding: 50px 0; margin-top: -120px; background: url("../image/pre_bg01.webp"); position: relative; display: grid; justify-content: center; align-items: center; gap: 50px; grid-template-columns: 1fr; text-align: center; }
	.preBlock::before,
	.preBlock::after { position: absolute; content: ""; width: 100%; height: 100%; top: 0; left: 0; }
	.preBlock::before { background: url("../image/pre_bg02@2x.webp") no-repeat 0 0 / auto 100%; }
	.preBlock::after { background: url("../image/pre_bg03@2x.webp") no-repeat 100% 0 / auto 100%; }
	.preBlock >* { position: relative; z-index: 1; }
}
@media screen and (max-width: 767px) {
	.preBlock { margin-top: -25vw; }
	.preBlock img { width: 100%; height: auto; }
}




/*------------------------------
	Common page
------------------------------*/
@media (min-width: 768px) {
	.performanceList { display: flex; flex-flow: wrap; }
	.performanceList li { position: relative; margin: 40px 20px 0; width: 300px; }
	.performanceList li dt { margin-top: 15px; font-size: 22px; }
	.performanceList li dd { margin-top: 5px; }
	.performanceList li img { width: 100%; height: auto; }
	.performanceList li span.num { position: absolute; top: 0; left: 0; padding: 10px 0 0 15px; width: 79px; height: 74px; background: url("../image/num_bg.png") no-repeat -1px 0 / 100% auto; color: #fff; font-size: 2.2rem; z-index: 2; font-family: 'Lora', serif; }
	.performanceList .notice { display: none; }

	.performanceListFull { display: flex; flex-wrap: wrap; width: 1000px; margin: 50px auto 0; }
	.performanceListFull li { width: 300px; margin-right: 50px; margin-bottom: 70px; position: relative; }
	.performanceListFull li:nth-child(3n) { margin-right: 0; }
	.performanceListFull li a { display: block; }
	.performanceListFull li figure { position: relative; z-index: 1; margin: 0 !important; }
	.performanceListFull li figure img { width: 100%; height: auto; }
	.performanceListFull li dl {}
	.performanceListFull li dt { position: relative; z-index: 2; background: var(--base-color) url("../image/bg_copy.png") no-repeat -40px -32px; color: #fff; margin: 0; padding: 0 20px; font-size: 1.8rem; height: 115px; display: flex; align-items: center; font-family: 'Noto Serif JP', serif; }
	.performanceListFull li dd { margin: 10px 0; font-size: 1.4rem; }
	.performanceListFull li dd a { display: inline; }
	.performanceListFull li dd.genre { margin: 10px 0; font-size: 2.2rem; color: var(--base-color); }
	.performanceListFull li dd.genre small { font-size: 1.4rem; }
	.performanceListFull li dd.artist { margin: 10px 0; font-size: 1.4rem; color: var(--base-color); }
	.performanceListFull li dd.artist .notice { display: none; }
	.performanceListFull li dd.date { margin: 5px 0; font-size: 1.4rem; }
	.performanceListFull li dd.date .notice { display: none; }
	.performanceListFull li dd.place { margin: 5px 0; font-size: 1.4rem; }
	.performanceListFull li span.num { position: absolute; top: 0; left: 0; padding: 10px 0 0 15px; width: 79px; height: 74px; background: url("../image/num_bg.png") no-repeat -1px 0 / 100% auto; color: #fff; font-size: 2.2rem; z-index: 2; font-family: 'Lora', serif; }
	.performanceListFull li span.soldout { display: inline-block; background: #be2121; color: #fff; font-size: 1.4rem; margin-left: 15px; padding: 3px 10px; }
	.performanceListFull li div { margin-top: 5px; }
	.performanceListFull li div a { display: inline-block; }
	.performanceListFull ruby rt { display: none; }
	.event .performanceListFull li dt,
	.eventother .performanceListFull li dt { display: none; }

	.detailBlock { margin-top: 80px; position: relative; }
	body.artist .detailBlock { margin-top: 30px; }
	body.artist .detailBlock div.slide { margin-top: 40px; }
	.detailBlock div.inner { padding-bottom: 20px; width:  auto; }
	.detailBlock div.slide {}
	.detailBlock .slick-slider { margin-bottom: 50px !important; }
	.detailBlock .slick-dots { bottom: -50px !important; }
	.detailBlock .slick-center { margin-right: 40px; margin-left: 40px; }
	.detailBlock article { display: flex; justify-content: space-between; flex-wrap: wrap; width: 1000px; margin: 0 auto; }
	.detailBlock article >*:nth-child(1) { width: 1000px; }
	.detailBlock article >*:nth-child(2) { width: 510px; }
	.detailBlock article >*:nth-child(3) { width: 440px; }
	.detailBlock article a { text-decoration: underline; }
	.detailBlock h1 { font-weight: normal; font-size: 4rem; line-height: 1.2; }
	.detailBlock h1 small { font-style: normal; font-size: 2rem; }
	.detailBlock h1 em { display: block; margin-top: 15px; font-style: normal; font-size: 2rem; }
	.detailBlock .num { display: block; font-size: 8rem; color: var(--base-color); font-family: 'Lora', serif; line-height: 1; text-align: center; margin-bottom: 30px; }
	.detailBlock h1 rt { font-size: 1.4rem; }
	.detailBlock h1 em rt { font-size: 1rem; }
	.detailBlock h2 { margin-top: 20px; font-weight: normal; font-size: 3.6rem; color: var(--base-color); font-family: 'Noto Serif JP', serif; line-height: 1.3; }
	.detailBlock h3 { margin-top: 20px; font-size: 2rem; font-weight: 500; line-height: 1.3; }
	.detailBlock p { margin: 1.2em 0; line-height: 2; }
	.detailBlock p mark { background: linear-gradient(transparent 70%, #ffff00 70%); }
	.detailBlock p + iframe { margin-top: 1.2em; }
	.detailBlock video { margin-top: 1.2em; width: 500px; background: #000; }
	.detailBlock p img { margin-left: 0.6em; }
	.detailBlock ul.tichetType { margin-top: 20px; }
	.detailBlock ul.tichetType li { display: inline-block; margin-right: 10px; padding: 5px 15px; background: #000; color: #ffffff; font-size: 1.6rem; }
	.detailBlock ul.tichetType li a { color: #fff; }
	.detailBlock dl { display: block; overflow: hidden; margin-top: 30px; border-top: 1px solid #ccc; padding-top: 20px; }
	.detailBlock dt { float: left; display: flex; justify-content: center; align-items: center; width: 45px; height: 45px; color: var(--base-color); border: 1px solid var(--base-color); border-radius: 50%; }
	.detailBlock dd { padding: 10px 0 10px 60px; min-height: 60px; }
	.detailBlock dd span.notice { display: block; font-size: 1.4rem; margin-top: 0.2em; }
	.detailBlock dd span.sheet { font-weight: 700; display: inline-block; margin: 0 0.4em 0 1em; }
	.detailBlock dd span.sheet:first-child { margin-left: 0; }
	.detailBlock div.btn { margin: 40px 0; text-align: center;  line-height: 1; }
	.detailBlock div.btn a { display: inline-block; line-height: 1; background: var(--base-color); border-radius: 9999px; padding: 18px 60px; color: #fff; font-size: 2rem; text-decoration: none; }
	.detailBlock div.btn span { display: inline-block; padding: 17px; width: 400px; background: #eeeeee; color: #cf0001; font-size: 2.6rem; line-height: 1.3; }
	.detailBlock div.btn p { margin-top: 0.5em; color: #cf0001; }
	.detailBlock div.btn span em { display: block; margin-top: 0.7em; color: #cf0001; font-size: 1.4rem; font-weight: normal; font-style: normal; }
	div.gotoAll { position: absolute; top: 100px; right: 20px; }
	div.gotoAll a { position: relative; padding-right: 1em; }
	div.gotoAll a:before { position: absolute; top: 0; right: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

	div.multiple { border: 1px solid #ccc; padding: 40px; margin: 60px auto; background: #fff; width: 1000px; }
	div.multiple dl { display: flex; justify-content: center; }
	div.multiple dt { width: 220px; }
	div.multiple a { position: relative; font-size: 2rem; font-weight: bold; padding-left: 1em; }
	div.multiple a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

	ul.blogCategoryList { display: flex; justify-content: space-between; }
	ul.blogCategoryList li a { display: inline-block; line-height: 1; background: #fff; border-radius: 9999px; padding: 10px 0; text-align: center; width: 159px; font-size: 1.4rem; color: var(--base-color); border: 1px solid var(--base-color); }
	ul.blogCategoryList li a.is-current { background: var(--base-color); color: #fff; }
}
@media screen and (max-width: 767px) {
	.performanceList { display: flex; flex-flow: wrap; }
	.performanceList li { position: relative; margin: 5vw 2vw 0 0; width: 45vw; }
	.performanceList li dl { line-height: 1.2; }
	.performanceList li dt { margin-top: 3vw; font-size: 3.4vw; }
	.performanceList li dd { margin-top: 1vw; font-size: 3.1vw; }
	.performanceList li span.num { position: absolute; top: 0; left: 0; padding: 1vw 0 0 2vw; width: 11vw; height: 10vw; background: url("../image/num_bg.png") no-repeat -0.1vw 0 / 11vw auto; color: #fff; font-size: 3.4vw; z-index: 2; font-family: 'Lora', serif; }
	.performanceList .notice { display: none; }

	.performanceListFull { margin: 0 auto 10vw; width: 81.2vw; }
	.performanceListFull li { position: relative; margin-top: 8vw; }
	.performanceListFull li figure { margin: 0 !important; }
	.performanceListFull li dl { line-height: 1.2; }
	.performanceListFull li dt { position: relative; z-index: 2; background: var(--base-color) url("../image/bg_copy.png") no-repeat -4vw -4vw / 120% auto; color: #fff; margin: -1vw 0 2vw; padding: 3vw 5vw; font-size: 5vw; min-height: 32vw; display: flex; align-items: center; font-family: 'Noto Serif JP', serif; }
	.performanceListFull li dd { margin: 2vw 0; font-size:	3.4vw; }
	.performanceListFull li dd a { display: inline; }
	.performanceListFull li dd.genre { margin: 2vw 0; font-size: 5vw; color: var(--base-color); }
	.performanceListFull li dd.genre small { font-size:	3.4vw; }
	.performanceListFull li dd.artist { margin-bottom: 2vw; font-size: 3.4vw; color: var(--base-color); }
	.performanceListFull li dd.artist .notice { display: none; }
	.performanceListFull li dd.date { margin: 2vw 0; font-size: 3.4vw; }
	.performanceListFull li dd.date .notice { display: none; }
	.performanceListFull li dd.place { margin: 2vw 0; font-size: 3.4vw; }
	.performanceListFull li span.num { position: absolute; top: 0; left: 0; padding: 2vw 0 0 4vw; width: 16.5vw; height: 15vw; background: url("../image/num_bg.png") no-repeat -0.1vw 0 / 16.5vw auto; color: #fff; font-size: 5vw; z-index: 2; font-family: 'Lora', serif; }
	.performanceListFull li span.soldout { display: inline-block; background: #be2121; color: #fff; font-size: 3.1vw; margin-left: 2vw; padding: 1vw 3vw; }
	.performanceListFull li div { margin-top: 2vw; }
	.performanceListFull li div a { display: inline-block; }
	.performanceListFull ruby rt { display: none; }
	.event .performanceListFull li dt,
	.eventother .performanceListFull li dt { display: none; }

	.detailBlock {}
	.detailBlock .slick-dots { bottom: -8vw !important; }
	.detailBlock article { margin: 10vw 7.8vw; }
	.detailBlock article a { text-decoration: underline; }
	.detailBlock h1 { margin-top: 4vw; font-weight: normal; font-size: 6.25vw; line-height: 1.2; }
	.detailBlock h1 small { font-style: normal; font-size: 3.7vw; }
	.detailBlock h1 em { display: block; margin-top: 2vw; font-style: normal; font-size: 3.7vw; }
	.detailBlock .num { display: block; font-size: 14vw; color: var(--base-color); font-family: 'Lora', serif; text-align: center; }
	.detailBlock h1 rt { font-size: 2.5vw; }
	.detailBlock h2 { margin-top: 5vw; font-weight: normal; font-size: 5.6vw; color: var(--base-color); font-family: 'Noto Serif JP', serif; line-height: 1.3; }
	.detailBlock h3 { margin-top: 5vw; font-size: 4vw; font-weight: 500; line-height: 1.3; }
	.detailBlock p { margin: 1.2em 0; }
	.detailBlock p mark { background: linear-gradient(transparent 70%, #ffff00 70%); }
	.detailBlock p + iframe { margin-top: 1.2em; width: 84.4vw; height: 47vw; }
	.detailBlock video { margin-top: 1.2em; width: 84vw; background: #000; }
	.detailBlock p img { margin-left: 0.6em; }
	.detailBlock p img.full { margin-left: 0; max-width: 100% !important; max-height: 100% !important; }
	.detailBlock ul.tichetType { margin-top: 3vw; }
	.detailBlock ul.tichetType li { display: inline-block; margin-right: 2vw; padding: 1vw 2vw; background: #000; color: #ffffff; font-size: 3.1vw; }
	.detailBlock ul.tichetType li a { color: #fff; }
	.detailBlock dl { display: block; overflow: hidden; margin-top: 5vw; border-top: 0.2vw solid #ccc; padding-top: 3vw; }
	.detailBlock dt { float: left; display: flex; justify-content: center; align-items: center; width: 12vw; height: 12vw; color: var(--base-color); border: 1px solid var(--base-color); border-radius: 50%; }
	.detailBlock dd { padding: 3vw 0 4vw 14vw; min-height: 15vw; }
	.detailBlock dd span.notice { display: block; font-size: 2.8vw; margin-top: 0.2em; }
	.detailBlock dd span.sheet { font-weight: 700; display: inline-block; margin: 0 0.3em 0 1em; }
	.detailBlock dd span.sheet:first-child { margin-left: 0; }
	.detailBlock div.btn { margin-top: 6vw; text-align: center; line-height: 1; display: block; }
	.detailBlock div.btn a { display: block; line-height: 1; background: var(--base-color); border-radius: 9999px; padding: 3vw 15vw; color: #fff; border: 0.15vw solid var(--base-color); font-size: 5vw; text-decoration: none; }
	.detailBlock div.btn span { display: inline-block; padding: 2.8vw; background: #eeeeee; color: #cf0001; font-size: 5vw; }
	.detailBlock ul.sns { margin: 6vw 0; text-align: center; }
	.detailBlock ul.sns li { display: inline-block; vertical-align: middle; }
	.detailBlock img.logoTanaka { width: 30vw; height: auto; }
	div.gotoAll { margin: 9vw 0; text-align: center; }
	div.gotoAll a { position: relative; padding-right: 1em; }
	div.gotoAll a:before { position: absolute; top: 0; right: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

	div.multiple { border: 0.15vw solid #ccc; padding: 5vw; margin: 6vw 7.8vw; background: #fff; }
	div.multiple dl { text-align: center; }
	div.multiple a { position: relative; font-size: 2rem; font-weight: bold; padding-left: 1em; }
	div.multiple a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 0.15vw var(--base-color); border-right: solid 0.15vw var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

	ul.blogCategoryList { display: flex; justify-content: space-between; flex-wrap: wrap; }
	ul.blogCategoryList li { margin-top: 3vw; }
	ul.blogCategoryList li a { display: inline-block; line-height: 1; background: #fff; border-radius: 9999px; padding: 2.8vw 0; text-align: center; width: 38vw; color: var(--base-color); border: 0.15vw solid var(--base-color); }
	ul.blogCategoryList li a.is-current { background: var(--base-color); color: #fff; }
}


/*------------------------------
	Top page
------------------------------*/
@media (min-width: 768px) {
	.topBlock01 { background: #fff url("../image/top_bg01.png") no-repeat 50% 0; text-align: center; }
	.topBlock01 img {}
	.topBlock02 { margin: 65px auto 90px; width: 1000px; }
	.topBlock02 p { line-height: 1.8; margin: 30px 0; }
	.topBlock02 .movieBox { position: relative; margin-bottom: 70px; }
	.topBlock02 .movieBox iframe { width: 1000px; height: 562px; }
	.topBlock03 { margin: 50px auto 0; width: 1000px; position: relative; }
	.topBlock03 .infoList { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 0 40px; }
	.topBlock03 .infoList li { border-bottom: 1px solid #ccc; width: 480px; padding: 20px 40px 20px 0; position: relative; }
	.topBlock03 .infoList li:nth-child(1),
	.topBlock03 .infoList li:nth-child(2) { border-top: 1px solid #ccc; }
	.topBlock03 .infoList a { display: block; }
	.topBlock03 .infoList li:after { position: absolute; top: 0; right: 10px; bottom: 0; margin: auto; width: 1em; height: 1em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.topBlock03 .infoList span { font-size: 1.2rem; display: inline-block; border: 1px solid var(--base-color); color: var(--base-color); line-height: 1; padding: 4px 7px; margin-left: 12px; }
	.topBlock03 .infoList dt { margin-bottom: 0.5em; }
	.topBlock03 .andMore { position: absolute; top: 40px; right: 0; }
	.topBlock03 .snsBtnBlock { margin-top: 60px; display: flex; justify-content: center; align-items: center; }
	.topBlock03 .snsBtnBlock li { margin: 0 15px; }
	.topBlock03 .snsBtnBlock img { width: 36px; height: auto; }
	.topBlock04 { margin: 60px auto; width: 1000px; }
	.topBlock04 div { height: 560px; padding-top: 110px; }
	.topBlock04 div:nth-child(1) { background: url("../image/top_img05.png") no-repeat; padding-left: 600px; }
	.topBlock04 div:nth-child(2) { background: url("../image/top_img06.png") no-repeat 100% 0; padding-right: 600px; }
	.topBlock04 dd { margin-top: 2em; }
	.topBlock04 dd a { margin-right: 15px; }
	.topBlock05 { margin: 80px 0; text-align: center; }
	.topPerformance { margin: 0 0 80px; background: var(--base-color); padding: 60px 0; }
	.topPerformance h2 { color: #fff; font-size: 6.4rem; font-family: 'Noto Serif JP', serif; font-weight: 500; text-align: center; margin-bottom: 25px; line-height: 1.4; }
	.topPerformance .c-title02,
	.topPerformance .c-title02 span { color: #fff; }
	.topPerformance .performanceList { }
	.topPerformance .performanceList a { color: #fff; }
	.topPerformance p { text-align: center; font-size: 2rem; margin-top: 20px; }
	.topPerformance div.gotoList { text-align: center; }
	.topPerformance div.gotoList a { margin: 0 10px; }
	.announce { background: #f0f0f0; padding: 0.5em 0 2em; text-align: center; color: #e03a22; }
	.announce p { margin-top: 1.5em; }
	.announce p span { font-weight: bold; font-size: 2rem; display: inline-block; margin-bottom: 0.5em; }
	.announce p a { display: inline-block; background: #e03a22; color: #fff; padding: 10px 25px; border-radius: 9999px; }
	.topTopics { background: url("../image/top_bg03.jpg") no-repeat 0 0; padding: 12px 30px; display: flex; }
	.topTopics .title { color: #fff; background-image: -webkit-linear-gradient( 180deg, rgb(22,159,215) 0%, rgb(20,123,219) 100%, rgb(108,205,227) 100%, rgb(65,140,203) 100%, rgb(90,200,221) 100%); padding: 4px 15px; line-height: 1; margin-right: 10px !important; }
	.topTopics >* { margin: 0 !important; }
	.topTopics a { font-weight: 700; color: #d9392b; text-decoration: underline; }
}
@media screen and (max-width: 767px) {
	.topBlock01 {}
	.topBlock01 img {}
	.topBlock02 { margin: 7.8vw; }
	.topBlock02 h3 { font-size: 5.2vw; margin-bottom: 3vw; font-family: 'Noto Serif JP', serif; font-weight: 600; }
	.topBlock02 p { margin-top: 3vw; }
	.topBlock02 figure {}
	.topBlock02 .movieBox { margin-bottom: 4vw; }
	.topBlock02 .movieBox iframe { width: 84.4vw; height: 47vw; }
	.topBlock03 { margin: 9vw 7.8vw 0; position: relative; }
	.topBlock03 .infoList { margin-top: 5vw; border-top: 0.15vw solid #ccc; }
	.topBlock03 .infoList li { border-bottom: 0.15vw solid #ccc; padding: 20px 40px 20px 0; }
	.topBlock03 .infoList a { display: block; position: relative; }
	.topBlock03 .infoList a:after { position: absolute; top: 0; right: -30px; bottom: 0; margin: auto; width: 1em; height: 1em; border-top: solid 0.15vw var(--base-color); border-right: solid 0.15vw var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.topBlock03 .infoList span { font-size: 3.4vw; display: inline-block; border: 0.15vw solid var(--base-color); color: var(--base-color); line-height: 1; padding: 4px 7px; margin-left: 12px; }
	.topBlock03 .andMore { position: absolute; top: 5vw; right: 0; }
	.topBlock03 .snsBtnBlock { margin-top: 7.8vw; display: flex; justify-content: center; align-items: center; }
	.topBlock03 .snsBtnBlock li { margin: 0 3vw; }
	.topBlock03 .snsBtnBlock img { width: 8.5vw; height: auto; }
	.topBlock04 { margin-top: 7.8vw; }
	.topBlock04 div { padding: 89vw 7vw 10vw; }
	.topBlock04 div:nth-child(1) { background: url("../image/top_img05.png") no-repeat 50% 0 / 90vw auto; }
	.topBlock04 div:nth-child(2) { background: url("../image/top_img06.png") no-repeat 50% 0 / 90vw auto; }
	.topBlock04 dd { margin-top: 1em; }
	.topBlock04 dd a { margin-right: 5vw; }
	.topBlock05 { margin: 6vw 7.8vw; text-align: center; }
	.topPerformance { margin: 0 0 9.3vw; padding: 7vw 0; background: var(--base-color); }
	.topPerformance h2 { color: #fff; font-size: 6vw; font-family: 'Noto Serif JP', serif; font-weight: 500; text-align: center; margin-bottom: 3vw; line-height: 1.4; }
	.topPerformance .c-title02,
	.topPerformance .c-title02 span { color: #fff; }
	.topPerformance p { text-align: center; font-size: 4vw; margin-top: 3vw; }
	.topPerformance .performanceList {}
	.topPerformance .performanceList a { color: #fff; }
	.topPerformance div.gotoList { margin-top: 1vw; text-align: center; }
	.topPerformance div.gotoList a { margin: 0 3vw; }
	.announce { background: #f0f0f0; padding: 0.5em 1em 2em; text-align: center; color: #e03a22; }
	.announce p { margin-top: 1.5em; }
	.announce p:first-child { padding: 0 1em; }
	.announce p span { font-weight: bold; font-size: 5vw; display: inline-block; margin-bottom: 0.5em; }
	.announce p a { display: inline-block; background: #e03a22; color: #fff; padding: 10px 25px; border-radius: 9999px; }
	.topTopics { background: url("../image/top_sp_bg03.jpg") no-repeat 50% 50% / cover; padding: 4vw 5vw; display: flex; }
	.topTopics .title { color: #fff; background-image: -webkit-linear-gradient( 180deg, rgb(22,159,215) 0%, rgb(20,123,219) 100%, rgb(108,205,227) 100%, rgb(65,140,203) 100%, rgb(90,200,221) 100%); padding: 1vw 3vw; line-height: 1; margin-right: 2vw !important; }
	.topTopics >* { margin: 0 !important; }
	.topTopics a { font-weight: 700; color: #d9392b; text-decoration: underline; }
}


/*------------------------------
	About page
------------------------------*/
@media (min-width: 768px) {
	.aboutBlock01 { margin: 65px 0 60px; }
	.aboutBlock01 h2 {; color: var(--base-color); font-size: 6.4rem; font-family: 'Noto Serif JP', serif; font-weight: 500; text-align: center; margin-bottom: 25px; padding: 15px 0; line-height: 1.4; }
	.aboutBlock01 p { line-height: 1.8; margin: 2em 0; }
	.aboutBlock01 .txtBox { padding-top: 20px; padding-bottom: 40px; width: 1000px; margin: 0 auto; height: 305px; }
	.aboutBlock01 .imgL { padding-left: 240px; background: url("../image/about_img02.png") no-repeat 0 0 / auto 302px; }
	.aboutBlock02 { position: relative; margin-top: 60px; padding: 80px 0 5vw; background: var(--base-color); }
	.aboutBlock02 h2 { text-align: center; }
	.aboutBlock02 div { display: flex; margin: 38px auto 0; width: 1000px; flex-wrap: wrap; justify-content: space-between; }
	.aboutBlock02 div dl { width: 306px; color: #fff; }
	.aboutBlock02 div dt { display: table-cell; vertical-align: middle; text-align: center; width: 306px; height: 93px; font-size: 2.4rem; line-height: 1.2; font-family: 'Noto Serif JP', serif; background: #fff; color: var(--base-color); }
	.aboutBlock02 div dt sup { font-size: 1.6rem; }
	.aboutBlock02 div dd { font-size: 1.4rem; margin-top: 20px; }
	.aboutBlock02 dl.u15 { margin: 40px auto 0; padding: 40px 80px; width: 1000px; background: #fff; }
	.aboutBlock02 dl.u15 dt { text-align: center; font-size: 3.2rem; font-family: 'Noto Serif JP', serif; }
	.aboutBlock02 dl.u15 dt span { color: var(--base-color); }
	.aboutBlock02 dl.u15 dd { margin-top: 25px; line-height: 2; }
	.aboutBlock02 dl.u15 dd:last-child { text-align: center; }
	.aboutBlock02 .supportedby { vertical-align: middle; margin-top: 15px; }
	.aboutBlock02 .supportedby img { margin-left: 0.5em; }
	.aboutBlock03 { margin: 80px auto 140px; width: 1000px; }
	.aboutBlock03 dl { display: block; overflow: hidden; line-height: 1.4; margin-top: -20px; }
	.aboutBlock03 dt { float: left; padding: 18px 0; }
	.aboutBlock03 dd { padding: 18px 0 18px 100px; border-bottom: 1px solid #ccc; }
}
@media screen and (max-width: 767px) {
	.aboutBlock01 {}
	.aboutBlock01 h2 { color: var(--base-color); font-size: 6vw; font-family: 'Noto Serif JP', serif; font-weight: 500; text-align: center; margin-bottom: 3vw; padding: 2vw 0; line-height: 1.4; }
	.aboutBlock01 figure { margin: 0 7.8vw; }
	.aboutBlock01 .txtBox { margin: 7.8vw; }
	.aboutBlock01 .imgL { padding-top: 45vw; background: url("../image/about_img02.png") no-repeat 50% 0 / 30vw auto; }
	.aboutBlock01 .imgR { padding-top: 45vw; background: url("../image/about_img03.png") no-repeat 50% 0 / 30vw auto; }
	.aboutBlock02 { position: relative; margin-top: 9.3vw; padding: 7.8vw 7.8vw 5vw; background: var(--base-color); }
	.aboutBlock02 h2 { padding: 0 0 6.2vw; }
	.aboutBlock02 div dl { margin-bottom: 5vw; color: #fff; }
	.aboutBlock02 div dt { text-align: center; font-size: 5vw; font-family: 'Noto Serif JP', serif; background: #fff; color: var(--base-color); padding: 2vw 0; }
	.aboutBlock02 div dd { margin-top: 3vw; font-size: 3.4vw; }
	.aboutBlock02 dl.u15 { margin-top: 5vw; padding: 4vw 6vw; background: #fff; }
	.aboutBlock02 dl.u15 dt { text-align: center; font-size: 5vw; font-family: 'Noto Serif JP', serif; }
	.aboutBlock02 dl.u15 dt span { color: var(--base-color); }
	.aboutBlock02 dl.u15 dd { margin-top: 5vw; }
	.aboutBlock02 dl.u15 dd:last-child { text-align: center; }
	.aboutBlock02 .supportedby { vertical-align: middle; margin-top: 5vw; }
	.aboutBlock02 .supportedby img { width: 20vw; margin-left: 0.5em; }
	.aboutBlock02 iframe { width: 84.4vw; height: 47vw; }
	.aboutBlock03 { margin: 9vw 7.8vw; }
	.aboutBlock03 dl { display: block; overflow: hidden; font-size: 3.4vw; line-height: 1.4; }
	.aboutBlock03 dt { float: left; padding: 4vw 0; }
	.aboutBlock03 dd { padding: 4vw 0 4vw 16vw; border-bottom: 0.2vw solid #333333; }
}


/*------------------------------
	Recommend page
------------------------------*/
@media (min-width: 768px) {
	.recommendBlock01 { width: 1000px; margin: 0 auto; }
	.recommendBlock01 h2 { font-size: 3.2rem; font-weight: 500; text-align: center; font-family: 'Noto Serif JP', serif; margin-bottom: 30px; position: relative; }
	.recommendBlock01 h2::before { width: 1000px; height: 280px; left: 0; top: 0; position: absolute; content: ""; background: url("../image/recommend_bg03.png") no-repeat 0 0; z-index: -1; }
	.recommendBlock01 p { margin-bottom: 40px; line-height: 1.8; text-align: center; }
	.recommendBlock01 .planBox { width: 300px; margin-bottom: 50px; }
	.recommendBlock01 .planBox_title { background: var(--base-color) url("../image/bg_copy.png") no-repeat -40px -32px; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 600; padding: 25px 15px; }
	.recommendBlock01 .planBox_copy { font-size: 2.4rem; display: block; }
	.recommendBlock01 .planBox_cont { display: flex; justify-content: space-between; align-items: center; margin-top: 2px; }
	.recommendBlock01 .planBox_cont img { width: 80px; height: auto; }
	.recommendBlock01 .planBox_cont dl { color: var(--base-color); width: 210px; }
	.recommendBlock01 .planBox_cont dt { font-size: 2rem; display: flex; align-items: center; }
	.recommendBlock01 .planBox_cont dd { font-size: 1.4rem; margin-top: 5px; }
	.recommendBlock01 .planBox_cont .num { font-size: 1.2rem; font-family: 'Noto Serif JP', serif; display: inline-flex; margin-right: 5px; background: var(--base-color); color: #fff; width: 21px; height: 21px; align-items: center; justify-content: center; }
	.recommendBlock01 .planBox_cont .wThin { letter-spacing : -0.1em; }

	.recommendBlock02 { width: 1000px; margin: 60px auto 80px; border: 1px solid #ccc; padding: 40px; }
	.recommendBlock02 h2 { font-size: 2.4rem; font-weight: 500; text-align: center; font-family: 'Noto Serif JP', serif; margin-bottom: 30px; }
	.recommendBlock02 p { line-height: 1.8; text-align: center; }
	.recommendBlock02 .fsS { font-size: 1.4rem; }
	.recommendBlock02 .fsL { font-size: 1.8rem; }
	.recommendBlock02 .fsLL { font-size: 3.2rem; }
	.recommendBlock02 hr { height: 1px; border: none; border-top: 1px solid #ccc; margin: 30px 0; }
	.recommendBlock02 .planBox { width: 440px; margin-top: 40px; }
	.recommendBlock02 .planBox_title { background: var(--base-color) url("../image/bg_copy.png") no-repeat -20px -90px / 120% auto; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 600; padding: 25px; }
	.recommendBlock02 .planBox_copy { font-size: 2.4rem; display: block; }
	.recommendBlock02 .planBox_cont { display: block; margin: 15px 0; }
	.recommendBlock02 .planBox_cont dl { color: var(--base-color); }
	.recommendBlock02 .planBox_cont dt { font-size: 2rem; display: flex; align-items: center; }
	.recommendBlock02 .planBox_cont dd { font-size: 1.4rem; margin-top: 5px; line-height: 1.6; }
	.recommendBlock02 .planBox_cont .num { font-size: 1.2rem; font-family: 'Noto Serif JP', serif; display: inline-flex; margin-right: 5px; background: var(--base-color); color: #fff; width: 21px; height: 21px; align-items: center; justify-content: center; }

	.recommendBlock03 { width: 1000px; margin: 0 auto; }
	.recommendBlock03 h2 { font-size: 1.8rem; font-weight: 600; text-align: center; font-family: 'Noto Serif JP', serif; padding-top: 100px; border-top: 1px solid #ccc; line-height: 1.8; position: relative; }
	.recommendBlock03 h2::before { width: 1000px; height: 280px; left: 0; right: 0; top: 50px; margin: auto; position: absolute; content: ""; background: url("../image/recommend_bg01.png") no-repeat 50% 0; z-index: -1; }
	.recommendBlock03 h3 { font-size: 3.2rem; font-weight: 500; text-align: center; font-family: 'Noto Serif JP', serif; margin: 80px 0 30px; position: relative; }
	.recommendBlock03 h3.bg02::before { width: 330px; height: 150px; left: calc(50% + 50px); top: -80px; position: absolute; content: ""; background: url("../image/recommend_bg02.png") no-repeat 50% 0; z-index: -1; }
	.recommendBlock03 p { margin-bottom: 40px; line-height: 1.8; text-align: center; }
	.recommendBlock03 .programBox { width: 480px; margin-bottom: 40px; }
	.recommendBlock03 .programBox dl { margin-top: 15px; }
	.recommendBlock03 .programBox dt { font-size: 2rem; font-weight: 600; font-family: 'Noto Serif JP', serif; }
	.recommendBlock03 .programBox dd { font-size: 1.4rem; margin-top: 10px; line-height: 1.8; }
	.recommendBlock03 .programBox a { text-decoration: underline; }
}
@media screen and (max-width: 767px) {
	.recommendBlock01 { margin: 0 7.8vw; }
	.recommendBlock01 h2 { font-size: 6vw; font-weight: 500; text-align: center; font-family: 'Noto Serif JP', serif; margin-bottom: 3vw; }
	.recommendBlock01 p { margin-bottom: 4vw; line-height: 1.8; text-align: center; }
	.recommendBlock01 .planBox { margin-bottom: 5vw; }
	.recommendBlock01 .planBox_title { background: var(--base-color) url("../image/bg_copy.png") no-repeat 0 -12vw / 110% auto; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 600; padding: 3vw 4vw; }
	.recommendBlock01 .planBox_copy { font-size: 5vw; display: block; }
	.recommendBlock01 .planBox_cont { display: flex; justify-content: space-between; align-items: center; margin-top: 1vw; }
	.recommendBlock01 .planBox_cont img { width: 15vw; height: auto; }
	.recommendBlock01 .planBox_cont dl { color: var(--base-color); width: 65vw; }
	.recommendBlock01 .planBox_cont dt { font-size: 5vw; display: flex; align-items: center; }
	.recommendBlock01 .planBox_cont dd { font-size: 3.4vw; margin-top: 1vw; }
	.recommendBlock01 .planBox_cont .num { font-size: 2.8vw; font-family: 'Noto Serif JP', serif; display: inline-flex; margin-right: 1vw; background: var(--base-color); color: #fff; width: 5vw; height: 5vw; align-items: center; justify-content: center; }

	.recommendBlock02 { margin: 7.8vw; border: 0.2vw solid #ccc; padding: 5vw; background: #fff; }
	.recommendBlock02 h2 { font-size: 5vw; font-weight: 500; text-align: center; font-family: 'Noto Serif JP', serif; margin-bottom: 3vw; }
	.recommendBlock02 p { line-height: 1.8; text-align: center; }
	.recommendBlock02 .fsS { font-size: 2.8vw; }
	.recommendBlock02 .fsL { font-size: 3.6vw; }
	.recommendBlock02 .fsLL { font-size: 6vw; }
	.recommendBlock02 hr { height: 0.2vw; border: none; border-top: 0.2vw solid #ccc; margin: 3vw 0; }
	.recommendBlock02 .planBox { margin-top: 5vw; }
	.recommendBlock02 .planBox_title { background: var(--base-color) url("../image/bg_copy.png") no-repeat 0 -12vw / 110% auto; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 600; padding: 3vw 4vw; }
	.recommendBlock02 .planBox_copy { font-size: 5vw; display: block; }
	.recommendBlock02 .planBox_cont { display: block; margin: 2vw 0; }
	.recommendBlock02 .planBox_cont dl { color: var(--base-color); }
	.recommendBlock02 .planBox_cont dt { font-size: 5vw; display: flex; align-items: center; }
	.recommendBlock02 .planBox_cont dd { font-size: 3.4vw; margin-top: 1vw; }
	.recommendBlock02 .planBox_cont .num { font-size: 2.8vw; font-family: 'Noto Serif JP', serif; display: inline-flex; margin-right: 1vw; background: var(--base-color); color: #fff; width: 5vw; height: 5vw; align-items: center; justify-content: center; }
	.recommendBlock03 { margin: 0 7.8vw; }
	.recommendBlock03 h2 { font-size: 3.6vw; font-weight: 600; text-align: center; font-family: 'Noto Serif JP', serif; padding-top: 10vw; border-top: 0.2vw solid #ccc; line-height: 1.8; position: relative; }
	.recommendBlock03 h2::before { width: 100vw; height: 28vw; left: -8vw; top: 5vw; position: absolute; content: ""; background: url("../image/recommend_bg01.png") no-repeat 50% 0 / 100% auto; z-index: -1; }
	.recommendBlock03 h3 { font-size: 6vw; font-weight: 600; text-align: center; font-family: 'Noto Serif JP', serif; margin: 8vw 0 3vw; position: relative; }
	.recommendBlock03 p { margin-bottom: 4vw; line-height: 1.8; text-align: center; }
	.recommendBlock03 .programBox { margin-bottom: 5vw; }
	.recommendBlock03 .programBox dl { margin-top: 2vw; }
	.recommendBlock03 .programBox dt { font-size: 5vw; font-weight: 600; font-family: 'Noto Serif JP', serif; }
	.recommendBlock03 .programBox dd { font-size: 3.4vw; margin-top: 1vw; line-height: 1.8; }
	.recommendBlock03 .programBox a { text-decoration: underline; }
}


/*------------------------------
	History page
------------------------------*/
@media (min-width: 768px) {
	.historyBlock01 { width: 1000px; margin: 0 auto; }
	.historyBlock01 p { margin-top: 1.5em; line-height: 1.8; }
	.historyBlock02 { margin: 50px 0; }
	.historyBlock02 img { width: 100%; height: auto; }
	.historyBlock03 { width: 1000px; margin: 0 auto; }
	.historyBlock03 h2 { margin-bottom: 40px; }
	.historyBlock03 p { margin-top: 1.5em; line-height: 1.8; }
	.historyBlock04 { width: 1000px; margin: 0 auto 80px; }
	.historyBlock04 .column li { margin: 30px 41px 0 0; width: 306px; }
	.historyBlock04 .column li:nth-child(3n) { margin-right: 0; }
	.historyBlock04 dt { margin: 15px 0; color: var(--base-color); font-family: 'Noto Serif JP', serif; }
	.historyBlock04 p { margin-top: 3em; }
}
@media screen and (max-width: 767px) {
	.historyBlock01 { margin: 0 7.8vw; }
	.historyBlock02 { margin: 5vw 0; }
	.historyBlock03 { margin: 0 7.8vw; }
	.historyBlock03 h2 { margin-bottom: 3vw; }
	.historyBlock03 p { margin-top: 1.5em; line-height: 1.8; }
	.historyBlock04 { margin: 0 7.8vw 9vw ; }
	.historyBlock04 li { margin-top: 5vw; }
	.historyBlock04 dt { margin: 2vw 0; color: var(--base-color); font-family: 'Noto Serif JP', serif; }
	.historyBlock04 p { margin-top: 2em; }
}


/*------------------------------
	performanceBlock page
------------------------------*/
@media (min-width: 768px) {
	.performanceBlock { width: 1000px; margin: 0 auto; }
	.performanceBlock .map { margin: 2em 0; }
	.performanceBlock div.hashigo { background: #fff; border: 1px solid #ccc; padding: 30px; margin: 0 0 90px; display: flex; justify-content: center; align-items: center; }
	.performanceBlock div.hashigo a { position: relative; font-size: 2rem; font-weight: bold; padding-left: 1em; margin-right: 40px; }
	.performanceBlock div.hashigo a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.performanceBlock .column li { margin: 0 10px; }
	.performanceBlock .anchor { margin: 60px 0; display: flex; flex-wrap: wrap; }
	.performanceBlock .anchor li { margin-right: 30px; }
	.performanceBlock .anchor a { position: relative; padding-left: 30px; }
	.performanceBlock .anchor a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg);
    }
}
@media screen and (max-width: 767px) {
	.performanceBlock { margin-top: 10vw; }
	.performanceBlock .map { margin: 2em 9vw; }
	.performanceBlock .c-title07 { margin-left: 9.4vw; margin-right: 9.4vw; }
	.performanceBlock div.hashigo { border-top: 0.15vw solid #ccc; padding-top: 3vw; margin: 5vw 7.8vw 0; }
	.performanceBlock div.hashigo a { position: relative; font-size: 2rem; font-weight: bold; padding-left: 1em; }
	.performanceBlock div.hashigo a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.5em; height: 0.5em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.performanceBlock div.gotoInfo { margin: 4vw 7.8vw 6vw; }
	.performanceBlock div.gotoInfo ul { display: flex; margin-bottom: 30px; }
	.performanceBlock div.gotoInfo li { margin-right: 1em; }
	.performanceBlock .column li { margin: 2vw; }
	.performanceBlock .anchor { margin: 6vw 9vw; display: flex; flex-wrap: wrap; }
	.performanceBlock .anchor li { width: 40vw; }
	.performanceBlock .anchor a { position: relative; padding-left: 30px; }
	.performanceBlock .anchor a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
}


/*------------------------------
	Timetable page
------------------------------*/
@media (min-width: 768px) {
	.timetableBlock { margin: 0 auto 80px; width: 1000px; position: relative; }
	.timetableBlock .tablewrap { margin-top: 50px; }
	.timetableBlock .column li { margin: 0 10px; }
	.timetableBlock table { margin-bottom: 20px; }
	.timetableBlock thead th { font-size: 1.4rem; font-weight: normal; line-height: 1.2; background: #999; color: #fff; padding: 8px; }
	.timetableBlock thead th.ryutopia1 { background: #cc6751; }
	.timetableBlock thead th.ryutopia2 { background: #4295a4; }
	.timetableBlock thead th.ryutopia3 { background: #789151; }
	.timetableBlock thead th.enkikan { background: #9c5f94; }
	.timetableBlock thead th.free { background: #d97730; }
	.timetableBlock thead th span { display: block; font-size: 1.2rem; }
	.timetableBlock tbody th.time { background: #999; color: #fff; font-weight: normal; border-top: 1px solid #ccc; }
	.timetableBlock td { background: #f0f0f0; border-left: 1px solid #ccc; border-right: 1px solid #ccc; font-size: 0.1rem; height: 20px;}
	.timetableBlock td.time { border-top: 1px solid #ccc; }
	.timetableBlock td[rowspan] { background: #fff; padding: 10px 12px; vertical-align: top; font-size: 1.6rem; }
	.timetableBlock td[rowspan] a { display: block; }
	.timetableBlock div.time { display: flex; margin-bottom: 7px; }
	.timetableBlock div.time span { width: 30px; height: 30px; display: flex; justify-content: center; align-items: center; color: #fff; margin-right: 10px; }
	.timetableBlock td dt { color: #fff; padding: 5px 12px; font-size: 1.4rem; font-family: 'Noto Serif JP', serif; margin-bottom: 7px; }
	.timetableBlock td dt br,
	.timetableBlock td dd rt { display: none; }
	.timetableBlock td dt br.must { display: block; }
	.timetableBlock td dd { padding-left: 60px; position: relative; font-size: 1.2rem; }
	.timetableBlock td dd span { font-weight: bold; font-size: 1.3rem; }
	.timetableBlock td img { position: absolute; top: 0; left: 0; width: 50px; height: auto; }
	.timetableBlock td .notice { display: none; }
	.timetableBlock td.ryutopia1 { border-top: 5px solid #cc6751; }
	.timetableBlock td.ryutopia1 div.time { color: #cc6751; }
	.timetableBlock td.ryutopia1 div.time span,.timetableBlock td.ryutopia1 dt { background: #cc6751; }
	.timetableBlock td.ryutopia2 { border-top: 5px solid #4295a4; }
	.timetableBlock td.ryutopia2 div.time { color: #4295a4; }
	.timetableBlock td.ryutopia2 div.time span,.timetableBlock td.ryutopia2 dt { background: #4295a4; }
	.timetableBlock td.ryutopia3 { border-top: 5px solid #789151; }
	.timetableBlock td.ryutopia3 div.time { color: #789151; }
	.timetableBlock td.ryutopia3 div.time span,.timetableBlock td.ryutopia3 dt { background: #789151; }
	.timetableBlock td.enkikan { border-top: 5px solid #9c5f94; }
	.timetableBlock td.enkikan div.time { color: #9c5f94; }
	.timetableBlock td.enkikan div.time span,.timetableBlock td.enkikan dt { background: #9c5f94; }
	.timetableBlock td.free div.time { color: #d97730; display: flex; justify-content: center; border-bottom: 1px solid #d97730; padding-bottom: 5px; }
	.timetableBlock td.free2 { border-top: 5px solid #d97730; border-bottom: 1px solid #ccc; }
	.timetableBlock td.free2 div.time { color: #d97730; }
	.timetableBlock td.free2 div.time span,.timetableBlock td.free2 dt { background: #d97730; }
}
@media screen and (max-width: 767px) {
	.timetableBlock { margin: 0 5vw; }
	.timetableBlock .tablewrap { margin-top: 5vw; }
	.timetableBlock .column li { margin: 2vw; }
	.timetableBlock table { margin: 5vw 0 3vw; width: auto; }
	.timetableBlock thead th { font-size: 3vw; font-weight: normal; line-height: 1.2; background: #999; color: #fff; padding: 2vw; }
	.timetableBlock thead th.ryutopia1 { background: #cc6751; }
	.timetableBlock thead th.ryutopia2 { background: #4295a4; }
	.timetableBlock thead th.ryutopia3 { background: #789151; }
	.timetableBlock thead th.enkikan { background: #9c5f94; }
	.timetableBlock thead th.free { background: #d97730; }
	.timetableBlock thead th span { display: block; font-size: 2.5vw; }
	.timetableBlock tbody th.time { background: #999; color: #fff; font-weight: normal; border-top: 0.15vw solid #ccc; }
	.timetableBlock td { background: #f0f0f0; border-left: 0.15vw solid #ccc; border-right: 0.15vw solid #ccc; font-size: 0.1rem; height: 4vw; }
	.timetableBlock td.time { border-top: 0.15vw solid #ccc; }
	.timetableBlock td[rowspan] { background: #fff; padding: 2vw; vertical-align: top; font-size: 3vw; }
	.timetableBlock td[rowspan] a { display: block; width: 20vw !important; }
	.timetableBlock div.time { display: flex; margin-bottom: 2vw; }
	.timetableBlock div.time span { width: 8vw; height: 8vw; display: flex; justify-content: center; align-items: center; color: #fff; margin-right: 1vw; font-size: 2.5vw; }
	.timetableBlock td dt { color: #fff; padding: 2vw; font-family: 'Noto Serif JP', serif; margin-bottom: 2vw; }
	.timetableBlock td dt br,
	.timetableBlock td dd rt { display: none; }
	.timetableBlock td dt br.must { display: block; }
	.timetableBlock td dd { font-size: 1.2rem; }
	.timetableBlock td dd span { font-weight: bold; }
	.timetableBlock td .notice { display: none; }
	.timetableBlock td img { display: block; margin: 0 auto; width: 10vw; height: auto; }
	.timetableBlock td.ryutopia1 { border-top: 5px solid #cc6751; }
	.timetableBlock td.ryutopia1 div.time { color: #cc6751; }
	.timetableBlock td.ryutopia1 div.time span,.timetableBlock td.ryutopia1 dt { background: #cc6751; }
	.timetableBlock td.ryutopia2 { border-top: 5px solid #4295a4; }
	.timetableBlock td.ryutopia2 div.time { color: #4295a4; }
	.timetableBlock td.ryutopia2 div.time span,.timetableBlock td.ryutopia2 dt { background: #4295a4; }
	.timetableBlock td.ryutopia3 { border-top: 5px solid #789151; }
	.timetableBlock td.ryutopia3 div.time { color: #789151; }
	.timetableBlock td.ryutopia3 div.time span,.timetableBlock td.ryutopia3 dt { background: #789151; }
	.timetableBlock td.enkikan { border-top: 5px solid #9c5f94; }
	.timetableBlock td.enkikan div.time { color: #9c5f94; }
	.timetableBlock td.enkikan div.time span,.timetableBlock td.enkikan dt { background: #9c5f94; }
	.timetableBlock td.free div.time { color: #d97730; justify-content: center; border-bottom: 0.15vw solid #d97730; padding-bottom: 2vw; }
	.timetableBlock td.free2 { border-top: 5px solid #d97730; border-bottom: 1px solid #ccc; }
	.timetableBlock td.free2 div.time { color: #d97730; }
	.timetableBlock td.free2 div.time span,.timetableBlock td.free2 dt { background: #d97730; }
	.timetableBlock table + small { margin: 5vw 7.8vw; display: block; }
	.timetableBlock .scroll-hint-icon { top: 12vw; }
}


/*------------------------------
	Ticket page
------------------------------*/
@media (min-width: 768px) {
	.ticketBlock { margin: 0 auto; width: 1000px; }
	.ticketBlock p { margin-top: 1em; }
	.ticketBlock hr { height: 1px; border: none; border-top: 1px #ccc solid; margin: 60px 0; }
	.ticketBlock small { font-size: 1.4rem; }
	.ticketBlock table { margin: 30px 0 0; }
	.ticketBlock th { background: #111613; color: #fff; padding: 10px; font-weight: normal; }
	.ticketBlock td { padding: 15px 0; border-bottom: 1px solid #787878; text-align: center; }
	.ticketBlock td.left { text-align: left; }
	.ticketBlock td.ok { color: #e60012; }
	.ticketBlock td a { position: relative; padding-left: 30px; }
	.ticketBlock td a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
	.ticketBlock div.slider {  margin-top: 40px; padding: 40px 0; background: #f3f3f3; }
	.ticketBlock div.slider h3 { font-size: 3.2rem; text-align: center; }
	.ticketBlock .slide { padding: 40px 55px 0; }
	.ticketBlock .slick-slide { width: 880px; }
	.ticketBlock .slick-dots { width: 880px; bottom: auto; top: -20px; }
	.ticketBlock .slick-prev { left: 350px; top: -10px; }
	.ticketBlock .slick-next { right: 350px; top: -10px; }
	.ticketBlock .slick-prev:before {  background: url("../image/btn_prev.png") no-repeat 50% 50%; }
	.ticketBlock .slick-next:before { background: url("../image/btn_next.png") no-repeat 50% 50%; }
	.ticketBlock ul li div { display: block; overflow: hidden; }
	.ticketBlock ul li img { float: left; width: 440px; height: auto; }
	.ticketBlock ul li dl { margin-left: 485px; }
	.ticketBlock ul li dt { font-size: 2.2rem; }
	.ticketBlock ul li dt span { color: var(--base-color); }
	.ticketBlock ul li dd { margin-top: 20px; line-height: 1.5; }
	.ticketBlock ul li dd a:hover { text-decoration: none; }
	.ticketBlock ul li dd em { font-style: normal; font-size: 2.6rem; }
	.ticketBlock ul li dd strong { color: #cf0408; font-weight: normal; }
	.ticketBlock ul li dd small { font-size: 1.4rem; }
	.ticketBlock ul li dd img { float: none; display: inline; margin: 0 3px; width: 22px; height: 22px; }
	.ticketBlock .noteStyle01 { border: 1px solid var(--base-color); padding: 35px; margin: 30px 0; background: #fff; }
	.ticketBlock .noteStyle01 > *:first-child { margin-top: 0 !important; }
	.ticketBlock .noteStyle01 .fsL { font-size: 2rem; }
	.ticketBlock .noteStyle01 em { font-style: normal; color: var(--base-color); }
	.ticketBlock .noteStyle01 h4 { font-size: 1.8rem; color: var(--base-color); margin-bottom: 5px; }
	.ticketBlock .supported { vertical-align: middle; }
	div.commission { margin-top: 20px; font-size: 1.4rem; }
	div.commission dl { display: block; overflow: hidden; zoom: 1; }
	div.commission dt { float: left; }
	div.commission dd { margin-left: 80px; font-size: 1.4rem; }
	div.commission dd a { text-decoration: underline; }
	div.commission dd a:hover { text-decoration: none; }
	div.codeTable { margin-top: 40px; }
	div.codeTable table { margin-bottom: 40px; font-size: 1.4rem !important; }
	div.codeTable th { text-align: center; width: 133px; padding: 6px; border: 1px solid #cccccc; line-height: 1.3; background: #fff; color: #000; font-weight: bold; }
	div.codeTable td { position: relative; padding: 5px 5px 5px 40px; border: 1px solid #cccccc; text-align: left; }
	div.codeTable tr.lCode td:before { position: absolute; top: 50%; left: 9px; margin-top: -10px; width: 20px; height: 20px; background: url(../image/icon_l.svg) no-repeat 0 50%; content: ""; }
	div.codeTable tr.pCode td:before { position: absolute; top: 50%; left: 9px; margin-top: -10px; width: 20px; height: 20px; background: url(../image/icon_p.svg) no-repeat 0 50%; content: ""; }
	div.codeTable p { margin-bottom: 15px;}
	div.codeTable ul {}
	div.codeTable li { display: inline-block; margin-right: 35px; }
	div.codeTable li a { text-decoration: underline; }
	div.codeTable li a:hover { text-decoration: none; }
	.ticketNotice { margin: 60px auto; padding: 40px; width: 1000px; border: 1px solid #ccc; }
	.ticketNotice h3 { text-align: center; font-weight: normal; font-size: 2.4rem; }
	.ticketNotice ul { margin-top: 30px; margin-left: 1.5em; list-style: disc; line-height: 1.7; }
	.ticketNotice ol { margin-left: 1.5em; list-style: decimal; }
}
@media screen and (max-width: 767px) {
	.ticketBlock { margin: 9.3vw 7.8vw 0; }
	.ticketBlock hr { height: 0.15vw; border: none; border-top: 0.15vw #ccc solid; margin: 8vw 0; }
	.ticketBlock p { margin-top: 1.5em; }
	.ticketBlock p em { color: #e60012; font-style: normal; }
	.ticketBlock div.slider {  margin-top: 5vw; padding: 5vw 0; background: #f3f3f3; }
	.ticketBlock div.slider h3 { font-size: 6vw; text-align: center; margin-bottom: 0 !important; }
	.ticketBlock .slick-slider { margin-bottom: 5vw; }
	.ticketBlock .slide { padding: 15vw 5vw 0; }
	.ticketBlock .slick-dots { bottom: auto; top: 2vw; width: 77vw; }
	.ticketBlock .slick-prev { left: -5vw; }
	.ticketBlock .slick-next { right: -5vw; }
	.ticketBlock table { border-collapse: collapse; width: 100%; margin-top: 5vw; }
	.ticketBlock th { font-size: 3.4vw; background: #000; color: #fff; text-align: center; border-right: 0.15vw solid #ffffff; padding: 2vw 1vw; line-height: 1.2; }
	.ticketBlock td { text-align: center; font-size: 3.4vw; padding: 2vw 0; border-bottom: 0.15vw solid #333; }
	.ticketBlock td.left { text-align: left; }
	.ticketBlock td.ok { color: #e60012; }
	.ticketBlock td a { position: relative; padding-left: 30px; }
	.ticketBlock td a:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
	.ticketBlock ul li div { display: block; overflow: hidden; }
	.ticketBlock ul li img { margin-bottom: 3vw; }
	.ticketBlock ul li dt { margin-bottom: 3vw; font-size: 4.3vw; }
	.ticketBlock ul li dt span { color: var(--base-color); }
	.ticketBlock ul li dd { margin-bottom: 3vw; font-size: 3.4vw; line-height: 1.5; }
	.ticketBlock ul li dd em { font-style: normal; font-size: 2.6rem; }
	.ticketBlock ul li dd strong { color: #cf0408; font-weight: normal; }
	.ticketBlock ul li dd small { font-size: 1.4rem; }
	.ticketBlock ul li dd img { float: none; display: inline; margin: 0 1vw; width: 5vw; }
	.ticketBlock .noteStyle01 { border: 1px solid var(--base-color); padding: 5vw 3vw; margin: 5vw 0; background: #fff; }
	.ticketBlock .noteStyle01 > *:first-child { margin-top: 0 !important; }
	.ticketBlock .noteStyle01 .fsL { font-size: 4vw; }
	.ticketBlock .noteStyle01 em { font-style: normal; color: var(--base-color); }
	.ticketBlock .supported img { width: 30vw; }
	div.commission { margin-top: 2vw; font-size: 3.4vw; }
	div.commission dt { font-size: 3.7vw; }
	div.codeTable { font-size: 3.4vw; margin-top: 3vw; }
	div.codeTable table { border-collapse: collapse; width: 100%; margin-bottom: 3.5vmin; }
	div.codeTable th { text-align: center; padding: 2vw 1vw; border: 1px solid #cccccc; line-height: 1.3; width: 50vw; background: #fff; color: #000; }
	div.codeTable td { position: relative; padding: 2vw 2vw 2vw 8vw; border: 1px solid #cccccc; text-align: left; }
	div.codeTable td.lCode:before { position: absolute; top: 50%; left: 9px; margin-top: -10px; width: 5vw; height: 5vw; background: url(../image/icon_l.svg) no-repeat 0 50% / 5vw auto; content: ""; }
	div.codeTable td.pCode:before { position: absolute; top: 50%; left: 9px; margin-top: -10px; width: 5vw; height: 5vw; background: url(../image/icon_p.svg) no-repeat 0 50% / 5vw auto; content: ""; }
	div.codeTable p { margin-bottom: 2vmin; }
	div.codeTable li a { text-decoration: underline; }
	.ticketNotice { margin: 9.3vw 7.8vw 0; padding: 5vw 3vw; border: 0.15vw solid #ccc; }
	.ticketNotice h3 { text-align: center; font-weight: normal; font-size: 4vw; }
	.ticketNotice ul { margin-top: 4.5vw; margin-left: 1.5em; list-style: disc; font-size: 3.4vw; line-height: 1.7; }
	.ticketNotice ol { margin-left: 1.5em; list-style: decimal; }
}





/*------------------------------
	Access page
------------------------------*/
@media (min-width: 768px) {
	.accessMap { margin: 0; }
	.accessMap h2 { text-align: center ; font-size: 2.8rem; font-weight: 500; font-family: 'Noto Serif JP', serif; }
	.accessMap div#map_canvas { margin-top: 50px; width: 100%; height: 450px; background: #eee; }
	.accessMap ol { margin: 45px auto 60px; counter-reset:number; width: 1000px; }
	.accessMap li { display: inline-block; margin: 0 15px; line-height: 1.4; }
	.accessMap li:before { float: left; display: inline-block; margin: -0.2em 0.4em 0 0; width: 30px; height: 30px; border-radius: 50%; background: var(--base-color); color: #fff; content: counter(number); counter-increment: number; text-align: center; text-indent: 0; line-height: 30px; }
	.accessMap li span { font-size: 1.4rem; }
	.accessSpot { margin: 0 auto; width: 1000px; }
	.accessSpot h2 { font-size: 3.6rem; line-height: 1.2; font-weight: normal; }
	.accessSpot h2 span { font-size: 1.6rem; display: block; margin-top: 10px; }
	.accessSpot div { padding-top: 60px; border-top: 1px solid #ccc; }
	.accessSpot div dl { margin: 30px 0 60px; }
	.accessSpot div dd { margin-top: 25px; }
}
@media screen and (max-width: 767px) {
	.accessMap { margin: 9.3vw 7.8vw; }
	.accessMap h2 { text-align: center; font-weight: normal; font-size: 5vw; }
	.accessMap div#map_canvas { margin-top: 4vw; width: 100%; height: 100vw; background: #eee; }
	.accessMap ol { display: block; overflow: hidden; margin-bottom: 5vw 0; counter-reset: number; }
	.accessMap li { float: left; width: 50%; }
	.accessMap li:nth-child(1) { width: 100%; }
	.accessMap li:before { float: left; display: inline-block; margin-top: 2vw; margin-right: 0.3em; width: 6.2vw; height: 6.2vw; background: var(--base-color); color: #fff; content: counter(number); counter-increment: number; text-align: center; text-indent: 0; line-height: 6.2vw; border-radius: 50%; }
	.accessMap li span { font-size: 2.8vw; }
	.accessMap li a { display: block; padding: 2vw 0; width: 100%; }
	.accessSpot { margin: 0 6.25vw 6vw; }
	.accessSpot div { padding-top: 5vw; border-top: 0.15vw solid #ccc; }
	.accessSpot div dl { margin: 5vw 0; }
	.accessSpot div dd { margin-top: 3vw; }
}


/*------------------------------
	Sponsor page
------------------------------*/
@media (min-width: 768px) {
	.sponsorBlock { margin: 40px auto 0; width: 1000px; position: relative; }
	.sponsorBlock div.gotoInfo { position: absolute; top: -180px; left: 0; padding-left: 30px; }
	.sponsorBlock div.gotoInfo:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
	.sponsorBlock marker { background: linear-gradient(transparent 70%, #ffff00 70%); }
	.sponsorBlock dt { text-align: center; font-size: 2rem; font-family: 'Lora', serif; }
	.sponsorBlock div.official ul { display: flex; margin: 30px 0; padding: 0 80px 40px; border-bottom: 1px solid #ccc; flex-wrap: wrap; justify-content: space-between; align-items: center; }
	.sponsorBlock div.other { display: flex; padding: 40px 0; border-bottom: 1px solid #ccc; flex-wrap: wrap; justify-content: center; }
	.sponsorBlock div.other dl { width: 333px; }
	.sponsorBlock div.other dl:nth-child(4) { margin-top: 40px; padding-top: 40px; border-top: 1px solid #ccc; width: 1000px; }
	.sponsorBlock div.other dl:nth-child(5) { margin-top: 40px; padding-top: 40px; border-top: 1px solid #ccc; width: 1000px; }
	.sponsorBlock div.other dt { font-size: 1.4rem; }
	.sponsorBlock div.other dd { display: flex; margin-top: 15px; height: 70px; justify-content: center; align-items: center; }
	.sponsorBlock div.other ul { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
	.sponsorBlock div.other ul li { margin: 0 20px; }
	.sponsorBlock div.middle { padding: 60px 0; border-bottom: 1px solid #ccc; }
	.sponsorBlock div.middle ul { display: flex; flex-wrap: wrap; }
	.sponsorBlock div.middle li { margin-bottom: 20px; width: 250px; font-size: 1.6rem; }
	.sponsorBlock div.small { padding: 60px 0; border-bottom: 1px solid #ccc; }
	.sponsorBlock div.small ul { display: flex; flex-wrap: wrap; }
	.sponsorBlock div.small li { margin-bottom: 20px; width: 250px; font-size: 1.4rem; }
	.sponsorInfo { margin: 60px auto; width: 1000px; border: 1px solid #ccc; padding: 40px 60px; }
	.sponsorInfo h2 span { color: var(--base-color); }
	.sponsorInfo p { margin-top: 30px; line-height: 1.8; }
	.sponsorInfo ul { display: flex; margin-top: 50px; justify-content: center; }
	.sponsorInfo li { margin: 0 10px; }
}
@media screen and (max-width: 767px) {
	.sponsorBlock { margin: 7.8vw; }
	.sponsorBlock div.gotoInfo { padding-left: 1.5em; position: relative; }
	.sponsorBlock div.gotoInfo:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
	.sponsorBlock marker { background: linear-gradient(transparent 70%, #ffff00 70%); }
	.sponsorBlock dl { text-align: center; }
	.sponsorBlock dt { font-size: 5vw; }
	.sponsorBlock ul { margin-top: 5vw; }
	.sponsorBlock li,
	.sponsorBlock dd { margin-top: 3vw; }
	.sponsorBlock div.official li { margin-top: 5vw; }
	.sponsorBlock div.official dl,
	.sponsorBlock div.other dl { margin-top: 9vw; }
	.sponsorBlock div.other,
	.sponsorBlock div.middle,
	.sponsorBlock div.small { margin-top: 8vw; padding-bottom: 6vw; border-bottom: 0.15vw solid #ccc; }
	.sponsorBlock div.middle { font-size: 4.3vw; }
	.sponsorBlock div.small { font-size: 3.4vw; }
	.sponsorBlock div.middle li,
	.sponsorBlock div.small li { margin-top: 2vw; }
	.sponsorInfo { margin: 7.8vw; border: 0.15vw solid #ccc; padding: 5vw 3vw; }
	.sponsorInfo h2 span { color: var(--base-color); }
	.sponsorInfo p { margin-top: 5vw; fontsize: 3.1vw; }
	.sponsorInfo ul li { margin-top: 5vw; }
	img.sponsor_ccube { width: 44vw; }
	img.sponsor_befco { width: 60vw; }
	img.sponsor_hotelnikko { width: 50vw; }
	img.sponsor_cocolo { width: 44vw; }
	img.sponsor_namics { width: 35vw; }
	img.sponsor_jr { width: 18vw; }
	img.sponsor_silverhotel { width: 44vw; }
	img.sponsor_nippontravel { width: 26vw; }
	img.sponsor_nippo { width: 30vw; }
	img.sponsor_bsn { width: 30vw; }
	img.sponsor_nst { width: 44vw; }
	img.sponsor_teny { width: 18vw; }
	img.sponsor_ux { width: 34vw; }
	img.sponsor_775fm { width: 18vw; }
	img.sponsor_tanakaya { width: 34vw; }
	img.sponsor_kyukamura { width: 34vw; }
	img.sponsor_kayano { width: 26vw; }
	img.sponsor_suzukicoffee { width: 36vw; }
	img.sponsor_suriya { width: 15vw; }
	img.sponsor_yoshiundo { width: 22vw; }
	img.sponsor_fujita { width: 40vw; }
	img.sponsor_kubota { width: 22vw; }
	img.sponsor_meijiyasuda { width: 26vw; }
	img.sponsor_daishihokuetsu { width: 36vw; }
	img.sponsor_shomeigiken { width: 36vw; }
}


/*------------------------------
	Howto page
------------------------------*/
@media (min-width: 768px) {
	.howtoBlock { margin: 0 auto; width: 1000px; }
	.howtoBlock ul { margin: 30px 0 50px; padding-bottom: 50px; border-bottom: 1px solid #ccc; }
	.howtoBlock .is-head { background: #f0f0f0; border-bottom: 1px solid #fff; padding: 20px 30px; position: relative; font-size: 1.8rem; }
	.howtoBlock .is-head.is-open { background: var(--base-color); color: #fff; }
	.howtoBlock .is-head:before { content: ''; width: 1.2em; height: 1px; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 1em; margin: auto; }
	.howtoBlock .is-head:after { content: ''; width: 1px; height: 1.2em; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 1.55em; margin: auto; }
	.howtoBlock .is-head.is-open:before { background: #fff; }
	.howtoBlock .is-head.is-open:after { content: none; }
	.howtoBlock .is-body { padding: 30px 40px; }
	.howtoBlock .is-body a { text-decoration: underline; }
	.howtoBlock .link { margin-top: 1em; }
	.howtoBlock p { line-height: 1.6; }
}
@media screen and (max-width: 767px) {
	.howtoBlock { margin: 0 7.8vw; }
	.howtoBlock ul { margin: 5vw 0 7vw; padding-bottom: 7vw; border-bottom: 0.15vw solid #ccc; }
	.howtoBlock .is-head { background: #f0f0f0; border-bottom: 0.15vw solid #fff; padding: 3vw 5vw; position: relative; }
	.howtoBlock .is-head.is-open { background: var(--base-color); color: #fff; }
	.howtoBlock .is-head:before { content: ''; width: 1.2em; height: 0.15vw; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 1em; margin: auto; }
	.howtoBlock .is-head:after { content: ''; width: 0.15vw; height: 1.2em; background: var(--base-color); position: absolute; top: 0; bottom: 0; right: 1.6em; margin: auto; }
	.howtoBlock .is-head.is-open:before { background: #fff; }
	.howtoBlock .is-head.is-open:after { content: none; }
	.howtoBlock .is-body { padding: 5vw; }
	.howtoBlock .is-body a { text-decoration: underline; }
	.howtoBlock .link { margin-top: 1em; }
}

/*------------------------------
	News page
------------------------------*/
.articleBlock article  >* { margin: 0.5em 0; }
.articleBlock article  ol { list-style: decimal; margin-left: 1.5em; }
.articleBlock article  ul > li { position: relative; padding-left: 1em; line-height: 1.6; }
.articleBlock article  ul > li:before { position: absolute; top: 0; left: 0; content: "・"; }

@media (min-width: 768px) {
	.articleBlock { width: 1000px; margin: 90px auto 100px; }
	.articleTitle .category { margin-left: 15px; border: 1px solid #da4657; color: #da4657; font-size: 1.2rem; width: 90px; text-align: center; padding: 4px; line-height: 1; font-weight: 400; font-family: 'Noto Sans JP', serif; }
	.articleTitle h1 { font-size: 2.8rem; border-bottom: 1px solid #d4ab37; font-weight: 600; margin: 15px 0 40px; padding-bottom: 20px; }
	.articleBlock article { font-family: 'Noto Sans JP', serif; line-height: 1.8; padding-bottom: 70px; margin-bottom: 70px; border-bottom: 1px solid #d4ab37; }
	.wp-pagenavi { display: flex; justify-content: center; margin: 40px 0 80px; }
	.wp-pagenavi a { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; background: var(--base-color); color: #fff; margin: 0 5px;  }
	.wp-pagenavi span.current { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; color: var(--base-color); border: 1px solid var(--base-color); }
	.newsBlock { margin: 0 auto; width: 1000px;  }
	.newsBlock p.taC { margin-top: 30px; padding-top: 30px; border-top: 1px solid #ccc; }
	.newsBlock .infoList { margin-top: 30px; border-top: 1px solid #ccc; }
	.newsBlock .infoList li { border-bottom: 1px solid #ccc; padding: 30px 40px 30px 0; }
	.newsBlock .infoList a { display: block; position: relative; }
	.newsBlock .infoList a:after { position: absolute; top: 0; right: -30px; bottom: 0; margin: auto; width: 0.8em; height: 0.8em; border-top: solid 1px var(--base-color); border-right: solid 1px var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.newsBlock .infoList dl { display: flex; justify-content: space-between; }
	.newsBlock .infoList dt { width: 230px; font-family: 'Lora', serif; display: flex; justify-content: space-between; align-items: flex-start; }
	.newsBlock .infoList dd { width: 700px; }
	.newsBlock .infoList span { font-family: 'Noto Sans JP', sans-serif; font-size: 1.2rem; display: inline-block; border: 1px solid var(--base-color); color: var(--base-color); line-height: 1; padding: 4px 7px; margin-left: 12px; width: 100px; text-align: center; }
	.newsBlock .wp-pagenavi { display: flex; justify-content: center; margin: 40px 0 80px; }
	.newsBlock .wp-pagenavi a { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; background: var(--base-color); color: #fff; margin: 0 5px;  }
	.newsBlock .wp-pagenavi span.current { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; color: var(--base-color); border: 1px solid var(--base-color); }

	.newsBlock article { margin-top: 55px; }
	.newsBlock article .time { font-family: 'Lora', serif; font-size: 2rem; }
	.newsBlock article .time span { font-family: 'Noto Sans JP', sans-serif; font-size: 1.4rem; display: inline-block; border: 1px solid var(--base-color); color: var(--base-color); line-height: 1; padding: 4px 7px; margin-left: 12px; }
	.newsBlock div.entryMain { margin: 40px 0 60px; padding: 40px 0 60px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; font-size: 1.6rem; }
	.newsBlock div.entryMain h1,
	.newsBlock div.entryMain h2,
	.newsBlock div.entryMain h3,
	.newsBlock div.entryMain h4,
	.newsBlock div.entryMain h5,
	.newsBlock div.entryMain h6 { margin: 1.5em 0; font-weight: bold; }
	.newsBlock div.entryMain h1 { padding: 10px 15px; background: var(--base-color); color: #fff; font-size: 2rem; }
	.newsBlock div.entryMain h2 { font-size: 2rem; border-bottom: 1px solid var(--base-color); padding-bottom: 15px; font-weight: normal; }
	.newsBlock div.entryMain h3 { font-size: 1.8rem; font-weight: normal; position: relative; padding-left: 0.8em; line-height: 1.2; }
	.newsBlock div.entryMain h3:before { position: absolute; top: 0; left: 0; width: 3px; height: 1em; background: var(--base-color); content: ""; }
	.newsBlock div.entryMain h4 { position: relative; margin-top: 1.5em; padding-left: 1em; font-weight: normal; font-size: 1.8rem; line-height: 1.2; }
	.newsBlock div.entryMain h4:before { position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 0.5em; height: 1px; background: var(--base-color); content: ""; }
	.newsBlock div.entryMain h5 { font-size: 1.6rem; }
	.newsBlock div.entryMain h6 { font-size: 1.6rem; }
	.newsBlock div.entryMain p { margin-bottom: 1em; line-height: 2; }
	.newsBlock div.entryMain ol,
	.newsBlock div.entryMain ul { margin: 1em 0 1em 2em; line-height: 1.8; }
	.newsBlock div.entryMain ol ul,
	.newsBlock div.entryMain ol ol,
	.newsBlock div.entryMain ul ul,
	.newsBlock div.entryMain ul ol { margin: 0.3em 0 0.3em 2em; }
	.newsBlock div.entryMain ol { list-style: decimal; }
	.newsBlock div.entryMain ul { list-style: disc; }
	.newsBlock div.entryMain p + ul,
	.newsBlock div.entryMain p + ol { margin-top: 0.3em; }
	.newsBlock div.entryMain blockquote { margin: 1em 0; padding-left: 20px; border-left: 3px solid #333; }
	.newsBlock div.entryMain a { text-decoration: underline; }
	.newsBlock div.entryMain .alignleft { float: left; margin: 0.375em 1.75em 1.75em 0; }
	.newsBlock div.entryMain .alignright { float: right; margin: 0.375em 0 1.75em 1.75em; }
	.newsBlock div.entryMain .aligncenter { clear: both; display: block; margin: 0 auto 1.75em; }
	.newsBlock div.entryMain img { height: auto; max-width: 100%; }
}
@media screen and (max-width: 767px) {
	.articleBlock { margin: 9vw 5vw 10vw; }
	.articleTitle .category { border: 0.2vw solid #da4657; color: #da4657; font-size: 2.8vw; text-align: center; padding: 1vw 3vw; line-height: 1; font-weight: 400; margin-left: 5vw; font-family: 'Noto Sans JP', serif; }
	.articleTitle h1 { font-size: 6vw; border-bottom: 0.2vw solid #d4ab37; font-weight: 600; margin: 2vw 0 4vw; padding-bottom: 2vw; }
	.articleBlock article { font-family: 'Noto Sans JP', serif; line-height: 1.8; padding-bottom: 7vw; margin-bottom: 7vw; border-bottom: 0.2vw solid #d4ab37; }
	.wp-pagenavi { display: flex; justify-content: center; margin: 8vw 0; }
	.wp-pagenavi a { display: flex; justify-content: center; align-items: center; width: 10vw; height: 10vw; background: var(--base-color); color: #fff; margin: 0 5px; }
	.wp-pagenavi span.current { display: flex; justify-content: center; align-items: center; width: 10vw; height: 10vw; color: var(--base-color); border: 0.15vw solid var(--base-color); }
	.newsBlock { margin: 0 7.8vw;  }
	.newsBlock p.taC { margin-top: 5vw; padding-top: 5vw; border-top: 0.2vw solid #ccc; }

	.newsBlock .infoList { margin-top: 5vw; border-top: 0.15vw solid #ccc; }
	.newsBlock .infoList li { border-bottom: 0.15vw solid #ccc; padding: 20px 40px 20px 0; }
	.newsBlock .infoList a { display: block; position: relative; }
	.newsBlock .infoList a:after { position: absolute; top: 0; right: -30px; bottom: 0; margin: auto; width: 1em; height: 1em; border-top: solid 0.15vw var(--base-color); border-right: solid 0.15vw var(--base-color); content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	.newsBlock .infoList dt { font-family: 'Lora', serif; }
	.newsBlock .infoList span { font-family: 'Noto Sans JP', sans-serif; font-size: 3.4vw; display: inline-block; border: 0.15vw solid var(--base-color); color: var(--base-color); line-height: 1; padding: 4px 7px; margin-left: 12px; }
	.newsBlock .wp-pagenavi { display: flex; justify-content: center; margin: 8vw 0; }
	.newsBlock .wp-pagenavi a { display: flex; justify-content: center; align-items: center; width: 10vw; height: 10vw; background: var(--base-color); color: #fff; margin: 0 5px; }
	.newsBlock .wp-pagenavi span.current { display: flex; justify-content: center; align-items: center; width: 10vw; height: 10vw; color: var(--base-color); border: 0.15vw solid var(--base-color); }

	.newsBlock article { padding-top: 10vw; }
	.newsBlock article .time { font-family: 'Lora', serif; font-size: 5vw; }
	.newsBlock article .time span { font-family: 'Noto Sans JP', sans-serif; display: inline-block; border: 0.15vw solid var(--base-color); color: var(--base-color); line-height: 1; padding: 1vw 4vw; margin-left: 0.5em; font-size: 3.7vw; }
	.newsBlock div.entryMain { margin: 10vw 0; padding: 10vw 0; border-top: 0.15vw solid #ccc; border-bottom: 1px solid #ccc; font-size: 3.7vw; }

	.newsBlock div.entryMain h1,
	.newsBlock div.entryMain h2,
	.newsBlock div.entryMain h3,
	.newsBlock div.entryMain h4,
	.newsBlock div.entryMain h5,
	.newsBlock div.entryMain h6 { margin: 1.5em 0; font-weight: bold; }
	.newsBlock div.entryMain h1 { padding: 2vw 3vw; background: var(--base-color); color: #fff; font-size: 5.2vw; }
	.newsBlock div.entryMain h2 { font-size: 4.9vw; border-bottom: 0.2vw solid var(--base-color); padding-bottom: 2vw; font-weight: normal; }
	.newsBlock div.entryMain h3 { font-size: 4.6vw; font-weight: normal; position: relative; padding-left: 0.8em; line-height: 1.2; }
	.newsBlock div.entryMain h3:before { position: absolute; top: 0; left: 0; width: 3px; height: 1em; background: var(--base-color); content: ""; }
	.newsBlock div.entryMain h4 { position: relative; margin-top: 1.5em; padding-left: 1em; font-weight: normal; font-size: 4.3vw; line-height: 1.2; }
	.newsBlock div.entryMain h4:before { position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 0.5em; height: 0.2vw; background: var(--base-color); content: ""; }
	.newsBlock div.entryMain h5 { font-size: 4vw; }
	.newsBlock div.entryMain h6 { font-size: 3.7vw; }
	.newsBlock div.entryMain p { margin-bottom: 1em; line-height: 2; }
	.newsBlock div.entryMain ol,
	.newsBlock div.entryMain ul { margin: 1em 0 1em 2em; line-height: 1.8; }
	.newsBlock div.entryMain ol ul,
	.newsBlock div.entryMain ol ol,
	.newsBlock div.entryMain ul ul,
	.newsBlock div.entryMain ul ol { margin: 0.3em 0 0.3em 2em; }
	.newsBlock div.entryMain ol { list-style: decimal; }
	.newsBlock div.entryMain ul { list-style: disc; }
	.newsBlock div.entryMain p + ul,
	.newsBlock div.entryMain p + ol { margin-top: 0.3em; }
	.newsBlock div.entryMain blockquote { margin: 0.5em 0; padding-left: 4vw; border-left: 2vw solid #333; }
	.newsBlock div.entryMain a { text-decoration: underline; }
}







/* === Layout === */
.u-tac { text-align: center !important; }
.u-tar { text-align: right !important; }
.u-tal { text-align: left !important; }
.u-break { word-break: break-word; }
.u-nowrap { white-space: nowrap; }
.u-overflow-hidden { overflow: hidden; }
.u-hidden { display: none !important; }
.u-block { display: block !important; }
.u-inline { display: inline !important; }
.u-inline-block { display: inline-block !important; }
.u-visible { visibility: visible; }
.u-invisible { visibility: hidden; }
.u-inline-flex { display: inline-flex; }
.u-flex { display: flex; }
.u-flex-center { justify-content: center; }
.u-flex-between { justify-content: space-between; }
.u-flex-column { flex-direction: column; }
.u-ai-center { align-items: center; }
.u-ai-end { align-items: flex-end; }
.u-flex-wrap { flex-wrap: wrap; }
.u-grid { display: grid; }
.u-inline-grid { display: inline-grid !important; }
.u-float-right { float: right; }
.u-float-left { float: left; }
.u-gap10 { gap: 0.625rem; }
.u-gap20 { gap: 1.25rem; }
.u-gap30 { gap: 1.875rem; }
.u-gap40 { gap: 2.5rem; }

/* === Spacing === */
/* margin */
.u-mt-0 { margin-top: 0rem !important; }
.u-mt-5 { margin-top: 0.3125rem !important; }
.u-mt-10 { margin-top: 0.625rem !important; }
.u-mt-15 { margin-top: 0.9375rem !important; }
.u-mt-20 { margin-top: 1.25rem !important; }
.u-mt-25 { margin-top: 1.5625rem !important; }
.u-mt-30 { margin-top: 1.875rem !important; }
.u-mt-35 { margin-top: 2.1875rem !important; }
.u-mt-40 { margin-top: 2.5rem !important; }
.u-mt-45 { margin-top: 2.8125rem !important; }
.u-mt-50 { margin-top: 3.125rem !important; }
.u-mt-55 { margin-top: 3.4375rem !important; }
.u-mt-60 { margin-top: 3.75rem !important; }
.u-mt-65 { margin-top: 4.0625rem !important; }
.u-mt-70 { margin-top: 4.375rem !important; }
.u-mt-75 { margin-top: 4.6875rem !important; }
.u-mt-80 { margin-top: 5rem !important; }
.u-mt-85 { margin-top: 5.3125rem !important; }
.u-mt-90 { margin-top: 5.625rem !important; }
.u-mt-95 { margin-top: 5.9375rem !important; }
.u-mt-100 { margin-top: 6.25rem !important; }
.u-mb-0 { margin-bottom: 0rem !important; }
.u-mb-5 { margin-bottom: 0.3125rem !important; }
.u-mb-10 { margin-bottom: 0.625rem !important; }
.u-mb-15 { margin-bottom: 0.9375rem !important; }
.u-mb-20 { margin-bottom: 1.25rem !important; }
.u-mb-25 { margin-bottom: 1.5625rem !important; }
.u-mb-30 { margin-bottom: 1.875rem !important; }
.u-mb-35 { margin-bottom: 2.1875rem !important; }
.u-mb-40 { margin-bottom: 2.5rem !important; }
.u-mb-45 { margin-bottom: 2.8125rem !important; }
.u-mb-50 { margin-bottom: 3.125rem !important; }
.u-mb-55 { margin-bottom: 3.4375rem !important; }
.u-mb-60 { margin-bottom: 3.75rem !important; }
.u-mb-65 { margin-bottom: 4.0625rem !important; }
.u-mb-70 { margin-bottom: 4.375rem !important; }
.u-mb-75 { margin-bottom: 4.6875rem !important; }
.u-mb-80 { margin-bottom: 5rem !important; }
.u-mb-85 { margin-bottom: 5.3125rem !important; }
.u-mb-90 { margin-bottom: 5.625rem !important; }
.u-mb-95 { margin-bottom: 5.9375rem !important; }
.u-mb-100 { margin-bottom: 6.25rem !important; }
.u-pt-0 { padding-top: 0rem !important; }
.u-pb-0 { padding-bottom: 0rem !important; }

/* === Typography === */
.u-fw-100 { font-weight: 100; } /* Thin */
.u-fw-200 { font-weight: 200; } /* Extra Light */
.u-fw-300 { font-weight: 300; } /* Light */
.u-fw-400 { font-weight: 400; } /* Normal (Regular) */
.u-fw-500 { font-weight: 500; } /* Medium */
.u-fw-600 { font-weight: 600; } /* Semi Bold */
.u-fw-700 { font-weight: 700; } /* Bold */
.u-fw-800 { font-weight: 800; } /* Extra Bold */
.u-fw-900 { font-weight: 900; } /* Black */
.u-fs-12 { font-size: 0.75rem !important; }   /* 12px */
.u-fs-14 { font-size: 0.875rem !important; }  /* 14px */
.u-fs-16 { font-size: 1rem !important; }      /* 16px */
.u-fs-18 { font-size: 1.125rem !important; }  /* 18px */
.u-fs-20 { font-size: 1.25rem !important; }   /* 20px */
.u-fs-22 { font-size: 1.375rem !important; }  /* 22px */
.u-fs-24 { font-size: 1.5rem !important; }    /* 24px */
.u-fs-26 { font-size: 1.625rem !important; }  /* 26px */
.u-fs-28 { font-size: 1.75rem !important; }   /* 28px */
.u-fs-30 { font-size: 1.875rem !important; }  /* 30px */
.u-fs-32 { font-size: 2rem !important; }      /* 32px */
.u-fs-34 { font-size: 2.125rem !important; }  /* 34px */
.u-fs-36 { font-size: 2.25rem !important; }   /* 36px */
.u-fs-38 { font-size: 2.375rem !important; }  /* 38px */
.u-fs-40 { font-size: 2.5rem !important; }    /* 40px */
.u-fs-42 { font-size: 2.625rem !important; }  /* 42px */
.u-fs-44 { font-size: 2.75rem !important; }   /* 44px */
.u-fs-46 { font-size: 2.875rem !important; }  /* 46px */
.u-fs-48 { font-size: 3rem !important; }      /* 48px */
.u-fs-50 { font-size: 3.125rem !important; }  /* 50px */
.u-fs-52 { font-size: 3.25rem !important; }   /* 52px */
.u-fs-54 { font-size: 3.375rem !important; }  /* 54px */
.u-fs-56 { font-size: 3.5rem !important; }    /* 56px */
.u-fs-58 { font-size: 3.625rem !important; }  /* 58px */
.u-fs-60 { font-size: 3.75rem !important; }   /* 60px */
.u-fs-62 { font-size: 3.875rem !important; }  /* 62px */
.u-fs-64 { font-size: 4rem !important; }      /* 64px */
.u-fs-66 { font-size: 4.125rem !important; }  /* 66px */
.u-fs-68 { font-size: 4.25rem !important; }   /* 68px */
.u-fs-70 { font-size: 4.375rem !important; }  /* 70px */
.u-fs-72 { font-size: 4.5rem !important; }    /* 72px */
.u-fs-74 { font-size: 4.625rem !important; }  /* 74px */
.u-fs-76 { font-size: 4.75rem !important; }   /* 76px */
.u-fs-78 { font-size: 4.875rem !important; }  /* 78px */
.u-fs-80 { font-size: 5rem !important; }      /* 80px */

/* === Size === */
.u-w-5 { width: 5%; }
.u-w-10 { width: 10%; }
.u-w-15 { width: 15%; }
.u-w-20 { width: 20%; }
.u-w-25 { width: 25%; }
.u-w-30 { width: 30%; }
.u-w-35 { width: 35%; }
.u-w-40 { width: 40%; }
.u-w-45 { width: 45%; }
.u-w-50 { width: 50%; }
.u-w-55 { width: 55%; }
.u-w-60 { width: 60%; }
.u-w-70 { width: 70%; }
.u-w-80 { width: 80%; }
.u-w-90 { width: 90%; }
.u-w-100 { width: 100%; }
.u-w-auto { width: auto; }
.u-h-auto { height: auto; }
.u-notes { font-size: 0.85em; }







