@charset "UTF-8";
/* =======================================================================
　normalize
======================================================================= */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* =======================================================================
リセット
======================================================================= */
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, figure {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}

ol, ul {
  list-style: none;
}

i {
  font-style: normal;
}

label {
  cursor: pointer;
}

th, td {
  vertical-align: middle;
}

th {
  font-weight: normal;
  text-align: left;
}

a {
  color: #000000;
  text-decoration: none;
  outline: none;
}
a:hover {
  text-decoration: underline;
}

em {
  font-weight: bold;
  font-style: normal;
}

figcaption {
  line-height: normal;
}

button,
input[type="reset"],
input[type="submit"] {
  display: inline-block;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: none;
  outline: none;
  vertical-align: top;
  margin: 0;
  padding: 0;
}

hr {
  margin: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* =======================================================================
モジュール
======================================================================= */
@media screen and (min-width: 992px), print {
  .mod-sp-only {
    display: none !important;
  }
}
.mod-img-fit {
  width: 100%;
}

.mod-radius,
.mod-img-radius {
  border-radius: .25rem;
}

.mod-align-l {
  text-align: left;
}

.mod-align-c {
  text-align: center;
}

.mod-align-r {
  text-align: right;
}

.mod-hr {
  border: 0;
  height: 2px;
  background-color: #cccccc;
}

.mod-text-xl {
  font-size: 1.25rem;
  line-height: 1.5;
}

.mod-text-l {
  font-size: 1.125rem;
  line-height: 1.5;
}

.mod-text-m {
  font-size: 1rem;
  line-height: 1.75;
  text-align: justify;
  text-align-last: left;
}

.mod-text-s {
  font-size: 0.875rem;
  line-height: 1.75;
}

.mod-text-xs {
  font-size: 0.75rem;
  line-height: 1.3;
}

.mod-text-2xs {
  font-size: 0.625rem;
  line-height: 1.3;
}

.mod-text-link {
  color: #e21c14;
}

.mod-text-line {
  display: inline-block;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(60%, rgba(0, 0, 0, 0)), color-stop(60%, #ffcecc), to(#ffcecc));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 60%, #ffcecc 60%, #ffcecc 100%);
}

.mod-font-b {
  font-weight: 700;
}

.mod-list-line {
  position: relative;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.mod-list-line > * {
  position: relative;
  padding-left: 1.5rem;
}
.mod-list-line > *:before {
  position: absolute;
  left: 0.125rem;
  top: 0.875rem;
  content: "";
  width: .75rem;
  height: 2px;
  border-radius: 1px;
  background-color: #000000;
}

.mod-list-decimal {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin-left: 1.5rem;
  list-style: decimal;
}

.mod-inner {
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5rem;
  padding-right: 5rem;
}

.mod-inner-s {
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
}

.mod-inner-m {
  max-width: 62rem;
  margin-left: auto;
  margin-right: auto;
}

.mod-indent {
  margin-left: 5rem;
  margin-right: 5rem;
}

.letter-spacing-s {
  letter-spacing: -0.25rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .mod-inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .mod-indent {
    margin-left: 2.5rem;
    margin-right: 2.5rem;
  }
}
.mod-bg-wh {
  background-color: #ffffff;
}

.mod-bg-be {
  background-color: #f9f4e8;
}

.mod-bg-gy {
  background-color: #eeeeee;
}

.mod-bor {
  border: solid 0.5rem #fff0f0;
}

.mod-p-2xs {
  padding: 0.25rem;
}

.mod-p-xs {
  padding: 0.5rem;
}

.mod-p-s {
  padding: 1.0rem;
}

.mod-p {
  padding: 1.875rem;
}

.mod-p-l {
  padding: 2.75rem;
}

.mod-p-xl {
  padding: 3.75rem;
}

.mod-p-2xl {
  padding: 5rem;
}

.mod-pt-2xs {
  padding-top: 0.25rem;
}

.mod-pt-xs {
  padding-top: 0.5rem;
}

.mod-pt-s {
  padding-top: 1.0rem;
}

.mod-pt {
  padding-top: 1.875rem;
}

.mod-pt-l {
  padding-top: 2.75rem;
}

.mod-pt-xl {
  padding-top: 3.75rem;
}

.mod-pt-2xl {
  padding-top: 5rem;
}

.mod-pb-2xs {
  padding-bottom: 0.25rem;
}

.mod-pb-xs {
  padding-bottom: 0.5rem;
}

.mod-pb-s {
  padding-bottom: 1.0rem;
}

.mod-pb {
  padding-bottom: 1.875rem;
}

.mod-pb-l {
  padding-bottom: 2.75rem;
}

.mod-pb-xl {
  padding-bottom: 3.75rem;
}

.mod-pb-2xl {
  padding-bottom: 5rem;
}

.mod-mt-2xs {
  margin-top: 0.25rem;
}

.mod-mt-xs {
  margin-top: 0.5rem;
}

.mod-mt-s {
  margin-top: 1.0rem;
}

.mod-mt {
  margin-top: 1.875rem;
}

.mod-mt-l {
  margin-top: 2.75rem;
}

.mod-mt-xl {
  margin-top: 3.75rem;
}

.mod-mt-2xl {
  margin-top: 5rem;
}

.mod-mb-2xs {
  margin-bottom: 0.25rem;
}

.mod-mb-xs {
  margin-bottom: 0.5rem;
}

.mod-mb-s {
  margin-bottom: 1.0rem;
}

.mod-mb {
  margin-bottom: 1.875rem;
}

.mod-mb-l {
  margin-bottom: 2.75rem;
}

.mod-mb-xl {
  margin-bottom: 3.75rem;
}

.mod-mb-2xl {
  margin-bottom: 5rem;
}

.mod-btn,
aform_btn_confirm_2{
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 3rem;
  padding: 0.625rem 1rem;
  font-weight: 700;
  border: solid 0.25rem #cccccc;
  color: #e21c14;
  background-color: #ffffff;
  border-radius: 0.25rem;
  font-size: 1.0rem;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-btn:hover,
aform_btn_confirm_2:hover {
  background-color: #e21c14;
  border-color: #e21c14;
  color: #ffffff;
  text-decoration: none;
}
.mod-btn--s {
  font-size: 0.75rem;
  height: 2.5rem;
}
.mod-btn--default {
  width: 22rem;
}
.mod-btn--center {
  margin-left: auto;
  margin-right: auto;
}

.mod-icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: .5rem;
  background-size: auto 100%;
}
.mod-icon--newwin {
  margin-right: 0;
  margin-left: 0.5rem;
  width: 1.125rem;
  height: 0.875rem;
  background-image: url(../images/common/icon-newwin.png);
}
.mod-icon--pdf {
  width: 1.125rem;
  height: 1.5rem;
  background-image: url(../images/common/icon-pdf.png);
}
.mod-icon--ar {
  width: 1.375rem;
  height: 1.375rem;
  background-image: url(../images/common/icon-ar.png);
}

/* image */
.mod-image-16x9 {
  position: relative;
  overflow: hidden;
  background-color: #eeeeee;
  padding-bottom: calc(9 / 16 * 100%);
}
.mod-image-16x9 img {
  position: absolute;
  height: 100%;
  width: auto;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

/* col */
.mod-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: -2rem;
}
.mod-col__item {
  max-width: calc(75% - 2rem);
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
  margin-left: 2rem;
}

.mod-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -2rem;
  margin-bottom: -2rem;
}
.mod-flex--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-flex--between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mod-flex--align-c {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-flex--align-t {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.mod-flex--align-b {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.mod-flex__item {
  margin-left: 2rem;
  margin-bottom: 2rem;
}
.mod-flex--c2 > .mod-flex__item {
  width: calc(100% / 2 - 2rem);
}
.mod-flex--c3 > .mod-flex__item {
  width: calc(100% / 3 - 2rem);
}
.mod-flex--c4 > .mod-flex__item {
  width: calc(100% / 4 - 2rem);
}
.mod-flex--c5 > .mod-flex__item {
  width: calc(100% / 5 - 2rem);
}

.mod-definition-col {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.mod-definition-col__title {
  border-top: solid 0.125rem #999999;
  width: 14rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 2rem;
  padding-top: .75rem;
}
.mod-definition-col__content {
  padding-top: .75rem;
  border-top: solid 0.125rem #999999;
  width: calc(100% - 16rem);
}

/* movie */
.mod-movie-frame {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.mod-movie-frame iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

/* tbl */
.mod-table {
  width: 100%;
  table-layout: fixed;
}
.mod-table th {
  background-color: #f9f4e8;
}
.mod-table th, .mod-table td {
  border: solid 0.125rem #cccccc;
  padding: 0.5rem;
  vertical-align: top;
}
.mod-table th.bg-light, .mod-table td.bg-light {
  background-color: #faebeb;
}
.mod-table th.bg-deep, .mod-table td.bg-deep {
  background-color: #ff9c99;
}

.overflow-table {
  overflow: auto;
}

@media screen and (max-width: 991px), print {
  .overflow-table table {
    width: 200%;
  }
}

/* title */
.mod-page-title {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 2.25rem;
}

.mod-line-title {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  background-color: #eeeeee;
  font-weight: 700;
  font-size: 1.5rem;
  border-radius: .25rem;
  overflow: hidden;
  border-left: solid 0.25rem #e21c14;
  padding: .5rem 1rem;
}

.mod-icon-title {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  position: relative;
  padding-left: 1.5rem;
  font-weight: 700;
  font-size: 1.5rem;
}
.mod-icon-title:before {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  border: solid 0.375rem #000000;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0.375rem;
}

.mod-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-weight: 700;
  font-size: 2rem;
}
.mod-tel .icon {
  width: 1.5rem;
  height: 1.75rem;
  background-size: 100%;
  margin-right: .5rem;
  background-image: url(../images/common/icon-tel.png);
}

/* nav */
.mod-page-nav {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-color: #f9f4e8;
  border-radius: .25rem;
  padding: 1rem;
  font-size: 1rem;
}
.mod-page-nav:before {
  content: "";
  width: calc(100% - 2rem);
  height: 0.125rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #e21c14;
}
.mod-page-nav__item + .mod-page-nav__item {
  margin-left: 1rem;
}
.mod-page-nav__item a {
  position: relative;
  padding-left: 1.625rem;
}
.mod-page-nav__item a:before {
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  background-size: 100%;
  background-image: url(../images/common/icon-ar2.png);
}

/* faq */
.mod-faq-list {
  border-top: solid 0.125rem #eeeeee;
}
.mod-faq-list-item {
  border-bottom: solid 0.125rem #eeeeee;
}
.mod-faq-list-item-title {
  position: relative;
  cursor: pointer;
  color: #e21c14;
  padding: 1.25rem 3.75rem 1.25rem 4.625rem;
  min-height: 4.25rem;
}
.mod-faq-list-item-title:before {
  content: "Q";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 0.25rem;
  background-color: #000000;
  color: #ffffff;
  font-size: 2rem;
  position: absolute;
  left: 0.625rem;
  top: 0.625rem;
  width: 3rem;
  height: 3rem;
}
.mod-faq-list-item-title:after {
  content: "";
  width: 1rem;
  height: 0.625rem;
  background-size: 100%;
  background-image: url(../images/common/icon-select.png);
  position: absolute;
  right: 1rem;
  top: 50%;
  margin-top: -0.5rem;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-faq-list-item-title.is-active:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.mod-faq-list-item-content {
  position: relative;
  display: none;
  border-top: solid 0.125rem #eeeeee;
  background-color: #fff5f5;
  min-height: 4.25rem;
  padding: 0.625rem 3.75rem 0.625rem 8.625rem;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-faq-list-item-content.is-active {
  display: block;
}
.mod-faq-list-item-content:before {
  -webkit-transition: .3s;
  transition: .3s;
  content: "A";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 0.25rem;
  background-color: #e21c14;
  color: #ffffff;
  font-size: 2rem;
  position: absolute;
  left: 4.625rem;
  top: 0.625rem;
  width: 3rem;
  height: 3rem;
}

.wf-active .mod-faq-list-item-title:before {
  font-family: 'Nunito', sans-serif;
}
.wf-active .mod-faq-list-item-content:before {
  font-family: 'Nunito', sans-serif;
}

/* breadcrumb */
.mod-breadcrumb-wrap {
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5rem;
  padding-right: 5rem;
}

.mod-breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.6875rem;
  overflow: hidden;
  padding: .5rem;
}

.mod-breadcrumb__item {
  position: relative;
  padding-right: 2em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-breadcrumb__item:before {
  content: "＞";
  position: absolute;
  right: .5em;
  top: 0;
  font-size: 0.6875rem;
}
.mod-breadcrumb__item:last-child:before {
  display: none;
}
.mod-breadcrumb__item a:hover {
  text-decoration: underline;
}
.mod-breadcrumb__item rt,
.mod-breadcrumb__item rp,
.mod-breadcrumb__item br{
display: none;
}

/* form */
.mod-form-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mod-form-item + .mod-form-item {
  margin-top: 2.25rem;
}
.mod-form-item-title {
  width: 24rem;
}
.mod-form-item-title .require {
  color: #e21c14;
  font-size: 1rem;
}
.mod-form-item-content {
  width: calc(100% - 26rem);
  font-size: 1rem;
}

input[type="text"].mod-input-text,
textarea.mod-textarea {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: solid 1px #cccccc;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 1rem;
  border-radius: 0.25rem;
  width: 100%;
  background-color: #ffffff;
  outline: none;
  font-size: 1rem;
}
input[type="text"].mod-input-text:focus,
textarea.mod-textarea:focus {
  border-color: #e21c14;
}

.mod-textarea {
  resize: none;
}

input[type="radio"].mod-input-radio,
input[type="checkbox"].mod-input-checkbox {
  position: relative;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  margin-right: 0.5rem;
  margin-top: 0.1875rem;
  border: solid 1px #cccccc;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #ffffff;
  outline: none;
  width: 1.125rem;
  height: 1.125rem;
  vertical-align: middle;
}

input[type="radio"].mod-input-radio:after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  background-color: #e21c14;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -0.25rem;
  margin-left: -0.25rem;
  border-radius: 100%;
  display: none;
}
input[type="radio"].mod-input-radio:checked:after {
  display: block;
}

input[type="checkbox"].mod-input-checkbox:after {
  content: "";
  width: 0.375rem;
  height: 0.75rem;
  position: absolute;
  left: 50%;
  top: 50%;
  border-bottom: solid 2px #e21c14;
  border-right: solid 2px #e21c14;
  margin-top: -0.5rem;
  margin-left: -0.1875rem;
  display: none;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
input[type="checkbox"].mod-input-checkbox:checked:after {
  display: block;
}

input[type="radio"].mod-input-radio {
  border-radius: 100%;
}

input[type="checkbox"].mod-input-checkbox {
  border-radius: 0;
}

select.mod-select {
  position: relative;
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  min-height: 2.5rem;
  padding: 1rem 3rem 1rem 1rem;
  border: solid 1px #cccccc;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0.25rem;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 1rem auto;
  background-image: url(../images/common/icon-select.png);
  background-position: right 1rem top 50%;
  cursor: pointer;
  font-size: 1rem;
  outline: none;
  line-height: 1.231;
  text-overflow: '';
}

select.m-select::-ms-expand {
  display: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
max-height:640px !imporatant;
overflow:hidden !important;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* =======================================================================
共通
======================================================================= */
@font-face {
  font-family: YuGothicM;
  font-weight: normal;
  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular");
  /* Windows8.1ではMediumがないのでRegularを指定 */
}
@font-face {
  font-family: YuGothicM;
  font-weight: bold;
  src: local("YoGothic-Bold"), local("Yu Gothic");
  /* Chrome用 */
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
base
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
}

body {
  position: relative;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Roboto, "Noto Sans", "Segoe UI", "Droid Sans", Verdana, YuGothicM, YuGothic, "Noto Serif CJK JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  font-size: 1.0rem;
  line-height: 1.231;
  color: #000000;
  background-color: #dddddd;
}

.wf-active body {
  font-family: -apple-system, BlinkMacSystemFont, 'Open Sans', "Helvetica Neue", Helvetica, Roboto, "Noto Sans", "Segoe UI", "Droid Sans", Verdana, YakuHanJP, YuGothicM, YuGothic, "Noto Serif CJK JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}

#layout-wrapper {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.layout-bg {
  position: relative;
  background-color: #ffffff;
  border-radius: 0.25rem 0.25rem 0 0;
  margin: 1rem 1rem 0;
}
.layout-bg:before, .layout-bg:after {
  content: "";
  width: 1rem;
  position: absolute;
  background-image: url(../images/common/bg-body.png);
  background-size: 200% auto;
}
.layout-bg:before {
  left: -1rem;
  top: 2.5rem;
  height: calc(100% - 2.8rem);
  -webkit-transform: skewY(30deg);
          transform: skewY(30deg);
}
.layout-bg:after {
  right: -1rem;
  top: 17rem;
  height: calc(100% - 17.3rem);
  -webkit-transform: skewY(-30deg);
          transform: skewY(-30deg);
  background-position: -100% 0;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
header
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.base-header {
  position: relative;
  z-index: 5001;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.base-header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5rem;
  padding-right: 5rem;
  padding-top: 1.25rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .base-header-inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.mod-header-news {
  border-top: solid 1px #ffffff;
  border-left: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
  border-radius: 0.25rem 0.25rem 0 0;
  background-color: #faebeb;
  font-weight: 700;
  font-size: 1.125rem;
  text-align: center;
}
.mod-header-news a,
.mod-header-news span {
  display: block;
  padding: 1rem;
}
.mod-header-news a:hover {
  text-decoration: none;
  color: #e21c14;
}

.mod-header-logo {
  width: 15rem;
  height: 4rem;
  margin-bottom: 1rem;
  overflow: hidden;
}
.mod-header-logo a {
  display: block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-header-logo a:hover {
  opacity: 0.7;
  text-decoration: none;
}

@media screen and (min-width: 992px), print {
  .base-header.is-fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    width: calc(100% - 2rem);
    background-color: #ffffff;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    -webkit-transition: .3s;
    transition: .3s;
  }
  .base-header.is-fixed.is-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .base-header.is-fixed .base-header-inner {
    padding-top: 1rem;
  }
  .base-header.is-fixed .mod-header-logo {
    width: 10.25rem;
    height: 2.75rem;
  }
  .base-header.is-fixed .mod-header-nav-list {
    display: none;
  }

  .mod-header-menu {
    display: none;
  }

  .mod-header-ticket {
    display: none;
  }

  .mod-header-nav-sp {
    display: none;
  }

  .mod-header-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 0.875rem;
    margin-bottom: 0.625rem;
  }
  .mod-header-nav-list__item {
    position: relative;
  }
  .mod-header-nav-list__item + .mod-header-nav-list__item {
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: solid 1px #cccccc;
  }
  .mod-header-nav-list__item a {
    -webkit-transition: .3s;
    transition: .3s;
  }
  .mod-header-nav-list__item a:hover {
    color: #e21c14;
    text-decoration: none;
  }

  .mod-header-nav-search-btn {
    display: block;
    width: 1.125rem;
    height: 1.125rem;
    background-size: 100%;
    background-image: url(../images/common/icon-search.png);
    text-indent: -9998em;
  }

  .mod-header-nav-search-content {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 50%;
    top: 1.875rem;
    width: 22rem;
    z-index: 5001;
    border: solid 1px #cccccc;
    border-top: solid 0.25rem #e21c14;
    border-radius: 0.25rem;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background-color: #f9f4e8;
  }
  .mod-header-nav-search-content:before {
    content: "";
    border-bottom: solid 0.625rem #e21c14;
    border-left: solid 0.625rem transparent;
    border-right: solid 0.625rem transparent;
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
  }
  .mod-header-nav-search-content.is-active {
    opacity: 1;
    pointer-events: auto;
  }

  .mod-header-nav-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-header-nav-text > * + * {
    margin-left: 1rem;
  }

  .mod-header-nav-lang {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-header-nav-lang > * {
    position: relative;
  }
  .mod-header-nav-lang > * + * {
    padding-left: 1em;
  }
  .mod-header-nav-lang > * + *:before {
    content: "／";
    position: absolute;
    left: 0;
    top: 0;
  }
  .mod-header-nav-lang .is-active {
    font-weight: 700;
  }
}
.mod-global-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
  font-size: 1.125rem;
}
.mod-global-nav__item + .mod-global-nav__item {
  margin-left: 2rem;
}
.mod-global-nav__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 3rem;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-global-nav__item a:before {
  -webkit-transition: .3s;
  transition: .3s;
  content: "";
  width: 100%;
  height: 0;
  position: absolute;
  left: 0;
  bottom: 1px;
  border-radius: .25rem .25rem 0 0;
  background-color: #e21c14;
}
.mod-global-nav__item a:hover {
  color: #e21c14;
  text-decoration: none;
}
.mod-global-nav__item a:hover:before {
  height: .25rem;
}

/* nav */
.mod-content-nav {
  position: relative;
  z-index: 1;
  margin-left: 4rem;
  margin-right: 4rem;
  background-color: #f9f4e8;
  border-top: solid 2px #999999;
  border-bottom: solid 2px #999999;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.mod-content-nav--child {
  border-top: 0;
  border-bottom: 0;
  background-color: #dddddd;
}
.mod-content-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-content-nav-list__item {
  font-size: 1.0rem;
  font-weight: 700;
  text-align: center;
}
.mod-content-nav-list__item + .mod-content-nav-list__item {
  margin-left: 1.5rem;
}
.mod-content-nav-list__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 3rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-content-nav-list__item a:before {
  -webkit-transition: .3s;
  transition: .3s;
  content: "";
  width: 100%;
  height: 0;
  background-color: #e21c14;
  position: absolute;
  left: 0;
  bottom: 1px;
  border-radius: 0.25rem 0.25rem 0 0;
}
.mod-content-nav-list__item a:hover, .mod-content-nav-list__item a.is-current {
  color: #e21c14;
  text-decoration: none;
}
.mod-content-nav-list__item a:hover:before, .mod-content-nav-list__item a.is-current:before {
  height: .25rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .mod-content-nav {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
footer
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.base-footer {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  background-color: #000000;
  color: #ffffff;
}
.base-footer a {
  color: #ffffff;
}
.base-footer-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5rem;
  padding-right: 5rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .base-footer-inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.mod-footer-info {
  line-height: 2;
  font-size: 0.875rem;
}
.mod-footer-info-content {
  margin-top: 0.625rem;
}
.mod-footer-info-title small {
  font-size: 0.75rem;
}

.mod-footer-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 0.6875rem;
  line-height: 2;
}
.mod-footer-nav-item + .mod-footer-nav-item {
  margin-left: 1rem;
}
.mod-footer-nav-list {
  border-top: solid 1px #666666;
}
.mod-footer-nav-list > a {
  font-weight: 700;
}
.mod-footer-nav-list + .mod-footer-nav-list {
  margin-top: 1.5rem;
}
.mod-footer-nav-list--other {
  padding-top: 1.375rem;
}
.mod-footer-nav-list .parent {
  font-weight: 700;
}

.mod-footer-cr {
  margin-top: 2rem;
  width: 100%;
  font-size: 0.75rem;
}

.mod-pagetop {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  position: relative;
  display: block;
  background-color: #f9f4e8;
  text-align: center;
  font-size: 1.0rem;
  -webkit-transition: .3s;
  transition: .3s;
  padding: 1.25rem;
}
.mod-pagetop:before {
  -webkit-transition: .3s;
  transition: .3s;
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.625rem;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.1875rem;
  border-top: solid 0.25rem #000000;
  border-left: solid 0.25rem #000000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.mod-pagetop:hover {
  color: #e21c14;
  text-decoration: none;
}
.mod-pagetop:hover:before {
  border-top-color: #e21c14;
  border-left-color: #e21c14;
}

/* =======================================================================
home
======================================================================= */
.mod-home-title {
  font-weight: 700;
  font-size: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* mainvisual */
.mod-home-mainvisual {
  margin-left: 4rem;
  margin-right: 4rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .mod-home-mainvisual {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.mod-home-mainvisual-slider {
  *zoom: 1;
  position: relative;
  overflow: hidden;
  -webkit-transition: 1s;
  transition: 1s;
  opacity: 0;
}
.mod-home-mainvisual-slider:after {
  content: "";
  display: table;
  clear: both;
}
.mod-home-mainvisual-slider.is-load {
  opacity: 1;
}

.mod-home-mainvisual-article {
  position: relative;
  float: left;
}
.mod-home-mainvisual-article a {
  position: relative;
  display: block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-mainvisual-article a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-home-mainvisual-article-content {
  position: absolute;
  left: 2rem;
  bottom: 1.5rem;
  color: #ffffff;
  z-index: 1;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.mod-home-mainvisual-article-content .icon-sale {
  border-radius: 0.25rem;
  background-color: #e21c14;
  font-weight: 700;
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
}
.mod-home-mainvisual-article-image {
  overflow: hidden;
  border-radius: 0.25rem;
}
.mod-home-mainvisual-article-image img {
  width: 100%;
}
.mod-home-mainvisual-article-text {
  margin-top: 1.5rem;
  font-size: 0.75rem;
}
.mod-home-mainvisual-article-title {
  margin-top: 0.5rem;
  font-weight: 700;
  font-size: 2.8rem;
}
.mod-home-mainvisual-article-title-s {
  margin-top: 0.5rem;
  font-weight: 700;
  font-size: 1.0rem;
}
.mod-home-mainvisual-article .datetime {
  display: block;
  margin-top: 1.5rem;
  font-size: 0.875rem;
}

/* headline */
.mod-home-news-headline {
  margin-top: 1.5rem;
  border: solid 0.25rem #cccccc;
  border-radius: 0.25rem;
}

.mod-home-news-ticker {
  position: relative;
  height: 3.125rem;
  overflow: hidden;
}
.mod-home-news-ticker__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 0 1.5rem;
  font-size: 1.0rem;
}
.mod-home-news-ticker__item:before {
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  background-size: 100%;
  background-image: url(../images/common/icon-ar.png);
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mod-home-news-ticker__item--nolink:before {
  display: none;
}
.mod-home-news-ticker__item:nth-of-type(1) {
  top: 3em;
}
.mod-home-news-ticker__item time {
  width: 8.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-home-news-ticker__item a,
.mod-home-news-ticker__item span {
  width: calc(100% - 10.5rem);
  line-height: 3.125rem;
  height: 3.125rem;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mod-home-news-ticker__item a {
  color: #e21c14;
}

.mod-home-schedule {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -2rem;
  margin-top: 2rem;
}
.mod-home-schedule__item {
  width: calc(50% - 2rem);
  margin-left: 2rem;
  border: solid 0.25rem #cccccc;
  border-radius: 0.25rem;
  padding: 1rem;
}
.mod-home-schedule-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: solid 1px #cccccc;
  padding-bottom: .25rem;
}
.mod-home-schedule-title {
  position: relative;
  padding-left: 1.25rem;
  font-weight: 700;
  font-size: 1.25rem;
}
.mod-home-schedule-title .num {
  font-size: 1.5625rem;
}
.mod-home-schedule-title .md {
  font-size: 0.9375rem;
}
.mod-home-schedule-title:before {
  content: "";
  width: 1rem;
  height: 1rem;
  position: absolute;
  left: 0;
  top: 50%;
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border: solid 0.3125rem #000000;
}
.mod-home-schedule-remarks {
  font-size: 0.625rem;
}

.mod-home-schedule-today {
  margin-top: 1.25rem;
}
.mod-home-schedule-today a {
  position: relative;
  padding-right: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-home-schedule-today a:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 1.375rem;
  height: 1.375rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-size: 100%;
  background-image: url(../images/common/icon-ar.png);
}
.mod-home-schedule-today a:hover {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-schedule-today a:hover:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-home-schedule-today-datetime {
  width: 3rem;
  margin-right: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 0.875rem;
}
.mod-home-schedule-today-datetime .end {
  font-size: 0.75rem;
}
.mod-home-schedule-today-image {
  width: 3rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 1rem;
}
.mod-home-schedule-today-content-title-s {
  margin-bottom: .25rem;
  font-size: 0.625rem;
}
.mod-home-schedule-today-content-title {
  color: #e21c14;
  font-size: 1rem;
}

.mod-home-schedule-holiday-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: .625rem;
  font-size: 1rem;
}
.mod-home-schedule-holiday-item + .mod-home-schedule-holiday-item {
  margin-top: 0.625rem;
  border-top: solid 1px #cccccc;
}
.mod-home-schedule-holiday-item__title {
  width: 40%;
  font-weight: 700;
}
.mod-home-schedule-holiday-item__text {
  width: 60%;
}

/* events */
.mod-events {
  position: relative;
  *zoom: 1;
  margin-top: 2rem;
  padding-bottom: 5em;
width:100%;
display:none;
}

.mod-events:after {
  content: "";
  display: table;
  clear: both;
}
.mod-events.slick-initialized {
  display: block;
}
.mod-events__group {
  float: left;
width:100%;
}

.mod-events-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.1rem;
  margin-bottom: -2rem;
width:100%;

}
.mod-events-list + .mod-events-list {
  margin-top: 2em;
}
.mod-events-list-item {
  position: relative;
  width: 23%;
  margin-left: 1.1rem;
  margin-bottom: 2rem;
}
.mod-events-list-item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 19rem;
  height: 100%;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  background-color: #ffffff;
  overflow: hidden;
  border-radius: 0.25rem;
}
.mod-events-list-item a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-events-list-item a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: solid 0.5rem #e21c14;
  border-left: solid 0.5rem transparent;
}
.mod-events-list-item .datetime {
  display: block;
  background-color: #666666;
  color: #ffffff;
  padding: 0.5rem 1.0rem;
  font-size: 0.75rem;
}
.mod-events-list-item-content {
  padding: 0.5rem 1.0rem;
}
.mod-events-list-item-image {
  position: relative;
  padding-bottom: 56.25%;
  background-size: cover;
  background-position: 50%;
}
.mod-events-list-item .icon-sales {
  position: absolute;
  display: inline-block;
  right: 0.5rem;
  top: 0;
  background-color: #e21c14;
  border-radius: 0.25rem;
  font-size: 0.625rem;
  color: #ffffff;
  font-weight: 700;
  padding: 0.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
.mod-events-list-item-title-s {
  font-size: 0.625rem;
}
.mod-events-list-item-title {
  margin-top: 0.5rem;
  font-size: 1.0rem;
  font-weight: 700;
}
.mod-events-list-item-text {
  margin-top: 0.5rem;
  font-size: 0.625rem;
  line-height: 1.5;
}

.mod-home-events-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2rem;
}
.mod-home-events-btn__item {
  width: 38.125rem;
}

.mod-home-events-others {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1.5rem;
  margin-left: -2rem;
  margin-bottom: -2rem;
}
.mod-home-events-others__item {
  position: relative;
  width: calc(100% / 2 - 2rem);
  margin-left: 2rem;
  margin-bottom: 2rem;
}
.mod-home-events-others__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  height: 100%;
  border-radius: 0.25rem;
  background-color: #ffffff;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-events-others__item a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-home-events-others__item a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: solid 0.5rem #e21c14;
  border-left: solid 0.5rem transparent;
}
.mod-home-events-others-image {
  width: 3.5rem;
  background-size: contain;
  background-position: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-repeat: no-repeat;
}
.mod-home-events-others-content {
  width: calc(100% - 6.0rem);
  padding: 0.6rem 1.0rem;
}
.mod-home-events-others-content-title {
  font-weight: 700;
  font-size: 1.0rem;
  line-height: 1.5;
}
.mod-home-events-others-content .datetime {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.75rem;
}

.mod-home-events-others-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2rem;
}
.mod-home-events-others-btn__item {
  width: 22.0rem;
}
.mod-home-events-others-btn__item + .mod-home-events-others-btn__item {
  margin-left: 2rem;
}

.mod-home-events-title {
  position: relative;
  font-weight: 700;
  font-size: 1.5rem;
  border-bottom: solid 0.25rem #cccccc;
  padding-left: 1.5rem;
  padding-bottom: 0.5rem;
}
.mod-home-events-title:before {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  border: solid 0.375rem #000000;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: calc(50% - 0.4375rem);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.mod-home-events-topics {
  margin-top: 2rem;
}
.mod-home-events-topics a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  min-height: 16.875rem;
  border-radius: 0.25rem;
  background-color: #ffffff;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-events-topics a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-home-events-topics a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: solid 0.5rem #e21c14;
  border-left: solid 0.5rem transparent;
}
.mod-home-events-topics-image {
  width: 29.375rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-size: cover;
  background-position: 50%;
}
.mod-home-events-topics-content {
  position: relative;
  width: calc(100% - 29.375rem);
  padding: 2rem;
  overflow: hidden;
}
.mod-home-events-topics-content-title-s {
  position: relative;
  z-index: 1;
  font-size: 0.625rem;
}
.mod-home-events-topics-content-title {
  position: relative;
  z-index: 1;
  margin-top: 1.0rem;
  font-size: 0.875rem;
}
.mod-home-events-topics-content-name {
  position: relative;
  z-index: 1;
  margin-top: 2rem;
  font-weight: 700;
  font-size: 1.375rem;
}
.mod-home-events-topics-content-text {
  margin-top: 0.5rem;
  position: relative;
  z-index: 1;
  font-size: 0.625rem;
  line-height: 2;
}
.mod-home-events-topics-content .num {
  position: absolute;
  right: -1.875rem;
  top: -2.5rem;
  color: #eeeeee;
  font-size: 14.25rem;
  font-weight: 300;
  line-height: 1;
}
.mod-home-events-topics-content .cat {
  position: absolute;
  position: absolute;
  left: -1.0rem;
  bottom: -1.5rem;
  color: #eeeeee;
  font-size: 8.0rem;
  font-weight: 400;
  line-height: 1;
}

.wf-active .mod-home-events-topics-content .num {
  font-family: 'Nunito', sans-serif;
}
.wf-active .mod-home-events-topics-content .cat {
  font-family: 'Nunito', sans-serif;
}

.mod-home-events-topics-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2rem;
}
.mod-home-events-topics-btn__item {
  width: 38.125rem;
}

/* rental */
.mod-home-rental {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -2rem;
}
.mod-home-rental__item {
  width: calc(50% - 2rem);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: 2rem;
  background-color: #f9f4e8;
  border-radius: 0.25rem;
  overflow: hidden;
}
.mod-home-rental__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-rental__item a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-home-rental__item a > * {
  width: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-home-rental-title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.375rem;
  font-weight: 700;
}
.mod-home-rental-title:after {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  background-size: 100%;
  background-image: url(../images/common/icon-ar.png);
}

/* news */
.mod-home-news-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mod-home-news-list {
  width: calc(100% - 15.0rem - 1.0rem);
  background-color: #ffffff;
  border-radius: 0.25rem;
}
.mod-home-news-list__item {
  position: relative;
  height: calc(21.875rem / 5);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-home-news-list__item:before {
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  background-size: 100%;
  background-image: url(../images/common/icon-ar.png);
  position: absolute;
  right: 2rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mod-home-news-list__item--nolink:before {
  display: none;
}
.mod-home-news-list__item + .mod-home-news-list__item {
  border-top: solid 1px #eeeeee;
}
.mod-home-news-list__item .header {
  width: 12.25rem;
  padding: 0.5rem 1.0rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-right: solid 1px #eeeeee;
}
.mod-home-news-list__item .header .datetime {
  display: block;
  font-size: 0.875rem;
}
.mod-home-news-list__item .header .cat {
  display: block;
  font-size: 0.75rem;
}
.mod-home-news-list__item .content {
  position: relative;
  display: block;
  overflow: hidden;
  width: calc(100% - 12.25rem);
  height: calc(21.875rem / 5);
  line-height: calc(21.875rem / 5);
  padding-right: 4rem;
  padding-left: 0.5rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.0rem;
}
.mod-home-news-list__item a {
  color: #e21c14;
}

.mod-home-news-tw {
  width: 15.0rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: solid 1px #eeeeee;
  border-radius: 0.25rem;
  background-color: #ffffff;
}

/* bnr */
.mod-home-bnr {
  border: solid 0.25rem #cccccc;
  border-radius: 0.25rem;
  padding: 2rem;
}
.mod-home-bnr-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -2rem;
  margin-bottom: -2rem;
}
.mod-home-bnr-list__item {
  width: calc(100% / 5 - 2rem);
  margin-left: 2rem;
  margin-bottom: 2rem;
}
.mod-home-bnr-list__item a {
  display: block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-home-bnr-list__item a:hover {
  opacity: 0.7;
  text-decoration: none;
}

#mod-home-slider-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1.0rem;
}
#mod-home-slider-btn .mod-home-slider-btn-prev {
  margin-right: 0.5rem;
  text-indent: -9998em;
  cursor: pointer;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.125rem;
  border-top: solid 0.25rem #000000;
  border-left: solid 0.25rem #000000;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
#mod-home-slider-btn .mod-home-slider-btn-next {
  margin-left: 0.5rem;
  text-indent: -9998em;
  cursor: pointer;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.125rem;
  border-top: solid 0.25rem #000000;
  border-right: solid 0.25rem #000000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#mod-home-slider-btn .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#mod-home-slider-btn .slick-dots li {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
#mod-home-slider-btn .slick-dots button {
  display: block;
  width: 1.0rem;
  height: 1.0rem;
  background-color: transparent;
  border: solid 0.125rem #e21c14;
  border-radius: 50%;
  text-indent: -9998em;
}
#mod-home-slider-btn .slick-dots .slick-active button {
  background-color: #e21c14;
}

#mod-events-slider-btn {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  margin: auto;
}

#mod-events-slider-btn-dot .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#mod-events-slider-btn-dot li {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  font-size: 1.25rem;
}
#mod-events-slider-btn-dot button {
  display: block;
  width: 2.5rem;
  height: 3.0rem;
  line-height: 2.5rem;
  border: solid 0.25rem #cccccc;
  border-radius: 0.25rem;
  background-color: #ffffff;
  color: #e21c14;
}
#mod-events-slider-btn-dot .slick-active button {
  color: #ffffff;
  background-color: #e21c14;
  border-color: #e21c14;
}

/* =======================================================================
about
======================================================================= */
.mod-about-index-main {
  position: relative;
  margin-top: -3rem;
  height: 26rem;
  background-position: 50%;
  background-size: cover;
  background-image: url(../images/about/index/img-main.jpg);
  background-repeat: no-repeat;
}
.mod-about-index-main__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #ffffff;
  white-space: nowrap;
}
.mod-about-index-main-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
  font-size: 2rem;
  text-shadow: 0 0 2rem rgba(0, 0, 0, 0.5);
  letter-spacing: 0.2em;
  margin-bottom: .5rem;
}
/*.mod-about-index-main-title:before {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2px;
  margin-right: .5rem;
  background-color: #ffffff;
}*/
.mod-about-index-main .mod-breadcrumb-wrap {
  position: absolute;
  left: 0;
  top: 1.5rem;
  color: #ffffff;
  z-index: 1;
}
.mod-about-index-main .mod-breadcrumb-wrap a {
  color: #ffffff;
}

.mod-about-index-intro-col {
  position: relative;
  margin-left: 8rem;
  margin-right: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1;
}
.mod-about-index-intro-col__image {
  position: relative;
  z-index: 2;
  width: 22rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 2rem;
}
.mod-about-index-intro-col__content {
  position: relative;
  z-index: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
}
.mod-about-index-intro-col__content > * + * {
  margin-top: 1rem;
}

.mod-about-en-title-01 {
  position: relative;
  margin-top: -2rem;
  margin-bottom: -2rem;
  text-align: center;
}

.mod-about-index-theater {
  *zoom: 1;
}
.mod-about-index-theater:after {
  content: "";
  display: table;
  clear: both;
}

.mod-about-en-title-02 {
  position: relative;
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
  margin-right: -2rem;
  text-align: right;
}

.mod-about-index-theater-item {
  *zoom: 1;
  position: relative;
  overflow: hidden;
  background-color: #f9f4e8;
  border-radius: 0.25rem;
  padding: 4rem 3rem;
  background-size: cover;
  background-position: 50%;
}
.mod-about-index-theater-item:after {
  content: "";
  display: table;
  clear: both;
}
.mod-about-index-theater-item + .mod-about-index-theater-item {
  margin-top: 2.5rem;
}
.mod-about-index-theater-item:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, right top, from(#f9f4e8), color-stop(30%, #f9f4e8), to(rgba(249, 244, 232, 0.5)));
  background-image: linear-gradient(to right, #f9f4e8 0%, #f9f4e8 30%, rgba(249, 244, 232, 0.5) 100%);
}
.mod-about-index-theater-item > * {
  position: relative;
  z-index: 1;
}
.mod-about-index-theater-item-content {
  width: 42%;
}
.mod-about-index-theater-item--01 {
  background-image: url(../images/about/index/bg-01.jpg);
}
.mod-about-index-theater-item--02 {
  background-image: url(../images/about/index/bg-02.jpg);
}
.mod-about-index-theater-item--02 .mod-about-index-theater-item-content {
  float: right;
}
.mod-about-index-theater-item--02:before {
  background-image: -webkit-gradient(linear, right top, left top, from(#f9f4e8), color-stop(30%, #f9f4e8), to(rgba(249, 244, 232, 0.5)));
  background-image: linear-gradient(to left, #f9f4e8 0%, #f9f4e8 30%, rgba(249, 244, 232, 0.5) 100%);
}
.mod-about-index-theater-item--03 {
  background-image: url(../images/about/index/bg-03.jpg);
}

.mod-about-index-theater-head {
  margin-bottom: 2rem;
}
.mod-about-index-theater-head-title {
  font-size: 2rem;
}
.mod-about-index-theater-head-text {
  position: relative;
  margin-top: 1rem;
  text-indent: -.75rem;
  font-weight: 700;
  line-height: 1.5;
  font-size: 0.75rem;
}
.mod-about-index-theater-head-text:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 0.75rem;
  height: 1px;
  background-color: #000000;
}

.mod-about-index-theater-text .line {
  display: inline-block;
  margin-bottom: .5rem;
  background-image: -webkit-gradient(linear, right top, left top, from(#ffffff), to(#ffffff));
  background-image: linear-gradient(to left, #ffffff 0%, #ffffff 100%);
}
.mod-about-index-theater-text br {
  display: block !important;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .mod-about-index-theater-text {
    display: inline;
    background-image: -webkit-gradient(linear, right top, left top, from(#ffffff), to(#ffffff));
    background-image: linear-gradient(to left, #ffffff 0%, #ffffff 100%);
  }
}
@supports (-ms-ime-align: auto) {
  .mod-about-index-theater-text {
    display: inline;
    background-image: -webkit-gradient(linear, right top, left top, from(#ffffff), to(#ffffff));
    background-image: linear-gradient(to left, #ffffff 0%, #ffffff 100%);
  }
}
.mod-about-index-about {
  position: relative;
  margin-top: 6.25rem;
}

.mod-about-en-title-03 {
  position: relative;
  margin-bottom: -3.5rem;
}

.mod-about-index-about-col {
  position: relative;
  z-index: 1;
  padding: 3rem 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mod-about-index-about-col__head {
  width: 45%;
}
.mod-about-index-about-col__content {
  width: 47%;
  background-color: #ffffff;
  padding: 1rem 2rem;
}

.mod-about-index-about-title {
  font-weight: 700;
  font-size: 1.375rem;
  margin-bottom: 1rem;
}

.mod-about-index-about-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.5;
}
.mod-about-index-about-list + .mod-about-index-about-list {
  margin-top: 1rem;
}
.mod-about-index-about-list > dt {
  width: 5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 0.75rem;
}
.mod-about-index-about-list > dd {
  font-size: 0.875rem;
}

/* =======================================================================
topics
======================================================================= */
.mod-topics-article-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.5rem 1rem;
  overflow: hidden;
  min-height: 23rem;
}
.mod-topics-article-header .num,
.mod-topics-article-header .cat {
  position: absolute;
  color: #eeeeee;
  line-height: 1;
}
.mod-topics-article-header .num {
  left: 0;
  top: -2.5rem;
  font-size: 20rem;
}
.mod-topics-article-header .cat {
  left: 0;
  bottom: -1.7rem;
  font-size: 10rem;
}
.mod-topics-article-header-image {
  position: relative;
  z-index: 1;
  width: 45%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-topics-article-header-image img {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  border: solid 1px #cccccc;
}
.mod-topics-article-header-content {
  position: relative;
  z-index: 1;
  width: 45%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-topics-article-header-content-category {
  font-size: 1.2rem;
  margin-bottom: 2rem;
}
.mod-topics-article-header-content-title-s {
  font-size: 1rem;
  margin-bottom: .5rem;
}
.mod-topics-article-header-content-title {
  font-size: 1.7rem;
  margin-bottom: 4rem;
}
.mod-topics-article-header-content-name {
  font-size: 2.25rem;
  font-weight: 700;
}

.wf-active .mod-topics-article-header .num,
.wf-active .mod-topics-article-header .cat {
  font-family: 'Nunito', sans-serif;
}

.mod-topics-article-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: .625rem;
}
.mod-topics-article-sns__item {
  margin-right: 1rem;
}

.mod-topics-article-summary {
  font-weight: 700;
  line-height: 2.5;
  font-size: 1.125rem;
}

.mod-topics-article-content {
  margin-bottom: 4rem;
}

.mod-events-article-content-body img,
.mod-topics-article-content-body img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
}

.mod-topics-article-content-body img {
  margin-bottom: 0rem;
}
.mod-events-article-content-body a,
.mod-topics-article-content-body a {
  color: #e21c14;
  text-decoration: underline;
}
.mod-events-article-content-body a:hover,
.mod-topics-article-content-body a:hover {
  text-decoration: none;
}
.mod-events-article-content-body h1, .mod-events-article-content-body h2, .mod-events-article-content-body h3, .mod-events-article-content-body h4, .mod-events-article-content-body h5, .mod-events-article-content-body h6,
.mod-topics-article-content-body h1,
.mod-topics-article-content-body h2,
.mod-topics-article-content-body h3,
.mod-topics-article-content-body h4,
.mod-topics-article-content-body h5,
.mod-topics-article-content-body h6 {
  font-weight: 700;
  margin-bottom: 1rem;
}
.mod-events-article-content-body p, .mod-events-article-content-body ul, .mod-events-article-content-body dl, .mod-events-article-content-body ol,
.mod-topics-article-content-body p,
.mod-topics-article-content-body ul,
.mod-topics-article-content-body dl,
.mod-topics-article-content-body ol {
  font-size: 1rem;
  line-height: 2;
  margin-bottom: 2rem;
}
.mod-events-article-content-body dt,
.mod-topics-article-content-body dt {
  font-weight: 700;
}
.mod-events-article-content-body hr,
.mod-topics-article-content-body hr {
  margin-bottom: 2rem;
  height: 1px;
  border: 0;
  background-color: #e21c14;
}
.mod-events-article-content-body p, .mod-events-article-content-body span,
.mod-topics-article-content-body p,
.mod-topics-article-content-body span {
  text-align: justify;
  text-align-last: left;
}
.mod-events-article-content-body h1,
.mod-topics-article-content-body h1 {
  font-size: 2rem;
}
.mod-events-article-content-body h2,
.mod-topics-article-content-body h2 {
  font-size: 1.75rem;
}
.mod-events-article-content-body h3,
.mod-topics-article-content-body h3 {
  font-size: 1.5rem;
}
.mod-events-article-content-body h4,
.mod-topics-article-content-body h4 {
  font-size: 1.375rem;
}
.mod-events-article-content-body h5,
.mod-topics-article-content-body h5 {
  font-size: 1.25rem;
}
.mod-events-article-content-body h6,
.mod-topics-article-content-body h6 {
  font-size: 1.125rem;
}
.mod-events-article-content-body ol,
.mod-topics-article-content-body ol {
  list-style: decimal;
  margin-left: 1.5em;
}
.mod-events-article-content-body ul > li,
.mod-topics-article-content-body ul > li {
  position: relative;
  padding-left: 1em;
}
.mod-events-article-content-body ul > li:before,
.mod-topics-article-content-body ul > li:before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .mod-events-article-content-body ruby,
  .mod-topics-article-content-body ruby {
    position: relative;
  }
  .mod-events-article-content-body ruby rt,
  .mod-topics-article-content-body ruby rt {
    position: relative;
    top: 0.5em;
  }
}
@supports (-ms-ime-align: auto) {
  .mod-events-article-content-body ruby,
  .mod-topics-article-content-body ruby {
    position: relative;
  }
  .mod-events-article-content-body ruby rt,
  .mod-topics-article-content-body ruby rt {
    position: relative;
    top: 0.5em;
  }
}
.mod-topics-article-profile {
  background-color: #fff0f0;
  padding: 2rem;
}

.mod-topics-article-profile-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.mod-topics-article-profile-item + .mod-topics-article-profile-item {
  margin-top: 2rem;
}
.mod-topics-article-profile-item-image {
  width: 5.625rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 2rem;
}
.mod-topics-article-profile-item-content-title {
  font-weight: 700;
  font-size: 1rem;
}
.mod-topics-article-profile-item-content-text {
  margin-top: .25rem;
  font-size: 0.875rem;
  line-height: 2;
}

/* =======================================================================
events
======================================================================= */
/* common */
.mod-events-relation--line {
  border-top: solid 2px #cccccc;
}
.mod-events-relation__item + .mod-events-relation__item {
  border-top: solid 0.125rem #cccccc;
}
.mod-events-relation__item a,
.mod-events-relation__item span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.mod-events-relation__item a {
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-events-relation__item a .mod-text-m {
  color: #e21c14;
}
.mod-events-relation__item a:hover {
  background-color: #faebeb;
  text-decoration: none;
}
.mod-events-relation__item a:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.375rem;
  height: 1.375rem;
  background-image: url(../images/common/icon-ar.png);
  background-size: 100%;
}
.mod-events-relation-image {
  position: relative;
  width: 15rem;
  min-height: 8.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  overflow: hidden;
  margin-right: 1rem;
  background-size: cover;
  background-position: 50%;
}
.mod-events-relation-content {
  padding-right: 2rem;
  line-height: 1.5;
}
.mod-events-relation-content-title-s {
  font-size: 0.625rem;
}
.mod-events-relation-content-title {
  font-size: 1.25rem;
  font-weight: 700;
}
.mod-events-relation-content-title-t {
  font-size: 1.5rem;
  font-weight: 700;
}
.mod-events-relation-content-text {
  font-size: 1rem;
}
.mod-events-relation-content-datetime {
  font-size: 1rem;
  margin-top: 1rem;
}

/* index */
.mod-events-archives-h {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: solid 0.125rem #999999;
  font-size: 0.75rem;
  font-weight: 700;
  padding-top: .5rem;
  padding-bottom: .5rem;
  padding-right: 14.375rem;
}
.mod-events-archives-h--line {
  border-top: solid 0.125rem #e21c14;
}
.mod-events-archives-h__datetime {
  width: 17rem;
  margin-right: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-left: 5rem;
}
.mod-events-archives-h__title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.mod-events-archives-h__contact {
  width: 9.625rem;
  margin-left: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.mod-events-archives-item {
  position: relative;
  border-bottom: solid 0.125rem #eeeeee;
}
.mod-events-archives-item > span,
.mod-events-archives-item > a {
  -webkit-transition: .3s;
  transition: .3s;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 14.375rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.mod-events-archives-item > span {
  padding-right: 0;
}
.mod-events-archives-item > span .mod-events-archives-item__contact {
  width: 24rem;
}
.mod-events-archives-item > span .mod-events-archives-item-title {
  color: #000000;
}
.mod-events-archives-item > a:hover {
  background-color: #faebeb;
  text-decoration: none;
}
.mod-events-archives-item > a:before {
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/common/icon-ar.png);
  background-size: 100%;
}
.mod-events-archives-item__datetime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 17rem;
  margin-right: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-events-archives-item__title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.mod-events-archives-item__contact {
  width: 9.625rem;
  margin-left: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-events-archives-item-image {
  position: relative;
  width: 3rem;
  margin-left: 1rem;
  margin-right: 1rem;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mod-events-archives-item-icon {
  position: absolute;
  left: -1rem;
  top: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #e21c14;
  border-radius: 0.125rem;
  color: #ffffff;
  font-size: 0.625rem;
  padding: 0.125rem 0.25rem;
}
.mod-events-archives-item-title {
  color: #e21c14;
  font-weight: 700;
  font-size: 1.125rem;
}
.mod-events-archives-item-btn {
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  right: 3.375rem;
  width: 10rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  z-index: 1;
}

/* detail */
.mod-events-wrap {
  overflow: hidden;
}

.mod-events-article {
  position: relative;
}
.mod-events-article:before {
  content: "";
  width: 100%;
  height: calc(100% + 5rem);
  background-color: #f9f4e8;
  position: absolute;
  left: calc(832 / 1248 * 100%);
  top: -5rem;
}
.mod-events-article > * {
  position: relative;
  z-index: 1;
}

.mod-events-article-h {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.mod-events-article-h-title {
  font-size: 2.25rem;
}
.mod-events-article-h-title ruby rt {
font-size: 30%;
}
.mod-events-article-h-title-s {
  font-size: 1.25rem;
}

.mod-events-article-header-image {
  width: auto;
  margin-right: -2rem;
}
.mod-events-article-header-image-content {
  position: relative;
}
.mod-events-article-header-image-content img {
  max-width: inherit;
  width: 100%;
  height: auto;
  border-radius: 0.25rem;
}
.mod-events-article-header-dl {
  display: block;
  width: 100%;
  border-radius: 0.25rem;
  margin-bottom: 3rem;
  padding: 2rem 2.5rem;
  background-color: #ffffff;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mod-events-article-header-dl:hover {
  opacity: 0.7;
  text-decoration: none;
}
.mod-events-article-header-dl-image {
  margin-bottom: 1.25rem;
}
.mod-events-article-header-dl-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #e21c14;
  font-weight: 700;
  line-height: 1;
}
.mod-events-article-header-dl-btn .icon {
  width: 1.125rem;
  height: 1.5rem;
  background-size: 100%;
  margin-right: 0.25rem;
  background-image: url(../images/common/icon-pdf.png);
}

.mod-events-sales-icon {
  display: inline-block;
  background-color: #e21c14;
  border-radius: 0.25rem;
  padding: 0 0.625rem;
  font-size: 0.625rem;
  color: #ffffff;
  vertical-align: middle;
}

.mod-events-archive-content-indent {
  margin-right: 2rem;
}

.mod-events-article-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 5rem;
}

.mod-events-article-content {
  width: calc(832 / 1248 * 100%);
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.mod-events-article-aside {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: calc(352 / 1248 * 100%);
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .mod-events-article:before {
    left: calc(848 / 1248 * 100%);
  }

  .mod-events-article-header-image {
    margin-right: -0.75rem;
  }

  .mod-events-article-content {
    width: calc(848 / 1248 * 100%);
  }

  .mod-events-article-aside {
    width: calc(368 / 1248 * 100%);
  }

  .mod-events-archive-content-indent {
    margin-right: 1rem;
  }
}
/* article */
.mod-events-cal-wrap {
  position: relative;
  display: flex;
}
.mod-events-cal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-left: solid 1px #999999;
  overflow: scroll;
}
.mod-events-cal-col {
  width: 4.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  flex-glow: 1;
  border-top: solid 2px #e21c14;
  border-right: solid 1px #999999;
}
.mod-events-cal-col-cell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 2.5rem;
  padding: .25rem 0;
  border-bottom: solid 1px #999999;
  text-align: center;
  font-weight: 700;
  font-size: 1.25rem;
}
.mod-events-cal-col-cell:nth-of-type(1),
.mod-events-cal-col-cell:nth-of-type(2){
  font-size: 0.875rem;
  background-color: #f9f4e8;
}

.mod-events-cal-col-cell--holiday {
  height: calc(100% - 5rem);
  background-color: #eeeeee;
  font-size: 0.875rem;
}
.mod-events-cal-col--head {
  border-right: none;
}
.mod-events-cal-col--head .mod-events-cal-col-cell {
  font-weight: 500;
  font-size: 0.875rem;
  background-color: #f9f4e8;
  border-left: solid 1px #999999;
}
.mod-events-cal-col--head .mod-events-cal-col-cell:nth-of-type(1) {
  font-weight: 700;
  font-size: 1.25rem;
}

.mod-events-sns-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-events-sns-col__item + .mod-events-sns-col__item {
  margin-left: 2rem;
}

.mod-events-detail-staff-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -2rem;
  margin-bottom: -2rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.mod-events-detail-staff-col__item {
  width: calc(100% / 4 - 2rem);
  margin-left: 2rem;
  margin-bottom: 2rem;
position: relative;
}
.mod-events-detail-staff-col__item > figure {
  position: relative;
  padding-bottom: calc(170 / 128 * 100%);
  overflow: hidden;
}
.mod-events-detail-staff-col__item > figure img {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  height: auto;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.mod-events-detail-staff-col__item .mod-events-detail-staff-col__name {
margin-top:13px;
}
.mod-events-detail-staff-col__item .mod-events-detail-staff-col__credit {
position:absolute;
right:0;
height: 12px;
}


/* aside */
.mod-events-article-aside-item + .mod-events-article-aside-item {
  margin-top: 4rem;
}
.mod-events-article-aside-item-title {
  position: relative;
  margin-bottom: .25rem;
  border-bottom: solid 0.25rem #999999;
  border-radius: .125rem;
  padding-left: 1rem;
  padding-bottom: .25rem;
  font-weight: 700;
  font-size: 1rem;
}
.mod-events-article-aside-item-title:before {
  content: "";
  position: absolute;
  left: 0;
  top: .25rem;
  width: 0.75rem;
  height: 0.75rem;
  border: solid 0.25rem #000000;
  border-radius: 50%;
}

.mod-events-article-aside-schedule {
  border-top: solid 0.125rem #cccccc;
}
.mod-events-article-aside-schedule-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: solid 0.125rem #eeeeee;
  padding-left: 1rem;
  padding-right: 1rem;
}
.mod-events-article-aside-schedule-item .date {
width: 9rem;
margin-right: 0.5rem;
  text-align: right;
}

.mod-foot-archive-btns {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -2rem;
}
.mod-foot-archive-btns__item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
  margin-left: 2rem;
  border-bottom: solid 0.25rem #e21c14;
  border-radius: 0.125rem;
}

.mod-foot-archive-btns-title {
  position: relative;
  display: inline-block;
  font-weight: 700;
  font-size: 0.75rem;
  -webkit-transition: .3s;
  transition: .3s;
}
.mod-foot-archive-btns-title:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-left: .25rem;
  width: 1.375rem;
  height: 1.375rem;
  background-size: 100%;
  background-image: url(../images/common/icon-ar.png);
}
.mod-foot-archive-btns-title:hover {
  color: #e21c14;
  text-decoration: none;
}

.mod-foot-archive-btns-select-wrap {
  position: relative;
}

.mod-foot-archive-btns-caption {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: 700;
  font-size: 0.875rem;
}

.mod-foot-archive-btns-select {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: block;
  width: 100%;
  font-weight: 700;
  font-size: 1rem;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  min-height: 40px;
  padding: 0.75rem 3rem 0.75rem 0;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  text-overflow: '';
  background-size: 1rem auto;
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-image: url(../images/common/icon-select.png);
}

select.mod-foot-archive-btns-select::-ms-expand {
  display: none;
}

/* ticket */
.mod-events-ticket-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-events-ticket-nav > * {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 15rem;
  height: 15rem;
  border: solid 0.25rem #cccccc;
  border-radius: 50%;
}
.mod-events-ticket-nav > * + * {
  margin-left: 4rem;
}
.mod-events-ticket-nav > *:before {
  content: "";
  width: 0.875rem;
  height: 0.875rem;
  border-bottom: solid 0.25rem #e21c14;
  border-right: solid 0.25rem #e21c14;
  border-radius: .125rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-left: -.5rem;
  position: absolute;
  left: 50%;
  bottom: 1rem;
}
.mod-events-ticket-nav > * a {
  position: relative;
  display: block;
  color: #e21c14;
  font-weight: 700;
  padding-bottom: 2rem;
  font-size: 1.125rem;
  text-align: center;
}
.mod-events-ticket-nav > * a .icon {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 8rem;
  height: 8rem;
  background-size: auto 100%;
  background-image: url(../images/events/ticket/icons-nav.png);
}
.mod-events-ticket-nav > * a .icon--02 {
  background-position: -100% 0;
}
.mod-events-ticket-nav > * a .icon--03 {
  background-position: -200% 0;
}

.mod-events-ticket-title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2rem;
  height: 2.8125rem;
  padding: .25rem .25rem .25rem 4rem;
  background-color: #eeeeee;
  font-weight: 700;
  font-size: 1.5rem;
  border-radius: .25rem;
  overflow: hidden;
}
.mod-events-ticket-title:before {
  content: "";
  width: 3.25rem;
  height: 2.8125rem;
  position: absolute;
  left: 0;
  top: 0;
  background-size: auto 100%;
  background-color: #e21c14;
  background-image: url(../images/events/ticket/icons-title.png);
}
.mod-events-ticket-title--02:before {
  background-position: -100% 0;
}
.mod-events-ticket-title--03:before {
  background-position: -200% 0;
}

.mod-events-ticket-item {
  position: relative;
  padding: 0 2rem 2rem;
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
  margin-bottom: 2rem;
}
.mod-events-ticket-item + .mod-events-ticket-item {
  position: relative;
  margin-top: 5rem;
}
.mod-events-ticket-item + .mod-events-ticket-item:before {
  content: "";
  position: absolute;
  left: 50%;
  top: -3.5625rem;
  width: 1.125rem;
  height: 2.125rem;
  background-size: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-image: url(../images/events/ticket/icon-step.png);
}
.mod-events-ticket-item-inner {
  max-width: 30rem;
  margin-left: auto;
  margin-right: auto;
}

.mod-events-ticket-item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: translate(-1rem, -50%);
          transform: translate(-1rem, -50%);
}
.mod-events-ticket-item-title .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 5.5rem;
  height: 2.875rem;
  margin-right: 1rem;
  font-weight: 700;
  border: solid 0.125rem #e21c14;
  border-radius: .25rem;
  color: #e21c14;
  font-size: 1.125rem;
}
.mod-events-ticket-item-title .icon span {
  font-size: 1.75rem;
}
.mod-events-ticket-item-title span {
  font-weight: 700;
  font-size: 1.5rem;
}

#clndr * {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

@media screen and (max-width: 991px), print {
  #clndr .mod-pc-only {
    display: none !important;
  }
}
@media screen and (min-width: 992px) {
  /* CALENDAR HEADER */
  #clndr__head {
    position: relative;
  }

  .clndr__head-title {
    padding: 2rem 0 0.75rem 0;
  }

  .clndr__head-title .meta {
    display: block;
    font-size: 1.25rem;
    font-weight: normal;
    line-height: 1.5;
  }

  .clndr__head-title .title {
    display: block;
    font-size: 2.25rem;
    font-weight: normal;
    line-height: 1.5;
  }

  .clndr__head-legend {
    background: #F9F4E8;
    border: 1px solid #000;
    bottom: 1rem;
    margin: 0;
    padding: 10px 16px 21px 28px;
    position: absolute;
    right: 1rem;
    width: 514px;
  }

  .clndr__head-legend .col {
    padding: 0 0 0.75rem 0;
    overflow: hidden;
    width: 100%;
  }

  .clndr__head-legend .col1of2 {
    float: left;
    width: 50%;
  }

  .clndr__head-legend .col h4,
  .clndr__head-legend .col p {
    font-size: 0.875rem;
    line-height: 2;
    margin: 0;
    padding: 0;
  }

  .clndr__head-legend .col h4 {
    font-weight: bold;
  }

  .clndr__head-legend .note {
    font-size: 0.75rem;
    line-height: 1.5;
    margin: 0;
    padding: 0;
  }

  .clndr__head-pulldown {
    background: #eee;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    min-height: 4rem;
    padding: 0.875rem;
  }

  .clndr__head-pulldown:after {
    clear: both;
    content: '.';
    display: block;
    font-size: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
    text-decoration: none;
  }

  .clndr__head-pulldown select {
    background: url(../images/rental/calendar/arrow_bottom.svg) no-repeat 105% 60%/3.2rem auto;
    border: 0;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: Arial, Helvetica, sans-serif;
    font-variant-east-asian: proportional-width;
    font-variant-numeric: proportional-nums;
    font-variant: normal;
    -webkit-font-feature-settings: "palt", "lnum";
            font-feature-settings: "palt", "lnum";
    font-size: 1.125rem;
    font-weight: bold;
    height: 2.5rem;
    line-height: 2.5rem;
    margin: 0;
    padding: 0 0 0 12.5rem;
    position: relative;
    width: 20rem;
    z-index: 2;
  }

  .clndr__head-pulldown .pulldow_wrapper {
    float: left;
    position: relative;
  }

  .clndr__head-pulldown .pulldow_wrapper h4 {
    font-size: 0.875rem;
    left: 0;
    position: absolute;
    top: 0.65rem;
    z-index: 1;
  }

  .clndr__head-pulldown .pulldow_wrapper:after {
    background: #E21C14;
    border-radius: 0.125rem;
    content: ' ';
    display: block;
    height: 0.25rem;
    margin: 0;
    padding: 0;
    overflow: hidden;
    width: 100%;
  }

  .clndr__tr {
    display: block;
    overflow: hidden;
    width: 100%;
  }

  .clndr__td,
  .clndr__th {
    float: left;
    width: 12.4%;
    width: calc(12.5% - 1px);
  }

  /* HEADER */
  .clndr__thead {
    border-top: 2px solid #000;
    border-bottom: 1px solid #000;
  }

  .clndr__th {
    background: #F9F4E8;
    border-left: 1px solid #807F7D;
    color: #000;
    font-size: 1rem;
    font-weight: bold;
    height: 2rem;
    line-height: 2rem;
    text-align: left;
    text-indent: 0.625rem;
    /* 10px */
  }

  .clndr__th:first-child {
    border-left-color: #F9F4E8;
  }

  .clndr__th_weekday6 {
    background: #148EE2;
    border-left-color: #fff;
    color: #fff;
  }

  .clndr__th_weekday7 {
    background: #E21C14;
    border-left-color: #fff;
    color: #fff;
  }

  /* BODY */
  .clndr__tbody .clndr__tr {
    border-bottom: 2px solid #000;
  }

  .clndr__tbody .clndr__tr:last-child {
    border-bottom: 0;
  }

  .clndr__tbody .clndr__tr .clndr__td:nth-child(even) {
    background-color: #eee;
  }

  .clndr__td {
    border-left: 1px solid #807F7D;
  }

  .clndr__td:first-child {
    border-left: 1px solid #fff;
  }

  .clndr__event {
    overflow: hidden;
    width: 100%;
  }

  .clndr__event-title {
    border-bottom: 1px solid #807F7D;
    height: 1.625rem;
    line-height: 1.2;
    margin: 0;
    padding: 1rem 0 0 0;
    text-indent: 0.625rem;
    /* 10px */
  }

  .clndr__event-title .weekdate {
    font-size: 1.3125rem;
    font-weight: 400;
  }

  .clndr__event-title .weekdate .txt,
  .clndr__event-title .weekday {
    display: none;
  }

  .clndr__td_weekday6 .clndr__event-title {
    color: #148EE2;
  }

  .clndr__td_weekday0 .clndr__event-title,
  .clndr-holiday .clndr__event-title {
    color: #E21C14;
  }

  .clndr__hours-content,
  .clndr__hours-content li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .clndr__hours-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    width: calc(100% + 2px);
  }

  .clndr__hours-content .inactive {
    color: #ccc;
  }

  .clndr__hours-content li {
    border-left: 1px solid #807F7D;
    border-bottom: 1px solid #807F7D;
    display: inline-block;
    height: 2.625rem;
    line-height: 2.625rem;
    width: 33.3%;
    width: calc(33.3% - 1px);
    text-align: center;
  }

  .clndr__hours-content li:first-child {
    border-left: 0;
    width: 33.3%;
  }

  .clndr__hours-content li.fullwidth {
    width: 100%;
  }

  .clndr__range.mod-pc-only .clndr__hours-content:first-child li {
    font-size: 1rem;
    font-weight: bold;
    height: 1.55rem;
    line-height: 1.5rem;
  }

  .clndr__range.mod-pc-only .clndr__hours-content:last-child li {
    font-size: 0.6875rem;
    font-weight: bold;
    height: 1rem;
    line-height: 1rem;
  }

  .clndr__range.mod-pc-only .clndr__hours-content .hdouble {
    width: 66.6% !important;
    width: calc(66.6% - 1px) !important;
  }

  .clndr__range.mod-pc-only .clndr__hours-content .vdouble {
    border-bottom: 0;
    height: 2.625rem !important;
    margin: 0 0 -1rem 0 !important;
    line-height: 2.8rem !important;
  }

  .clndr__range:last-child .clndr__hours-content:last-child li {
    border-bottom: 0;
  }

  .clndr__tbody .clndr-off * {
    color: #ccc !important;
  }

  .clndr__tbody .clndr__td.mod-pc-only:first-child .clndr__hours-content li {
    font-size: 0.75rem;
    text-align: left;
  }

  .clndr__tbody .clndr__td.mod-pc-only:first-child .clndr__range:first-child .clndr__hours-content .fullwidth {
    font-size: 0.875rem;
  }

  /* FOOTER */
  #clndr__footer {
    padding: 0.5rem 0 0 0;
  }

  #clndr__footer p {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0 0 0.5rem 0;
    padding: 0;
  }
}
@media screen and (max-width: 991px) {
  /* =======================================================================
  モジュール
  ======================================================================= */
  /* sp only */
  .mod-pc-only {
    display: none !important;
  }

  .mod-text-m {
    font-size: 0.875rem;
  }

  .mod-text-s {
    font-size: 0.75rem;
  }

  .mod-text-xs {
    font-size: 0.6875rem;
  }

  .mod-text-2xs {
    font-size: 0.625rem;
  }

  .mod-align-c--pc {
    text-align: inherit;
  }

  .mod-list-line > *:before {
    left: 0.45rem;
    top: 0.7rem;
  }

  .mod-inner,
  .mod-inner-m,
  .mod-inner-s {
    max-width: inherit;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
  .mod-inner .mod-inner,
  .mod-inner .mod-inner-m,
  .mod-inner .mod-inner-s,
  .mod-inner-m .mod-inner,
  .mod-inner-m .mod-inner-m,
  .mod-inner-m .mod-inner-s,
  .mod-inner-s .mod-inner,
  .mod-inner-s .mod-inner-m,
  .mod-inner-s .mod-inner-s {
    padding-left: 0;
    padding-right: 0;
  }

  .mod-indent {
    margin-left: 0;
    margin-right: 0;
  }
  .mod-indent--sp {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }

  .mod-p-2xs {
    padding: 0.125rem;
  }

  .mod-p-xs {
    padding: 0.25rem;
  }

  .mod-p-s {
    padding: 0.5;
  }

  .mod-p {
    padding: 0.9375rem;
  }

  .mod-p-l {
    padding: 1.375rem;
  }

  .mod-p-xl {
    padding: 1.875rem;
  }

  .mod-p-2xl {
    padding: 2.5rem;
  }

  .mod-pt-2xs {
    padding-top: 0.125rem;
  }

  .mod-pt-xs {
    padding-top: 0.25rem;
  }

  .mod-pt-s {
    padding-top: 0.5;
  }

  .mod-pt {
    padding-top: 0.9375rem;
  }

  .mod-pt-l {
    padding-top: 1.375rem;
  }

  .mod-pt-xl {
    padding-top: 1.875rem;
  }

  .mod-pt-2xl {
    padding-top: 2.5rem;
  }

  .mod-pb-2xs {
    padding-bottom: 0.125rem;
  }

  .mod-pb-xs {
    padding-bottom: 0.25rem;
  }

  .mod-pb-s {
    padding-bottom: 0.5;
  }

  .mod-pb {
    padding-bottom: 0.9375rem;
  }

  .mod-pb-l {
    padding-bottom: 1.375rem;
  }

  .mod-pb-xl {
    padding-bottom: 1.875rem;
  }

  .mod-pb-2xl {
    padding-bottom: 2.5rem;
  }

  .mod-mt-2xs {
    margin-top: 0.125rem;
  }

  .mod-mt-xs {
    margin-top: 0.25rem;
  }

  .mod-mt-s {
    margin-top: 0.5;
  }

  .mod-mt {
    margin-top: 0.9375rem;
  }

  .mod-mt-l {
    margin-top: 1.375rem;
  }

  .mod-mt-xl {
    margin-top: 1.875rem;
  }

  .mod-mt-2xl {
    margin-top: 2.5rem;
  }

  .mod-mb-2xs {
    margin-bottom: 0.125rem;
  }

  .mod-mb-xs {
    margin-bottom: 0.25rem;
  }

  .mod-mb-s {
    margin-bottom: 0.5;
  }

  .mod-mb {
    margin-bottom: 0.9375rem;
  }

  .mod-mb-l {
    margin-bottom: 1.375rem;
  }

  .mod-mb-xl {
    margin-bottom: 1.875rem;
  }

  .mod-mb-2xl {
    margin-bottom: 2.5rem;
  }

  .mod-btn {
    font-size: 0.6875rem;
  }
  .mod-btn--default {
    width: 100%;
  }
  .mod-btn--s {
    font-size: 0.625rem;
  }

  /* col */
  .mod-col {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-left: -2rem;
    margin-bottom: -2rem;
  }
  .mod-col__item {
    width: calc(50% - 2rem);
    max-width: inherit;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: 2rem;
    margin-bottom: 2rem;
  }
  .mod-col:not(.mod-col--2):not(.mod-col--3):not(.mod-col--4) {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mod-col:not(.mod-col--2):not(.mod-col--3):not(.mod-col--4) > .mod-col__item {
    width: calc(100% - 2rem);
  }

  .mod-flex {
    margin-left: -1rem;
    margin-bottom: -1rem;
  }
  .mod-flex__item {
    margin-left: 1rem;
    margin-bottom: 1rem;
  }
  .mod-flex--c2 > .mod-flex__item {
    width: calc(100% / 2 - 1rem);
  }
  .mod-flex--c3 > .mod-flex__item {
    width: calc(100% / 3 - 1rem);
  }
  .mod-flex--c4 > .mod-flex__item {
    width: calc(100% / 2 - 1rem);
  }
  .mod-flex--c5 > .mod-flex__item {
    width: calc(100% / 2 - 1rem);
  }
  .mod-flex--sp-row {
    display: block;
    margin-left: 0;
    margin-bottom: 0;
  }
  .mod-flex--sp-row > .mod-flex__item {
    width: auto;
    margin-left: 0;
  }
  .mod-flex--sp-row > .mod-flex__item + > .mod-flex__item {
    margin-top: 1rem;
  }

  .mod-definition-col__title {
    width: 8rem;
    margin-right: 1rem;
  }
  .mod-definition-col__content {
    width: calc(100% - 9rem);
  }

  /* title */
  .mod-page-title {
    font-size: 1.375rem;
  }

  .mod-line-title {
    font-size: 1rem;
    padding: .5rem;
  }

  .mod-icon-title {
    padding-left: 1rem;
    font-size: 1rem;
  }
  .mod-icon-title:before {
    width: 0.75rem;
    height: 0.75rem;
    border-width: 0.25rem;
    top: 0.175rem;
  }

  .mod-tel {
    font-size: 1.5rem;
  }
  .mod-tel .icon {
    width: 1.5rem;
    height: 1.75rem;
  }

  /* nav */
  .mod-page-nav {
    padding: 0.625rem 0.625rem 0rem;
    font-size: 0.75rem;
  }
  .mod-page-nav:before {
    width: calc(100% - 1.25rem);
  }
  .mod-page-nav__item {
    margin-bottom: 1rem;
    margin-right: 1rem;
  }
  .mod-page-nav__item + .mod-page-nav__item {
    margin-left: 0;
  }
  .mod-page-nav__item a {
    padding-left: 1.25rem;
  }
  .mod-page-nav__item a:before {
    width: 1.125rem;
    height: 1.125rem;
  }

  /* faq */
  .mod-faq-list-item-content {
    padding: 0.625rem 0.625rem 0.625rem 4.625rem;
  }
  .mod-faq-list-item-content:before {
    left: 0.625rem;
  }

  /* breadcrumb */
  .mod-breadcrumb-wrap {
    display: none;
  }

  /* form */
  .mod-form-item {
    display: block;
  }
  .mod-form-item + .mod-form-item {
    margin-top: 2rem;
  }
  .mod-form-item-title {
    width: auto;
  }
  .mod-form-item-title .require {
    font-size: 0.75rem;
  }
  .mod-form-item-content {
    width: auto;
    margin-top: 0.625rem;
    font-size: 0.875rem;
  }

  input[type="text"].mod-input-text,
  textarea.mod-textarea,
  select.mod-select {
    font-size: 0.875rem;
  }

  /* sns bnr */
  .mod-sns-bnr {
    margin-top: 0.625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 0.25rem;
    padding: 0.625rem;
  }
  .mod-sns-bnr .icon {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    background-size: 100%;
  }
  .mod-sns-bnr span {
    border-left: solid 1px rgba(255, 255, 255, 0.5);
    margin-left: 1.0rem;
    padding-left: 1.0rem;
    font-weight: 700;
    font-size: 1.5rem;
    color: #ffffff;
  }
  .mod-sns-bnr span small {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.75rem;
    font-weight: 500;
  }
  .mod-sns-bnr--tw {
    background-color: #1da1f2;
  }
  .mod-sns-bnr--tw .icon {
    background-image: url(../images/common/icon-tw.png);
  }
  .mod-sns-bnr--fb {
    background-color: #3b5998;
  }
  .mod-sns-bnr--fb .icon {
    background-image: url(../images/common/icon-fb.png);
  }
}
@media screen and (max-width: 991px) {
  /* =======================================================================
  共通
  ======================================================================= */
  a {
    -webkit-transition: none !important;
    transition: none !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.2);
  }
  a:hover {
    opacity: 1 !important;
    text-decoration: none !important;
  }

  a.m-uline:hover {
    text-decoration: underline !important;
  }

  a:target {
    -webkit-animation: ankerSp 0.1s;
            animation: ankerSp 0.1s;
  }

  /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  base
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
  body.is-nav-show {
    position: fixed;
    width: 100%;
    height: 100%;
  }

  body {
    font-size: 0.75rem;
  }

  .layout-main {
    -webkit-transition: .3s;
    transition: .3s;
  }
  .layout-main.is-active {
    overflow: hidden;
  }

  .layout-bg {
    margin: 0.625rem 0.625rem 0;
  }
  .layout-bg:before, .layout-bg:after {
    width: 0.625rem;
  }
  .layout-bg:before {
    left: -0.625rem;
    top: 1.25rem;
    height: calc(100% - 1.55rem);
  }
  .layout-bg:after {
    right: -0.625rem;
    top: 8.5rem;
    height: calc(100% - 8.8rem);
  }

  /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  header
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
  .base-header-inner {
    position: relative;
    display: block;
    padding: 0;
  }

  .mod-header-h.is-fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    width: calc(100% - 1.25rem);
    background-color: #ffffff;
    z-index: 5001;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    -webkit-transition: .3s;
    transition: .3s;
  }
  .mod-header-h.is-fixed.is-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  .mod-header-news {
    font-size: 0.75rem;
    text-align: left;
  }
  .mod-header-news a,
  .mod-header-news span {
    padding: 0.25rem;
  }

  .mod-header-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 10rem;
    height: 3.5rem;
    margin-left: 0.625rem;
    margin-bottom: 0;
  }

  .mod-header-menu {
    position: absolute;
    right: 0;
    top: 0;
    width: 4.5rem;
    height: 3.5rem;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    border-radius: 0 0.25rem 0 0;
    background-color: #eeeeee;
  }
  .mod-header-menu figure {
    width: 1.75rem;
    height: 0.125rem;
    position: absolute;
    left: 50%;
    margin-left: -0.875rem;
    background-color: #000000;
    -webkit-transition: .3s;
    transition: .3s;
  }
  .mod-header-menu figure:nth-of-type(1) {
    top: 0.75rem;
  }
  .mod-header-menu figure:nth-of-type(2) {
    top: 1.25rem;
  }
  .mod-header-menu figure:nth-of-type(3) {
    top: 1.75rem;
  }
  .mod-header-menu.is-active {
    background-color: #e21c14;
    color: #ffffff;
  }
  .mod-header-menu.is-active figure {
    background-color: #ffffff;
  }
  .mod-header-menu.is-active figure:nth-of-type(1) {
    -webkit-transform: translateY(0.5rem) rotate(-45deg);
            transform: translateY(0.5rem) rotate(-45deg);
  }
  .mod-header-menu.is-active figure:nth-of-type(2) {
    height: 0;
    opacity: 0;
  }
  .mod-header-menu.is-active figure:nth-of-type(3) {
    -webkit-transform: translateY(-0.5rem) rotate(45deg);
            transform: translateY(-0.5rem) rotate(45deg);
  }
  .mod-header-menu span {
    position: absolute;
    font-size: 0.625rem;
    left: 0;
    bottom: 0.25rem;
    width: 100%;
    text-align: center;
    font-weight: 700;
  }

  .mod-header-ticket {
    position: absolute;
    right: 4.5rem;
    top: 0;
    width: 4.5rem;
    height: 3.5rem;
    background-color: #eeeeee;
    border-top: solid 1px #ffffff;
    font-size: 0.625rem;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
  }
  .mod-header-ticket span {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    white-space: nowrap;
  }
  .mod-header-ticket:before {
    content: "";
    width: 1px;
    height: 3rem;
    background-color: #cccccc;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .mod-header-ticket i {
    width: 2.5rem;
    height: 1.875rem;
    margin-bottom: .25rem;
    background-size: 100%;
    background-image: url(../images/common/icon-ticket.png);
  }

  .mod-header-nav-list {
    display: none;
  }

  .mod-header-nav-sp {
    position: fixed;
    right: 0;
    width: 100%;
    -webkit-transition: .3s;
    transition: .3s;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    overflow: auto;
    height: 100%;
    z-index: 5010;
    opacity: 0;
    pointer-events: none;
  }
  .mod-header-nav-sp.is-active {
    opacity: 1;
    pointer-events: auto;
  }
  .mod-header-nav-sp-lang {
    border-top: solid 0.25rem #e21c14;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .mod-header-nav-sp-lang > * {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    font-size: 0.75rem;
  }
  .mod-header-nav-sp-lang > * a {
    display: block;
    background-color: #ffffff;
    text-align: center;
    padding: .5rem;
    color: #e21c14;
  }
  .mod-header-nav-sp-lang > * a.is-active {
    background-color: #e21c14;
    color: #ffffff;
  }
  .mod-header-nav-sp-inner {
    background-color: #f9f4e8;
    padding: 0.75rem;
  }

  .mod-header-nav-sp-search {
    border-radius: 2px;
    border: solid 1px #cccccc;
  }

  .mod-header-nav-sp-item {
    background-color: #ffffff;
    border-radius: .25rem;
    margin-top: 2rem;
    padding: 0 1.25rem 0.5rem;
  }
  .mod-header-nav-sp-item-title {
    margin-left: -0.625rem;
    font-weight: 700;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-bottom: -0.625rem;
  }

  .mod-header-nav-sp-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -1rem;
  }
  .mod-header-nav-sp-list__item {
    width: calc(50% - 1rem);
    margin-left: 1rem;
    padding-bottom: .75rem;
    padding-top: .75rem;
    border-top: solid 1px #cccccc;
    font-size: 0.75rem;
  }
  .mod-header-nav-sp-list__item:nth-of-type(1), .mod-header-nav-sp-list__item:nth-of-type(2) {
    border-top: 0;
  }
  .mod-header-nav-sp-list__item a {
    position: relative;
    display: block;
    padding-left: 1.75rem;
    color: #e21c14;
  }
  .mod-header-nav-sp-list__item a:before {
    content: "";
    position: absolute;
    width: 1.375rem;
    height: 1.375rem;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background-size: 100%;
    background-image: url(../images/common/icon-ar.png);
  }

  .mod-header-nav-sp-holiday {
    margin-top: 0.625rem;
    padding-bottom: 0.5rem;
    border-bottom: solid 1px #cccccc;
  }
  .mod-header-nav-sp-holiday-title {
    position: relative;
    font-weight: 700;
    padding-left: 1rem;
    font-size: 1rem;
    padding-bottom: .25rem;
    border-bottom: solid 1px #cccccc;
  }
  .mod-header-nav-sp-holiday-title:before {
    content: "";
    position: absolute;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    width: .75rem;
    height: .75rem;
    border: solid 0.25rem #000000;
    border-radius: 50%;
  }
  .mod-header-nav-sp-holiday-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: .625rem;
    padding-bottom: .625rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: solid 1px #cccccc;
  }
  .mod-header-nav-sp-holiday-item__title {
    font-weight: 700;
    width: 40%;
    font-size: 0.75rem;
  }
  .mod-header-nav-sp-holiday-item__text {
    width: 58%;
    font-size: 0.875rem;
  }
  .mod-header-nav-sp-holiday-remarks {
    margin-top: 0.25rem;
    font-size: 0.625rem;
  }

  .mod-global-nav {
    margin-top: 0;
    margin-left: 0.625rem;
    margin-right: 0.625rem;
    font-size: 0.75rem;
  }
  .mod-global-nav__item {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    text-align: center;
  }
  .mod-global-nav__item + .mod-global-nav__item {
    margin-left: 0;
  }
  .mod-global-nav__item + .mod-global-nav__item:before {
    content: "";
    width: 1px;
    height: 2rem;
    background-color: #eeeeee;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  /* nav */
  .mod-content-nav-list {
    overflow-x: auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
    width: 100%;
  }
  .mod-content-nav-list__item {
    white-space: nowrap;
    font-size: 0.875rem;
    padding-left: .75rem;
    padding-right: .75rem;
  }
  .mod-content-nav-list__item + .mod-content-nav-list__item {
    margin-left: 0rem;
  }

  /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  footer
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
  .base-footer {
    position: relative;
    margin-left: -0.625rem;
    margin-right: -0.625rem;
    z-index: 1;
  }
  .base-footer-inner {
    display: block;
    max-width: inherit;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .mod-footer-info {
    line-height: 1.8;
    font-size: 0.75rem;
    text-align: center;
  }
  .mod-footer-info-logo {
    width: 10rem;
    margin-left: auto;
    margin-right: auto;
  }
  .mod-footer-info-content {
    margin-top: 0.9375rem;
  }
  .mod-footer-info-title small {
    font-size: 0.625rem;
  }

  .mod-footer-nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: 1.875rem;
    margin-left: -0.625rem;
    margin-bottom: -0.9375rem;
    font-size: 0.75rem;
  }
  .mod-footer-nav-item {
    width: calc(50% - 0.625rem);
    margin-left: 0.625rem;
    margin-bottom: 0.9375rem;
  }
  .mod-footer-nav-item + .mod-footer-nav-item {
    margin-left: 0.625rem;
  }
  .mod-footer-nav-list + .mod-footer-nav-list {
    margin-top: 0.9375rem;
  }
  .mod-footer-nav-list--other {
    padding-top: 0;
  }

  .mod-footer-cr {
    margin-top: 3.75rem;
    font-size: 0.625rem;
    text-align: center;
  }

  .mod-pagetop {
    position: relative;
    z-index: 1;
    margin-left: -0.625rem;
    margin-right: -0.625rem;
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 991px) {
  /* =======================================================================
  home
  ======================================================================= */
  .mod-home-title {
    text-align: center;
    font-size: 1.25rem;
  }

  /* mainvisual */
  .mod-home-mainvisual {
    position: relative;
    z-index: 1;
    margin-left: -0.3125rem;
    margin-right: -0.3125rem;
  }

  .mod-home-mainvisual-article a {
    padding-bottom: 0;
  }
  .mod-home-mainvisual-article-content {
    position: relative;
    left: auto;
    bottom: auto;
    margin-left: 0.3125rem;
    margin-right: 0.3125rem;
    padding: 0 1.25rem 0.625rem;
    color: #000000;
    background-color: #f9f4e8;
  }
  .mod-home-mainvisual-article-content .icon-sale {
    font-size: 0.75rem;
    padding: 0.25rem 0.375rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #ffffff;
  }
  .mod-home-mainvisual-article-text {
    margin-top: 0.75rem;
    font-size: 0.625rem;
  }
  .mod-home-mainvisual-article-title {
    margin-top: 0.25rem;
    font-size: 1.25rem;
  }
  .mod-home-mainvisual-article-title-s {
    margin-top: 0.25rem;
    font-size: 0.75rem;
  }
  .mod-home-mainvisual-article .datetime {
    margin-top: 0.625rem;
    font-size: 0.875rem;
  }

  /* headline */
  .mod-home-news-headline {
    margin-top: 0.75rem;
  }

  .mod-home-news-ticker {
    position: relative;
    height: 3.125rem;
    overflow: hidden;
  }
  .mod-home-news-ticker__item {
    display: block;
    padding: 0.5rem 0.625rem;
    font-size: 0.875rem;
  }
  .mod-home-news-ticker__item:before {
    right: 0.625rem;
  }
  .mod-home-news-ticker__item time {
    display: block;
    width: auto;
    margin-bottom: 0.125rem;
  }
  .mod-home-news-ticker__item a, .mod-home-news-ticker__item span {
    display: block;
    line-height: inherit;
    height: auto;
    width: 100%;
    padding-right: 1.5rem;
  }

  .mod-home-schedule {
    display: block;
    margin-left: 0;
    margin-top: 1rem;
  }
  .mod-home-schedule__item {
    width: auto;
    margin-left: 0;
    padding: 0.625rem;
  }
  .mod-home-schedule__item + .mod-home-schedule__item {
    margin-top: 1rem;
  }
  .mod-home-schedule-header {
    display: block;
  }
  .mod-home-schedule-title {
    padding-left: 1rem;
    font-size: 1rem;
  }
  .mod-home-schedule-title .num {
    font-size: 1rem;
  }
  .mod-home-schedule-title .md {
    font-size: 1rem;
  }
  .mod-home-schedule-title:before {
    width: 0.75rem;
    height: 0.75rem;
    border-width: 0.25rem;
  }
  .mod-home-schedule-remarks {
    margin-top: .25rem;
  }

  .mod-home-schedule-today {
    margin-top: 0.75rem;
  }
  .mod-home-schedule-today-image {
    display: none;
  }
  .mod-home-schedule-today-content-title {
    font-size: 0.875rem;
  }

  .mod-home-schedule-holiday-item__title {
    font-size: 0.75rem;
  }
  .mod-home-schedule-holiday-item__text {
    font-size: 0.875rem;
  }

  /* events */
  .mod-events {
    margin-top: 1.0rem;
  }

  .mod-events-list {
    display: block;
    margin-left: 0;
    margin-bottom: 0;
  }
  .mod-events-list + .mod-events-list {
  margin-top: 0.625rem;
  }
  .mod-events-list-item {
    width: auto;
    margin-left: 0;
    margin-bottom: 0;
  }
  .mod-events-list-item + .mod-events-list-item {
    margin-top: 0.625rem;
  }
  .mod-events-list-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    min-height: inherit;
  }
  .mod-events-list-item .datetime {
    width: 100%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 0.25rem 0.5rem;
    font-size: 0.625rem;
  }
  .mod-events-list-item-content {
    width: 50%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 0.25rem 0.5rem;
  }
  .mod-events-list-item-image {
    width: 50%;
    padding-bottom: calc(56.25% / 2);
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative;
  }
  .mod-events-list-item .icon-sales {
    position: absolute;
    display: inline-block;
    right: auto;
    top: auto;
    left: 0.3125rem;
    bottom: 0.3125rem;
  }
  .mod-events-list-item-title-s {
    font-size: 0.625rem;
  }
  .mod-events-list-item-title {
    margin-top: 0.25rem;
    font-size: 0.8125rem;
  }
  .mod-events-list-item-text {
    margin-top: 0.25rem;
    font-size: 0.625rem;
  }

  .mod-home-events-btn {
    margin-top: 1.0rem;
  }
  .mod-home-events-btn__item {
    width: 50%;
  }

  .mod-home-events-others {
    display: block;
    margin-top: 0.75rem;
    margin-left: 0;
    margin-bottom: 0;
  }
  .mod-home-events-others__item {
    width: auto;
    margin-left: 0;
    margin-bottom: 0;
  }
  .mod-home-events-others__item + .mod-home-events-others__item {
    margin-top: 0.625rem;
  }
  .mod-home-events-others-image {
    width: 2rem;
  }
  .mod-home-events-others-content {
    width: calc(100% - 4rem);
    padding: 0.25rem 0.5rem;
  }
  .mod-home-events-others-content-title {
    font-size: 0.75rem;
  }
  .mod-home-events-others-content .datetime {
    margin-top: 0.25rem;
    font-size: 0.6875rem;
  }

  .mod-home-events-others-btn {
    margin-top: 1.0rem;
    margin-left: -0.625rem;
  }
  .mod-home-events-others-btn__item {
    width: calc(50% - 0.625rem);
    margin-left: 0.625rem;
  }
  .mod-home-events-others-btn__item + .mod-home-events-others-btn__item {
    margin-left: 0.625rem;
  }

  .mod-home-events-title {
    font-size: 1.0rem;
    border-bottom-width: 0.125rem;
    padding-left: 1.0rem;
    padding-bottom: 0.25rem;
  }
  .mod-home-events-title:before {
    width: 0.75rem;
    height: 0.75rem;
    border-width: 0.25rem;
    top: calc(50% - 0.125rem);
  }

  .mod-home-events-topics {
    margin-top: 1.0rem;
  }
  .mod-home-events-topics a {
    display: block;
    min-height: inherit;
  }
  .mod-home-events-topics-image {
    width: auto;
    height: 0;
    padding-bottom: 56.25%;
  }
  .mod-home-events-topics-content {
    width: auto;
    min-height: 9.25rem;
    padding: 0.5rem 1.0rem;
  }
  .mod-home-events-topics-content-title {
    margin-top: 0.5rem;
    font-size: 0.75rem;
  }
  .mod-home-events-topics-content-name {
    margin-top: 1.0rem;
    font-size: 0.875rem;
  }
  .mod-home-events-topics-content-text {
    margin-top: 0.25rem;
  }
  .mod-home-events-topics-content .num {
    right: -1.3125rem;
    top: -1.25rem;
    font-size: 8.0rem;
  }
  .mod-home-events-topics-content .cat {
    left: -0.5rem;
    bottom: -0.75rem;
    font-size: 4.0rem;
  }

  .mod-home-events-topics-btn {
    margin-top: 1.0rem;
  }
  .mod-home-events-topics-btn__item {
    width: 50%;
  }

  /* rental */
  .mod-home-rental {
    display: block;
    margin-top: 0.75rem;
    margin-left: 0;
  }
  .mod-home-rental__item {
    width: auto;
    margin-left: 0;
  }
  .mod-home-rental__item + .mod-home-rental__item {
    margin-top: 0.625rem;
  }
  .mod-home-rental-title {
    font-size: 0.875rem;
  }
  .mod-home-rental-title:after {
    margin-left: 0.25rem;
    width: 1.0rem;
    height: 1.0rem;
  }
  .mod-home-rental-image img {
    width: 100%;
    max-width: inherit;
  }

  /* news */
  .mod-home-news-col {
    display: block;
  }

  .mod-home-news-list {
    width: auto;
  }
  .mod-home-news-list__item {
    position: relative;
    height: auto;
    padding: 0.5rem;
    display: block;
  }
  .mod-home-news-list__item:before {
    display: none;
  }
  .mod-home-news-list__item .header {
    width: auto;
    padding: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    border-right: 0;
  }
  .mod-home-news-list__item .header .datetime {
    display: inline-block;
    font-size: 0.8125rem;
  }
  .mod-home-news-list__item .header .cat {
    margin-left: 0.5rem;
    padding-left: 0.25rem;
    border-left: solid 1px #000000;
    display: inline-block;
    font-size: 0.75rem;
  }
  .mod-home-news-list__item .content {
    position: relative;
    display: block;
    width: auto;
    height: auto;
    line-height: inherit;
    margin-top: 0.25rem;
    padding-right: 0;
    padding-left: 0;
    font-size: 0.8125rem;
  }

  .mod-home-news-tw {
    width: auto;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    border: 0;
    background-color: transparent;
  }

  /* bnr */
  .mod-home-bnr {
    padding: 2rem;
  }
  .mod-home-bnr-list {
    margin-left: -1.75rem;
    margin-bottom: -1.75rem;
  }
  .mod-home-bnr-list__item {
    width: calc(100% / 2 - 1.75rem);
    margin-left: 1.75rem;
    margin-bottom: 1.75rem;
  }
  .mod-home-bnr-list__item img {
    width: 100%;
    max-width: inherit;
  }

@media screen and (max-width: 991px) {
  /* =======================================================================
  about
  ======================================================================= */
  .mod-about-index-main {
    position: relative;
    margin-top: 0;
    height: 0;
    padding-bottom: 75%;
    background-image: url(../images/about/index/img-main-sp.jpg);
  }
  .mod-about-index-main__content {
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
  }
  .mod-about-index-main-title {
    font-size: 1rem;
    letter-spacing: 0;
  }
  .mod-about-index-main-title:before {
    width: 1rem;
    margin-right: 0.25rem;
  }
  .mod-about-index-main-logo {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }

  .mod-about-index-intro-col {
    margin-left: 0;
    margin-right: 0;
    display: block;
  }
  .mod-about-index-intro-col__image {
    display: none;
    width: auto;
    margin-right: 0;
    margin-bottom: 2rem;
  }
  .mod-about-index-intro-col__content > * + * {
    margin-top: 0;
  }

  .mod-about-en-title-01 {
    margin-top: -1rem;
    margin-bottom: -1rem;
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .mod-about-en-title-02 {
    margin-left: 1rem;
    margin-right: 1rem;
    margin-bottom: 0;
  }

  .mod-about-index-theater-item {
    padding: 0rem 0.75rem 2rem;
    background-size: 100% auto;
    background-position: 50% 0;
    background-repeat: no-repeat;
  }
  .mod-about-index-theater-item + .mod-about-index-theater-item {
    margin-top: 2rem;
  }
  .mod-about-index-theater-item:before {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#f9f4e8), color-stop(50%, #f9f4e8), to(rgba(249, 244, 232, 0.5)));
    background-image: linear-gradient(to top, #f9f4e8 0%, #f9f4e8 50%, rgba(249, 244, 232, 0.5) 100%);
  }
  .mod-about-index-theater-item-content {
    width: auto;
  }
  .mod-about-index-theater-item--01 {
    background-image: url(../images/about/index/bg-01-sp.jpg);
  }
  .mod-about-index-theater-item--02 {
    background-image: url(../images/about/index/bg-02-sp.jpg);
  }
  .mod-about-index-theater-item--02 .mod-about-index-theater-item-content {
    float: none;
  }
  .mod-about-index-theater-item--03 {
    background-image: url(../images/about/index/bg-03-sp.jpg);
  }

  .mod-about-index-theater-head {
    padding: 3.5rem 0.75rem 1.5rem;
    margin-bottom: 0;
    text-align: center;
  }
  .mod-about-index-theater-head-title {
    font-size: 1.5rem;
  }
  .mod-about-index-theater-head-text {
    margin-top: 0.5rem;
    font-size: 0.625rem;
    text-indent: -0.625rem;
  }
  .mod-about-index-theater-head-text:before {
    display: inline-block;
    width: 0.625rem;
  }

  .mod-about-index-about {
    margin-top: 2rem;
  }

  .mod-about-en-title-03 {
    margin-bottom: -1rem;
    margin-right: 1rem;
  }

  .mod-about-index-about-col {
    position: relative;
    padding: 1rem 0.75rem 0.75rem;
    display: block;
  }
  .mod-about-index-about-col__head {
    width: auto;
  }
  .mod-about-index-about-col__content {
    margin-top: 1rem;
    width: auto;
    padding: 0.75rem;
  }

  .mod-about-index-about-title {
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
  }

  .mod-about-index-about-list > dt {
    font-size: 0.625rem;
  }
  .mod-about-index-about-list > dd {
    font-size: 0.6875rem;
  }
}
@media screen and (max-width: 991px) {
  /* =======================================================================
  topics
  ======================================================================= */
  .mod-topics-article-header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 0;
    min-height: inherit;
  }
  .mod-topics-article-header .num {
    left: auto;
    right: -1rem;
    top: auto;
    bottom: 1.8rem;
    font-size: 9rem;
  }
  .mod-topics-article-header .cat {
    left: auto;
    right: 0;
    bottom: -.7rem;
    font-size: 3.6rem;
  }
  .mod-topics-article-header-image {
    width: auto;
  }
  .mod-topics-article-header-image img {
    border: 0;
    width: 100%;
    max-width: inherit;
    height: auto;
  }
  .mod-topics-article-header-content {
    width: auto;
    min-height: 10rem;
    padding: 0.625rem;
  }
  .mod-topics-article-header-content-category {
    font-size: 0.75rem;
    margin-bottom: 1rem;
  }
  .mod-topics-article-header-content-title-s {
    font-size: 0.625rem;
    margin-bottom: .5rem;
  }
  .mod-topics-article-header-content-title {
    font-size: 0.75rem;
    margin-bottom: 1rem;
  }
  .mod-topics-article-header-content-name {
    font-size: 1.25rem;
  }

  .mod-topics-article-summary {
    font-size: 0.875rem;
  }

  .mod-topics-article-content {
    margin-bottom: 3rem;
  }

  .mod-events-article-content-body img,
  .mod-topics-article-content-body img {
    margin-bottom: 1.5rem;
  }

  .mod-topics-article-content-body img {
    margin-bottom: 0rem;
  }
  .mod-events-article-content-body h1, .mod-events-article-content-body h2, .mod-events-article-content-body h3, .mod-events-article-content-body h4, .mod-events-article-content-body h5, .mod-events-article-content-body h6,
  .mod-topics-article-content-body h1,
  .mod-topics-article-content-body h2,
  .mod-topics-article-content-body h3,
  .mod-topics-article-content-body h4,
  .mod-topics-article-content-body h5,
  .mod-topics-article-content-body h6 {
    margin-bottom: .75rem;
  }
  .mod-events-article-content-body p, .mod-events-article-content-body ul, .mod-events-article-content-body dl, .mod-events-article-content-body ol,
  .mod-topics-article-content-body p,
  .mod-topics-article-content-body ul,
  .mod-topics-article-content-body dl,
  .mod-topics-article-content-body ol {
    font-size: 0.875rem;
    margin-bottom: 1.5rem;
  }
  .mod-events-article-content-body dt,
  .mod-topics-article-content-body dt {
    font-weight: 700;
  }
  .mod-events-article-content-body hr,
  .mod-topics-article-content-body hr {
    margin-bottom: 1.5rem;
  }
  .mod-events-article-content-body h1,
  .mod-topics-article-content-body h1 {
    font-size: 1.75rem;
  }
  .mod-events-article-content-body h2,
  .mod-topics-article-content-body h2 {
    font-size: 1.5rem;
  }
  .mod-events-article-content-body h3,
  .mod-topics-article-content-body h3 {
    font-size: 1.375rem;
  }
  .mod-events-article-content-body h4,
  .mod-topics-article-content-body h4 {
    font-size: 1.25rem;
  }
  .mod-events-article-content-body h5,
  .mod-topics-article-content-body h5 {
    font-size: 1.125rem;
  }
  .mod-events-article-content-body h6,
  .mod-topics-article-content-body h6 {
    font-size: 1.0rem;
  }

  .mod-topics-article-profile {
    padding: 0.625rem;
  }

  .mod-topics-article-profile-item-image {
    width: 4rem;
    margin-right: 0.625rem;
  }
  .mod-topics-article-profile-item + .mod-topics-article-profile-item {
    margin-top: 0.625rem;
  }
  .mod-topics-article-profile-item-content-text {
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 991px) {
  /* =======================================================================
  events
  ======================================================================= */
  /* common */
  .mod-events-relation__item a,
  .mod-events-relation__item span {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
  .mod-events-relation-image {
    width: 7.5rem;
    margin-right: 0.625rem;
    min-height: inherit;
  }
  .mod-events-relation-content-title-s {
    font-size: 0.625rem;
  }
  .mod-events-relation-content-title {
    font-size: 0.875rem;
  }
  .mod-events-relation-content-text {
    font-size: 0.75rem;
  }
  .mod-events-relation-content-datetime {
    font-size: 0.75rem;
    margin-top: 0.25rem;
  }

  /* index */
  .mod-events-archives-h {
    font-size: 0.6875rem;
    padding-right: 0;
  }
  .mod-events-archives-h__datetime {
    width: auto;
    margin-right: 0;
    padding-left: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .mod-events-archives-h__title {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .mod-events-archives-h__contact {
    width: auto;
    margin-left: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .mod-events-archives-h > * + * {
    position: relative;
    padding-left: 1em;
  }
  .mod-events-archives-h > * + *:before {
    content: "／";
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .mod-events-archives-item > span,
  .mod-events-archives-item > a {
    display: block;
    padding-right: 0;
    padding-top: 0rem;
    padding-bottom: 0rem;
  }
  .mod-events-archives-item > span {
    padding-right: 0;
  }
  .mod-events-archives-item > span .mod-events-archives-item__contact {
    width: auto;
  }
  .mod-events-archives-item > span .mod-events-archives-item__title:before {
    display: none;
    padding-right: 0;
  }
  .mod-events-archives-item > span .mod-events-archives-item__contact {
    min-height: inherit;
  }
  .mod-events-archives-item > a:hover {
    background-color: transparent;
  }
  .mod-events-archives-item > a:before {
    display: none;
  }
  .mod-events-archives-item__datetime {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: auto;
    margin-right: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding-top: .5rem;
    padding-bottom: .5rem;
    border-bottom: solid 1px #eeeeee;
  }
  .mod-events-archives-item__title {
    position: relative;
    padding-right: 1.625rem;
    padding-top: .5rem;
    padding-bottom: .5rem;
    border-bottom: solid 1px #eeeeee;
  }
  .mod-events-archives-item__title:before {
    content: "";
    width: 1.125rem;
    height: 1.125rem;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background-image: url(../images/common/icon-ar.png);
    background-size: 100%;
  }
  .mod-events-archives-item__contact {
    width: auto;
    min-height: 4rem;
    padding-top: .5rem;
    padding-bottom: .5rem;
    padding-right: 10.5rem;
    margin-left: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .mod-events-archives-item-image {
    width: auto;
    margin-left: 1rem;
    margin-right: 0;
  }
  .mod-events-archives-item-image img {
    display: none;
  }
  .mod-events-archives-item-icon {
    position: relative;
    left: auto;
    top: auto;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .mod-events-archives-item-title {
    font-size: 1rem;
  }
  .mod-events-archives-item-btn {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
    top: auto;
    bottom: .5rem;
    right: 0;
  }

  /* detail */
  .mod-events-wrap {
    overflow: visible;
  }

  .mod-events-article:before {
    display: none;
  }

  .mod-events-article-h {
    margin-left: 0;
    margin-right: 0;
  }
  .mod-events-article-h-title {
    font-size: 1.375rem;
  }
  .mod-events-article-h-title-s {
    font-size: 0.875rem;
  }

  .mod-events-article-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: solid 2px #999999;
  }
  .mod-events-article-nav__item {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
  }
  .mod-events-article-nav__item + .mod-events-article-nav__item {
    border-left: solid 2px #999999;
  }
  .mod-events-article-nav__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 2.5rem;
    color: #e21c14;
    font-weight: 700;
    font-size: 0.875rem;
  }
  .mod-events-article-nav__item a .icon {
    position: relative;
    width: 1.375rem;
    height: 1.375rem;
    background-color: #e21c14;
    border-radius: 50%;
    margin-right: .25rem;
  }
  .mod-events-article-nav__item a .icon:before {
    content: "";
    width: .375rem;
    height: .375rem;
    border-left: solid 2px #ffffff;
    border-bottom: solid 2px #ffffff;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -0.1875rem;
    margin-top: -0.1875rem;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }

  .mod-events-article-header {
    display: block;
    margin-left: -1.625rem;
    margin-right: -1.625rem;
  }
  .mod-events-article-header-image {
    width: auto;
    margin-right: 0;
    background-color: #f9f4e8;
  }
  .mod-events-article-header-image-content {
    margin-left: -0.3125rem;
    margin-right: -0.3125rem;
  }
  .mod-events-article-header-dl {
    display: block;
    margin-left: 0;
    width: auto;
    border-radius: 0;
    padding: 1rem 1rem 0;
  }
  .mod-events-article-header-dl-image {
    display: none;
    margin-bottom: 0.625rem;
    text-align: center;
  }
  .mod-events-article-header-dl-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 3rem;
    font-weight: 700;
    border: solid 0.25rem #cccccc;
    color: #e21c14;
    background-color: #ffffff;
    border-radius: 0.25rem;
    font-size: 0.6875rem;
  }

  .mod-events-archive-content-indent {
    margin-right: 0;
  }

  .mod-events-article-inner {
    display: block;
    padding-bottom: 0;
  }

  .mod-events-article-content {
    width: auto;
    padding: 0 1rem 2rem;
  }

  .mod-events-article-aside {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-left: 0;
    width: auto;
    background-color: #f9f4e8;
    padding: 2rem 1rem;
  }

  /* article */
  .mod-events-sns-col {
    display: block;
  }
  .mod-events-sns-col__item + .mod-events-sns-col__item {
    margin-left: 0;
    margin-top: 1rem;
  }

  .mod-events-detail-staff-col__item {
    width: calc(100% / 2 - 2rem);
  }
  .mod-events-detail-staff-col__item > figure {
    padding-bottom: calc(4 / 3 * 100%);
  }

  /* aside */
  .mod-events-article-aside-item + .mod-events-article-aside-item {
    margin-top: 2rem;
  }

  .mod-events-article-aside-schedule {
    border-top: solid 0.125rem #cccccc;
  }
  .mod-events-article-aside-schedule-item .date {
    width: 6rem;
  }

  .mod-foot-archive-btns {
    display: block;
    margin-left: 0;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .mod-foot-archive-btns__item {
    margin-left: 0;
  }
  .mod-foot-archive-btns__item + .mod-foot-archive-btns__item {
    margin-top: 2rem;
  }

  /* ticket */
  .mod-events-ticket-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: -1rem;
  }
  .mod-events-ticket-nav > * {
    width: calc(100% / 3 - 1rem);
    width: auto;
    height: auto;
    margin-left: 1rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-bottom: 1rem;
    border: 0;
  }
  .mod-events-ticket-nav > * + * {
    margin-left: 1rem;
  }
  .mod-events-ticket-nav > *:before {
    bottom: 0;
  }
  .mod-events-ticket-nav > * a {
    padding-bottom: 0;
    font-size: 0.75rem;
  }
  .mod-events-ticket-nav > * a .icon {
    position: relative;
    width: 6rem;
    height: 6rem;
    margin-bottom: .25rem;
    border: solid 0.25rem #cccccc;
    border-radius: 50%;
    background: none;
  }
  .mod-events-ticket-nav > * a .icon:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4rem;
    height: 4rem;
    background-size: auto 100%;
    background-image: url(../images/events/ticket/icons-nav.png);
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .mod-events-ticket-nav > * a .icon--02:before {
    background-position: -100% 0;
  }
  .mod-events-ticket-nav > * a .icon--03:before {
    background-position: -200% 0;
  }

  .mod-events-ticket-title {
    margin-bottom: 1rem;
    height: 2rem;
    padding: .125rem .125rem .125rem 3rem;
    font-size: 1rem;
    border-radius: .25rem;
  }
  .mod-events-ticket-title:before {
    width: 2.25rem;
    height: 2rem;
  }

  .mod-events-ticket-item {
    position: relative;
    padding: 0 1rem 2rem;
  }
  .mod-events-ticket-item-inner {
    max-width: inherit;
  }

  .mod-events-ticket-item-title {
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
  .mod-events-ticket-item-title .icon {
    width: 3.875rem;
    height: 2.25rem;
    font-size: 0.75rem;
  }
  .mod-events-ticket-item-title .icon span {
    font-size: 1.25rem;
  }
  .mod-events-ticket-item-title span {
    font-size: 1rem;
  }
}
@media screen and (min-width: 992px), print {
  #clndr .mod-sp-only {
    display: none !important;
  }
}
@media screen and (max-width: 991px) {
  /* CALENDAR HEADER */
  .clndr__head-title {
    padding: 1rem 0.5rem 0 0.5rem;
  }

  .clndr__head-title .meta {
    display: block;
    font-size: 0.6875rem;
    font-weight: normal;
    line-height: 1.5;
  }

  .clndr__head-title .title {
    display: block;
    font-size: 1.3125rem;
    font-weight: normal;
    line-height: 1.5;
  }

  .clndr__head-legend {
    background: #F9F4E8;
    border: 1px solid #000;
    margin: 0 0.5rem 1rem 0.5rem;
    padding: 0;
  }

  .clndr__head-legend .col h4 {
    display: block;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 2;
    margin: 0;
    padding: 0 0.75rem;
    position: relative;
  }

  .clndr__head-legend .col p {
    font-size: 0.75rem;
    line-height: 2;
    height: 0;
    margin: 0;
    padding: 0 0.75rem 0.25rem 0.75rem;
    overflow: hidden;
  }

  .clndr__head-legend .col .active p {
    height: auto;
  }

  .clndr__head-legend .note {
    display: none;
  }

  .clndr__head-legend .col1of2:first-child {
    border-bottom: 1px solid #000;
  }

  .clndr__head-legend .col1of2 h4:after {
    background: url(../images/rental/calendar/arrow_bottom.svg) no-repeat 0 50%/2rem auto;
    content: ' ';
    height: 1rem;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 2rem;
  }

  .clndr__head-legend .col1of2.active h4:after {
    background: url(../images/rental/calendar/arrow_top.svg) no-repeat 0 50%/2rem auto;
  }

  .clndr__head-pulldown {
    background: #eee;
    padding: 0.5rem;
  }

  .clndr__head-pulldown:after {
    clear: both;
    content: '.';
    display: block;
    font-size: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
    text-decoration: none;
  }

  .clndr__head-pulldown select {
    background: url(../images/rental/calendar/arrow_bottom.svg) no-repeat 100% 60%/2rem auto;
    border: 0;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    direction: rtl;
    display: block;
    font-size: 1rem;
    font-weight: bold;
    padding: 0.5rem 0;
    position: relative;
    text-indent: 2rem;
    width: 100%;
    z-index: 2;
  }

  .clndr__head-pulldown .pulldow_wrapper {
    margin: 0 1.125rem;
    position: relative;
  }

  .clndr__head-pulldown .pulldow_wrapper h4 {
    font-size: 0.75rem;
    left: 0;
    position: absolute;
    top: 0.65rem;
    z-index: 1;
  }

  .clndr__head-pulldown .pulldow_wrapper:after {
    background: #E21C14;
    border-radius: 0.125rem;
    content: ' ';
    display: block;
    height: 0.25rem;
    margin: 0;
    padding: 0;
    overflow: hidden;
    width: 100%;
  }

  .clndr__thead .clndr__event {
    background: #F9F4E8;
    margin: 0;
    padding: 0 0.5rem;
  }

  .clndr__thead .clndr__hours-content .hdouble {
    line-height: normal;
  }

  .clndr__thead .room_a,
  .clndr__thead .room_b {
    font-size: 0.875rem;
    display: block;
    margin: 0;
    padding: 0;
  }

  .clndr__thead .room_a {
    line-height: 2.8;
  }

  .clndr__thead .room_b {
    border-bottom: 0.0625rem solid #807F7D;
    line-height: 1.5;
  }

  .clndr__thead .room_b1,
  .clndr__thead .room_b2 {
    display: inline-block;
    font-size: 0.6875rem;
    line-height: 1.8;
    text-align: center;
    vertical-align: top;
    width: 50%;
    width: calc(50% - 0.0625rem);
  }

  .clndr__thead .room_b2 {
    border-left: 0.0625rem solid #807F7D;
  }

  .clndr__event {
    border-top: 0.125rem solid #000;
    margin: 0 0.5rem;
    position: relative;
    width: 100%;
    width: calc(100% - 1rem);
  }

  .clndr__td_weekday6 .clndr__event {
    border-top: 0.125rem solid #148EE2;
  }

  .clndr__td_weekday6 .clndr__event-title {
    color: #148EE2;
  }

  .clndr__td_weekday0 .clndr__event,
  .clndr-holiday .clndr__event {
    border-top: 0.125rem solid #E21C14;
  }

  .clndr__td_weekday0 .clndr__event-title,
  .clndr-holiday .clndr__event-title {
    color: #E21C14;
  }

  .clndr__event-title {
    float: left;
    left: 0;
    padding: 0.75rem 1rem 0 0;
    position: absolute;
    top: 0;
    white-space: nowrap;
    width: 4.625rem;
  }

  .clndr__range {
    border-bottom: 1px solid #807F7D;
    margin: 0 0 0 5.6rem;
    padding: 0;
    width: calc(100% - 5.6rem);
  }

  .clndr__range:last-child {
    border-bottom: 0;
  }

  .clndr__range:after {
    clear: both;
    content: '.';
    display: block;
    font-size: 0;
    height: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
    visibility: hidden;
    width: 100%;
  }

  .clndr__event-title .weekdate {
    font-weight: bold;
  }

  .clndr__event-title .weekdate .int {
    font-size: 1.3125rem;
    /* 21px */
  }

  .clndr__event-title .weekdate .txt {
    font-size: 1rem;
    /* 16px */
  }

  .clndr__event-title .weekday {
    font-size: 0.75rem;
    /* 12px */
  }

  .clndr__hours-title {
    float: left;
    font-size: 0.6875rem;
    /* 11px */
    line-height: 3;
    margin: 0;
    padding: 0;
    width: 4.375rem;
  }

  .clndr__hours-content,
  .clndr__hours-content li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .clndr__hours-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }

  .clndr__hours-content li {
    border-left: 1px solid #807F7D;
    display: inline-block;
    font-size: 0.6875rem;
    /* 11px */
    font-weight: bold;
    line-height: 3;
    text-align: center;
    width: 33.3%;
    width: calc(33.3% - 1px);
  }

  .clndr__hours-content .hdouble {
    width: 66.6%;
    width: calc(66.6% - 1px);
  }

  /* FOOTER */
  #clndr__footer {
    margin: 0 0.5rem;
    padding: 2.8rem 0;
  }

  #clndr__footer p {
    font-size: 0.75rem;
    line-height: 1.5;
    margin: 0 0;
    padding: 0;
  }
}
/* =======================================================================
aform rewrite
======================================================================= */
.aform-content .submit input {
  display: inline-block !important;
  margin: 0 !important;
  padding: 1rem !important;
  width: 22rem !important;
  min-height: 3rem !important;
  font-weight: 700 !important;
  border: solid 0.25rem #cccccc !important;
  color: #e21c14 !important;
  background-color: #ffffff !important;
  border-radius: 0.25rem !important;
  font-size: 1.0rem !important;
  -webkit-transition: .3s !important;
  transition: .3s !important;
}
.aform-content .submit input:hover {
  background-color: #e21c14 !important;
  border-color: #e21c14 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.aform-content dl {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
  margin: 0 !important;
  padding: 2.25rem 0 !important;
  border: 0 !important;
  border-top: solid 2px #cccccc !important;
}
.aform-content dl dt {
  float: none !important;
  width: 24rem !important;
  position: relative !important;
  padding-left: 1.5rem !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
}
.aform-content dl dt:before {
  content: "" !important;
  width: 1.125rem !important;
  height: 1.125rem !important;
  border: solid 0.375rem #000000 !important;
  border-radius: 50% !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.375rem !important;
}
.aform-content dl dt .required {
  position: static !important;
  top: auto !important;
  right: auto !important;
  margin-left: .5rem !important;
  padding: 0 !important;
  background: none !important;
  color: #e21c14 !important;
  font-size: 1rem !important;
  display: inline-block !important;
  line-height: inherit;
  vertical-align: inherit !important;
  font-weight: 700 !important;
}
.aform-content dl dd {
  width: calc(100% - 26rem);
  font-size: 1rem;
  margin: 0 !important;
  padding: 0 !important;
}

.aform-content input[type="email"],
.aform-content input[type="tel"],
.aform-content input[type="number"],
.aform-content input[type="password"],
.aform-content input[type="text"],
.aform-content textarea {
  -webkit-transition: 0.3s !important;
  transition: 0.3s !important;
  -moz-appearance: none !important;
       appearance: none !important;
  -webkit-appearance: none !important;
  border: solid 1px #cccccc !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  padding: 1rem !important;
  border-radius: 0.25rem !important;
  width: 100% !important;
  background-color: #ffffff !important;
  outline: none !important;
  font-size: 1rem !important;
}
.aform-content input[type="email"]:focus,
.aform-content input[type="tel"]:focus,
.aform-content input[type="number"]:focus,
.aform-content input[type="password"]:focus,
.aform-content input[type="text"]:focus,
.aform-content textarea:focus {
  border-color: #e21c14 !important;
}

.aform-content textarea {
  resize: none !important;
}

.aform-content input[type="radio"],
.aform-content input[type="checkbox"] {
  position: relative !important;
  -moz-appearance: none !important;
       appearance: none !important;
  -webkit-appearance: none !important;
  margin-right: 0.5rem !important;
  margin-top: -.25rem !important;
  border: solid 1px #cccccc !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background-color: #ffffff !important;
  outline: none !important;
  width: 1.125rem !important;
  height: 1.125rem !important;
  vertical-align: middle !important;
}

.aform-content input[type="radio"]:after {
  content: "" !important;
  width: 0.5rem !important;
  height: 0.5rem !important;
  background-color: #e21c14 !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  margin-top: -0.25rem !important;
  margin-left: -0.25rem !important;
  border-radius: 100% !important;
  display: none !important;
}
.aform-content input[type="radio"]:checked:after {
  display: block !important;
}

.aform-content input[type="checkbox"]:after {
  content: "" !important;
  width: 0.375rem !important;
  height: 0.75rem !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  border-bottom: solid 2px #e21c14 !important;
  border-right: solid 2px #e21c14 !important;
  margin-top: -0.5rem !important;
  margin-left: -0.1875rem !important;
  display: none !important;
  -webkit-transform: rotate(45deg) !important;
          transform: rotate(45deg) !important;
}
.aform-content input[type="checkbox"]:checked:after {
  display: block !important;
}

.aform-content input[type="radio"] {
  border-radius: 100% !important;
}

.aform-content input[type="checkbox"] {
  border-radius: 0 !important;
}

.aform-content select {
  position: relative !important;
  width: 100% !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  min-height: 2.5rem !important;
  padding: 1rem 3rem 1rem 1rem !important;
  border: solid 1px #cccccc !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: 0.25rem !important;
  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-size: 1rem auto !important;
  background-image: url(../images/common/icon-select.png) !important;
  background-position: right 1rem top 50% !important;
  cursor: pointer !important;
  font-size: 1rem !important;
  outline: none !important;
  line-height: 1.231 !important;
  text-overflow: '' !important;
}

.aform-content select::-ms-expand {
  display: none !important;
}

.aform-header {
  display: none !important;
}

.aform-content .submit {
  padding: 0 !important;
  background: none !important;
  margin-top: 2.25rem !important;
}

.aform-radio-ul li + li,
.aform-checkbox-ul li + li {
  margin-top: 1rem;
}

@media screen and (max-width: 991px) {
  .aform-content .submit input {
    font-size: 0.6875rem !important;
    display: block !important;
    width: 100% !important;
  }

  .aform-content dl {
    display: block !important;
    padding: 2rem 0 !important;
  }
  .aform-content dl dt {
    width: auto !important;
    padding-left: 1rem !important;
    font-size: 1rem !important;
  }
  .aform-content dl dt:before {
    width: 0.75rem !important;
    height: 0.75rem !important;
    border-width: 0.25rem !important;
    top: 0.175rem !important;
  }
  .aform-content dl dt .required {
    font-size: 0.75rem !important;
  }
  .aform-content dl dd {
    width: auto !important;
    margin-top: 0.625rem !important;
    font-size: 0.875rem !important;
  }

  .aform-content input[type="email"],
  .aform-content input[type="tel"],
  .aform-content input[type="number"],
  .aform-content input[type="password"],
  .aform-content input[type="text"],
  .aform-content textarea,
  .aform-content select {
    font-size: 0.875rem !important;
  }

  .aform-content .submit {
    margin-top: 2rem !important;
  }
}
/* =======================================================================
gcse rewrite
======================================================================= */
/* pc */
.mod-header-nav-search-content form.gsc-search-box {
  border-radius: 2px !important;
  margin: 0 !important;
  border: 0 !important;
  background-color: #ffffff !important;
  overflow: hidden !important;
}
.mod-header-nav-search-content table.gsc-search-box {
  margin: 0 !important;
  background-color: #f9f4e8 !important;
}
.mod-header-nav-search-content table.gsc-search-box th, .mod-header-nav-search-content table.gsc-search-box td {
  padding: 0 !important;
}
.mod-header-nav-search-content table.gsc-search-box th.gsib_b, .mod-header-nav-search-content table.gsc-search-box td.gsib_b {
  display: none !important;
}
.mod-header-nav-search-content td.gsc-input {
  border-right: solid 1px #cccccc;
}
.mod-header-nav-search-content .gsc-input-box {
  border: 0 !important;
  height: auto !important;
}
.mod-header-nav-search-content input.gsc-input {
  border: 0 !important;
  margin: 0 !important;
  padding: .5rem 0.625rem !important;
  height: 2.75rem !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background-color: #f9f4e8 !important;
  background-position: 0.625rem 50% !important;
}
.mod-header-nav-search-content button.gsc-search-button {
  border: 0 !important;
  margin: 0 !important;
  height: 2.75rem !important;
  padding: 4px 2px 5px !important;
  width: 4rem !important;
  background-color: #ffffff !important;
  color: #e21c14 !important;
  font-weight: 700 !important;
  font-size: 1.4rem !important;
}
.mod-header-nav-search-content button.gsc-search-button svg {
  width: 1rem !important;
  height: 1rem !important;
  fill: #e21c14 !important;
}

/* sp */
@media screen and (max-width: 991px) {
  .mod-header-nav-sp-search form.gsc-search-box {
    border-radius: 2px !important;
    margin: 0 !important;
    border: 0 !important;
    background-color: #ffffff !important;
    overflow: hidden !important;
  }
  .mod-header-nav-sp-search table.gsc-search-box {
    margin: 0 !important;
  }
  .mod-header-nav-sp-search table.gsc-search-box th, .mod-header-nav-sp-search table.gsc-search-box td {
    padding: 0 !important;
  }
  .mod-header-nav-sp-search table.gsc-search-box th.gsib_b, .mod-header-nav-sp-search table.gsc-search-box td.gsib_b {
    display: none !important;
  }
  .mod-header-nav-sp-search td.gsc-input {
    border-right: solid 1px #cccccc;
  }
  .mod-header-nav-sp-search .gsc-input-box {
    border: 0 !important;
    height: auto !important;
  }
  .mod-header-nav-sp-search input.gsc-input {
    border: 0 !important;
    margin: 0 !important;
    padding: .35rem 0.625rem !important;
    height: 2.625rem !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    background-color: #ffffff !important;
    background-position: 0.625rem 50% !important;
  }
  .mod-header-nav-sp-search button.gsc-search-button {
    border: 0 !important;
    margin: 0 !important;
    padding: 2px 2px 3px !important;
    width: 4rem !important;
    height: 2.625rem !important;
    background-color: #ffffff !important;
    color: #e21c14 !important;
    font-weight: 700 !important;
    font-size: 1.4rem !important;
  }
  .mod-header-nav-sp-search button.gsc-search-button svg {
    width: 1rem !important;
    height: 1rem !important;
    fill: #e21c14 !important;
  }
}
/* =======================================================================
keyframes
======================================================================= */
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
@keyframes fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
@-webkit-keyframes fadeleft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-256px);
            transform: translateX(-256px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@keyframes fadeleft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-256px);
            transform: translateX(-256px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@-webkit-keyframes faderight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(256px);
            transform: translateX(256px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@keyframes faderight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(256px);
            transform: translateX(256px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@-webkit-keyframes aboutIndexMainTitleBefore {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
  }
}
@keyframes aboutIndexMainTitleBefore {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
  }
}
/* =======================================================================
animation
======================================================================= */
.mod-about-index-main-title:before {
  opacity: 0;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-animation-name: aboutIndexMainTitleBefore;
          animation-name: aboutIndexMainTitleBefore;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

.mod-about-index-main-logo {
  opacity: 0;
  -webkit-animation-name: fadein;
          animation-name: fadein;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

.mod-about-index-intro-col__image,
.mod-about-index-intro-col__content > *,
.mod-about-index-theater-item,
.mod-about-index-theater-head-title,
.mod-about-index-theater-head-text,
.mod-about-index-theater-text,
.mod-about-index-theater-text > *,
.mod-about-index-about,
.mod-about-index-about-title,
.mod-about-index-about-text,
.mod-about-index-about-col__content,
.mod-about-index-about-col__content > * {
  opacity: 0;
}
.mod-about-index-intro-col__image.is-active,
.mod-about-index-intro-col__content > *.is-active,
.mod-about-index-theater-item.is-active,
.mod-about-index-theater-head-title.is-active,
.mod-about-index-theater-head-text.is-active,
.mod-about-index-theater-text.is-active,
.mod-about-index-theater-text > *.is-active,
.mod-about-index-about.is-active,
.mod-about-index-about-title.is-active,
.mod-about-index-about-text.is-active,
.mod-about-index-about-col__content.is-active,
.mod-about-index-about-col__content > *.is-active {
  -webkit-animation-name: fadein;
          animation-name: fadein;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

.mod-about-index-intro-col__content > *.is-active,
.mod-about-index-theater-head-title.is-active,
.mod-about-index-about-title.is-active {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}

.mod-about-index-theater-head-text.is-active,
.mod-about-index-about-text.is-active {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.mod-about-index-theater-text.is-active,
.mod-about-index-theater-text > *.is-active,
.mod-about-index-about-col__content.is-active,
.mod-about-index-about-col__content > *.is-active {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}

.mod-about-en-title-01,
.mod-about-en-title-03 {
  opacity: 0;
  -webkit-transform: translateX(-256px);
          transform: translateX(-256px);
}
.mod-about-en-title-01.is-active,
.mod-about-en-title-03.is-active {
  -webkit-animation-name: fadeleft;
          animation-name: fadeleft;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

.mod-about-en-title-01.is-active {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.mod-about-en-title-02 {
  opacity: 0;
  -webkit-transform: translateX(256px);
          transform: translateX(256px);
}
.mod-about-en-title-02.is-active {
  -webkit-animation-name: faderight;
          animation-name: faderight;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

#loading{
position: absolute;
left: 50%;
top: 30%;
}
#loader-bg {
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
background: #FFF;
z-index: 1;
}


#main-contents{
text-align: center;
margin-top: 20%;
}
