main .none {
    display:none;
}
main .attension {
    color:red;
}
main .attension a {
    color:red;
    text-decoration:underline;
}
#loading {
    position:absolute;
    top:0;
    left:0;
    display:none;
    z-index:9999;
    background-color:rgba(220,220,220,0.6);
    width:100%;
    height:100%;
}
#loading img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
#shop .shopImage .fitImage span {
       background-color:#fff;
}
#shop .shopInfo .contact_maddr {
    display: table;
    margin-left:0;
}
#shop .shopInfo .contact_maddr dt {
    display: table-cell;
    vertical-align:top;
}
#shop .shopInfo .contact_maddr img {
    height:40px;
}
#shop .shopInfo .contact_maddr a img {
    border-bottom:1px solid transparent;
}
#shop .shopInfo .contact_maddr a:hover img {
    border-bottom:1px solid #000;
}
#shop .introduce a {
    font-size:12px;
    text-decoration:underline;
}

#container header#line_coop li span.lineBtn {
    background-color:#888;
}
#guestMenu .lineBtn.nonActivated {
    cursor:default;
}
#locale .button {
    border-radius:0;
    background-color:transparent;
    padding: 0 10px;
    font-size: inherit;
    font-weight: bold;
    line-height: 2.1;
    min-width: 0;
    min-width: unset;
}
#locale .button:after {
    background:none;
}
#locale .button.active {
    cursor:default;
}
#locale .button.deactive img {
    opacity:0.4;
}
#locale .button.deactive:hover img {
    opacity:1;
}
#locale .button img {
    box-sizing:border-box;
    border:1px solid #ffa3b2;
    width:38px;
    vertical-align:middle;
}
#locale .button + .button {
    margin-left:8px;
}

#schedule.none {
    display:none;
}
#schedule.narrow {
    padding-top:0;
}
#schedule #nominatedList.unappointable {
    display:none;
}
#schedule #nominatedList .multiline {
    line-height:1.5em;
}

#schedule .msgWelcome {
  max-width:796px;
  margin-left: auto !important;
  margin-right: auto !important;
}
#schedule div.msgWelcome.ck-content h2, #schedule div.msgWelcome.ck-content h3, #schedule div.msgWelcome.ck-content h4 {
  position:static;
  font-weight:normal;
  text-align:center;
}
#schedule div.msgWelcome.ck-content h2:after, #schedule div.msgWelcome.ck-content h3:after, #schedule div.msgWelcome.ck-content h4:after {
  display:none;
}
#schedule div.msgWelcome.ck-content h2 {
  font-size:1.4em;
}
#schedule div.msgWelcome.ck-content h3 {
  font-size:1.3em;
}
#schedule div.msgWelcome.ck-content h4 {
  font-size:1.2em;
}

#schedule div.msgWelcome.ck-content {
  display: flex;
  flex-direction: column;
  margin:6px 20px;
  text-align:left;
  font-weight:normal;
  max-width:778px;
  padding:5px;
}
#schedule div.msgWelcome.ck-content:before {
  content:'';
}
#schedule div.msgWelcome.ck-content strong {
  font-weight:bold;
}
#schedule div.msgWelcome.ck-content .ck-widget__selection-handle,
#schedule div.msgWelcome.ck-content .ck-reset_all {
  display:none;
}

#letsReserve.change {
  padding-bottom:20px;
}
#pid.change {
    border-color:#ccc;
    background-image:none;
}
#reset_change {
    text-align:left;
}
#reset_change a {
    text-align:left;
    border:none;
}
#letsReserve #pid_mask {
    position:absolute;
    z-index:1;
}

.MSK.unclosable {
    cursor:default;
}
.modalCloseBtn.unclosable {
    display:none;
}

@media screen and (max-width:485px) {
    #container h1.ecHead {
        margin-bottom:1rem;
    }
}
#container nav a.ecBtn {
    background-color:#3f4faf;
}
#container nav a.ecBtn + span {
    display:block;
    margin-top:0.5em;
    font-size:12px;
    color:#696969;
}
#container .subMenu .ecTop a {
    display:inline-block;
    vertical-align: top;
    text-align:right !important;
}
#container .subMenu .ecTop a br {
    margin-bottom:0.25em;
}
#shop.for_line .ecTop .button {
    border:1px solid #3f4faf;
    color:#3f4faf;
    font-weight:normal;
    font-size:11px;
    border-radius:3px;
    margin:0.25rem auto 0.5em;
}
#atFirst .flow .ecFirst {
    padding:20px;
}

#letsReserve #for_pblock {
  border-bottom:1px solid #4c4c4c;
  margin-top:40px;
}
#letsReserve #for_pblock li.active {
  bottom:-1px;
  background-color:#fff;
  border-left:1px solid #4c4c4c;
  border-top:1px solid #4c4c4c;
  border-right:1px solid #4c4c4c;
}
#letsReserve #for_pblock li:not(.active) {
  bottom:-1px;
  border-bottom:1px solid #4c4c4c;
  background-color:#f2f2f2;
}
#letsReserve #for_pblock li {
  padding:0;
}
#letsReserve #for_pblock li a, #letsReserve #for_pblock li span {
  font-size: 20px;
  letter-spacing: 0.1em;
}
#letsReserve #for_pblock li a {
  padding: 8px 0;
  background-color:transparent;
  border:none;
  cursor:pointer;
}
#letsReserve #for_pblock li span {
  padding: 7px 0 9px 0;
}
#letsReserve .pblock.multi li {
  width: calc(33% - 10px);
}
#letsReserve .for_multiple.none, #letsReserve .multi_text.none {
  display:none;
}
#letsReserve div.for_multiple {
  text-align:right;
  margin:30px 20px;
}
#letsReserve .pblock.multi + .pblock.multi span {
    font-size:0;
}
#letsReserve .pblock select:not(:first-of-type) {
    margin-top:2em;
}

#letsReserve div.for_multiple #add_pointer {
  background-color: #ffa3b2;
  border:1px solid #ffa3b2;
  min-width:initial;
  width:40px;
  padding:0;
  font-weight:bold;
}
#letsReserve div.for_multiple #del_pointer {
  background-color: #eee;
  border:1px solid #aaa;
  min-width:initial;
  color:#888;
  width:40px;
  padding:0;
  font-weight:bold;
}
#letsReserve div.for_multiple #add_pointer::after, #letsReserve div.for_multiple #del_pointer::after {
    display:none;
}
#letsReserve div.for_multiple p {
  margin-top:1em;
}

#guidePage ol.decimal {
  list-style-type: decimal;
}
#guidePage main.ec dl + hr {
    margin-top:20px;
}
#guidePage main.ec aside a {
    font-size:1.25em;
}
@media only screen and (max-width: 740px) {
    #guidePage main.ec #papers h2 {
        font-size:1.5em;
    }
}

#loading {
    position:fixed;
}

@media only screen and (max-width: 485px) {
    #atFirst #for_pblock li {
        width:50%;
    }
}