@charset "UTF-8";
html {
  overflow-y: scroll;
  font-size: 62.5%;
}

body {
	background: #000;
	color: #fff;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 1.6rem;
  -webkit-text-size-adjust: none;
  line-height: 1.5;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*** タブレット 768x ~ 1200px***/
@media screen and (min-width: 768px) and (max-width: 1200px) {
  html {
    font-size: 0.8333333333vw;
  }
}
/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
  html {
    font-size: 62.5%;
  }
  
  body {
	  font-size: 1.4rem;
  }
}
@media screen and (max-width: 374px) {
	html {
	  font-size: 2.6667vw;
	}
}


/* !Base Fonts -------------------------------------------------------------- */
a {
	color: inherit;
	text-decoration: none;
}
@media (min-width: 768px) {
  a {
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
 
}
a[href^="tel:"] {
  cursor: default;
  pointer-events: none;
}

@media (min-width: 768px) {
  .h-opacity {
    -webkit-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
  }
  .h-opacity:hover {
    opacity: 0.7;
    text-decoration: none;
  }
}

.is-hide {
  display: none;
}

@media (min-width: 768px) {
	.is-sp {
		display: none;
	}
}
@media (max-width: 767px) {
	.is-pc {
		display: none;
	}
}


.wrap {
  overflow: hidden;
}

.inner {
	margin: 0 auto;
	padding: 0 5rem;
	max-width: 112.4rem;
}

/* sp */
@media (max-width: 767px) {	
	.inner {
		padding: 0 2.4rem;
	}
}
@media (max-width: 380px) {
	.inner {
		padding: 0 2rem;
	}
}