@charset "utf-8";
/* ----------------------------------------------------
  reset
---------------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  font-size: 100%;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', "Hiragino Sans", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 300;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  height: 100%; }

body {
  font-size: 12px;
  font-size: 75%\9;
  color: #000;
  -webkit-text-size-adjust: 100%;
  background: url(/rollbahn15th/img/bg_page.png) repeat;
  background-attachment: fixed; }

a {
  color: #000;
  text-decoration: none; }

a:hover {
  color: #000;
  text-decoration: underline; }

img {
  border: 0;
  vertical-align: bottom; }

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

table {
  border: none;
  border-collapse: collapse;
  border-spacing: 0; }

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

::selection {
  background: #1A274C;
  color: #FFF; }

::-moz-selection {
  background: #1A274C;
  color: #FFF; }

@media screen and (max-width: 767px) {
  body {
    background-attachment: inherit; }

  a {
    text-decoration: underline; }

  a:hover {
    text-decoration: none; } }
/* ----------------------------------------------------
  設定class
---------------------------------------------------- */
/* ---------- clearfix ---------- */
.clearfix:after, .footer:after, .home-insta .inner:after, .interview-list-col a:after, .interview-detail-profile:after, .myrollbahn-items ul:after,
.archives-items ul:after, .limited-items-col:after, .limited-exhibition-item:after, .limited-exhibition-place:after, .modal-img ul:after {
  content: "";
  display: block;
  clear: both; }

/* ---------- 要素の状態 ---------- */
.is-none {
  display: none; }

.is-hidden {
  visibility: hidden; }

.is-responsive {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: block; }

.for-sp {
  display: none; }

@media screen and (max-width: 767px) {
  .for-pc {
    display: none; }

  .for-sp {
    display: inline-block; } }
/* ---------- 文字揃え ---------- */
.al-l {
  text-align: left !important; }

.al-r {
  text-align: right !important; }

.al-c {
  text-align: center !important; }

/* ---------- マージン ---------- */
.mt0 {
  margin-top: 0 !important; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mtm10 {
  margin-top: -10px !important; }

.mtm15 {
  margin-top: -15px !important; }

.mtm20 {
  margin-top: -20px !important; }

.mtm30 {
  margin-top: -30px !important; }

/**/
.mr0 {
  margin-right: 0 !important; }

.mr5 {
  margin-right: 5px !important; }

.mr10 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr25 {
  margin-right: 25px !important; }

.mr30 {
  margin-right: 30px !important; }

.mr35 {
  margin-right: 35px !important; }

.mr40 {
  margin-right: 40px !important; }

/**/
.mb0 {
  margin-bottom: 0 !important; }

.mb5 {
  margin-bottom: 5px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.mb60 {
  margin-bottom: 60px !important; }

.mb70 {
  margin-bottom: 70px !important; }

.mbm1 {
  margin-bottom: -1px !important; }

.mbm10 {
  margin-bottom: -10px !important; }

.mbm20 {
  margin-bottom: -20px !important; }

/**/
.ml0 {
  margin-left: 0 !important; }

.ml5 {
  margin-left: 5px !important; }

.ml10 {
  margin-left: 10px !important; }

.ml15 {
  margin-left: 15px !important; }

.ml20 {
  margin-left: 20px !important; }

.ml25 {
  margin-left: 25px !important; }

.ml30 {
  margin-left: 30px !important; }

.ml35 {
  margin-left: 35px !important; }

.ml40 {
  margin-left: 40px !important; }

.mlm10 {
  margin-left: -10px !important; }

/* ----------------------------------------------------
  gnv
---------------------------------------------------- */
.gnv {
  position: fixed;
  left: 10px;
  top: 55px;
  z-index: 100; }

.gnv-logo {
  margin: 0 0 25px 0; }
  .gnv-logo a {
    display: block;
    width: 294px;
    height: 0;
    padding: 67px 0 0 0;
    overflow: hidden;
    background-image: url(/rollbahn15th/img/logo_blue.png);
    background-repeat: no-repeat;
    background-position: center center; }

.gnv-menu {
  margin: 0 0 0 50px; }
  .gnv-menu a {
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-size: 145%;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1;
    display: inline-block;
    padding: 3px 0;
    color: #1A274C;
    text-decoration: none; }
    .gnv-menu a i {
      display: block;
      height: 1px;
      background: #1A274C;
      width: 0;
      -webkit-transition: .2s width;
      transition: .2s width; }
    .gnv-menu a.is-current i {
      width: 100%; }
    .gnv-menu a:hover i {
      width: 100%; }

.gnv-menu-webshop {
  margin: 10px 0 0 0; }
  .gnv-menu-webshop a {
    border: 1px solid #1A274C;
    text-decoration: none;
    -webkit-transition: .2s background, .2s color;
    transition: .2s background, .2s color;
    padding: 0 5px;
    height: 22px;
    line-height: 22px;
    display: inline-block; }
    .gnv-menu-webshop a:hover {
      background: #1A274C;
      color: #fff; }

@media screen and (max-width: 767px) {
  .gnv {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background: #fff;
    height: 50px;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

  .gnv-logo {
    margin: 0; }
    .gnv-logo a {
      width: 100%;
      padding: 50px 0 0 0;
      background-image: url(/rollbahn15th/img/logo_sp.png);
      background-size: 210px auto;
      background-position: 15px 17px; }

  .gnv-menu {
    margin: 0;
    background: #1A274C;
    display: none;
    position: absolute;
    left: 0;
    top: 50px;
    width: 100%; }
    .gnv-menu li.for-sp {
      display: block; }
    .gnv-menu a {
      font-size: 15px;
      display: block;
      padding: 16px 0;
      color: #fff;
      text-decoration: none;
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
      text-align: center; }
      .gnv-menu a i {
        display: none; }

  .gnv-menu-webshop {
    margin: 0; }
    .gnv-menu-webshop a {
      border: none;
      text-decoration: none;
      padding: 16px 0;
      height: auto;
      line-height: 1; }
      .gnv-menu-webshop a:hover {
        background: none;
        color: #fff; } }
/* p-home */
.p-home .gnv-logo a {
  background-image: url(/rollbahn15th/img/logo_white.png); }
.p-home .gnv-menu a {
  color: #fff;
  font-weight: 400; }
  .p-home .gnv-menu a i {
    background: #fff; }
.p-home .gnv-menu-webshop a {
  border: 1px solid #fff; }
  .p-home .gnv-menu-webshop a:hover {
    background: #fff;
    color: #b4b4b4; }

@media screen and (max-width: 767px) {
  .p-home .gnv-logo a {
    background-image: url(/rollbahn15th/img/logo_sp.png); }
  .p-home .gnv-menu a {
    color: #fff;
    font-weight: 400; }
  .p-home .gnv-menu-webshop a {
    border: none; }
    .p-home .gnv-menu-webshop a:hover {
      background: none;
      color: #fff; } }
/* btn */
@media screen and (max-width: 767px) {
  .gnv-btn {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background: #f2f2f2; }

  .gnv-btn.is-close {
    background: #1A274C; }

  .gnv-btn-icn {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background: #1A274C;
    transition: .2s; }

  .gnv-btn-icn:before, .gnv-btn-icn:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 2px;
    background: #1A274C;
    transition: .2s; }

  .gnv-btn-icn:before {
    margin-top: -7px; }

  .gnv-btn-icn:after {
    margin-top: 5px; }

  .gnv-btn .is-btn-close {
    background: transparent; }

  .gnv-btn .is-btn-close:before,
  .gnv-btn .is-btn-close:after {
    margin-top: 0;
    background: #fff; }

  .gnv-btn .is-btn-close:before {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }

  .gnv-btn .is-btn-close:after {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg); } }
/* ----------------------------------------------------
	footer
---------------------------------------------------- */
.footer {
  border-top: 1px solid #1a274c;
  width: 980px;
  margin: 0 auto;
  padding: 0 0 70px 0; }

.footer-nav {
  margin: 10px 0 0 30px;
  float: left; }
  .footer-nav li {
    display: inline-block;
    margin: 0 70px 0 0; }
  .footer-nav a {
    letter-spacing: .05em;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-size: 110%;
    font-weight: 400;
    color: #1a274c; }

.footer-copyright {
  margin: 10px 0 0 90px;
  float: left;
  letter-spacing: .05em;
  font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
  font-size: 110%;
  font-weight: 400;
  color: #1a274c; }

@media screen and (max-width: 767px) {
  .footer {
    border-top: none;
    width: 90%;
    padding: 20px 5% 30px 5%;
    text-align: center;
    background: #B4B4B4; }

  .footer-nav {
    margin: 10px 0 0 0;
    float: none; }
    .footer-nav li {
      margin: 0 10px; }
    .footer-nav a {
      font-size: 12px;
      text-decoration: none;
      color: #fff; }

  .footer-copyright {
    margin: 10px 0 0 0;
    float: none;
    font-size: 10px;
    color: #fff; } }
/* p-home */
.p-home .footer {
  border-top: 1px solid #fff; }
.p-home .footer-nav a {
  color: #fff; }
.p-home .footer-copyright {
  color: #fff; }

/* ----------------------------------------------------
  common style
---------------------------------------------------- */
.wrapper {
  width: 100%;
  min-width: 980px;
  margin: 0 auto; }

.inner {
  width: 980px;
  margin: 0 auto; }

@media screen and (max-width: 767px) {
  .wrapper {
    overflow: hidden;
    min-width: inherit;
    padding: 50px 0 0 0; }

  .inner {
    width: 100%; } }
/* title */
.page-title {
  text-align: center;
  color: #1a274c; }
  .page-title strong {
    display: block;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 500;
    font-size: 240%;
    line-height: 1;
    margin: 0 0 10px 0; }
  .page-title span {
    display: block;
    font-weight: bold;
    font-size: 120%; }

@media screen and (max-width: 767px) {
  .page-title {
    padding: 0 5%; }
    .page-title strong {
      font-size: 20px;
      margin: 0 0 10px 0; }
    .page-title span {
      font-weight: normal;
      font-size: 12px; } }
/* ----------------------------------------------------
  home
---------------------------------------------------- */
.p-home {
  background: #B4B4B4; }

/* main */
.home-main {
  position: relative;
  width: 100%;
  opacity: 0;
  -webkit-transition: 1.5s opacity;
  transition: 1.5s opacity; }
  .home-main .js-slide {
    height: 630px; }

.home-main-title {
  color: #fff;
  position: absolute;
  right: 60px;
  bottom: 60px;
  text-align: right; }
  .home-main-title small {
    display: block;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 130%;
    line-height: 1;
    margin: 0 0 5px 0; }
  .home-main-title strong {
    display: block;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 220%;
    line-height: 1;
    margin: 0 0 10px 0; }
  .home-main-title span {
    display: block;
    line-height: 1;
    font-size: 140%; }

.home-main-img {
  height: 630px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block; }
  .home-main-img:hover .home-main-title strong,
  .home-main-img:hover .home-main-title span {
    text-decoration: underline; }

.home-main-img-special {
  background-image: url(/rollbahn15th/img/img_home_special.jpg); }

.home-main-img-story {
  background-image: url(/rollbahn15th/img/img_home_story.jpg); }

.home-main-img-report {
  background-image: url(/rollbahn15th/img/img_home_report.jpg); }

.home-main-copy {
  text-align: center;
  padding: 110px 0;
  color: #fff;
  font-weight: bold;
  font-size: 160%;
  line-height: 2; }

@media screen and (max-width: 767px) {
  .home-main .js-slide {
    height: 280px !important; }

  .home-main-title {
    right: 5%;
    top: 205px; }
    .home-main-title small {
      font-size: 12px; }
    .home-main-title strong {
      font-size: 20px;
      margin: 0 0 5px 0; }
    .home-main-title span {
      font-size: 14px; }

  .home-main-img {
    height: 280px !important; }
    .home-main-img:hover .home-main-title strong,
    .home-main-img:hover .home-main-title span {
      text-decoration: none; }

  .home-main-copy {
    padding: 50px 5%;
    font-size: 14px; } }
/* menu */
.home-menu {
  margin: 0 0 150px 0;
  opacity: 0;
  -webkit-transition: 1.5s opacity;
  transition: 1.5s opacity; }

.home-menu-items {
  width: 980px;
  height: 959px;
  position: relative; }
  .home-menu-items a {
    display: block;
    text-align: center;
    color: #fff;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 250%;
    text-decoration: none;
    background: rgba(0, 0, 0, 0.4);
    -webkit-transition: .2s opacity;
    transition: .2s opacity;
    opacity: 0; }
    .home-menu-items a:hover {
      opacity: 1; }

.home-menu-story {
  position: absolute;
  left: 0;
  top: 0;
  width: 482px;
  height: 359px;
  background: url(/rollbahn15th/img/img_home_story2.jpg) no-repeat center center; }
  .home-menu-story a {
    height: 359px;
    line-height: 359px; }

.home-menu-report {
  position: absolute;
  left: 0;
  top: 370px;
  width: 482px;
  height: 589px;
  background: url(/rollbahn15th/img/img_home_report2.jpg) no-repeat center center; }
  .home-menu-report a {
    height: 589px;
    line-height: 589px; }

.home-menu-interview {
  position: absolute;
  right: 0;
  top: 0;
  width: 482px;
  height: 479px;
  background: url(/rollbahn15th/img/img_home_interview.jpg) no-repeat center center; }
  .home-menu-interview a {
    height: 479px;
    line-height: 479px; }

.home-menu-archives {
  position: absolute;
  right: 0;
  top: 490px;
  width: 482px;
  height: 229px;
  background: url(/rollbahn15th/img/img_home_archives.jpg) no-repeat center center; }
  .home-menu-archives a {
    height: 229px;
    line-height: 229px; }

.home-menu-limited {
  position: absolute;
  right: 0;
  top: 730px;
  width: 482px;
  height: 229px;
  background: url(/rollbahn15th/img/img_home_limited.jpg) no-repeat center center; }
  .home-menu-limited a {
    height: 229px;
    line-height: 229px; }

@media screen and (max-width: 767px) {
  .home-menu {
    margin: 0 0 40px 0; }

  .home-menu-items {
    width: 100%;
    height: 280px; }
    .home-menu-items a {
      font-size: 16px;
      opacity: 1; }
      .home-menu-items a:hover {
        background: rgba(0, 0, 0, 0.4); }

  .home-menu-story {
    top: 0;
    width: 50%;
    height: 120px;
    background-size: cover; }
    .home-menu-story a {
      height: 120px;
      line-height: 120px; }

  .home-menu-report {
    top: 120px;
    width: 50%;
    height: 160px;
    background-size: cover; }
    .home-menu-report a {
      height: 160px;
      line-height: 160px; }

  .home-menu-interview {
    top: 0;
    width: 50%;
    height: 160px;
    background-size: cover; }
    .home-menu-interview a {
      height: 160px;
      line-height: 160px; }

  .home-menu-archives {
    top: 160px;
    width: 50%;
    height: 60px;
    background-size: cover; }
    .home-menu-archives a {
      height: 60px;
      line-height: 60px; }

  .home-menu-limited {
    top: 220px;
    width: 50%;
    height: 60px;
    background-size: cover; }
    .home-menu-limited a {
      height: 60px;
      line-height: 60px; } }
/* insta */
.home-insta {
  margin: 0 0 30px 0;
  opacity: 0;
  -webkit-transition: 1.5s opacity;
  transition: 1.5s opacity; }
  .home-insta .inner {
    position: relative; }

.home-insta-title {
  position: absolute;
  left: 0;
  bottom: 60px; }
  .home-insta-title a {
    color: #fff;
    display: inline-block;
    text-decoration: none; }
    .home-insta-title a:hover em,
    .home-insta-title a:hover small {
      text-decoration: underline; }
  .home-insta-title strong {
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 150%;
    line-height: 1;
    display: block;
    margin: 0 0 8px 0; }
  .home-insta-title em {
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 260%;
    line-height: 1;
    display: block;
    font-style: italic;
    margin: 0 0 8px 0; }
  .home-insta-title small {
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-size: 150%;
    line-height: 1;
    display: block; }

.home-insta-list {
  float: right;
  width: 630px;
  height: 630px; }
  .home-insta-list li {
    width: 150px;
    float: left;
    margin: 0 10px 10px 0; }
    .home-insta-list li:nth-of-type(4n) {
      margin: 0 0 10px 0; }

@media screen and (max-width: 767px) {
  .home-insta {
    margin: 0 auto 35px auto;
    width: 90%; }

  .home-insta-title {
    position: relative;
    left: inherit;
    bottom: inherit;
    text-align: center;
    margin: 0 0 20px 0; }
    .home-insta-title a:hover em,
    .home-insta-title a:hover small {
      text-decoration: none; }
    .home-insta-title strong {
      font-size: 15px;
      margin: 0 0 8px 0; }
    .home-insta-title em {
      font-size: 23px;
      margin: 0 0 8px 0; }
    .home-insta-title small {
      font-size: 12px; }

  .home-insta-list {
    float: none;
    width: 100%;
    height: auto; }
    .home-insta-list li {
      width: 22%;
      margin: 0 4% 15px 0; }
      .home-insta-list li:nth-of-type(4n) {
        margin: 0 0 15px 0; }
      .home-insta-list li img {
        width: 100%;
        height: auto; } }
/* ----------------------------------------------------
  story
---------------------------------------------------- */
/* main */
.story-main {
  position: relative;
  width: 100%;
  margin: 0 0 125px 0; }

.story-main-img {
  opacity: 0;
  -webkit-transition: 1.5s opacity .2s;
  transition: 1.5s opacity .2s;
  height: 630px;
  width: 100%;
  background: url(/rollbahn15th/img/img_home_story.jpg) no-repeat center center;
  background-size: cover;
  margin: 0 0 30px 0;
  z-index: 2;
  position: relative; }

.story-main-bg {
  height: 630px;
  width: 100%;
  position: absolute;
  background: #fff;
  z-index: 1; }

@media screen and (max-width: 767px) {
  .story-main {
    margin: 0 0 30px 0; }

  .story-main-img {
    height: 220px;
    margin: 0 0 20px 0; }

  .story-main-bg {
    height: 220px; } }
/* history */
.story-history {
  width: 660px;
  margin: 0 auto; }

.story-history-col {
  background: url(/rollbahn15th/img/img_arrow.png) no-repeat center bottom;
  padding: 0 0 90px 0;
  margin: 0 0 30px 0; }
  .story-history-col p {
    font-size: 120%;
    color: #1a274c;
    text-align: center; }

.story-history-col:last-child {
  background: none;
  padding: 0;
  margin: 0 0 100px 0; }

.story-history-title {
  text-align: center;
  margin: 15px 0 13px 0;
  color: #1a274c;
  letter-spacing: .1em; }
  .story-history-title small {
    display: block;
    line-height: 1;
    text-decoration: underline;
    margin: 0 0 20px 0;
    font-size: 115%;
    font-weight: bold; }
  .story-history-title strong {
    display: block;
    line-height: 1;
    font-size: 190%;
    font-weight: bold; }

@media screen and (max-width: 767px) {
  .story-history {
    width: 90%; }

  .story-history-col {
    background-size: 30px auto;
    padding: 0 0 40px 0;
    margin: 0 0 30px 0; }
    .story-history-col img {
      width: 100%;
      height: auto; }
    .story-history-col p {
      font-size: 13px;
      text-align: left; }
      .story-history-col p br {
        display: none; }

  .story-history-col:last-child {
    background: none;
    padding: 0;
    margin: 0 0 40px 0; }

  .story-history-title small {
    font-size: 13px; }
  .story-history-title strong {
    font-size: 16px; } }
/* ----------------------------------------------------
  report
---------------------------------------------------- */
/* main */
.report-main {
  position: relative;
  width: 100%;
  margin: 155px 0 30px 0; }

@media screen and (max-width: 767px) {
  .report-main {
    margin: 25px 0 25px 0; } }
/* step */
.report-step-col {
  margin: 0 0 45px 0;
  text-align: center; }
  .report-step-col p {
    font-size: 120%;
    color: #1a274c;
    text-align: center;
    margin: 0 0 25px 0; }
  .report-step-col img {
    display: block;
    margin: 0 0 15px 0; }

.report-step-col:last-child {
  margin: 0 0 120px 0; }

.report-step-title {
  text-align: center;
  margin: 25px 0 15px 0;
  color: #1a274c;
  letter-spacing: .1em; }
  .report-step-title small {
    display: inline-block;
    border-left: 2px solid #1a274c;
    border-right: 2px solid #1a274c;
    line-height: 1;
    margin: 0 0 20px 0;
    font-size: 115%;
    font-weight: bold;
    padding: 0 10px; }
  .report-step-title strong {
    display: block;
    line-height: 1;
    font-size: 190%;
    font-weight: bold; }

@media screen and (max-width: 767px) {
  .report-step-col {
    margin: 0 0 30px 0;
    text-align: center; }
    .report-step-col img {
      width: 100%;
      height: auto; }
    .report-step-col p {
      font-size: 13px;
      margin: 0 5% 25px 5%;
      text-align: left; }
      .report-step-col p br {
        display: none; }

  .report-step-col:last-child {
    margin: 0 0 40px 0; }

  .report-step-title {
    margin: 15px 0 15px 0;
    color: #1a274c;
    letter-spacing: .1em; }
    .report-step-title small {
      margin: 0 0 10px 0;
      font-size: 12px; }
    .report-step-title strong {
      font-size: 15px; } }
/* ----------------------------------------------------
  interview
---------------------------------------------------- */
/* main */
.interview-main {
  position: relative;
  width: 100%;
  margin: 155px 0 60px 0; }

@media screen and (max-width: 767px) {
  .interview-main {
    margin: 25px 0 10px 0; } }
/* list */
.interview-list {
  border-top: 1px solid #1a274c;
  width: 600px;
  margin: 0 auto 90px auto; }

.interview-list-col {
  border-bottom: 1px solid #1a274c; }
  .interview-list-col a {
    display: block;
    color: #1a274c;
    padding: 15px 0;
    position: relative; }
    .interview-list-col a:hover {
      text-decoration: none; }
      .interview-list-col a:hover strong {
        text-decoration: underline; }
      .interview-list-col a:hover img {
        opacity: .8; }
    .interview-list-col a img {
      float: left;
      margin: 0 20px 0 0;
      -webkit-transition: .2s opacity;
      transition: .2s opacity; }
    .interview-list-col a strong {
      font-size: 170%;
      font-weight: bold; }
    .interview-list-col a span {
      display: block;
      position: absolute;
      right: 0;
      bottom: 12px;
      text-align: right;
      letter-spacing: .1em; }
      .interview-list-col a span small {
        display: block;
        font-weight: bold; }
      .interview-list-col a span em {
        display: block;
        font-weight: bold;
        font-size: 150%; }
        .interview-list-col a span em small {
          font-size: 60%;
          display: inline; }

.interview-list-col-data {
  overflow: hidden;
  zoom: 1; }

.interview-list-col-coming {
  height: 195px;
  line-height: 195px;
  text-align: center;
  display: block;
  font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
  font-weight: 500;
  color: #1a274c;
  font-size: 140%; }

@media screen and (max-width: 767px) {
  .interview-list {
    width: 90%;
    margin: 0 auto 40px auto;
    border-top: none; }

  .interview-list-col a {
    text-decoration: none; }
    .interview-list-col a:hover {
      text-decoration: none; }
      .interview-list-col a:hover strong {
        text-decoration: none; }
      .interview-list-col a:hover img {
        opacity: 1; }
    .interview-list-col a img {
      float: none;
      width: 100%;
      height: auto;
      margin: 0 0 15px 0; }
    .interview-list-col a strong {
      font-size: 15px;
      font-weight: bold;
      text-align: center;
      display: block;
      margin: 0 0 10px 0; }
      .interview-list-col a strong br {
        display: none; }
    .interview-list-col a span {
      position: relative;
      right: inherit;
      bottom: inherit;
      text-align: center; }
      .interview-list-col a span small {
        font-weight: normal;
        font-size: 10px; }
      .interview-list-col a span em {
        font-weight: normal;
        font-size: 14px; }
        .interview-list-col a span em small {
          font-size: 10px;
          display: inline; }

  .interview-list-col-coming {
    height: 100px;
    line-height: 100px;
    font-size: 14px; } }
/* detail */
.interview-detail {
  width: 600px;
  margin: 150px auto 60px auto;
  border-top: 1px solid #1a274c; }

.interview-detail-title {
  text-align: center;
  color: #1a274c;
  padding: 12px 0 45px 0; }
  .interview-detail-title strong {
    display: block;
    font-weight: bold;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 500;
    font-size: 160%;
    line-height: 1;
    margin: 0 0 35px 0; }
  .interview-detail-title span {
    display: block;
    font-weight: bold;
    line-height: 1;
    font-size: 160%;
    margin: 0 0 35px 0;
    letter-spacing: .1em; }
  .interview-detail-title small {
    display: block;
    font-weight: bold;
    line-height: 1;
    margin: 0 0 8px 0; }
  .interview-detail-title em {
    display: block;
    font-weight: bold;
    line-height: 1;
    font-size: 170%;
    letter-spacing: .1em; }
    .interview-detail-title em small {
      font-size: 60%;
      display: inline; }

.interview-detail-img {
  display: block;
  margin: 0 0 30px 0;
  text-align: center; }

.interview-detail-outline {
  border-bottom: 1px solid #1a274c;
  margin: 0 0 50px 0;
  padding: 0 0 10px 0; }
  .interview-detail-outline p {
    font-size: 120%;
    color: #1a274c;
    line-height: 2; }
    .interview-detail-outline p small {
      font-size: 70%; }

.interview-detail-h {
  font-weight: bold;
  font-size: 140%;
  color: #1a274c;
  margin: 40px 0 30px 0; }

.interview-detail-col p {
  font-size: 120%;
  color: #1a274c;
  margin: 0 0 30px 0;
  line-height: 2; }

.interview-detail-profile {
  border-top: 1px solid #1a274c;
  padding: 30px 0 0 0; }
  .interview-detail-profile img {
    float: left;
    margin: 0 30px 0 0; }

.interview-detail-profile-data {
  overflow: hidden;
  zoom: 1; }
  .interview-detail-profile-data p {
    color: #1a274c;
    margin: 0 0 20px 0;
    font-size: 110%; }
    .interview-detail-profile-data p a {
      color: #1a274c;
      text-decoration: underline; }
      .interview-detail-profile-data p a:hover {
        text-decoration: none; }
  .interview-detail-profile-data strong {
    display: block;
    font-weight: bold;
    font-size: 110%;
    margin: -2px 0 5px 0; }

@media screen and (max-width: 767px) {
  .interview-detail {
    width: 90%;
    margin: 25px auto 20px auto;
    border-top: none; }

  .interview-detail-title {
    padding: 0 0 25px 0; }
    .interview-detail-title strong {
      font-size: 20px;
      margin: 0 0 15px 0; }
    .interview-detail-title span {
      font-size: 15px;
      margin: 0 0 15px 0;
      letter-spacing: 0; }
    .interview-detail-title small {
      font-weight: normal;
      margin: 0 0 8px 0;
      font-size: 10px; }
    .interview-detail-title em {
      font-weight: normal;
      font-size: 14px; }
      .interview-detail-title em small {
        font-size: 10px;
        display: inline; }

  .interview-detail-img {
    margin: 0 0 20px 0; }
    .interview-detail-img img {
      width: 100%;
      height: auto; }

  .interview-detail-outline {
    margin: 0 0 30px 0;
    padding: 0 0 20px 0; }
    .interview-detail-outline p {
      font-size: 13px;
      line-height: 1.8; }
      .interview-detail-outline p small {
        font-size: 11px; }

  .interview-detail-h {
    font-size: 14px;
    margin: 30px 0 20px 0; }

  .interview-detail-col p {
    font-size: 13px;
    margin: 0 0 20px 0;
    line-height: 1.8; }

  .interview-detail-profile {
    border-top: 1px solid #1a274c;
    padding: 30px 0 0 0; }
    .interview-detail-profile img {
      width: 130px;
      height: auto;
      float: none;
      margin: 0 auto 15px auto;
      display: block; }

  .interview-detail-profile-data p {
    margin: 0 0 20px 0;
    font-size: 12px; }
  .interview-detail-profile-data strong {
    font-weight: bold;
    font-size: 13px;
    margin: 0 0 5px 0;
    text-align: center; } }
/* ----------------------------------------------------
  archives, myrollbahn
---------------------------------------------------- */
/* main */
.myrollbahn-main,
.archives-main {
  position: relative;
  width: 100%;
  margin: 155px 0 30px 0; }

@media screen and (max-width: 767px) {
  .myrollbahn-main,
  .archives-main {
    margin: 25px 0 30px 0; } }
/* items */
.myrollbahn-items,
.archives-items {
  width: 920px;
  margin: 0 auto 80px auto; }
  .myrollbahn-items ul li,
  .archives-items ul li {
    float: left;
    margin: 0 32px 32px 0;
    background: #fff; }
    .myrollbahn-items ul li:nth-of-type(3n),
    .archives-items ul li:nth-of-type(3n) {
      margin: 0 0 32px 0; }
    .myrollbahn-items ul li a,
    .archives-items ul li a {
      -webkit-transition: .2s opacity;
      transition: .2s opacity;
      display: block;
      position: relative; }
      .myrollbahn-items ul li a:hover,
      .archives-items ul li a:hover {
        opacity: .8; }
      .myrollbahn-items ul li a span,
      .archives-items ul li a span {
        display: block;
        position: absolute;
        right: 0;
        bottom: -4px;
        text-align: right;
        font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
        font-weight: 500;
        line-height: 1.4;
        color: #1a274c; }
      .myrollbahn-items ul li a img,
      .archives-items ul li a img {
        opacity: 0;
        -webkit-transition: .5s opacity;
        transition: .5s opacity; }

@media screen and (max-width: 767px) {
  .myrollbahn-items,
  .archives-items {
    width: 90%;
    margin: 0 auto 20px auto; }
    .myrollbahn-items ul li,
    .archives-items ul li {
      float: left;
      width: 47%;
      margin: 0 6% 20px 0; }
      .myrollbahn-items ul li:nth-of-type(3n),
      .archives-items ul li:nth-of-type(3n) {
        margin: 0 6% 20px 0; }
      .myrollbahn-items ul li:nth-of-type(even),
      .archives-items ul li:nth-of-type(even) {
        float: right;
        margin: 0 0 20px 0; }
      .myrollbahn-items ul li a:hover,
      .archives-items ul li a:hover {
        opacity: 1; }
      .myrollbahn-items ul li a img,
      .archives-items ul li a img {
        width: 100%;
        height: auto; } }
/* ----------------------------------------------------
  limited
---------------------------------------------------- */
/* main */
.limited-main {
  position: relative;
  width: 100%;
  margin: 155px 0 60px 0; }

@media screen and (max-width: 767px) {
  .limited-main {
    margin: 25px 0 30px 0; } }
/* items */
.limited-items {
  width: 920px;
  margin: 0 auto 50px auto;
  border-bottom: 1px solid #1a274c; }

.limited-items-col {
  margin: 0 0 60px 0; }
  .limited-items-col img {
    float: left;
    margin: 0 30px 0 0; }

.limited-items-col-data {
  overflow: hidden;
  zoom: 1; }

.limited-items-name {
  font-size: 170%;
  font-weight: bold;
  color: #1a274c;
  line-height: 1.5;
  margin: 0 0 25px 0; }

.limited-items-txt {
  font-size: 120%;
  color: #1a274c;
  margin: 0 0 50px 0; }

.limited-items-price {
  font-size: 120%;
  font-weight: bold;
  color: #1a274c;
  margin: 0 0 10px 0; }

.limited-items-btn a {
  display: inline-block;
  padding: 0 6px;
  height: 23px;
  line-height: 23px;
  background: #1a274c;
  color: #fff;
  text-decoration: none;
  border: 1px solid #1a274c;
  -webkit-transition: .2s color, .2s background;
  transition: .2s color, .2s background;
  font-weight: bold;
  font-size: 115%; }
  .limited-items-btn a:hover {
    background: #fff;
    color: #1a274c; }
.limited-items-btn span {
  display: inline-block;
  padding: 0 6px;
  height: 23px;
  line-height: 23px;
  background: #AAA;
  color: #fff;
  text-decoration: none;
  border: 1px solid #AAA;
  font-weight: bold;
  font-size: 115%; }

@media screen and (max-width: 767px) {
  .limited-items {
    width: 90%;
    margin: 0 auto 40px auto; }

  .limited-items-col {
    margin: 0 0 40px 0; }
    .limited-items-col img {
      float: none;
      width: 100%;
      height: auto;
      margin: 0 0 20px 0; }

  .limited-items-col-data {
    overflow: hidden;
    zoom: 1; }

  .limited-items-name {
    font-size: 15px;
    margin: 0 0 10px 0;
    text-align: center; }

  .limited-items-txt {
    font-size: 13px;
    margin: 0 0 10px 0; }

  .limited-items-price {
    font-size: 13px;
    margin: 0 0 10px 0;
    text-align: center; }

  .limited-items-btn {
    text-align: center; }
    .limited-items-btn a {
      font-size: 13px; }
      .limited-items-btn a:hover {
        background: #1a274c;
        color: #fff; } }
/* exhibition */
.limited-exhibition {
  width: 920px;
  margin: 0 auto 100px auto; }

.limited-exhibition-title {
  text-align: center;
  margin: 0 0 40px 0; }

.limited-exhibition-txt {
  text-align: center;
  font-size: 120%;
  color: #1a274c;
  margin: 0 0 70px 0; }

.limited-exhibition-item {
  margin: 0 0 60px 0; }
  .limited-exhibition-item img {
    float: left;
    margin: 0 30px 0 0; }

.limited-exhibition-item-data {
  overflow: hidden;
  zoom: 1; }
  .limited-exhibition-item-data p {
    font-size: 120%;
    color: #1a274c;
    margin: 0 0 30px 0; }

.limited-exhibition-item-name {
  color: #1a274c;
  line-height: 1.5;
  margin: 0 0 25px 0; }
  .limited-exhibition-item-name em {
    display: inline-block;
    border: 1px solid #1a274c;
    color: #1a274c;
    font-size: 120%;
    font-weight: bold;
    padding: 0 15px;
    height: 22px;
    line-height: 22px; }
  .limited-exhibition-item-name strong {
    display: block;
    font-size: 170%;
    font-weight: bold;
    margin: 20px 0 0 0; }

.limited-exhibition-place {
  margin: 0 auto 30px auto;
  width: 670px; }
  .limited-exhibition-place img {
    float: left;
    margin: 0 30px 0 0; }
  .limited-exhibition-place table th {
    width: 70px;
    padding: 3px 0;
    color: #1a274c;
    font-size: 120%;
    vertical-align: top; }
  .limited-exhibition-place table td {
    padding: 3px 0;
    color: #1a274c;
    font-size: 120%;
    vertical-align: top; }

.limited-exhibition-place-name {
  font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
  font-weight: 500;
  font-size: 200%;
  color: #1a274c;
  line-height: 1.2;
  margin: 0 0 15px 0; }

@media screen and (max-width: 767px) {
  .limited-exhibition {
    width: 90%;
    margin: 0 auto 40px auto; }

  .limited-exhibition-title {
    text-align: center;
    margin: 0 0 30px 0; }
    .limited-exhibition-title img {
      width: 200px;
      height: auto; }

  .limited-exhibition-txt {
    text-align: left;
    font-size: 13px;
    margin: 0 0 20px 0; }
    .limited-exhibition-txt br {
      display: none; }

  .limited-exhibition-item {
    margin: 0 0 20px 0; }
    .limited-exhibition-item img {
      float: none;
      width: 100%;
      height: auto;
      margin: 0 0 20px 0; }

  .limited-exhibition-item-data p {
    font-size: 13px;
    margin: 0 0 20px 0; }
    .limited-exhibition-item-data p br {
      display: none; }

  .limited-exhibition-item-name {
    margin: 0 0 7px 0; }
    .limited-exhibition-item-name br {
      display: none; }
    .limited-exhibition-item-name em {
      font-size: 12px; }
    .limited-exhibition-item-name strong {
      font-size: 15px;
      margin: 10px 0 0 0; }

  .limited-exhibition-place {
    margin: 0 auto 30px auto;
    width: 100%; }
    .limited-exhibition-place img {
      float: none;
      width: 100%;
      height: auto;
      margin: 0 0 20px 0; }
    .limited-exhibition-place table th {
      width: 50px;
      font-size: 12px; }
    .limited-exhibition-place table td {
      font-size: 12px; }
      .limited-exhibition-place table td a {
        color: #1a274c; }

  .limited-exhibition-place-name {
    font-size: 15px;
    margin: 0 0 5px 0; }
    .limited-exhibition-place-name br {
      display: none; } }
/* ----------------------------------------------------
  modal
---------------------------------------------------- */
.modal {
  background: #fff;
  width: 660px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  padding: 0 0 15px 0; }
  .modal:hover ul {
    opacity: 1; }

.modal-img {
  margin: 0 0 15px 0;
  position: relative; }
  .modal-img img {
    width: 100%;
    height: auto; }
  .modal-img span {
    display: block;
    text-align: right;
    position: absolute;
    right: 15px;
    bottom: 10px;
    font-family: 'Helvetica Neue', 'Open Sans', sans-serif;
    font-weight: 500;
    font-size: 140%;
    color: #1a274c;
    line-height: 1.4;
    z-index: 2; }
  .modal-img ul {
    position: absolute;
    right: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: .2s opacity;
    transition: .2s opacity;
    z-index: 2; }
    .modal-img ul li {
      display: block;
      float: left; }
      .modal-img ul li a {
        -webkit-transition: .2s opacity;
        transition: .2s opacity; }
        .modal-img ul li a:hover {
          opacity: .8; }
      .modal-img ul li img {
        width: 30px; }

.modal-img-slide {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 660px;
  height: 440px; }
  .modal-img-slide img {
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: auto; }
    .modal-img-slide img:nth-child(2) {
      opacity: 0;
      -webkit-animation: blink 4s ease-in-out infinite alternate;
      -moz-animation: blink 4s ease-in-out infinite alternate;
      animation: blink 4s ease-in-out infinite alternate; }

@-webkit-keyframes blink {
  0% {
    opacity: 0; }

  50% {
    opacity: 0; }

  60% {
    opacity: 1; }

  100% {
    opacity: 1; } }

@keyframes blink {
  0% {
    opacity: 0; }

  50% {
    opacity: 0; }

  60% {
    opacity: 1; }

  100% {
    opacity: 1; } }

.modal-name {
  font-weight: bold;
  font-size: 120%;
  color: #1a274c; }
  .modal-name a {
    text-decoration: underline;
    color: #1a274c; }
    .modal-name a:hover {
      text-decoration: none; }

.modal-name02 {
  font-weight: bold;
  font-size: 120%;
  color: #1a274c;
  text-align: left;
  padding: 0 0 0 30px; }

.modal-att {
  font-size: 90%;
  color: #1a274c; }

.modal-rights {
  font-size: 90%;
  color: #1a274c; }

.modal-copy {
  color: #1a274c;
  font-size: 120%;
  margin: 0 0 20px 0; }
  .modal-copy a {
    text-decoration: underline;
    color: #1a274c; }
    .modal-copy a:hover {
      text-decoration: none; }

.modal-txt {
  padding: 10px 80px 0 30px;
  text-align: left; }

.modal-profile {
  padding: 10px 80px 10px 30px;
  text-align: left;
  font-size: 90%; }
  .modal-profile strong {
    font-weight: bold; }
  .modal-profile a {
    text-decoration: underline; }

@media screen and (max-width: 767px) {
  .mfp-content {
    padding: 20px 0 40px 0; }

  .mfp-bg {
    padding: 0 0 100px 0; }

  .modal {
    width: 82%;
    text-align: left; }

  .modal-img {
    margin: 0 0 15px 0;
    position: relative; }
    .modal-img ul {
      opacity: 1; }
      .modal-img ul li a:hover {
        opacity: 1; }
      .modal-img ul li img {
        width: 25px; }

  .modal-img-slide {
    width: 100%;
    height: auto; }

  .modal-name {
    font-size: 13px;
    margin: 0 4% 5px 4%;
    line-height: 1.4; }

  .modal-name02 {
    font-size: 13px;
    padding: 0 0 0 20px; }

  .modal-att {
    font-size: 8px;
    margin: 0 4%; }

  .modal-rights {
    font-size: 8px;
    margin: 0 4%; }

  .modal-copy {
    font-size: 12px;
    margin: 0 4% 10px 4%; }

  .modal-txt {
    padding: 10px 20px 0 20px;
    font-size: 11px; }

  .modal-profile {
    padding: 10px 20px 10px 20px;
    font-size: 10px; } }
