/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

.container, .main__article__section__content, .topview__header {
  width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 1180px) {
  .container, .main__article__section__content, .topview__header {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.program, .contact, .footer__caution__paragraph {
  width: 950px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 1180px) {
  .program, .contact, .footer__caution__paragraph {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.schedule__list:before, .intro__vr:before, .program__list:before, .schedule__list:after, .intro__vr:after, .program__list:after {
  content: ' ';
  display: table;
}

.schedule__list:after, .intro__vr:after, .program__list:after {
  clear: both;
}

.section-header {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 19.5px;
  padding-bottom: 19.5px;
  background-blend-mode: multiply;
  color: #fff;
  text-align: center;
  background-color: #ef6a00;
  font-size: 2.0em;
}

@media screen and (max-width: 640px) {
  .section-header {
    font-size: 1.0em;
    padding-left: 5px;
    padding-right: 5px;
  }
}

.section-subheader {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 19.5px;
  padding-bottom: 19.5px;
  background-blend-mode: multiply;
  color: #fff;
  text-align: center;
  background-color: #5a8099;
  font-size: 2.1875em;
}

@media screen and (max-width: 640px) {
  .section-subheader {
    font-size: 1.2em;
    padding-left: 5px;
    padding-right: 5px;
  }
}

.paragraph {
  margin-top: 0;
  margin-bottom: 0;
  font-size: .9375em;
  line-height: 30px;
}

@media screen and (max-width: 640px) {
  .paragraph {
    font-size: .8em;
  }
}

.paragraph.is-title {
  margin-bottom: 30px;
  font-weight: bold;
  font-size: 1.5625em;
}

@media screen and (max-width: 640px) {
  .paragraph.is-title {
    font-size: 1.0em;
    margin-bottom: 10px;
  }
}

.u-center {
  text-align: center;
}

.u-mt0 {
  margin-top: 0px;
}

.u-mb0 {
  margin-bottom: 0px;
}

.u-ml0 {
  margin-left: 0px;
}

.u-mr0 {
  margin-right: 0px;
}

.u-pt0 {
  padding-top: 0px;
}

.u-pb0 {
  padding-bottom: 0px;
}

.u-pl0 {
  padding-left: 0px;
}

.u-pr0 {
  padding-right: 0px;
}

.u-mt5 {
  margin-top: 5px;
}

.u-mb5 {
  margin-bottom: 5px;
}

.u-ml5 {
  margin-left: 5px;
}

.u-mr5 {
  margin-right: 5px;
}

.u-pt5 {
  padding-top: 5px;
}

.u-pb5 {
  padding-bottom: 5px;
}

.u-pl5 {
  padding-left: 5px;
}

.u-pr5 {
  padding-right: 5px;
}

.u-mt10 {
  margin-top: 10px;
}

.u-mb10 {
  margin-bottom: 10px;
}

.u-ml10 {
  margin-left: 10px;
}

.u-mr10 {
  margin-right: 10px;
}

.u-pt10 {
  padding-top: 10px;
}

.u-pb10 {
  padding-bottom: 10px;
}

.u-pl10 {
  padding-left: 10px;
}

.u-pr10 {
  padding-right: 10px;
}

.u-mt15 {
  margin-top: 15px;
}

.u-mb15 {
  margin-bottom: 15px;
}

.u-ml15 {
  margin-left: 15px;
}

.u-mr15 {
  margin-right: 15px;
}

.u-pt15 {
  padding-top: 15px;
}

.u-pb15 {
  padding-bottom: 15px;
}

.u-pl15 {
  padding-left: 15px;
}

.u-pr15 {
  padding-right: 15px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mb20 {
  margin-bottom: 20px;
}

.u-ml20 {
  margin-left: 20px;
}

.u-mr20 {
  margin-right: 20px;
}

.u-pt20 {
  padding-top: 20px;
}

.u-pb20 {
  padding-bottom: 20px;
}

.u-pl20 {
  padding-left: 20px;
}

.u-pr20 {
  padding-right: 20px;
}

.u-mt25 {
  margin-top: 25px;
}

.u-mb25 {
  margin-bottom: 25px;
}

.u-ml25 {
  margin-left: 25px;
}

.u-mr25 {
  margin-right: 25px;
}

.u-pt25 {
  padding-top: 25px;
}

.u-pb25 {
  padding-bottom: 25px;
}

.u-pl25 {
  padding-left: 25px;
}

.u-pr25 {
  padding-right: 25px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mb30 {
  margin-bottom: 30px;
}

.u-ml30 {
  margin-left: 30px;
}

.u-mr30 {
  margin-right: 30px;
}

.u-pt30 {
  padding-top: 30px;
}

.u-pb30 {
  padding-bottom: 30px;
}

.u-pl30 {
  padding-left: 30px;
}

.u-pr30 {
  padding-right: 30px;
}

.u-mt35 {
  margin-top: 35px;
}

.u-mb35 {
  margin-bottom: 35px;
}

.u-ml35 {
  margin-left: 35px;
}

.u-mr35 {
  margin-right: 35px;
}

.u-pt35 {
  padding-top: 35px;
}

.u-pb35 {
  padding-bottom: 35px;
}

.u-pl35 {
  padding-left: 35px;
}

.u-pr35 {
  padding-right: 35px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mb40 {
  margin-bottom: 40px;
}

.u-ml40 {
  margin-left: 40px;
}

.u-mr40 {
  margin-right: 40px;
}

.u-pt40 {
  padding-top: 40px;
}

.u-pb40 {
  padding-bottom: 40px;
}

.u-pl40 {
  padding-left: 40px;
}

.u-pr40 {
  padding-right: 40px;
}

.u-mt45 {
  margin-top: 45px;
}

.u-mb45 {
  margin-bottom: 45px;
}

.u-ml45 {
  margin-left: 45px;
}

.u-mr45 {
  margin-right: 45px;
}

.u-pt45 {
  padding-top: 45px;
}

.u-pb45 {
  padding-bottom: 45px;
}

.u-pl45 {
  padding-left: 45px;
}

.u-pr45 {
  padding-right: 45px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mb50 {
  margin-bottom: 50px;
}

.u-ml50 {
  margin-left: 50px;
}

.u-mr50 {
  margin-right: 50px;
}

.u-pt50 {
  padding-top: 50px;
}

.u-pb50 {
  padding-bottom: 50px;
}

.u-pl50 {
  padding-left: 50px;
}

.u-pr50 {
  padding-right: 50px;
}

.u-table {
  display: table;
  width: 100%;
}

.u-table.is-fixed {
  table-layout: fixed;
}

.u-table.is-half {
  table-layout: fixed;
}

.u-table-cell {
  vertical-align: middle;
  display: table-cell;
}

.u-table-left, .u-table-right {
  vertical-align: middle;
  display: table-cell;
}

.is-half .u-table-left, .is-half .u-table-right {
  width: 49%;
}

.u-table-left.is-w0, .u-table-right.is-w0 {
  width: 0%;
}

.u-table-left.is-w5, .u-table-right.is-w5 {
  width: 5%;
}

.u-table-left.is-w10, .u-table-right.is-w10 {
  width: 10%;
}

.u-table-left.is-w15, .u-table-right.is-w15 {
  width: 15%;
}

.u-table-left.is-w20, .u-table-right.is-w20 {
  width: 20%;
}

.u-table-left.is-w25, .u-table-right.is-w25 {
  width: 25%;
}

.u-table-left.is-w30, .u-table-right.is-w30 {
  width: 30%;
}

.u-table-left.is-w35, .u-table-right.is-w35 {
  width: 35%;
}

.u-table-left.is-w40, .u-table-right.is-w40 {
  width: 40%;
}

.u-table-left.is-w45, .u-table-right.is-w45 {
  width: 45%;
}

.u-table-left.is-w50, .u-table-right.is-w50 {
  width: 50%;
}

.u-table-left.is-w55, .u-table-right.is-w55 {
  width: 55%;
}

.u-table-left.is-w60, .u-table-right.is-w60 {
  width: 60%;
}

.u-table-left.is-w65, .u-table-right.is-w65 {
  width: 65%;
}

.u-table-left.is-w70, .u-table-right.is-w70 {
  width: 70%;
}

.u-table-left.is-w75, .u-table-right.is-w75 {
  width: 75%;
}

.u-table-left.is-w80, .u-table-right.is-w80 {
  width: 80%;
}

.u-table-left.is-w85, .u-table-right.is-w85 {
  width: 85%;
}

.u-table-left.is-w90, .u-table-right.is-w90 {
  width: 90%;
}

.u-table-left.is-w95, .u-table-right.is-w95 {
  width: 95%;
}

.u-table-left.is-w100, .u-table-right.is-w100 {
  width: 100%;
}

.is-half .u-table-left {
  padding-right: 1%;
}

.is-half .u-table-right {
  padding-left: 1%;
}

@media screen and (max-width: 640px) {
  .is-laptop {
    display: none !important;
  }
}

.is-smartphone {
  display: none !important;
}

@media screen and (max-width: 640px) {
  .is-smartphone {
    display: inherit !important;
  }
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  height: 100%;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

img {
  vertical-align: middle;
  -webkit-touch-callout: none;
}

ol, ul, li {
  list-style: none;
}

span, i {
  display: inline-block;
  font-style: normal;
}

input, button, textarea {
  margin: 0;
  padding: 0;
  outline: none;
  border: none;
  background-color: inherit;
  color: inherit;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #eee inset;
}

.container {
  overflow: hidden;
}

@media screen and (max-width: 1180px) {
  .container {
    width: 100%;
  }
}

.main__article__section__content {
  padding-left: 50px;
  padding-right: 50px;
  padding-top: 50px;
  padding-bottom: 50px;
}

@media screen and (max-width: 640px) {
  .main__article__section__content {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .main__article__section__content img {
    max-width: 100%;
  }
}

.response-device {
  display: table;
  width: 100%;
  text-align: center;
}

.response-device__btn {
  display: table-cell;
  vertical-align: bottom;
}

.schedule__list {
  overflow: hidden;
  width: 1126px;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
}

@media screen and (max-width: 1180px) {
  .schedule__list {
    width: 100%;
  }
}

@media screen and (max-width: 640px) {
  .schedule__list {
    width: 100%;
  }
}

.schedule__list__item {
  width: 517px;
  float: left;
  margin-right: 46px;
  margin-bottom: 46px;
  height: 220px;
  background-color: #fff;
}

@media screen and (max-width: 1180px) {
  .schedule__list__item {
    width: 48%;
    margin-right: 0;
  }
  .schedule__list__item:nth-child(2n) {
    float: right;
  }
}

@media screen and (max-width: 640px) {
  .schedule__list__item {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
}

.schedule__list__item2 {
  width: 517px;
  float: left;
  margin-right: 46px;
  margin-bottom: 46px;
  height: 218px;
  background-color: #fff;
}

@media screen and (max-width: 1180px) {
  .schedule__list__item2 {
    width: 48%;
    margin-right: 0;
  }
  .schedule__list__item2:nth-child(2n) {
    float: right;
  }
}

@media screen and (max-width: 640px) {
  .schedule__list__item2 {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
}

.schedule__list__item__title {
  padding: 5px 10px;
  margin-top: 0;
  margin-bottom: 0;
  background-color: #5a8099;
  color: #fff;
  font-size: 1.75em;
}

@media screen and (max-width: 1180px) {
  .schedule__list__item__title {
    font-size: 1.5em;
  }
}

@media screen and (max-width: 640px) {
  .schedule__list__item__title {
    font-size: 1.2em;
  }
}

.schedule__list__item__caption {
  padding: 10px;
}

.schedule__list__item__place {
  margin-top: 0;
  margin-bottom: 0;
  color: #5a8099;
  font-size: 1.25em;
}

@media screen and (max-width: 1180px) {
  .schedule__list__item__place {
    font-size: 1.0em;
  }
}

@media screen and (max-width: 860px) {
  .schedule__list__item__place {
    font-size: .9em;
  }
}

@media screen and (max-width: 640px) {
  .schedule__list__item__place {
    font-size: .8em;
  }
}

.schedule__list__item__address {
  margin-top: 0;
  margin-bottom: 0;
  font-size: .8125em;
}

@media screen and (max-width: 640px) {
  .schedule__list__item__address {
    font-size: .6em;
    margin-bottom: 10px;
  }
}

.intro {
  padding-top: 50px;
}

.intro__special-sponsor {
  padding-right: 1%;
}

.intro__special-sponsor__title {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 2.0em;
  font-size: 1.5625em;
  border-bottom: 1px solid #000;
}

@media screen and (max-width: 640px) {
  .intro__special-sponsor__title {
    font-size: 1.0em;
  }
}

.intro__special-sponsor__content {
  display: table;
  width: 100%;
  table-layout: fixed;
  padding-top: 45px;
  padding-bottom: 45px;
}

@media screen and (max-width: 640px) {
  .intro__special-sponsor__content {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.intro__special-sponsor__content__item {
  display: table-cell;
}

.intro__special-sponsor__content__item:first-child {
  text-align: right;
  padding-right: 30px;
}

@media screen and (max-width: 640px) {
  .intro__special-sponsor__content__item:first-child {
    padding-right: 0;
    text-align: center;
    width: 65%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.intro__special-sponsor__content__item:last-child {
  text-align: center;
  padding-left: 60px;
}

@media screen and (max-width: 640px) {
  .intro__special-sponsor__content__item:last-child {
    padding-left: 0;
    text-align: center;
    width: 35%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media screen and (max-width: 640px) {
  .intro__special-sponsor__content__item {
    padding-left: 10px;
    padding-right: 10px;
  }
  .intro__special-sponsor__content__item + .intro__special-sponsor__content__item {
    margin-top: 10px;
  }
}

.intro__vr {
  padding-left: 1%;
  padding: 10px;
  border: 1px solid #4bc1e1;
  position: relative;
}

.intro__vr::before {
  float: right;
  content: '';
  background-image: url("../images/intro-vr-thumbnail.jpg");
  background-repeat: no-repeat;
  display: block;
  margin-left: 17px;
  width: 329px;
  height: 144px;
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .intro__vr::before {
    background-image: url("../images/intro-vr-thumbnail@2x.jpg");
    background-size: 329px 144px;
  }
}

@media screen and (max-width: 860px) {
  .intro__vr::before {
    content: none;
  }
}

@media screen and (max-width: 860px) {
  .intro__vr::after {
    content: '';
    background-image: url("../images/intro-vr-thumbnail.jpg");
    background-repeat: no-repeat;
    display: block;
    width: 324px;
    height: 144px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .intro__vr::after {
    background-image: url("../images/intro-vr-thumbnail@2x.jpg");
    background-size: 100%;
  }
}

@media screen and (max-width: 480px) {
  .intro__vr::after {
    width: 100%;
    height: auto;
    padding-top: 43.769%;
  }
}

.intro__vr__title {
  background-image: url("../images/icon-light-bulb-blue.png");
  background-repeat: no-repeat;
  background-position: 0 50%;
  margin-top: 0;
  margin-bottom: 0;
  color: #4bc1e1;
  font-size: 1.4375em;
  line-height: 2.4375em;
  font-weight: bold;
  padding-left: 55px;
}

@media screen and (max-width: 640px) {
  .intro__vr__title {
    font-size: 1.1em;
    line-height: normal;
    margin-bottom: 10px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .intro__vr__title {
    background-image: url("../images/icon-light-bulb-blue@2x.png");
    background-size: 50px;
  }
}

.intro__solution {
  margin-top: 33px;
  padding-left: 1%;
  padding: 10px;
  border: 1px solid #ea6cb0;
}

@media screen and (max-width: 860px) {
  .intro__solution {
    margin-top: 20px;
  }
}

.intro__solution__title {
  background-image: url("../images/icon-light-bulb.png");
  background-repeat: no-repeat;
  background-position: 0 50%;
  margin-top: 0;
  margin-bottom: 0;
  color: #ea6cb0;
  font-size: 1.4375em;
  line-height: 2.4375em;
  font-weight: bold;
  padding-left: 55px;
}

@media screen and (max-width: 640px) {
  .intro__solution__title {
    font-size: 1.1em;
    line-height: normal;
    margin-bottom: 10px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .intro__solution__title {
    background-image: url("../images/icon-light-bulb@2x.png");
    background-size: 50px;
  }
}

.program {
  margin-top: 20px;
}

.program__list {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.program__list__item {
  display: table;
  width: 100%;
  background-color: #f4f4f4;
}

.program__list__item:nth-child(2n) {
  background-color: #e5e5e6;
}

.program__list__item.is-pickup {
  color: #fff;
  background-color: #1080c0;
}

.program__list__item.is-pickup2 {
  color: #fff;
  background-color: #54bfe4;
}

.program__list__item.is-pickup + .program__list__item.is-pickup {
  border-top: solid 1px #f7b885;
}

.program__list__item__title, .program__list__item__desc {
  vertical-align: middle;
  display: table-cell;
  padding-top: 12.5px;
  padding-bottom: 12.5px;
  padding-left: 12.5px;
  padding-right: 12.5px;
  line-height: 1.25em;
  font-size: .9375em;
}

@media screen and (max-width: 640px) {
  .program__list__item__title, .program__list__item__desc {
    font-size: .8em;
  }
}

.program__list__item__title {
  width: 15%;
}

.program__list__item__title.is-pickup {
  color: #fff;
}

@media screen and (max-width: 640px) {
  .program__list__item__title {
    width: 40%;
  }
}

.program__list__item__desc {
  margin-left: 0;
}

.program__attention {
  text-align: right;
  font-size: 0.75em;
}

@media screen and (max-width: 640px) {
  .program__attention {
    text-align: left;
  }
}

.program__lottery {
  background-color: #4bc1e1;
}

.program__lottery__title, .program__lottery__caption {
  padding: 10px;
  margin-top: 0;
  margin-bottom: 0;
  color: #fff;
}

.program__lottery__title {
  background-color: #ef6a00;
  font-size: 1.5625em;
}

@media screen and (max-width: 640px) {
  .program__lottery__title {
    font-size: 1.2em;
  }
}

.program__lottery__caption {
  position: relative;
  padding-right: 290px;
  font-size: 1.125em;
}

@media screen and (max-width: 640px) {
  .program__lottery__caption {
    padding: 10px;
    font-size: .9em;
  }
}

.program__lottery__caption::after {
  content: '';
  background-image: url("../images/program_lottery.png");
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 290px;
  height: 140px;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 640px) {
  .program__lottery__caption::after {
    position: static;
    height: auto;
    width: 100%;
    right: auto;
    bottom: auto;
    background-image: url("../images/program_lottery.png");
    background-size: 100%;
    padding-top: calc(100% * (140 / 290));
  }
}

.program__caution {
  background-image: url("../images/icon-car.png");
  background-repeat: no-repeat;
  background-position: 20px 50%;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 140px;
  padding-right: 20px;
  margin-bottom: 0;
  background-color: #f4f4f4;
  font-size: .9375em;
  line-height: 1.875em;
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .program__caution {
    background-image: url("../images/icon-car@2x.png");
    background-size: 91px 42px;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 640px) {
  .program__caution {
    background-size: 45.5px 21px;
  }
}

@media screen and (max-width: 640px) {
  .program__caution {
    background-size: 45.5px 21px;
    padding-left: 75px;
    font-size: .6em;
  }
}

.contact__title {
  background-color: #ef6a00;
  color: #fff;
  font-weight: bold;
  font-size: 1.25em;
  padding: 5px;
  margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
  .contact__title {
    font-size: .9em;
  }
}

.contact__content {
  display: table;
  width: 100%;
}

.contact__box {
  padding: 5px 10px;
}

@media screen and (max-width: 640px) {
  .contact__box {
    font-size: .9em;
  }
}

.contact__box.is-collapse {
  padding: 0;
}

.contact__box.is-cell {
  display: table-cell;
  vertical-align: middle;
}

.contact__box.is-cell + .contact__box.is-cell {
  padding-left: 10px;
}

@media screen and (max-width: 640px) {
  .contact__box.is-cell {
    display: block;
  }
  .contact__box.is-cell + .contact__box.is-cell {
    margin-top: 10px;
    padding-left: 0;
  }
}

.contact__box.is-gray {
  background-color: #ebebeb;
}

.contact__box.is-label {
  width: 100px;
  text-align: center;
}

.contact__box.is-center {
  text-align: center;
}

.contact__box.is-blue {
  background-color: #ef6a00;
  color: #fff;
}

.contact__paragraph {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.125em;
  line-height: 1.875em;
}

@media screen and (max-width: 640px) {
  .contact__paragraph {
    font-size: .9em;
  }
}

.contact__brands {
  margin-top: 30px;
  display: table;
  width: 100%;
}

.contact__brands__item {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}

.contact__brands__item img {
  max-width: 100%;
}

@media screen and (max-width: 860px) {
  .contact__brands__item {
    display: block;
    padding: 5px;
  }
}

@media screen and (max-width: 640px) {
  .contact__brands__item.is-windows-server img {
    width: 80%;
  }
  .contact__brands__item.is-windows10 img {
    width: 100%;
  }
  .contact__brands__item div {
    padding: 5px;
  }
  .contact__brands__item + .contact__brands__item {
    margin-top: 10px;
  }
}

.topview {
  background-image: url("../images/bg-topview.png");
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (-webkit-min-device-pixel-ratio: 2) {
  .topview {
    background-image: url("../images/bg-topview@2x.png");
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 640px) {
  .topview {
    background-image: url("../images/bg-topview-sp@2x.png");
  }
}

@media screen and (max-width: 640px) {
  .topview {
    padding-bottom: 30px;
    background-image: url("../images/bg-topview-sp.png");
  }
}

@media screen and (max-width: 640px) {
  .topview__header {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 640px) {
  .topview__header__brand {
    max-width: 30%;
  }
  .topview__header__brand img {
    width: 100%;
  }
}

.topview__caption {
  font-size: 1.625em;
  color: #fff;
  margin-bottom: 0;
}

@media screen and (max-width: 972px) {
  .topview__caption {
    font-size: 1.5em;
  }
}

@media screen and (max-width: 640px) {
  .topview__caption {
    margin-top: 80px;
    font-size: 1.2em;
  }
}

@media screen and (max-width: 480px) {
  .topview__caption {
    font-size: 1.0em;
  }
}

.topview__headline {
  margin-top: 0;
  margin-bottom: 0;
}

@media screen and (max-width: 972px) {
  .topview__headline {
    padding-left: 10px;
    padding-right: 10px;
  }
  .topview__headline img {
    width: 100%;
  }
}

@media screen and (max-width: 640px) {
  .topview__headline {
    margin-top: 0px;
    margin-bottom: 60px;
  }
}

.footer__caution {
  background-color: #ebebeb;
  padding-top: 50px;
  padding-bottom: 50px;
}

.footer__caution__paragraph {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 10px;
  line-height: 20px;
  color: #333333;
  text-align: justify;
  letter-spacing: 0;
}

@media screen and (max-width: 640px) {
  .footer__caution {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.footer__copyright {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
  color: #fff;
  font-size: .875em;
  background-color: #5a8099;
}

@media screen and (max-width: 640px) {
  .footer__copyright {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
/*----------------------------
PC SP改行
----------------------------*/
@media screen and (min-width: 640px){ 
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 640px){ 
  .br-pc { display:none; }
  .br-sp { display:block; }
}

/*----------------------------
info_0925
----------------------------*/

.info_0925{
  border:medium solid #ef6a00;
  padding: 50px;
  margin-bottom: 80px;
}
.title_0925{
  margin-bottom: 30px;
  font-weight: bold;
  font-size: 1.5625em;
  text-align: center;
  margin-top: 0;
}
.txt_0925{
  margin-top: 0;
  margin-bottom: 0;
  font-size: .9375em;
  line-height: 30px;
  text-align: center;
}
@media screen and (max-width: 640px) {
.info_0925{
  padding: 30px 20px;
  margin-top: 30px;
  margin-bottom: 60px;
}
.title_0925{
  font-size: 1.0em;
  margin-bottom: 15px;
  }
.txt_0925{
  font-size: .8em;
}
}


.schedule__list__item__caution{
  margin-top: 10px;
  margin-bottom: 0;
  text-align: center;
  color: #666666;
}
.schedule__list__item__title.list_title_0925{
  background: #888888;
}
.schedule__list__item{
  height: 240px!important;
}
.schedule__list__item__place.place_0925{
  color: #666666;
}
@media screen and (max-width: 640px) {
.schedule__list__item__caution{
  font-size: .7em;
    margin-bottom: 10px;
  }
.schedule__list__item{
  height: auto!important;
}
}
