@charset "utf-8";
/* CSS Document */
* {
  font-family: -apple-system, '游ゴシック体', '游ゴシック Medium', 'Yu Gothic', 'Yu Gothic Medium', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
  line-height: 1.4;
  font-size: 100%;
  color: var(--gray-333);
}
.h1-logo-ttl{
	font-size: calc(20px + 4 * (100vw - 320px) / 448);
	padding: 0.5em 0 0 0.5em;
}
.h1-logo-ttl img {
  max-width: 50px;
  margin: 0 0.3em;
}
/*@media screen and (max-width:500px) {
  .h1-logo-ttl img {
    max-width: 220px;
    margin: 0 0.2em;
  }
}*/
.thumbnail {
  margin-bottom: 7em;
}
@media screen and (max-width:768px) {
  .thumbnail {
    margin-bottom: 6em;
  }
}
/* テキストにアンダーラインがひかれる */
.marker {
  background: linear-gradient(transparent 50%, rgba(255, 220, 123) 50%);
  display: inline;
  background-repeat: no-repeat;
  background-size: 0% 100%;
  transition: background-size 1.5s;
}
.marker.on {
  background-size: 100% 100%;
}
@media (min-width: 767.98px) {
    .footer-about {
        margin-bottom: -75px;
    }
}
@media screen and (max-width:768px) {
  .footer-about {
    margin: 20px 0 0 0;
  }
}
.footer-logo{
	font-size: calc(14px + 4 * (100vw - 320px) / 448);
	color: var(--white);
	padding: 0.5em 0 0 0.5em;
}
.footer-logo img {
	width: 40px;
	margin: 0 0.3em;
}
.footer-cont {
  padding-top: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width:992px) {
  .footer-cont {
    padding-top: 0;
    margin-bottom: 0
  }
}
.footer-cont-a {
  color: var(--white);
  text-align: left;
  position: relative;
  padding: 0 0 0.5em 1.5em;
}
.footer-cont-a::after {
  content: "";
  position: absolute;
  top: 21%;
  left: 0;
  transition: all 0.3s;
  transform: rotate(45deg);
  width: 9px;
  height: 9px;
  margin-left: 1px;
  border-top: 2px solid var(--white);
  border-right: 2px solid var(--white);
}
.footer-h5-ttl a {
  position: relative;
  display: inline-block;
  transition: color 0.3s;
  font-size: 13px;
}
.footer-h5-ttl a::before {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--white);
  transition: all 0.3s;
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
.footer-h5-ttl a:hover {
  color: var(--white);
  text-decoration: none;
}
.footer-h5-ttl a:hover::before {
  width: 100%;
}
.pagetop {
  height: 50px;
  width: 50px;
  position: fixed;
  right: 20px;
  bottom: 6%;
  background: var(--primary);
  border: solid 1px var(--white);
  border-radius: 4px;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}
.pagetop__arrow {
  display: block;
  height: 10px;
  width: 10px;
  border-top: 3px solid var(--white);
  border-right: 3px solid var(--white);
  transform: translateY(20%) rotate(-45deg);
}
.copyright {
  color: var(--white);
  font-size: 11px;
}
.right-img {
  display: flex;
  align-items: center;
}
.pc-only {
  display: block;
}
.sp-only {
  display: none;
}
@media screen and (max-width:768px) {
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
}