@charset "UTF-8";
body {
  font-family: -apple-system, BlinkMacSystemFont, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, Verdana, sans-serif;
  font-size: 16px;
  line-height: 1.6rem; }

a.disable {
  pointer-events: none; }

nav.in .collapse {
  display: block; }

#header {
  padding-top: 109px; }

#header .navbar {
  border-bottom: 3px solid #000000;
  position: fixed;
  top: 0;
  z-index: 99;
  width: 100%; }

main section {
  padding-top: 40px; }

.block-header .title,
.section-header .title {
  font-size: 1.5rem;
  border-bottom: 3px solid #cccccc;
  border-left: 8px solid #00a0e9;
  position: relative;
  padding: 0.5rem 0.8rem 0.3rem; }

section .section-body > .caption {
  font-size: 1.2rem;
  background-color: #eeeeee;
  padding: 0.25rem 0.5rem 0.1rem; }
  section .section-body > .caption::first-letter {
    color: #00a0e9;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
    font-size: 1.3rem;
    letter-spacing: 0.15rem; }

section ol {
  padding: 0 0 0 2rem; }
  section ol li {
    padding-top: 1rem; }

.strong {
  font-size: 1.5rem; }

.atention {
  font-size: 1.25rem; }

#right {
  padding-top: 40px; }
  #right .block {
    padding-top: 40px; }
    #right .block .title {
      font-size: 1rem; }

#footer {
  background-color: #cccccc; }

#footer .copyright {
  text-align: center;
  padding: 1rem 0;
  background-color: #666666;
  color: #ffffff; }

#shop-list .item {
  padding-top: 1rem;
  padding-bottom: 1rem; }

#shop-list .card {
  cursor: pointer;
  height: 100%;
  color: #000000; }
  #shop-list .card .card-title {
    padding: .5rem 1rem;
    background-color: #b6e8ff; }
  #shop-list .card .row {
    margin: 0;
    border-bottom: 1px dotted #cccccc; }
    #shop-list .card .row .caption,
    #shop-list .card .row .desc {
      padding-top: .5rem;
      padding-bottom: .5rem; }
    #shop-list .card .row .caption {
      background-color: #f5f5f5; }
  #shop-list .card.status1 {
    position: relative;
    overflow: hidden; }
  #shop-list .card.status1:before {
    content: "成約済み";
    display: inline-block;
    font-size: 2rem;
    color: #ffffff;
    background-color: crimson;
    padding: 0.75rem 1rem;
    text-align: center;
    width: 80%;
    top: 45%;
    left: 10%;
    position: absolute;
    transform: rotateZ(-15deg);
    z-index: 10; }
  #shop-list .card.status2 {
    opacity: 0.3; }
  #shop-list .card.status1 {
    background-color: #cccccc; }
    #shop-list .card.status1 .card-body,
    #shop-list .card.status1 .scale {
      opacity: 0.5; }
  #shop-list .card form .row {
    border: none; }

#shop-list.desc .card {
  cursor: initial; }

#shop-order .list-group-item {
  cursor: move; }

#shop-order .list-group-item.status2 {
  opacity: 0.5;
  background-color: #cccccc; }

#shop-order .list-group-item.status1 {
  background-color: #ffcccc; }

.sortable-chosen {
  color: #fff;
  background-color: #ffd280 !important; }

.scale {
  max-height: 140px;
  overflow: hidden;
  position: relative; }

.scale img {
  transition: all 0.5s ease 0s; }

.scale img:hover {
  transform: scale(1.2, 1.2);
  opacity: 0.8; }

.scale .category,
.scale .area {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 200, 127, 0.5);
  color: #ffffff;
  font-size: 0.8rem;
  padding: 0 0.5rem;
  z-index: 10; }

.scale .category {
  top: unset;
  bottom: 0;
  left: unset;
  right: 0;
  background-color: rgba(200, 0, 60, 0.5); }

#shop-description {
  padding-top: 20px; }

.breadcrumb {
  border-radius: 0;
  background-color: #CCCCCC;
  padding: .5rem 1rem .25rem; }
  .breadcrumb a {
    text-decoration: none; }

.back2top {
  position: relative;
  opacity: 0;
  transition: opacity 1.0s ease 0s;
  z-index: 999; }
  .back2top.in {
    opacity: 1.0; }
  .back2top a {
    display: block;
    position: fixed;
    right: 15px;
    bottom: 15px;
    padding: 0;
    margin: 0;
    width: 64px;
    height: 64px;
    font-size: 32px;
    text-align: center;
    line-height: 64px;
    color: #FFF;
    overflow: hidden;
    z-index: 99;
    border: 1px solid #FFF;
    background-color: rgba(0, 0, 0, 0.75); }

.form-confirm-block {
  display: none; }

.form-confirm-block .row {
  padding: 0.5rem;
  border-bottom: 1px dotted #CCCCCC; }

.form-confirm-block .row:last-child {
  border: none; }

.form-result-block {
  display: none; }

@media (max-width: 768px) {
  #header {
    padding-top: 71px; }
  .navbar-brand img {
    max-width: 200px; }
  .link-next a,
  .link-prior a {
    display: block;
    background-color: #eeeeee;
    border: 1px solid #cccccc;
    padding: 1rem; }
  #header h1 {
    padding: 1rem;
    font-size: 1rem;
    color: #666666;
    margin: 0; }
  #shop-list .card .card-body {
    padding-top: .5rem;
    padding-bottom: .25rem; }
  #shop-list .card .card-title {
    margin-left: -15px;
    margin-right: -15px; }
  #shop-list .card .row {
    margin: 0 -15px; } }
