﻿@charset "UTF-8";

/* ----アイコン画像---- */

.block-icon-image {
  width: 32px;
  padding-top: 32px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: 25px auto;
  background-position: 50% 50%;
}

.block-icon-image-small {
  width: 22px;
  padding-top: 22px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: 15px auto;
  background-position: 50% 100%;
}

.block-icon-image-small2 {
  width: 22px;
  padding-top: 22px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: 20px auto;
  background-position: 50% 100%;
}

.block-icon-image-double-small {
  width: 15px;
  padding-top: 15px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: 13px auto;
  background-position: 50% 50%;
}

.block-icon-image-page-navigation {
  width: 14px;
  aspect-ratio: 1 / 0.8;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: auto 100%;
  background-position: 50% 50%;
}

.block-icon-image-switcher {
  width: 32px;
  padding-top: 32px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: auto 20px;
  background-position: 100% 50%;
}

.block-icon-image-footer {
  width: 22px;
  padding: 30px 0 0 30px;
  margin-left: 20px;
  background-repeat: no-repeat;
  overflow: hidden;
  background-size: 20px auto;
  background-position: 0 50%;
}


.block-icon-image--commenting {
  background-image: url(../../img/sys/icon/white/commenting.png);
}

.block-icon-image--bullhorn {
  background-image: url(../../img/sys/icon/white/bullhorn.png);
}

.block-icon-image--line-chart {
  background-image: url(../../img/sys/icon/white/line-chart.png);
}

.block-icon-image--tv {
  background-image: url(../../img/sys/icon/white/tv.png);
}

.block-icon-image--search {
  background-image: url(../../img/sys/icon/black/search.png);
}

.block-icon-image--search-white {
  background-image: url(../../img/sys/icon/white/search.png);
}

.block-icon-image--shopping-cart {
  background-image: url(../../img/sys/icon/black/shopping-cart.png);
}

.block-icon-image--book {
  background-image: url(../../img/sys/icon/black/book.png);
}

.block-icon-image--question {
  background-image: url(../../img/sys/icon/black/question-circle.png);
}

.block-icon-image--envelope {
  background-image: url(../../img/sys/icon/black/envelope.png);
}

.block-icon-image--newspaper {
  background-image: url(../../img/sys/icon/black/newspaper-o.png);
}

.block-icon-image--desktop {
  background-image: url(../../img/sys/icon/white/desktop.png);
}

.block-icon-image--mobile-phone {
  background-image: url(../../img/sys/icon/white/mobile-phone.png);
}

.block-icon-image--minus {
  background-image: url(../../img/sys/icon/black/minus.png);
}

.block-icon-image--plus {
  background-image: url(../../img/sys/icon/black/plus.png);
}

.block-icon-image--user-o {
  background-image: url(../../img/sys/icon/black/user-o.png);
}

.block-icon-image--sign-out {
  background-image: url(../../img/sys/icon/black/sign-out.png);
}

.block-icon-image--check-square {
  background-image: url(../../img/sys/icon/black/check-square.png);
}

.block-icon-image--check-square-white {
  background-image: url(../../img/sys/icon/white/check-square.png);
}

.block-icon-image--pencil-lg {
  background-image: url(../../img/sys/icon/black/pencil-lg.png);
}

.block-icon-image--pencil-square-o {
  background-image: url(../../img/sys/icon/black/pencil-square-o.png);
}

.block-icon-image--shopping-basket {
  background-image: url(../../img/sys/icon/black/shopping-basket.png);
}

.block-icon-image--user-circle-o {
  background-image: url(../../img/sys/icon/black/user-circle-o.png);
}

.block-icon-image--calendar-check-o {
  background-image: url(../../img/sys/icon/black/calendar-check-o.png);
}

.block-icon-image--heart {
  background-image: url(../../img/sys/icon/black/heart.png);
}

.block-icon-image--heart-pink {
  background-image: url(../../img/sys/icon/heart_pink.png);
}

.block-icon-image--first {
  background-image: url(../../img/sys/icon/black/angle-double-left.png);
}

.block-icon-image--prev {
  background-image: url(../../img/sys/icon/black/angle-left.png);
}

.block-icon-image--last {
  background-image: url(../../img/sys/icon/black/angle-double-right.png);
}

.block-icon-image--next {
  background-image: url(../../img/sys/icon/black/angle-right.png);
}

.block-icon-image--affix {
  background-image: url(../../img/sys/icon/affix.png);
}

.block-icon-image--angle-right:after {
  content: "";
  display: inline-block;
  border-top: 1px solid #888;
  border-right: 1px solid #888;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: 0 5px 10px 0;
}

.block-icon-image--flex-align-left {
  display: table;
  width: 100%;
  display: flex;
  align-items: left;
  justify-content: left;
}

.block-icon-image--flex-cell {
  vertical-align: middle;
  margin: 0 5px 0 0;
}

.block-icon-image--flex-cell2 {
  vertical-align: middle;
  margin: 8px 5px 0 0;
}

.block-icon-image--flex-cell-margin-right {
  margin-right: 10px;
}

.block-icon-image--table {
  display: table;
  width: 100%;
}

.block-icon-image--table-cell {
  display: table-cell;
  vertical-align: middle;
}

.block-icon-image--table-cell-left {
  display: table-cell;
  height: 43px;
  width: 30px;
  padding-left: 0;
  vertical-align: middle;
  text-align: left;
}

.block-icon-image--table-cell-angle-right {
  display: table-cell;
  height: 43px;
  width: 40px;
  padding-left: 40px;
  vertical-align: middle;
  text-align: left;
  cursor: pointer;
}

.block-icon-image--table-cell-angle-right2 {
  display: table-cell;
  height: 43px;
  width: 40px;
  padding-left: 10px;
  vertical-align: middle;
  text-align: left;
  cursor: pointer;
}

.block-icon-image--center {
  text-align: center;
}
.block-icon-image--center-inline-block {
  display: inline-block;
}
/* ----ローディング（読み込み中）イメージ---- */

.block-loading {
  height: 100px;
  position: relative;
  overflow: hidden;
}
.block-loading-vh {
  height: 100vh;
  position: relative;
}
.block-loading--balls {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 70px;
  height: 70px;
  background-color: transparent;
}
.block-loading--ball {
  width: 50%;
  height: 15px;
  position: absolute;
  top: calc(50% - 10px);
  transform-origin: 100% 50%;
  left: 0;
}
.block-loading--ball::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: #333;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.block-loading--ball-1::before {
  animation: block-loading--keyframes 1s linear 0s infinite;
}
.block-loading--ball-2 {
  transform: rotate(45deg);
}
.block-loading--ball-2::before {
  animation: block-loading--keyframes 1s linear -0.125s infinite;
}
.block-loading--ball-3 {
  transform: rotate(90deg);
}
.block-loading--ball-3::before {
  animation: block-loading--keyframes 1s linear -0.25s infinite;
}
.block-loading--ball-4 {
  transform: rotate(135deg);
}
.block-loading--ball-4::before {
  animation: block-loading--keyframes 1s linear -0.375s infinite;
}
.block-loading--ball-5 {
  transform: rotate(180deg);
}
.block-loading--ball-5::before {
  animation: block-loading--keyframes 1s linear -0.5s infinite;
}
.block-loading--ball-6 {
  transform: rotate(225deg);
}
.block-loading--ball-6::before {
  animation: block-loading--keyframes 1s linear -0.625s infinite;
}
.block-loading--ball-7 {
  transform: rotate(270deg);
}
.block-loading--ball-7::before {
  animation: block-loading--keyframes 1s linear -0.75s infinite;
}
.block-loading--ball-8 {
  transform: rotate(315deg);
}
.block-loading--ball-8::before {
  animation: block-loading--keyframes 1s linear -0.875s infinite;
}
@keyframes block-loading--keyframes {
  0% {
    width: 15px;
    height: 15px;
    opacity: 1;
  }
  100% {
    width: 6px;
    height: 6px;
    opacity: .2;
    margin-left: 7px;
  }
}

/* ----ローディング（読み込み中）小サイズ イメージ---- */

.block-loading-min {
  height: 24px;
  position: relative;
  overflow: hidden;
}
.block-loading-min--balls {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 18px;
  height: 18px;
}
.block-loading-min--ball {
  width: 50%;
  height: 5px;
  position: absolute;
  top: calc(50% - 3px);
  transform-origin: 100% 50%;
  left: 0;
}
.block-loading-min--ball::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #333;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.block-loading-min--ball-1::before {
  animation: block-loading-min--keyframes 1s linear 0s infinite;
}
.block-loading-min--ball-2 {
  transform: rotate(45deg);
}
.block-loading-min--ball-2::before {
  animation: block-loading-min--keyframes 1s linear -0.125s infinite;
}
.block-loading-min--ball-3 {
  transform: rotate(90deg);
}
.block-loading-min--ball-3::before {
  animation: block-loading-min--keyframes 1s linear -0.25s infinite;
}
.block-loading-min--ball-4 {
  transform: rotate(135deg);
}
.block-loading-min--ball-4::before {
  animation: block-loading-min--keyframes 1s linear -0.375s infinite;
}
.block-loading-min--ball-5 {
  transform: rotate(180deg);
}
.block-loading-min--ball-5::before {
  animation: block-loading-min--keyframes 1s linear -0.5s infinite;
}
.block-loading-min--ball-6 {
  transform: rotate(225deg);
}
.block-loading-min--ball-6::before {
  animation: block-loading-min--keyframes 1s linear -0.625s infinite;
}
.block-loading-min--ball-7 {
  transform: rotate(270deg);
}
.block-loading-min--ball-7::before {
  animation: block-loading-min--keyframes 1s linear -0.75s infinite;
}
.block-loading-min--ball-8 {
  transform: rotate(315deg);
}
.block-loading-min--ball-8::before {
  animation: block-loading-min--keyframes 1s linear -0.875s infinite;
}
@keyframes block-loading-min--keyframes {
  0% {
    width: 5px;
    height: 5px;
    opacity: 1;
  }
  100% {
    width: 2px;
    height: 2px;
    opacity: .2;
    margin-left: 2px;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
