*,*:before,*:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}

body {
  font-family: Noto Sans JP,ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,メイリオ,Meiryo,Osaka,ＭＳ Ｐゴシック,MS PGothic,sans-serif;
  color: #333;
  font-size: 16px;
  line-height: 1.5;
  word-break: break-all
}

img,video,object {
  max-width: 100%;
  height: auto;
  border: none;
  display: block
}

@media screen and (min-width: 897px) {
  .sp-only {
    display:none
  }
}

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

.sp,.sp-inline-flex {
  display: none!important
}

.pc {
  display: block;
  font-size: 16px
}

.pc-inline {
  display: inline
}

body,.page-content {
  display: flex;
  flex-direction: column;
  min-height: 100vh
}

footer {
  margin-top: auto
}

a {
  color: #7db9e7;
  text-decoration: none
}

/* a:hover {
  text-decoration: underline
} */

a[target=_blank] {
  display: inline-block;
  position: relative;
  margin: 0 15px 0 0;
  padding: 0 3px 0 0
}

a[target=_blank]:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -1em;
  width: 11px;
  height: 11px;
  background-image: url(/build/assets/ico-external.svg);
  background-size: contain;
  background-repeat: no-repeat
}

a[target=_ha_extarnal_link] {
  display: inline-block;
  position: relative;
  margin: 0 15px 0 0;
  padding: 0 3px 0 0
}

a[target=_ha_extarnal_link]:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -1em;
  width: 11px;
  height: 11px;
  background-image: url(/build/assets/ico-external.svg);
  background-size: contain;
  background-repeat: no-repeat
}

a.link-info {
  display: inline-block;
  position: relative;
  margin: 0 0 0 15px;
  padding: 0 0 0 3px
}

a.link-info:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -1em;
  width: 12px;
  height: 12px;
  background-image: url(/build/assets/ico-info.svg);
  background-size: contain;
  background-repeat: no-repeat
}

button:hover {
  cursor: pointer
}

button.btn-border {
  display: inline-block;
  border-radius: 50px;
  padding: 7px 15px;
  width: auto;
  font-weight: 700;
  background-color: #fff;
  color: #4b4b4b;
  font-size: 14px;
  margin: 0 1px
}

button.bluegreen-submit {
  background: linear-gradient(-90deg,#0bb3d6,#0bd2a0);
  color: #fff;
  font-size: 14px;
  padding: 10px 20px;
  width: 170px;
  font-weight: 700;
  display: inline-block;
  border-radius: 50px
}

button.border-gray {
  border: 2px solid #4b4b4b
}

button.border-lightgray {
  border: 2px solid #bababa
}

.btn-area {
  margin: 20px 0 0
}

.rating {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1em
}

.rating i {
  color: #ffce00;
  margin: 0 0 0 5px
}

.Vue-Toastification__container.top-right {
  top: 41em!important
}
