@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/*!
 * ress.css • v5.0.2
 * MIT License
 * github.com/filipelinhares/ress
 */
html{-webkit-text-size-adjust:100%;box-sizing:border-box;-moz-tab-size:4;tab-size:4;word-break:normal}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{margin:0;padding:0}hr{color:inherit;height:0;overflow:visible}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:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}iframe{border-style:none}input{border-radius:0}[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:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-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}[disabled]{cursor:default}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}


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

	0. General

====================================*/
/* Definition */
:root {
  --base-color1: #b7b707; /* yellow green */
  --base-color2: #e15189; /* pink */
  --base-color3: #601986; /* purple */
  --base-color4: #601986 url("../image/bg_dot.svg"); /* purple dot */
  --base-color5: #601986 url("../image/bg_dot2.svg"); /* purple dot2 */
  --base-width: 1160px;
}

html { font-size: 62.5%; }
@media screen and (max-width: 767px) {
	html { font-size: 2.34375vw; }
}
body { font-size: 1.0rem; font-family: "Noto Sans JP", sans-serif; font-weight: 400; position: relative; width: 100%; background: var(--base-color2); color: #000; }
img { height: auto; max-width: 100%; vertical-align: bottom; }
a { color: #000; cursor: pointer; text-decoration: underline; }
a:hover { opacity: 0.8; }
input[type=submit] { cursor: pointer; }
.is-head { cursor: pointer; }
ul,ol { list-style: none; }
figure { margin: 0 !important; }
@media (min-width: 768px) {
	.spOnly { display: none !important; }
	#page-top { bottom: 30px; position: fixed; right: 30px; z-index: 10; }
	#page-top a { background: url("../image/icon_pagetop.svg") no-repeat 50% 50%; display: block; height: 45px; text-align: center; text-indent: -9999px; width: 45px; }
	.fixNav { bottom: 90px; position: fixed; right: 30px; z-index: 10; width: 285px; }
}
@media (max-width: 767px) {
	.pcOnly { display: none !important; }
	#page-top { bottom: 3vw; position: fixed; right: 3vw; z-index: 10; }
	#page-top a { background: url("../image/icon_pagetop.svg") no-repeat 50% 50% / 14vw auto; display: block; height: 15vw; text-align: center; text-indent: -9999px; width: 15vw; }
	.fixNav { bottom: 3vw; position: fixed; right: auto; left: 3vw; width: 60vw; z-index: 10; }
}

@media (max-width: 767px) {
  .js-scrollable {width: max-content; min-width: 100%; }
}


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

	1. Header

====================================*/
@media (min-width: 768px) {
	.l-header { align-items: center; background: var(--base-color1); display: flex; font-size: 1.8rem; height: 120px; justify-content: space-between; left: 0; line-height: 1; min-width: 1260px; padding: 0 50px; position: fixed; top: 0; transition: 0.2s; width: 100%; z-index: 100; }
	.l-header .logo img { width: 290px; }
	.header-nav { align-items: center; display: flex; gap: 40px; color: #fff; font-weight: 700; }
  .header-nav a { color: #fff; text-decoration: none; }
  .header-nav__title { cursor: pointer; }
  .header-nav__box { display: grid; gap: 15px; position: relative; }
	.header-nav__sub { background: #fff; font-size: 1.4rem; border-radius: 10px; display: none; left: 0; padding: 15px 20px; position: absolute; top: 40px; z-index: 2; }
	.header-nav__list { display: grid; gap: 16px; }
	.header-nav__item { position: relative; padding-left: 1em; }
	.header-nav__item::before { position: absolute; content: ""; top: 0; bottom: 0; left: 0; margin: auto; mask: url("../image/icon_arrow.svg") no-repeat 0 0 / contain; background-color: var(--base-color3); width: 0.8em; height: 0.8em; }
	.header-nav__item a { color: #000; white-space: nowrap; }
	.header__translator { width: 135px; height: 1em; position: relative; }
	.header__translator >* { position: absolute; top: -5px; left: 0; }
}
@media (max-width: 767px) {
	.l-header { background: var(--base-color1); height: 18vw; padding: 4vw 4vw 0; width: 100%; position: relative; z-index: 100; }
	.l-header .logo { float: left; position: relative; width: 45vw; z-index: 900; }
	#panel-btn { display: block; float: right; height: 10vw; position: relative; text-indent: -9999px; width: 10vw; z-index: 1100; background: #fff; }
	#panel-btn-icon { background: var(--base-color3); display: block; height: 0.3vw; left: 0; margin: auto; position: absolute; right: 0; top: 0; bottom: 0; transition: .2s; width: 7vw; }
	#panel-btn-icon:before,
	#panel-btn-icon:after { background: var(--base-color3); content: ""; display: block; height: 0.3vw; left: 0; position: absolute; top: 50%; transition: .3s; width: 7vw; } 
	#panel-btn-icon:before { margin-top: -2vw; }
	#panel-btn-icon:after { margin-top: 2vw; } 
	#panel-btn-icon.close { background: transparent; }
	#panel-btn-icon.close:before,
	#panel-btn-icon.close:after { margin-top: 0; } 
	#panel-btn-icon.close:before { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
	#panel-btn-icon.close:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
  .gnav { background: url("../image/bg_footer01.svg") right -14vw top -19vw / 123vw 87vw no-repeat,url("../image/bg_footer02.svg") left 8.9vw top 92.5vw / 102vw 72vw no-repeat, var(--base-color1); display: none; height: 100vh; overflow: scroll; padding: 18vw 6.25vw 8vw; position: absolute; right: 0; top: 0; width: 100vw; z-index: 1000; }
	.header-nav { font-weight: 700; font-size: 4vw; color: #fff; }
  .header-nav a { color: #fff; text-decoration: none; }
  .header-nav__title { font-size: 4.375vw; }
  .header-nav__box { display: grid; gap: 3vw; padding: 3vw 0; border-top: 0.2vw solid #fff; }
	.header-nav__sub {}
	.header-nav__list { display: grid; gap: 2vw; }
	.header-nav__item { position: relative; padding-left: 1em; }
	.header-nav__item::before { position: absolute; content: ""; top: 0; bottom: 0; left: 0; margin: auto; mask: url("../image/icon_arrow.svg") no-repeat 0 0 / contain; background-color: var(--base-color3); width: 0.8em; height: 0.8em; }
	.header__translator { width: 135px; height: 1em; position: absolute; top: 3vw; left: 5vw; }
	.header__translator >* { position: absolute; top: 0; left: 0; }
	header .sub2 { font-size: 3.4vw; display: flex; flex-wrap: wrap; }
	header .sub2 li { position: relative; padding-left: 1.2em; margin: 3vw 0 0; width: 50%; }
	header .sub2 li::before { position: absolute; content: ""; top: 0; bottom: 0; left: 0; margin: auto; background: url("../image/icon_arrow_w.svg") no-repeat 50% 50% / contain; width: 0.6em; height: 0.6em; }
	header .sub2 li a { text-decoration: none; font-weight: 700; }
	header .bnLine { margin: 4vw 0; text-align: center; }
	header .snsLink { margin: 4vw 0; gap: 4vw; display: flex; justify-content: center; }
}


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

	2. Footer

====================================*/
.l-footer {  position: relative; background: var(--base-color1); overflow: hidden; }
.footer-nav { position: relative; padding: 65px 0; font-size: 1.2rem; font-weight: 900; color: #fff; }
.footer-nav a { color: #fff;text-decoration: none; }
.footer-nav::before,
.footer-nav::after { position: absolute; content: ""; }
.footer-nav::before { background: url("../image/bg_footer01.svg") no-repeat 0 0 / contain; width: 790px; height: 556px; top: -145px; right: calc(50% + 20px); }
.footer-nav::after { background: url("../image/bg_footer02.svg") no-repeat 0 0 / contain; width: 650px; height: 457px; top: -155px; left: calc(50% + 316px); }
.footer-nav__inner { max-width: 1080px; margin: 0 auto; display: flex; gap: 60px; align-items: start; position: relative; z-index: 1; }
.footer-nav__box { display: grid; gap: 15px; }
.footer-nav__title { font-size: 1.8rem; }
.footer-nav__sub { display: grid; gap: 7px; }
.footer-nav__item { position: relative; padding-left: 1em; }
.footer-nav__item::before { position: absolute; content: ""; top: 0; bottom: 0; left: 0; margin: auto; mask: url("../image/icon_arrow.svg") no-repeat 0 0 / contain; background-color: var(--base-color3); width: 0.8em; height: 0.8em; }
.footer-line { margin-top: 40px; }
.footer-line img { width: 100%; }
.footer-bottom { padding: 35px 0 55px; background: var(--base-color4); text-align: center; color: #fff; }
.footer-bottom__inner { max-width: 1080px; margin: 0 auto; }
.footer-sns { display: flex; justify-content: center; gap: 30px; margin: 0 0 35px; }
.footer-copy { margin: 25px 0 0; font-size: 1.4rem; }
@media (max-width: 767px) {
  .footer-nav { padding: 10vw 5vw; }
  .footer-nav::before { width: 123vw; height: 87vw; top: -19vw; right: -14vw; }
  .footer-nav::after { width: 102vw; height: 72vw; top: 92.5vw; left: 8.9vw; }
  .footer-nav__inner { display: grid; gap: 5vw; }
  .footer-nav__box { gap: 3vw; border-top: 0.2vw solid #fff; padding-top: 5vw; }
  .footer-nav__sub { gap: 2vw; }
  .footer-line { margin-top: 4vw; }
  .footer-line img { width: 46vw; display: block; margin: 0 auto; }
  .footer-bottom { padding: 15vw 15vw 25vw; background: var(--base-color4); text-align: center; color: #fff; }
  .footer-bottom__inner { margin: 0; }
  .footer-sns { gap: 5vw; margin: 0 0 5vw; }
  .footer-copy { margin: 3vw 0 0; }
}


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

	3. Main

====================================*/
main { font-size: 1.6rem; font-weight: 400; line-height: 2; margin: 120px 0 0; min-width: 1260px; position: relative; background: url("../image/bg_page.webp") repeat-y 50% 170px / 1800px auto; padding-bottom: 100px; }
main.top { background: url("../image/bg_page.webp") repeat-y 50% 760px / 1800px auto; }
main hr { border: none; border-top: 1px solid #4d4d4d; height: 1px; }
@media (max-width: 767px) {
	main {  line-height: 1.8; margin: 0; padding: 0; min-width: auto; background: url("../image/sp_bg_page.webp") repeat-y 0 0 / 100vw auto; padding-bottom: 10vw; }
main.top { background: url("../image/sp_bg_page.webp") repeat-y 0 0 / 100vw auto; }
}


/*-----------------------------------------------------
Text
------------------------------------------------------*/
.c-notes { font-size: 80%; }
.u-text-kome { padding-left: 1em; text-indent: -1em; }
.u-text-komenum { padding-left: 2em; text-indent: -2em; }
.u-tar { text-align: right !important; }
.u-tal { text-align: left !important; }
.u-tac { text-align: center !important; }
.u-fw-400 { font-weight: 400; }
.u-fw-500 { font-weight: 500; }
.u-fw-700 { font-weight: 700; }
.u-fw-900 { font-weight: 900; }
.u-marker { background:linear-gradient(transparent 60%, #f0a8c4 60%); }
@media (max-width: 767px) {
	.u-sp-tar { text-align: right !important; }
	.u-sp-tal { text-align: left !important; }
	.u-sp-tac { text-align: center !important; }
}

/*-----------------------------------------------------
Btn
------------------------------------------------------*/
.c-button__wrap { display: flex; align-items: center; justify-content: center; gap: 40px; }
.c-button { display: inline-flex; align-items: center; justify-content: center; gap: 0.5em; padding: 0.5em 2em; text-decoration: none; position: relative; overflow: hidden; }
.c-button__icon { display: inline-block; width: 1.5em; height: 1.5em; mask-repeat: no-repeat; mask-size: contain; mask-position: center; flex-shrink: 0; }
.c-button__text { flex: 1 1 auto; text-align: center; white-space: nowrap; }

.c-button--grade { position: relative; padding: 10px 20px; font-weight: 700; color: #fff; min-width: 300px; min-height: 50px; border-radius: 999px; background-image: -webkit-linear-gradient( 90deg, rgb(242,240,71) 0%, rgb(151,195,108) 0%, rgb(59,150,145) 0%, rgb(242,240,71) 0%, rgb(242,240,71) 0%, rgb(121,182,135) 35%, rgb(0,123,199) 100%); }
.c-button--grade:hover { opacity: 1; }
@media (max-width: 767px) {
  .c-button__wrap { flex-direction: column; gap: 4vw; }
	.c-button--grade { padding: 3vw; min-width: 70vw; min-height: 7vw; }
}

/* アイコン向き */
.icon-deg90 { transform: rotate(90deg); }
.icon-deg180 { transform: rotate(180deg); }
.icon-deg270 { transform: rotate(270deg); }

/* アイコン群 */
.icon-arrow { mask-image: url("../image/icon_arrow.svg"); background: #fff; width: 1.2em; height: 1.2em; }
.icon-ticket { mask-image: url("../image/icon_ticket.svg");  background: #fff; width: 2.5em; height: 1.2em; }
.icon-timetable { mask-image: url("../image/icon_pdf.svg"); width: 2em; height: 2em; background: #fff; }
.icon-odori { mask-image: url("../image/icon_odori.svg"); width: 2em; height: 2em; }



.icon { display: inline-block; position: relative; text-decoration: none; }
.icon::before,
.icon::after { bottom: 0; content: ""; margin: auto; position: absolute; top: 0; }
.icon.icon01,
.icon.icon02,
.icon.icon03,
.icon.icon04,
.icon.icon05,
.icon.icon06,
.icon.icon07,
.icon.icon08 { padding-left: 1.8em; }
.icon.icon01::before,
.icon.icon02::before,
.icon.icon03::before,
.icon.icon04::before,
.icon.icon05::before,
.icon.icon06::before,
.icon.icon07::before,
.icon.icon08::before { height: 1.4em; left: 0; width: 1.4em; top: 0.3em; bottom: auto; }
.icon.icon01::before { background: url("../image/map/icon_201.svg") no-repeat 0 0 / contain; }
.icon.icon02::before { background: url("../image/map/icon_202.svg") no-repeat 0 0 / contain; }
.icon.icon03::before { background: url("../image/map/icon_203.svg") no-repeat 0 0 / contain; }
.icon.icon04::before { background: url("../image/map/icon_204.svg") no-repeat 0 0 / contain; }
.icon.icon05::before { background: url("../image/map/icon_205.svg") no-repeat 0 0 / contain; }
.icon.icon06::before { background: url("../image/map/icon_206.svg") no-repeat 0 0 / contain; }
.icon.icon07::before { background: url("../image/map/icon_207.svg") no-repeat 0 0 / contain; }
.icon.icon08::before { background: url("../image/map/icon_208.svg") no-repeat 0 0 / contain; }

.icon.iconZen,
.icon.iconTou { padding-left: 2.6em; line-height: 1.2; }
.icon.iconZen::before { height: 2.2em; left: 0; width: 2.2em; background: url("../image/icon_zen.svg") no-repeat 0 0 / contain; bottom: 0; }
.icon.iconTou::before { height: 2.2em; left: 0; width: 2.2em; background: url("../image/icon_tou.svg") no-repeat 0 0 / contain; bottom: 0; }

.icon.iconBlank { padding-right: 1.6em; }
.icon.iconBlank::before { height: 1em; right: 0; width: 1em; mask: url("../image/icon_blank.svg") no-repeat 0 0 / contain; background: var(--base-color3); bottom: 0; }

.icon.zoom {}
.icon.zoom::after { background: url("../image/icon_zoom.svg") no-repeat; bottom: auto; height: 2em; right: 0; width: 2em; }


/*-----------------------------------------------------
List
------------------------------------------------------*/
main ol,main ul { margin: 0; }
.c-list-disc li { padding-left: 1em; position: relative; }
.c-list-disc li:before { content: "・"; position: absolute; left: 0; color: var(--base-color3); }
.c-list-kome li { padding-left: 1em; text-indent: -1em; }


/*-----------------------------------------------------
Title
------------------------------------------------------*/
.c-title01 { background: var(--base-color2); font-size: 4rem; font-weight: 900; line-height: 1.25; margin-bottom: 65px; color: #fff; position: relative; text-shadow: 0px -3px 0px #b7b707; }
.c-title01::before,
.c-title01::after { position: absolute; content: ""; width: 100%; left: 0; }
.c-title01::before { background: var(--base-color4); top: 0; height: 52px; }
.c-title01::after { background: var(--base-color5); bottom: 0; height: 24px; }
.c-title01__inner { background: url("../image/bg_title01.svg") no-repeat 50% 0; display: grid; place-items: center; height: 224px; width: 100%; position: relative; z-index: 1; text-align: center; }
.c-title01__textS { font-size: 2rem; }
.c-title02 { background: url("../image/bg_title02.svg") no-repeat 0 0 / 100% 100%; font-size: 3rem; font-weight: 500; text-shadow: 0px 3px 0px rgba(0, 0, 0, 0.5); margin-bottom: 40px; color: #fff; display: flex; justify-content: center; align-items: center; padding: 15px; line-height: 1.5; text-align: center; }
.c-title02--s { background: url("../image/bg_title02_s.svg") no-repeat center / contain; margin-bottom: 0; }
.c-title03 { font-size: 2.4rem; font-weight: 700; color: var(--base-color3); text-align: center; border-bottom: 1px solid var(--base-color1); margin-bottom: 30px; padding-bottom: 20px; line-height: 1.5; }
.c-title03__textL { font-size: 3.4rem; }
.c-title03__textS { font-size: 1.6rem; }
.c-title04 { font-size: 2.4rem; font-weight: 700; color: var(--base-color3); text-align: center; border: 2px solid var(--base-color1); margin-bottom: 30px; padding: 5px; }
@media (max-width: 767px) {

  .c-title01 { margin-bottom: 5vw; font-size: 4.6875vw; }
  .c-title01::before { height: 7.4vw; }
  .c-title01::after {; bottom: 0; height: 5.3vw; }
  .c-title01__inner { background: url("../image/sp_bg_title01.svg") no-repeat 50% 0 / 106vw auto; height: 34.375vw; }

	.c-title02 { background: url("../image/sp_bg_title02.svg") no-repeat 0 0 / 100% 100%; font-size: 4.6875vw; margin-bottom: 5vw; padding: 3vw 2vw; line-height: 1.2; }
  .c-title02--s { margin-bottom: 0; }
  .c-title03 { font-size: 4.0625vw; border-bottom: 0.2vw solid var(--base-color1); margin-bottom: 3vw; padding-bottom: 2vw; }
  .c-title04 { font-size: 4.0625vw; border: 0.4vw solid var(--base-color1); margin-bottom: 3vw; padding: 2vw; }
}

/*-----------------------------------------------------
Compornent
------------------------------------------------------*/
.c-section--white { background: #fff; padding: 40px; max-width: 1160px; margin: 0 auto; }
.c-list__news { border-top: 1px solid var(--base-color3); margin-bottom: 40px; }
.c-list__news dl { border-bottom: 1px solid var(--base-color3); padding: 25px 0; display: grid; grid-template-columns: 200px 1fr; gap: 20px; }
.c-list__news dt { display: flex; justify-content: space-between; align-items: center; }
.c-list__news dd {}
.c-list__news__date { width: 100px; }
.c-list__news__category { background: var(--base-color2); color: #fff; font-size: 1.3rem; font-weight: 700; line-height: 1; padding: 5px; text-align: center; width: 100px; }
@media (max-width: 767px) {
  .c-section--white { padding: 5vw; margin: 0 5vw; }
  .c-list__news { border-top: 0.2vw solid var(--base-color3); margin-bottom: 4vw; }
  .c-list__news dl { border-bottom: 0.2vw solid var(--base-color3); padding: 4vw 0; grid-template-columns: 1fr; gap: 2vw; }
  .c-list__news dt { justify-content: flex-start; }
  .c-list__news dd {}
  .c-list__news__date { width: 22vw; }
  .c-list__news__category { padding: 1vw; width: 24vw; }
}


/*-----------------------------------------------------
Table
------------------------------------------------------*/
table { border-collapse: collapse; width: 100%; }


/*-----------------------------------------------------

トップページ

------------------------------------------------------*/
.topBlock00 { position: relative; background: var(--base-color2); text-align: center; padding-bottom: 13px; margin-bottom: 40px; }
.topBlock00::before,
.topBlock00::after { position: absolute; content: ""; width: 100%; left: 0; z-index: 0; }
.topBlock00::before { background: var(--base-color4); top: 0; height: 165px; }
.topBlock00::after { background: var(--base-color5); bottom: 0; height: 165px; }
.topBlock00__title { position: relative; z-index: 1; background: url("../image/topBlock00_img02.svg") no-repeat 50% -156px; padding-top: 40px; height: 715px; }
.topBlock00__text { position: relative; z-index: 1; background: var(--base-color1); padding: 18px 0 12px; }
.topBlock00__text::before { position: absolute; content: ""; width: 530px; height: 218px; left: 0; right: 0; top: -195px; margin: auto; background: url("../image/topBlock00_img01.svg") no-repeat 100% 0 / contain; }
.topBlock01 { position: relative; }
.topBlock01::before { position: absolute; content: ""; width: 165px; height: 87px; left: 0; right: 0; bottom: -120px; margin: auto; background: url("../image/topBlock01_img01.svg") no-repeat 0 0 / contain; }
.topBlock01 .c-list__sns { display: flex; justify-content: center; gap: 40px; margin:  40px 0 30px; }
.topBlock02 { margin: 200px 0 105px; padding: 0 calc(50% - 580px); position: relative; background: var(--base-color2); }
.topBlock02::before,
.topBlock02::after { position: absolute; content: ""; width: 100%; left: 0; }
.topBlock02::before { background: var(--base-color4); top: -60px; height: 150px; }
.topBlock02::after { background: var(--base-color5); bottom: -60px; height: 150px; }
.topBlock02 iframe { z-index: 1; position: relative; }
.topBlock03 { margin: 50px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 70px; justify-content: center; }
.topBlock03 .c-box__toplink { text-align: center; display: grid; gap: 20px; }
.topBlock03 .c-box__toplink dd { margin-top: 20px; font-weight: 700; }
.topBlock03 .c-button--grade { min-width: 260px; }
.topBlock04 { margin: 50px auto; }
.topBlock04__title { font-size: 1.6rem; font-weight: 700; margin-bottom: 50px; text-align: center; }
.topBlock04 .c-list__logo  { display: grid; grid-template-columns: repeat(4, 1fr); align-items: center; justify-content: center; gap: 40px; font-size: 1.8rem; font-weight: 700; text-align: center; }
.topBlock04 .c-list__logo a { text-decoration: none; color: #000; }
.topBlock05 { margin: 40px auto; text-align: center; }
@media (max-width: 767px) {
  .topBlock00 { position: relative; background: url("../image/sp_topBlock00_img02.svg") no-repeat 0 0 / contain; height: 152.5vw; text-align: center; padding-bottom: 13px; margin-bottom: 5vw; }
  .topBlock00::before,
  .topBlock00::after { position: absolute; content: none; }
  .topBlock00__title { position: relative; z-index: 1; background: none; height: 123vw; padding-top: 6.5vw; }
  .topBlock00__title img { width: 65vw; }
  .topBlock00__text { position: relative; z-index: 1; background: var(--base-color1); padding: 1.875vw 1.875vw 1vw; }
  .topBlock00__text::before { position: absolute; content: none; }
  .topBlock01 {}
  .topBlock01::before { width: 26vw; height: 13vw; bottom: -17.5vw; }
  .topBlock01 .c-list__sns { gap: 5vw; margin:  5vw 0; }
  .topBlock02 { margin: 26vw 0 12.5vw; padding: 0 8vw; }
  .topBlock02::before,
  .topBlock02::after { position: absolute; content: ""; width: 100%; left: 0; }
  .topBlock02::before { background: var(--base-color4); top: -5vw; height: 12vw; }
  .topBlock02::after { background: var(--base-color4); bottom: -5vw; height: 12vw; }
  .topBlock02 iframe { z-index: 1; position: relative; }
  .topBlock03 { margin: 5vw; grid-template-columns: 1fr; gap: 10vw; }
  .topBlock03 .c-box__toplink { gap: 2vw; }
  .topBlock03 .c-box__toplink dd { margin-top: 2vw; }
  .topBlock04 { margin: 5vw; }
  .topBlock04__title { margin-bottom: 5vw; }
  .topBlock04 .c-list__logo  { grid-template-columns: repeat(1, 1fr); gap: 5vw; }
  .topBlock05 { margin: 5vw; }
}


/*-----------------------------------------------------

演舞スケジュール

------------------------------------------------------*/
.scheduleBlock { margin: 40px auto 100px; max-width: 1160px; background: #fff; }
.tab-group { display: grid; grid-template-columns: repeat(5, 1fr); gap:1px; font-weight: 700; }
.tab-group__item { background: #c0c0c0; color: #fff; position: relative; text-decoration: none; display: grid; place-items: center; height: 95px; }
.tab-group__num { font-size: 2.6rem; }
.tab-group__item.is-active { background: #fff; color: var(--base-color3); }
.tab-group__item.is-active::after { width: 100%; height: 8px; position: absolute; content: ""; background: var(--base-color1); bottom: 0; left: 0; }
.panel-group { padding: 40px; display: grid; gap: 60px; }
.panel-group .c-title02 { justify-content: flex-start; font-size: 2.6rem; padding-left: 40px; margin-bottom: 10px; }
.c-program__wrap { display: grid; grid-template-columns: 400px 1fr; grid-template-areas:  "image title" "image text" "image ."; gap: 0 40px; align-items: start; }
.c-program__image { grid-area: image; }
.c-program__title { grid-area: title; }
.c-program__text { grid-area: text; }
.c-program__info dt { display: grid; grid-template-columns: 130px 1fr; align-items: flex-start; gap: 10px; font-weight: 700; margin-top: 15px; }
.c-program__time { background: var(--base-color2); color: #fff; text-align: center; }
.c-program__item { font-size: 2.4rem; color: var(--base-color3); line-height: 1.5; }
@media (max-width: 767px) {
	.scheduleBlock { margin: 9vw 6vw; }
  .tab-group { gap: 0.2vw; }
  .tab-group__item { height: 16vw; font-size: 2.5vw; }
  .tab-group__num { font-size: 3vw; }
  .tab-group__item.is-active::after { height: 1vw; }
  .panel-group { padding: 5vw; gap: 10vw; }
  .panel-group .c-title02 { font-size: 5vw; padding-left: 5vw; margin-bottom: 3vw; }
  .c-program__wrap { grid-template-columns: 1fr; grid-template-areas: "title" "image" "text"; gap: 3vw; }
  .c-program__image { width: auto; }
  .c-program__text { width: auto; }
  .c-program__info {}
  .c-program__info dt { grid-template-columns: 1fr; gap: 2vw; margin-top: 2vw; }
  .c-program__time { font-size: 3.125vw; width: fit-content; padding: 0 2vw; }
  .c-program__item { font-size: 5vw; }
}


/*-----------------------------------------------------

今年のみどころ

------------------------------------------------------*/
.highlightBlock01 { margin: 100px auto 0; width: 1160px; }
.highlightBox { flex-wrap: wrap; display: flex; gap: 40px; margin-bottom: 70px; }
.highlightBox > div { width: 450px; }
.highlightBox dl { margin-top: 30px; }
.highlightBox dt { width: fit-content; border: 1px solid #fff; border-radius: 5px; font-weight: 700; padding: 2px 20px; margin-bottom: 10px; }
.highlightBox p { }
.c-highlight__wrap { display: flex; gap: 40px; margin-top: 40px; }
.c-highlight__wrap--right { flex-direction:row-reverse; }
.c-highlight__image { width: 600px; }
.c-highlight__text { width: 440px; }
.c-highlight__image2 { width: 670px; }
.c-highlight__text2 { width: 370px; }
.c-highlight__title { font-weight: 700; width: fit-content; background: var(--base-color2); color: #fff; padding: 0 20px; margin-bottom: 10px; }
.c-highlight__date { font-weight: 700; color: var(--base-color3); margin-bottom: 15px; }
.c-highlight__copy { font-size: 2.4rem; font-weight: 700; color: var(--base-color3); line-height: 1.5; margin-bottom: 5px; }
.c-wabeat { margin: 30px 0; border: 1px solid var(--base-color1); padding: 40px; }
.c-wabeat__wrap { display: flex; gap: 40px; flex-direction:row-reverse; }
.c-wabeat__image { width: 270px; }
.c-wabeat__text { width: 680px; }
.c-cloudfounding { margin: 100px 0 0; border: 1px solid var(--base-color1); padding: 40px; }
.c-cloudfounding__text { text-align: center; font-weight: 700; color: #ff2b38; font-size: 1.8rem; margin-top: 0.5em; }
@media (max-width: 767px) {
  .highlightBlock01 { margin: 9vw 6vw 0; width: auto; }
  .highlightBox { gap: 0; margin-bottom: 7vw; }
  .highlightBox > div { width: 100%; }
  .highlightBox dl { margin-top: 3vw; }
  .highlightBox dt { border: 0.2vw solid #fff; border-radius: 1vw; padding: 1vw 3vw; }
  .highlightBlock02 { margin: 15vw 0; padding: 0 6vw; }
  .highlightBlock02::before { background: url("../image/bg_wave_top.webp") no-repeat 0 0 / 100% auto; top: -15vw; height: 15vw; }
  .highlightBlock02::after { background: url("../image/bg_wave_bottom.webp") no-repeat 0 100% / 100% auto; bottom: -15vw; height: 15vw; }
  .c-highlight__wrap { gap: 3vw; margin-top: 5vw; flex-direction: column; }
  .c-highlight__image { width: auto; }
  .c-highlight__text { width: auto; }
  .c-highlight__image2 { width: auto; }
  .c-highlight__text2 { width: auto; }
  .c-highlight__title { padding: 0 20px; margin-bottom: 10px; }
  .c-highlight__date { margin-bottom: 10px; }
  .c-wabeat { margin: 5vw 0; border: 0.2vw solid var(--base-color1); padding: 5vw; }
  .c-wabeat__wrap { flex-direction: column; gap: 4vw; }
  .c-wabeat__image { width: auto; }
  .c-wabeat__text { width: auto; }
  .c-cloudfounding { margin: 10vw 0; border: 0.2vw solid var(--base-color1); padding: 5vw; }
}



/*-----------------------------------------------------

開催概要&よくある質問

------------------------------------------------------*/
.overviewBlock01 { margin: 100px auto; width: 1160px; }
.overviewBlock01 th { border-bottom: 1px solid var(--base-color3); border-top: 1px solid var(--base-color3); padding: 25px 0; text-align: left; vertical-align: top; width: 160px; }
.overviewBlock01 td { border-bottom: 1px solid var(--base-color3); border-top: 1px solid var(--base-color3); padding: 25px 0; }
.overviewBlock02 { margin: 100px auto; width: 1160px; }
.overviewBlock02 .lineBox { border: 3px solid #21c953; padding: 20px; border-radius: 10px; margin-top: 20px; display: flex; flex-wrap:wrap; gap: 15px; }
.overviewBlock02 .lineBox >* { width: 100%; }
.is-question { font-size: 2rem; font-weight: 600; padding: 20px 50px; position: relative; border-bottom: 1px solid var(--base-color1); }
.is-question::before { background: url("../image/icon_q.svg") no-repeat 0 0 / contain; bottom: 0; content: ""; height: 40px; left: 0; margin: auto; position: absolute; top: 0; width: 40px; }
.is-question::after { background: url("../image/icon_open.svg") no-repeat 0 0 / contain; bottom: 0; content: ""; height: 20px; margin: auto; position: absolute; right: 10px; top: 0; width: 20px; }
.is-question.is-open::after { background: url("../image/icon_close.svg") no-repeat 0 0 / contain; }
.is-answer { background: #fcfce5; margin: 28px 0 40px; padding: 30px 30px 30px 70px; position: relative; }
.is-answer::after { background: url("../image/icon_a.svg") no-repeat 0 0 / contain; content: ""; height: 18px; left: 30px; position: absolute; top: 35px; width: 23px; }
.is-answer a { color: #000; }
@media (max-width: 767px) {
	.overviewBlock01 { margin: 9vw 6vw; width: auto; }
	.overviewBlock01 table { border-top: 0.4vw solid var(--base-color3); }
	.overviewBlock01 th { border: none; display: block; padding: 3vw 0 0; }
	.overviewBlock01 td { border-top: none; border-bottom: 0.4vw solid var(--base-color3); display: block; padding: 3vw 0; }
	.overviewBlock02 { margin: 9vw 6vw; width: auto; }
	.overviewBlock02 .lineBox { border: 0.6vw solid #21c953; padding: 2vw; border-radius: 2vw; margin-top: 2vw; gap: 2vw; }
  .is-question { font-size: 4vw; padding: 2vw 8vw; border-bottom: 0.2vw solid var(--base-color1); }
  .is-question::before { height: 6vw; width: 6vw; top: 2vw; bottom: auto; }
  .is-question::after { height: 3vw; right: 1vw; width: 3vw; }
  .is-answer { margin: 3vw 0 4vw; padding: 3vw 3vw 3vw 10vw; }
  .is-answer::after { height: 4vw; left: 3vw; top: 5vw; width: 4vw; }
}



/*-----------------------------------------------------

開催会場／交通規制

------------------------------------------------------*/
.venueBlock01 { margin: 100px auto; width: 1160px; color: #000; }
.venueBlock01 #map { position: relative; margin-bottom: 60px; }
.venueBlock01 #map a { color: #000; }
.venueBlock01 #map #map_canvas { height: 600px; margin-top: 60px; width: 100%; }
.venueBlock01 #map .map_tip .tip_address { margin-top: 6px; }
.venueBlock01 #map .map_tip a { display: inline-block; margin-top: 8px; }
.venueBlock01 #map ul { background: #fff; display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; font-size: 1.4rem; margin: -110px 150px 0; padding: 20px; position: relative; z-index: 10; }
.venueBlock01 #map ul li {}
.c-stagelist { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px;  }
.c-stagelist__item {}
.c-stagelist__item dt { margin-top: 15px; font-size: 2rem; font-weight: 700; }
.c-stagelist__item dd { margin-top: 20px; }
@media (max-width: 767px) {
	.venueBlock01 { margin: 9vw 6vw; width: auto; }
	.venueBlock01 #map { margin-bottom: 6vw; }
	.venueBlock01 #map a { color: #fff; }
	.venueBlock01 #map #map_canvas { height: 70vw; margin: 6vw 0; }
	.venueBlock01 #map .map_tip .tip_address { margin-top: 2vw; }
	.venueBlock01 #map .map_tip a { margin-top: 2vw; }
	.venueBlock01 #map ul { background: #000; font-size: 2.8vw; margin: 0; padding: 3vw; gap: 2vw; }
  .c-stagelist { grid-template-columns: repeat(1, 1fr);  gap: 3vw;  }
	.c-stagelist__item {}
	.c-stagelist__item dt { margin-top: 2vw; font-size: 4vw; }
	.c-stagelist__item dd { margin-top: 2vw; }
}



/*-----------------------------------------------------

開催の歴史

------------------------------------------------------*/
.historyBlock01 { margin: 100px auto; width: 1160px; }
.historyBlock01 .vimeo { padding: 56.25% 0 0 0; position:relative; margin: 40px 0; }
.c-history__wrap { display: flex; gap: 40px; margin-top: 40px; }
.c-history__wrap--right { flex-direction:row-reverse; }
.c-history__image { width: 680px; }
.c-history__text { width: 360px; }
.historyBlock02 { margin: 0 auto; width: 1160px; }
.historyBlock02 .flex { margin-bottom: 60px; }
.historyBlock02 .flex p { width: 440px; }
.historyBlock02 .mt40 { margin-top: 40px; }
@media (max-width: 767px) {
	.historyBlock01 { margin: 9vw 6vw; width: auto; }
	.historyBlock01 .vimeo { margin: 4vw 0; }
  .c-history__wrap { gap: 3vw; margin-top: 5vw; flex-direction: column; }
  .c-history__image { width: auto; }
  .c-history__text { width: auto; }
	.historyBlock02 { margin: 9vw 6vw; width: auto; }
	.historyBlock02 .flex p { width: auto; }
}



/*-----------------------------------------------------

観覧予約

------------------------------------------------------*/
.viewingBlock01 { margin: 100px auto; width: 1160px; }
.c-period { padding: 10px 30px; background: #f5edf9; display: grid; grid-template-columns: 120px 1fr; margin: 30px 0 10px; }
.c-period__title { font-weight: 700; }
.c-period__cont { display: grid; gap: 10px; grid-template-columns: 100px 1fr; font-weight: 500; }
.c-period__ticket { border: 1px solid var(--base-color1); padding-left: 1em; min-width: 100px; }
.c-scheduleTable { border-top: 2px solid var(--base-color3); border-bottom: 2px solid var(--base-color3); margin-bottom: 50px; }
.c-scheduleTable th { border-top: 1px solid var(--base-color3); border-bottom: 1px solid var(--base-color3); padding: 10px; text-align: center; background: #f2f2f2; }
.c-scheduleTable td { border-top: 1px solid var(--base-color3); border-bottom: 1px solid var(--base-color3); padding: 10px; vertical-align: top; width: 275px; font-size: 1.4rem; }
.c-scheduleTable .border { border-right: 1px solid var(--base-color3); }
.c-scheduleTable .anchor { position: relative; padding-left: 1.2em; display: inline-block; }
.c-scheduleTable .anchor::after { background: url("../image/icon_arrow.svg") no-repeat center / contain; content: ""; height: 10px; left: 0; position: absolute; top: 8px; width: 15px; transform: rotate(90deg); }
.c-planTitle { color: #fff; background: var(--base-color3); font-size: 1.8rem; font-weight: 700; padding: 10px 25px; position: relative; display: grid; }
.c-planTitle::after { mask: url("../image/icon_open.svg") no-repeat 0 0 / contain; bottom: 0; content: ""; height: 28px; margin: auto; position: absolute; right: 25px; top: 0; width: 28px; background: #fff; }
.c-planTitle.is-open::after { mask: url("../image/icon_close.svg") no-repeat 0 0 / contain; }
.c-planTitle .time { font-size: 1.4rem; font-weight: 400; }
.c-planTable { }
.c-planTable thead th { border: 1px solid var(--base-color3);; font-size: 1.4rem; font-weight: 400; padding: 15px; text-align: center; }
.c-planTable tbody th { border: 1px solid var(--base-color3);; font-weight: 400; padding: 10px; text-align: left; vertical-align: middle; }
.c-planTable td { background: #fff; border: 1px solid #000; padding: 10px; text-align: center; vertical-align: middle; width: 160px; }
.c-planMap { width: fit-content; margin: 40px auto 60px !important; }
.c-seat__head { font-size: 2rem; font-weight: 600; padding: 20px 50px 20px 0; position: relative; border-bottom: 1px solid var(--base-color1); }
.c-seat__head::after { background: url("../image/icon_open.svg") no-repeat 0 0 / contain; bottom: 0; content: ""; height: 20px; margin: auto; position: absolute; right: 10px; top: 0; width: 20px; }
.c-seat__body { margin-top: 20px; padding: 30px; background: #f5edf9; }
.c-seat__title { font-size: 2rem; font-weight: 700; }
.c-seat__list { display: grid; gap: 20px; }
@media (max-width: 767px) {
	.viewingBlock01 { margin: 9vw 6vw; width: auto }
  .c-period { padding: 3vw; grid-template-columns: 1fr; margin: 3vw 0; }
  .c-period__cont { gap: 2vw; grid-template-columns: 1fr; }
  .c-period__ticket { border: 0.2vw solid var(--base-color1); }
  .c-scheduleTable { border-top: 0.4vw solid var(--base-color3); border-bottom: 0.4vw solid var(--base-color3); margin-bottom: 5vw; }
  .c-scheduleTable th { border-top: 0.2vw solid var(--base-color3); border-bottom: 0.2vw solid var(--base-color3); padding: 2vw; }
  .c-scheduleTable td { border-top: 0.2vw solid var(--base-color3); border-bottom: 0.2vw solid var(--base-color3); padding: 2vw 4vw; width: auto; }
  .c-planTitle { font-size: 4vw; padding: 3vw 8vw 3vw 3vw; border-top-left-radius: 2vw; border-top-right-radius: 2vw; }
  .c-planTitle::after { height: 4vw; right: 3vw;width: 4vw; }

  .c-planTable { width: 150vw; }
  .c-planTable thead th { font-size: 3.125vw; padding: 2vw; }
  .c-planTable tbody th { padding: 2vw; }
  .c-planTable td { padding: 2vw; width: 20vw; }
}



/*-----------------------------------------------------

応援企業一覧

------------------------------------------------------*/
.sponsorBlock01 {}
.sponsorBlock01__wrap { display: flex; gap: 40px; margin-bottom: 40px; }
.sponsorBlock01__wrap--right { flex-direction:row-reverse; }
.sponsorBlock01__image { width: 625px; }
.sponsorBlock01__txt { width: 415px; }
.sponsorBlock01 hr { margin: 80px 0; border-color: var(--base-color1); }
.sponsorListL { display: grid; grid-template-columns: repeat(4, 1fr); align-items: center; justify-content: center; gap: 40px; font-weight: 700; text-align: center; }
.sponsorListM { align-items: center; display: flex; justify-content: center; flex-wrap: wrap; gap: 40px 80px; margin: 0 80px; }
.sponsorListS { display: flex; flex-wrap: wrap; gap: 20px 40px; }
.sponsorListS li { font-size: 1.8rem; width: 320px; }
.sponsorListSS { display: flex; flex-wrap: wrap; gap: 10px 40px; }
.sponsorListSS li { font-size: 1.4rem; width: 240px; }
.sponsor_cocolo { width: 135px; }
.sponsor_echiten { width: 210px; }
.sponsor_toyano { width: 210px; }
.sponsor_trust { width: 210px; }
.sponsor_befco { width: 235px; }
.sponsor_nikko { width: 215px; }
.sponsor_soho { width: 230px; }
.sponsor_nsg_college { width: 220px; }
.sponsor_niigatashomei { width: 215px; }
.sponsor_room1 { width: 180px; }
.sponsor_hamabe { width: 70px; }
.sponsor_ccube { width: 170px; }
.sponsor_nippontravel { width: 255px; }
.sponsor_fordays { width: 170px; }
.sponsor_maxestate { width: 190px; }
.sponsor_yuri { width: 190px; }
.sponsor_niigatadrive { width: 200px; }
.sponsor_fujita { width: 200px; }
.sponsor_silverhotel { width: 200px; }
.sponsor_asahi { width: 115px; }
.sponsor_rakutenmobile { width: 190px; }
.sponsor_yellows { width: 135px; }
.sponsor_rentall { width: 165px; }
.sponsor_zansin { width: 152px; }
@media (max-width: 767px) {
	.sponsorBlock01 { margin: 9vw 6vw; width: auto; }
  .sponsorBlock01__wrap { gap: 3vw; margin-bottom: 5vw; flex-direction: column;  }
  .sponsorBlock01__image { width: auto; }
  .sponsorBlock01__txt { width: auto; }
	.sponsorBlock02 { margin: 0 6vw 10vw; width: auto; padding: 6vw 4vw; border-radius: 2vw; }
	.sponsorBlock02 hr { margin: 8vw 0; }
	.sponsorListL { gap: 6vw; grid-template-columns: repeat(1, 1fr); }
	.sponsorListM { gap: 4vw; }
	.sponsorListM li { width: 38vw; }
	.sponsorListS { gap: 2vw; }
	.sponsorListS li { font-size: 4vw; width: 100%; }
	.sponsorListSS { gap: 2vw; }
	.sponsorListSS li { font-size: 2.8vw; width: 38vw; }
  .sponsor_cocolo { width: 33vw; }
  .sponsor_echiten { width: 48vw; }
  .sponsor_toyano { width: 43vw; }
  .sponsor_trust { width: 47vw; }
  .sponsor_befco { width: 47vw; }
	.sponsor_nikko { width: 47vw; }
  .sponsor_soho { width: 47vw; }
  .sponsor_nsg_college { width: 52vw; }
  .sponsor_niigatashomei { width: 47vw; }
  .sponsor_room1 { width: 34vw; }
  .sponsor_hamabe { width: 14vw; }
  .sponsor_ccube { width: 34vw; }
  .sponsor_nippontravel { width: 51vw; }
  .sponsor_fordays { width: 34vw; }
  .sponsor_maxestate { width: 38vw; }
  .sponsor_yuri { width: 38vw; }
  .sponsor_niigatadrive { width: 40vw; }
  .sponsor_fujita { width: 40vw; }
	.sponsor_silverhotel { width: 40vw; }
  .sponsor_asahi { width: 20vw; }
}



/*-----------------------------------------------------

次の25年をつくる 応援プロジェクト

------------------------------------------------------*/
.cfBlock01 {}
.c-comment__wrap { display: grid; gap: 30px; grid-template-columns: repeat(3, 1fr); }
.c-comment__box { background: #fcfcef; border: 1px solid #b4b333; padding: 30px 20px; }
.c-comment__text { margin-bottom: 20px; }
.c-comment__job { font-size: 14px; color: var(--base-color3); }
.c-comment__name { font-weight: 700; color: var(--base-color3); }
@media (max-width: 767px) {
  .c-comment__wrap { gap: 3vw; grid-template-columns: repeat(1, 1fr); }
  .c-comment__box { border: 0.2vw solid #b4b333; padding: 3vw; }
  .c-comment__text { margin-bottom: 2vw; }
}



/*-----------------------------------------------------

お知らせ

------------------------------------------------------*/
@media (min-width: 768px) {
	.newsBlock { margin: 100px auto; padding: 80px 40px; }
  .c-article__data { display: flex; gap: 20px; justify-content: center; margin-bottom: 15px; }
	.c-article__date {}
	.c-article__category { background: var(--base-color2); color: #fff; font-size: 1.3rem; font-weight: 700; line-height: 1; padding: 5px; text-align: center; border-radius: 5px; width: 100px; display: inline-grid; place-items: center; }
	.entryBody { margin-top: 30px; -ms-word-break: break-all; word-break: break-all; }
	.entryBody ul,
	.entryBody ol { list-style-position: outside; margin: 1em 0 1em 2em; text-align: left; }
	.entryBody ol { list-style: decimal; }
	.entryBody ul > li { list-style-type: disc; text-align: left; }
	.entryBody ol > li { text-align: left; }
	.entryBody ol.maruSuji > li { list-style: none; padding-left: 1.3em; text-indent: -1.3em; }
	.entryBody strong { font-weight: bold !important; }
	.entryBody strong span { font-weight: bold !important; }
	.entryBody span strong { font-weight: bold !important; }
	.entryBody del strong { font-weight: bold !important; }
	.entryBody em strong { font-weight: bold !important; }
	.entryBody em { font-style: italic; }
	.entryBody p { line-height: 1.7; margin: 0 0 1.5em; }
	.entryBody em { font-style: italic !important; }
	.entryBody blockquote { background: #f2f2f2; margin: 15px 0; padding: 20px; }
	.entryBody img { height: auto; margin: 0 0 1em; max-width: 100%; }
	.entryBody iframe { height: 330px; width: 600px; }
	.entryBody .alignleft, .entryBody img.alignleft { display: inline; float: left; margin-right: 24px; margin-top: 4px; }
	.entryBody .alignright, .entryBody img.alignright { display: inline; float: right; margin-left: 24px; margin-top: 4px; }
	.entryBody .aligncenter, .entryBody img.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
	.entryBody img.alignleft, .entryBody img.alignright, .entryBody img.aligncenter { margin-bottom: 12px; }
	.entryBody .wp-caption { background: #f1f1f1; border: none; border-radius: 0; color: #888; font-size: 12px; line-height: 18px; margin-bottom: 20px; padding: 4px; text-align: center; }
	.entryBody .wp-caption img { margin: 5px; }
	.entryBody .wp-caption p.wp-caption-text { margin: 0 0 4px; }
	.entryBody .wp-smiley { margin: 0; }
  

  .wp-pagenavi { display: flex; justify-content: center; gap:20px; margin: 40px 0; font-weight: 700; }
	.wp-pagenavi a { display: flex; justify-content: center; align-items: center; width: 20px; height: 20px; color: #000; text-decoration: none; }
	.wp-pagenavi .current { display: flex; justify-content: center; align-items: center; width: 20px; height: 20px; color: var(--base-color2); }
	.wp-pagenavi .nextpostslink,
	.wp-pagenavi .previouspostslink { align-items: center; display: flex; justify-content: center; position: relative; text-indent: -999px; }
	.wp-pagenavi .nextpostslink:before,
	.wp-pagenavi .previouspostslink:before { content: ""; height: 20px; position: absolute; width: 20px; mask: url("../image/icon_arrow.svg") no-repeat 50% 50% / auto 20px; background: var(--base-color2); }
	.wp-pagenavi .previouspostslink:before { transform: rotate(180deg); }
}
@media (max-width: 767px) {
	.newsBlock {margin: 9vw 6vw; }
	.newsBlock .date { display: inline-block; width: 30vw; }
	.newsBlock .category { background: #e84865; color: #fff; display: inline-block; font-size: 1.4rem; font-weight: 400; line-height: 1; padding: 3px 15px; border-radius: 5px; }
	.newsBlock .c-list__news { border-top: 0.4vw solid #4d4d4d; margin-bottom: 10vw; }
	.newsBlock .c-list__news dl { border-bottom: 0.4vw solid #4d4d4d; padding: 5vw 0; }
	.newsBlock .c-list__news dt { display: flex; margin-bottom: 3vw; }
	.entryBody { font-size: 3.7vw; margin-top: 5vw; -ms-word-break: break-all; word-break: break-all; }
	.entryBody ul,
	.entryBody ol { list-style-position: outside; margin: 1em 0 1em 2em; text-align: left; }
	.entryBody ol { list-style-type: decimal; }
	.entryBody ul > li { list-style-type: disc; text-align: left; }
	.entryBody ol > li { text-align: left; }
	.entryBody ol.maruSuji { margin: 0 !important; padding: 0 !important; }
	.entryBody ol.maruSuji > li { list-style: none; padding-left: 1em; text-indent: -1em; }
	.entryBody strong { font-weight: bold !important; }
	.entryBody strong span { font-weight: bold !important; }
	.entryBody span strong { font-weight: bold !important; }
	.entryBody del strong { font-weight: bold !important; }
	.entryBody em strong { font-weight: bold !important; }
	.entryBody em { font-style: italic; }
	.entryBody p { line-height: 1.7; margin: 0 0 1.5em; }
	.entryBody em { font-style: italic !important; }
	.entryBody blockquote { background: #f2f2f2; margin: 1em 0; padding: 1em; }
	.entryBody img { margin: 0 0 1em; }
	.entryBody iframe { max-width: 100%; width: auto; }
	.entryBody .alignleft, .entryBody img.alignleft { display: inline; float: left; margin-right: 24px; margin-top: 4px; }
	.entryBody .alignright, .entryBody img.alignright { display: inline; float: right; margin-left: 24px; margin-top: 4px; }
	.entryBody .aligncenter, .entryBody img.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
	.entryBody img.alignleft, .entryBody img.alignright, .entryBody img.aligncenter { margin-bottom: 12px; }
	.entryBody .wp-caption { background: #f1f1f1; border: none; border-radius: 0; color: #888; font-size: 12px; line-height: 18px; margin-bottom: 20px; padding: 4px; text-align: center; }
	.entryBody .wp-caption img { margin: 5px; }
	.entryBody .wp-caption p.wp-caption-text { margin: 0 0 4px; }
	.entryBody .wp-smiley { margin: 0; }
	.wp-pagenavi { display: flex; font-weight: 700; justify-content: center; margin: 10vw 0 15vw; }
	.wp-pagenavi a.page,
	.wp-pagenavi span { align-items: center; border: 0.4vw solid #000; display: flex; height: 7vw; justify-content: center; text-decoration: none; width: 7vw; }
	.wp-pagenavi a { margin: 0 2vw !important; padding: 0 !important; }
	.wp-pagenavi .current { background: #000; color: #fff; margin: 0 1vw !important; padding: 0 !important; }
	.wp-pagenavi .nextpostslink,
	.wp-pagenavi .previouspostslink { align-items: center; display: flex; height: 7vw; justify-content: center; position: relative; width: 10vw; }
	.wp-pagenavi .nextpostslink:before,
	.wp-pagenavi .previouspostslink:before { content: ""; height: 7vw; position: absolute; width: 10vw; }
	.wp-pagenavi .nextpostslink:before { background: #fff url("../image/icon_next.svg") no-repeat 50% 50% / 10vw auto; }
	.wp-pagenavi .previouspostslink:before { background: #fff url("../image/icon_prev.svg") no-repeat 50% 50% / 10vw auto; }
}







/* === Margin Top === */
.u-mt-0   { margin-top: 0 !important; }
.u-mt-5   { margin-top: 5px !important; }
.u-mt-10  { margin-top: 10px !important; }
.u-mt-15  { margin-top: 15px !important; }
.u-mt-20  { margin-top: 20px !important; }
.u-mt-25  { margin-top: 25px !important; }
.u-mt-30  { margin-top: 30px !important; }
.u-mt-35  { margin-top: 35px !important; }
.u-mt-40  { margin-top: 40px !important; }
.u-mt-45  { margin-top: 45px !important; }
.u-mt-50  { margin-top: 50px !important; }
.u-mt-55  { margin-top: 55px !important; }
.u-mt-60  { margin-top: 60px !important; }
.u-mt-65  { margin-top: 65px !important; }
.u-mt-70  { margin-top: 70px !important; }
.u-mt-75  { margin-top: 75px !important; }
.u-mt-80  { margin-top: 80px !important; }
.u-mt-85  { margin-top: 85px !important; }
.u-mt-90  { margin-top: 90px !important; }
.u-mt-95  { margin-top: 95px !important; }
.u-mt-100 { margin-top: 100px !important; }

/* === Margin Bottom === */
.u-mb-0   { margin-bottom: 0 !important; }
.u-mb-5   { margin-bottom: 5px !important; }
.u-mb-10  { margin-bottom: 10px !important; }
.u-mb-15  { margin-bottom: 15px !important; }
.u-mb-20  { margin-bottom: 20px !important; }
.u-mb-25  { margin-bottom: 25px !important; }
.u-mb-30  { margin-bottom: 30px !important; }
.u-mb-35  { margin-bottom: 35px !important; }
.u-mb-40  { margin-bottom: 40px !important; }
.u-mb-45  { margin-bottom: 45px !important; }
.u-mb-50  { margin-bottom: 50px !important; }
.u-mb-55  { margin-bottom: 55px !important; }
.u-mb-60  { margin-bottom: 60px !important; }
.u-mb-65  { margin-bottom: 65px !important; }
.u-mb-70  { margin-bottom: 70px !important; }
.u-mb-75  { margin-bottom: 75px !important; }
.u-mb-80  { margin-bottom: 80px !important; }
.u-mb-85  { margin-bottom: 85px !important; }
.u-mb-90  { margin-bottom: 90px !important; }
.u-mb-95  { margin-bottom: 95px !important; }
.u-mb-100 { margin-bottom: 100px !important; }

@media (max-width: 767px) {
  .u-mt-0   { margin-top: 0 !important; }
  .u-mt-5   { margin-top: 0.5vw !important; }
  .u-mt-10  { margin-top: 1.0vw !important; }
  .u-mt-15  { margin-top: 1.5vw !important; }
  .u-mt-20  { margin-top: 2.0vw !important; }
  .u-mt-25  { margin-top: 2.5vw !important; }
  .u-mt-30  { margin-top: 3.0vw !important; }
  .u-mt-35  { margin-top: 3.5vw !important; }
  .u-mt-40  { margin-top: 4.0vw !important; }
  .u-mt-45  { margin-top: 4.5vw !important; }
  .u-mt-50  { margin-top: 5.0vw !important; }
  .u-mt-55  { margin-top: 5.5vw !important; }
  .u-mt-60  { margin-top: 6.0vw !important; }
  .u-mt-65  { margin-top: 6.5vw !important; }
  .u-mt-70  { margin-top: 7.0vw !important; }
  .u-mt-75  { margin-top: 7.5vw !important; }
  .u-mt-80  { margin-top: 8.0vw !important; }
  .u-mt-85  { margin-top: 8.5vw !important; }
  .u-mt-90  { margin-top: 9.0vw !important; }
  .u-mt-95  { margin-top: 9.5vw !important; }
  .u-mt-100 { margin-top: 10vw !important; }
  .u-mb-0   { margin-bottom: 0 !important; }
  .u-mb-5   { margin-bottom: 0.5vw !important; }
  .u-mb-10  { margin-bottom: 1.0vw !important; }
  .u-mb-15  { margin-bottom: 1.5vw !important; }
  .u-mb-20  { margin-bottom: 2.0vw !important; }
  .u-mb-25  { margin-bottom: 2.5vw !important; }
  .u-mb-30  { margin-bottom: 3.0vw !important; }
  .u-mb-35  { margin-bottom: 3.5vw !important; }
  .u-mb-40  { margin-bottom: 4.0vw !important; }
  .u-mb-45  { margin-bottom: 4.5vw !important; }
  .u-mb-50  { margin-bottom: 5.0vw !important; }
  .u-mb-55  { margin-bottom: 5.5vw !important; }
  .u-mb-60  { margin-bottom: 6.0vw !important; }
  .u-mb-65  { margin-bottom: 6.5vw !important; }
  .u-mb-70  { margin-bottom: 7.0vw !important; }
  .u-mb-75  { margin-bottom: 7.5vw !important; }
  .u-mb-80  { margin-bottom: 8.0vw !important; }
  .u-mb-85  { margin-bottom: 8.5vw !important; }
  .u-mb-90  { margin-bottom: 9.0vw !important; }
  .u-mb-95  { margin-bottom: 9.5vw !important; }
  .u-mb-100 { margin-bottom: 10vw !important; }
}

.u-fs-22 { font-size: 2.2rem; }

