@media only screen and (max-width: 800px) { article.index section { padding: 2vw 0 0 0 !important; }
  article.index ul.topslide { overflow: hidden; width: 100vw; height: 42vw; }
  article.index ul.topslide img { width: 100vw; }
  article.index h2 { font-size: 1.8rem !important; }
  article.index ul.exhibition { overflow: hidden; display: block; width: 96vw; margin: 0 auto 3vw auto; }
  article.index ul.exhibition li { width: 100%; margin-top: 3vw; }
  article.index ul.exhibition li img { width: 100%; }
  article.index div.infobox div.infoblock { display: block; }
  article.index div.infobox div.openblock { display: block; }
  article.index div.infobox a.info { display: block; color: #990000; }
  article.index div.infobox a.info span { color: #333; text-decoration: none !important; }
  article.index div.infobox strong.info { display: block; color: #990000; font-weight: normal; }
  article.index div.open { border: 1px #990000 solid; color: #990000; text-align: center; display: none; font-size: 1.3rem; }
  article.index div.open strong { font-weight: normal; font-size: 1.6rem; }
  article.index div.open_mobile { display: block; width: 96vw; margin: 0 auto; }
  article.index strong.caltoday { display: none; }
  article.index strong.caltoday_mobile { display: inline-block; width: 100%; padding: 3vw 0 1vw 0; font-size: 1.6rem; color: #990000; text-align: center; font-weight: normal; }
  article.index div.sns { width: 100%; background-color: #DADADA !important; }
  article.index div.twitterbox { background-color: #fff; border: 1px #DADADA solid; overflow: auto; width: 80%; height: 60vw; margin: 0 auto; }
  article.index div.facebook { overflow: hidden; width: 80%; height: 60vw; margin: 5vw auto 0 auto; }
  article.index div.facebook .fb-container { height: 40vw; }
  article.index div.calendarhead { margin-top: 3vw; }
  article.index div.calendarhead div.calheadleft { text-align: left; display: none; font-size: 1.2rem; }
  article.index div.calendarhead div.calheadleft a { margin-right: 0.6vw; }
  article.index div.calendarhead div.calheadcenter { text-align: center; width: 100%; font-size: 1.2rem; }
  article.index div.calendarhead div.calheadcenter strong { font-weight: normal; }
  article.index div.calendarhead div.calheadright { text-align: right; display: none; font-size: 1.2rem; }
  article.index div.calendarhead div.calheadright a { margin-left: 0.6vw; }
  article.index div.calendarhead a.noactive { pointer-events: none; opacity: 0.5; }
  article.index div.calendarbody { width: 96vw; overflow: hidden; margin-top: 3vw; }
  article.index div.calendarbody table.calendar { border-collapse: collapse; background-color: #fff; border: 1px #DADADA solid; box-sizing: border-box; font-size: 0.8rem; }
  article.index div.calendarbody table.calendar tr { display: flex; flex-wrap: nowrap; width: 100%; }
  article.index div.calendarbody table.calendar th { display: flex; align-items: center; font-weight: normal; box-sizing: border-box; border-right: 1px #DADADA solid; color: #990000; width: 14vw; padding: 0.5vw 1vw; font-size: 1.3rem; }
  article.index div.calendarbody table.calendar th:last-child { border-right: none; }
  article.index div.calendarbody table.calendar td { box-sizing: border-box; background-color: #E29F96; width: 14vw; padding: 0.5vw 1vw; }
  article.index div.calendarbody table.calendar td.title { width: 100%; padding: 0 1vw; }
  article.index div.calendarbody table.calendar td.title strong { display: block; width: 100%; border-bottom: 1px #990000 solid; font-weight: normal; text-align: center; padding: 0.5vw 0; font-size: 0.8rem; }
  article.index div.calendarbody table.calendar td.closed { background-color: #fff; }
  article.index div.schedule { margin-top: 2vw; }
  article.index div.schedule a { display: block; border: 1px #990000 solid; text-align: center; padding: 1vw 0; }
  div#xo-event-calendar-1 { display: none; }
  .prevarrow { position: absolute; width: 32px; height: 32px; top: 50%; left: 12px; margin-top: -16px; text-indent: 32px; background: url(../images/controls.png) no-repeat 0 -32px; z-index: 100; opacity: 0.8; overflow: hidden; }
  .nextarrow { position: absolute; width: 32px; height: 32px; top: 50%; right: 12px; margin-top: -16px; text-indent: 32px; background: url(../images/controls.png) no-repeat -43px -32px; z-index: 100; opacity: 0.8; overflow: hidden; }
  .prevarrow:hover { background-position: 0 0; }
  .nextarrow:hover { background-position: -43px 0; } }
@media only screen and (min-width: 801px) { article.index ul.topslide { overflow: hidden; width: 950px; height: 392px; margin: 0 auto; }
  article.index ul.topslide img { width: 950px; }
  article.index h2 { font-size: 2.1rem !important; }
  article.index ul.exhibition { overflow: hidden; flex-wrap: nowrap; justify-content: space-between; width: 950px; margin: 30px auto; }
  article.index ul.exhibition li { width: 460px; }
  article.index ul.exhibition li img { width: 100%; }
  article.index div.infobox { display: flex; flex-wrap: nowrap; justify-content: space-between; }
  article.index div.infobox div.infoblock { display: block; width: 560px; }
  article.index div.infobox div.openblock { display: block; width: 360px; }
  article.index div.infobox a.info { display: block; color: #990000; margin-bottom: 20px; font-size: 1.8rem; text-decoration: underline; }
  article.index div.infobox a.info span { color: #333; text-decoration: none !important; font-size: 1.4rem; }
  article.index div.infobox strong.info { display: block; color: #990000; font-weight: normal; margin-bottom: 20px; font-size: 1.8rem; }
  article.index div.open { border: 1px #990000 solid; color: #990000; text-align: center; display: block; padding: 10px; font-size: 1.5rem; }
  article.index div.open strong { font-weight: normal; font-size: 1.8rem; }
  article.index div.open_mobile { display: none; }
  article.index strong.caltoday { display: inline-block; width: 100%; padding-bottom: 10px; font-size: 1.8rem; color: #990000; text-align: center; font-weight: normal; }
  article.index strong.caltoday_mobile { display: none; }
  article.index div.sns { display: flex; flex-wrap: nowrap; justify-content: space-between; }
  article.index div.twitterbox { background-color: #fff; border: 1px #DADADA solid; overflow: auto; width: 460px; height: 500px; }
  article.index div.facebook { overflow: hidden; width: 460px; height: 500px; }
  article.index div.facebook .fb-container { width: 460px; height: 500px; }
  article.index div.calendarhead { display: flex; flex-wrap: nowrap; align-items: baseline; justify-content: space-between; margin-top: 40px; }
  article.index div.calendarhead div.calheadleft { text-align: left; font-size: 1.6rem; }
  article.index div.calendarhead div.calheadleft a { margin-right: 20px; }
  article.index div.calendarhead div.calheadcenter { text-align: center; font-size: 1.6rem; }
  article.index div.calendarhead div.calheadcenter strong { font-weight: normal; }
  article.index div.calendarhead div.calheadright { text-align: right; font-size: 1.6rem; }
  article.index div.calendarhead div.calheadright a { margin-left: 20px; }
  article.index div.calendarhead a.noactive { pointer-events: none; opacity: 0.5; }
  article.index div.calendarbody { width: 950px; overflow: hidden; margin-top: 30px; }
  article.index div.calendarbody table.calendar { border-collapse: collapse; background-color: #fff; border: 1px #DADADA solid; box-sizing: border-box; width: 947px; margin: 0 auto; font-size: 1.3rem; }
  article.index div.calendarbody table.calendar tr { display: flex; flex-wrap: nowrap; width: 100%; }
  article.index div.calendarbody table.calendar th { display: flex; align-items: center; font-weight: normal; box-sizing: border-box; border-right: 1px #DADADA solid; color: #990000; width: 135px; padding: 10px; font-size: 1.6rem; }
  article.index div.calendarbody table.calendar th:last-child { border-right: none; }
  article.index div.calendarbody table.calendar td { box-sizing: border-box; background-color: #E29F96; width: 135px; padding: 10px; }
  article.index div.calendarbody table.calendar td.title { width: 100%; padding: 0 10px; }
  article.index div.calendarbody table.calendar td.title strong { display: block; width: 100%; border-bottom: 1px #990000 solid; font-weight: normal; text-align: center; padding: 10px 0; font-size: 1.3rem; }
  article.index div.calendarbody table.calendar td.closed { background-color: #fff; }
  article.index div.schedule { margin-top: 20px; }
  article.index div.schedule a { display: block; border: 1px #990000 solid; text-align: center; padding: 10px 0; }
  .prevarrow { position: absolute; width: 32px; height: 32px; top: 50%; left: 12px; margin-top: -16px; text-indent: 32px; background: url(../images/controls.png) no-repeat 0 -32px; z-index: 100; opacity: 0.8; overflow: hidden; }
  .nextarrow { position: absolute; width: 32px; height: 32px; top: 50%; right: 12px; margin-top: -16px; text-indent: 32px; background: url(../images/controls.png) no-repeat -43px -32px; z-index: 100; opacity: 0.8; overflow: hidden; }
  .prevarrow:hover { background-position: 0 0; }
  .nextarrow:hover { background-position: -43px 0; } }
