@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
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 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

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

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

html {
  font-size: 62.5%;
  width: 100%; }

body {
  color: #333333;
  font-size: 1.6rem;
  font-family: "Gothic Medium BBB", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", 'Meiryo', 'Osaka', "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 200%; }
  @media (max-width: 767px) {
    body {
      font-size: 1.3rem; } }

* {
  box-sizing: border-box; }

img {
  max-width: 100%;
  vertical-align: top; }

a {
  color: #000;
  -webkit-transition: .16s;
  transition: .16s;
  text-decoration: none; }
  a:hover {
    opacity: .5; }

.lineup__table thead th, .reservation, .section__title, .event-info__head, .special-content__title, .special-content__lead, .items-header__title, .item__name, .item__price, .notice__head, .schedule__head, .schedule dl dt, .product__category, .product__name, .product__price, .product__cart-head, .features__menu li a:after, .feature:before, .feature__title, .cart-group__head, .cart__btn, .staff__head, .models__contact h3, .experience__more p, .teaser-item p, .tour__schedule dl dt, .interview #contents > div section h4, .interview #contents > div section h3, .basic #contents > div section dl dt, .mizusawa_interview #contents > div section h3, .mizusawa_interview #contents > div section dl dt, .mizusawa_interview #contents > div section h4, #contents footer dl, .news #contents > div section strong, .share__head, .text-links a {
  font-family: "Midashi Go MB31", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", 'Meiryo', 'Osaka', "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold; }

.kerning {
  letter-spacing: -0.5em; }
  .kerning-first {
    margin-left: -0.5em; }
  .kerning-nakaguro {
    letter-spacing: -0.2em;
    margin-left: -0.2em; }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .flex--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .flex--between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .flex--vertical-center {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

.center {
  text-align: center; }

.inline-block {
  display: inline-block; }

@media (min-width: 768px) {
  .is-pc-disabled {
    display: none !important; } }

@media (max-width: 767px) {
  .is-sp-disabled {
    display: none !important; } }

@media (min-width: 768px) {
  .indent-pc {
    display: block;
    margin-left: 1em; } }

.movie {
  margin-top: 2.5em;
  margin-bottom: 2.5em; }
  .movie > div {
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
  .movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.header {
  position: absolute;
  width: 100%;
  height: 50px;
  top: 0;
  left: 0;
  background-color: #451221;
  color: #fff;
  z-index: 9980; }
  @media (max-width: 767px) {
    .header {
      height: 35px; } }
  .header--fixed {
    position: fixed; }
  .header__container {
    position: relative;
    max-width: 900px;
    height: 50px;
    margin-left: auto;
    margin-right: auto; }
    @media (max-width: 767px) {
      .header__container {
        height: 35px; } }
  .header__title {
    float: left;
    line-height: 50px; }
    .header__title img {
      vertical-align: middle; }
    @media (max-width: 767px) {
      .header__title {
        padding-left: 1em;
        line-height: 35px; }
        .header__title img {
          width: 215px; } }
  .header__hobonichi {
    float: right;
    line-height: 50px; }
    .header__hobonichi img {
      vertical-align: middle; }
  .header__links {
    float: right;
    margin-right: 90px;
    list-style: none; }
    .header__links li {
      display: inline-block; }
      .header__links li + li {
        margin-left: 40px; }
    .header__links a {
      font-size: 1.3rem;
      line-height: 50px;
      color: #FFF; }

.menu-btn {
  position: absolute;
  top: 50%;
  right: 0;
  width: 25px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer; }
  @media (max-width: 767px) {
    .menu-btn {
      width: 15px;
      right: 15px; } }
  .menu-btn__line {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #FFF;
    -webkit-transition: 0.4s;
    transition: 0.4s; }
    .menu-btn__line--middle {
      margin-top: 4px;
      margin-bottom: 4px; }

.navigation {
  display: none;
  position: fixed;
  width: 100%;
  top: 50px;
  left: 0;
  padding: 35px 25px;
  background-color: #e0e0e0;
  z-index: 9970;
  opacity: 0; }
  @media (max-width: 767px) {
    .navigation {
      top: 35px;
      padding: 0 0 20px; } }
  .navigation__container {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    opacity: 0; }
    @media (max-width: 767px) {
      .navigation__container {
        height: -webkit-calc(100vh - 35px);
        height: calc(100vh - 35px);
        overflow: scroll;
        -webkit-overflow-scrolling: touch; } }
  .navigation__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (max-width: 767px) {
      .navigation__wrapper {
        display: block; } }

.lineup {
  width: 100%; }
  @media (max-width: 767px) {
    .lineup {
      width: 100%; } }
  @media (max-width: 767px) {
    .lineup__table {
      width: 95%;
      margin: 0 auto; } }
  .lineup__table thead th {
    font-size: 1.3rem;
    line-height: 1; }
  .lineup__table tbody th {
    width: 60px;
    vertical-align: middle; }
    .lineup__table tbody th img {
      width: 60px; }
      @media (max-width: 767px) {
        .lineup__table tbody th img {
          margin-top: 15px; } }
  .lineup__table tbody tr td {
    padding-left: 18px;
    padding-right: 18px; }
    @media (min-width: 768px) {
      .lineup__table tbody tr td:nth-of-type(4) img {
        width: 75px; } }
  .lineup__table tbody td {
    padding-top: 30px;
    line-height: 1.45em;
    text-align: center;
    font-size: 1.1rem;
    vertical-align: bottom; }
    @media (max-width: 767px) {
      .lineup__table tbody td {
        padding: 10px 0 0 0 !important;
        font-size: 1.0rem; } }
    .lineup__table tbody td img {
      margin-bottom: 10px; }
      @media (min-width: 768px) {
        .lineup__table tbody td img {
          max-width: 126px; } }
      @media (max-width: 767px) {
        .lineup__table tbody td img {
          padding-left: 10px;
          padding-right: 10px; } }

.menu {
  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-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 32%;
  padding-left: 3%;
  margin-left: 2%;
  font-size: 1.3rem;
  line-height: 146%;
  list-style: none;
  border-left: solid 1px #a1a1a1; }
  .menu li.border {
    padding-top: 20px;
    border-top: solid 1px #a1a1a1; }
  @media (max-width: 767px) {
    .menu {
      display: block;
      width: 100%;
      padding-left: 0;
      margin-top: 25px;
      margin-left: 0;
      overflow: hidden;
      border: none;
      font-size: 1.2rem; }
      .menu li {
        float: left;
        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: 50%;
        padding-top: 1em;
        padding-bottom: 1em;
        border-top: solid 1px #a1a1a1; }
        .menu li:nth-of-type(even) {
          border-left: solid 1px #a1a1a1; }
      .menu--cart {
        margin-top: 0; }
        .menu--cart li {
          border-top: none;
          border-bottom: solid 1px #a1a1a1; } }

.mt {
  margin-top: 1em; }

.mt2 {
  margin-top: 2em; }

.mt3 {
  margin-top: 3em; }

@media (max-width: 767px) {
  .sp-w95 {
    width: 95%;
    margin-left: auto;
    margin-right: auto; } }

@media (max-width: 767px) {
  .sp-w90 {
    width: 90%;
    margin-left: auto;
    margin-right: auto; } }

@media (max-width: 767px) {
  .sp-w70 {
    width: 70%;
    margin-left: auto;
    margin-right: auto; } }

.img100 {
  width: 100%; }

.hide {
  display: none; }

/* .has-header {
  padding-top: 50px; }
  @media (max-width: 767px) {
    .has-header {
      padding-top: 35px; } } */
  .has-header img {
    width: 100%; }

#content {
  padding-top: 50px;
  margin-top: -70px;
  background-image: url(../img/top/section_bg@2x.jpg);
  background-size: cover;
  background-position: center;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    #content {
      padding-top: 35px;
      margin-top: -35px;
      background: none; }
      #content:before {
        content: '';
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        z-index: -1;
        background-image: url(../img/top/section_bg@2x.jpg);
        background-size: cover;
        background-position: center; } }

.anchor {
  padding-top: 20px;
  margin-top: -20px; }
  @media (max-width: 767px) {
    .anchor {
      padding-top: 10px;
      margin-top: -10px; } }
  .anchor#information {
    padding-top: 50px;
    margin-top: -50px; }
    @media (max-width: 767px) {
      .anchor#information {
        padding-top: 35px;
        margin-top: -35px; } }

.container-gray {
  margin-top: 50px;
  padding-bottom: 50px;
  background-color: #C8C8C8; }
  .container-gray .section {
    background-color: transparent; }

.wrapper {
  position: relative;
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto; }
  .wrapper--white {
    padding-bottom: 50px;
    background-color: #FFF; }
    @media (max-width: 767px) {
      .wrapper--white {
        padding-bottom: 25px; } }
    .wrapper--white + .section {
      margin-top: 0 !important; }

.arrow {
  position: absolute;
  width: 20px;
  height: 20px;
  left: 50%;
  margin-left: -10px;
  bottom: 15px;
  border-bottom: solid 3px #001752;
  border-right: solid 3px #001752;
  z-index: 9960;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg); }
  .arrow:hover {
    bottom: 13px; }
  @media (max-width: 767px) {
    .arrow {
      width: 16px;
      height: 16px;
      margin-left: -8px; } }
  .arrow--white {
    border-bottom-color: #fff;
    border-right-color: #fff; }

.top {
  position: relative;
  height: -webkit-calc(100vh - 50px);
  height: calc(100vh - 50px);
  margin-top: 50px;
  margin-bottom: 20px;
  background-size: cover;
  background-image: url(../img/top/main@2x.jpg);
  background-position: top center; }
  @media (min-width: 768px) {
    .top {
      overflow: hidden; } }
  @media (max-width: 767px) {
    .top {
      height: -webkit-calc(100vh - 35px);
      height: calc(100vh - 35px);
      margin-top: 35px;
      margin-bottom: 0;
      background-image: url(../img/top/main_sp@2x.jpg); } }
  .top__lead {
    position: absolute;
    top: 90px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    margin-left: 360px; }
    .top--end .top__lead {
      top: 60px; }
      @media (max-width: 767px) {
        .top--end .top__lead {
          top: 20px; } }
    @media (max-width: 767px) {
      .top__lead {
        left: auto;
        top: 20px;
        right: 20px;
        margin-left: 0;
        -webkit-transform: none;
            -ms-transform: none;
                transform: none; }
        .top__lead img {
          width: 43px; } }
  .top__title {
    position: absolute;
    bottom: 80px;
    left: 50%;
    width: 100%;
    max-width: 920px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }
    .top--end .top__title {
      bottom: 140px; }
      @media (max-width: 767px) {
        .top--end .top__title {
          bottom: 105px; } }
    @media (max-width: 767px) {
      .top__title {
        width: 90%;
        bottom: 80px; } }
  .top__badge {
    position: absolute;
    top: 14%;
    right: 20%; }
    @media (max-width: 767px) {
      .top__badge {
        top: 18px;
        right: 15px;
        bottom: auto;
        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
        margin-left: 0; }
        .top__badge img {
          width: 90px; } }
  .top__end {
    position: absolute;
    width: 100%;
    background-color: #C5D91E;
    line-height: 1;
    text-align: center;
    padding: 20px 0;
    bottom: 60px; }
    @media (max-width: 767px) {
      .top__end {
        padding: 10px 5%;
        bottom: 40px; } }
  .top__hobonichi {
    position: absolute;
    top: 25px;
    left: 25px;
    line-height: 1; }
    @media (max-width: 767px) {
      .top__hobonichi {
        top: 20px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0); } }
  .top__arrow {
    position: absolute;
    bottom: 15px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
    @media (max-width: 767px) {
      .top__arrow img {
        width: 40px; } }
  .top__notice {
    width: 100%;
    position: absolute;
    bottom: 0; }
    .top__notice > a {
      display: block;
      height: 60px;
      background-color: #FFF;
      opacity: 1 !important; }
    .top__notice img {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    @media (max-width: 767px) {
      .top__notice {
        height: 40px;
        bottom: 0px; }
        .top__notice a {
          width: 100%;
          height: 40px;
          padding-top: 9px;
          background-color: #fff;
          text-align: center; }
        .top__notice img {
          position: static;
          -webkit-transform: none;
              -ms-transform: none;
                  transform: none; } }

.yodogawa {
  max-width: 480px;
  margin: 0 auto;
  color: #231815; }
  @media (max-width: 767px) {
    .yodogawa {
      padding-top: 1em;
      padding-left: 5%;
      padding-right: 5%; } }
  .yodogawa a {
    color: #3689bd; }
  .yodogawa__body {
    line-height: 180%;
    letter-spacing: 0.03em; }

.reservation {
  max-width: 480px;
  margin: 40px auto 0;
  padding-bottom: 50px;
  color: #001752;
  font-size: 1.8rem; }
  @media (max-width: 767px) {
    .reservation {
      width: 90%;
      padding-right: 0;
      text-align: center;
      padding-bottom: 30px;
      margin-top: 1.5em; } }
  .reservation strong {
    letter-spacing: 0.1em; }
  .reservation--end {
    padding: 0.5em 1em;
    color: #e60020;
    border-top: solid 2px #e60020;
    border-bottom: solid 2px #e60020; }
    @media (max-width: 767px) {
      .reservation--end {
        width: 90%;
        margin-left: auto;
        margin-right: auto; } }

.section {
  padding-top: 60px;
  margin-top: 100px;
  background-color: #FFF; }
  @media (max-width: 767px) {
    .section {
      margin-top: 50px;
      padding-top: 25px; } }
  .section--border {
    margin-top: 60px;
    border-top: solid 1px #A1A1A1; }
    @media (max-width: 767px) {
      .section--border {
        margin-top: 25px; } }
    @media (min-width: 768px) {
      .section--border-pc {
        margin-top: 60px;
        border-top: solid 1px #A1A1A1; } }
  .section__head {
    margin-bottom: 60px;
    text-align: center;
    line-height: 0; }
    @media (max-width: 767px) {
      .section__head {
        margin-bottom: 25px; }
        .section__head img {
          height: 45px; } }
  .section__title {
    margin-bottom: 50px;
    font-size: 3.6rem;
    text-align: center;
    color: #000000; }
    @media (max-width: 767px) {
      .section__title {
        margin-bottom: 25px;
        font-size: 2.2rem;
        line-height: 1.3; } }
    .section__title--medium {
      margin-bottom: 0;
      font-size: 3.0rem;
      text-align: left; }
      @media (max-width: 767px) {
        .section__title--medium {
          font-size: 1.8rem; } }
      .section__title--medium .notes, .section__title--medium small {
        font-size: 1.3rem; }
  .section#yodogawa {
    padding-top: 40px;
    margin-top: 0; }
    @media (max-width: 767px) {
      .section#yodogawa {
        padding-top: 20px; } }
  .section#news {
    padding-top: 0;
    background-color: #d1d1d1; }
    .section#news .section__head {
      padding-top: 30px;
      padding-bottom: 30px;
      margin-bottom: 0; }
      @media (max-width: 767px) {
        .section#news .section__head {
          padding-top: 20px;
          padding-bottom: 20px; }
          .section#news .section__head img {
            height: 20px; } }
  .section#special-contents {
    padding-top: 0;
    background-color: #bdbdbd; }
    .section#special-contents .section__head {
      padding-top: 30px;
      padding-bottom: 30px;
      margin-bottom: 0; }
      @media (max-width: 767px) {
        .section#special-contents .section__head {
          padding-top: 20px;
          padding-bottom: 20px; }
          .section#special-contents .section__head img {
            height: 20px; } }
  .section.experience {
    padding-bottom: 60px; }
    .section.experience .section__title {
      color: #001c3c; }
  .section.event {
    padding-bottom: 80px;
    margin-top: 0;
    background-color: #b9b9b9;
    color: #FFF; }
    .section.event .section__title {
      color: #001c3c;
      line-height: 1.4; }
    .section.event p {
      line-height: 1.9;
      color: #001c3c; }
    @media (max-width: 767px) {
      .section.event {
        margin-top: 25px;
        padding-bottom: 30px; }
        .section.event .wrapper {
          padding-left: 5%;
          padding-right: 5%; }
        .section.event .section__title {
          font-size: 5.5vw;
          margin-bottom: 10px; } }
  .section.information {
    margin-top: 0;
    padding-bottom: 80px; }
    .section.information .section__title {
      text-align: left; }
    .section.information .colum {
      width: 47%; }
    .section.information a {
      color: #aa2828; }
    @media (max-width: 767px) {
      .section.information {
        padding-bottom: 30px; }
        .section.information .wrapper {
          padding-left: 5%;
          padding-right: 5%; } }

.event-info {
  letter-spacing: .07em; }
  @media (max-width: 767px) {
    .event-info {
      margin-top: 2em; } }
  .event-info__head {
    font-size: 2.2rem; }
    @media (max-width: 767px) {
      .event-info__head {
        font-size: 1.7rem;
        line-height: 1.6;
        letter-spacing: -0.02em; } }
  .event-info__body {
    line-height: 1.9; }
  .event-info a {
    color: #FFF; }
  .event-info dl {
    margin-top: 2em;
    margin-bottom: 2em;
    color: #001c3c; }
    .event-info dl dt {
      margin-top: 1em;
      font-size: 2.0rem;
      font-weight: bold; }
      .event-info dl dt span {
        font-size: 60%; }
    .event-info dl dd {
      line-height: 1.4; }

.news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 767px) {
    .news {
      display: block; } }
  .news .news-content {
    width: 50%; }
    .news .news-content a {
      display: block;
      padding-bottom: 60px; }
    .news .news-content img {
      width: 100%; }
    @media (max-width: 767px) {
      .news .news-content {
        width: 100%; }
        .news .news-content a {
          padding-bottom: 30px; } }

.special-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media (max-width: 767px) {
    .special-contents {
      display: block;
      overflow: hidden; } }

.special-content a {
  display: block;
  padding-bottom: 30px; }

.special-content--small {
  width: 25%; }
  .special-content--small img {
    width: 100%; }
  @media (max-width: 767px) {
    .special-content--small {
      width: 50%;
      float: left;
      margin-bottom: 16px; } }

@media (max-width: 767px) {
  .special-content__image {
    width: 100%; } }

.special-content__title {
  font-size: 2.0rem;
  line-height: 143%;
  margin-top: 5px;
  margin-bottom: 10px;
  white-space: nowrap; }
  @media (max-width: 767px) {
    .special-content__title {
      margin-top: 0;
      margin-bottom: 5px;
      font-size: 1.7rem; } }

@media (max-width: 767px) {
  .special-content__lead {
    margin-top: 5px;
    font-size: 1.2rem; } }

.special-content__body {
  font-size: 1.5rem;
  line-height: 180%; }
  @media (min-width: 768px) {
    .special-content__body {
      white-space: nowrap; } }
  @media (max-width: 767px) {
    .special-content__body {
      font-size: 1.3rem; } }

.special-content__info {
  margin-left: 20px; }
  @media (max-width: 767px) {
    .special-content__info {
      margin-left: 5%;
      margin-right: 5%;
      padding-bottom: 20px; } }

.special-content__more-link {
  margin-top: 1em !important;
  font-size: 1.5rem; }

.columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .columns--center {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .columns--between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .columns--around {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  @media (max-width: 767px) {
    .columns {
      display: block; } }

.column--pl {
  padding-left: 20px; }
  @media (max-width: 767px) {
    .column--pl {
      padding-left: 0; } }

.items-header {
  position: relative;
  overflow: hidden; }
  .items-header img {
    opacity: 0;
    -webkit-transition: .8s ease-out;
    transition: .8s ease-out;
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05); }
  .items-header.animate img {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); }
  .items-header__info {
    margin-top: 30px;
    padding-bottom: 30px;
    overflow: hidden; }
    @media (max-width: 900px) {
      .items-header__info {
        left: 20px; } }
    @media (max-width: 767px) {
      .items-header__info {
        width: auto;
        margin-top: 15px;
        margin-left: 2.5%;
        margin-right: 2.5%;
        padding: 0 2.5%; } }
    .items-header__info-variation > div:first-child {
      float: left; }
    .items-header--outer .items-header__info {
      bottom: 40px; }
    .items-header--inner .items-header__info {
      top: 40px;
      color: #FFF; }
  .items-header__title {
    float: left;
    font-size: 2.8rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
    color: #000000; }
    .items-header__info-variation .items-header__title {
      float: none;
      margin-bottom: 15px; }
      @media (max-width: 767px) {
        .items-header__info-variation .items-header__title {
          margin-bottom: 0; } }
    @media (max-width: 767px) {
      .items-header__title {
        font-size: 1.7rem; } }
  .items-header__lead {
    float: right;
    font-size: 1.5rem;
    line-height: 180%;
    letter-spacing: 0.03em; }
    @media (max-width: 767px) {
      .items-header__lead {
        font-size: 1.3rem;
        margin-top: .5em;
        margin-bottom: .5em; } }
  .items-header__variation {
    float: right;
    overflow: hidden; }
    .items-header__variation .variation {
      float: left;
      width: 160px;
      margin-left: 35px; }
      @media (max-width: 767px) {
        .items-header__variation .variation {
          width: 45%;
          margin-left: 0; }
          .items-header__variation .variation:last-child {
            float: right; } }

.items-content {
  overflow: hidden;
  padding-bottom: 40px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center; }
  @media (max-width: 767px) {
    .items-content {
      padding-bottom: 25px; } }
  .items-content__notes {
    margin-top: 40px;
    font-size: 1.3rem;
    color: #4D4D4D;
    text-align: center; }
    @media (max-width: 767px) {
      .items-content__notes {
        margin-top: 20px; } }
  .items-content__lineup {
    overflow: hidden; }
  .items-content .more-link {
    background-color: #aa2828;
    border: none;
    border-radius: 5px;
    padding-left: 1em;
    padding-right: 1em; }

.item {
  position: relative;
  width: 50%;
  padding-top: 50px;
  text-align: center;
  float: left; }
  .item:before {
    content: '';
    position: absolute;
    top: 110px;
    right: 40px;
    width: 70px;
    height: 70px;
    background-size: 70px 70px; }
    @media (max-width: 767px) {
      .item:before {
        width: 35px;
        height: 35px;
        top: 20px;
        right: 10px;
        background-size: 35px 35px; } }
    .items--inner .item:before {
      top: 0; }
  .item--mens:before {
    background-image: url(../img/top/badge_mens@2x.png); }
  .item--ladies:before {
    background-image: url(../img/top/badge_ladies@2x.png); }
  @media (max-width: 767px) {
    .item {
      padding-top: 20px; }
      .items--inner .item {
        padding-top: 30px; } }
  .item > a {
    display: inline-block; }
  .item__image-container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 10px; }
  .item__image {
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
    .item__image:first-child {
      position: static;
      opacity: 1; }
    @media (max-width: 767px) {
      .item__image {
        width: 87.5%;
        left: 5%; } }
  .item__name, .item__price {
    font-size: 2.0rem;
    letter-spacing: 0.03em;
    line-height: 150%;
    color: #000000; }
    @media (max-width: 767px) {
      .item__name, .item__price {
        font-size: 3.4vw; } }

@media (max-width: 767px) {
  .notice {
    margin-top: 10px; } }

.notice__head {
  font-size: 2.8rem;
  line-height: 165%;
  letter-spacing: 0.05em;
  color: #000000; }
  @media (max-width: 767px) {
    .notice__head {
      font-size: 1.7rem; } }

.notice__body {
  margin-top: 2em;
  margin-bottom: 2em;
  line-height: 180%;
  font-size: 1.5rem;
  letter-spacing: 0.03em; }
  @media (max-width: 767px) {
    .notice__body {
      margin-top: 5px;
      margin-bottom: 1em;
      font-size: 1.3rem; } }
  .notice__body a {
    color: #3689bd; }

.notice__list {
  line-height: 173%;
  font-size: 1.5rem;
  margin-left: 1em;
  letter-spacing: 0.03em; }
  @media (max-width: 767px) {
    .notice__list {
      font-size: 1.3rem; } }
  .notice__list li {
    margin-top: 2em; }

.notice__caption {
  font-size: 1.3rem;
  font-weight: normal; }

.schedule {
  margin-top: 2em; }
  @media (min-width: 768px) {
    .schedule:first-child {
      margin-top: 0; } }
  .schedule__head {
    font-size: 2.0rem;
    letter-spacing: 0.1em; }
  .schedule p {
    font-size: 1.5rem;
    line-height: 1.8;
    letter-spacing: 0.03em; }
    @media (max-width: 767px) {
      .schedule p {
        margin-top: 1em;
        font-size: 1.3rem; } }
  .schedule dl {
    font-size: 1.5rem;
    line-height: 1.8;
    letter-spacing: 0.03em; }
    @media (max-width: 767px) {
      .schedule dl {
        margin-top: 1em; } }
    .schedule dl dt {
      font-size: 1.7rem;
      color: #000000; }
      @media (max-width: 767px) {
        .schedule dl dt {
          font-size: 1.4rem; } }
    @media (max-width: 767px) {
      .schedule dl dd {
        font-size: 1.3rem; } }
    .schedule dl dd + dt {
      margin-top: 2em; }
    .schedule dl ul {
      margin-left: 1em; }

.more-link {
  display: inline-block;
  margin-top: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  color: #FFF;
  letter-spacing: 0.05em;
  border-top: solid 1px #FFF;
  border-bottom: solid 1px #FFF;
  line-height: 35px; }
  @media (max-width: 767px) {
    .more-link {
      line-height: 25px;
      font-size: 1.2rem; } }

.product-images img {
  width: 100%; }

.product-images .swiper-wrapper {
  position: relative;
  font-size: 1.1rem; }

@media (max-width: 767px) {
  .product-images {
    position: relative; }
    .product-images .swiper-slide {
      height: 100vw;
      background-size: cover;
      background-position: center; }
    .product-images .swiper-pagination {
      height: 26px; } }

@media (max-width: 767px) {
  .product {
    padding-top: 45px;
    margin-top: -45px; } }

.product__columns {
  margin-top: 30px; }
  @media (max-width: 767px) {
    .product__columns {
      margin-top: 0; } }

.product__category {
  font-size: 1.4rem;
  line-height: 214%;
  color: #451221; }
  @media (max-width: 767px) {
    .product__category {
      margin-top: 1em;
      font-size: 1.3rem; } }

.product__name {
  font-size: 3.2rem;
  margin-top: 5px;
  color: #000000; }
  @media (max-width: 767px) {
    .product__name {
      margin-top: 0;
      font-size: 2.2rem;
      line-height: 180%; } }

.product__price {
  line-height: 260%;
  font-size: 2.0rem;
  letter-spacing: .03em;
  color: #000000; }
  @media (max-width: 767px) {
    .product__price {
      line-height: 176%;
      font-size: 1.7rem; } }
  .product__price small {
    font-size: 1.2rem; }

.product__description {
  letter-spacing: .03em; }
  @media (max-width: 767px) {
    .product__description {
      margin-top: 10px; } }

.product__cart-head {
  font-size: 1.6rem;
  color: #9D9D9D;
  letter-spacing: .1em; }
  .product__cart-head:after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #9D9D9D; }
  @media (max-width: 767px) {
    .product__cart-head {
      width: 100%;
      font-size: 1.3rem; } }
  .product__cart-head + .cart {
    margin-top: 15px; }

.product__model-link {
  display: inline-block;
  font-size: 1.4rem;
  margin-top: 1em;
  color: #3689bd; }

.features {
  counter-reset: feature;
  counter-reset: feature-menu; }
  .features__nakano-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 40px; }
    @media (max-width: 767px) {
      .features__nakano-menu {
        margin-top: .5em; } }
    .features__nakano-menu > p {
      white-space: nowrap; }
      @media (max-width: 767px) {
        .features__nakano-menu > p {
          white-space: normal; } }
    .features__nakano-menu .features__menu {
      width: 58%;
      margin-top: 0; }
      .features__nakano-menu .features__menu li {
        margin-left: 10px; }
  .features__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    list-style: none;
    margin-top: 40px; }
    .features__menu li {
      position: relative;
      counter-increment: feature-menu; }
      .features__menu li + li {
        margin-left: 15px; }
      .features__menu li a {
        position: relative;
        display: inline-block;
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden; }
        .features__menu li a:after {
          content: counter(feature-menu);
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
          font-size: 3.6rem;
          color: #FFF; }
      .features__menu li img {
        border-radius: 10px; }
  .features__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media (max-width: 767px) {
      .features__content {
        display: block; } }

.feature {
  width: 50%;
  margin-top: -80px;
  padding-top: 130px;
  counter-increment: feature;
  letter-spacing: .03em; }
  .feature:before {
    content: counter(feature);
    display: block;
    font-size: 3.2rem;
    color: #003067;
    margin-bottom: 5px; }
    @media (max-width: 767px) {
      .feature:before {
        font-size: 2.6rem;
        line-height: 120%; } }
  @media (max-width: 767px) {
    .feature {
      width: 100%;
      padding-top: 20px;
      margin-top: 0; } }
  @media (min-width: 768px) {
    .feature:nth-of-type(odd) {
      padding-right: 20px; }
    .feature:nth-of-type(even) {
      padding-left: 20px; } }
  .feature__title {
    font-size: 1.8rem;
    color: #000000; }
    @media (max-width: 767px) {
      .feature__title {
        font-size: 1.5rem; } }
  .feature__description {
    margin-top: 0.5em;
    font-size: 1.5rem; }
    @media (max-width: 767px) {
      .feature__description {
        margin-top: 0;
        font-size: 1.3rem; } }
  .feature__image {
    margin-top: 10px; }
    @media (max-width: 767px) {
      .feature__image {
        margin-top: 0.5em;
        margin-bottom: 0.5em; } }

.other {
  font-size: 1.5rem;
  border-top: solid 1px #a0a0a0;
  padding-top: 0.5em;
  margin-top: 2em; }
  @media (max-width: 767px) {
    .other {
      border-top: none;
      font-size: 1.3rem; } }
  .other a {
    color: #3689bd; }

@media (max-width: 767px) {
  .size {
    margin-top: 40px; } }

.size__table {
  width: 100%; }
  .size__table td, .size__table th {
    font-size: 1.3rem;
    font-weight: normal;
    line-height: 1.23;
    text-align: left;
    vertical-align: top;
    letter-spacing: .1em; }
    @media (max-width: 767px) {
      .size__table td, .size__table th {
        font-size: 1.2rem; } }
  .size__table thead th {
    padding-top: 1.15em;
    padding-bottom: .38em;
    border-bottom: 1px #000 solid; }
    .size__table thead th + th {
      padding-left: 1.54em;
      border-left: 1px #000 solid; }
  .size__table tbody * {
    padding-top: .77em;
    padding-bottom: .77em; }
  .size__table tbody th {
    width: 6.62em;
    padding-left: .62em; }
  .size__table tbody td {
    padding-left: 1.54em;
    border-left: 1px #000 solid; }

.size__notes {
  margin-top: 2em;
  font-size: 1.2rem;
  line-height: 180%; }

.size__image {
  margin-top: 25px;
  text-align: center; }

.specs {
  margin-top: 2em;
  overflow: hidden; }
  .specs + .notes {
    margin-top: 2em;
    font-size: 1.3rem;
    line-height: 1.6; }

.spec {
  float: left;
  margin-left: 130px; }
  @media (max-width: 767px) {
    .spec {
      float: none;
      margin-left: 0;
      margin-top: 40px; } }
  .spec:first-child {
    margin-top: 0;
    margin-left: 0; }
  .spec__head {
    display: inline-block;
    padding: 0 .57em;
    line-height: 1.79em;
    border: 1px #000 solid; }
  .spec__body {
    font-size: 1.5rem;
    margin-top: 1em;
    line-height: 173%; }
    @media (max-width: 767px) {
      .spec__body {
        font-size: 1.3rem; } }

.cart-group {
  margin-top: 15px; }
  @media (max-width: 767px) {
    .cart-group {
      margin-top: 10px;
      margin-bottom: 10px; } }
  .cart-group__head {
    font-size: 1.4rem;
    line-height: 1.9;
    letter-spacing: .07em; }
  .cart-group__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .cart-group__buttons {
    margin-left: 12px; }
    @media (max-width: 767px) {
      .cart-group__buttons {
        width: 65%;
        padding-left: 10px;
        margin-left: 0; } }
  @media (max-width: 767px) {
    .cart-group__img {
      width: 35%; }
      .cart-group__img img {
        width: 100%; }
    .cart-group .cart__btn {
      font-size: 1.6rem; }
      .cart-group .cart__btn img {
        width: 22px; } }

.cart + .cart {
  margin-top: 10px; }

.cart__btn {
  display: inline-block;
  width: 250px;
  height: 32px;
  line-height: 32px;
  color: #fff;
  background-color: #aa2828;
  font-size: 1.7rem;
  text-align: center;
  letter-spacing: .1em;
  border-radius: 5px; }
  .cart__btn small {
    padding-left: 3px;
    font-size: 1.3rem; }
  .cart__btn img {
    margin-right: 5px;
    vertical-align: -5px; }
  @media (max-width: 767px) {
    .cart__btn {
      width: 100%; } }
  .cart__btn--pre {
    width: 270px;
    font-size: 1.5rem;
    white-space: nowrap;
    background-color: #451221;
    letter-spacing: .075em; }
    @media (max-width: 767px) {
      .cart__btn--pre {
        margin-top: 10px;
        margin-bottom: 25px; } }
  .cart__btn--end {
    height: auto;
    padding: .5em 0;
    line-height: 150%;
    font-size: 1.6rem;
    background-color: #808080;
    letter-spacing: .05em; }
    .cart__btn--end span {
      display: inline-block;
      text-align: left; }
    @media (max-width: 767px) {
      .cart__btn--end {
        margin-bottom: 25px; } }

.swiper-pagination {
  position: static !important;
  margin-top: 5px !important; }
  .swiper-pagination-bullet {
    width: 12px !important;
    height: 12px !important;
    margin: 0 10px !important; }
  .swiper-pagination-bullet-active {
    background-color: #868686 !important; }

.swiper-button-next, .swiper-button-prev {
  margin-top: -59px !important; }

.staff {
  margin-top: 3em; }
  @media (max-width: 767px) {
    .staff {
      padding-left: 5%;
      padding-right: 5%;
      margin-top: 2em; } }
  .staff__head {
    display: inline-block;
    line-height: 160%;
    letter-spacing: 0.03em; }
    @media (max-width: 767px) {
      .staff__head {
        font-size: 1.5rem; } }
    .staff__head:after {
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background-color: #000; }
  .staff__body {
    margin-top: 0.5em;
    font-size: 1.5rem;
    line-height: 180%; }
    @media (max-width: 767px) {
      .staff__body {
        font-size: 1.3rem; } }

.models {
  overflow: hidden; }
  .models__contact {
    margin-top: 2em;
    padding-top: 2em;
    border-top: solid 1px #A1A1A1; }
    .models__contact h3 {
      font-size: 1.8rem; }
      @media (max-width: 767px) {
        .models__contact h3 {
          font-size: 1.6rem; } }
    .models__contact ul {
      list-style: none;
      margin-top: .5em; }
    @media (max-width: 767px) {
      .models__contact {
        width: 90%;
        margin-left: auto;
        margin-right: auto; } }
  .models__notes {
    margin-top: 3em;
    font-size: 1.3rem; }
    @media (max-width: 767px) {
      .models__notes {
        margin-top: 1.5em;
        margin-left: 5%; } }

.model {
  width: 45%;
  float: left;
  margin-top: 70px; }
  .model:nth-of-type(odd) {
    margin-right: 5%; }
  .model:nth-of-type(even) {
    margin-left: 5%; }
  @media (max-width: 767px) {
    .model {
      width: 90%;
      margin-top: 30px;
      margin-left: auto;
      margin-right: auto;
      float: none; } }
  .model__list {
    margin-top: 1em;
    list-style: none;
    font-size: 1.4rem;
    line-height: 1.8em; }
    .model__list li {
      margin-top: .5em; }

.experience__images {
  text-align: center; }
  .experience__images picture {
    font-size: 0; }
    .experience__images picture:nth-of-type(1) img {
      -webkit-transition: .6s linear;
      transition: .6s linear; }
    .experience__images picture:nth-of-type(2) img {
      -webkit-transition: .6s .6s linear;
      transition: .6s .6s linear; }
    .experience__images picture:nth-of-type(3) img {
      -webkit-transition: .6s 1.2s linear;
      transition: .6s 1.2s linear; }
  .experience__images img {
    opacity: 0; }
  .experience__images.animate img {
    opacity: 1; }
  @media (max-width: 767px) {
    .experience__images img {
      margin-top: 10px;
      margin-bottom: 10px;
      width: 80%; } }

.experience__more {
  padding-top: 25px;
  padding-bottom: 30px;
  margin-top: 40px;
  background-color: #001c3c;
  color: #fff;
  text-align: center;
  border-radius: 15px; }
  .experience__more p {
    margin-bottom: 20px;
    font-size: 2.2rem;
    line-height: 1.6em;
    letter-spacing: .05em; }
  @media (max-width: 767px) {
    .experience__more {
      width: 90%;
      margin: 20px auto;
      padding: 1em;
      border-radius: 10px; }
      .experience__more p {
        margin-bottom: 10px;
        font-size: 1.4rem;
        text-align: left; }
      .experience__more br {
        display: none; } }

.teaser-item {
  margin-top: -1em;
  margin-bottom: 2.5em;
  margin-left: 130px; }
  .teaser-item p {
    margin-top: .5em;
    font-size: 2.8rem;
    line-height: 1.4; }
    .teaser-item p span {
      font-size: 2.0rem; }
  @media (max-width: 767px) {
    .teaser-item {
      margin-top: -.5em;
      margin-left: 5%; }
      .teaser-item p {
        font-size: 2.2rem; }
        .teaser-item p span {
          font-size: 1.8rem; } }

.tour {
  border-top: solid 1px #000; }
  .tour > p {
    margin-left: 130px; }
    @media (max-width: 767px) {
      .tour > p {
        margin-left: 5%; } }
  .tour > figure img {
    display: block;
    width: 500px !important;
    margin: 0 auto; }
  .tour__schedule {
    width: 80%;
    margin: 50px auto;
    padding-top: 50px;
    padding-left: 60px;
    border-top: solid 1px #000; }
    .tour__schedule dl dt {
      font-size: 2.0rem;
      margin-top: 2.5em; }
    .tour__schedule dl dd {
      margin-top: 0.5em; }
    @media (max-width: 767px) {
      .tour__schedule {
        width: 90%;
        padding-left: 0;
        padding-top: 25px;
        margin-top: 25px;
        margin-bottom: 0; }
        .tour__schedule dl dt {
          font-size: 1.8rem; } }

.interview #contents > div section {
  padding-top: 6em;
  padding-left: 100px;
  padding-right: 100px; }
  @media (max-width: 767px) {
    .interview #contents > div section {
      padding: 2.4em 0 0; } }
  .interview #contents > div section header {
    margin-bottom: 6.8em;
    text-align: center; }
    @media (max-width: 767px) {
      .interview #contents > div section header {
        margin-bottom: 3em; } }
    .interview #contents > div section header span {
      display: block;
      margin-left: 130px;
      text-align: left;
      font-size: 1.8rem;
      line-height: 211%; }
      @media (max-width: 767px) {
        .interview #contents > div section header span {
          display: block;
          font-size: 1.4rem;
          letter-spacing: 2; } }
      .interview #contents > div section header span small {
        display: block;
        font-size: 72.22%;
        line-height: 1.75;
        margin-top: 1.38em;
        margin-left: 1.05em;
        text-indent: -1.05em; }
    @media (max-width: 767px) {
      .interview #contents > div section header p {
        padding: 0 6.25%; } }
  .interview #contents > div section h4 {
    margin-top: 2em;
    margin-bottom: .5em;
    font-size: 2.6rem;
    margin-left: 130px; }
    .interview #contents > div section h4 + p {
      margin-bottom: -40px; }
    @media (max-width: 767px) {
      .interview #contents > div section h4 {
        margin-left: 5%;
        font-size: 2.0rem; }
        .interview #contents > div section h4 + p {
          margin-bottom: -10px; } }
  .interview #contents > div section h3 {
    font-size: 3.0rem;
    padding: .7em 0 .63em;
    text-align: center;
    line-height: 170%;
    letter-spacing: .04em;
    border-top: #000 1px solid;
    border-bottom: #000 1px solid; }
    @media (max-width: 767px) {
      .interview #contents > div section h3 {
        font-size: 1.8rem;
        line-height: 1.56;
        margin: 6.25%;
        padding: .39em 0 .33em;
        letter-spacing: 0; } }
    .interview #contents > div section h3 + p {
      margin-top: 3.75em; }
      @media (max-width: 767px) {
        .interview #contents > div section h3 + p {
          margin-top: 2.08em; } }
    .interview #contents > div section h3 ~ h3 {
      margin-top: 1.87em; }
  .interview #contents > div section > p {
    font-size: 1.6rem;
    line-height: 250%;
    margin-left: 130px;
    letter-spacing: .04em; }
    @media (max-width: 767px) {
      .interview #contents > div section > p {
        font-size: 1.4rem;
        line-height: 1.9;
        margin: 0 6.25%;
        letter-spacing: 0; } }
    .interview #contents > div section > p > span {
      display: block; }
      .interview #contents > div section > p > span + span {
        margin-top: 2.5em; }
        @media (max-width: 767px) {
          .interview #contents > div section > p > span + span {
            margin-top: 1em; } }
    .interview #contents > div section > p small {
      display: block;
      font-size: 81.25%;
      line-height: 3.08;
      margin-top: 2em; }
    .interview #contents > div section > p + h3 {
      margin-top: 1.87em; }
  .interview #contents > div section figure {
    margin: 3.8em 0 3em; }
    @media (max-width: 767px) {
      .interview #contents > div section figure {
        margin: 1.8em 6.25%; } }
    .interview #contents > div section figure figcaption {
      font-size: 1.3rem;
      margin: .77em 0 -.31em;
      letter-spacing: .1em; }
      @media (max-width: 767px) {
        .interview #contents > div section figure figcaption {
          font-size: 1.1rem;
          margin: .3em 0 -.3em; } }

.basic #contents > div {
  padding-left: 100px;
  padding-right: 100px; }
  @media (max-width: 767px) {
    .basic #contents > div {
      padding: 0 6.25% 0; } }
  .basic #contents > div > p {
    font-size: 1.3rem;
    margin: .85em 0 0 0;
    letter-spacing: .075em; }

.basic #contents > div header {
  padding: 6em 0 6.8em;
  text-align: center; }
  @media (max-width: 767px) {
    .basic #contents > div header {
      padding: 1.3em 0 2.2em; } }
  .basic #contents > div header p {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 2.25;
    text-align: left;
    letter-spacing: .18em; }
    @media (max-width: 767px) {
      .basic #contents > div header p {
        display: block;
        font-size: 1.3rem;
        line-height: 2;
        letter-spacing: .1em; } }

.basic #contents > div section {
  padding: 4em 0 3.9em;
  border-top: #000 1px solid; }
  @media (max-width: 767px) {
    .basic #contents > div section {
      padding: 1em 0 0; }
      .basic #contents > div section + section {
        margin-top: 2em; } }
  .basic #contents > div section h3 {
    margin-bottom: 50px;
    font-size: 4.2rem;
    line-height: 1;
    text-align: center;
    letter-spacing: .04em;
    white-space: nowrap; }
    @media (max-width: 767px) {
      .basic #contents > div section h3 {
        margin-bottom: 25px;
        font-size: 2.1rem;
        line-height: 1.31; } }
    .basic #contents > div section h3 strong {
      display: block;
      font-size: 171.43%;
      margin-bottom: .19em;
      letter-spacing: .05em; }
    .basic #contents > div section h3 small {
      font-size: 50%;
      display: block;
      margin: .95em 0 .43em; }
  .basic #contents > div section > p {
    line-height: 2.25;
    margin-left: 110px;
    letter-spacing: .1em; }
    @media (max-width: 767px) {
      .basic #contents > div section > p {
        font-size: 1.3rem;
        line-height: 2;
        margin-left: 0; } }
    .basic #contents > div section > p + dl {
      margin-top: 3em; }
  .basic #contents > div section dl:after {
    content: '';
    display: table;
    clear: both; }
  .basic #contents > div section dl dt {
    font-size: 2.0rem;
    line-height: 1.4;
    margin: -.15em 0 .5em;
    padding-left: 18.25em;
    letter-spacing: .1em; }
    @media (max-width: 767px) {
      .basic #contents > div section dl dt {
        padding-left: 0;
        font-size: 1.6rem;
        line-height: 1.44;
        margin: .44em 0 .25em; } }
  .basic #contents > div section dl dd:first-child {
    float: left;
    width: 21.4em; }
    @media (max-width: 767px) {
      .basic #contents > div section dl dd:first-child {
        float: none;
        width: 100%; } }
    .basic #contents > div section dl dd:first-child + dd {
      margin-top: 1.45em; }
    .basic #contents > div section dl dd:first-child ~ dd {
      line-height: 1.75;
      padding-left: 22.81em;
      white-space: nowrap; }
      @media (max-width: 767px) {
        .basic #contents > div section dl dd:first-child ~ dd {
          padding-left: 0;
          font-size: 1.2rem;
          line-height: 1.75;
          white-space: normal; } }
  .basic #contents > div section dl dd small {
    font-size: 80%; }
    @media (max-width: 767px) {
      .basic #contents > div section dl dd small {
        font-size: 90%; } }
  .basic #contents > div section dl + dl {
    margin-top: 4em; }
    @media (max-width: 767px) {
      .basic #contents > div section dl + dl {
        margin-top: 3em; } }
  .basic #contents > div section > a {
    display: table;
    margin: 4em 0 0 10.3em;
    cursor: pointer;
    color: #000; }
    @media (max-width: 767px) {
      .basic #contents > div section > a {
        display: block;
        width: 90%;
        margin: 3.7em auto 0; } }
    .basic #contents > div section > a img {
      display: table-cell;
      width: 14.3em;
      vertical-align: middle; }
      @media (max-width: 767px) {
        .basic #contents > div section > a img {
          display: block;
          width: 100%; } }
    .basic #contents > div section > a span {
      display: table-cell;
      font-size: 1.5rem;
      line-height: 1.87;
      padding-left: 1.33em;
      vertical-align: middle;
      letter-spacing: .1em; }
      @media (max-width: 767px) {
        .basic #contents > div section > a span {
          display: block;
          font-size: 1.1rem;
          line-height: 1.75;
          padding: .73em .91em 0; } }

.mizusawa_interview.teaser > header {
  margin-bottom: 4em;
  text-align: center; }
  @media (max-width: 767px) {
    .mizusawa_interview.teaser > header {
      padding-left: 6.25%;
      padding-right: 6.25%;
      margin-bottom: 0; } }
  .mizusawa_interview.teaser > header span {
    display: inline-block;
    margin-bottom: 3em;
    text-align: left;
    font-size: 1.8rem;
    line-height: 211%; }
    @media (max-width: 767px) {
      .mizusawa_interview.teaser > header span {
        display: block;
        font-size: 1.3rem;
        letter-spacing: 2; } }

.mizusawa_interview #contents > div section {
  padding: 6em 100px; }
  @media (max-width: 767px) {
    .mizusawa_interview #contents > div section {
      padding: 2.4em 0 1.5em; } }
  .mizusawa_interview #contents > div section header {
    margin-bottom: 6.8em;
    text-align: center; }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section header {
        margin-bottom: 3em; } }
    .mizusawa_interview #contents > div section header span {
      display: inline-block;
      text-align: left;
      font-size: 1.8rem;
      line-height: 211%; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section header span {
          display: block;
          font-size: 1.3rem;
          letter-spacing: 2; } }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section header p {
        padding: 0 6.25%; } }
    .mizusawa_interview #contents > div section header p span a {
      font-size: 88.89%;
      line-height: 2.25;
      display: inline-block;
      margin-top: 1em;
      cursor: pointer; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section header p span a {
          font-size: 100%;
          line-height: 2;
          margin-top: 0; } }
  .mizusawa_interview #contents > div section h3 {
    font-size: 3.0rem;
    padding: .7em 0 .63em;
    text-align: center;
    line-height: 170%;
    letter-spacing: .04em;
    border-top: #617684 1px solid;
    border-bottom: #617684 1px solid;
    color: #617684; }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section h3 {
        font-size: 1.8rem;
        line-height: 1.56;
        margin: 6.25%;
        padding: .39em 0 .33em;
        letter-spacing: 0; } }
    .mizusawa_interview #contents > div section h3 + p {
      margin-top: 3.75em; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section h3 + p {
          margin-top: 2.08em; } }
    .mizusawa_interview #contents > div section h3 ~ h3 {
      margin-top: 1.87em; }
    .mizusawa_interview #contents > div section h3 + dl {
      margin-top: 3em; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section h3 + dl {
          margin-top: 2em; } }
  .mizusawa_interview #contents > div section dl {
    margin-left: 8em; }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section dl {
        margin: 0 6.25%; } }
    .mizusawa_interview #contents > div section dl:after {
      content: '';
      display: table;
      clear: both; }
    .mizusawa_interview #contents > div section dl dt {
      line-height: 2.5;
      float: left;
      clear: both;
      width: 6.25em;
      letter-spacing: 0; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section dl dt {
          width: auto;
          float: none;
          font-size: 1.4rem;
          line-height: 1.75; } }
      .mizusawa_interview #contents > div section dl dt > i:before {
        content: '――';
        letter-spacing: 0; }
    .mizusawa_interview #contents > div section dl dd {
      line-height: 2.5;
      float: left;
      letter-spacing: .04em; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section dl dd {
          font-size: 1.4rem;
          line-height: 1.75; } }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section dl dd + dt {
          padding-top: 2em; } }
      .mizusawa_interview #contents > div section dl dd + dd {
        padding-left: 6.25em; }
        @media (max-width: 767px) {
          .mizusawa_interview #contents > div section dl dd + dd {
            padding-left: 0; } }
        .mizusawa_interview #contents > div section dl dd + dd small {
          font-size: 81.25%;
          line-height: 3.08; }
    .mizusawa_interview #contents > div section dl > *:nth-child(2) ~ * {
      margin-top: 1.75em; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section dl > *:nth-child(2) ~ * {
          margin-top: 0; } }
  .mizusawa_interview #contents > div section h4 {
    font-size: 2rem;
    margin-top: 2em;
    margin-bottom: .4em; }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section h4 {
        font-size: 1.5rem;
        margin-left: 6.25%; } }
    .mizusawa_interview #contents > div section h4 + figure {
      margin-top: 0; }
  .mizusawa_interview #contents > div section figure {
    margin: 4em 0; }
    @media (max-width: 767px) {
      .mizusawa_interview #contents > div section figure {
        margin: 1.8em 6.25%; } }
    .mizusawa_interview #contents > div section figure figcaption {
      font-size: 1.2rem;
      text-align: right;
      letter-spacing: .04em; }
      @media (max-width: 767px) {
        .mizusawa_interview #contents > div section figure figcaption {
          font-size: 80%; } }

#contents a {
  color: #3689bd; }

#contents footer {
  padding: 3em 0 0;
  border-top: #000 1px solid;
  text-align: center; }
  @media (max-width: 767px) {
    #contents footer {
      padding-top: 1.5em;
      margin-left: 6.25%;
      margin-right: 6.25%; } }
  #contents footer h3 {
    font-size: 2.0rem;
    line-height: 1.75;
    text-align: left;
    letter-spacing: .04em; }
    @media (max-width: 767px) {
      #contents footer h3 {
        font-size: 1.4rem;
        text-align: center; } }
  #contents footer a {
    display: inline-block;
    margin-top: 5em;
    text-align: left;
    color: #000; }
    @media (max-width: 767px) {
      #contents footer a {
        margin-top: 1em; } }
  #contents footer dl {
    position: relative;
    min-height: 160px;
    padding: 0 16px 0 196px;
    background-color: #ededed; }
    @media (max-width: 767px) {
      #contents footer dl {
        padding: 0 0 0 113px;
        min-height: 96px; } }
    #contents footer dl dt {
      font-size: 3.2rem;
      line-height: 1.31;
      padding: .75em 0 .19em;
      letter-spacing: .04em; }
      @media (max-width: 767px) {
        #contents footer dl dt {
          padding: .63em 0 .16em;
          font-size: 1.9rem; } }
      #contents footer dl dt small {
        font-size: 40.63%; }
        #contents footer dl dt small:first-child {
          display: block; }
    #contents footer dl dd {
      font-size: 1.5rem;
      line-height: 180%; }
      @media (max-width: 767px) {
        #contents footer dl dd {
          font-size: 80%;
          letter-spacing: -.025em; } }
      #contents footer dl dd:first-child {
        position: absolute;
        top: 0;
        left: 0;
        width: 176px; }
        @media (max-width: 767px) {
          #contents footer dl dd:first-child {
            width: 106px; } }

#profile {
  padding: 2em;
  background-color: #fff; }

@media (min-width: 768px) {
  .news #contents > div section figure {
    margin-left: 50px;
    margin-right: 50px; }
    .news #contents > div section figure img {
      width: 100%; } }

.news #contents > div section figure figcaption {
  line-height: 1.8; }

.news #contents > div section strong {
  font-size: 2.0rem; }
  @media (max-width: 767px) {
    .news #contents > div section strong {
      font-size: 1.7rem; } }

.news #contents > div section .has-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  line-height: 1.5;
  padding-left: 50px; }
  @media (max-width: 767px) {
    .news #contents > div section .has-icon {
      padding-left: 0; }
      .news #contents > div section .has-icon br {
        display: none; } }
  .news #contents > div section .has-icon img {
    margin-right: 10px;
    height: 70px; }
    @media (max-width: 767px) {
      .news #contents > div section .has-icon img {
        height: 50px;
        margin-right: 5px; } }

.news #contents > div section .archive {
  padding-top: 50px;
  padding-left: 50px;
  padding-left: 50px;
  border-top: #000 1px solid; }
  @media (max-width: 767px) {
    .news #contents > div section .archive {
      width: 90%;
      margin: 0 auto;
      padding-top: 20px;
      padding-left: 0;
      padding-right: 0; } }

@media (min-width: 768px) {
  .static {
    background-color: #C8C8C8; } }

.footer {
  padding-top: 60px;
  text-align: center;
  background-color: #FFF; }
  @media (max-width: 767px) {
    .footer {
      padding-top: 25px; } }
  .footer__links {
    max-width: 900px;
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    padding: 30px 55px 35px;
    margin: 0 auto; }
    .footer__links.no-border {
      border: none; }
    @media (max-width: 767px) {
      .footer__links {
        display: block;
        padding-left: 5%;
        padding-right: 5%; } }
    .footer__links li > a {
      color: #451221; }
  .footer__copyright {
    padding-top: 50px;
    padding-bottom: 100px; }
    @media (max-width: 767px) {
      .footer__copyright {
        padding-top: 25px;
        padding-bottom: 25px; } }
  .footer__text-links {
    font-size: 1.2rem; }
    @media (min-width: 768px) {
      .footer__text-links ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        list-style: none; }
        .footer__text-links ul li + li {
          margin-left: 30px; }
          .footer__text-links ul li + li:before {
            content: '|';
            margin-right: 30px; } }
    @media (max-width: 767px) {
      .footer__text-links {
        font-size: 1.1rem; } }

@media (max-width: 767px) {
  .share {
    margin-bottom: 30px;
    padding-left: 5%;
    padding-right: 5%; } }

.share__head {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 173%;
  color: #451221;
  text-align: left;
  margin-bottom: 0.5em; }
  @media (max-width: 767px) {
    .share__head {
      margin-bottom: 0.5em; } }

.share__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none; }
  @media (max-width: 767px) {
    .share__list {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  .share__list li + li {
    margin-left: 40px; }

.text-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none; }
  @media (max-width: 767px) {
    .text-links {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .teaser .text-links {
        padding-left: 15%;
        padding-right: 15%; } }
  .text-links li + li {
    margin-left: 40px; }
    @media (max-width: 767px) {
      .text-links li + li {
        margin-left: 0; } }
  .text-links a {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 173%;
    color: #001752; }
    @media (max-width: 767px) {
      .text-links a {
        font-size: 1.2rem;
        letter-spacing: 0;
        line-height: 200%; } }

/*# sourceMappingURL=app2.css.map */
