@charset "UTF-8";

.icon-replay:before {
  content: "\e042";
}

#mypage .crop-ctrl .button:before {
  font-family: fontAwesome;
}

/* reset & asset css */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input, button, textarea, select, option {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  outline: none;
  color: inherit;
  font: inherit;
  font-size: 100%;
  text-align: inherit;
  vertical-align: baseline;
  line-height: inherit;
  letter-spacing: inherit;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}

* {
  min-width    : 0;
  min-height   : 0;
  overflow-wrap: break-word;
  word-break   : break-all;
  word-wrap    : break-word;
}

*:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font: inherit;
  font-size: 100%;
  text-align: inherit;
  vertical-align: baseline;
  line-height: inherit;
  letter-spacing: inherit;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}

html {
  height: 100%;
  font-size: 0.625em;
  -webkit-text-size-adjust: 100%;
}

html, body {
  position: relative;
  width: 100%;
}

body {
  overflow: auto;
  overflow-y: scroll;
  min-height: 100%;
  color: #1d1d1d;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  text-align: left;
  line-height: 1;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  body {
    padding-bottom: 120px;
  }
}

@media screen and (max-width: 959px) {
  body {
    padding-bottom: 188px;
  }
}

@media screen and (max-width: 374px) {
  body {
    padding-bottom: 180px;
  }
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

section {
  position: relative;
}

input, button, textarea, select, option {
  text-align: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select, option {
  text-align: left;
}

button, input[type="button"], input[type="submit"], label {
  cursor: pointer;
}

a, input[type="button"], button {
  text-decoration: none;
}

input[type="button"] > *, button > * {
  position: relative;
}

input[type="text"]::-webkit-input-placeholder, input[type="number"]::-webkit-input-placeholder, input[type="email"]::-webkit-input-placeholder, input[type="url"]::-webkit-input-placeholder, input[type="search"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder, input[type="date"]::-webkit-input-placeholder, input[type="time"]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #cdcdcd;
}

input[type="text"]:-ms-input-placeholder, input[type="number"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="url"]:-ms-input-placeholder, input[type="search"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="date"]:-ms-input-placeholder, input[type="time"]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #cdcdcd;
}

input[type="text"]::-ms-input-placeholder, input[type="number"]::-ms-input-placeholder, input[type="email"]::-ms-input-placeholder, input[type="url"]::-ms-input-placeholder, input[type="search"]::-ms-input-placeholder, input[type="tel"]::-ms-input-placeholder, input[type="date"]::-ms-input-placeholder, input[type="time"]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #cdcdcd;
}

input[type="text"]::placeholder, input[type="number"]::placeholder, input[type="email"]::placeholder, input[type="url"]::placeholder, input[type="search"]::placeholder, input[type="tel"]::placeholder, input[type="date"]::placeholder, input[type="time"]::placeholder, textarea::placeholder {
  color: #cdcdcd;
}

input[type="text"]:-ms-input-placeholder, input[type="number"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="url"]:-ms-input-placeholder, input[type="search"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="date"]:-ms-input-placeholder, input[type="time"]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #cdcdcd;
}

input[type="text"]::-ms-input-placeholder, input[type="number"]::-ms-input-placeholder, input[type="email"]::-ms-input-placeholder, input[type="url"]::-ms-input-placeholder, input[type="search"]::-ms-input-placeholder, input[type="tel"]::-ms-input-placeholder, input[type="date"]::-ms-input-placeholder, input[type="time"]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #cdcdcd;
}

img, svg {
  max-width     : 100%;
  vertical-align: bottom;
}

.cf:after {
  display: block;
  clear: both;
  content: "";
}

@media screen and (max-width: 959px) {
  .inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media print, screen and (min-width: 960px) {
  .inner {
    margin       : 0 auto;
    max-width    : 1024px;
    padding-right: 32px;
    padding-left : 32px;
  }
}

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

@media print, screen and (min-width: 960px) {
  a:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  .sp {
    display: none;
  }
}

@media screen and (max-width: 374px) {
  .min375 {
    display: none;
  }
}

@media screen and (min-width: 375px) {
  .max374 {
    display: none;
  }
}

@media print, screen and (min-width: 960px) {
  #container {
    padding-top: 70px;
  }
}

@media screen and (max-width: 959px) {
  #container {
    padding-top: 50px;
  }
}

header {
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #1d1d1d;
}
@media print, screen and (min-width: 960px) {
  header nav {
    display: block !important;
  }
  header nav .navInner {
    overflow: hidden;
  }
}
@media screen and (max-width: 959px) {
  header {
    height: 50px;
  }
  header #navButton {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 50px;
    color: #fff;
  }
  header #navButton #navButtonInner:before, header #navButton #navButtonInner:after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -35px;
    width: 35px;
    height: 3px;
    margin: auto;
    background-color: #fff;
    opacity: 0;
    content: "";
    -webkit-transition: 0.5s opacity;
    -moz-transition: 0.5s opacity;
    -ms-transition: 0.5s opacity;
    -o-transition: 0.5s opacity;
    transition: 0.5s opacity;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
  }
  header #navButton #navButtonInner:before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  header #navButton #navButtonInner:after {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  header #navButton .bars, header #navButton .label {
    -webkit-transition: 0.5s opacity;
    -moz-transition: 0.5s opacity;
    -ms-transition: 0.5s opacity;
    -o-transition: 0.5s opacity;
    transition: 0.5s opacity;
  }
  header #navButton .bars {
    margin-bottom: 5px;
  }
  header #navButton .bars .bar {
    height: 3px;
    background-color: currentColor;
  }
  header #navButton .bars .bar + .bar {
    margin-top: 6px;
  }
  header #navButton .label {
    font-size: 2rem;
    font-weight: 700;
    text-indent: 15px;
    letter-spacing: 0.1em;
  }
  header.opened #navButton #navButtonInner:before, header.opened #navButton #navButtonInner:after {
    opacity: 1;
    -ms-filter: none;
    -webkit-filter: none;
    filter: none;
  }
  header.opened #navButton .bars, header.opened #navButton .label {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
  }
  header nav {
    display: none;
    position: absolute;
    top: 100%;
    width: 100%;
    height: calc(100vh - 50px);
  }
  header .navInner {
    overflow-y: scroll;
    height: 100%;
  }
}

footer {
  background-color: #1d1d1d;
  bottom          : 0;
  color           : #fff;
  left            : 0;
  position        : absolute;
  right           : 0;
  text-align      : center;
  z-index         : 9999;
}

footer nav ul {
  display      : -webkit-flex;
  display      : -ms-flexbox;
  display      : flex;
  flex-wrap    : wrap;
  -ms-flex-wrap: wrap;
}

footer nav li {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

footer nav a {
  display: block;
  text-indent: 0.13em;
  letter-spacing: 0.13em;
}

footer .copyright {
  letter-spacing: 0.13em;
  padding       : 0 0 16px;
  text-indent   : 0.13em;
}

@media print, screen and (min-width: 960px) {
  footer {
    min-width  : 100%;
    padding-top: 30px;
  }
  footer nav {
    position     : relative;
    margin-bottom: 20px;
  }
  footer nav ul {
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -o-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
  }
  footer nav li {
    border-left: 1px solid;
    margin     : 8px 0px; 
  }
  footer nav li:nth-child(1) {
    border-left: none;
  }
  footer nav li a {
    display  : inline-block;
    font-size: 1.4rem;
    padding  : 0 1em;
  }
  footer .copyright {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 959px) {
  footer {
    width: 100%;
    height: 188px;
  }
  footer .inner {
    padding: 0;
  }
  footer nav {
    position: relative;
  }
  footer nav:before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #565656;
    content: "";
  }
  footer nav ul {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  footer nav ul li {
    width: 50%;
    border-bottom: 1px solid #565656;
  }
  footer nav ul li:nth-of-type(odd):last-of-type {
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #1d1d1d;
  }
  footer nav ul a {
    font-size: 1.2rem;
    line-height: 4.5rem;
  }
  footer .copyright {
    padding: 20px 0;
    font-size: 1rem;
  }
}

@media screen and (max-width: 374px) {
  footer {
    height: 180px;
  }
  footer nav ul a {
    font-size: 1rem;
  }
  footer .copyright {
    padding: 16px 0;
  }
  footer .copyright p {
    -webkit-transform: scale(0.83333);
    -moz-transform: scale(0.83333);
    -ms-transform: scale(0.83333);
    -o-transform: scale(0.83333);
    transform: scale(0.83333);
  }
}

#breadcrumb {
  line-height: 2;
  letter-spacing: 0.1em;
}

#breadcrumb ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -o-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#breadcrumb ul li {
  position: relative;
  max-width: 100%;
  margin-right: 13px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

#breadcrumb ul li > * {
  display: block;
  overflow: hidden;
  width: 100%;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

#breadcrumb ul li:last-of-type {
  margin-right: 0;
}

#breadcrumb ul li + li {
  padding-left: 17px;
}

#breadcrumb ul li + li:before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -3px;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-top: 1px solid;
  border-right: 1px solid;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#breadcrumb a {
  color: #939393;
}

@media print, screen and (min-width: 960px) {
  #breadcrumb {
    padding: 15px 0;
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 959px) {
  #breadcrumb {
    padding: 10px 0;
    font-size: 1.1rem;
    line-height: 2rem;
  }
}

.selectbox {
  display: inline-block;
  overflow: hidden;
  position: relative;
  padding-right: 25px;
  border: 1px solid #cdcdcd;
  border-radius: 4px;
  background-color: #fff;
  vertical-align: bottom;
  cursor: pointer;
}

.selectbox:before, .selectbox:after {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 25px;
  height: 100%;
  pointer-events: none;
  content: "";
}

.selectbox:after {
  background-repeat: no-repeat;
  background-position: center;
}

.selectbox select {
  display: block;
  width: calc(100% + 25px);
  border-radius: 0;
}

@media print, screen and (min-width: 960px) {
  .selectbox:before {
    background-color: #cdcdcd;
  }
  .selectbox:after {
    background-image: url("../images/global/selectbox_pull.svg");
    -webkit-background-size: 10px auto;
    -moz-background-size: 10px auto;
    background-size: 10px auto;
  }
  .selectbox select {
    height: 2.8rem;
    padding: 0 0 0 10px;
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
}

@media screen and (max-width: 959px) {
  .selectbox:before {
    background-color: #fff;
  }
  .selectbox:after {
    width: 25px;
    background-image: url("../images/global/sp/selectbox_pull.svg");
    -webkit-background-size: 10px auto;
    -moz-background-size: 10px auto;
    background-size: 10px auto;
  }
  .selectbox select {
    height: 3rem;
    padding: 0 0 0 10px;
    line-height: 3rem;
  }
}

.checkbox input {
  display: none;
}

.checkbox input:checked + .label:after {
  opacity: 1;
  -ms-filter: none;
  -webkit-filter: none;
  filter: none;
}

.checkbox .label {
  display: inline-block;
  position: relative;
  padding-left: 25px;
  line-height: 1.8rem;
}

.checkbox .label:before, .checkbox .label:after {
  display: block;
  position: absolute;
  content: "";
}

.checkbox .label:before {
  top: 0;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 2px solid #cdcdcd;
}

.checkbox .label:after {
  top: 5px;
  left: 4px;
  width: 1rem;
  height: 0.5rem;
  border-bottom: 2px solid;
  border-left: 2px solid;
  opacity: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.radio input {
  display: none;
}

.radio input:checked + .label:after {
  opacity: 1;
  -ms-filter: none;
  -webkit-filter: none;
  filter: none;
}

.radio .label {
  display: inline-block;
  position: relative;
  padding-left: 25px;
  line-height: 1.8rem;
}

.radio .label:before, .radio .label:after {
  display: block;
  position: absolute;
  border-radius: 50%;
  content: "";
}

.radio .label:before {
  top: 0;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 2px solid #cdcdcd;
}

.radio .label:after {
  top: 4px;
  left: 4px;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.pagenation li {
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.pagenation li + li {
  border-left: 1px solid #cdcdcd;
}

.pagenation li.prev a, .pagenation li.prev span,
.pagenation li.next a,
.pagenation li.next span {
  color: #7f7f7f;
}

.pagenation li.total a, .pagenation li.total span {
  color: inherit;
  font-weight: normal;
}

.pagenation a, .pagenation span {
  display: block;
  color: #2854ae;
  font-weight: 700;
  text-indent: 0.05em;
}

@media print, screen and (min-width: 960px) {
  .pagenation {
    text-align: center;
    line-height: 2.8rem;
  }
  .pagenation ul {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-box;
    display: inline-flex;
  }
  .pagenation li:first-of-type {
    border-left: 1px solid;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
  }
  .pagenation li:last-of-type {
    border-right: 1px solid;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
  }
  .pagenation li.prev a, .pagenation li.prev span,
  .pagenation li.next a,
  .pagenation li.next span {
    width: 25px;
  }
  .pagenation li.total a, .pagenation li.total span {
    width: 48px;
  }
  .pagenation a, .pagenation span {
    width: 32px;
  }
}

@media screen and (max-width: 959px) {
  .pagenation {
    font-size: 1.8rem;
    line-height: 3.6rem;
  }
  .pagenation ul {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .pagenation li {
    width: calc(100% / 7);
  }
  .pagenation li.prev {
    border-left: 1px solid;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
  }
  .pagenation li.next {
    border-right: 1px solid;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
  }
  .pagenation li.total {
    width: 100%;
    border: none;
    font-size: 1.4rem;
    text-align: right;
    line-height: 3.2rem;
  }
  .pagenation li.total a, .pagenation li.total span {
    display: inline;
  }
  .pagenation li.total a:before, .pagenation li.total span:before {
    content: "[";
  }
  .pagenation li.total a:after, .pagenation li.total span:after {
    content: "]";
  }
  .pagenation a {
    text-align: center;
  }
}

#top {
  /*==========
ログイン前TOPページ
==========*/
  /*==========
TOP
==========*/
}

#top .notLoggedIn section {
  background-color: #fff;
}

#top .notLoggedIn #lead p {
  font-size: 1.6rem;
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #top .notLoggedIn #lead {
    padding: 72px 0 54px;
  }
  #top .notLoggedIn #lead p {
    text-align: center;
  }
}

#top .notLoggedIn #login {
  background-color: #fff;
}

#top .notLoggedIn #login a {
  display: block;
  position: relative;
  border-radius: 4px;
  background-color: #cf2929;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#top .notLoggedIn #login a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #top .notLoggedIn #login a {
    width: 580px;
    margin: auto;
    padding: 30px 0;
    font-size: 2rem;
  }
  #top .notLoggedIn #login a:after {
    right: 32px;
    width: 18px;
    height: 18px;
  }
}

@media screen and (max-width: 959px) {
  #top .notLoggedIn #lead {
    padding: 30px 0 16px;
  }
  #top .notLoggedIn #login a {
    font-size  : 1.4rem;
    line-height: 1.5;
    margin     : 0 auto;
    padding    : 8px 0px;
    width      : 240px;
  }
  #top .notLoggedIn #login a:after {
    right: 20px;
    width: 15px;
    height: 15px;
  }
}

#top .notLoggedIn #summary h2 {
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.5rem;
}

#top .notLoggedIn #summary ul li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #top .notLoggedIn #summary {
    padding: 60px 0 64px;
  }
  #top .notLoggedIn #summary ul li {
    line-height: 2.2rem;
  }
}

@media screen and (max-width: 959px) {
  #top .notLoggedIn #summary {
    padding: 16px 0 45px;
  }
  #top .notLoggedIn #summary ul li {
    line-height: 2.5rem;
  }
}

#top .toppage #news h2, #top .toppage #tourDates h2 {
  font-weight: 700;
  text-indent: 0.1em;
  text-align: center;
  letter-spacing: 0.1em;
}

@media print, screen and (min-width: 960px) {
  #top .toppage #news h2, #top .toppage #tourDates h2 {
    font-size: 3rem;
  }
}

@media screen and (max-width: 959px) {
  #top .toppage #news h2, #top .toppage #tourDates h2 {
    font-size: 2.5rem;
  }
}

#top .toppage #news {
  background-color: #262626;
}

#top .toppage #news a {
  display: block;
  position: relative;
}

#top .toppage #news a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid;
  border-right: 2px solid;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#top .toppage #news h2 {
  color: #fff;
}

#top .toppage #news #newsList {
  background-color: #fff;
}

#top .toppage #news #newsArchive {
  text-align: center;
}

#top .toppage #news #newsArchive a {
  display: inline-block;
  position: relative;
  color: #fff;
  line-height: 2;
  letter-spacing: 0.1em;
}

#top .toppage #news #newsArchive a:after {
  display: block;
  position: absolute;
  top: 0;
  right: 5px;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid;
  border-right: 2px solid;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #top .toppage #news {
    padding: 75px 0;
  }
  #top .toppage #news h2 {
    margin-bottom: 60px;
  }
  #top .toppage #news #newsList li + li {
    border-top: 2px solid #f3f3f3;
  }
  #top .toppage #news #newsList a {
    padding: 16px 0;
    font-size: 0;
  }
  #top .toppage #news #newsList a:after {
    right: 30px;
    width: 12px;
    height: 12px;
  }
  #top .toppage #news #newsList a > * {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 2;
  }
  #top .toppage #news #newsList a .date {
    width: 150px;
    text-align: center;
  }
  #top .toppage #news #newsArchive {
    padding-top: 16px;
  }
  #top .toppage #news #newsArchive a {
    padding-right: 24px;
    font-size: 1.6rem;
  }
  #top .toppage #news #newsArchive a:after {
    width: 12px;
    height: 12px;
  }
}

@media screen and (max-width: 959px) {
  #top .toppage #news {
    padding: 40px 0 35px;
  }
  #top .toppage #news h2 {
    margin-bottom: 40px;
  }
  #top .toppage #news #newsList li + li {
    border-top: 1px solid #1d1d1d;
  }
  #top .toppage #news #newsList a {
    padding: 15px 45px 15px 15px;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #top .toppage #news #newsList a:after {
    right: 18px;
    width: 10px;
    height: 10px;
  }
  #top .toppage #news #newsList a .date {
    margin-bottom: 10px;
  }
  #top .toppage #news #newsArchive {
    padding-top: 12px;
  }
  #top .toppage #news #newsArchive a {
    padding-right: 26px;
    font-size: 1.4rem;
  }
  #top .toppage #news #newsArchive a:after {
    width: 10px;
    height: 10px;
  }
}

#top .toppage #TicketAndGuide {
  border-bottom: 2px solid #f1f1f1;
  background-color: #fff;
}

#top .toppage #TicketAndGuide a {
  display: block;
  position: relative;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  text-align: center;
}

#top .toppage #TicketAndGuide a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#top .toppage #TicketAndGuide .ticket a {
  background-color: #cf2929;
  font-weight: 700;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}

#top .toppage #TicketAndGuide .guide a {
  background-color: #262633;
}

#top .toppage #TicketAndGuide .guide dt {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

#top .toppage #TicketAndGuide .guide dt span {
  display: block;
  font-weight: 700;
  letter-spacing: 0.05em;
}

#top .toppage #TicketAndGuide .guide dd {
  text-indent: 0.05em;
  line-height: 2;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #top .toppage #TicketAndGuide {
    padding: 60px 0;
  }
  #top .toppage #TicketAndGuide a {
    width: 580px;
    margin: auto;
  }
  #top .toppage #TicketAndGuide a:after {
    right: 32px;
    width: 18px;
    height: 18px;
  }
  #top .toppage #TicketAndGuide .ticket {
    margin-bottom: 56px;
  }
  #top .toppage #TicketAndGuide .ticket a {
    padding: 30px 0;
    font-size: 2rem;
  }
  #top .toppage #TicketAndGuide .guide a {
    padding: 25px 0;
  }
  #top .toppage #TicketAndGuide .guide dt {
    margin-bottom: 10px;
  }
  #top .toppage #TicketAndGuide .guide dt .icon {
    margin-right: 18px;
  }
  #top .toppage #TicketAndGuide .guide dt .icon img {
    width: 2.8rem;
    height: 2.8rem;
  }
  #top .toppage #TicketAndGuide .guide dt span {
    font-size: 2rem;
    line-height: 2.8rem;
  }
  #top .toppage #TicketAndGuide .guide dd {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #top .toppage #TicketAndGuide {
    padding: 35px 0 40px;
  }
  #top .toppage #TicketAndGuide a:after {
    right: 20px;
    width: 15px;
    height: 15px;
  }
  #top .toppage #TicketAndGuide .ticket {
    margin-bottom: 35px;
  }
  #top .toppage #TicketAndGuide .ticket a {
    padding: 20px 0;
    font-size: 2rem;
  }
  #top .toppage #TicketAndGuide .guide a {
    padding: 20px 0 18px;
  }
  #top .toppage #TicketAndGuide .guide dt {
    margin-bottom: 12px;
  }
  #top .toppage #TicketAndGuide .guide dt .icon {
    margin-right: 10px;
  }
  #top .toppage #TicketAndGuide .guide dt .icon img {
    width: 2.6rem;
    height: 2.6rem;
  }
  #top .toppage #TicketAndGuide .guide dt span {
    font-size: 2rem;
    line-height: 2.6rem;
  }
  #top .toppage #TicketAndGuide .guide dd {
    font-size: 1.4rem;
    line-height: 2rem;
  }
}

@media screen and (max-width: 374px) {
  #top .toppage #TicketAndGuide a:after {
    width: 12px;
    height: 12px;
  }
}

#top .toppage #tourDates {
  background-color: #fff;
}

#top .toppage #tourDates a {
  display: block;
}

#top .toppage #tourDates .year h3 {
  color: #262633;
  font-weight: 700;
}

#top .toppage #tourDates .tourDetail:nth-of-type(odd) {
  background-color: #f3f3f3;
}

#top .toppage #tourDates .tourDetail:nth-of-type(even) {
  background-color: #fff;
}

#top .toppage #tourDates .tourDetail .upper {
  font-weight: 700;
  letter-spacing: 0.05em;
}

#top .toppage #tourDates .tourDetail .upper .dayOfTheWeek.sat {
  color: #2854ae;
}

#top .toppage #tourDates .tourDetail .upper .dayOfTheWeek.sun {
  color: #e22222;
}

#top .toppage #tourDates .tourDetail .upper .place a {
  display: inline-block;
  vertical-align: bottom;
}

#top .toppage #tourDates .tourDetail .upper .place a:after {
  display: inline-block;
  background-image: url("../images/global/external_link.svg");
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  background-size: 100%;
  content: "";
}

#top .toppage #tourDates .tourDetail .lower ul {
  font-size: 0;
}

#top .toppage #tourDates .tourDetail .lower span {
  display: inline-block;
}

#top .toppage #tourDates .tourDetail .lower .open span:first-of-type {
  margin-right: 1em;
}

#top .toppage #tourDates .tourDetail .inner {
  position: relative;
}

#top .toppage #tourDates .tourDetail .finished {
  position: absolute;
  border-radius: 4px;
  background-color: #969696;
  color: #fff;
  font-weight: 700;
  text-indent: 0.1em;
  letter-spacing: 0.1em;
}

#top .toppage #tourDates .note {
  line-height: 2;
}

@media print, screen and (min-width: 960px) {
  #top .toppage #tourDates {
    padding-top: 80px;
  }
  #top .toppage #tourDates h2 {
    margin-bottom: 70px;
  }
  #top .toppage #tourDates .year + .year {
    margin-top: 64px;
  }
  #top .toppage #tourDates .year h3 {
    margin-bottom: 40px;
    font-size: 5rem;
  }
  #top .toppage #tourDates .tourDetail {
    padding: 20px 0 25px;
  }
  #top .toppage #tourDates .tourDetail .upper {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    padding-right: 140px;
    font-size: 2.2rem;
    line-height: 4rem;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -o-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  #top .toppage #tourDates .tourDetail .upper .date {
    width: 220px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #top .toppage #tourDates .tourDetail .upper .place a:after {
    width: 20px;
    height: 20px;
  }
  #top .toppage #tourDates .tourDetail .lower li {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 2;
  }
  #top .toppage #tourDates .tourDetail .lower li + li {
    margin-left: 2em;
  }
  #top .toppage #tourDates .tourDetail .finished {
    right: 32px;
    bottom: 0;
    padding: 0 25px;
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
  #top .toppage #tourDates .note {
    padding-top: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #top .toppage #tourDates {
    padding-top: 36px;
  }
  #top .toppage #tourDates h2 {
    margin-bottom: 50px;
  }
  #top .toppage #tourDates .year + .year {
    margin-top: 50px;
  }
  #top .toppage #tourDates .year h3 {
    padding-bottom: 15px;
    font-size: 3.5rem;
  }
  #top .toppage #tourDates .tourDetail {
    padding: 10px 0 15px;
  }
  #top .toppage #tourDates .tourDetail .upper {
    margin-bottom: 10px;
    font-size: 1.6rem;
    line-height: 2.5rem;
  }
  #top .toppage #tourDates .tourDetail .upper .date {
    margin-bottom: 5px;
  }
  #top .toppage #tourDates .tourDetail .upper .place a:after {
    width: 14px;
    height: 14px;
  }
  #top .toppage #tourDates .tourDetail .lower {
    padding-right: 120px;
  }
  #top .toppage #tourDates .tourDetail .lower li {
    font-size: 1.4rem;
    line-height: 2rem;
  }
  #top .toppage #tourDates .tourDetail .lower li + li {
    margin-top: 5px;
  }
  #top .toppage #tourDates .tourDetail .finished {
    right: 15px;
    bottom: 5px;
    width: 100px;
    text-align: center;
    line-height: 3rem;
  }
  #top .toppage #tourDates .note {
    padding-top: 15px;
    font-size: 1.2rem;
  }
}

#top .toppage #ticket {
  background-color: #fff;
}

#top .toppage #ticket a {
  display: block;
  position: relative;
  border-radius: 4px;
  background-color: #cf2929;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#top .toppage #ticket a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #top .toppage #ticket {
    padding: 50px 0 80px;
  }
  #top .toppage #ticket a {
    width: 580px;
    margin: auto;
    padding: 30px 0;
    font-size: 2rem;
  }
  #top .toppage #ticket a:after {
    right: 32px;
    width: 18px;
    height: 18px;
  }
}

@media screen and (max-width: 959px) {
  #top .toppage #ticket {
    padding: 30px 0 35px;
  }
  #top .toppage #ticket a {
    padding: 20px 0;
    font-size: 2rem;
  }
  #top .toppage #ticket a:after {
    right: 20px;
    width: 15px;
    height: 15px;
  }
}

@media screen and (max-width: 374px) {
  #top .toppage #ticket a:after {
    width: 12px;
    height: 12px;
  }
}

#top .footer-banner > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: 60px;
  padding: 20px 16px;
}

#top .banner-tfaj-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#top .tfaj-logo {
  height: 58px;
}

#top .tfaj-name {
  font-size: 11px;
  line-height: 1.3;
  color: #999898;
}

#top .tfaj-name .br {
  display: block;
}

#news {
  /*==========
news
==========*/
  /*==========
news_top
==========*/
  /*==========
news_detail
==========*/
}

@media print, screen and (min-width: 960px) {
  #news #newsCont {
    margin: 24px 0 40px;
  }
  #news .pagenation {
    padding: 30px 0;
  }
  #news .pagenation ul.inner {
    margin: auto;
  }
}

@media screen and (max-width: 959px) {
  #news #newsCont {
    margin: 16px 0;
  }
  #news .pagenation {
    padding: 30px 15px;
  }
}

#news #newsCont h1 {
  font-weight: 700;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #d2d2d2;
}

@media print, screen and (min-width: 960px) {
  #news #newsCont h1 {
    font-size: 2rem;
    padding-bottom: 16px;
  }
}

@media screen and (max-width: 959px) {
  #news h1 {
    font-size: 2rem;
    padding-bottom: 8px;
  }
}

#news #newsCont #newsList ul li {
  border-bottom: none;
}

#news #newsCont #newsList ul li:nth-of-type(2n+1) {
  background-color: #f7f8f8;
}

#news #newsCont #newsList a {
  display: block;
  position: relative;
}

#news #newsCont #newsList {
  background-color: #fff;
}

#news #newsCont #newsList a .date span,
#news #newsCont #newsDetail .title {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #news #newsCont #newsList {
    padding: 25px 0;
  }
  #news #newsCont #newsList a {
    padding: 26px 0 18px;
    font-size: 0;
  }
  #news #newsCont #newsList a > * {
    font-size: 1.6rem;
    line-height: 2;
  }
  #news #newsCont #newsList a .date span {
    font-size: 1.4rem;
  }
  #news #newsCont #newsList a .date {
    width: 150px;
  }
}

@media screen and (max-width: 959px) {
  #news #newsCont #newsList {
    padding: 16px 0;
  }
  #news #newsCont #newsList a {
    padding: 20px 0;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #news #newsCont #newsList a .date {
    margin-bottom: 8px;
  }
  #news #newsCont #newsList a .date span {
    font-size: 1.3rem;
  }
}

#news #newsCont #newsDetail .newsText .pright {
  text-align: right;
}

@media print, screen and (min-width: 960px) {
  #news #newsCont #newsDetail {
    padding: 32px 0 0;
  }
  #news #newsCont #newsDetail .date,
  #news #newsCont #newsDetail .title,
  #news #newsCont #newsDetail .newsText {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #news #newsCont #newsDetail .date {
    margin: 0;
  }
  #news #newsCont #newsDetail .title {
    margin-bottom: 48px;
  }
  #news #newsCont #newsDetail .newsText p {
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #news #newsCont #newsDetail {
    padding: 1.2rem 0 2rem;
  }
  #news #newsCont #newsDetail .date,
  #news #newsCont #newsDetail .newsText {
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #news #newsCont #newsDetail .title {
    line-height: 2.8rem;
    margin-bottom: 2.4rem;
  }
  #news #newsCont #newsDetail .date {
    margin: 0 0 .4rem;
  }
  #news #newsCont #newsDetail .newsText {
    margin-bottom: 1rem;
  }
  #news #newsCont #newsDetail .newsText p {
    margin-bottom: 2.3rem;
  }
}

#news #newsCont #newsDetail #newsArchive a:before {
  width: 12px;
  height: 12px;
}

#news #newsCont #newsDetail #newsArchive a {
  display: inline-block;
  position: relative;
  line-height: 2;
  letter-spacing: 0.1em;
  padding-left: 20px;
  font-weight: 700;
  font-size: 1.6rem;
}

#news #newsCont #newsDetail #newsArchive a:before {
  display: block;
  position: absolute;
  top: 0;
  left: 5px;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid;
  border-right: 2px solid;
  content: "";
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
}

#mypage {
  /*==========
共通
==========*/
  /*==========
申込キャンセル[完了],
クレジット情報登録[削除],
登録解除完了（退会）,
メールアドレス変更完了,
==========*/
  /*==========
申込者キャンセル,
隣席者キャンセル,
申込者キャンセル[完了],
隣席者キャンセル[完了]
==========*/
  /*==========
TOP
==========*/
  /*==========
申込履歴[一覧]
==========*/
  /*==========
申込[詳細]
==========*/
  /*---入金後キャンセル(1907 追加）-----*/
  /*==========
クレジット情報登録[認証]
==========*/
  /*==========
クレジット情報登録
==========*/
  /*==========
顔写真(パスコード)
==========*/
  /*==========
顔写真(パスコード)[参照]
==========*/
  /*==========
顔写真(パスコード)[登録]
==========*/
  /*==========
顔写真(パスコード)[作成]
==========*/
  /*==========
顔写真(パスコード)[確認]
==========*/
  /*==========
会員情報確認
==========*/
  /*==========
メールアドレス変更,
メールアドレス変更(メール送信),
メールアドレス変更完了
==========*/
  /*==========
メールアドレス変更
==========*/
  /*==========
メールアドレス変更(メール送信)
==========*/
  /*==========
登録解除（退会）
==========*/
  /*==========
返金手続き（入力）
返金手続き（確認）
返金手続き（完了・振込先口座登録案内メール送信）
==========*/
  /*for overwrite*/
  /* //for overwrite*/
}

@media screen and (min-width: 1024px) {
  #mypage #container .inner {
    padding-right: 292px;
  }
}

#mypage .head {
  margin-bottom: 20px;
  font-weight: 700;
  line-height: 5rem;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #mypage .head {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .head {
    font-size: 2.5rem;
  }
}

#mypage .linedHead {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #mypage .linedHead {
    margin-bottom: 30px;
    padding-bottom: 10px;
  }
  #mypage .linedHead span span {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .linedHead {
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
  #mypage .linedHead span span {
    font-size: 1.6rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .formContainer {
    padding: 20px 0 70px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .formContainer {
    padding: 35px 0 50px;
  }
}

#mypage .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#mypage .table th, #mypage .table td {
  vertical-align: middle;
}

#mypage .table tr + tr th, #mypage .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#mypage .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #mypage .table th {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .table th {
    width: 90px;
    line-height: 1.8rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .request + .request {
    margin-top: 50px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request + .request {
    margin-top: 36px;
  }
}

#mypage #requestList .table {
  margin-bottom: 25px;
}

#mypage #requestList .button {
  text-align: center;
}

#mypage #requestList .button a {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage #requestList .button a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage #requestList .button a {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage #requestList .button a:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage #requestList .button a:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage #requestList .button a {
    display: block;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage #requestList .button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#mypage #requestList .table, #mypage .request_detail .table {
  position: relative;
  line-height: 2.4rem;
}

#mypage #requestList .table .orderNumber td .number, #mypage .request_detail .table .orderNumber td .number {
  font-weight: 700;
}

#mypage #requestList .table .orderNumber td .cancel, #mypage .request_detail .table .orderNumber td .cancel {
  color: #999;
}

#mypage #requestList .table .orderNumber td .cancel a, #mypage .request_detail .table .orderNumber td .cancel a {
  text-decoration: underline;
}

#mypage #requestList .table .title td, #mypage .request_detail .table .title td {
  font-weight: 700;
}

#mypage #requestList .table .choice td .detail .place, #mypage .request_detail .table .choice td .detail .place {
  font-weight: 700;
}

#mypage #requestList .table .choice td .side, #mypage .request_detail .table .choice td .side {
  text-align: right;
}

#mypage #requestList .table .choice td .side .status, #mypage .request_detail .table .choice td .side .status {
  display: inline-block;
  border: 1px solid;
  border-radius: 4px;
  font-weight: 700;
  text-align: center;
}

#mypage #requestList .table .choice.waiting td .side .status, #mypage .request_detail .table .choice.waiting td .side .status, #mypage #requestList .table .choice.invalid.white td .side .status, #mypage .request_detail .table .choice.invalid.white td .side .status {
  background-color: #fff;
}

#mypage #requestList .table .choice.paid td .side .status, #mypage .request_detail .table .choice.paid td .side .status, #mypage #requestList .table .choice.done td .side .status, #mypage .request_detail .table .choice.done td .side .status {
  border-color: #cf2929;
  background-color: #cf2929;
  color: #fff;
}

#mypage #requestList .table .choice.unpaid td .side .status, #mypage .request_detail .table .choice.unpaid td .side .status {
  border-color: #cf2929;
  color: #cf2929;
}

#mypage #requestList .table .choice.defeat td .side .status, #mypage .request_detail .table .choice.defeat td .side .status, #mypage #requestList .table .choice.cancel td .side .status, #mypage .request_detail .table .choice.cancel td .side .status, #mypage #requestList .table .choice.invalid.gray td .side .status, #mypage .request_detail .table .choice.invalid.gray td .side .status, #mypage #requestList .table .choice.expired td .side .status, #mypage .request_detail .table .choice.expired td .side .status {
  border-color: #969696;
  background-color: #969696;
  color: #fff;
}

@media print, screen and (min-width: 960px) {
  #mypage #requestList .table th, #mypage .request_detail .table th {
    width: 130px;
    padding: 28px 0;
  }
  #mypage #requestList .table td, #mypage .request_detail .table td {
    font-size: 1.6rem;
  }
  #mypage #requestList .table td .cellInner, #mypage .request_detail .table td .cellInner {
    padding: 16px 20px;
  }
  #mypage #requestList .table .orderNumber td .cellInner, #mypage .request_detail .table .orderNumber td .cellInner {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -o-box-align: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-align: center;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage #requestList .table .orderNumber td .cancel, #mypage .request_detail .table .orderNumber td .cancel {
    font-size: 1.4rem;
    text-align: right;
  }
  #mypage #requestList .table .choice td .cellInner, #mypage .request_detail .table .choice td .cellInner {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    -webkit-box-align: end;
    -moz-box-align: end;
    -o-box-align: end;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-align: end;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage #requestList .table .choice td .detail, #mypage .request_detail .table .choice td .detail {
    max-width: 50%;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #mypage #requestList .table .choice td .side .status, #mypage .request_detail .table .choice td .side .status {
    width: 182px;
    line-height: 3.4rem;
  }
  #mypage #requestList .table .choice td .side p, #mypage .request_detail .table .choice td .side p {
    margin-top: 10px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage #requestList .table td .cellInner, #mypage .request_detail .table td .cellInner {
    padding: 15px 20px;
  }
  #mypage #requestList .table .orderNumber td .cancel, #mypage .request_detail .table .orderNumber td .cancel {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 2rem;
  }
  #mypage #requestList .table .choice td .detail, #mypage .request_detail .table .choice td .detail {
    margin-bottom: 10px;
  }
  #mypage #requestList .table .choice td .side .status, #mypage .request_detail .table .choice td .side .status {
    width: 160px;
    line-height: 3rem;
  }
  #mypage #requestList .table .choice td .side p, #mypage .request_detail .table .choice td .side p {
    font-size: 1.2rem;
    text-align: left;
  }
}

#mypage #return {
  text-align: center;
}

#mypage #return a {
  display: inline-block;
  position: relative;
  padding: 0 20px;
  color: #313145;
  font-weight: 700;
}

#mypage #return a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 10px;
  margin: auto 0;
  border-bottom: 2px solid #202020;
  border-left: 2px solid #202020;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage #return {
    padding: 64px 0 20px;
  }
  #mypage #return a {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage #return {
    padding-top: 40px;
  }
  #mypage #return a {
    line-height: 2;
  }
}

#mypage .fin #guide p {
  line-height: 2.4rem;
}

#mypage .fin #guide .messageBlock {
  border: 1px solid #d2d2d2;
  text-align: center;
}

#mypage .fin #guide .messageBlock .address span {
  display: inline-block;
}

#mypage .fin #guide .note {
  margin-top: .7em;
  text-indent: -1.05em;
  padding-left: 1.05em;
}

@media print, screen and (min-width: 960px) {
  #mypage .fin #guide p {
    font-size: 1.6rem;
  }
  #mypage .fin #guide .messageBlock {
    padding: 26px 0;
  }
  #mypage .fin #guide .messageBlock .address {
    display: inline-block;
    padding-top: 5px;
    font-size: 1.4rem;
  }
  #mypage .fin #guide .messageBlock .address:before {
    content: "〈";
  }
  #mypage .fin #guide .messageBlock .address:after {
    content: "〉";
  }
  #mypage .fin #guide .messageBlock .address span {
    margin: 0 0.5em;
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #mypage .fin #guide .messageBlock {
    padding: 24px 0;
  }
  #mypage .fin #guide .messageBlock .address {
    padding-top: 10px;
  }
  #mypage .fin #guide .messageBlock .address span {
    display: block;
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
}

#mypage .fin #guide p {
  /* line-height: 2.4rem; */
}

#mypage .cancel .noticeBlock,
#mypage .fin #guide .noticeBlock {
  color: #cf2929;
  border: 1px solid #cf2929;
  text-align: center;
  font-weight: bold;
}

#mypage .cancel .noticeBlock span,
#mypage .cancel .alertBlock span,
#mypage .fin #guide .noticeBlock span {
  text-decoration: underline;
}

#mypage .fin .button {
  text-align: center;
}

#mypage .fin .button a {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .fin .button a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .cancel .noticeBlock p,
  #mypage .fin #guide .noticeBlock p {
    font-size: 1.8rem;
    line-height: 1.8;
  }
  #mypage .cancel .noticeBlock,
  #mypage .fin #guide .noticeBlock {
    padding: 26px 0;
    margin: 26px 0;
  }
  #mypage .fin .button a {
    display: inline-block;
    width: 350px;
    padding: 16px 0;
    font-size: 2rem;
    margin-top: 10px;
  }
  #mypage .fin .button a:after {
    right: 16px;
    width: 12px;
    height: 12px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .cancel .noticeBlock {
    padding: 24px 0;
    text-align: center;
    line-height: 2.4rem;
    margin-bottom: 30px;
  }
  #mypage .fin #guide .noticeBlock {
    padding: 24px 0;
    margin: 26px 0;
  }
  #mypage .fin .button a {
    display: block;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .fin .button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#mypage .top #log {
  text-align: center;
}

#mypage .top #log a {
  display: inline-block;
  position: relative;
  padding: 0 20px;
  color: #313145;
  font-weight: 700;
}

#mypage .top #log a:after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 10px;
  height: 10px;
  margin: auto 0;
  border-top: 2px solid #202020;
  border-right: 2px solid #202020;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .top #log {
    padding: 64px 0 20px;
  }
  #mypage .top #log a {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .top #log {
    padding-top: 40px;
  }
  #mypage .top #log a {
    line-height: 2;
  }
}

#mypage .pagenation.top {
  padding: 15px 0 30px;
}

#mypage .pagenation.bottom {
  padding: 70px 0 30px;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail section + section {
    margin-top: 45px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail section + section {
    margin-top: 35px;
  }
}

#mypage .request_detail .table + .table {
  margin-top: 25px;
}

#mypage .request_detail .table li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#mypage .request_detail .table .system_usage_fee td, #mypage .request_detail .table .ticket_usage_fee td {
  text-align: right;
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .table th {
    padding: 15px 0;
  }
  #mypage .request_detail .table .XShrink {
    margin: 0 -1em;
    -webkit-transform: scaleX(0.8);
    -moz-transform: scaleX(0.8);
    -ms-transform: scaleX(0.8);
    -o-transform: scaleX(0.8);
    transform: scaleX(0.8);
  }
  #mypage .request_detail .table .credit td, #mypage .request_detail .table .membership_card td {
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
}

#mypage .request_detail.cancel #button {
  text-align: center;
}

#mypage .request_detail.cancel #button p {
  margin-bottom: 10px;
  color: #cf2929;
  font-weight: 700;
}

#mypage .request_detail.cancel #button button,
#mypage .request_detail.cancel #button .button {
  position: relative;
  border-radius: 4px;
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
  font-weight: 700;
  text-indent: 0.2em;
  letter-spacing: 0.2em;
}

#mypage .request_detail.cancel #button button:before,
#mypage .request_detail.cancel #button .button:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#mypage .request_detail.cancel #button button:after,
#mypage .request_detail.cancel #button .button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #0e0e12;
  border-right: 2px solid #0e0e12;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail.cancel #button {
    padding-top: 45px;
  }
  #mypage .request_detail.cancel #button p {
    font-size: 1.6rem;
    line-height: 2;
  }
  #mypage .request_detail.cancel #button button,
  #mypage .request_detail.cancel #button .button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .request_detail.cancel #button button:after,
  #mypage .request_detail.cancel #button .button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
  #mypage .request_detail.cancel #button button:hover,
  #mypage .request_detail.cancel #button .button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail.cancel #button {
    padding-top: 35px;
  }
  #mypage .request_detail.cancel #button p {
    line-height: 2rem;
  }
  #mypage .request_detail.cancel #button button,
  #mypage .request_detail.cancel #button .button {
    display: block;
    width: 100%;
    padding: 16px 0;
    padding-left: 5px;
    font-size: 1.8rem;
  }
  #mypage .request_detail.cancel #button button:after,
  #mypage .request_detail.cancel #button .button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 374px) {
  #mypage .request_detail.cancel #button button,
  #mypage .request_detail.cancel #button .button {
    font-size: 1.6rem;
  }
}

#mypage .request_detail #payment .table table td strong {
  font-weight: 700;
}

#mypage .request_detail #payment .table table td + td, #mypage .request_detail #payment .table table td[colspan] {
  text-align: right;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail #payment .table table td + td {
    border-left: 1px solid #cdcdcd;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail #payment .table table, #mypage .request_detail #payment .table tbody, #mypage .request_detail #payment .table tr, #mypage .request_detail #payment .table th, #mypage .request_detail #payment .table td {
    display: block;
  }
  #mypage .request_detail #payment .table tr {
    position: relative;
    padding-left: 88px;
  }
  #mypage .request_detail #payment .table th {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
  #mypage .request_detail #payment .table th .cellInner {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #mypage .request_detail #payment .table th .cellInner.pc {
    display: none;
  }
  #mypage .request_detail #payment .table td + td {
    border-top: 1px solid #cdcdcd;
  }
}

#mypage .request_detail .table.disable table {
  background-color: rgba(0, 0, 0, 0.22);
  border: 1px solid #a0a0a0;
}

#mypage .request_detail #applicant2 .table .cancel,
#mypage .request_detail #companion .table .cancel {
  margin-top: 10px;
  font-size: 1.2rem;
  line-height: 2rem;
  text-align: right;
  color: #999;
}

#mypage .request_detail .table .cancel a {
  text-decoration: underline;
}

#mypage .request_detail #applicant2 .table.beforecancel,
#mypage .request_detail #companion .table.beforecancel,
#mypage .request_detail #applicant2 .table.beforecancel .button,
#mypage .request_detail #companion .table.beforecancel .button {
  text-align: center;
}

#mypage .request_detail .table.beforecancel .notice {
  font-size: 16px;
  color: #cf2929;
  font-weight: bold;
}

#mypage .request_detail .button a,
#mypage .request_detail .button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .request_detail .button a:after,
#mypage .request_detail .button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypage .request_detail .table.disable td .cellInner {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-box-align: start;
  -moz-box-align: start;
  -o-box-align: start;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-align: start;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  /* position: relative; */
}

#mypage .request_detail .table td .side .status {
  display: inline-block;
  border: 1px solid;
  border-radius: 4px;
  font-weight: 700;
  text-align: center;
}

#mypage .request_detail .table.st02 td .status {
  border-color: #757575;
  background-color: #757575;
  color: #fff;
}

#mypage .request_detail .table.st03 td .status {
  border-color: #fff;
  background-color: #fff;
  color: #000;
}

#mypage .request_detail #applicant2 td .side,
#mypage .request_detail #companion td .side {
  text-align: right;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail .table.disable td .cellInner {
    padding: 30px 20px 30px 36px;
  }
  #mypage .request_detail .table.beforecancel td .cellInner {
    padding: 28px 20px 28px 36px;
  }
  #mypage .request_detail .table.disable td .cellInner .detail {
    padding-top: 5px;
  }
  #mypage .request_detail .table.beforecancel .notice {
    font-size: 1.6rem;
    padding: 12px 0;
  }
  #mypage .request_detail .button a,
  #mypage .request_detail .button button {
    display: inline-block;
    width: 350px;
    padding: 16px 0;
    font-size: 2rem;
    margin-top: 10px;
  }
  #mypage .request_detail .button a:after,
  #mypage .request_detail .button button:after {
    right: 16px;
    width: 12px;
    height: 12px;
  }
  #mypage .request_detail .table td .detail {
    padding-top: 5px;
    max-width: 80%;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 1.4rem;
  }
  #mypage .request_detail .table td .side .status {
    width: 130px;
    line-height: 3.4rem;
  }
  #mypage .request_detail .table td .side p {
    margin-top: 10px;
    font-size: 1.4rem;
  }
  #mypage .request_detail #applicant2 td .side,
  #mypage .request_detail #companion td .side {
    float: right;
    margin-left: -100px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .table.disable td .cellInner {
    display: block;
    padding: 15px 20px 18px;
  }
  #mypage .request_detail .table.beforecancel td .cellInner {
    display: block;
    padding: 15px 20px 20px;
  }
  #mypage .request_detail .table.beforecancel .notice {
    font-size: 1.6rem;
    padding: 1em 0;
  }
  #mypage .request_detail .button a,
  #mypage .request_detail .button button {
    display: block;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .request_detail .button a:after,
  #mypage .request_detail .button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
  #mypage .request_detail .table td .side .status {
    width: 115px;
    line-height: 3rem;
  }
  #mypage .request_detail .table.disable td .detail {
    /* font-size: 1.2rem; */
    margin-bottom: 10px;
  }
  #mypage .request_detail .table td .side p {
    font-size: 1.2rem;
  }
}

#mypage .creditcard.authentication #guide p {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.authentication #guide {
    margin-bottom: 30px;
  }
  #mypage .creditcard.authentication #guide p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.authentication #guide {
    margin-bottom: 20px;
  }
}

#mypage .creditcard.authentication #form .inputBlock {
  border: 1px solid #d2d2d2;
}

#mypage .creditcard.authentication #form .inputContainer .label {
  font-weight: 700;
}

#mypage .creditcard.authentication #form .inputContainer .label span {
  display: inline-block;
}

#mypage .creditcard.authentication #form .inputContainer input {
  display: block;
  width: 100%;
  height: 3.6rem;
  padding: 0 10px;
  border: 1px solid;
  border-radius: 4px;
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.authentication #form {
    margin-bottom: 70px;
    font-size: 1.6rem;
  }
  #mypage .creditcard.authentication #form .inputBlock {
    padding: 26px 30px;
  }
  #mypage .creditcard.authentication #form .inputContainer label {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage .creditcard.authentication #form .inputContainer label .label {
    line-height: 3.6rem;
  }
  #mypage .creditcard.authentication #form .inputContainer label .label span + span {
    margin-left: 0.5em;
  }
  #mypage .creditcard.authentication #form .inputContainer label > * {
    width: 50%;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.authentication #form .inputBlock {
    margin-bottom: 40px;
    padding: 15px;
    text-align: center;
  }
  #mypage .creditcard.authentication #form .inputBlock .label {
    margin-bottom: 10px;
    font-weight: 700;
    line-height: 1.5;
  }
  #mypage .creditcard.authentication #form .inputBlock .label span {
    margin: 0 0.25em;
  }
}

#mypage .creditcard.authentication #button {
  text-align: center;
}

#mypage .creditcard.authentication #button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .creditcard.authentication #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.authentication #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .creditcard.authentication #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .creditcard.authentication #button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.authentication #button button {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .creditcard.authentication #button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#mypage .creditcard.input .content p {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.input .content p {
    font-size: 1.6rem;
  }
}

#mypage .creditcard.input #register .button {
  text-align: center;
}

#mypage .creditcard.input #register .button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.2em;
  letter-spacing: 0.2em;
}

#mypage .creditcard.input #register .button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.input #register {
    margin-bottom: 100px;
  }
  #mypage .creditcard.input #register .button {
    padding-top: 30px;
  }
  #mypage .creditcard.input #register .button button {
    display: inline-block;
    width: 360px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .creditcard.input #register .button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .creditcard.input #register .button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.input #register {
    margin-bottom: 70px;
  }
  #mypage .creditcard.input #register .button {
    padding-top: 20px;
  }
  #mypage .creditcard.input #register .button button {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .creditcard.input #register .button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 374px) {
  #mypage .creditcard.input #register .button button {
    font-size: 1.6rem;
  }
}

#mypage .creditcard.input #payment .table {
  position: relative;
  line-height: 2.4rem;
}

#mypage .creditcard.input #payment .table td {
  font-weight: 700;
}

#mypage .creditcard.input #payment .delete {
  padding-top: 12px;
  text-align: right;
}

#mypage .creditcard.input #payment .delete a {
  color: #939393;
  font-weight: 700;
  text-decoration: underline;
  line-height: 2;
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.input #payment {
    margin-bottom: 70px;
  }
  #mypage .creditcard.input #payment .table {
    padding-top: 30px;
  }
  #mypage .creditcard.input #payment .table th {
    width: 130px;
  }
  #mypage .creditcard.input #payment .table td {
    font-size: 1.6rem;
  }
  #mypage .creditcard.input #payment .table td .cellInner {
    padding: 18px 20px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.input #payment {
    margin-bottom: 55px;
  }
  #mypage .creditcard.input #payment .table {
    padding-top: 20px;
  }
  #mypage .creditcard.input #payment .table th {
    padding: 15px 0;
  }
  #mypage .creditcard.input #payment .table td .cellInner {
    padding: 15px 20px;
  }
}

#mypage .creditcard.input #note {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #mypage .creditcard.input #note {
    line-height: 2.2rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .creditcard.input #note {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

#mypage .passcode #lead {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode #lead {
    margin-bottom: 20px;
  }
  #mypage .passcode #lead p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode #lead {
    margin-bottom: 1.5rem;
  }
}

#mypage .passcode .guides a {
  color: #2854ae;
}

#mypage .passcode .guides ul li, #mypage .passcode .guides ol li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#mypage .passcode .guides strong {
  color: #cf2929;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode .guides {
    line-height: 2.2rem;
  }
  #mypage .passcode .guides .marginTop {
    margin-top: 2.2rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode .guides {
    font-size: 1.2rem;
    line-height: 2rem;
  }
  #mypage .passcode .guides .marginTop {
    margin-top: 2rem;
  }
}

#mypage .passcode.show #input .facePhoto td .cellInner {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-box-align: end;
  -moz-box-align: end;
  -o-box-align: end;
  -ms-flex-align: end;
}

#mypage .passcode.show #input .facePhoto td .photo img {
  width: 100%;
}

#mypage .passcode.show #input .facePhoto td .change button {
  border: 1px solid;
  border-radius: 4px;
  background-color: #fff;
  font-weight: 700;
  text-align: center;
}

#mypage .passcode.show #input .status td span {
  font-weight: bold;
}

#mypage .passcode.show #input .status td .ng {
  color: #cf2929;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.show #input {
    margin-bottom: 22px;
  }
  #mypage .passcode.show #input th {
    width: 130px;
    padding: 22px 0;
  }
  #mypage .passcode.show #input td {
    font-size: 1.6rem;
  }
  #mypage .passcode.show #input td .cellInner {
    padding: 22px;
  }
  #mypage .passcode.show #input .facePhoto td .photo {
    width: 153px;
    margin-right: 20px;
  }
  #mypage .passcode.show #input .facePhoto td .change button {
    width: 120px;
    line-height: 3.4rem;
  }
  #mypage .passcode.show #input .facePhoto td .change button:hover {
    opacity: 0.66;
    content: "";
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .passcode.show #input .status td {
    font-weight: 700;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.show #input {
    margin-bottom: 20px;
  }
  #mypage .passcode.show #input th {
    padding: 20px 0;
  }
  #mypage .passcode.show #input td .cellInner {
    padding: 20px;
  }
  #mypage .passcode.show #input .facePhoto td .cellInner {
    padding-right: 14px;
  }
  #mypage .passcode.show #input .facePhoto td .photo {
    width: calc(100% - 114px);
    margin-right: 14px;
  }
  #mypage .passcode.show #input .facePhoto td .change button {
    width: 100px;
    line-height: 3rem;
  }
}

@media screen and (max-width: 374px) {
  #mypage .passcode.show #input .facePhoto td .cellInner {
    display: block;
  }
  #mypage .passcode.show #input .facePhoto td .cellInner .photo {
    min-width: 106px;
    margin: 0 0 14px;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.entry #guide {
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.entry #guide {
    margin-bottom: 30px;
  }
}

#mypage .passcode.entry #input h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 2;
}

#mypage .passcode.entry #input .fileUp {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
}

#mypage .passcode.entry #input .fileUp .button input[type="file"] {
  display: none;
}

#mypage .passcode.entry #input .fileUp .button label {
  display: block;
  border: 1px solid;
  border-radius: 4px;
  background-color: #fff;
  font-weight: 700;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.entry #input {
    margin-bottom: 60px;
  }
  #mypage .passcode.entry #input h2 {
    margin-bottom: 15px;
  }
  #mypage .passcode.entry #input .fileUp .button {
    margin-right: 20px;
  }
  #mypage .passcode.entry #input .fileUp .button label {
    width: 160px;
    line-height: 3.4rem;
  }
  #mypage .passcode.entry #input .fileUp .button label:hover {
    opacity: 0.66;
    content: "";
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .passcode.entry #input .fileUp .status {
    line-height: 3.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.entry #input {
    margin-bottom: 45px;
  }
  #mypage .passcode.entry #input h2 {
    margin-bottom: 10px;
  }
  #mypage .passcode.entry #input .fileUp .button {
    margin-right: 15px;
  }
  #mypage .passcode.entry #input .fileUp .button label {
    width: 137px;
    line-height: 3rem;
  }
  #mypage .passcode.entry #input .fileUp .status {
    font-size: 1.2rem;
    line-height: 3.2rem;
  }
}

#mypage .passcode.entry #button {
  text-align: center;
}

#mypage .passcode.entry #button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .passcode.entry #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.entry #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .passcode.entry #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .passcode.entry #button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.entry #button button {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .passcode.entry #button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#mypage .passcode.trimming #trimming p {
  padding-left: 1.05em;
  color: #cf2929;
  text-indent: -1.05em;
}

#mypage .passcode.trimming #trimming .canvasContainer {
  position: relative;
  border: 1px solid #cdcdcd;
}

#mypage .passcode.trimming #trimming .canvasContainer:before {
  display: block;
  padding-top: 100%;
  content: "";
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.trimming #trimming {
    margin-bottom: 64px;
  }
  #mypage .passcode.trimming #trimming p {
    margin-bottom: 15px;
    line-height: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.trimming #trimming {
    margin-bottom: 30px;
  }
  #mypage .passcode.trimming #trimming p {
    margin-bottom: 10px;
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

#mypage .passcode.trimming #guide h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 3rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.trimming #guide {
    margin-bottom: 64px;
  }
  #mypage .passcode.trimming #guide h2 {
    margin-bottom: 20px;
  }
  #mypage .passcode.trimming #guide .trimmingGuide {
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.trimming #guide {
    margin-bottom: 50px;
  }
  #mypage .passcode.trimming #guide h2 {
    margin-bottom: 15px;
  }
  #mypage .passcode.trimming #guide .guideInner {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
  }
  #mypage .passcode.trimming #guide .trimmingGuide {
    width: calc(332 / 690 * 100%);
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #mypage .passcode.trimming #guide .trimmingGuide img {
    width: 100%;
  }
  #mypage .passcode.trimming #guide .guides {
    padding-left: 20px;
  }
}

#mypage .passcode.trimming #button {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#mypage .passcode.trimming #button a, #mypage .passcode.trimming #button button {
  display: block;
  position: relative;
  border-radius: 4px;
  font-weight: 700;
  text-align: center;
}

#mypage .passcode.trimming #button a:after, #mypage .passcode.trimming #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypage .passcode.trimming #button a.return, #mypage .passcode.trimming #button button.return {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#mypage .passcode.trimming #button a.return:before, #mypage .passcode.trimming #button button.return:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#mypage .passcode.trimming #button a.return:after, #mypage .passcode.trimming #button button.return:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#mypage .passcode.trimming #button a.next, #mypage .passcode.trimming #button button.next {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#mypage .passcode.trimming #button a.next:after, #mypage .passcode.trimming #button button.next:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.trimming #button a, #mypage .passcode.trimming #button button {
    width: calc(50% - 10px);
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .passcode.trimming #button a + a, #mypage .passcode.trimming #button button + a, #mypage .passcode.trimming #button a + button, #mypage .passcode.trimming #button button + button {
    margin-left: 20px;
  }
  #mypage .passcode.trimming #button a:hover, #mypage .passcode.trimming #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .passcode.trimming #button a:after, #mypage .passcode.trimming #button button:after {
    width: 10px;
    height: 10px;
  }
  #mypage .passcode.trimming #button a.return:after, #mypage .passcode.trimming #button button.return:after {
    left: 16px;
  }
  #mypage .passcode.trimming #button a.next:after, #mypage .passcode.trimming #button button.next:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.trimming #button a, #mypage .passcode.trimming #button button {
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .passcode.trimming #button a:after, #mypage .passcode.trimming #button button:after {
    width: 10px;
    height: 10px;
  }
  #mypage .passcode.trimming #button a.return, #mypage .passcode.trimming #button button.return {
    padding-left: 5px;
  }
  #mypage .passcode.trimming #button a.return:after, #mypage .passcode.trimming #button button.return:after {
    left: 20px;
  }
  #mypage .passcode.trimming #button a.next, #mypage .passcode.trimming #button button.next {
    padding-right: 5px;
  }
  #mypage .passcode.trimming #button a.next:after, #mypage .passcode.trimming #button button.next:after {
    right: 20px;
  }
}

@media screen and (max-width: 374px) {
  #mypage .passcode.trimming #button a.return, #mypage .passcode.trimming #button button.return {
    padding-left: 10px;
  }
  #mypage .passcode.trimming #button a.return:after, #mypage .passcode.trimming #button button.return:after {
    left: 12px;
  }
  #mypage .passcode.trimming #button a.next, #mypage .passcode.trimming #button button.next {
    padding-right: 10px;
  }
  #mypage .passcode.trimming #button a.next:after, #mypage .passcode.trimming #button button.next:after {
    right: 12px;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.confirm #guide01 {
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.confirm #guide01 {
    margin-bottom: 20px;
  }
}

#mypage .passcode.confirm #confirm .trimmedPhotoConfirm {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  border: 1px solid #cdcdcd;
  text-align: center;
}

#mypage .passcode.confirm #confirm .trimmedPhotoConfirm .photo {
  margin-bottom: 10px;
}

#mypage .passcode.confirm #confirm .trimmedPhotoConfirm .photo img {
  width: 100%;
}

#mypage .passcode.confirm #confirm .checkList li {
  line-height: 2.4rem;
}

#mypage .passcode.confirm #confirm .checkList li input {
  display: none;
}

#mypage .passcode.confirm #confirm .checkList li .label {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
}

#mypage .passcode.confirm #confirm .checkList li .label .num {
  width: 2em;
  padding-right: 0.5em;
  text-align: right;
  white-space: nowrap;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

#mypage .passcode.confirm #confirm .checkList li .label p {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -ms-box-flex: 1;
  -o-box-flex: 1;
  box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

@media print, screen and (min-width: 960px) and (orientation: landscape) {
  #mypage .passcode.confirm #confirm {
    margin-bottom: 64px;
  }
  #mypage .passcode.confirm #confirm .trimmedPhotoConfirm {
    margin-bottom: 45px;
    padding: 24px 95px 20px;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage .passcode.confirm #confirm .trimmedPhotoConfirm > div {
    width: 152px;
  }
  #mypage .passcode.confirm #confirm .trimmedPhotoConfirm p {
    font-size: 1.6rem;
  }
  #mypage .passcode.confirm #confirm .checkList input:checked + .checkbox:after {
    opacity: 1;
    -ms-filter: none;
    -webkit-filter: none;
    filter: none;
  }
  #mypage .passcode.confirm #confirm .checkList label {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
  }
  #mypage .passcode.confirm #confirm .checkList .label {
    margin-right: 45px;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox {
    display: inline-block;
    position: relative;
    width: 60px;
    padding: 3px 0 3px 25px;
    line-height: 1.8rem;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:before, #mypage .passcode.confirm #confirm .checkList .checkbox:after {
    display: block;
    position: absolute;
    content: "";
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:before {
    top: 3px;
    left: 0;
    width: 1.8rem;
    height: 1.8rem;
    border: 2px solid #cdcdcd;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:after {
    top: 8px;
    left: 4px;
    width: 1rem;
    height: 0.5rem;
    border-bottom: 2px solid;
    border-left: 2px solid;
    opacity: 0;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
  }
}

@media screen and (max-width: 959px), (orientation: portrait) {
  #mypage .passcode.confirm #confirm {
    margin-bottom: 45px;
  }
  #mypage .passcode.confirm #confirm .trimmedPhotoConfirm {
    margin-bottom: 40px;
    padding: 20px 0 20px;
    -webkit-box-pack: distribute;
    -moz-box-pack: distribute;
    -o-box-pack: distribute;
    -ms-flex-pack: distribute;
    -webkit-justify-content: space-around;
    justify-content: space-around;
  }
  #mypage .passcode.confirm #confirm .trimmedPhotoConfirm > div {
    width: 108px;
  }
  #mypage .passcode.confirm #confirm .checkList {
    margin: 0 -15px;
  }
  #mypage .passcode.confirm #confirm .checkList li {
    padding: 12px 15px;
    border-top: 1px solid #cdcdcd;
    border-bottom: 1px solid #cdcdcd;
  }
  #mypage .passcode.confirm #confirm .checkList li + li {
    margin-top: -1px;
  }
  #mypage .passcode.confirm #confirm .checkList label {
    display: block;
    position: relative;
    padding-right: 80px;
  }
  #mypage .passcode.confirm #confirm .checkList .label {
    font-size: 1.3rem;
  }
  #mypage .passcode.confirm #confirm .checkList input:checked + .checkbox {
    color: #44448b;
  }
  #mypage .passcode.confirm #confirm .checkList input:checked + .checkbox:before {
    background-color: #44448b;
  }
  #mypage .passcode.confirm #confirm .checkList input:checked + .checkbox:after {
    right: 0;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 52px;
    height: 32px;
    margin: auto 0;
    border-radius: 15px;
    color: #cdcdcd;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:before, #mypage .passcode.confirm #confirm .checkList .checkbox:after {
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    border: 1px solid;
    border-radius: 15px;
    content: "";
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:before {
    left: 0;
    width: 100%;
    background-color: #f3f3f3;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    -ms-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  #mypage .passcode.confirm #confirm .checkList .checkbox:after {
    right: 20px;
    width: 32px;
    background-color: #fff;
    -webkit-transition: right 0.3s;
    -moz-transition: right 0.3s;
    -ms-transition: right 0.3s;
    -o-transition: right 0.3s;
    transition: right 0.3s;
  }
}

#mypage .passcode.confirm #guide02 > p {
  margin-bottom: 2rem;
  font-weight: 700;
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.confirm #guide02 {
    margin-bottom: 64px;
  }
  #mypage .passcode.confirm #guide02 > p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.confirm #guide02 {
    margin-bottom: 32px;
  }
}

#mypage .passcode.confirm #button {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#mypage .passcode.confirm #button a, #mypage .passcode.confirm #button button {
  display: block;
  position: relative;
  border-radius: 4px;
  font-weight: 700;
  text-align: center;
}

#mypage .passcode.confirm #button a:after, #mypage .passcode.confirm #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypage .passcode.confirm #button a.return, #mypage .passcode.confirm #button button.return {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#mypage .passcode.confirm #button a.return:before, #mypage .passcode.confirm #button button.return:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#mypage .passcode.confirm #button a.return:after, #mypage .passcode.confirm #button button.return:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#mypage .passcode.confirm #button a.next, #mypage .passcode.confirm #button button.next {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#mypage .passcode.confirm #button a.next:after, #mypage .passcode.confirm #button button.next:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #mypage .passcode.confirm #button a, #mypage .passcode.confirm #button button {
    width: calc(50% - 10px);
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .passcode.confirm #button a + a, #mypage .passcode.confirm #button button + a, #mypage .passcode.confirm #button a + button, #mypage .passcode.confirm #button button + button {
    margin-left: 20px;
  }
  #mypage .passcode.confirm #button a:hover, #mypage .passcode.confirm #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .passcode.confirm #button a:after, #mypage .passcode.confirm #button button:after {
    width: 10px;
    height: 10px;
  }
  #mypage .passcode.confirm #button a.return:after, #mypage .passcode.confirm #button button.return:after {
    left: 16px;
  }
  #mypage .passcode.confirm #button a.next:after, #mypage .passcode.confirm #button button.next:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .passcode.confirm #button a, #mypage .passcode.confirm #button button {
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .passcode.confirm #button a:after, #mypage .passcode.confirm #button button:after {
    width: 10px;
    height: 10px;
  }
  #mypage .passcode.confirm #button a.return, #mypage .passcode.confirm #button button.return {
    padding-left: 5px;
  }
  #mypage .passcode.confirm #button a.return:after, #mypage .passcode.confirm #button button.return:after {
    left: 20px;
  }
  #mypage .passcode.confirm #button a.next, #mypage .passcode.confirm #button button.next {
    padding-right: 5px;
  }
  #mypage .passcode.confirm #button a.next:after, #mypage .passcode.confirm #button button.next:after {
    right: 20px;
  }
}

@media screen and (max-width: 374px) {
  #mypage .passcode.confirm #button a.return, #mypage .passcode.confirm #button button.return {
    padding-left: 10px;
  }
  #mypage .passcode.confirm #button a.return:after, #mypage .passcode.confirm #button button.return:after {
    left: 12px;
  }
  #mypage .passcode.confirm #button a.next, #mypage .passcode.confirm #button button.next {
    padding-right: 10px;
  }
  #mypage .passcode.confirm #button a.next:after, #mypage .passcode.confirm #button button.next:after {
    right: 12px;
  }
}

#mypage .customer_info .table {
  position: relative;
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .customer_info .table th {
    width: 130px;
  }
  #mypage .customer_info .table td {
    font-size: 1.6rem;
  }
  #mypage .customer_info .table td .cellInner {
    padding: 30px 20px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .customer_info .table th {
    padding: 15px 0;
  }
  #mypage .customer_info .table .XShrink {
    margin: 0 -1em;
    -webkit-transform: scaleX(0.8);
    -moz-transform: scaleX(0.8);
    -ms-transform: scaleX(0.8);
    -o-transform: scaleX(0.8);
    transform: scaleX(0.8);
  }
  #mypage .customer_info .table td .cellInner {
    padding: 15px 20px;
  }
}

#mypage .email_update #guide p {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #mypage .email_update #guide p {
    font-size: 1.6rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .email_update.input #guide {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .email_update.input #guide {
    margin-bottom: 20px;
  }
}

#mypage .email_update.input #form .inputBlock {
  border: 1px solid #d2d2d2;
}

#mypage .email_update.input #form .inputContainer input {
  display: block;
  width: 100%;
  height: 3.6rem;
  padding: 0 10px;
  border: 1px solid;
  border-radius: 4px;
}

@media print, screen and (min-width: 960px) {
  #mypage .email_update.input #form {
    margin-bottom: 70px;
    font-size: 1.6rem;
  }
  #mypage .email_update.input #form .inputBlock {
    padding: 26px 30px;
  }
  #mypage .email_update.input #form .inputBlock .label {
    width: 195px;
    line-height: 3.6rem;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #mypage .email_update.input #form .current {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    margin-bottom: 15px;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage .email_update.input #form .current .email {
    line-height: 3.6rem;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  #mypage .email_update.input #form .inputContainer label {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mypage .email_update.input #form .inputContainer .label {
    font-weight: 700;
  }
  #mypage .email_update.input #form .inputContainer input {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}

@media screen and (max-width: 959px) {
  #mypage .email_update.input #form .inputBlock {
    margin-bottom: 40px;
    padding: 15px;
    text-align: center;
  }
  #mypage .email_update.input #form .inputBlock .label {
    margin-bottom: 10px;
    font-weight: 700;
    line-height: 1.5;
  }
  #mypage .email_update.input #form .current {
    margin-bottom: 30px;
  }
}

#mypage .email_update.input #button {
  text-align: center;
}

#mypage .email_update.input #button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .email_update.input #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .email_update.input #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .email_update.input #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #mypage .email_update.input #button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .email_update.input #button button {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .email_update.input #button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#mypage .email_update.send #guide .messageBlock {
  border: 1px solid #d2d2d2;
  text-align: center;
}

#mypage .email_update.send #guide .messageBlock .address span {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mypage .email_update.send #guide .messageBlock {
    margin-bottom: 45px;
    padding: 26px 0;
  }
  #mypage .email_update.send #guide .messageBlock .address {
    display  : inline-block;
    font-size: 1.4rem;
    padding  : 10px 10px 0px;
  }
  #mypage .email_update.send #guide .messageBlock .address span {
    margin: 0 0.5em;
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #mypage .email_update.send #guide .messageBlock {
    margin-bottom: 15px;
    padding: 24px 0;
  }
  #mypage .email_update.send #guide .messageBlock .address span {
    display: block;
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
}

#mypage .deregister #guide p {
  line-height: 2.4rem;
}

#mypage .deregister #guide .button {
  padding-top: 24px;
}

#mypage .deregister #guide .button #modalOpen {
  border-radius: 4px;
  background-color: #969696;
  color: #fff;
  font-weight: 700;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #mypage .deregister #guide {
    font-size: 1.6rem;
  }
  #mypage .deregister #guide .button #modalOpen {
    width: 135px;
    line-height: 3.6rem;
  }
  #mypage .deregister #guide .button #modalOpen:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
}

@media screen and (max-width: 959px) {
  #mypage .deregister #guide .button #modalOpen {
    width: 110px;
    line-height: 3rem;
  }
}

#mypage .deregister #modal {
  display: none;
  position: fixed;
  z-index: 20000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#mypage .deregister #modal .inner {
  height: 100%;
}

#mypage .deregister #modal .modalInner {
  border: 1px solid #cdcdcd;
  background-color: #fff;
  text-align: center;
}

#mypage .deregister #modal .modalInner p {
  color: #cf2929;
  font-weight: 700;
}

#mypage .deregister #modal .modalInner .button {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#mypage .deregister #modal .modalInner .button button {
  display: block;
  position: relative;
  border-radius: 4px;
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .deregister #modal .modalInner .button button.no {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#mypage .deregister #modal .modalInner .button button.yes {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#mypage .deregister #modal .modalInner .button button.yes:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

@media print, screen and (min-width: 960px) {
  #mypage .deregister #modal .modalInner {
    width: 530px;
    height: 150px;
    margin: calc(50vh - 75px) auto 0;
    padding: 25px 32px 0;
  }
  #mypage .deregister #modal .modalInner p {
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
  #mypage .deregister #modal .modalInner .button button {
    width: 216px;
    font-size: 2rem;
    line-height: 60px;
  }
  #mypage .deregister #modal .modalInner .button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
}

@media screen and (max-width: 959px) {
  #mypage .deregister #modal .modalInner {
    width: calc(100% - 25px);
    height: 120px;
    margin: calc(50vh - 60px) auto 0;
    padding: 18px 18px 0;
  }
  #mypage .deregister #modal .modalInner p {
    margin-bottom: 12px;
  }
  #mypage .deregister #modal .modalInner .button button {
    width: calc(50% - 8px);
    font-size: 1.8rem;
    line-height: 50px;
  }
}

#mypage .mail_deposit .note {
  color: #cf2929;
}

#mypage .mail_deposit .note2 {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#mypage .mail_deposit .table .accountHolder td input {
  border: 1px solid;
  border-radius: 4px;
}

#mypage .mail_deposit .button {
  text-align: center;
}

#mypage .mail_deposit .button a,
#mypage .mail_deposit .button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#mypage .mail_deposit .button a:after,
#mypage .mail_deposit .button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypage .mail_deposit .button a.white, #mypage .mail_deposit .button button.white {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#mypage .mail_deposit .button a.white:before,
#mypage .mail_deposit .button button.white:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#mypage .mail_deposit .button a.white:after,
#mypage .mail_deposit .button button.white:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#mypage .mail_deposit .button a.navy,
#mypage .mail_deposit .button button.navy {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#mypage .mail_deposit .button a.navy:after,
#mypage .mail_deposit .button button.navy:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

#mypage .mail_deposit .guide2 {
  color: #cf2929;
  font-weight: 700;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #mypage .mail_deposit .note {
    line-height: 1.7;
    padding: 0 0 .5em;
  }
  #mypage .mail_deposit .guide {
    line-height: 1.4;
    padding: 0 0 1em;
  }
  #mypage .mail_deposit .note2 {
    line-height: 1.6;
    padding: 2em 0 3em 1.05em;
  }
  #mypage .mail_deposit .table th {
    width: 260px;
    padding: 28px 0;
  }
  #mypage .mail_deposit .table td .cellInner {
    padding: 16px 20px;
  }
  #mypage .mail_deposit .table .accountHolder td input {
    width: 330px;
    height: 3.6rem;
    padding: 0 10px;
  }
  #mypage .mail_deposit .button {
    margin-bottom: 60px;
  }
  #mypage .mail_deposit .button.input a {
    display: inline-block;
    width: 550px;
    padding: 16px 0;
    font-size: 2rem;
    margin-top: 10px;
    letter-spacing: .15em;
  }
  #mypage .mail_deposit .button a:after,
  #mypage .mail_deposit .button button:after {
    right: 16px;
    width: 12px;
    height: 12px;
  }
  #mypage .mail_deposit .button a.white:after,
  #mypage .mail_deposit .button button.white:after {
    left: 16px;
  }
  #mypage .mail_deposit .button a,
  #mypage .mail_deposit .button button {
    display: inline-block;
    width: 320px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #mypage .mail_deposit .button a + a,
  #mypage .mail_deposit .button .button + .button {
    margin-left: 20px;
  }
  #mypage .mail_deposit .guide2 {
    font-size: 1.6rem;
    line-height: 2;
    margin-bottom: 45px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .mail_deposit .head {
    line-height: 1.4;
    padding: .3em 0;
  }
  #mypage .mail_deposit .note {
    line-height: 1.7;
    padding: 0 0 1em;
  }
  #mypage .mail_deposit .guide {
    line-height: 1.4;
    padding: 1em 0;
  }
  #mypage .mail_deposit .note2 {
    line-height: 1.6;
    padding: 1em 0 3em 1.05em;
  }
  #mypage .mail_deposit .table th {
    width: 88px;
    padding: 15px 0;
    line-height: 1.8rem;
  }
  #mypage .mail_deposit .table td .cellInner {
    padding: 15px 20px;
  }
  #mypage .mail_deposit .table .accountHolder td input {
    width: 100%;
    height: 3rem;
    padding: 0 10px;
  }
  #mypage .mail_deposit .button {
    margin-bottom: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #mypage .mail_deposit .button.input a {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
    letter-spacing: .15em;
    line-height: 1.4;
  }
  #mypage .mail_deposit .button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
  #mypage .mail_deposit .button button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .mail_deposit .button a,
  #mypage .mail_deposit .button button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #mypage .mail_deposit .button a:after,
  #mypage .mail_deposit .button button:after {
    width: 10px;
    height: 10px;
  }
  #mypage .mail_deposit .button a.white, #mypage .mail_deposit .button button.white {
    padding-left: 5px;
  }
  #mypage .mail_deposit .button a.white:after,
  #mypage .mail_deposit .button button.white:after {
    left: 20px;
  }
  #mypage .mail_deposit .button a.navy,
  #mypage .mail_deposit .button button.navy {
    padding-right: 5px;
  }
  #mypage .mail_deposit .button a.navy:after,
  #mypage .mail_deposit .button button.navy:after {
    right: 20px;
  }
  #mypage .mail_deposit .button a + a {
    margin-left: 16px;
  }
  #mypage .mail_deposit .guide2 {
    line-height: 2rem;
    margin-bottom: 10px;
  }
}

#mypage #requestList .table .orderNumber td .cancel a, #mypage .request_detail .table .orderNumber td .cancel a {
  color: #2854ae;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail.cancel #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
}

#mypage .request_detail.cancel #button button {
  position: relative;
  border-radius: 4px;
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
  font-weight: 700;
  text-indent: 0.2em;
  letter-spacing: 0.2em;
}

#mypage .request_detail.cancel #button button:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#mypage .request_detail.cancel #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #0e0e12;
  border-right: 2px solid #0e0e12;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypage #requestList .choice.disable:after, #mypage #content .choice.disable:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.22);
  content: "";
}

#mypage #requestList .choice.disable td .cellInner:after, #mypage #content .choice.disable td .cellInner:after {
  background-color: transparent;
}

#mypage #requestList .choice:not(.disable) .invalid td .cellInner, #mypage #requestList .choice:not(.disable) .expired td .cellInner, #mypage #requestList .choice:not(.disable) .cancel td .cellInner, #mypage #requestList .choice:not(.disable) .defeat td .cellInner, #mypage #content .choice:not(.disable) .invalid td .cellInner, #mypage #content .choice:not(.disable) .expired td .cellInner, #mypage #content .choice:not(.disable) .cancel td .cellInner, #mypage #content .choice:not(.disable) .defeat td .cellInner {
  position: relative;
}

#mypage #requestList .choice:not(.disable) .invalid td .cellInner:after, #mypage #requestList .choice:not(.disable) .expired td .cellInner:after, #mypage #requestList .choice:not(.disable) .cancel td .cellInner:after, #mypage #requestList .choice:not(.disable) .defeat td .cellInner:after, #mypage #content .choice:not(.disable) .invalid td .cellInner:after, #mypage #content .choice:not(.disable) .expired td .cellInner:after, #mypage #content .choice:not(.disable) .cancel td .cellInner:after, #mypage #content .choice:not(.disable) .defeat td .cellInner:after {
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.22);
  content: "";
  left: 0;
  width: 100%;
}

@media print, screen and (min-width: 960px) {
  #mypage #requestList .choice:not(.disable) .invalid td .cellInner:after, #mypage #requestList .choice:not(.disable) .expired td .cellInner:after, #mypage #requestList .choice:not(.disable) .cancel td .cellInner:after, #mypage #requestList .choice:not(.disable) .defeat td .cellInner:after, #mypage #content .choice:not(.disable) .invalid td .cellInner:after, #mypage #content .choice:not(.disable) .expired td .cellInner:after, #mypage #content .choice:not(.disable) .cancel td .cellInner:after, #mypage #content .choice:not(.disable) .defeat td .cellInner:after {
    left: -130px;
    width: calc(100% + 130px);
  }
}

@media screen and (max-width: 959px) {
  #mypage #requestList .choice:not(.disable) .invalid td .cellInner:after, #mypage #requestList .choice:not(.disable) .expired td .cellInner:after, #mypage #requestList .choice:not(.disable) .cancel td .cellInner:after, #mypage #requestList .choice:not(.disable) .defeat td .cellInner:after, #mypage #content .choice:not(.disable) .invalid td .cellInner:after, #mypage #content .choice:not(.disable) .expired td .cellInner:after, #mypage #content .choice:not(.disable) .cancel td .cellInner:after, #mypage #content .choice:not(.disable) .defeat td .cellInner:after {
    left: -88px;
    width: calc(100% + 88px);
  }
}

@media print, screen and (-ms-high-contrast: none) {
  #mypage #requestList .choice:not(.disable) .invalid td .cellInner .side, #mypage #requestList .choice:not(.disable) .expired td .cellInner .side, #mypage #requestList .choice:not(.disable) .cancel td .cellInner .side, #mypage #requestList .choice:not(.disable) .defeat td .cellInner .side, #mypage #content .choice:not(.disable) .invalid td .cellInner .side, #mypage #content .choice:not(.disable) .expired td .cellInner .side, #mypage #content .choice:not(.disable) .cancel td .cellInner .side, #mypage #content .choice:not(.disable) .defeat td .cellInner .side {
    position: absolute;
    right: 20px;
    bottom: 16px;
  }
}

#mypage .request_detail .table .store span {
  display: block;
}

#mypage .request_detail .table .store a {
  color: #2854ae;
  font-size: 1.2rem;
  text-decoration: underline;
}

#mypage .request_detail h2 + .button {
  margin-bottom: 30px;
}

#mypage .request_detail .button {
  text-align: center;
}

#mypage .request_detail .button button {
  position: relative;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
}

#mypage .request_detail .button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail .button button {
    display: inline-block;
  }
  #mypage .request_detail .button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .button button {
    display: block;
  }
  #mypage .request_detail .button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail .button button.btn-main {
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .button button.btn-main {
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
}

#mypage .request_detail .button button.btn-sub {
  line-height: 1.2;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail .button button.btn-sub {
    width: 350px;
    padding: 10px 32px;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .button button.btn-sub {
    width: 100%;
    padding: 8px 36px;
    font-size: 1.4rem;
  }
}

#mypage .request_detail .button button.type_notice {
  background-color: #cf2929;
}

#mypage .request_detail .button button.type_normal {
  background-color: #313145;
}

#mypage .cellInner .button {
  margin-top: 15px;
}

@media print, screen and (min-width: 960px) {
  #mypage .cellInner.box-inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #mypage .cellInner.box-inline .button {
    margin-top: 0;
  }
  #mypage .cellInner.box-inline button {
    width: auto;
    padding-left: 34px;
    padding-right: 34px;
  }
}

#mypage .table td + td {
  border-left: 1px solid #cdcdcd;
}

#mypage .table .utl-text_right {
  text-align: right;
}

#mypage .request_detail .beforecancel .button, #mypage .request_detail .beforecancel button, #mypage .request_detail .deposit .button, #mypage .request_detail .deposit button {
  padding: 14px 0;
  letter-spacing: 0.2em;
}

@media print, screen and (min-width: 960px) {
  #mypage .request_detail .beforecancel .button, #mypage .request_detail .beforecancel button, #mypage .request_detail .deposit .button, #mypage .request_detail .deposit button {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .request_detail .beforecancel .button, #mypage .request_detail .beforecancel button, #mypage .request_detail .deposit .button, #mypage .request_detail .deposit button {
    width: 100%;
    font-size: 1.6rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .mail_deposit #content .button button {
    width: auto;
    padding: 20px 32px;
  }
}

@media screen and (max-width: 959px) {
  #mypage .mail_deposit #content .button button {
    width: 100%;
  }
  #mypage .mail_deposit #content .button button:after {
    right: 20px;
  }
}

#mypage .mail_deposit form.button {
  display: inline;
}

@media screen and (max-width: 959px) {
  #mypage .mail_deposit form.button {
    display: inline-block;
    width: calc(50% - 8px);
  }
  #mypage .mail_deposit form.button + form.button {
    margin-left: 16px;
  }
  #mypage .mail_deposit form.button button {
    display: block;
    width: 100%;
  }
}

#mypage .table.deposit {
  text-align: center;
}

#mypage .table.deposit .button {
  margin: auto;
}

#mypage .fileUp .thumb {
  margin-right: 15px;
  text-align: center;
}

#mypage .fileUp .thumb img {
  max-width: 180px;
  max-height: 120px;
}

#mypage .fileUp .thumb + .inputBox {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#mypage .fileUp .thumb + .inputBox .filename {
  font-weight: 700;
}

#mypage .fileUp .thumb + .inputBox .button {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

#mypage .fileUp .inputBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#mypage .passcode.entry #input .fileUp .status.filename {
  margin-bottom: 15px;
  line-height: 1.3;
  word-break: break-all;
}

#mypage .canvasContainer {
  border: 0 solid #fff !important;
}

#mypage .canvasContainer:before {
  position: absolute;
  display: inline !important;
  padding-top: unset !important;
  width: 0;
  height: 0;
}

#mypage .canvasContainer {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

@media screen and (max-width: 959px) {
  #mypage .canvasContainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

#mypage .crop-ctrl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 959px) {
  #mypage .crop-area {
    width: 100%;
    max-height: 80vh;
    margin-bottom: 20px;
  }
  #mypage .crop-ctrl {
    width: 100%;
    margin-bottom: 20px;
  }
  #mypage .crop-preview {
    -ms-flex-item-align: center;
    align-self: center;
    width: 100%;
  }
  #mypage .crop-preview .thumb {
    position: relative;
    width: 33%;
    max-width: 200px;
    margin: auto;
  }
  #mypage .crop-preview .thumb:before {
    content: "";
    display: block;
    padding-top: 133.33%;
  }
  #mypage .crop-preview .thumb-image {
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .crop-area {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 10px;
  }
  #mypage .crop-ctrl {
    position: absolute;
    top: 0;
    right: 0;
    width: 120px;
  }
  #mypage .crop-preview {
    width: 120px;
  }
  #mypage .crop-preview .thumb {
    width: 120px;
    height: 160px;
  }
}

#mypage .crop-preview-title {
  text-align: center;
}

#mypage .crop-preview .thumb {
  border: 1px solid;
  overflow: hidden;
}

#mypage .jcrop-holder {
  margin: auto;
}

#mypage .crop-ctrl .button {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border: 1px solid;
  border-radius: 4px;
  background-color: #fff;
  font-size: 1.2rem;
  text-align: center;
  font-weight: normal;
}

#mypage .crop-ctrl .button + input[type="submit"] {
  opacity: 0;
  width: 0;
  height: 0;
}

#mypage .crop-ctrl .button:hover {
  opacity: 0.66;
}

#mypage .crop-ctrl .button:before {
  content: "\f0e2";
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.2;
}

@media screen and (max-width: 959px) {
  #mypage .crop-ctrl .button {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 3.4rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mypage .crop-ctrl .button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1;
  }
  #mypage .crop-ctrl .button .label {
    padding: 1px 0 4px 0.33em;
  }
}

#mypage .rotate-l {
  margin-right: 5px;
}

#mypage .rotate-r:before {
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

#mypage .deregister #guide p, #mypage .passcode #guide p {
  line-height: 2.4rem;
}

#mypage .deregister #guide .messageBlock, #mypage .passcode #guide .messageBlock {
  border: 1px solid #d2d2d2;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #mypage .deregister #guide, #mypage .passcode #guide {
    margin-bottom: 60px;
  }
  #mypage .deregister #guide p, #mypage .passcode #guide p {
    font-size: 1.6rem;
  }
  #mypage .deregister #guide .messageBlock, #mypage .passcode #guide .messageBlock {
    margin-bottom: 45px;
    padding: 26px 0;
  }
  #mypage .deregister #guide .link-text, #mypage .passcode #guide .link-text {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mypage .deregister #guide .messageBlock, #mypage .passcode #guide .messageBlock {
    margin-bottom: 15px;
    padding: 24px 0;
  }
}

#mypage .type-error .text {
  display: inline-block;
  margin: auto 0 24px 1em;
  text-align: left;
  text-indent: -1em;
  color: #cf2929;
}

#mypage .type-error .text:first-text {
  font-weight: bold;
}

#mypage .type-error .link-text {
  color: #2854ae;
}

#mypage .type-error .link-text:after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-left: 0.33em;
  border: 0 solid #2854ae;
  border-width: 1px 1px 0 0;
  -webkit-transform-origin: 55% 50%;
  -ms-transform-origin: 55% 50%;
  transform-origin: 55% 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mypageMenu a {
  display: block;
  position: relative;
  color: #313145;
}

#mypageMenu a.current {
  background-color: #313145;
  color: #fff;
  font-weight: 700;
}

@media screen and (min-width: 1024px) {
  #mypageMenu {
    overflow-y: scroll;
    position: fixed;
    z-index: 9998;
    top: 0;
    right: -40px;
    width: 300px;
    height: 100%;
    padding-top: 70px;
    background-color: #e9e9ea;
  }
  #mypageMenu nav {
    margin-bottom: 120px;
    border-top: 1px solid #fff;
  }
  #mypageMenu a {
    width: 260px;
    padding-left: 25px;
    font-size: 1.6rem;
    line-height: 60px;
  }
  #mypageMenu li {
    border-bottom: 1px solid #cdcdcd;
  }
}

@media screen and (max-width: 1023px) {
  #mypageMenu {
    text-align: center;
  }
  #mypageMenu nav {
    position: relative;
  }
  #mypageMenu nav:before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #cdcdcd;
    content: "";
  }
  #mypageMenu nav ul {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    border-top: 1px solid #cdcdcd;
    background-color: #e9e9ea;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #mypageMenu nav ul li {
    width: 50%;
    border-bottom: 1px solid #cdcdcd;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #mypageMenu nav ul li:nth-of-type(odd):last-of-type {
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #e9e9ea;
  }
  #mypageMenu nav ul a {
    position: relative;
    height: 5rem;
    text-indent: 0.05em;
    line-height: 1.8rem;
    letter-spacing: 0.05em;
  }
  #mypageMenu nav ul a span {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 1023px) and (min-width: 960px) {
  #mypageMenu nav {
    margin       : 0 auto;
    max-width    : 1024px;
    padding-right: 32px;
    padding-left : 32px;
  }
  #mypageMenu nav ul {
    border-right: 1px solid #cdcdcd;
    border-left: 1px solid #cdcdcd;
  }
}

#order {
  /*==========
共通
==========*/
  /*==========
form
==========*/
  /*==========
受付[一覧]（チケット一覧ページ）
==========*/
  /*==========
受付[詳細]
==========*/
  /*==========
チケット受付（１公演のみ）
==========*/
  /*==========
公演詳細
==========*/
  /*==========
申込[確認]
==========*/
  /*==========
申込[クレジットカード登録],申込[クレジットカード選択]
==========*/
  /*==========
申込[完了]
==========*/
  /*==========
申込[隣席者入力]
==========*/
}

#order .ticket_list h1,
#order .subscription h1,
#order .performance_detail h1,
#order .confirm h1,
#order .identification h1 {
  margin-bottom: 20px;
  font-weight: 700;
  line-height: 5rem;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #order .ticket_list h1,
  #order .subscription h1,
  #order .performance_detail h1,
  #order .confirm h1,
  #order .identification h1 {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #order .ticket_list h1,
  #order .subscription h1,
  #order .performance_detail h1,
  #order .confirm h1,
  #order .identification h1 {
    font-size: 2.5rem;
  }
}

#order .ticket_list h2,
#order .subscription h2,
#order .performance_detail h2,
#order .confirm h2,
#order .identification h2 {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #order .ticket_list h2,
  #order .subscription h2,
  #order .performance_detail h2,
  #order .confirm h2,
  #order .identification h2 {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .ticket_list h2,
  #order .subscription h2,
  #order .performance_detail h2,
  #order .confirm h2,
  #order .identification h2 {
    padding-bottom: 10px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .formContainer {
    padding: 20px 0 70px;
  }
}

@media screen and (max-width: 959px) {
  #order .formContainer {
    padding: 35px 0 50px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .ticket_list h1 {
    padding-top: 20px;
  }
}

#order .ticket_list #charge .detail .charge {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  font-weight: 700;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-box-align: end;
  -moz-box-align: end;
  -o-box-align: end;
  -ms-flex-align: end;
}

#order .ticket_list #charge .detail__par {
  padding: 16px 0px;
}
#order .ticket_list #charge .detail__par__anchor .fa {
  color: #2854ae;
}

#order .ticket_list #charge .detail .charge > * + * {
  margin-left: 0.5em;
}

#order .ticket_list #charge .detail .commission dl {
  line-height: 2.4rem;
}

#order .ticket_list #charge .detail .commission dt {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #order .ticket_list #charge {
    margin-bottom: 45px;
  }
  #order .ticket_list #charge h2 {
    margin-bottom: 30px;
  }
  #order .ticket_list #charge .detail {
    padding: 0 30px;
  }
  #order .ticket_list #charge .detail__par__anchor {
    font-size: 1.6rem;
  }
  #order .ticket_list #charge .charge {
    margin-bottom: 24px;
  }
  #order .ticket_list #charge .charge .type,
  #order .ticket_list #charge .charge .tax {
    font-size: 1.6rem;
  }
  #order .ticket_list #charge .charge .price {
    font-size: 3rem;
  }
  #order .ticket_list #charge .commission dl {
    font-size: 1.6rem;
  }
  #order .ticket_list #list .table td .ticketDetailInner__table__contact__td__node,
  #order .ticket_list #list .table td .ticketDetailInner__table__contact__td__node p {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 959px) {
  #order .ticket_list #charge {
    margin-bottom: 20px;
  }
  #order .ticket_list #charge h2 {
    margin-bottom: 15px;
  }
  #order .ticket_list #charge .charge {
    margin-bottom: 25px;
  }
  #order .ticket_list #charge .detail__par__anchor {
    font-size: 1.4rem;
  }
  #order .ticket_list #list .table td .ticketDetailInner__table__contact__td__node,
  #order .ticket_list #list .table td .ticketDetailInner__table__contact__td__node p {
    font-size: 1.2rem;
  }
}

#order .ticket_list #list .ticketDetail {
  border: 1px solid #cdcdcd;
}

#order .ticket_list #list .ticketDetail.opened .ticketDetailButton:before {
  top: 45%;
  border: none;
  border-top: 2px solid;
  border-left: 2px solid;
}

#order .ticket_list #list .ticketDetail .detail {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#order .ticket_list #list .ticketDetail .detail .icon {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

#order .ticket_list #list .ticketDetail .detail .icon img {
  width: 100%;
}

#order .ticket_list #list .ticketDetail .detail .data {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -ms-box-flex: 1;
  -o-box-flex: 1;
  box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

#order .ticket_list #list .ticketDetail .detail .data .title {
  margin-bottom: 10px;
}

#order .ticket_list #list .ticketDetail .detail .data .title p {
  font-weight: 700;
}

#order .ticket_list #list .ticketDetailInner {
  display: none;
}

#order .ticket_list #list .ticketDetailInner__table__contact__td__node.m--info-center,
#order .ticket_list #list .ticketDetailInner__table__contact__td__node.m--period {
  margin-top: 2rem;
}

#order .ticket_list #list .application .button {
  text-align: center;
}

#order .ticket_list #list .application .button a {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3rem;
}

#order .ticket_list #list .application .button a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#order .ticket_list #list .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border-top: 1px solid #cdcdcd;
  border-bottom: 1px solid #cdcdcd;
}

#order .ticket_list #list .table th,
#order .ticket_list #list .table td {
  vertical-align: middle;
}

#order .ticket_list #list .table tr + tr th,
#order .ticket_list #list .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .ticket_list #list .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#order .ticket_list #list .table td a {
  color: #2854ae;
}

#order .ticket_list #list .table td ul li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#order .ticket_list #list .table td ul strong {
  color: #cf2929;
}

#order .ticket_list #list .ticketDetailButton {
  position: relative;
  width: 100%;
}

#order .ticket_list #list .ticketDetailButton:before {
  display: block;
  position: absolute;
  top: 40%;
  right: 0;
  left: 0;
  width: 10px;
  height: 10px;
  margin: 0 auto;
  border-right: 2px solid;
  border-bottom: 2px solid;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .ticket_list #list {
    padding-bottom: 70px;
  }
  #order .ticket_list #list .ticketDetail + .ticketDetail {
    margin-top: 20px;
  }
  #order .ticket_list #list .ticketDetail .detail {
    padding: 14px;
  }
  #order .ticket_list #list .ticketDetail .detail .icon {
    width: 120px;
  }
  #order .ticket_list #list .ticketDetail .detail .data {
    padding-left: 30px;
  }
  #order .ticket_list #list .ticketDetail .detail .data .title {
    padding-right: 115px;
  }
  #order .ticket_list #list .ticketDetail .detail .data .title p {
    font-size: 2rem;
    line-height: 3rem;
  }
  #order .ticket_list #list .ticketDetail .detail .data .preOrderPeriod p {
    line-height: 2.4rem;
  }
  #order .ticket_list #list .application {
    padding: 20px 0 40px;
  }
  #order .ticket_list #list .application .button a {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .ticket_list #list .application .button a:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .ticket_list #list .application .button a:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
  #order .ticket_list #list .table table {
    font-size: 1.6rem;
  }
  #order .ticket_list #list .table th {
    font-size  : 1.4rem;
    line-height: 3.2rem;
    padding    : 14px 0;
    width      : 130px;
  }
  #order .ticket_list #list .table td {
    padding: 30px 40px;
  }
  #order .ticket_list #list .table td p {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #order .ticket_list #list .table td ul li {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
  #order .ticket_list #list .ticketDetailButton {
    height: 50px;
  }
  #order .ticket_list #list .ticketDetailButton:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
}

@media screen and (max-width: 959px) {
  #order .ticket_list #list {
    padding-bottom: 50px;
  }
  #order .ticket_list #list .ticketDetail.closed .detail {
    padding-bottom: 15px;
  }
  #order .ticket_list #list .ticketDetail + .ticketDetail {
    margin-top: 15px;
  }
  #order .ticket_list #list .ticketDetail .detail {
    padding: 15px 15px 0;
  }
  #order .ticket_list #list .ticketDetail .detail .icon {
    width: 75px;
  }
  #order .ticket_list #list .ticketDetail .detail .data {
    padding-left: 16px;
  }
  #order .ticket_list #list .ticketDetail .detail .data .title p {
    line-height: 2.4rem;
  }
  #order .ticket_list #list .ticketDetail .detail .data .preOrderPeriod p {
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
  #order .ticket_list #list .application {
    padding: 25px 20px 30px;
  }
  #order .ticket_list #list .application .button a {
    display: block;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .ticket_list #list .application .button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
  #order .ticket_list #list .table th {
    font-size  : 1.2rem;
    line-height: 1.8rem;
    padding    : 15px 0;
    width      : 85px;
  }
  #order .ticket_list #list .table td {
    padding: 15px 20px;
    line-height: 1.8rem;
    word-break: break-all;
  }
  #order .ticket_list #list .table td p {
    line-height: 1.8rem;
  }
  #order .ticket_list #list .table td ul li {
    font-size: 1.2rem;
  }
  #order .ticket_list #list .ticketDetailButton {
    height: 40px;
  }
}

#order .subscription #detail .photo img {
  width: 100%;
}

#order .subscription #detail .text h3 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

#order .subscription #detail .content p,
#order .subscription #detail .content ul,
#order .subscription #detail .content .button {
  margin-top: 2.4rem;
}

#order .subscription #detail .content li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#order .subscription #detail .content .button a {
  display: block;
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-align: center;
}

#order .subscription #detail .content .button a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .subscription #detail {
    margin-bottom: 45px;
  }
  #order .subscription #detail h2 {
    margin-bottom: 40px;
  }
  #order .subscription #detail .detailContainer {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
  }
  #order .subscription #detail .photo {
    width: 270px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #order .subscription #detail .text {
    padding-left: 40px;
  }
  #order .subscription #detail .text h3 {
    margin-top: -0.25em;
  }
  #order .subscription #detail .content p {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #order .subscription #detail .content ul {
    line-height: 2.2rem;
  }
  #order .subscription #detail .content .button a {
    padding: 20px 0;
    font-size: 2rem;
    text-indent: 0.3em;
    letter-spacing: 0.3em;
  }
  #order .subscription #detail .content .button a:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .subscription #detail .content .button a:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .subscription #detail {
    margin-bottom: 65px;
  }
  #order .subscription #detail h2 {
    margin-bottom: 25px;
  }
  #order .subscription #detail .photo {
    margin-bottom: 30px;
  }
  #order .subscription #detail .content p,
  #order .subscription #detail .content ul {
    line-height: 2.4rem;
  }
  #order .subscription #detail .content ul {
    font-size: 1.2rem;
  }
  #order .subscription #detail .content .button a {
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .subscription #detail .content .button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 374px) {
  #order .subscription #detail .content .button a {
    font-size: 1.6rem;
  }
}

#order .subscription #select {
  margin-bottom: 35px;
}

#order .subscription #select .note {
  color: #cf2929;
}

#order .subscription #select .table dl {
  border: 1px solid #cdcdcd;
}

#order .subscription #select .table dt {
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}

#order .subscription #select .table dd .selectbox {
  width: 100%;
}

@media print, screen and (min-width: 960px) {
  #order .subscription #select h2 {
    margin-bottom: 15px;
  }
  #order .subscription #select .note {
    margin-bottom: 25px;
    line-height: 2.2rem;
  }
  #order .subscription #select .table {
    font-size: 1.6rem;
  }
  #order .subscription #select .table dl {
    position: relative;
    padding: 0 190px 0 280px;
  }
  #order .subscription #select .table dt,
  #order .subscription #select .table .number {
    position: absolute;
    top: 0;
    height: 100%;
  }
  #order .subscription #select .table dt {
    left: 0;
    width: 280px;
    border-right: 1px solid #cdcdcd;
  }
  #order .subscription #select .table dt span {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    padding: 0 30px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  #order .subscription #select .table dd p {
    margin-bottom: 12px;
  }
  #order .subscription #select .table .choice {
    padding: 20px 30px;
    border-right: 1px solid #cdcdcd;
  }
  #order .subscription #select .table .select {
    margin-bottom: 25px;
  }
  #order .subscription #select .table .first {
    border-bottom: 1px solid #cdcdcd;
  }
  #order .subscription #select .table .number {
    right: 0;
    width: 190px;
  }
  #order .subscription #select .table .number .cellInner {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    padding: 0 30px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 959px) {
  #order .subscription #select h2 {
    margin-bottom: 12px;
  }
  #order .subscription #select .note {
    margin-bottom: 22px;
    font-size: 1.2rem;
    line-height: 2rem;
  }
  #order .subscription #select .table dt {
    padding: 18px 0;
    border-bottom: 1px solid #cdcdcd;
    text-align: center;
  }
  #order .subscription #select .table dd {
    position: relative;
    padding-left: 88px;
  }
  #order .subscription #select .table dd + dd {
    border-top: 1px solid #cdcdcd;
  }
  #order .subscription #select .table dd .head {
    position: absolute;
    top: 0;
    left: 0;
    width: 88px;
    height: 100%;
    border-right: 1px solid #cdcdcd;
    background-color: #eee;
    font-weight: 700;
    text-align: center;
  }
  #order .subscription #select .table dd .head span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #order .subscription #select .table dd .select,
  #order .subscription #select .table dd .typesOfSeat,
  #order .subscription #select .table dd .cellInner {
    padding: 20px 15px;
  }
  #order .subscription #select .table dd .select p,
  #order .subscription #select .table dd .typesOfSeat p {
    margin-bottom: 10px;
  }
  #order .subscription #select .table dd .select {
    border-bottom: 1px solid #cdcdcd;
  }
}

#order .subscription #payment .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .subscription #payment .table th,
#order .subscription #payment .table td {
  vertical-align: middle;
}

#order .subscription #payment .table tr + tr th,
#order .subscription #payment .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .subscription #payment .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#order .subscription #payment .inputTable > p {
  margin-bottom: 5px;
}

#order .subscription #payment .inputTable .summary ul li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#order .subscription #payment .inputTable .summary .note p {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #order .subscription #payment {
    margin-bottom: 70px;
  }
  #order .subscription #payment h2 {
    margin-bottom: 30px;
  }
  #order .subscription #payment .table th,
  #order .subscription #payment .table td {
    padding: 20px 30px;
  }
  #order .subscription #payment .table th {
    width: 280px;
    font-size: 1.6rem;
    text-align: left;
    line-height: 3.2rem;
  }
  #order .subscription #payment .table + .table {
    margin-top: 20px;
  }
  #order .subscription #payment .inputTable td + td {
    border-left: 1px solid #cdcdcd;
  }
  #order .subscription #payment .inputTable .options {
    width: 175px;
    padding-right: 0;
  }
  #order .subscription #payment .inputTable .summary > p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  #order .subscription #payment .inputTable .summary ul {
    margin-bottom: 20px;
    line-height: 2.2rem;
  }
  #order .subscription #payment .inputTable .summary .note p {
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #order .subscription #payment {
    margin-bottom: 40px;
  }
  #order .subscription #payment h2 {
    margin-bottom: 25px;
  }
  #order .subscription #payment .table th {
    width: 88px;
    line-height: 1.8rem;
  }
  #order .subscription #payment .table + .table {
    margin-top: 25px;
  }
  #order .subscription #payment .table + .table td {
    padding: 35px 18px;
    line-height: 2.3rem;
  }
  #order .subscription #payment .inputTable table,
  #order .subscription #payment .inputTable tbody,
  #order .subscription #payment .inputTable tr,
  #order .subscription #payment .inputTable th,
  #order .subscription #payment .inputTable td {
    display: block;
  }
  #order .subscription #payment .inputTable tr {
    position: relative;
    padding-left: 88px;
  }
  #order .subscription #payment .inputTable th {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
  #order .subscription #payment .inputTable th span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #order .subscription #payment .inputTable td + td {
    border-top: 1px solid #cdcdcd;
  }
  #order .subscription #payment .inputTable .options {
    padding: 40px 15px;
  }
  #order .subscription #payment .inputTable .summary {
    padding: 28px 18px;
  }
  #order .subscription #payment .inputTable .summary p {
    line-height: 2.4rem;
  }
  #order .subscription #payment .inputTable .summary > p {
    margin-bottom: 5px;
  }
  #order .subscription #payment .inputTable .summary ul {
    margin-bottom: 15px;
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

#order .subscription #confirm {
  text-align: center;
}

#order .subscription #confirm button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#order .subscription #confirm button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .subscription #confirm button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .subscription #confirm button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .subscription #confirm button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .subscription #confirm button {
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .subscription #confirm button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

#order .subscription .note {
  color: #cf2929;
}

#order .subscription #performance_list .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .subscription #performance_list .table th,
#order .subscription #performance_list .table td {
  vertical-align: middle;
}

#order .subscription #performance_list .table tr + tr th,
#order .subscription #performance_list .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .subscription #performance_list .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #order .subscription #performance_list {
    margin-bottom: 70px;
  }
  #order .subscription #performance_list h2 {
    margin-bottom: 30px;
  }
  #order .subscription #performance_list .table table {
    display: table;
  }
  #order .subscription #performance_list .table tr {
    display: table-cell;
    vertical-align: top;
    width: 70px;
  }
  #order .subscription #performance_list .table tr td {
    display: table-cell;
    vertical-align: middle;
    width: inherit;
    height: 80px;
  }
  #order .subscription #performance_list .table tr + tr {
    border-left: 1px solid #cdcdcd;
  }
  #order .subscription #performance_list .table tr + tr th,
  #order .subscription #performance_list .table tr + tr td {
    border: none;
  }
  #order .subscription #performance_list .table tr:nth-of-type(1) {
    width: 160px;
  }
  #order .subscription #performance_list .table tr:nth-of-type(4) {
    width: 390px;
  }
  #order .subscription #performance_list .table tr:nth-of-type(5) {
    width: 108px;
  }
  #order .subscription #performance_list .table tr:nth-of-type(6) {
    width: 160px;
  }
  #order .subscription #performance_list .table th {
    text-align: center;
    border-top: none;
  }
  #order .subscription #performance_list .table th,
  #order .subscription #performance_list .table td {
    padding: 20px 12px;
    display: block;
    border: none;
  }
  #order .subscription #performance_list .table th {
    /* width: 280px; */
    font-size: 1.6rem;
    text-align: center;
    line-height: 3.2rem;
  }
  #order .subscription #performance_list .table td,
  #order .subscription #performance_list .table tr + tr td {
    border-top: 1px solid #cdcdcd;
    text-align: center;
    padding: 20px 8px;
  }
  #order .subscription #performance_list .table tr:nth-of-type(4) td {
    text-align: justify;
  }
  #order .subscription #performance_list .table + .table {
    margin-top: 20px;
  }
}

@media screen and (max-width: 959px) {
  #order .subscription #performance_list {
    margin-bottom: 40px;
  }
  #order .subscription #performance_list h2 {
    margin-bottom: 25px;
  }
  #order .subscription #performance_list .table th {
    width: 88px;
    line-height: 1.8rem;
  }
  #order .subscription #performance_list .table {
    margin-top: 25px;
  }
  #order .subscription #performance_list .table td {
    padding: 35px 18px;
    line-height: 2.3rem;
  }
}

#order .subscription #performance_list .button a {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.2rem;
  text-align: center;
  padding: 10px 18px 10px 12px;
}

#order .subscription #performance_list .button a span:after {
  display: block;
  position: absolute;
  top: 1px;
  bottom: 0;
  right: 8px;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#order .subscription #performance_list .status span,
#order .subscription #performance_list .status_close span {
  position: relative;
  border-radius: 4px;
  background-color: #cf2929;
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.2rem;
  padding: 10px;
  text-align: center;
}

#order .subscription #performance_list .status_close span {
  background-color: #939393;
}

@media screen and (max-width: 959px) {
  #order .subscription #performance_list .button a {
    width: 100%;
    display: block;
  }
  #order .subscription #performance_list .status span,
  #order .subscription #performance_list .status_close span {
    padding: 8px 35px;
  }
}

#order .performance_detail .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .performance_detail .table th,
#order .performance_detail .table td {
  vertical-align: middle;
}

#order .performance_detail .table tr + tr th,
#order .performance_detail .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .performance_detail .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail .table table {
    line-height: 3.2rem;
  }
  #order .performance_detail .table th {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail .table th {
    width: 88px;
    line-height: 1.8rem;
  }
}

#order .performance_detail h2 {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail h2 {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail h2 {
    padding-bottom: 10px;
  }
}

#order .performance_detail #detail .image img {
  max-width: 100%;
}

#order .performance_detail #detail .table .note {
  padding-top: 18px;
  text-align: right;
}

#order .performance_detail #detail .table .note a {
  display: inline-block;
  padding-bottom: 0.3em;
  border-bottom: 1px solid;
  color: #939393;
  font-weight: 700;
  vertical-align: bottom;
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #detail {
    margin-bottom: 45px;
  }
  #order .performance_detail #detail h2 {
    margin-bottom: 40px;
  }
  #order .performance_detail #detail .content {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #order .performance_detail #detail .image {
    width: 240px;
    padding-right: 44px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #order .performance_detail #detail .table {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  #order .performance_detail #detail .table th {
    width: 200px;
    padding: 14px 0;
  }
  #order .performance_detail #detail .table td {
    padding: 14px 40px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #detail {
    margin-bottom: 45px;
  }
  #order .performance_detail #detail h2 {
    margin-bottom: 25px;
  }
  #order .performance_detail #detail .image {
    margin-bottom: 36px;
    text-align: center;
  }
  #order .performance_detail #detail .table th {
    padding: 35px 0;
  }
  #order .performance_detail #detail .table td {
    padding: 35px 18px;
    line-height: 2.3rem;
  }
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #performance .inputTable td + td,
  #order .performance_detail #payment .inputTable td + td,
  #order .performance_detail #admission .inputTable td + td {
    border-left: 1px solid #cdcdcd;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #performance .inputTable table,
  #order .performance_detail #payment .inputTable table,
  #order .performance_detail #admission .inputTable table,
  #order .performance_detail #performance .inputTable tbody,
  #order .performance_detail #payment .inputTable tbody,
  #order .performance_detail #admission .inputTable tbody,
  #order .performance_detail #performance .inputTable tr,
  #order .performance_detail #payment .inputTable tr,
  #order .performance_detail #admission .inputTable tr,
  #order .performance_detail #performance .inputTable th,
  #order .performance_detail #payment .inputTable th,
  #order .performance_detail #admission .inputTable th,
  #order .performance_detail #performance .inputTable td,
  #order .performance_detail #payment .inputTable td,
  #order .performance_detail #admission .inputTable td {
    display: block;
  }
  #order .performance_detail #performance .inputTable tr,
  #order .performance_detail #payment .inputTable tr,
  #order .performance_detail #admission .inputTable tr {
    position: relative;
    padding-left: 88px;
  }
  #order .performance_detail #performance .inputTable th,
  #order .performance_detail #payment .inputTable th,
  #order .performance_detail #admission .inputTable th {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
  #order .performance_detail #performance .inputTable th span,
  #order .performance_detail #payment .inputTable th span,
  #order .performance_detail #admission .inputTable th span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #order .performance_detail #performance .inputTable td + td,
  #order .performance_detail #payment .inputTable td + td,
  #order .performance_detail #admission .inputTable td + td {
    border-top: 1px solid #cdcdcd;
  }
}

#order .performance_detail #performance h2 {
  margin-bottom: 20px;
}

#order .performance_detail #performance .list ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -o-box-lines: multiple;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -o-box-pack: start;
  -ms-flex-pack: start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

#order .performance_detail #performance .list li {
  border-radius: 4px;
  text-align: center;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

#order .performance_detail #performance .note {
  line-height: 2;
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #performance {
    margin-bottom: 30px;
  }
  #order .performance_detail #performance .list {
    margin-bottom: 15px;
  }
  #order .performance_detail #performance .list ul {
    margin: -10px;
  }
  #order .performance_detail #performance .list li {
    width: 250px;
    margin: 10px;
    padding: 8px 0;
    border: 1px solid #cdcdcd;
    font-size: 1.6rem;
  }
  #order .performance_detail #performance .note {
    margin-bottom: 20px;
  }
  #order .performance_detail #performance .table th {
    width: 280px;
  }
  #order .performance_detail #performance .table td {
    padding: 14px 30px;
  }
  #order .performance_detail #performance .table td .selectbox {
    width: 80%;
  }
  #order .performance_detail #performance .table .number {
    width: 255px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #performance {
    margin-bottom: 65px;
  }
  #order .performance_detail #performance .list {
    margin-bottom: 14px;
  }
  #order .performance_detail #performance .list ul {
    margin: -5px;
  }
  #order .performance_detail #performance .list li {
    width: 240px;
    margin: 5px;
    padding: 7px 0;
    border: 1px solid;
    font-weight: 700;
  }
  #order .performance_detail #performance .note {
    margin-bottom: 14px;
    font-size: 1.2rem;
  }
  #order .performance_detail #performance .table td {
    padding: 22px 18px;
  }
  #order .performance_detail #performance .table td .sp {
    margin-bottom: 10px;
  }
  #order .performance_detail #performance .table td .selectbox {
    width: 100%;
  }
}

#order .performance_detail #payment .inputTable > p,
#order .performance_detail #admission .inputTable > p {
  margin-bottom: 5px;
}

#order .performance_detail #payment .inputTable .summary ul li,
#order .performance_detail #admission .inputTable .summary ul li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#order .performance_detail #payment .inputTable .summary .note p,
#order .performance_detail #admission .inputTable .summary .note p {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #payment h2,
  #order .performance_detail #admission h2 {
    margin-bottom: 30px;
  }
  #order .performance_detail #payment .table th,
  #order .performance_detail #admission .table th,
  #order .performance_detail #payment .table td,
  #order .performance_detail #admission .table td {
    padding: 15px 40px;
  }
  #order .performance_detail #payment .table th,
  #order .performance_detail #admission .table th {
    width: 280px;
    text-align: left;
  }
  #order .performance_detail #payment .inputTable .options,
  #order .performance_detail #admission .inputTable .options {
    width: 175px;
    padding-right: 0;
  }
  #order .performance_detail #payment .inputTable .summary > p,
  #order .performance_detail #admission .inputTable .summary > p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  #order .performance_detail #payment .inputTable .summary ul,
  #order .performance_detail #admission .inputTable .summary ul {
    margin-bottom: 20px;
    line-height: 2.2rem;
  }
  #order .performance_detail #payment .inputTable .summary .note p,
  #order .performance_detail #admission .inputTable .summary .note p {
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #payment h2,
  #order .performance_detail #admission h2 {
    margin-bottom: 25px;
  }
  #order .performance_detail #payment .inputTable .options,
  #order .performance_detail #admission .inputTable .options {
    padding: 40px 15px;
  }
  #order .performance_detail #payment .inputTable .summary,
  #order .performance_detail #admission .inputTable .summary {
    padding: 28px 18px;
  }
  #order .performance_detail #payment .inputTable .summary p,
  #order .performance_detail #admission .inputTable .summary p {
    line-height: 2.4rem;
  }
  #order .performance_detail #payment .inputTable .summary > p,
  #order .performance_detail #admission .inputTable .summary > p {
    margin-bottom: 5px;
  }
  #order .performance_detail #payment .inputTable .summary ul,
  #order .performance_detail #admission .inputTable .summary ul {
    margin-bottom: 15px;
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #payment {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #payment {
    margin-bottom: 65px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #admission {
    margin-bottom: 70px;
  }
  #order .performance_detail #admission .table + .table {
    margin-top: 20px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #admission {
    margin-bottom: 40px;
  }
  #order .performance_detail #admission .table + .table {
    margin-top: 25px;
  }
  #order .performance_detail #admission .table + .table td {
    padding: 35px 18px;
    line-height: 2.3rem;
  }
}

#order .performance_detail #confirm {
  text-align: center;
}

#order .performance_detail #confirm button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#order .performance_detail #confirm button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .performance_detail #confirm button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .performance_detail #confirm button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .performance_detail #confirm button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .performance_detail #confirm button {
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .performance_detail #confirm button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .confirm h2 {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm h2 {
    margin-bottom: 20px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .confirm section {
    margin-bottom: 45px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm section {
    margin-bottom: 35px;
  }
}

#order .confirm .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .confirm .table th,
#order .confirm .table td {
  vertical-align: middle;
}

#order .confirm .table tr + tr th,
#order .confirm .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .confirm .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #order .confirm .table th,
  #order .confirm .table td {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  #order .confirm .table th {
    width: 280px;
    padding: 28px 40px;
  }
  #order .confirm .table td {
    padding: 16px 40px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm .table th {
    width: 88px;
    padding: 17px 0;
    line-height: 1.8rem;
  }
  #order .confirm .table td {
    padding: 14px 20px;
    line-height: 2.4rem;
  }
}

#order .confirm #billingDetails .table table td + td,
#order .confirm #billingDetails .table table td[colspan] {
  text-align: right;
}

@media print, screen and (min-width: 960px) {
  #order .confirm #billingDetails .table table td + td {
    border-left: 1px solid #cdcdcd;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #billingDetails .table table,
  #order .confirm #billingDetails .table tbody,
  #order .confirm #billingDetails .table tr,
  #order .confirm #billingDetails .table th,
  #order .confirm #billingDetails .table td {
    display: block;
  }
  #order .confirm #billingDetails .table tr {
    position: relative;
    padding-left: 88px;
  }
  #order .confirm #billingDetails .table th {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
  #order .confirm #billingDetails .table th span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #order .confirm #billingDetails .table th span.pc {
    display: none;
  }
  #order .confirm #billingDetails .table td + td {
    border-top: 1px solid #cdcdcd;
  }
}

#order .confirm #authentication .table input[type="text"],
#order .confirm #authentication .table input[type="password"] {
  height: 3rem;
  padding: 0 10px;
  border: 1px solid #cdcdcd;
  border-radius: 4px;
}

#order .confirm #authentication .inputContainer label {
  display: block;
}

#order .confirm #authentication .imageAuth .image {
  overflow: hidden;
  border-radius: 4px;
}

#order .confirm #authentication .imageAuth .image img {
  max-width: 100%;
}

@media print, screen and (min-width: 960px) {
  #order .confirm #authentication .table input[type="text"],
  #order .confirm #authentication .table input[type="password"] {
    width: 210px;
  }
  #order .confirm #authentication .password th {
    padding: 16px 40px;
  }
  #order .confirm #authentication .password td {
    padding: 27px 40px;
  }
  #order .confirm #authentication .imageAuth td {
    padding: 20px 40px;
  }
  #order .confirm #authentication .imageAuth .inputContainer {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    flex-direction: row-reverse;
    -webkit-box-direction: reverse;
    -moz-box-direction: reverse;
    -o-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -o-box-orient: horizontal;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -o-box-pack: end;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  #order .confirm #authentication .imageAuth .inputContainer label {
    width: 285px;
    margin-right: 32px;
  }
  #order .confirm #authentication .imageAuth .inputContainer label .label {
    margin: -0.5rem 0 16px;
  }
  #order .confirm #authentication .imageAuth .inputContainer .image {
    width: 200px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #authentication .table input[type="text"],
  #order .confirm #authentication .table input[type="password"] {
    width: 100%;
  }
  #order .confirm #authentication .imageAuth td {
    padding: 16px 20px;
  }
  #order .confirm #authentication .imageAuth .inputContainer p {
    margin: 0 -1em 2.4rem -0.5em;
  }
  #order .confirm #authentication .imageAuth .inputContainer .image {
    margin-bottom: 18px;
  }
}

#order .confirm #guide p {
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #order .confirm #guide p {
    font-size: 1.6rem;
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #guide p {
    line-height: 2.4rem;
  }
}

#order .confirm #button {
  text-align: center;
}

#order .confirm #button a,
#order .confirm #button button {
  position: relative;
  border-radius: 4px;
  font-weight: 700;
}

#order .confirm #button a:after,
#order .confirm #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#order .confirm #button a.white,
#order .confirm #button button.white {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#order .confirm #button a.white:before,
#order .confirm #button button.white:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#order .confirm #button a.white:after,
#order .confirm #button button.white:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#order .confirm #button a.navy,
#order .confirm #button button.navy {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#order .confirm #button a.navy:after,
#order .confirm #button button.navy:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #order .confirm #button {
    font-size: 0;
  }
  #order .confirm #button a,
  #order .confirm #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .confirm #button a + a,
  #order .confirm #button button + a,
  #order .confirm #button a + button,
  #order .confirm #button button + button {
    margin-left: 20px;
  }
  #order .confirm #button a:hover,
  #order .confirm #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .confirm #button a:after,
  #order .confirm #button button:after {
    width: 10px;
    height: 10px;
  }
  #order .confirm #button a.white:after,
  #order .confirm #button button.white:after {
    left: 16px;
  }
  #order .confirm #button a.navy:after,
  #order .confirm #button button.navy:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #button {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #order .confirm #button a,
  #order .confirm #button button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .confirm #button a:after,
  #order .confirm #button button:after {
    width: 10px;
    height: 10px;
  }
  #order .confirm #button a.white,
  #order .confirm #button button.white {
    padding-left: 5px;
  }
  #order .confirm #button a.white:after,
  #order .confirm #button button.white:after {
    left: 20px;
  }
  #order .confirm #button a.navy,
  #order .confirm #button button.navy {
    padding-right: 5px;
  }
  #order .confirm #button a.navy:after,
  #order .confirm #button button.navy:after {
    right: 20px;
  }
}

@media screen and (max-width: 374px) {
  #order .confirm #button a.white,
  #order .confirm #button button.white {
    padding-left: 10px;
  }
  #order .confirm #button a.white:after,
  #order .confirm #button button.white:after {
    left: 12px;
  }
  #order .confirm #button a.navy,
  #order .confirm #button button.navy {
    padding-right: 10px;
  }
  #order .confirm #button a.navy:after,
  #order .confirm #button button.navy:after {
    right: 12px;
  }
}

#order .lot_select_credit .title {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit .title {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit .title {
    padding-bottom: 10px;
  }
}

#order .lot_select_credit .button {
  text-align: center;
}

#order .lot_select_credit .button a,
#order .lot_select_credit .button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
}

#order .lot_select_credit .button a:after,
#order .lot_select_credit .button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit .button a,
  #order .lot_select_credit .button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .lot_select_credit .button a:hover,
  #order .lot_select_credit .button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .lot_select_credit .button a:after,
  #order .lot_select_credit .button button:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit .button a,
  #order .lot_select_credit .button button {
    width: 100%;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .lot_select_credit .button a:after,
  #order .lot_select_credit .button button:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 374px) {
  #order .lot_select_credit .button a,
  #order .lot_select_credit .button button {
    font-size: 1.6rem;
  }
}

#order .lot_select_credit #registration {
  margin-bottom: 70px;
}

#order .lot_select_credit #registration .button a {
  display: inline-block;
  text-indent: 0.1em;
  letter-spacing: 0.1em;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #registration {
    padding-top: 18px;
  }
  #order .lot_select_credit #registration .title {
    margin-bottom: 20px;
  }
  #order .lot_select_credit #registration .lead {
    margin-bottom: 20px;
  }
  #order .lot_select_credit #registration .lead p {
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #registration {
    padding-top: 28px;
  }
  #order .lot_select_credit #registration .title {
    margin-bottom: 12px;
  }
  #order .lot_select_credit #registration .lead {
    margin-bottom: 12px;
  }
  #order .lot_select_credit #registration .lead p {
    line-height: 1.642857142857143;
  }
}

#order .lot_select_credit #payment .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .lot_select_credit #payment .table th,
#order .lot_select_credit #payment .table td {
  vertical-align: middle;
}

#order .lot_select_credit #payment .table tr + tr th,
#order .lot_select_credit #payment .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .lot_select_credit #payment .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#order .lot_select_credit #payment .table td {
  font-weight: 700;
}

#order .lot_select_credit #payment .button button {
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #payment {
    margin-bottom: 34px;
  }
  #order .lot_select_credit #payment .title {
    margin-bottom: 30px;
  }
  #order .lot_select_credit #payment .table table {
    font-size: 1.6rem;
    line-height: 3.2rem;
  }
  #order .lot_select_credit #payment .table th {
    width: 130px;
    padding: 14px 0;
  }
  #order .lot_select_credit #payment .table td {
    padding: 14px 20px;
  }
  #order .lot_select_credit #payment .guide {
    padding: 20px 0;
  }
  #order .lot_select_credit #payment .guide p {
    font-size: 1.6rem;
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #payment {
    margin-bottom: 14px;
  }
  #order .lot_select_credit #payment .title {
    margin-bottom: 20px;
  }
  #order .lot_select_credit #payment .table th {
    width: 88px;
    padding: 15px 0;
    line-height: 1.8rem;
  }
  #order .lot_select_credit #payment .table td {
    padding: 15px 20px;
  }
  #order .lot_select_credit #payment .guide {
    padding: 28px 0;
  }
  #order .lot_select_credit #payment .guide p {
    line-height: 1.642857142857143;
  }
}

#order .lot_select_credit #note li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #note li {
    line-height: 2.2rem;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #note li {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

#order .lot_select_credit #previousPage {
  text-align: center;
}

#order .lot_select_credit #previousPage a {
  display: inline-block;
  position: relative;
  color: #313145;
  font-weight: 700;
  line-height: 2;
}

#order .lot_select_credit #previousPage a:before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
  border-bottom: 2px solid;
  border-left: 2px solid;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #previousPage {
    padding: 70px 0;
    font-weight: 1.6rem;
  }
  #order .lot_select_credit #previousPage a {
    padding-left: 20px;
  }
  #order .lot_select_credit #previousPage a:before {
    width: 12px;
    height: 12px;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #previousPage {
    padding: 40px 0 45px;
  }
  #order .lot_select_credit #previousPage a {
    padding-left: 22px;
  }
  #order .lot_select_credit #previousPage a:before {
    width: 10px;
    height: 10px;
  }
}

#order .fin h1 {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #order .fin h1 {
    margin-bottom: 30px;
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .fin h1 {
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
}

#order .fin #guide p {
  line-height: 2.4rem;
}

#order .fin #guide .messageBlock {
  border: 1px solid #d2d2d2;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #order .fin #guide {
    margin-bottom: 60px;
  }
  #order .fin #guide p {
    font-size: 1.6rem;
  }
  #order .fin #guide .messageBlock {
    margin-bottom: 45px;
    padding: 26px 0;
  }
}

@media screen and (max-width: 959px) {
  #order .fin #guide {
    margin-bottom: 32px;
  }
  #order .fin #guide .messageBlock {
    margin-bottom: 15px;
    padding: 24px 0;
  }
}

#order .fin #button {
  text-align: center;
}

#order .fin #button a {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-indent: 0.3em;
  letter-spacing: 0.3rem;
}

#order .fin #button a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .fin #button a {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .fin #button a:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .fin #button a:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .fin #button a {
    display: block;
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #order .fin #button a:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .identification h2 {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification h2 {
    margin-bottom: 20px;
  }
}

@media print, screen and (min-width: 960px) {
  #order .identification section {
    margin-bottom: 45px;
  }
  #order .identification #input {
    margin-bottom: 70px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification section {
    margin-bottom: 35px;
  }
  #order .identification #input {
    margin-bottom: 40px;
  }
}

#order .identification .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#order .identification .table th,
#order .identification .table td {
  vertical-align: middle;
}

#order .identification .table tr + tr th,
#order .identification .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#order .identification .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  font-weight: 700;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  #order .identification .table th,
  #order .identification .table td {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  #order .identification .table th {
    width: 280px;
    padding: 28px 40px;
  }
  #order .identification .table td {
    padding: 16px 40px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification .table th {
    width: 88px;
    padding: 17px 0;
    line-height: 1.8rem;
  }
  #order .identification .table td {
    padding: 14px 20px;
    line-height: 2.4rem;
  }
}

#order .identification #input .table input[type="text"] {
  height: 3rem;
  padding: 0 10px;
  border: 1px solid #cdcdcd;
  border-radius: 4px;
}

#order .identification #input .inputContainer label {
  display: block;
}

#order .identification #input .imageAuth .image {
  overflow: hidden;
  border-radius: 4px;
}

#order .identification #input .imageAuth .image img {
  max-width: 100%;
}

@media print, screen and (min-width: 960px) {
  #order .identification #input .table input[type="text"] {
    width: 240px;
  }
  #order .identification #input .password th {
    padding: 16px 40px;
  }
  #order .identification #input .password td {
    padding: 27px 40px;
  }
  #order .identification #input .imageAuth td {
    padding: 20px 40px;
  }
  #order .identification #input .imageAuth .inputContainer {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    flex-direction: row-reverse;
    -webkit-box-direction: reverse;
    -moz-box-direction: reverse;
    -o-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -o-box-orient: horizontal;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -o-box-pack: end;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
}

@media screen and (max-width: 959px) {
  #order .identification #input .table input[type="text"] {
    width: 100%;
  }
}

#order .identification #button {
  text-align: center;
}

#order .identification #button a,
#order .identification #button button {
  position: relative;
  border-radius: 4px;
  font-weight: 700;
}

#order .identification #button a:after,
#order .identification #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#order .identification #button a.white,
#order .identification #button button.white {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#order .identification #button a.white:before,
#order .identification #button button.white:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#order .identification #button a.white:after,
#order .identification #button button.white:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#order .identification #button a.navy,
#order .identification #button button.navy {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#order .identification #button a.navy:after,
#order .identification #button button.navy:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #order .identification #button {
    font-size: 0;
  }
  #order .identification #button a,
  #order .identification #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .identification #button a + a,
  #order .identification #button button + a,
  #order .identification #button a + button,
  #order .identification #button button + button {
    margin-left: 20px;
  }
  #order .identification #button a:hover,
  #order .identification #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .identification #button a:after,
  #order .identification #button button:after {
    width: 10px;
    height: 10px;
  }
  #order .identification #button a.white:after,
  #order .identification #button button.white:after {
    left: 16px;
  }
  #order .identification #button a.navy:after,
  #order .identification #button button.navy:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification #button {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #order .identification #button a,
  #order .identification #button button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.6rem;
  }
  #order .identification #button a:after,
  #order .identification #button button:after {
    width: 10px;
    height: 10px;
  }
  #order .identification #button a.white,
  #order .identification #button button.white {
    padding-left: 5px;
  }
  #order .identification #button a.white:after,
  #order .identification #button button.white:after {
    left: 20px;
  }
  #order .identification #button a.navy,
  #order .identification #button button.navy {
    padding-right: 5px;
  }
  #order .identification #button a.navy:after,
  #order .identification #button button.navy:after {
    right: 20px;
  }
}

@media screen and (max-width: 374px) {
  #order .identification #button a.white,
  #order .identification #button button.white {
    padding-left: 10px;
  }
  #order .identification #button a.white:after,
  #order .identification #button button.white:after {
    left: 12px;
  }
  #order .identification #button a.navy,
  #order .identification #button button.navy {
    padding-right: 10px;
  }
  #order .identification #button a.navy:after,
  #order .identification #button button.navy:after {
    right: 12px;
  }
}

#order .identification #input .note {
  color: #cf2929;
  font-weight: 700;
  line-height: 1.6;
}

@media print, screen and (min-width: 960px) {
  #order .identification #input .note {
    font-size: 1.6rem;
    margin: -10px 0 20px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification #input .note {
    line-height: 1.6;
    margin: -4px 0 20px;
  }
}

#order #caution .caution-box {
  padding: 16px 40px;
  border: 1px solid #cdcdcd;
}

#order #caution .caution-text {
  margin-bottom: 48px;
  line-height: 2.3rem;
}

#order #caution .confirm-box {
  text-align: center;
}

#order .selectbox.quasi {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 2.8rem;
}

#order .selectbox.quasi .label {
  width: 100%;
  padding: 3px 0 3px 10px;
  word-break: break-all;
}

#order .selectbox.quasi .label + select {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#order .selectbox.quasi .label + select optgroup {
  font-weight: normal;
  font-style: normal;
}

#order .selectbox.quasi .label + select option {
  font-weight: normal;
}

#order .ticket_list #list .ticketDetail.closed .detail, #order .ticket_list #list .ticketDetail.closed .ticketDetailButton {
  background-color: #c7c7c7;
}

#order .ticket_list #list .ticketDetail.closed.opened .ticketDetailButton {
  background-color: transparent;
}

#order .ticket_list #list .ticketDetail.opened .ticketDetailButton:before {
  top: 2px;
}

#order .ticket_list #list .ticketDetail.opened .ticketDetailButton:after {
  content: "閉じる";
}

#order .ticket_list #list .ticketDetail .ticketDetailButton {
  text-align: center;
}

#order .ticket_list #list .ticketDetail .ticketDetailButton:before {
  position: relative;
  display: inline-block;
  top: -2px;
}

#order .ticket_list #list .ticketDetail .ticketDetailButton:after {
  content: "詳細を開く";
  margin-left: 0.5em;
  opacity: 0.75;
}

#order .lot_select_credit #form .inputBlock.securitycode {
  border: 1px solid #d2d2d2;
}

#order .lot_select_credit #form .inputBlock.securitycode .inputContainer input[type=text] {
  padding: 0 10px;
  border: 1px solid;
  border-radius: 4px;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 6em;
  flex: 1 0 6em;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #form .inputBlock.securitycode .inputContainer input[type=text] {
    height: 3.6rem;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #form .inputBlock.securitycode .inputContainer input[type=text] {
    height: 3rem;
  }
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #form .inputBlock.securitycode {
    width: 700px;
    margin: 30px auto;
    padding: 25px 20px;
  }
}

@media screen and (max-width: 959px) {
  #order .lot_select_credit #form .inputBlock.securitycode {
    margin: 28px auto;
    padding: 20px 15px;
  }
}

#order .lot_select_credit #form .inputBlock.securitycode .inputContainer label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#order .lot_select_credit #form .inputBlock.securitycode .inputContainer .label {
  margin-right: 1em;
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #order .lot_select_credit #form .inputBlock.securitycode .inputContainer .label {
    line-height: 3.6rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

#order .identification form a.white,
#order .identification form button.white, #order .confirm form a.white,
#order .confirm form button.white {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#order .identification form a.white:before,
#order .identification form button.white:before, #order .confirm form a.white:before,
#order .confirm form button.white:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#order .identification form a.white:after,
#order .identification form button.white:after, #order .confirm form a.white:after,
#order .confirm form button.white:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#order .identification form a.navy,
#order .identification form button.navy, #order .confirm form a.navy,
#order .confirm form button.navy {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#order .identification form a.navy:after,
#order .identification form button.navy:after, #order .confirm form a.navy:after,
#order .confirm form button.navy:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #order .identification form a.white:after,
  #order .identification form button.white:after, #order .confirm form a.white:after,
  #order .confirm form button.white:after {
    left: 16px;
  }
  #order .identification form a.navy:after,
  #order .identification form button.navy:after, #order .confirm form a.navy:after,
  #order .confirm form button.navy:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification form a.navy,
  #order .identification form button.navy, #order .confirm form a.navy,
  #order .confirm form button.navy {
    padding-right: 5px;
  }
  #order .identification form a.navy:after,
  #order .identification form button.navy:after, #order .confirm form a.navy:after,
  #order .confirm form button.navy:after {
    right: 20px;
  }
}

@media screen and (max-width: 374px) {
  #order .identification form a.white,
  #order .identification form button.white, #order .confirm form a.white,
  #order .confirm form button.white {
    padding-left: 10px;
  }
  #order .identification form a.white:after,
  #order .identification form button.white:after, #order .confirm form a.white:after,
  #order .confirm form button.white:after {
    left: 12px;
  }
  #order .identification form a.navy,
  #order .identification form button.navy, #order .confirm form a.navy,
  #order .confirm form button.navy {
    padding-right: 10px;
  }
  #order .identification form a.navy:after,
  #order .identification form button.navy:after, #order .confirm form a.navy:after,
  #order .confirm form button.navy:after {
    right: 12px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification form {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}

#order .identification form button, #order .identification form .button, #order .confirm form button, #order .confirm form .button {
  text-align: center;
}

#order .identification form a,
#order .identification form button, #order .confirm form a,
#order .confirm form button {
  position: relative;
  border-radius: 4px;
  font-weight: 700;
}

#order .identification form a:after,
#order .identification form button:after, #order .confirm form a:after,
#order .confirm form button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #order .identification form, #order .confirm form {
    font-size: 0;
  }
  #order .identification form a,
  #order .identification form button, #order .confirm form a,
  #order .confirm form button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #order .identification form a + a, #order .identification form a + button,
  #order .identification form button + a,
  #order .identification form button + button, #order .confirm form a + a, #order .confirm form a + button,
  #order .confirm form button + a,
  #order .confirm form button + button {
    margin-left: 20px;
  }
  #order .identification form a:hover,
  #order .identification form button:hover, #order .confirm form a:hover,
  #order .confirm form button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #order .identification form a:after,
  #order .identification form button:after, #order .confirm form a:after,
  #order .confirm form button:after {
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification form a,
  #order .identification form button, #order .confirm form a,
  #order .confirm form button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.6rem;
  }
  #order .identification form a:after,
  #order .identification form button:after, #order .confirm form a:after,
  #order .confirm form button:after {
    width: 10px;
    height: 10px;
  }
  #order .identification form a.white,
  #order .identification form button.white, #order .confirm form a.white,
  #order .confirm form button.white {
    padding-left: 5px;
  }
  #order .identification form a.white:after,
  #order .identification form button.white:after, #order .confirm form a.white:after,
  #order .confirm form button.white:after {
    left: 20px;
  }
}

#order .identification .formContainer, #order .confirm .formContainer {
  position: relative;
}

#order .identification #partner_confirm button.navy, #order .identification #confirm button.navy, #order .confirm #partner_confirm button.navy, #order .confirm #confirm button.navy {
  margin-left: 50%;
}

#order .identification #multi, #order .confirm #multi {
  position: absolute;
}

@media print, screen and (min-width: 960px) {
  #order .identification #multi, #order .confirm #multi {
    bottom: 70px;
    right: 50%;
    margin-right: 20px;
  }
}

@media screen and (max-width: 959px) {
  #order .identification #multi, #order .confirm #multi {
    bottom: 50px;
    width: 50%;
  }
  #order .identification #multi button, #order .confirm #multi button {
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  #order .confirm #guide {
    margin-top: 45px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #guide {
    margin-top: 35px;
  }
}

@media screen and (max-width: 959px) {
  #order .confirm #multi {
    margin-right: 0;
    padding-right: 25px;
    padding-left: 0;
  }
  #order .confirm #comfirm button.navy {
    margin-left: calc(50% + 10px);
  }
}

@media screen and (max-width: 959px) {
  #order .identification #multi {
    margin-right: 20px;
    padding-right: 15px;
    padding-left: 15px;
  }
}

#customer_entry {
  /*==========
見出し
==========*/
  /*==========
form
==========*/
  /*==========
ログイン（FC用）
==========*/
  /*==========
フローチャート
==========*/
  /*==========
複数記事共通
==========*/
  /*==========
登録メール送信
==========*/
  /*==========
会員登録
==========*/
  /*==========
会員登録[入力]
==========*/
  /*==========
基本情報登録　入場時本人確認方法【顔写真付き身分証明書】,
基本情報登録　入場時本人確認方法【顔写真登録＋身分証明書(顔写真なし)】
==========*/
  /*==========
会員登録[確認]
==========*/
  /*==========
会員登録[完了]
==========*/
}

#customer_entry h1 {
  border-bottom: 1px solid #d2d2d2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #customer_entry h1 {
    margin-bottom: 24px;
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry h1 {
    margin-bottom: 16px;
    padding-bottom: 10px;
  }
}

#customer_entry h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  #customer_entry h2 {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry h2 {
    margin-bottom: 30px;
  }
}

@media print, screen and (min-width: 960px) {
  #customer_entry .formContainer {
    padding: 20px 0 90px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .formContainer {
    padding: 10px 0 50px;
  }
}

#customer_entry .login .lead p {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .login .lead {
    margin-bottom: 34px;
  }
  #customer_entry .login .lead p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .login .lead {
    margin-bottom: 16px;
  }
}

#customer_entry .login .inputBlock {
  border: 1px solid #d2d2d2;
}

#customer_entry .login .inputBlock .inputContainer .label {
  font-weight: 700;
}

#customer_entry .login .inputBlock .inputContainer input[type="text"] {
  width: 100%;
  padding: 0 10px;
  border: 1px solid;
  border-radius: 4px;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .login .inputBlock {
    width: 700px;
    margin: 0 auto 30px;
    padding: 25px 20px;
  }
  #customer_entry .login .inputBlock .inputContainer + .inputContainer {
    margin-top: 26px;
  }
  #customer_entry .login .inputBlock .inputContainer label {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
  }
  #customer_entry .login .inputBlock .inputContainer label > * {
    width: 50%;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  #customer_entry .login .inputBlock .inputContainer .label {
    line-height: 3.6rem;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  #customer_entry .login .inputBlock .inputContainer input[type="text"] {
    height: 3.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .login .inputBlock {
    margin-bottom: 28px;
    padding: 15px 15px 20px;
  }
  #customer_entry .login .inputBlock .inputContainer + .inputContainer {
    margin-top: 15px;
  }
  #customer_entry .login .inputBlock .inputContainer .label {
    padding-bottom: 8px;
    text-align: center;
    line-height: 2;
  }
  #customer_entry .login .inputBlock .inputContainer input[type="text"] {
    height: 3rem;
  }
}

#customer_entry .login .forget {
  font-weight: 700;
  text-align: center;
}

#customer_entry .login .forget a {
  color: #2854ae;
  line-height: 2;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .login .forget {
    margin-bottom: 40px;
  }
  #customer_entry .login .forget a {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .login .forget {
    margin-bottom: 28px;
  }
}

#customer_entry .login .button {
  text-align: center;
}

#customer_entry .login .button button {
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
}

#customer_entry .login .button button:after {
  align-items    : center;
  bottom         : 0;
  content        : '\f105';
  display        : flex;
  font-family    : fontAwesome;
  font-size      : 2rem;
  justify-content: center;
  position       : absolute;
  right          : 0;
  top            : 0;
  width          : 36px;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .login .button button {
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #customer_entry .login .button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .login .button button {
    width: 200px;
    padding: 16px 0;
    font-size: 1.8rem;
  }
}

#customer_entry #flowChart ol {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#customer_entry #flowChart li {
  overflow: hidden;
  text-align: center;
}

#customer_entry #flowChart li:last-of-type .arrow {
  width: 100%;
  border-right: 1px solid #cdcdcd;
}

#customer_entry #flowChart li:last-of-type .arrow:before {
  content: none;
}

#customer_entry #flowChart li:last-of-type .arrow span {
  padding-left: 0;
}

#customer_entry #flowChart li.current .arrow {
  border-color: #313145;
  background-color: #313145;
}

#customer_entry #flowChart li.current .arrow:before {
  border-color: #313145;
  background-color: #313145;
}

#customer_entry #flowChart li.current .arrow span {
  color: #fff;
}

#customer_entry #flowChart li.current .arrow span:before {
  background-color: #313145;
}

#customer_entry #flowChart .arrow {
  position: relative;
  border: 1px solid #cdcdcd;
  border-right: none;
  background-color: #fff;
}

#customer_entry #flowChart .arrow:before {
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 1px solid #cdcdcd;
  border-right: 1px solid #cdcdcd;
  background-color: #fff;
  content: "";
}

#customer_entry #flowChart .arrow span {
  display: block;
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #customer_entry #flowChart li {
    width: 190px;
  }
  #customer_entry #flowChart .arrow {
    width: 165px;
  }
  #customer_entry #flowChart .arrow:before {
    right: -25px;
    width: 50px;
    height: 50px;
    -webkit-transform: scaleX(0.71429) rotate(45deg);
    -moz-transform: scaleX(0.71429) rotate(45deg);
    -ms-transform: scaleX(0.71429) rotate(45deg);
    -o-transform: scaleX(0.71429) rotate(45deg);
    transform: scaleX(0.71429) rotate(45deg);
  }
  #customer_entry #flowChart .arrow span {
    position: relative;
    padding-left: 10px;
    font-size: 1.6rem;
    line-height: 6.8rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry #flowChart li {
    width: 20.28985507246377%;
  }
  #customer_entry #flowChart li:last-of-type {
    width: 18.84057971014493%;
  }
  #customer_entry #flowChart li:last-of-type .arrow span {
    width: 100%;
  }
  #customer_entry #flowChart .arrow {
    width: calc(100% - 18px);
    height: 74px;
  }
  #customer_entry #flowChart .arrow:before {
    right: -12.5px;
    width: 25px;
    height: 25px;
    -webkit-transform: scaleY(2.15) rotate(45deg);
    -moz-transform: scaleY(2.15) rotate(45deg);
    -ms-transform: scaleY(2.15) rotate(45deg);
    -o-transform: scaleY(2.15) rotate(45deg);
    transform: scaleY(2.15) rotate(45deg);
  }
  #customer_entry #flowChart .arrow span {
    position: absolute;
    top: 50%;
    width: calc(100% + 8px);
    font-size: 1.2rem;
    line-height: 1.7rem;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

#customer_entry .approval #button, #customer_entry .email #button, #customer_entry .with_photo #button, #customer_entry .face_photo #button, #customer_entry .confirm #button, #customer_entry .fin #button {
  text-align: center;
}

#customer_entry .approval #button a, #customer_entry .email #button a, #customer_entry .with_photo #button a, #customer_entry .face_photo #button a, #customer_entry .confirm #button a, #customer_entry .fin #button a, #customer_entry .approval #button button, #customer_entry .email #button button, #customer_entry .with_photo #button button, #customer_entry .face_photo #button button, #customer_entry .confirm #button button, #customer_entry .fin #button button {
  position: relative;
  border-radius: 4px;
  font-weight: 700;
}

#customer_entry .approval #button a:after, #customer_entry .email #button a:after, #customer_entry .with_photo #button a:after, #customer_entry .face_photo #button a:after, #customer_entry .confirm #button a:after, #customer_entry .fin #button a:after, #customer_entry .approval #button button:after, #customer_entry .email #button button:after, #customer_entry .with_photo #button button:after, #customer_entry .face_photo #button button:after, #customer_entry .confirm #button button:after, #customer_entry .fin #button button:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#customer_entry .approval #button a.white, #customer_entry .email #button a.white, #customer_entry .with_photo #button a.white, #customer_entry .face_photo #button a.white, #customer_entry .confirm #button a.white, #customer_entry .fin #button a.white, #customer_entry .approval #button button.white, #customer_entry .email #button button.white, #customer_entry .with_photo #button button.white, #customer_entry .face_photo #button button.white, #customer_entry .confirm #button button.white, #customer_entry .fin #button button.white {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

#customer_entry .approval #button a.white:before, #customer_entry .email #button a.white:before, #customer_entry .with_photo #button a.white:before, #customer_entry .face_photo #button a.white:before, #customer_entry .confirm #button a.white:before, #customer_entry .fin #button a.white:before, #customer_entry .approval #button button.white:before, #customer_entry .email #button button.white:before, #customer_entry .with_photo #button button.white:before, #customer_entry .face_photo #button button.white:before, #customer_entry .confirm #button button.white:before, #customer_entry .fin #button button.white:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

#customer_entry .approval #button a.white:after, #customer_entry .email #button a.white:after, #customer_entry .with_photo #button a.white:after, #customer_entry .face_photo #button a.white:after, #customer_entry .confirm #button a.white:after, #customer_entry .fin #button a.white:after, #customer_entry .approval #button button.white:after, #customer_entry .email #button button.white:after, #customer_entry .with_photo #button button.white:after, #customer_entry .face_photo #button button.white:after, #customer_entry .confirm #button button.white:after, #customer_entry .fin #button button.white:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

#customer_entry .approval #button a.navy, #customer_entry .email #button a.navy, #customer_entry .with_photo #button a.navy, #customer_entry .face_photo #button a.navy, #customer_entry .confirm #button a.navy, #customer_entry .fin #button a.navy, #customer_entry .approval #button button.navy, #customer_entry .email #button button.navy, #customer_entry .with_photo #button button.navy, #customer_entry .face_photo #button button.navy, #customer_entry .confirm #button button.navy, #customer_entry .fin #button button.navy {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

#customer_entry .approval #button a.navy:after, #customer_entry .email #button a.navy:after, #customer_entry .with_photo #button a.navy:after, #customer_entry .face_photo #button a.navy:after, #customer_entry .confirm #button a.navy:after, #customer_entry .fin #button a.navy:after, #customer_entry .approval #button button.navy:after, #customer_entry .email #button button.navy:after, #customer_entry .with_photo #button button.navy:after, #customer_entry .face_photo #button button.navy:after, #customer_entry .confirm #button button.navy:after, #customer_entry .fin #button button.navy:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #button, #customer_entry .email #button, #customer_entry .with_photo #button, #customer_entry .face_photo #button, #customer_entry .confirm #button, #customer_entry .fin #button {
    font-size: 0;
  }
  #customer_entry .approval #button a, #customer_entry .email #button a, #customer_entry .with_photo #button a, #customer_entry .face_photo #button a, #customer_entry .confirm #button a, #customer_entry .fin #button a, #customer_entry .approval #button button, #customer_entry .email #button button, #customer_entry .with_photo #button button, #customer_entry .face_photo #button button, #customer_entry .confirm #button button, #customer_entry .fin #button button {
    display: inline-block;
    width: 350px;
    padding: 20px 0;
    font-size: 2rem;
  }
  #customer_entry .approval #button a + a, #customer_entry .email #button a + a, #customer_entry .with_photo #button a + a, #customer_entry .face_photo #button a + a, #customer_entry .confirm #button a + a, #customer_entry .fin #button a + a, #customer_entry .approval #button button + a, #customer_entry .email #button button + a, #customer_entry .with_photo #button button + a, #customer_entry .face_photo #button button + a, #customer_entry .confirm #button button + a, #customer_entry .fin #button button + a, #customer_entry .approval #button a + button, #customer_entry .email #button a + button, #customer_entry .with_photo #button a + button, #customer_entry .face_photo #button a + button, #customer_entry .confirm #button a + button, #customer_entry .fin #button a + button, #customer_entry .approval #button button + button, #customer_entry .email #button button + button, #customer_entry .with_photo #button button + button, #customer_entry .face_photo #button button + button, #customer_entry .confirm #button button + button, #customer_entry .fin #button button + button {
    margin-left: 20px;
  }
  #customer_entry .approval #button a:hover, #customer_entry .email #button a:hover, #customer_entry .with_photo #button a:hover, #customer_entry .face_photo #button a:hover, #customer_entry .confirm #button a:hover, #customer_entry .fin #button a:hover, #customer_entry .approval #button button:hover, #customer_entry .email #button button:hover, #customer_entry .with_photo #button button:hover, #customer_entry .face_photo #button button:hover, #customer_entry .confirm #button button:hover, #customer_entry .fin #button button:hover {
    opacity: 0.66;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
    filter: alpha(opacity=66);
  }
  #customer_entry .approval #button a:after, #customer_entry .email #button a:after, #customer_entry .with_photo #button a:after, #customer_entry .face_photo #button a:after, #customer_entry .confirm #button a:after, #customer_entry .fin #button a:after, #customer_entry .approval #button button:after, #customer_entry .email #button button:after, #customer_entry .with_photo #button button:after, #customer_entry .face_photo #button button:after, #customer_entry .confirm #button button:after, #customer_entry .fin #button button:after {
    width: 10px;
    height: 10px;
  }
  #customer_entry .approval #button a.white:after, #customer_entry .email #button a.white:after, #customer_entry .with_photo #button a.white:after, #customer_entry .face_photo #button a.white:after, #customer_entry .confirm #button a.white:after, #customer_entry .fin #button a.white:after, #customer_entry .approval #button button.white:after, #customer_entry .email #button button.white:after, #customer_entry .with_photo #button button.white:after, #customer_entry .face_photo #button button.white:after, #customer_entry .confirm #button button.white:after, #customer_entry .fin #button button.white:after {
    left: 16px;
  }
  #customer_entry .approval #button a.navy:after, #customer_entry .email #button a.navy:after, #customer_entry .with_photo #button a.navy:after, #customer_entry .face_photo #button a.navy:after, #customer_entry .confirm #button a.navy:after, #customer_entry .fin #button a.navy:after, #customer_entry .approval #button button.navy:after, #customer_entry .email #button button.navy:after, #customer_entry .with_photo #button button.navy:after, #customer_entry .face_photo #button button.navy:after, #customer_entry .confirm #button button.navy:after, #customer_entry .fin #button button.navy:after {
    right: 16px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #button, #customer_entry .email #button, #customer_entry .with_photo #button, #customer_entry .face_photo #button, #customer_entry .confirm #button, #customer_entry .fin #button {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #customer_entry .approval #button a, #customer_entry .email #button a, #customer_entry .with_photo #button a, #customer_entry .face_photo #button a, #customer_entry .confirm #button a, #customer_entry .fin #button a, #customer_entry .approval #button button, #customer_entry .email #button button, #customer_entry .with_photo #button button, #customer_entry .face_photo #button button, #customer_entry .confirm #button button, #customer_entry .fin #button button {
    display: block;
    width: calc(50% - 8px);
    padding: 16px 0;
    font-size: 1.8rem;
  }
  #customer_entry .approval #button a:after, #customer_entry .email #button a:after, #customer_entry .with_photo #button a:after, #customer_entry .face_photo #button a:after, #customer_entry .confirm #button a:after, #customer_entry .fin #button a:after, #customer_entry .approval #button button:after, #customer_entry .email #button button:after, #customer_entry .with_photo #button button:after, #customer_entry .face_photo #button button:after, #customer_entry .confirm #button button:after, #customer_entry .fin #button button:after {
    width: 10px;
    height: 10px;
  }
  #customer_entry .approval #button a.white, #customer_entry .email #button a.white, #customer_entry .with_photo #button a.white, #customer_entry .face_photo #button a.white, #customer_entry .confirm #button a.white, #customer_entry .fin #button a.white, #customer_entry .approval #button button.white, #customer_entry .email #button button.white, #customer_entry .with_photo #button button.white, #customer_entry .face_photo #button button.white, #customer_entry .confirm #button button.white, #customer_entry .fin #button button.white {
    padding-left: 5px;
  }
  #customer_entry .approval #button a.white:after, #customer_entry .email #button a.white:after, #customer_entry .with_photo #button a.white:after, #customer_entry .face_photo #button a.white:after, #customer_entry .confirm #button a.white:after, #customer_entry .fin #button a.white:after, #customer_entry .approval #button button.white:after, #customer_entry .email #button button.white:after, #customer_entry .with_photo #button button.white:after, #customer_entry .face_photo #button button.white:after, #customer_entry .confirm #button button.white:after, #customer_entry .fin #button button.white:after {
    left: 20px;
  }
  #customer_entry .approval #button a.navy, #customer_entry .email #button a.navy, #customer_entry .with_photo #button a.navy, #customer_entry .face_photo #button a.navy, #customer_entry .confirm #button a.navy, #customer_entry .fin #button a.navy, #customer_entry .approval #button button.navy, #customer_entry .email #button button.navy, #customer_entry .with_photo #button button.navy, #customer_entry .face_photo #button button.navy, #customer_entry .confirm #button button.navy, #customer_entry .fin #button button.navy {
    padding-right: 5px;
  }
  #customer_entry .approval #button a.navy:after, #customer_entry .email #button a.navy:after, #customer_entry .with_photo #button a.navy:after, #customer_entry .face_photo #button a.navy:after, #customer_entry .confirm #button a.navy:after, #customer_entry .fin #button a.navy:after, #customer_entry .approval #button button.navy:after, #customer_entry .email #button button.navy:after, #customer_entry .with_photo #button button.navy:after, #customer_entry .face_photo #button button.navy:after, #customer_entry .confirm #button button.navy:after, #customer_entry .fin #button button.navy:after {
    right: 20px;
  }
  #customer_entry .fin #button {
    justify-content: center;
  }
}

@media screen and (max-width: 374px) {
  #customer_entry .approval #button a.white, #customer_entry .email #button a.white, #customer_entry .with_photo #button a.white, #customer_entry .face_photo #button a.white, #customer_entry .confirm #button a.white, #customer_entry .fin #button a.white, #customer_entry .approval #button button.white, #customer_entry .email #button button.white, #customer_entry .with_photo #button button.white, #customer_entry .face_photo #button button.white, #customer_entry .confirm #button button.white, #customer_entry .fin #button button.white {
    padding-left: 10px;
  }
  #customer_entry .approval #button a.white:after, #customer_entry .email #button a.white:after, #customer_entry .with_photo #button a.white:after, #customer_entry .face_photo #button a.white:after, #customer_entry .confirm #button a.white:after, #customer_entry .fin #button a.white:after, #customer_entry .approval #button button.white:after, #customer_entry .email #button button.white:after, #customer_entry .with_photo #button button.white:after, #customer_entry .face_photo #button button.white:after, #customer_entry .confirm #button button.white:after, #customer_entry .fin #button button.white:after {
    left: 12px;
  }
  #customer_entry .approval #button a.navy, #customer_entry .email #button a.navy, #customer_entry .with_photo #button a.navy, #customer_entry .face_photo #button a.navy, #customer_entry .confirm #button a.navy, #customer_entry .fin #button a.navy, #customer_entry .approval #button button.navy, #customer_entry .email #button button.navy, #customer_entry .with_photo #button button.navy, #customer_entry .face_photo #button button.navy, #customer_entry .confirm #button button.navy, #customer_entry .fin #button button.navy {
    padding-right: 10px;
  }
  #customer_entry .approval #button a.navy:after, #customer_entry .email #button a.navy:after, #customer_entry .with_photo #button a.navy:after, #customer_entry .face_photo #button a.navy:after, #customer_entry .confirm #button a.navy:after, #customer_entry .fin #button a.navy:after, #customer_entry .approval #button button.navy:after, #customer_entry .email #button button.navy:after, #customer_entry .with_photo #button button.navy:after, #customer_entry .face_photo #button button.navy:after, #customer_entry .confirm #button button.navy:after, #customer_entry .fin #button button.navy:after {
    right: 12px;
  }
}

#customer_entry .approval #guide p, #customer_entry .email #guide p, #customer_entry .confirm #guide p, #customer_entry .approval #guide li, #customer_entry .email #guide li, #customer_entry .confirm #guide li {
  line-height: 2.4rem;
}

#customer_entry .approval #guide li, #customer_entry .email #guide li, #customer_entry .confirm #guide li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #guide, #customer_entry .email #guide, #customer_entry .confirm #guide {
    padding: 35px 0;
  }
  #customer_entry .approval #guide p, #customer_entry .email #guide p, #customer_entry .confirm #guide p, #customer_entry .approval #guide li, #customer_entry .email #guide li, #customer_entry .confirm #guide li {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #guide, #customer_entry .email #guide, #customer_entry .confirm #guide {
    padding: 30px 0;
  }
}

#customer_entry .approval #input .note p, #customer_entry .email #input .note p, #customer_entry .confirm #confirm .note p {
  color: #cf2929;
  font-weight: 700;
}

#customer_entry .approval #input .table table, #customer_entry .email #input .table table, #customer_entry .confirm #confirm .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#customer_entry .approval #input .table th, #customer_entry .email #input .table th, #customer_entry .confirm #confirm .table th, #customer_entry .approval #input .table td, #customer_entry .email #input .table td, #customer_entry .confirm #confirm .table td {
  vertical-align: middle;
}

#customer_entry .approval #input .table tr + tr th, #customer_entry .email #input .table tr + tr th, #customer_entry .confirm #confirm .table tr + tr th, #customer_entry .approval #input .table tr + tr td, #customer_entry .email #input .table tr + tr td, #customer_entry .confirm #confirm .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#customer_entry .approval #input .table th, #customer_entry .email #input .table th, #customer_entry .confirm #confirm .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#customer_entry .approval #input .table th .required, #customer_entry .email #input .table th .required, #customer_entry .confirm #confirm .table th .required {
  color: #cf2929;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #input .note, #customer_entry .email #input .note, #customer_entry .confirm #confirm .note {
    margin-bottom: 20px;
  }
  #customer_entry .approval #input .note p, #customer_entry .email #input .note p, #customer_entry .confirm #confirm .note p {
    font-size: 1.6rem;
    line-height: 2;
  }
  #customer_entry .approval #input .table table, #customer_entry .email #input .table table, #customer_entry .confirm #confirm .table table {
    font-size: 1.6rem;
  }
  #customer_entry .approval #input .table th, #customer_entry .email #input .table th, #customer_entry .confirm #confirm .table th {
    padding: 14px 0;
    line-height: 3.2rem;
  }
  #customer_entry .approval #input .table td, #customer_entry .email #input .table td, #customer_entry .confirm #confirm .table td {
    padding: 30px 40px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #input .note, #customer_entry .email #input .note, #customer_entry .confirm #confirm .note {
    margin-bottom: 12px;
  }
  #customer_entry .approval #input .note p, #customer_entry .email #input .note p, #customer_entry .confirm #confirm .note p {
    line-height: 2.4rem;
  }
  #customer_entry .approval #input .table th, #customer_entry .email #input .table th, #customer_entry .confirm #confirm .table th {
    width: 88px;
    padding: 15px 0;
    line-height: 1.8rem;
  }
  #customer_entry .approval #input .table td, #customer_entry .email #input .table td, #customer_entry .confirm #confirm .table td {
    padding: 15px 20px;
  }
}

#customer_entry .send #guide p, #customer_entry .fin #guide p {
  line-height: 2.4rem;
}

#customer_entry .send #guide strong, #customer_entry .fin #guide strong {
  color: #cf2929;
}

#customer_entry .send #guide a, #customer_entry .fin #guide a {
  color: #2854ae;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .send #guide, #customer_entry .fin #guide {
    padding-top: 45px;
  }
  #customer_entry .send #guide p, #customer_entry .fin #guide p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .send #guide, #customer_entry .fin #guide {
    padding-top: 30px;
  }
}

#customer_entry .email #input .table table {
  table-layout: fixed;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #cdcdcd;
}

#customer_entry .email #input .table th, #customer_entry .email #input .table td {
  vertical-align: middle;
}

#customer_entry .email #input .table tr + tr th, #customer_entry .email #input .table tr + tr td {
  border-top: 1px solid #cdcdcd;
}

#customer_entry .email #input .table th {
  border-right: 1px solid #cdcdcd;
  background-color: #eee;
  text-indent: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}

#customer_entry .email #input .table th .required {
  color: #cf2929;
}

#customer_entry .email #input .table .termsOfService td p {
  line-height: 2.4rem;
}

#customer_entry .email #input .table .termsOfService td a {
  color: #2854ae;
}

#customer_entry .email #input .table .email td input {
  border: 1px solid;
  border-radius: 4px;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .email #input {
    margin-bottom: 55px;
  }
  #customer_entry .email #input .table th {
    width: 240px;
  }
  #customer_entry .email #input .table .termsOfService td p {
    margin-bottom: 15px;
  }
  #customer_entry .email #input .table .email input {
    width: 330px;
    height: 3.6rem;
    padding: 0 10px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .email #input {
    margin-bottom: 40px;
  }
  #customer_entry .email #input .table th {
    width: 88px;
    padding: 15px 0;
    line-height: 1.8rem;
  }
  #customer_entry .email #input .table td {
    padding: 15px 20px;
  }
  #customer_entry .email #input .table .termsOfService td p {
    margin-bottom: 12px;
  }
  #customer_entry .email #input .table .email input {
    width: 100%;
    height: 3rem;
    padding: 0 10px;
  }
}

#customer_entry .approval #input .input .inputContainer input {
  padding: 0 10px;
  border: 1px solid;
  border-radius: 4px;
}

#customer_entry .approval #input .input .inputContainer span {
  display: block;
  width: 34px;
  text-align: center;
}

#customer_entry .approval #input .input.birthday label {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
}

#customer_entry .approval #input .input.birthday input {
  text-align: right;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #input {
    margin-bottom: 55px;
  }
  #customer_entry .approval #input .table th {
    width: 280px;
  }
  #customer_entry .approval #input .input .inputContainer {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
  }
  #customer_entry .approval #input .input .inputContainer input {
    height: 3.6rem;
  }
  #customer_entry .approval #input .input.furigana input {
    width: 108px;
  }
  #customer_entry .approval #input .input.furigana input + input {
    margin-left: 12px;
  }
  #customer_entry .approval #input .input.birthday input {
    width: 95px;
  }
  #customer_entry .approval #input .input.birthday span {
    line-height: 3.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #input {
    margin-bottom: 40px;
  }
  #customer_entry .approval #input .table th > span {
    display: inline-block;
    position: relative;
    padding-right: 1em;
  }
  #customer_entry .approval #input .table th .required {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  #customer_entry .approval #input .input .inputContainer input {
    height: 3rem;
  }
  #customer_entry .approval #input .input .inputContainer span {
    line-height: 3rem;
  }
  #customer_entry .approval #input .input.furigana input {
    width: 100%;
  }
  #customer_entry .approval #input .input.furigana input + input {
    margin-top: 10px;
  }
  #customer_entry .approval #input .input.birthday label + label {
    margin-top: 10px;
  }
}

#customer_entry .approval #guide02 h3 {
  margin-bottom: 15px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

#customer_entry .approval #guide02 p {
  line-height: 2.4rem;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #guide02 {
    margin-bottom: 60px;
  }
  #customer_entry .approval #guide02 p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #guide02 {
    margin-bottom: 40px;
  }
}

@media print, screen and (min-width: 960px) {
  #customer_entry .approval #button button {
    position: relative;
    height: 120px;
    vertical-align: bottom;
  }
  #customer_entry .approval #button button span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    line-height: 3.6rem;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .approval #button {
    display: block;
  }
  #customer_entry .approval #button button {
    display: block;
    width: 100%;
    line-height: 3.2rem;
  }
  #customer_entry .approval #button button + button {
    margin-top: 25px;
  }
}

#customer_entry .with_photo #guide h3, #customer_entry .face_photo #guide h3 {
  font-weight: 700;
  line-height: 1.5;
}

#customer_entry .with_photo #guide p, #customer_entry .face_photo #guide p, #customer_entry .with_photo #guide li, #customer_entry .face_photo #guide li {
  line-height: 2.4rem;
}

#customer_entry .with_photo #guide li, #customer_entry .face_photo #guide li {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#customer_entry .with_photo #guide li strong, #customer_entry .face_photo #guide li strong {
  color: #cf2929;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .with_photo #guide, #customer_entry .face_photo #guide {
    padding: 35px 0;
  }
  #customer_entry .with_photo #guide h3, #customer_entry .face_photo #guide h3 {
    margin-bottom: 15px;
  }
  #customer_entry .with_photo #guide p, #customer_entry .face_photo #guide p, #customer_entry .with_photo #guide li, #customer_entry .face_photo #guide li {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .with_photo #guide, #customer_entry .face_photo #guide {
    padding: 30px 0;
  }
  #customer_entry .with_photo #guide h3, #customer_entry .face_photo #guide h3 {
    margin: 0 -0.5em;
    text-indent: 0.5em;
    line-height: 1.4;
  }
  #customer_entry .with_photo #guide h3 span, #customer_entry .face_photo #guide h3 span {
    margin: 0 -0.5em;
    font-size: 0.75em;
  }
}

@media screen and (min-width: 375px) {
  #customer_entry .with_photo #guide h3, #customer_entry .face_photo #guide h3 {
    margin-bottom: 16px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 374px) {
  #customer_entry .with_photo #guide h3, #customer_entry .face_photo #guide h3 {
    font-size: 1.6rem;
  }
}

#customer_entry .with_photo #select input, #customer_entry .face_photo #select input {
  display: none;
}

#customer_entry .with_photo #select input:checked + .selectContainer .summary:after, #customer_entry .face_photo #select input:checked + .selectContainer .summary:after {
  opacity: 1;
  -ms-filter: none;
  -webkit-filter: none;
  filter: none;
}

#customer_entry .with_photo #select ul, #customer_entry .face_photo #select ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  border: 1px solid #cdcdcd;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -o-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#customer_entry .with_photo #select li, #customer_entry .face_photo #select li {
  margin-bottom: -1px;
  border-bottom: 1px solid #cdcdcd;
}

#customer_entry .with_photo #select .selectContainer, #customer_entry .face_photo #select .selectContainer {
  width: 100%;
  text-align: center;
}

#customer_entry .with_photo #select .select, #customer_entry .face_photo #select .select {
  display: block;
  height: 100%;
}

#customer_entry .with_photo #select .summary, #customer_entry .face_photo #select .summary {
  display: inline-block;
  position: relative;
  text-align: left;
}

#customer_entry .with_photo #select .summary:before, #customer_entry .face_photo #select .summary:before, #customer_entry .with_photo #select .summary:after, #customer_entry .face_photo #select .summary:after {
  display: block;
  position: absolute;
  border-radius: 50%;
  content: "";
}

#customer_entry .with_photo #select .summary:before, #customer_entry .face_photo #select .summary:before {
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 2px solid #cdcdcd;
}

#customer_entry .with_photo #select .summary:after, #customer_entry .face_photo #select .summary:after {
  left: 4px;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

#customer_entry .with_photo #select strong, #customer_entry .face_photo #select strong {
  padding-top: 1.5em;
  padding-left: 1.05em;
  color: #cf2929;
  text-indent: -1.05em;
  text-align: left;
}

#customer_entry .with_photo__select__error-messages {
  margin-bottom: 1rem;
}

@media print, screen and (min-width: 960px) {
  #customer_entry .with_photo #select, #customer_entry .face_photo #select {
    margin-bottom: 60px;
  }
  #customer_entry .with_photo #select ul:after, #customer_entry .face_photo #select ul:after {
    display: block;
    content: "";
    -webkit-flex-basis: 319px;
    -ms-flex-preferred-size: 319px;
    flex-basis: 319px;
  }
  #customer_entry .with_photo #select li, #customer_entry .face_photo #select li {
    border-right: 1px solid #cdcdcd;
    -webkit-flex-basis: 319px;
    -ms-flex-preferred-size: 319px;
    flex-basis: 319px;
  }
  #customer_entry .with_photo #select li:nth-of-type(3n), #customer_entry .face_photo #select li:nth-of-type(3n) {
    border-right: none;
  }
  #customer_entry .with_photo #select li:nth-of-type(3n+2), #customer_entry .face_photo #select li:nth-of-type(3n+2) {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  #customer_entry .with_photo #select .selectContainer, #customer_entry .face_photo #select .selectContainer {
    padding: 24px 0;
  }
  #customer_entry .with_photo #select .select img, #customer_entry .face_photo #select .select img {
    pointer-events: none;
  }
  #customer_entry .with_photo #select .summary, #customer_entry .face_photo #select .summary {
    height: 5.2rem;
    margin-bottom: 10px;
    padding-left: 25px;
  }
  #customer_entry .with_photo #select .summary:before, #customer_entry .face_photo #select .summary:before {
    top: 5px;
  }
  #customer_entry .with_photo #select .summary:after, #customer_entry .face_photo #select .summary:after {
    top: 9px;
  }
  #customer_entry .with_photo #select .summary p, #customer_entry .face_photo #select .summary p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  #customer_entry .with_photo #select strong, #customer_entry .face_photo #select strong {
    display: inline-block;
    line-height: 2.2rem;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .with_photo #select, #customer_entry .face_photo #select {
    margin-bottom: 40px;
  }
  #customer_entry .with_photo #select li, #customer_entry .face_photo #select li {
    width: 50%;
  }
  #customer_entry .with_photo #select li:nth-of-type(odd), #customer_entry .face_photo #select li:nth-of-type(odd) {
    border-right: 1px solid #cdcdcd;
  }
  #customer_entry .with_photo #select li:nth-of-type(n+3), #customer_entry .face_photo #select li:nth-of-type(n+3) {
    border-top: 1px solid #cdcdcd;
  }
  #customer_entry .with_photo #select .selectContainer, #customer_entry .face_photo #select .selectContainer {
    position: relative;
    height: 100%;
    padding: 15px 18px;
  }
  #customer_entry .with_photo #select .selectContainer:after, #customer_entry .face_photo #select .selectContainer:after {
    display: block;
    padding-top: calc(77.77777777777777% + 5px);
    content: "";
  }
  #customer_entry .with_photo #select .selectContainer.detail .image, #customer_entry .face_photo #select .selectContainer.detail .image {
    position: static;
    width: auto;
    margin: 10px -15px 0;
  }
  #customer_entry .with_photo #select .selectContainer.detail:after, #customer_entry .face_photo #select .selectContainer.detail:after {
    content: none;
  }
  #customer_entry .with_photo #select .summary, #customer_entry .face_photo #select .summary {
    max-width: 100%;
    padding-left: 25px;
  }
  #customer_entry .with_photo #select .summary:before, #customer_entry .face_photo #select .summary:before, #customer_entry .with_photo #select .summary:after, #customer_entry .face_photo #select .summary:after {
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  #customer_entry .with_photo #select .summary p, #customer_entry .face_photo #select .summary p {
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
  #customer_entry .with_photo #select .image, #customer_entry .face_photo #select .image {
    position: absolute;
    bottom: 15px;
    left: 0;
    width: 100%;
    padding: 0 18px;
  }
  #customer_entry .with_photo #select .image img, #customer_entry .face_photo #select .image img {
    max-width: 100%;
  }
  #customer_entry .with_photo #select strong, #customer_entry .face_photo #select strong {
    display: block;
    font-size: 1.1rem;
    line-height: 1.5rem;
  }
}

@media print, screen and (min-width: 960px) {
  #customer_entry .confirm #confirm {
    margin-bottom: 55px;
  }
  #customer_entry .confirm #confirm .table th {
    width: 280px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .confirm #confirm {
    margin-bottom: 40px;
  }
  #customer_entry .confirm #confirm .table th.sp_indent > span {
    display: inline-block;
    position: relative;
    padding-right: 1em;
  }
  #customer_entry .confirm #confirm .table th.sp_indent .required {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

@media print, screen and (min-width: 960px) {
  #customer_entry .fin #guide {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #customer_entry .fin #guide {
    margin-bottom: 40px;
  }
}

#after_show {
  /*==========
after_show
==========*/
  /*==========
as_top
==========*/
  /*==========
as_input
==========*/
  /*==========
as_input(confirm)
==========*/
  /*==========
as_fin
==========*/
}

#after_show #container {
  text-align: justify;
}

#after_show #container .fr {
  float: right;
}

#after_show #container .fl {
  float: left;
}

#after_show #container .red {
  color: #cf2929;
}

#after_show #container button:hover {
  opacity: 0.66;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
  filter: alpha(opacity=66);
}

@media print, screen and (min-width: 960px) {
  #after_show .pagenation {
    padding: 30px 0;
  }
  #after_show .selectbox {
    margin: 30px 0;
  }
  #after_show .pagenation ul.inner {
    margin: auto;
  }
  #after_show #container .fl_pc {
    float: left;
  }
  #after_show #container .fr_pc {
    float: right;
  }
}

@media screen and (max-width: 959px) {
  #after_show .pagenation {
    width: 100%;
    padding: 20px 0 0;
  }
  #after_show .selectbox {
    width: 100%;
    margin: 20px 0 0;
  }
  #after_show img {
    width: 100%;
  }
}

#after_show #container p.notice {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#after_show #container ul li.notice {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #after_show #as_inputTop ul li {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 959px) {
  #after_show #as_inputTop ul li {
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #after_show #container nav {
    display: block !important;
  }
}

#after_show h1 {
  font-weight: 700;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #d2d2d2;
}

#after_show input,
#after_show textarea {
  border: solid 1px #000;
  border-radius: 5px;
}

@media print, screen and (min-width: 960px) {
  #after_show h1 {
    font-size: 2.0rem;
    line-height: 4.2rem;
    padding-bottom: 6px;
    margin-bottom: 20px;
  }
  #after_show h2 {
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  #after_show p {
    margin-bottom: .5rem;
  }
  #after_show ul li p {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #after_show h1 {
    font-size: 2.0rem;
    line-height: 2.8rem;
    padding-bottom: .6rem;
    margin-bottom: 2rem;
  }
  #after_show h2 {
    font-size: 1.4rem;
    margin-bottom: 1rem;
    margin-left: -.6rem;
  }
  #after_show p {
    margin-bottom: .5rem;
  }
  #after_show ul li p {
    margin-bottom: 0;
  }
}

#after_show #button {
  text-align: center;
}

#after_show #button button {
  border: solid 1px #000;
  border-radius: 4px;
  text-align: center;
  position: relative;
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: .2em;
}

#after_show #button button.white {
  background-color: #fff;
  color: #000;
  -webkit-box-shadow: inset 0 -3px black;
  box-shadow: inset 0 -3px black;
}

#after_show #button button.white:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  content: "";
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
  left: 12px;
}

#after_show #button button.navy {
  background-color: #313145;
  color: #fff;
  -webkit-box-shadow: inset 0 -3px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -3px rgba(0, 0, 0, 0.2);
}

#after_show #button button.navy:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 12px;
}

@media print, screen and (min-width: 960px) {
  #after_show #button {
    margin: 40px auto 30px;
  }
  #after_show #button button {
    width: 350px;
    height: 55px;
    margin: 10px;
    font-size: 2.0rem;
  }
  #after_show #button button:after {
    width: 12px;
    height: 12px;
  }
  #after_show #container.as_input {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #after_show #button button {
    width: 42vw;
    height: 12vw;
    margin: 5vw 0;
    font-size: 1.7rem;
  }
  #after_show #button button:after {
    width: 10px;
    height: 10px;
  }
  #after_show #button button + button {
    margin-left: 4vw;
  }
}

#after_show #container.as_top #asTop {
  text-align: center;
}

#after_show #container.as_top #asTop h1 {
  border: none;
}

#after_show #container.as_top #asList {
  clear: both;
}

#after_show #container.as_top #asfooter .pagenation {
  text-align: right;
}

#after_show #container.as_top #asfooter .pagenation ul {
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #after_show #asTop {
    padding: 42px 0 0;
  }
  #after_show #container.as_top #asTop h1 {
    font-size: 3.0rem;
    margin-bottom: 64px;
  }
  #after_show #container.as_top #asTop p:nth-of-type(1) {
    font-size: 2.0rem;
    font-weight: 700;
    margin-bottom: 28px;
  }
  #after_show #container.as_top #asTop p:nth-of-type(2) {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_top #asTop h1 {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
  #after_show #container.as_top #asTop p:nth-of-type(1) {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 2.5rem;
    margin-bottom: 28px;
  }
  #after_show #container.as_top #asTop p:nth-of-type(2) {
    font-size: 1.2rem;
    margin-bottom: 28px;
  }
}

#after_show #container.as_top .aspost {
  display: block;
  position: relative;
  border-radius: 4px;
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: .2em;
}

#after_show #container.as_top .aspost span {
  color: #fff;
}

#after_show #container.as_top .aspost:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#after_show #container.as_top .aspost:after {
  width: 12px;
  height: 12px;
  right: 12px;
}

@media print, screen and (min-width: 960px) {
  #after_show #container.as_top .aspost {
    width: 380px;
    margin: 60px auto;
    font-size: 2rem;
  }
  #after_show #container.as_top .aspost a {
    padding: 22px 0;
    display: block;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_top .aspost {
    margin: 3vw auto;
    font-size: 1.6rem;
  }
  #after_show #container.as_top .aspost a {
    padding: 16px 0;
    display: block;
  }
}

#after_show #container.as_top #asList {
  background-color: #fff;
  display: block;
  position: relative;
}

#after_show #container.as_top #asList ul li {
  border-bottom: none;
  clear: both;
}

#after_show #container.as_top #asList ul li:nth-of-type(2n+1) {
  background-color: #f7f8f8;
}

#after_show #container.as_top #asList ul li .inner {
  min-height: 74px;
}

#after_show #container.as_top #asList .title,
#after_show #container.as_top #asList .place {
  font-weight: 700;
}

#after_show #container.as_top #asList .voice input {
  border: 1px solid #000;
  border-radius: 3px;
  font-size: 1.2rem;
  line-height: 1.2rem;
  padding: 4px 6px;
  font-weight: 700;
  margin-right: 8px;
}

#after_show #container.as_top #asList .date {
  color: #969696;
  text-align: right;
  clear: both;
}

@media print, screen and (min-width: 960px) {
  #after_show #container.as_top #asList {
    padding: 0 0 18px;
    font-size: 0;
  }
  #after_show #container.as_top #asList ul li {
    padding: 28px 0;
  }
  #after_show #container.as_top #asList > * {
    font-size: 1.4rem;
    line-height: 2.2rem;
  }
  #after_show #container.as_top #asList .title {
    font-size: 1.6rem;
    line-height: 2rem;
    margin-bottom: 10px;
  }
  #after_show #container.as_top #asList .thumb {
    margin-right: 30px;
  }
  #after_show #container.as_top #asList .place {
    margin-top: -32px;
  }
  #after_show #container.as_top #asList .voice {
    width: 856px;
    float: right;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_top #asList {
    padding: 0;
  }
  #after_show #container.as_top #asList ul li {
    padding: 26px 0;
  }
  #after_show #container.as_top #asList > * {
    padding: 0;
    font-size: 1.2rem;
    line-height: 2.0rem;
  }
  #after_show #container.as_top #asList .title {
    font-size: 1.4rem;
    line-height: 2.3rem;
    margin-bottom: 10px;
  }
  #after_show #container.as_top #asList .thumb {
    margin-right: 16px;
    width: 13vw;
    height: 13vw;
  }
  #after_show #container.as_top #asList .title {
    line-height: 2.5rem;
  }
  #after_show #container.as_top #asList .place {
    font-size: 1.2rem;
    line-height: 3rem;
  }
  #after_show #container.as_top #asList .date {
    margin-top: 8px;
  }
  #after_show #container.as_top #asList .date,
  #after_show #container.as_top #asList .voice span {
    font-size: 1.1rem;
  }
}

@media print, screen and (min-width: 960px) {
  #after_show #container.as_input #asInputTop {
    margin-bottom: 30px;
  }
  #after_show #container.as_input #asInputTop ul li {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-bottom: 12px;
  }
  #after_show #container.as_input #asInputTop ul li ul li {
    line-height: 2.2rem;
    padding-bottom: 0;
  }
  #after_show #container.as_input #asInputTop p {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_input #asInputTop {
    margin-bottom: 30px;
  }
  #after_show #container.as_input #asInputTop ul li {
    font-size: 1.2rem;
    line-height: 2.0rem;
    padding-bottom: 12px;
  }
  #after_show #container.as_input #asInputTop ul li ul li {
    padding-bottom: 0;
  }
  #after_show #container.as_input #asInputTop p {
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
}

#after_show #container.as_input #asInputCont table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#after_show #container.as_input #asInputCont table th,
#after_show #container.as_input #asInputCont table td {
  display: table-cell;
  vertical-align: middle;
}

#after_show #container.as_input #asInputCont table th:first-of-type,
#after_show #container.as_input #asInputCont table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#after_show #container.as_input #asInputCont table th {
  text-align: center;
  background-color: #eeeeee;
}

#after_show #container.as_input #asInputCont table th {
  padding: 15px 0;
}

#after_show #container.as_input #asInputCont table td {
  padding: 15px;
  text-align: left;
}

#after_show .radio .label {
  font-weight: 700;
}

#after_show .radio .label:after {
  top: 1px;
  left: 1px;
  width: 1.6rem;
  height: 1.6rem;
  border: 2px solid #cdcdcd;
}

#after_show table input,
#after_show table textarea {
  border: solid 1px #000;
}

#after_show table p.notice {
  clear: both;
}

#after_show table input,
#after_show table textarea {
  width: 100%;
}

@media print, screen and (min-width: 960px) {
  #after_show {
    /*select::-ms-expand {
		display: none;
	}*/
  }
  #after_show #container.as_input #asInputCont table th,
  #after_show #container.as_input #asInputCont table td {
    font-size: 1.6rem;
    line-height: 2.3rem;
  }
  #after_show #container.as_input #asInputCont table td .notice {
    font-size: 1.4rem;
    line-height: 2.2rem;
  }
  #after_show #container.as_input #asInputCont table {
    margin: 10px 0;
    width: 100%;
  }
  #after_show #container.as_input #asInputCont table th {
    width: 280px;
  }
  #after_show .rdo .radio .label {
    font-size: 1.6rem;
    margin-top: 2px;
  }
  #after_show .rdo2 .radio .label {
    font-size: 1.6rem;
    margin-top: 8px;
  }
  #after_show table input[type="text"],
  #after_show table textarea {
    padding: 4px;
    width: 100%;
  }
  #after_show table textarea {
    height: 130px;
  }
  #after_show table .selectbox {
    padding: 4px 8px;
    margin: 4px 0;
  }
  #after_show table .selectbox {
    min-width: 200px;
  }
  #after_show table .selectbox:last-of-type {
    width: 100%;
  }
  #after_show table .rdo p,
  #after_show table .rdo2 p {
    margin-right: 16px;
  }
  #after_show #container.as_input #asInputCont tr.icons td {
    padding-bottom: 36px;
  }
  #after_show tr:nth-of-type(5) td {
    text-align: center;
  }
  #after_show tr td .radio .label {
    padding: 0 25px;
  }
  #after_show tr:nth-of-type(5) td .radio .label:before {
    top: 82px;
    left: 53px;
  }
  #after_show tr:nth-of-type(5) td .radio .label:after {
    top: 83px;
    left: 54px;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_input #asInputCont p {
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #after_show #container.as_input #asInputCont table th {
    width: 26vw;
  }
  #after_show #container.as_input #asInputCont table td .notice {
    font-size: 1.2rem;
    line-height: 2rem;
  }
  #after_show .radio .label {
    font-size: 1.4rem;
    margin-bottom: 10px;
    padding: 0 20px;
  }
  #after_show table input[type="text"],
  #after_show table textarea {
    padding: 4px;
  }
  #after_show table textarea {
    height: 60vw;
  }
  #after_show tr:nth-of-type(5) td img {
    width: 55px;
    height: auto;
  }
  #after_show tr:nth-of-type(5) td .radio .label {
    margin-right: 3vw;
    padding: 0;
  }
  #after_show tr:nth-of-type(5) td .radio .label {
    margin-bottom: 36px;
  }
  #after_show tr:nth-of-type(5) td .radio .label:before {
    top: 63px;
    left: 20px;
  }
  #after_show tr:nth-of-type(5) td .radio .label:after {
    top: 64px;
    left: 21px;
  }
}

#after_show .isAns {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #after_show .ans {
    line-height: 4rem;
  }
}

#after_show #container.as_fin #asFinTop .finmsg {
  text-align: center;
  border: solid 1px #d2d2d2;
}

#after_show #container.as_fin #asFinTop .backtotop {
  font-weight: bold;
  text-align: center;
}

#after_show #container.as_fin #asFinTop .backtotop a {
  position: relative;
}

#after_show #container.as_fin #asFinTop .backtotop a:before {
  display: block;
  position: absolute;
  margin: auto 0;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  content: "";
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
}

@media print, screen and (min-width: 960px) {
  #after_show #container.as_fin #asFinTop {
    margin-bottom: 30px;
  }
  #after_show #container.as_fin #asFinTop p {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #after_show #container.as_fin #asFinTop .finmsg {
    padding: 20px;
    margin: 30px 0;
  }
  #after_show #container.as_fin #asFinTop .backtotop {
    margin: 60px 0;
  }
  #after_show #container.as_fin #asFinTop .backtotop a:before {
    width: 12px;
    height: 12px;
    top: 7px;
    left: -20px;
  }
}

@media screen and (max-width: 959px) {
  #after_show #container.as_fin #asFinTop {
    margin-bottom: 30px;
  }
  #after_show #container.as_fin #asFinTop p {
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #after_show #container.as_fin #asFinTop .finmsg {
    padding: 15px;
    margin: 30px 0;
  }
  #after_show #container.as_fin #asFinTop .backtotop {
    margin: 30px 0;
  }
  #after_show #container.as_fin #asFinTop .backtotop a:before {
    width: 12px;
    height: 12px;
    top: 5.5px;
    left: -20px;
  }
}

#goods {
  /*==========
goods
==========*/
  /*==========
goods_top
==========*/
  /*==========
goods_detail
==========*/
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont {
    margin-top: 24px;
  }
  #goods #goodsInfo {
    margin-bottom: 68px;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsCont {
    margin-top: 16px;
  }
  #goods #goodsInfo {
    margin-bottom: 30px;
  }
}

#goods #goodsCont h1,
#goods #goodsInfo h2 {
  font-weight: 700;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #d2d2d2;
}

#goods #goodsInfo h3 {
  font-weight: 700;
}

#goods #goodsInfo .notice {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont h1,
  #goods #goodsInfo h2 {
    font-size: 2rem;
    padding-bottom: 16px;
  }
  #goods #goodsInfo h2 {
    margin: 60px 0 16px;
  }
  #goods #goodsInfo h3 {
    margin-top: 24px;
  }
  #goods #goodsInfo .notice {
    font-size: 1.5rem;
  }
  #goods #goodsInfo .rsinfo {
    line-height: 3rem;
  }
  #goods #goodsInfo .rsinfo span {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 959px) {
  #goods h1,
  #goods #goodsInfo h2 {
    font-size: 2rem;
    padding-bottom: 2vw;
  }
  #goods #goodsInfo h2 {
    margin: 40px 0 16px;
  }
  #goods #goodsInfo h3 {
    margin-top: 24px;
  }
  #goods #goodsInfo .notice {
    font-size: 1.2rem;
  }
  #goods #goodsInfo .notice {
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
}

#goods #goodsCont #goodsList ul li {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont #goodsList ul li + li {
    margin-left: 34px;
  }
  #goods #goodsCont #goodsList ul li:nth-of-type(4n+1) {
    margin-left: 0;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn {
    width: 210px;
    position: relative;
    font-size: 1.6rem;
    line-height: 2.3rem;
    margin-bottom: 24px;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn.new:before {
    content: 'NEW';
    display: block;
    padding: 5px;
    width: 42px;
    height: 24px;
    background-color: #e22222;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gimg {
    padding: 17px 0;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gname {
    margin-bottom: 5px;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .price {
    margin-bottom: 20px;
    font-weight: 700;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .price span {
    font-size: 70%;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gimg img {
    width: 100%;
  }
  #goods #goodsCont #goodsList .goodsColumn a.gbtn {
    display: inline-block;
    position: relative;
    background-color: #1d1d1d;
    color: #fff;
    width: 100%;
    height: 36px;
    border-radius: 4px;
    padding: 6px 0;
    font-size: 1.6rem;
    text-align: center;
  }
  #goods #goodsCont .ginfo01 {
    text-align: center;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsCont #goodsList ul li + li {
    margin-left: 2.5vw;
  }
  #goods #goodsCont #goodsList ul li:nth-of-type(2n+1) {
    margin-left: 0;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn {
    width: 43vw;
    position: relative;
    font-size: 1.4rem;
    line-height: 2.3rem;
    margin-bottom: 24px;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn.new:before {
    content: 'NEW';
    display: block;
    padding: 5px;
    width: 42px;
    height: 24px;
    background-color: #e22222;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gimg {
    padding: 17px 0;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gname {
    margin-bottom: 5px;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .price {
    margin-bottom: 20px;
    font-weight: 700;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .price span {
    font-size: 80%;
  }
  #goods #goodsCont #goodsList ul li .goodsColumn .gimg img {
    width: 100%;
  }
  #goods #goodsCont #goodsList .goodsColumn a.gbtn {
    display: inline-block;
    position: relative;
    background-color: #1d1d1d;
    color: #fff;
    width: 100%;
    height: 36px;
    border-radius: 4px;
    padding: 6px 0;
    font-size: 1.4rem;
    text-align: center;
  }
  #goods #goodsCont .ginfo01 {
    text-align: center;
    font-weight: 700;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont #goodsList {
    padding: 36px 0;
  }
  #goods #goodsCont #goodsList a {
    padding: 26px 0 18px;
  }
  #goods #goodsCont #goodsList a > * {
    font-size: 1.6rem;
    line-height: 2;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsCont #goodsList {
    padding: 16px 0;
  }
  #goods #goodsCont #goodsList a {
    padding: 20px 0;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
}

@media print, screen and (min-width: 960px) {
  #goods #goodsInfo {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsInfo {
    font-size: 1.2rem;
    line-height: 2.0rem;
  }
}

#goods #goodsCont #goodsDetail #gr .gname,
#goods #goodsCont #goodsDetail #gr .price,
#goods #goodsCont #goodsDetail #gr h3 {
  font-weight: 700;
}

#goods #goodsCont #goodsDetail #gr .gname {
  display: block;
  width: auto;
}

#goods #goodsCont #goodsDetail #gr .gname.new:before {
  content: 'NEW';
  display: block;
  line-height: 1;
  background-color: #e22222;
  color: #fff;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont #goodsDetail {
    padding: 32px 0;
  }
  #goods #goodsCont #gl,
  #goods #goodsCont #gr {
    float: left;
  }
  #goods #goodsCont #goodsDetail #gl {
    width: 460px;
    margin-right: 50px;
  }
  #goods #goodsCont #goodsDetail #gr {
    width: 450px;
  }
  #goods #goodsCont #gl .gimg_o {
    margin-bottom: 20px;
    height: 460px;
  }
  #goods #goodsCont #gl ul li {
    width: 80px;
    display: inline-block;
    margin-right: 9px;
    margin-bottom: 12px;
  }
  #goods #goodsCont #gl ul li:last-of-type {
    margin-right: 0;
  }
  #goods #goodsCont #gl ul li .thumbnail {
    border: 1px solid #aaa;
  }
  #goods #goodsCont #gl img {
    width: 100%;
  }
  #goods #goodsCont #goodsDetail #gr .gname.new:before {
    padding: 5px;
    width: 42px;
    height: 24px;
    font-size: 1.3rem;
    margin-bottom: 16px;
  }
  #goods #goodsCont #goodsDetail #gr .gname,
  #goods #goodsCont #goodsDetail #gr .price {
    font-size: 1.6rem;
  }
  #goods #goodsCont #goodsDetail #gr .size,
  #goods #goodsCont #goodsDetail #gr .goodsText {
    font-size: 1.4rem;
    line-height: 2.2rem;
    text-align: justify;
  }
  #goods #goodsCont #goodsDetail #gr .goodsText .notice,
  #goods #goodsCont #goodsDetail #gr .goodsText .notice2 {
    font-size: 1.3rem;
    line-height: 2.1rem;
    margin-bottom: 0;
  }
  #goods #goodsCont #goodsDetail #gr .goodsText .notice {
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #goods #goodsCont #goodsDetail #gr .gname {
    margin-bottom: 18px;
  }
  #goods #goodsCont #goodsDetail #gr .price,
  #goods #goodsCont #goodsDetail #gr .size {
    margin-bottom: 28px;
  }
  #goods #goodsCont #goodsDetail .goodsText p {
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsCont #goodsDetail {
    padding: 8vw 0;
  }
  #goods #goodsCont #goodsDetail h3 {
    font-size: 1.2rem;
  }
  #goods #goodsCont #goodsDetail #gl {
    /*width:460px;
		margin-right: 50px;*/
    margin-bottom: 20vw;
  }
  #goods #goodsCont #goodsDetail #gr {
    /*width:450px;*/
  }
  #goods #goodsCont #gl .gimg_o {
    padding-bottom: 10vw;
    height: 100vw;
  }
  #goods #goodsCont #gl ul li {
    width: 15.6vw;
    display: inline-block;
    margin-right: 1.8vw;
  }
  #goods #goodsCont #gl ul li:last-of-type {
    margin-right: 0;
  }
  #goods #goodsCont #gl ul li .thumbnail {
    border: 1px solid #aaa;
  }
  #goods #goodsCont #gl img {
    width: 100%;
  }
  #goods #goodsCont #goodsDetail #gr .gname.new:before {
    padding: 2vw;
    width: 13vw;
    height: 7vw;
    font-size: 1.1rem;
    margin-bottom: 16px;
  }
  #goods #goodsCont #goodsDetail #gr .gname,
  #goods #goodsCont #goodsDetail #gr .price {
    font-size: 1.4rem;
  }
  #goods #goodsCont #goodsDetail #gr .size,
  #goods #goodsCont #goodsDetail #gr .goodsText {
    font-size: 1.2rem;
    line-height: 2rem;
    text-align: justify;
  }
  #goods #goodsCont #goodsDetail #gr .goodsText .notice,
  #goods #goodsCont #goodsDetail #gr .goodsText .notice2 {
    margin-bottom: 0;
  }
  #goods #goodsCont #goodsDetail #gr .goodsText .notice {
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #goods #goodsCont #goodsDetail #gr .gname {
    margin-bottom: 18px;
  }
  #goods #goodsCont #goodsDetail #gr .price,
  #goods #goodsCont #goodsDetail #gr .size {
    margin-bottom: 28px;
  }
  #goods #goodsCont #goodsDetail .goodsText p {
    margin-bottom: 2.4rem;
  }
  #goods #goodsCont #goodsDetail .goodsText {
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #goods #goodsCont #goodsDetail .title {
    line-height: 2.8rem;
    margin-bottom: 2.4rem;
  }
  #goods #goodsCont #goodsDetail .goodsText {
    margin-bottom: 1rem;
  }
  #goods #goodsCont #goodsDetail .goodsText p {
    margin-bottom: 2.3rem;
  }
}

#goods #goodsCont #goodsDetail #goodsArchive {
  clear: both;
}

#goods #goodsCont #goodsDetail #goodsArchive a:before {
  width: 12px;
  height: 12px;
}

#goods #goodsCont #goodsDetail #goodsArchive a {
  display: inline-block;
  position: relative;
  line-height: 2;
  letter-spacing: 0.1em;
  padding-left: 20px;
  font-weight: 700;
  font-size: 1.6rem;
}

#goods #goodsCont #goodsDetail #goodsArchive a:before {
  display: block;
  position: absolute;
  top: 0;
  left: 5px;
  bottom: 0;
  margin: auto 0;
  border-top: 2px solid;
  border-right: 2px solid;
  content: "";
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
}

@media print, screen and (min-width: 960px) {
  #goods #goodsCont #goodsDetail #goodsArchive {
    padding-top: 80px;
  }
}

@media screen and (max-width: 959px) {
  #goods #goodsCont #goodsDetail #goodsArchive {
    padding-top: 8vw;
  }
}

#goods #goodsCont #goodsDetail #gr .sizetable {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;
  margin: 16px 0;
  border: 1px solid #d2d2d2;
  word-break: break-all;
}

#goods #goodsCont #goodsDetail #gr .sizetable tr:first-child th, #goods #goodsCont #goodsDetail #gr .sizetable tr:first-child td {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}

#goods #goodsCont #goodsDetail #gr .sizetable th, #goods #goodsCont #goodsDetail #gr .sizetable td {
  padding: 0.5em 0.33em;
  border: 1px solid #d2d2d2;
  line-height: 1.1;
  vertical-align: middle;
}

#goods #goodsCont #goodsDetail #gr .sizetable th {
  padding-right: 0;
  padding-left: 0;
  background: #EEEEEE;
  text-align: center;
}

#goods #goodsCont #goodsDetail #gr .sizetable td[colspan] {
  text-align: center;
}

#mp {
  /*==========
mp
==========*/
  /*==========
mp_admguide
==========*/
  /*==========
mp_fguide
==========*/
  /*==========
mp_cguide
==========*/
  /*==========
mp_appguide
==========*/
  /*---0516
#container.appguide h2:after{
	content:"";
	background: no-repeat center / contain url("https://sh-otr2023.jp/images/mp/img_app_plus.png");
	position: absolute;
	width:22px;
	height:22px;
	right:15px;
}
*/
  /*==========
mp_tokuteisho
==========*/
  /*==========
mp_policy
==========*/
  /*==========
mp_caution
==========*/
  /*==========
mp_beginner
==========*/
}

#mp #container {
  text-align: justify;
}

#mp #container ul, #mp #container ol {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#mp #container #breadcrumb ul {
  margin-left: 0;
  padding-left: 0;
  text-indent: 0;
}

#mp #container #mpCont01 a {
  color: #2854ae;
}

#mp #container .red {
  color: #cf2929;
}

#mp #container .sym {
  text-indent: -0.5em;
}

@media print, screen and (min-width: 960px) {
  #mp #container {
    font-size: 1.6rem;
    line-height: 2.4rem;
    padding-bottom: 68px;
  }
  #mp #container .navMp {
    margin: 24px auto 40px;
  }
  #mp #container .navMp ul {
    margin-left: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 30px;
  }
  #mp #container .navMp {
    margin: 0 auto 30px;
  }
  #mp #container .navMp ul {
    margin: 0;
  }
  #mp img {
    width: 100%;
  }
}

#mp #container p.notice {
  padding-left: 1.05em;
  text-indent: -1.05em;
}

#mp #container li span.notice {
  text-indent: -1.05em;
}

#mp #container .navMp a {
  display: block;
}

#mp #container .navMp a span {
  display: block;
  padding-left: 0;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.03em;
}

#mp #container .navMp a:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 12px;
  width: 10px;
  height: 10px;
  margin: auto 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: '';
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  #mp #container nav {
    display: block !important;
  }
  #mp #container .navMp {
    max-width    : 1024px;
    padding-right: 32px;
    padding-left : 32px;
  }
  #mp #container .navMp ul {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -o-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    margin: 0;
    padding-left: 0;
  }
  #mp #container .navMp ul li {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -ms-box-flex: 1;
    -o-box-flex: 1;
    box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    background-color: #313145;
  }
  #mp #container .navMp ul li + li {
    border-left: 1px solid #fff;
  }
  #mp #container .navMp ul li.logout a {
    background-color: #3b3b3b;
    color: #a7a7a7;
  }
  #mp #container .navMp a {
    color          : #fff;
    display        : flex;
    height         : 59px;
    justify-content: center;
    padding        : 0px 24px;
    position       : relative;
  }
  #mp #container .navMp a span {
    align-items: center;
    font-size  : 1.5rem;
    display    : flex;
  }
}

@media screen and (max-width: 959px) {
  #mp #container .navMp {
    overflow-y: scroll;
    height: 100%;
    position: relative;
  }
  #mp #container .navMp ul {
    background-color: #313145;
    font-size: 0;
  }
  #mp #container .navMp li {
    margin-left: -0.1rem;
    display: inline-block;
    vertical-align: middle;
    border-bottom: 1px solid #cdcdcd;
    position: relative;
    width: 50%;
  }
  #mp #container .navMp li:nth-child(1),
  #mp #container.beginner .navMp li:nth-child(3) {
    border-right: 1px solid #cdcdcd;
  }
  #mp #container .navMp ul li a {
    margin-left: -5px;
  }
  #mp #container .navMp ul li a span {
    color: #fff;
    font-size: 1.0rem;
    line-height: 4.5rem;
    text-align: center;
  }
  #mp #container .navMp a:after {
    right: 8px;
    width: 8px;
    height: 8px;
  }
}

#mp #mpCont00 h1,
#mp #mpCont01 h1,
#mp #mpCont01 h2,
#mp #mpCont02 h2,
#mp #mpCont03 h2,
#mp #mpCont04 h2,
#mp #mpCont05 h2 {
  font-weight: 700;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #d2d2d2;
}

#mp #mpCont01 h3,
#mp #mpCont02 h3,
#mp #mpCont03 h3,
#mp #mpCont04 h3,
#mp #mpCont05 h3 {
  font-weight: 700;
}

#mp #mpInfo .notice {
  padding-left: 16px;
}

@media print, screen and (min-width: 960px) {
  #mp #mpCont00,
  #mp #mpCont01,
  #mp #mpCont02,
  #mp #mpCont03,
  #mp #mpCont04 {
    margin-bottom: 44px;
  }
  #mp #mpCont05 {
    margin-bottom: 76px;
  }
  #mp #mpCont00 h1,
  #mp #mpCont01 h1,
  #mp #mpCont01 h2,
  #mp #mpCont02 h2,
  #mp #mpCont03 h2,
  #mp #mpCont04 h2,
  #mp #mpCont05 h2 {
    font-size: 2.0rem;
    line-height: 4.2rem;
    padding-bottom: 6px;
    margin-bottom: 20px;
  }
  #mp #mpCont01 h3,
  #mp #mpCont05 h3 {
    font-size: 1.6rem;
    margin-bottom: .4rem;
  }
  #mp #mpCont02 h3,
  #mp #mpCont03 h3,
  #mp #mpCont04 h3 {
    font-size: 1.8rem;
    margin: 20px 0 16px;
  }
  #mp p {
    margin-bottom: .5rem;
  }
  #mp ul li p {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #mpCont00,
  #mp #mpCont01,
  #mp #mpCont02,
  #mp #mpCont03,
  #mp #mpCont04,
  #mp #mpCont05 {
    margin-bottom: 3rem;
  }
  #mp #mpCont00 h1,
  #mp #mpCont01 h1,
  #mp #mpCont01 h2,
  #mp #mpCont02 h2,
  #mp #mpCont03 h2,
  #mp #mpCont04 h2,
  #mp #mpCont05 h2 {
    font-size: 2.0rem;
    line-height: 2.8rem;
    padding-bottom: .6rem;
    margin-bottom: 2rem;
  }
  #mp #mpCont01 h3,
  #mp #mpCont05 h3 {
    font-size: 1.2rem;
    margin-left: -.6rem;
  }
  #mp #mpCont02 h3,
  #mp #mpCont03 h3,
  #mp #mpCont04 h3 {
    font-size: 1.6rem;
    margin: 2rem 0 .8rem -0.8rem;
  }
  #mp p {
    margin-bottom: .5rem;
  }
  #mp ul li p {
    margin-bottom: 0;
  }
}

#mp #mpCont01 .mpnotice {
  color: #cf2929;
  text-align: center;
}

#mp #mpCont01 .mpnotice2,
#mp #mpCont05 .mpnotice2 {
  border: solid 1px #d2d2d2;
}

#mp #mpCont01 .mpnotice span {
  font-weight: 700;
}

@media print, screen and (min-width: 960px) {
  #mp #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 3.6rem;
    padding: 0 0 8px;
  }
  #mp #mpCont01 .mpnotice span {
    font-size: 1.8rem;
  }
  #mp #mpCont01 .notice {
    font-size: 1.5rem;
    line-height: 2.4rem;
  }
  #mp #mpCont01 .mpnotice2,
  #mp #mpCont05 .mpnotice2 {
    font-size: 1.5rem;
    line-height: 2.4rem;
    padding: 20px;
    margin: 20px 0 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #mpCont01 .mpnotice {
    line-height: 2.0rem;
    padding: 0 0 20px;
  }
  #mp #mpCont01 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
  }
  #mp #mpCont01 .mpnotice2,
  #mp #mpCont05 .mpnotice2 {
    font-size: 1.2rem;
    line-height: 2.0rem;
    padding: 15px;
    margin: 15px 0 0;
  }
}

#mp #mpCont05 ul li {
  font-weight: 700;
}

#mp #mpCont05 ul li ul li {
  list-style-type: none;
  font-weight: 400;
}

@media print, screen and (min-width: 960px) {
  #mp #mpCont05 p + h3 {
    margin-top: 32px;
  }
}

#mp #mpCont05 ul li ul {
  margin-top: 8px;
  padding-bottom: 8px;
}

#mp #container.admguide table.bring {
  width: 100%;
  font-weight: 700;
}

#mp #container.admguide table.bring tr td {
  text-align: center;
  vertical-align: middle;
}

#mp #container.admguide table.bring tr td:nth-of-type(2n+1) {
  border: 1px solid #d2d2d2;
}

@media print, screen and (min-width: 960px) {
  #mp #container.admguide table.bring tr td:nth-of-type(2n+1) {
    width: 400px;
    height: 320px;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(2) img {
    margin: 60px 0;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(3) img {
    margin: 30px 0;
  }
  #mp #container.admguide #mpCont03 table,
  #mp #container.admguide #mpCont04 table {
    margin-bottom: 24px;
  }
  #mp #container.admguide #mpCont03 table tr td + td,
  #mp #container.admguide #mpCont04 table tr td + td {
    padding-left: 8px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.admguide table.bring {
    font-size: .9rem;
    letter-spacing: 0;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(1) {
    padding: 4px;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(3) {
    padding: 0 10px;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(2) {
    padding: 4px;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(2n+1) {
    width: 38vw;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(2) img {
    padding: 0 10px;
  }
  #mp #container.admguide table.bring tr td:nth-of-type(3) img {
    margin: 10px 0 0;
  }
  #mp #container.admguide #mpCont03 table,
  #mp #container.admguide #mpCont04 table {
    margin-bottom: 20px;
    margin-left: -4px;
  }
  #mp #container.admguide #mpCont03 table tr td,
  #mp #container.admguide #mpCont04 table tr td {
    padding-left: 4px;
  }
}

#mp #container.fguide ul.photo {
  padding-left: 0;
  text-indent: unset;
}

#mp #container.fguide ul.photo li {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  padding-left: 0;
  text-indent: unset;
}

#mp #container.fguide ul.photo li:nth-of-type(7) {
  margin-left: 0;
}

#mp #container.fguide .notice {
  font-size: inherit;
}

@media print, screen and (min-width: 960px) {
  #mp #container.fguide ul.photo {
    margin: 12px 0 8px;
  }
  #mp #container.fguide ul.photo:nth-of-type(3) {
    margin: 12px 0 44px;
  }
  #mp #container.fguide ul.photo li {
    width: 120px;
    font-size: 1.6rem;
    letter-spacing: 0;
    margin-bottom: 32px;
  }
  #mp #container.fguide ul.photo li + li {
    margin-left: 32px;
  }
  #mp #container.fguide ul.photo:nth-of-type(3) li:nth-of-type(5) {
    width: 150px;
    margin-left: 22px;
  }
  #mp #container.fguide ol.photo {
    margin-bottom: 60px;
    line-height: 3rem;
  }
  #mp #container.fguide ol.photo:nth-of-type(2) {
    margin-bottom: 32px;
  }
  #mp #container.fguide #mpCont01 h2 {
    font-size: 1.6rem;
    padding-bottom: 0;
  }
  #mp #container.fguide #mpCont01 .mpnotice2 ul {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.fguide #mpCont01 h3 {
    font-size: 1.4rem;
    margin-left: -.6rem;
  }
  #mp #container.fguide ul.photo {
    margin: 12px 0 12px;
  }
  #mp #container.fguide ul.photo li {
    width: 49%;
    font-size: 1.4rem;
    letter-spacing: 0;
    padding: 0 0 24px;
  }
  #mp #container.fguide ul.photo li img {
    padding: 0 10%;
  }
  #mp #container.fguide ol.photo {
    margin-bottom: 20px;
    line-height: 2.3rem;
  }
  #mp #container.fguide ol.photo:nth-of-type(2) {
    margin-bottom: 10px;
  }
  #mp #container.fguide #mpCont01 h2 {
    font-size: 1.2rem;
    padding-bottom: 0;
  }
  #mp #container.fguide #mpCont01 .mpnotice2 ul {
    margin-bottom: 20px;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.cguide #mpCont01,
  #mp #container.cguide #mpCont02,
  #mp #container.cguide #mpCont03 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont01,
  #mp #container.cguide #mpCont02,
  #mp #container.cguide #mpCont03 {
    margin-bottom: 60px;
  }
}

#mp #container.cguide #mpCont01 .mpnotice {
  font-weight: 700;
  text-align: justify;
}

#mp #container.cguide #mpCont01 p:first-of-type {
  margin-bottom: 1em;
}

@media print, screen and (min-width: 960px) {
  #mp #container.cguide #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-left: 1.6rem;
  }
  #mp #container.cguide #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  #mp #container.cguide #mpCont01 .mpnotice2 .notice {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont01 .mpnotice {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 0;
  }
  #mp #container.cguide #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  #mp #container.cguide #mpCont01 .mpnotice2 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
    margin-bottom: 0;
  }
}

#mp #container.cguide #mpCont02 dl {
  position: relative;
  border: 1px solid #cdcdcd;
  display: table;
}

#mp #container.cguide #mpCont02 dl dt, #mp #container.cguide #mpCont02 dl dd {
  vertical-align: middle;
  display: table-cell;
}

#mp #container.cguide #mpCont02 dl dt {
  background-color: #eeeeee;
  border-right: none;
  text-align: center;
  height: 100%;
}

#mp #container.cguide #mpCont02 dl dd {
  border-left: none;
}

#mp #container.cguide #mpCont02 dl + dl:before {
  content: '';
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.cguide #mpCont02 table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#mp #container.cguide #mpCont02 table th,
#mp #container.cguide #mpCont02 table td {
  display: table-cell;
  vertical-align: middle;
}

#mp #container.cguide #mpCont02 table th:first-of-type,
#mp #container.cguide #mpCont02 table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#mp #container.cguide #mpCont02 table th {
  text-align: center;
  background-color: #eeeeee;
}

@media print, screen and (min-width: 960px) {
  #mp #container.cguide #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.cguide #mpCont02 dl dt {
    width: 70px;
    font-size: 2.0rem;
  }
  #mp #container.cguide #mpCont02 dl:last-of-type {
    margin-bottom: 60px;
  }
  #mp #container.cguide #mpCont02 dl:last-of-type dt {
    height: 95px;
  }
  #mp #container.cguide #mpCont02 dl dd {
    width: 890px;
    padding: 24px;
    font-weight: 700;
  }
  #mp #container.cguide #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.4rem;
    font-weight: 400;
  }
  #mp #container.cguide #mpCont02 dl dd p {
    margin-bottom: 0;
  }
  #mp #container.cguide #mpCont02 dl dd p:first-of-type {
    margin-bottom: .5em;
  }
  #mp #container.cguide #mpCont02 dl dd p:first-of-type {
    margin-bottom: 0;
  }
  #mp #container.cguide #mpCont02 dl + dl:before {
    top: -25px;
    left: 50%;
    width: 12px;
    height: 12px;
  }
  #mp #container.cguide #mpCont02 h3 {
    font-size: 2rem;
  }
  #mp #container.cguide #mpCont02 h4 {
    font-size: 1.4rem;
    margin: .5em 0;
    font-weight: 700;
  }
  #mp #container.cguide #mpCont02 p + h4 {
    margin-top: 20px;
  }
  #mp #container.cguide #mpCont02 h5 {
    font-size: 1.4rem;
    margin: .5em 0 0;
  }
  #mp #container.cguide #mpCont02 .ok,
  #mp #container.cguide #mpCont02 .no {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-left: 1.4rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.cguide #mpCont02 .idt {
    margin-left: 1.4rem;
  }
  #mp #container.cguide #mpCont02 table {
    margin-top: 52px;
  }
  #mp #container.cguide #mpCont02 table th,
  #mp #container.cguide #mpCont02 table td {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #mp #container.cguide #mpCont02 table th {
    width: 130px;
  }
  #mp #container.cguide #mpCont02 table td {
    padding: 25px;
    width: 830px;
  }
  #mp #container.cguide #mpCont02 table td h4 {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.cguide #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.cguide #mpCont02 dl dt {
    width: 15%;
    font-size: 2.0rem;
  }
  #mp #container.cguide #mpCont02 dl dd {
    width: 85%;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  #mp #container.cguide #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 400;
    margin-left: -0.4rem;
  }
  #mp #container.cguide #mpCont02 dl dd p:last-of-type {
    margin-bottom: 0;
  }
  #mp #container.cguide #mpCont02 dl + dl:before {
    top: -25px;
    left: 48%;
    width: 12px;
    height: 12px;
  }
  #mp #container.cguide #mpCont02 h3 {
    font-size: 1.4rem;
  }
  #mp #container.cguide #mpCont02 h4 {
    font-size: 1.2rem;
    font-weight: 700;
  }
  #mp #container.cguide #mpCont02 p + h4 {
    margin-top: 2rem;
  }
  #mp #container.cguide #mpCont02 h5 {
    font-size: 1.2rem;
  }
  #mp #container.cguide #mpCont02 .ok,
  #mp #container.cguide #mpCont02 .no {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.cguide #mpCont02 table {
    margin-top: 30px;
  }
  #mp #container.cguide #mpCont02 table {
    display: table;
    border: 1px solid #cdcdcd;
    font-weight: 400;
    border-collapse: collapse;
  }
  #mp #container.cguide #mpCont02 table th,
  #mp #container.cguide #mpCont02 table td {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #mp #container.cguide #mpCont02 table th:first-of-type,
  #mp #container.cguide #mpCont02 table td:first-of-type {
    border-bottom: 1px solid #cdcdcd;
  }
  #mp #container.cguide #mpCont02 table th {
    text-align: center;
    width: 25%;
    background-color: #eeeeee;
  }
  #mp #container.cguide #mpCont02 table td {
    padding: 1rem;
    text-align: left;
  }
  #mp #container.cguide #mpCont02 table td h4 {
    font-size: 1.4rem;
    margin-left: -0.7rem;
  }
  #mp #container.cguide #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 3rem;
  }
}

#mp #container.cguide #mpCont03 ul.tourDatesContainer {
  padding-left: 0;
}

#mp #container.cguide #mpCont03 ul.tourDatesContainer li.tourDetail:nth-of-type(2n+1) {
  background-color: #f3f3f3;
}

#mp #container.cguide #mpCont03 ul {
  margin-left: 0;
}

#mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper {
  font-weight: 700;
}

#mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .date .sat {
  color: #2854ae;
}

#mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .date .sun {
  color: #e22222;
}

#mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .lower .open,
#mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mp #container.cguide #mpCont03 h3 {
    font-size: 2.4rem;
    margin-top: 32px;
  }
  #mp #container.cguide #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 64px;
    padding-right: 64px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .date,
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    display: inline-block;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont03 h3 {
    font-size: 2rem;
    margin-left: 0;
  }
  #mp #container.cguide #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail {
    padding: 1rem 0;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.4rem;
    line-height: 2.1rem;
    margin-bottom: .8rem;
  }
  #mp #container.cguide #mpCont03 .tourDatesContainer .tourDetail .lower {
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.cguide #mpCont04 ul li {
    font-size: 1.4rem;
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont04 ul li {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 2.4rem;
  }
}

#mp #container.appguide h2 {
  border-bottom: solid 1px #d2d2d2;
  line-height: 1;
}

#mp #container.appguide h4 {
  font-weight: 700;
}

#mp #container.appguide .appchart {
  border: solid 1px #d2d2d2;
}

#mp #container.appguide .flowChart {
  margin-bottom: 28px;
}

#mp #container.appguide .flowChart ol {
  text-indent: 0;
  padding-left: 0;
}

#mp .flowChart ol {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -o-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-left: 0;
  overflow: hidden;
}

#mp .flowChart li {
  text-align: center;
  display: table;
}

#mp .flowChart li:last-of-type .arrow {
  width: 100%;
  border-right: 1px solid #cdcdcd;
}

#mp .flowChart li:last-of-type .arrow:before {
  content: none;
}

#mp .flowChart .arrow {
  display: table-cell;
  vertical-align: middle;
}

#mp .flowChart li:first-of-type .arrow span {
  padding-left: 0;
  position: relative;
  z-index: 3;
}

#mp .flowChart li.current .arrow,
#mp .flowChart li.current .arrow:before {
  border-color: #1d1d1d;
  background-color: #1d1d1d;
}

#mp .flowChart li.current .arrow span {
  color: #fff;
}

#mp .flowChart .arrow {
  position: relative;
  border: 1px solid #cdcdcd;
  background-color: #fff;
}

#mp .flowChart .arrow:before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 1px solid #cdcdcd;
  border-right: 1px solid #cdcdcd;
  background-color: #fff;
  content: "";
}

#mp .flowChart .arrow span {
  display: block;
  position: relative;
  z-index: 20;
}

#mp .flowChart .arrow a:hover span {
  opacity: 0.66;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
  filter: alpha(opacity=66);
}

@media print, screen and (min-width: 960px) {
  #mp #container.appguide {
    font-size: 1.5rem;
  }
  #mp #container.appguide h3 {
    font-size: 1.9rem;
  }
  #mp #container.appguide #mpCont02,
  #mp #container.appguide #mpCont03,
  #mp #container.appguide #mpCont04,
  #mp #container.appguide #mpCont05 {
    padding-top: 100px;
    margin-top: -100px;
  }
  #mp .flowChart {
    text-indent: 0;
  }
  #mp .flowChart li,
  #mp .flowChart .arrow {
    width: 260px;
  }
  #mp .flowChart .arrow span {
    position: relative;
    font-size: 1.4rem;
    line-height: 5rem;
  }
  #mp .flowChart li:nth-of-type(2),
  #mp .flowChart li:nth-of-type(3),
  #mp .flowChart li:nth-of-type(2) .arrow,
  #mp .flowChart li:nth-of-type(3) .arrow {
    width: 220px;
  }
  #mp .flowChart .arrow:before {
    right: -19px;
    width: 36px;
    height: 36px;
    z-index: 2;
    -webkit-transform: scaleX(0.71429) rotate(45deg);
    -moz-transform: scaleX(0.71429) rotate(45deg);
    -ms-transform: scaleX(0.71429) rotate(45deg);
    -o-transform: scaleX(0.71429) rotate(45deg);
    transform: scaleX(0.71429) rotate(45deg);
  }
  #mp .flowChart li:nth-of-type(2) .arrow:before,
  #mp .flowChart li:nth-of-type(3) .arrow:before {
    right: -19px;
  }
  #mp .flowChart li:nth-of-type(2),
  #mp .flowChart li:nth-of-type(3),
  #mp .flowChart li:nth-of-type(4) {
    margin-left: -30px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.appguide {
    font-size: 1.4rem;
  }
  #mp #container.appguide #mpCont02,
  #mp #container.appguide #mpCont03,
  #mp #container.appguide #mpCont04,
  #mp #container.appguide #mpCont05 {
    padding-top: 20vw;
    margin-top: -20vw;
  }
  #mp .flowChart li {
    width: 33vw;
  }
  #mp .flowChart .arrow {
    height: 16vw;
  }
  #mp .flowChart li:nth-of-type(2),
  #mp .flowChart li:nth-of-type(2) .arrow {
    width: 19vw;
  }
  #mp .flowChart li:nth-of-type(3),
  #mp .flowChart li:nth-of-type(3) .arrow {
    width: 24vw;
  }
  #mp .flowChart li:nth-of-type(4),
  #mp .flowChart li:nth-of-type(4) .arrow {
    width: 24vw;
  }
  #mp .flowChart .arrow:before {
    right: -3.1vw;
    width: 11vw;
    height: 11vw;
    z-index: 2;
    -webkit-transform: scaleX(0.41429) rotate(45deg);
    -moz-transform: scaleX(0.41429) rotate(45deg);
    -ms-transform: scaleX(0.41429) rotate(45deg);
    -o-transform: scaleX(0.41429) rotate(45deg);
    transform: scaleX(0.41429) rotate(45deg);
  }
  #mp .flowChart .arrow span {
    position: relative;
    padding-left: 6px;
    font-size: 1.1rem;
    line-height: 1.4rem;
  }
  #mp .flowChart li:nth-of-type(2),
  #mp .flowChart li:nth-of-type(3),
  #mp .flowChart li:nth-of-type(4) {
    margin-left: -3vw;
  }
}

#mp #container.appguide h2 {
  position: relative;
}

@media print, screen and (min-width: 960px) {
  #mp #container.appguide h2 {
    border-left: solid 8px #1d1d1d;
    font-size: 1.9rem;
    padding: 16px 20px;
  }
  #mp #container.appguide h2:after {
    width: 22px;
    height: 22px;
    right: 15px;
  }
  #mp #container.appguide h3 {
    font-size: 1.9rem;
    padding: 16px 8px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.appguide h2 {
    border-left: solid 6px #1d1d1d;
    font-size: 1.7rem;
    padding: 0.8rem 1.6rem;
  }
  #mp #container.appguide h2:after {
    width: 1.8rem;
    height: 1.8rem;
    right: 1rem;
  }
  #mp #container.appguide h3 {
    font-size: 1.7rem;
    padding: 8px 20px;
  }
  #mp #container.appguide .flowinfo h3 {
    font-size: 1.4rem;
    padding: 8px 20px;
  }
  #mp #container.appguide .flowinfo .notice {
    font-size: 1.3rem;
  }
}

#mp #container.appguide .flowfirst,
#mp #container.appguide .flowlast {
  text-align: center;
  margin: 40px auto;
}

#mp #container.appguide .hflow {
  position: relative;
}

#mp #container.appguide .hflow:after {
  content: '';
  clear: both;
  display: block;
}

#mp #container.appguide .hflow + .hflow:before {
  content: '';
  display: block;
  position: absolute;
  margin-bottom: 120px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.appguide .flowlast p:nth-of-type(3) {
  margin: 1em auto;
}

#mp #container.appguide .flowinfo {
  border: solid 1px #d2d2d2;
}

#mp #container.appguide .flowinfo h3 {
  background-color: #d2d2d2;
  margin: auto;
  text-align: center;
}

#mp #container.appguide .flowinfo .txt {
  text-align: justify;
}

#mp #container.appguide #mpCont05 .flowinfo span {
  font-weight: 400;
}

#mp #container.appguide .flowlast a,
#mp #container.appguide .flowinfo a {
  color: #2854ae;
}

@media print, screen and (min-width: 960px) {
  #mp #container.appguide .flowfirst {
    font-size: 1.6rem;
  }
  #mp #container.appguide .hflow {
    max-width: 780px;
    margin: 0 auto 60px;
  }
  #mp #container.appguide .hflow .txt {
    font-size: 1.5rem;
    width: 310px;
    margin-left: 20px;
    float: right;
  }
  #mp #container.appguide .hflow .img {
    width: 450px;
    float: right;
  }
  #mp #container.appguide .hflow + .hflow:before {
    top: -40px;
    left: 50%;
    width: 28px;
    height: 28px;
  }
  #mp #container.appguide .flowinfo {
    max-width: 780px;
    margin: 0 auto 40px;
  }
  #mp #container.appguide .flowinfo .txt {
    padding: 2em;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img {
    float: right;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img + h4 {
    clear: both;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img:nth-of-type(3) {
    margin-top: -3em;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img:nth-of-type(9) {
    margin-top: -5em;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img:nth-of-type(14) {
    margin-top: -4em;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.appguide .flowfirst .red {
    text-align: justify;
  }
  #mp #container.appguide .hflow {
    width: auto;
    margin: 0 auto 10vw;
  }
  #mp #container.appguide .hflow:last-of-type {
    margin-bottom: 5vw;
  }
  #mp #container.appguide .flowfirst p,
  #mp #container.appguide .flowlast p,
  #mp #container.appguide .hflow p {
    width: 80vw;
    margin: auto;
  }
  #mp #container.appguide .hflow .img {
    width: 100%;
    margin: 5vw auto 0;
  }
  #mp #container.appguide .hflow + .hflow:before {
    top: -8vw;
    left: 46%;
    width: 6vw;
    height: 6vw;
  }
  #mp #container.appguide .flowinfo {
    width: 80vw;
    margin: 0 auto 5vw;
  }
  #mp #container.appguide .flowinfo .txt {
    padding: 1em 1.4em;
  }
  #mp #container.appguide #mpCont05 .flowinfo span {
    font-size: 1.3rem;
  }
  #mp #container.appguide #mpCont05 .flowinfo .img:nth-of-type(14) {
    width: 20vw;
  }
}

#mp #container.appguide .login {
  display: block;
  position: relative;
  border-radius: 4px;
  background-color: #cf2929;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  text-align: center;
}

#mp #container.appguide .login span {
  color: #fff;
}

#mp #container.appguide .login:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mp #container.appguide .login:after {
  width: 12px;
  height: 12px;
  right: 12px;
}

@media print, screen and (min-width: 960px) {
  #mp #container.appguide .login {
    padding: 22px 0;
    width: 500px;
    margin: 24px auto;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.appguide .login {
    padding: 16px 0;
    width: 80vw;
    margin: 3vw auto;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 959px) {
  #mp .beginner img {
    max-width: 100%;
    width: auto;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container .navMp a span:nth-last-of-type(2) {
    top: calc(50% - 0.6em);
  }
  #mp #container .navMp a span:nth-of-type(2) {
    top: calc(50% + 0.6em);
  }
}

@media screen and (max-width: 959px) {
  #mp #container .navMp li:nth-child(2n+1):last-child {
    width: 100%;
  }
}

#mp #container.admguide h3:not(:first-of-type) {
  margin-top: 32px;
}

#mp #container.admguide table.bring + ul {
  position: relative;
  padding-top: 5px;
  padding-bottom: 5px;
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  border-radius: 5px 5px 0 0;
}

#mp #container.admguide table.bring + ul:before, #mp #container.admguide table.bring + ul:after {
  content: "";
  position: absolute;
  display: block;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

#mp #container.admguide table.bring + ul:before {
  top: -9px;
  right: 21%;
  width: 15px;
  height: 15px;
  background: #d2d2d2;
}

#mp #container.admguide table.bring + ul:after {
  top: -8px;
  right: 21%;
  background: #fff;
  width: 15px;
  height: 15px;
}

@media print, screen and (min-width: 960px) {
  #mp #container.admguide table.bring + ul {
    margin: auto 16px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.cguide #mpCont02 dl {
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  #mp .hflow .img {
    border: 1px solid #dedede;
    padding: 9px 15px;
  }
  #mp .hflow .img img {
    max-width: 100%;
  }
}

#mp .flowfirst .login {
  margin-bottom: 28px !important;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

#mp .flowfirst .login:before {
  content: "";
  position: absolute;
  display: block;
  bottom: -39px;
  left: calc(50% - 21px);
  width: 52.5px;
  height: 52.5px;
  background: url("https://tps-pocket.com/e6gjZE5VfrgIdygbNtN6i79r9vPlzm6fDy38Vrj7_9o/ri6flY0d5eLrHSGcnFrriQ/VGsNcN-dOZqjyw5PlhLbOw/jAKl41h4RnELZ_5ltT32sq3-FR7RPfpMniqmijAymw4") no-repeat 50% 50%;
  background-size: contain;
}

#mp .hflow .mail {
  position: relative;
}

@media screen and (max-width: 959px) {
  #mp .hflow .mail {
    min-height: 100px;
    padding-left: 110px;
  }
  #mp .hflow .mail:before {
    width: 110px;
    height: 100px;
    left: -12px;
  }
}

@media print, screen and (min-width: 960px) {
  #mp .hflow .mail {
    min-height: 160px;
    padding-left: 180px;
  }
  #mp .hflow .mail:before {
    width: 180px;
    height: 160px;
    left: -12px;
  }
}

#mp .hflow .mail:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  background: url("https://tps-pocket.com/e6gjZE5VfrgIdygbNtN6i79r9vPlzm6fDy38Vrj7_9o/ri6flY0d5eLrHSGcnFrriQ/VGsNcN-dOZqjyw5PlhLbOw/2nlWEh9MrcaKsXBSTtcegw") no-repeat 50% 50%;
  background-size: contain;
}

@media print, screen and (min-width: 960px) {
  #mp #container.tokuteisho #mpCont01,
  #mp #container.tokuteisho #mpCont02,
  #mp #container.tokuteisho #mpCont03 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.tokuteisho #mpCont01,
  #mp #container.tokuteisho #mpCont02,
  #mp #container.tokuteisho #mpCont03 {
    margin-bottom: 60px;
  }
}

#mp #container.tokuteisho #mpCont01 .mpnotice {
  font-weight: 700;
  text-align: justify;
}

#mp #container.tokuteisho #mpCont01 p:first-of-type {
  margin-bottom: 1em;
}

@media print, screen and (min-width: 960px) {
  #mp #container.tokuteisho #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-left: 1.6rem;
  }
  #mp #container.tokuteisho #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  #mp #container.tokuteisho #mpCont01 .mpnotice2 .notice {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.tokuteisho #mpCont01 .mpnotice {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 0;
  }
  #mp #container.tokuteisho #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  #mp #container.tokuteisho #mpCont01 .mpnotice2 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
    margin-bottom: 0;
  }
}

#mp #container.tokuteisho #mpCont02 dl {
  position: relative;
  border: 1px solid #cdcdcd;
  display: table;
}

#mp #container.tokuteisho #mpCont02 dl dt, #mp #container.tokuteisho #mpCont02 dl dd {
  vertical-align: middle;
  display: table-cell;
}

#mp #container.tokuteisho #mpCont02 dl dt {
  background-color: #eeeeee;
  border-right: none;
  text-align: center;
  height: 100%;
}

#mp #container.tokuteisho #mpCont02 dl dd {
  border-left: none;
}

#mp #container.tokuteisho #mpCont02 dl + dl:before {
  content: '';
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.tokuteisho #mpCont02 table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#mp #container.tokuteisho #mpCont02 table th,
#mp #container.tokuteisho #mpCont02 table td {
  display: table-cell;
  vertical-align: middle;
}

#mp #container.tokuteisho #mpCont02 table th:first-of-type,
#mp #container.tokuteisho #mpCont02 table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#mp #container.tokuteisho #mpCont02 table th {
  text-align: center;
  background-color: #eeeeee;
}

@media print, screen and (min-width: 960px) {
  #mp #container.tokuteisho #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.tokuteisho #mpCont02 dl dt {
    width: 70px;
    font-size: 2.0rem;
  }
  #mp #container.tokuteisho #mpCont02 dl:last-of-type {
    margin-bottom: 60px;
  }
  #mp #container.tokuteisho #mpCont02 dl:last-of-type dt {
    height: 95px;
  }
  #mp #container.tokuteisho #mpCont02 dl dd {
    width: 890px;
    padding: 24px;
    font-weight: 700;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.4rem;
    font-weight: 400;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p {
    margin-bottom: 0;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p:first-of-type {
    margin-bottom: .5em;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p:first-of-type {
    margin-bottom: 0;
  }
  #mp #container.tokuteisho #mpCont02 dl + dl:before {
    top: -25px;
    left: 50%;
    width: 12px;
    height: 12px;
  }
  #mp #container.tokuteisho #mpCont02 h3 {
    font-size: 2rem;
  }
  #mp #container.tokuteisho #mpCont02 h4 {
    font-size: 1.4rem;
    margin: .5em 0;
    font-weight: 700;
  }
  #mp #container.tokuteisho #mpCont02 p + h4 {
    margin-top: 20px;
  }
  #mp #container.tokuteisho #mpCont02 h5 {
    font-size: 1.4rem;
    margin: .5em 0 0;
  }
  #mp #container.tokuteisho #mpCont02 .ok,
  #mp #container.tokuteisho #mpCont02 .no {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-left: 1.4rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.tokuteisho #mpCont02 .idt {
    margin-left: 1.4rem;
  }
  #mp #container.tokuteisho #mpCont02 table {
    margin-top: 52px;
  }
  #mp #container.tokuteisho #mpCont02 table th,
  #mp #container.tokuteisho #mpCont02 table td {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #mp #container.tokuteisho #mpCont02 table th {
    width: 130px;
  }
  #mp #container.tokuteisho #mpCont02 table td {
    padding: 25px;
    width: 830px;
  }
  #mp #container.tokuteisho #mpCont02 table td h4 {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.tokuteisho #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.tokuteisho #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.tokuteisho #mpCont02 dl dt {
    width: 15%;
    font-size: 2.0rem;
  }
  #mp #container.tokuteisho #mpCont02 dl dd {
    width: 85%;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 400;
    margin-left: -0.4rem;
  }
  #mp #container.tokuteisho #mpCont02 dl dd p:last-of-type {
    margin-bottom: 0;
  }
  #mp #container.tokuteisho #mpCont02 dl + dl:before {
    top: -25px;
    left: 48%;
    width: 12px;
    height: 12px;
  }
  #mp #container.tokuteisho #mpCont02 h3 {
    font-size: 1.4rem;
  }
  #mp #container.tokuteisho #mpCont02 h4 {
    font-size: 1.2rem;
    font-weight: 700;
  }
  #mp #container.tokuteisho #mpCont02 p + h4 {
    margin-top: 2rem;
  }
  #mp #container.tokuteisho #mpCont02 h5 {
    font-size: 1.2rem;
  }
  #mp #container.tokuteisho #mpCont02 .ok,
  #mp #container.tokuteisho #mpCont02 .no {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.tokuteisho #mpCont02 table {
    margin-top: 30px;
  }
  #mp #container.tokuteisho #mpCont02 table {
    display: table;
    border: 1px solid #cdcdcd;
    font-weight: 400;
    border-collapse: collapse;
  }
  #mp #container.tokuteisho #mpCont02 table th,
  #mp #container.tokuteisho #mpCont02 table td {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #mp #container.tokuteisho #mpCont02 table th:first-of-type,
  #mp #container.tokuteisho #mpCont02 table td:first-of-type {
    border-bottom: 1px solid #cdcdcd;
  }
  #mp #container.tokuteisho #mpCont02 table th {
    text-align: center;
    width: 25%;
    background-color: #eeeeee;
  }
  #mp #container.tokuteisho #mpCont02 table td {
    padding: 1rem;
    text-align: left;
  }
  #mp #container.tokuteisho #mpCont02 table td h4 {
    font-size: 1.4rem;
    margin-left: -0.7rem;
  }
  #mp #container.tokuteisho #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 3rem;
  }
}

#mp #container.tokuteisho #mpCont03 ul.tourDatesContainer {
  padding-left: 0;
}

#mp #container.tokuteisho #mpCont03 ul.tourDatesContainer li.tourDetail:nth-of-type(2n+1) {
  background-color: #f3f3f3;
}

#mp #container.tokuteisho #mpCont03 ul {
  margin-left: 0;
}

#mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper {
  font-weight: 700;
}

#mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .date .sat {
  color: #2854ae;
}

#mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .date .sun {
  color: #e22222;
}

#mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .lower .open,
#mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mp #container.tokuteisho #mpCont03 h3 {
    font-size: 2.4rem;
    margin-top: 32px;
  }
  #mp #container.tokuteisho #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 64px;
    padding-right: 64px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .date,
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    display: inline-block;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.tokuteisho #mpCont03 h3 {
    font-size: 2rem;
    margin-left: 0;
  }
  #mp #container.tokuteisho #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail {
    padding: 1rem 0;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.4rem;
    line-height: 2.1rem;
    margin-bottom: .8rem;
  }
  #mp #container.tokuteisho #mpCont03 .tourDatesContainer .tourDetail .lower {
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.tokuteisho #mpCont04 ul li {
    font-size: 1.4rem;
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.tokuteisho #mpCont04 ul li {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 2.4rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.policy #mpCont01,
  #mp #container.policy #mpCont02,
  #mp #container.policy #mpCont03 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.policy #mpCont01,
  #mp #container.policy #mpCont02,
  #mp #container.policy #mpCont03 {
    margin-bottom: 60px;
  }
}

#mp #container.policy #mpCont01 .mpnotice {
  font-weight: 700;
  text-align: justify;
}

#mp #container.policy #mpCont01 p:first-of-type {
  margin-bottom: 1em;
}

@media print, screen and (min-width: 960px) {
  #mp #container.policy #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-left: 1.6rem;
  }
  #mp #container.policy #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  #mp #container.policy #mpCont01 .mpnotice2 .notice {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.policy #mpCont01 .mpnotice {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 0;
  }
  #mp #container.policy #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  #mp #container.policy #mpCont01 .mpnotice2 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
    margin-bottom: 0;
  }
}

#mp #container.policy #mpCont02 dl {
  position: relative;
  border: 1px solid #cdcdcd;
  display: table;
}

#mp #container.policy #mpCont02 dl dt, #mp #container.policy #mpCont02 dl dd {
  vertical-align: middle;
  display: table-cell;
}

#mp #container.policy #mpCont02 dl dt {
  background-color: #eeeeee;
  border-right: none;
  text-align: center;
  height: 100%;
}

#mp #container.policy #mpCont02 dl dd {
  border-left: none;
}

#mp #container.policy #mpCont02 dl + dl:before {
  content: '';
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.policy #mpCont02 table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#mp #container.policy #mpCont02 table th,
#mp #container.policy #mpCont02 table td {
  display: table-cell;
  vertical-align: middle;
}

#mp #container.policy #mpCont02 table th:first-of-type,
#mp #container.policy #mpCont02 table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#mp #container.policy #mpCont02 table th {
  text-align: center;
  background-color: #eeeeee;
}

@media print, screen and (min-width: 960px) {
  #mp #container.policy #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.policy #mpCont02 dl dt {
    width: 70px;
    font-size: 2.0rem;
  }
  #mp #container.policy #mpCont02 dl:last-of-type {
    margin-bottom: 60px;
  }
  #mp #container.policy #mpCont02 dl:last-of-type dt {
    height: 95px;
  }
  #mp #container.policy #mpCont02 dl dd {
    width: 890px;
    padding: 24px;
    font-weight: 700;
  }
  #mp #container.policy #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.4rem;
    font-weight: 400;
  }
  #mp #container.policy #mpCont02 dl dd p {
    margin-bottom: 0;
  }
  #mp #container.policy #mpCont02 dl dd p:first-of-type {
    margin-bottom: .5em;
  }
  #mp #container.policy #mpCont02 dl dd p:first-of-type {
    margin-bottom: 0;
  }
  #mp #container.policy #mpCont02 dl + dl:before {
    top: -25px;
    left: 50%;
    width: 12px;
    height: 12px;
  }
  #mp #container.policy #mpCont02 h3 {
    font-size: 2rem;
  }
  #mp #container.policy #mpCont02 h4 {
    font-size: 1.4rem;
    margin: .5em 0;
    font-weight: 700;
  }
  #mp #container.policy #mpCont02 p + h4 {
    margin-top: 20px;
  }
  #mp #container.policy #mpCont02 h5 {
    font-size: 1.4rem;
    margin: .5em 0 0;
  }
  #mp #container.policy #mpCont02 .ok,
  #mp #container.policy #mpCont02 .no {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-left: 1.4rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.policy #mpCont02 .idt {
    margin-left: 1.4rem;
  }
  #mp #container.policy #mpCont02 table {
    margin-top: 52px;
  }
  #mp #container.policy #mpCont02 table th,
  #mp #container.policy #mpCont02 table td {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #mp #container.policy #mpCont02 table th {
    width: 130px;
  }
  #mp #container.policy #mpCont02 table td {
    padding: 25px;
    width: 830px;
  }
  #mp #container.policy #mpCont02 table td h4 {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.policy #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.policy #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.policy #mpCont02 dl dt {
    width: 15%;
    font-size: 2.0rem;
  }
  #mp #container.policy #mpCont02 dl dd {
    width: 85%;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  #mp #container.policy #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 400;
    margin-left: -0.4rem;
  }
  #mp #container.policy #mpCont02 dl dd p:last-of-type {
    margin-bottom: 0;
  }
  #mp #container.policy #mpCont02 dl + dl:before {
    top: -25px;
    left: 48%;
    width: 12px;
    height: 12px;
  }
  #mp #container.policy #mpCont02 h3 {
    font-size: 1.4rem;
  }
  #mp #container.policy #mpCont02 h4 {
    font-size: 1.2rem;
    font-weight: 700;
  }
  #mp #container.policy #mpCont02 p + h4 {
    margin-top: 2rem;
  }
  #mp #container.policy #mpCont02 h5 {
    font-size: 1.2rem;
  }
  #mp #container.policy #mpCont02 .ok,
  #mp #container.policy #mpCont02 .no {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.policy #mpCont02 table {
    margin-top: 30px;
  }
  #mp #container.policy #mpCont02 table {
    display: table;
    border: 1px solid #cdcdcd;
    font-weight: 400;
    border-collapse: collapse;
  }
  #mp #container.policy #mpCont02 table th,
  #mp #container.policy #mpCont02 table td {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #mp #container.policy #mpCont02 table th:first-of-type,
  #mp #container.policy #mpCont02 table td:first-of-type {
    border-bottom: 1px solid #cdcdcd;
  }
  #mp #container.policy #mpCont02 table th {
    text-align: center;
    width: 25%;
    background-color: #eeeeee;
  }
  #mp #container.policy #mpCont02 table td {
    padding: 1rem;
    text-align: left;
  }
  #mp #container.policy #mpCont02 table td h4 {
    font-size: 1.4rem;
    margin-left: -0.7rem;
  }
  #mp #container.policy #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 3rem;
  }
}

#mp #container.policy #mpCont03 ul.tourDatesContainer {
  padding-left: 0;
}

#mp #container.policy #mpCont03 ul.tourDatesContainer li.tourDetail:nth-of-type(2n+1) {
  background-color: #f3f3f3;
}

#mp #container.policy #mpCont03 ul {
  margin-left: 0;
}

#mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper {
  font-weight: 700;
}

#mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .date .sat {
  color: #2854ae;
}

#mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .date .sun {
  color: #e22222;
}

#mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .lower .open,
#mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mp #container.policy #mpCont03 h3 {
    font-size: 2.4rem;
    margin-top: 32px;
  }
  #mp #container.policy #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 64px;
    padding-right: 64px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .date,
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    display: inline-block;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.policy #mpCont03 h3 {
    font-size: 2rem;
    margin-left: 0;
  }
  #mp #container.policy #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail {
    padding: 1rem 0;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.4rem;
    line-height: 2.1rem;
    margin-bottom: .8rem;
  }
  #mp #container.policy #mpCont03 .tourDatesContainer .tourDetail .lower {
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.policy #mpCont04 ul li {
    font-size: 1.4rem;
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.policy #mpCont04 ul li {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 2.4rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.caution #mpCont01,
  #mp #container.caution #mpCont02,
  #mp #container.caution #mpCont03 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.caution #mpCont01,
  #mp #container.caution #mpCont02,
  #mp #container.caution #mpCont03 {
    margin-bottom: 60px;
  }
}

#mp #container.caution #mpCont01 .mpnotice {
  font-weight: 700;
  text-align: justify;
}

#mp #container.caution #mpCont01 .mpnotice2 {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 960px) {
  #mp #container.caution #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-left: 1.6rem;
  }
  #mp #container.caution #mpCont01 .mpnotice2 {
    border: 1px solid #e22222;
    color: #e22222;
    font-weight: bold;
  }
  #mp #container.caution #mpCont01 .mpnotice2 .notice {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.caution #mpCont01 .mpnotice {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 0;
  }
  #mp #container.caution #mpCont01 .mpnotice2 {
    border: 1px solid #e22222;
    color: #e22222;
    font-weight: bold;
  }
  #mp #container.caution #mpCont01 .mpnotice2 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
    margin-bottom: 0;
  }
}

#mp #container.caution #mpCont02 dl {
  position: relative;
  border: 1px solid #cdcdcd;
  display: table;
}

#mp #container.caution #mpCont02 dl dt, #mp #container.caution #mpCont02 dl dd {
  vertical-align: middle;
  display: table-cell;
}

#mp #container.caution #mpCont02 dl dt {
  background-color: #eeeeee;
  border-right: none;
  text-align: center;
  height: 100%;
}

#mp #container.caution #mpCont02 dl dd {
  border-left: none;
}

#mp #container.caution #mpCont02 dl + dl:before {
  content: '';
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.caution #mpCont02 table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#mp #container.caution #mpCont02 table th,
#mp #container.caution #mpCont02 table td {
  display: table-cell;
  vertical-align: middle;
}

#mp #container.caution #mpCont02 table th:first-of-type,
#mp #container.caution #mpCont02 table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#mp #container.caution #mpCont02 table th {
  text-align: center;
  background-color: #eeeeee;
}

@media print, screen and (min-width: 960px) {
  #mp #container.caution #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.caution #mpCont02 dl dt {
    width: 70px;
    font-size: 2.0rem;
  }
  #mp #container.caution #mpCont02 dl:last-of-type {
    margin-bottom: 60px;
  }
  #mp #container.caution #mpCont02 dl:last-of-type dt {
    height: 95px;
  }
  #mp #container.caution #mpCont02 dl dd {
    width: 890px;
    padding: 24px;
    font-weight: 700;
  }
  #mp #container.caution #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.4rem;
    font-weight: 400;
  }
  #mp #container.caution #mpCont02 dl dd p {
    margin-bottom: 0;
  }
  #mp #container.caution #mpCont02 dl dd p:first-of-type {
    margin-bottom: .5em;
  }
  #mp #container.caution #mpCont02 dl dd p:first-of-type {
    margin-bottom: 0;
  }
  #mp #container.caution #mpCont02 dl + dl:before {
    top: -25px;
    left: 50%;
    width: 12px;
    height: 12px;
  }
  #mp #container.caution #mpCont02 h3 {
    font-size: 2rem;
  }
  #mp #container.caution #mpCont02 h4 {
    font-size: 1.4rem;
    margin: .5em 0;
    font-weight: 700;
  }
  #mp #container.caution #mpCont02 p + h4 {
    margin-top: 20px;
  }
  #mp #container.caution #mpCont02 h5 {
    font-size: 1.4rem;
    margin: .5em 0 0;
  }
  #mp #container.caution #mpCont02 .ok,
  #mp #container.caution #mpCont02 .no {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-left: 1.4rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.caution #mpCont02 .idt {
    margin-left: 1.4rem;
  }
  #mp #container.caution #mpCont02 table {
    margin-top: 52px;
  }
  #mp #container.caution #mpCont02 table th,
  #mp #container.caution #mpCont02 table td {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #mp #container.caution #mpCont02 table th {
    width: 130px;
  }
  #mp #container.caution #mpCont02 table td {
    padding: 25px;
    width: 830px;
  }
  #mp #container.caution #mpCont02 table td h4 {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.caution #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.caution #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.caution #mpCont02 dl dt {
    width: 15%;
    font-size: 2.0rem;
  }
  #mp #container.caution #mpCont02 dl dd {
    width: 85%;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  #mp #container.caution #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 400;
    margin-left: -0.4rem;
  }
  #mp #container.caution #mpCont02 dl dd p:last-of-type {
    margin-bottom: 0;
  }
  #mp #container.caution #mpCont02 dl + dl:before {
    top: -25px;
    left: 48%;
    width: 12px;
    height: 12px;
  }
  #mp #container.caution #mpCont02 h3 {
    font-size: 1.4rem;
  }
  #mp #container.caution #mpCont02 h4 {
    font-size: 1.2rem;
    font-weight: 700;
  }
  #mp #container.caution #mpCont02 p + h4 {
    margin-top: 2rem;
  }
  #mp #container.caution #mpCont02 h5 {
    font-size: 1.2rem;
  }
  #mp #container.caution #mpCont02 .ok,
  #mp #container.caution #mpCont02 .no {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.caution #mpCont02 table {
    margin-top: 30px;
  }
  #mp #container.caution #mpCont02 table {
    display: table;
    border: 1px solid #cdcdcd;
    font-weight: 400;
    border-collapse: collapse;
  }
  #mp #container.caution #mpCont02 table th,
  #mp #container.caution #mpCont02 table td {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #mp #container.caution #mpCont02 table th:first-of-type,
  #mp #container.caution #mpCont02 table td:first-of-type {
    border-bottom: 1px solid #cdcdcd;
  }
  #mp #container.caution #mpCont02 table th {
    text-align: center;
    width: 25%;
    background-color: #eeeeee;
  }
  #mp #container.caution #mpCont02 table td {
    padding: 1rem;
    text-align: left;
  }
  #mp #container.caution #mpCont02 table td h4 {
    font-size: 1.4rem;
    margin-left: -0.7rem;
  }
  #mp #container.caution #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 3rem;
  }
}

#mp #container.caution #mpCont03 ul.tourDatesContainer {
  padding-left: 0;
}

#mp #container.caution #mpCont03 ul.tourDatesContainer li.tourDetail:nth-of-type(2n+1) {
  background-color: #f3f3f3;
}

#mp #container.caution #mpCont03 ul {
  margin-left: 0;
}

#mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper {
  font-weight: 700;
}

#mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .date .sat {
  color: #2854ae;
}

#mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .date .sun {
  color: #e22222;
}

#mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .lower .open,
#mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mp #container.caution #mpCont03 h3 {
    font-size: 2.4rem;
    margin-top: 32px;
  }
  #mp #container.caution #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 64px;
    padding-right: 64px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .date,
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    display: inline-block;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.caution #mpCont03 h3 {
    font-size: 2rem;
    margin-left: 0;
  }
  #mp #container.caution #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail {
    padding: 1rem 0;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.4rem;
    line-height: 2.1rem;
    margin-bottom: .8rem;
  }
  #mp #container.caution #mpCont03 .tourDatesContainer .tourDetail .lower {
    font-size: 1.2rem;
  }
}

#mp #container.caution #mpCont04 h3 {
  margin: 42px 0 8px;
  border-bottom: 1px solid;
  font-size: 1.4rem;
}

#mp #container.caution #mpCont04 h3 {
  line-height: 1.3;
}

#mp #container .caution #mpCont04 a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#mp #container .caution #mpCont04 a:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-width: 0 1px 1px 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-right: 6px;
}

@media print, screen and (min-width: 960px) {
  #mp #container.beginner #mpCont01,
  #mp #container.beginner #mpCont02,
  #mp #container.beginner #mpCont03 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.beginner #mpCont01,
  #mp #container.beginner #mpCont02,
  #mp #container.beginner #mpCont03 {
    margin-bottom: 60px;
  }
}

#mp #container.beginner #mpCont01 .mpnotice {
  font-weight: 700;
  text-align: justify;
}

#mp #container.beginner #mpCont01 p:first-of-type {
  margin-bottom: 1em;
}

@media print, screen and (min-width: 960px) {
  #mp #container.beginner #mpCont01 .mpnotice {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-left: 1.6rem;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 {
    border: 1px solid #e22222;
    color: #e22222;
    font-weight: bold;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 .notice {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.beginner #mpCont01 .mpnotice {
    font-size: 1.4rem;
    line-height: 2.3rem;
    padding-bottom: 0;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 {
    border: 1px solid #e22222;
    color: #e22222;
    font-weight: bold;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 p:first-of-type {
    font-size: 1.4rem;
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont01 .mpnotice2 .notice {
    font-size: 1.2rem;
    line-height: 2.0rem;
    margin-bottom: 0;
  }
}

#mp #container.beginner #mpCont02 dl {
  position: relative;
  border: 1px solid #cdcdcd;
  display: table;
}

#mp #container.beginner #mpCont02 dl dt, #mp #container.beginner #mpCont02 dl dd {
  vertical-align: middle;
  display: table-cell;
}

#mp #container.beginner #mpCont02 dl dt {
  background-color: #eeeeee;
  border-right: none;
  text-align: center;
  height: 100%;
}

#mp #container.beginner #mpCont02 dl dd {
  border-left: none;
}

#mp #container.beginner #mpCont02 dl + dl:before {
  content: '';
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid #4e4949;
  border-right: 2px solid #565656;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mp #container.beginner #mpCont02 table {
  display: table;
  border: 1px solid #cdcdcd;
  font-weight: 400;
  border-collapse: collapse;
}

#mp #container.beginner #mpCont02 table th,
#mp #container.beginner #mpCont02 table td {
  display: table-cell;
  vertical-align: middle;
}

#mp #container.beginner #mpCont02 table th:first-of-type,
#mp #container.beginner #mpCont02 table td:first-of-type {
  border-bottom: 1px solid #cdcdcd;
}

#mp #container.beginner #mpCont02 table th {
  text-align: center;
  background-color: #eeeeee;
}

@media print, screen and (min-width: 960px) {
  #mp #container.beginner #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.beginner #mpCont02 dl dt {
    width: 70px;
    font-size: 2.0rem;
  }
  #mp #container.beginner #mpCont02 dl:last-of-type {
    margin-bottom: 60px;
  }
  #mp #container.beginner #mpCont02 dl:last-of-type dt {
    height: 95px;
  }
  #mp #container.beginner #mpCont02 dl dd {
    width: 890px;
    padding: 24px;
    font-weight: 700;
  }
  #mp #container.beginner #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.4rem;
    font-weight: 400;
  }
  #mp #container.beginner #mpCont02 dl dd p {
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont02 dl dd p:first-of-type {
    margin-bottom: .5em;
  }
  #mp #container.beginner #mpCont02 dl dd p:first-of-type {
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont02 dl + dl:before {
    top: -25px;
    left: 50%;
    width: 12px;
    height: 12px;
  }
  #mp #container.beginner #mpCont02 h3 {
    font-size: 2rem;
  }
  #mp #container.beginner #mpCont02 h4 {
    font-size: 1.4rem;
    margin: .5em 0;
    font-weight: 700;
  }
  #mp #container.beginner #mpCont02 p + h4 {
    margin-top: 20px;
  }
  #mp #container.beginner #mpCont02 h5 {
    font-size: 1.4rem;
    margin: .5em 0 0;
  }
  #mp #container.beginner #mpCont02 .ok,
  #mp #container.beginner #mpCont02 .no {
    font-size: 1.4rem;
    line-height: 2.2rem;
    padding-left: 1.4rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.beginner #mpCont02 .idt {
    margin-left: 1.4rem;
  }
  #mp #container.beginner #mpCont02 table {
    margin-top: 52px;
  }
  #mp #container.beginner #mpCont02 table th,
  #mp #container.beginner #mpCont02 table td {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #mp #container.beginner #mpCont02 table th {
    width: 130px;
  }
  #mp #container.beginner #mpCont02 table td {
    padding: 25px;
    width: 830px;
  }
  #mp #container.beginner #mpCont02 table td h4 {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.beginner #mpCont02 dl {
    margin-bottom: 30px;
  }
  #mp #container.beginner #mpCont02 dl dt {
    width: 15%;
    font-size: 2.0rem;
  }
  #mp #container.beginner #mpCont02 dl dd {
    width: 85%;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  #mp #container.beginner #mpCont02 dl dd p:nth-of-type(n+2) {
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 400;
    margin-left: -0.4rem;
  }
  #mp #container.beginner #mpCont02 dl dd p:last-of-type {
    margin-bottom: 0;
  }
  #mp #container.beginner #mpCont02 dl + dl:before {
    top: -25px;
    left: 48%;
    width: 12px;
    height: 12px;
  }
  #mp #container.beginner #mpCont02 h3 {
    font-size: 1.4rem;
  }
  #mp #container.beginner #mpCont02 h4 {
    font-size: 1.2rem;
    font-weight: 700;
  }
  #mp #container.beginner #mpCont02 p + h4 {
    margin-top: 2rem;
  }
  #mp #container.beginner #mpCont02 h5 {
    font-size: 1.2rem;
  }
  #mp #container.beginner #mpCont02 .ok,
  #mp #container.beginner #mpCont02 .no {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0;
    padding-left: 1.05em;
    text-indent: -1.05em;
  }
  #mp #container.beginner #mpCont02 table {
    margin-top: 30px;
  }
  #mp #container.beginner #mpCont02 table {
    display: table;
    border: 1px solid #cdcdcd;
    font-weight: 400;
    border-collapse: collapse;
  }
  #mp #container.beginner #mpCont02 table th,
  #mp #container.beginner #mpCont02 table td {
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
  #mp #container.beginner #mpCont02 table th:first-of-type,
  #mp #container.beginner #mpCont02 table td:first-of-type {
    border-bottom: 1px solid #cdcdcd;
  }
  #mp #container.beginner #mpCont02 table th {
    text-align: center;
    width: 25%;
    background-color: #eeeeee;
  }
  #mp #container.beginner #mpCont02 table td {
    padding: 1rem;
    text-align: left;
  }
  #mp #container.beginner #mpCont02 table td h4 {
    font-size: 1.4rem;
    margin-left: -0.7rem;
  }
  #mp #container.beginner #mpCont02 .ticket:nth-of-type(2) {
    margin-top: 3rem;
  }
}

#mp #container.beginner #mpCont03 ul.tourDatesContainer {
  padding-left: 0;
}

#mp #container.beginner #mpCont03 ul.tourDatesContainer li.tourDetail:nth-of-type(2n+1) {
  background-color: #f3f3f3;
}

#mp #container.beginner #mpCont03 ul {
  margin-left: 0;
}

#mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper {
  font-weight: 700;
}

#mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .date .sat {
  color: #2854ae;
}

#mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .date .sun {
  color: #e22222;
}

#mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .lower .open,
#mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
  display: inline-block;
}

@media print, screen and (min-width: 960px) {
  #mp #container.beginner #mpCont03 h3 {
    font-size: 2.4rem;
    margin-top: 32px;
  }
  #mp #container.beginner #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 64px;
    padding-right: 64px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .date,
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    display: inline-block;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail {
    padding: 28px 0;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper .place {
    margin-left: 20px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .lower .goods {
    margin-left: 36px;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.beginner #mpCont03 h3 {
    font-size: 2rem;
    margin-left: 0;
  }
  #mp #container.beginner #mpCont03 ul.tourDatesContainer li.tourDetail .inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail {
    padding: 1rem 0;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .upper {
    font-size: 1.4rem;
    line-height: 2.1rem;
    margin-bottom: .8rem;
  }
  #mp #container.beginner #mpCont03 .tourDatesContainer .tourDetail .lower {
    font-size: 1.2rem;
  }
}

@media print, screen and (min-width: 960px) {
  #mp #container.beginner #mpCont04 ul li {
    font-size: 1.4rem;
    margin-bottom: 2.4rem;
  }
  #mp #container.beginner #mpCont04 h3 {
    background-color: #313145;
    color: #ffffff;
    padding: 1.8rem;
  }
  #mp #container #mpCont04 a {
    color: #2854ae;
  }
  #mp #container.beginner #mpCont04 hr {
    margin-bottom: 1em;
  }
  #mp #container.beginner #mpCont04 p.margin-bottom {
    margin-bottom: 1em;
  }
  #mp #container.beginner #mpCont04 p.style-red {
    color: #e22222;
  }
  #mp #container.beginner #mpCont04 p.text-right {
    width: 100px;
    margin-left: auto;
  }
}

@media screen and (max-width: 959px) {
  #mp #container.beginner #mpCont04 ul li {
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 2.4rem;
  }
  #mp #container.beginner #mpCont04 h3 {
    background-color: #313145;
    color: #ffffff;
    padding: 1.4rem;
  }
  #mp #container #mpCont04 a {
    color: #2854ae;
  }
  #mp #container.beginner #mpCont04 hr {
    margin-bottom: 1em;
  }
  #mp #container.beginner #mpCont04 p.margin-bottom {
    margin-bottom: 1em;
  }
  #mp #container.beginner #mpCont04 p.style-red {
    color: #e22222;
  }
  #mp #container.beginner #mpCont04 p.text-right {
    width: 100px;
    margin-left: auto;
  }
}

.select_store .head {
  margin-bottom: 20px;
  font-weight: 700;
  line-height: 5rem;
  letter-spacing: 0.05em;
}

@media print, screen and (min-width: 960px) {
  .select_store .head {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 959px) {
  .select_store .head {
    font-size: 2.5rem;
  }
}

.select_store h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media print, screen and (min-width: 960px) {
  .select_store h2 {
    padding-bottom: 10px;
  }
}

.select_store .txt {
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.select_store .list_convenience {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (max-width: 959px) {
  .select_store .list_convenience {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.select_store .list_convenience .list-item {
  padding: 10px;
  border: solid #cdcdcd;
  border-width: 1px 0;
  text-align: center;
}

@media print, screen and (min-width: 960px) {
  .select_store .list_convenience .list-item {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    width: 100%;
    max-width: 200px;
    border-right-width: 1px;
  }
  .select_store .list_convenience .list-item:first-child {
    border-left-width: 1px;
  }
}

@media screen and (max-width: 959px) {
  .select_store .list_convenience .list-item {
    width: 50%;
    border-right-width: 1px;
  }
  .select_store .list_convenience .list-item:nth-child(2n + 1) {
    border-left-width: 1px;
  }
}

.select_store .list_convenience .list-item img {
  max-width: 100%;
}

.select_store .list_convenience .list-item input[type="radio"] {
  opacity: 0;
  width: 0;
  height: 0;
}

.select_store .list_convenience .list-item input[type="radio"]:checked ~ .title:after {
  opacity: 1;
  -ms-filter: none;
  -webkit-filter: none;
  filter: none;
}

.select_store .list_convenience .title {
  position: relative;
  display: inline-block;
  margin-top: 10px;
  padding-left: 25px;
  text-align: left;
}

.select_store .list_convenience .title:before, .select_store .list_convenience .title:after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 50%;
}

.select_store .list_convenience .title:before {
  top: calc(50% - 1.8rem/2);
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 2px solid #cdcdcd;
}

.select_store .list_convenience .title:after {
  top: calc(50% - 1rem/2);
  left: 4px;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

@media screen and (max-width: 959px) {
  .select_store #button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.select_store #button a, .select_store #button button {
  position: relative;
  display: inline-block;
  padding: 20px 0;
  border-radius: 4px;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
}

.select_store #button a + a, .select_store #button a + button, .select_store #button button + a, .select_store #button button + button {
  margin-left: 20px;
}

@media print, screen and (min-width: 960px) {
  .select_store #button a, .select_store #button button {
    width: 350px;
  }
}

@media screen and (max-width: 959px) {
  .select_store #button a, .select_store #button button {
    width: calc(50% - 8px);
  }
}

.select_store #button a:hover, .select_store #button button:hover {
  opacity: 0.66;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=66)";
  filter: alpha(opacity=66);
}

.select_store #button a:after, .select_store #button button:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.select_store #button .next {
  background-color: #313145;
  -webkit-box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 -4px rgba(0, 0, 0, 0.2);
  color: #fff;
}

.select_store #button .next:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media print, screen and (min-width: 960px) {
  .select_store #button .next {
    padding: 20px 0;
    font-size: 2rem;
  }
  .select_store #button .next:after {
    right: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  .select_store #button .next {
    padding: 16px 0;
    font-size: 1.8rem;
  }
  .select_store #button .next:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
}

.select_store #button .return {
  background-color: #fff;
  -webkit-box-shadow: inset 0 -4px #0e0e12;
  box-shadow: inset 0 -4px #0e0e12;
  color: #0e0e12;
}

.select_store #button .return:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 3px);
  border: 1px solid #313145;
  border-radius: 4px;
  content: "";
}

.select_store #button .return:after {
  border-bottom: 2px solid #0e0e12;
  border-left: 2px solid #0e0e12;
}

@media screen and (min-width: 960px) {
  .select_store #button .return:after {
    left: 16px;
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 959px) {
  .select_store #button .return:after {
    left: 20px;
    width: 10px;
    height: 10px;
  }
}

.select_store .button {
  margin-top: 60px;
  text-align: center;
}

.select_store #guide p {
  line-height: 2.4rem;
}

.select_store #guide .messageBlock {
  padding: 26px 30px;
  border: 1px solid #d2d2d2;
}

.select_store #guide .link-text {
  color: #2854ae;
}

.select_store #guide .link-text:after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-left: 0.33em;
  border: 0 solid #2854ae;
  border-width: 1px 1px 0 0;
  -webkit-transform-origin: 55% 50%;
  -ms-transform-origin: 55% 50%;
  transform-origin: 55% 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media print, screen and (min-width: 960px) {
  .select_store #guide {
    margin-bottom: 60px;
  }
  .select_store #guide p {
    font-size: 1.6rem;
  }
  .select_store #guide .messageBlock {
    margin-bottom: 45px;
  }
  .select_store #guide .link-text {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 959px) {
  .select_store #guide .messageBlock {
    margin-bottom: 15px;
  }
}

.pagenation .current {
  background: #eee;
}

.pagenation .current a {
  color: inherit;
}

.pagenation a.current {
  color: inherit;
}

.l--errors {
  line-height: 1.4em;
  padding    : 8px 0px;
}
.admission_guide__admission_flow {
  display      : flex;
  margin-bottom: 24px;
  width        : 100%;
}
.admission_guide__admission_flow__node {
  width: 32%;
}
.admission_guide__admission_flow__node:nth-last-child(1) {
  width: 36%;
}