@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanjp.min.css');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanmp.min.css');
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap');

html{
	overflow-x: hidden;
}
body{
	margin: 0;
	padding: 0;
	font-size: 15px;
	/*font-family: YakuHanMP, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;*/
	font-family: YakuHanJP, 'Noto Sans Japanese', 游ゴシック, 'Yu Gothic Medium', 'Hiragino Sans', sans-serif;
	font-weight: 500;
	line-height: 2;
	color: #000;
	position: relative;
	background: #FFF000;
}
a img {
	border: none;
	transition: all .5s;
}
img{
	display: block;
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}
a,a:hover,
a:active{
	text-decoration:none;
}
a:hover img {
	opacity: 0.7;
}

.pc{
	display:block;
}
.pc-inline{
	display:inline;
}
.sp{
	display:none;
}
@media screen and (max-width: 640px) {
	body{
	}
	.pc,.pc-inline{
		display:none;
	}
	.sp{
		display:block;
	}
}
/***********************************************************
 * asset
************************************************************/
#contents {
 	width: 100%;
 	position:relative;
  	margin:0 auto;
	overflow: hidden;
	/*background: #ffe700;*/
}
.-inner{
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}
.container{
 	position:relative;
	z-index:1;
}
h2{
	font-family: 'Roboto', sans-serif;
	font-size: 24px;
	text-align: center;
	margin-bottom: 25px;
	color: #000;
  letter-spacing: .05em;
}
@media screen and (max-width: 640px) {
	.container{
	}
	h2{
	}
}
/***********************************************************
 * header
************************************************************/
.header{
  display: flex;
  padding: 10px;
  justify-content: space-between;
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #FFF000;
  box-sizing: border-box;
}
.head-nav{
  display: flex;
  margin: 0;
}
.head-nav li{
	display: flex;
	align-items: center;
  margin: 0;
  padding: 0 1.83vw;
	position: relative;
	line-height: 1.3;
}
.head-nav li:before{
  content: "";
  position: absolute;
  left: 0;
  width: 0;
  background: #000;
  height: 100%;
  transition: all .5s;
  z-index: -1;
}
.head-nav li:hover:before{
  width: 100%;
}
.head-nav li + li{
  border-left: solid 1px #000;
}
.head-nav li a{
  color: #000;
  font-family: 'Roboto', cursive;
  font-weight: bold;
  transition: all .5s;
}
.head-nav li:hover a{
  color: #FFF000;
}
@media screen and (max-width: 768px) {
  .header{
		position: fixed;
    width: 100%;
    box-sizing: border-box;
    background: #FFF000;
    justify-content: space-between;
    align-content: center;
  }
	.head-nav {
		display: none;
		top: 0;
		left: 0;
		height: 100%;

    padding: 70px 0 20px;
		text-align: center;
		width: 100%;
    background: #000;
    position: fixed;
	}
	.head-nav li{
		display: block;
		border-right: none;
		width: 100%;
		padding: 10px 0;
		box-sizing: content-box;
		margin: 0;
		font-weight: 600;
		font-size: 20px;
		height: 50px;
	}
  .head-nav li + li{
    border-left: none;
  }
	.head-nav li:hover{
		background: none;
	}
	.head-nav li.active:after, .head-nav li:after{
		content: none;
	}
	.head-nav li a{
		color: #fff100;
	}
	.head-nav li:hover a,
	.head-nav li:hover p{
		color: #fff;
	}
}
.menu {
	width: 20px;
	height: 30px;
	/* top: 10px; */
	/* right: 10px; */
	position:relative;
	cursor:pointer;
	z-index:99999999;
	display: none;
}
.menu1 {
	width: 20px;
	height: 2px;
	background-color: #000;
	position:absolute;
  top: 6px;
}
.menu2 {
	width: 20px;
	height: 2px;
	background-color: #000;
	position:absolute;
	top: 15px;
}
.menu3 {
	width: 20px;
	height: 2px;
	background-color: #000;
	position:absolute;
	top: 24px;
}
.menu1,.menu2,.menu3 {
	transition:all .5s ease-out;
	-o-transition:all .5s ease-out;
	opera-moz-transition:all .5s ease-out;
	firefox-webkit-transition:all .5s ease-out;
	chromesafari-ms-transition:all .5s ease-out;
	border-radius: 2px;
	/* box-shadow: 0 0 3px 2px rgba(0,0,0,0.3); */
}
.menuclick1 {
	top:13px;
	bottom: 0;
	-moz-transform:rotate(405deg);
	-webkit-transform:rotate(405deg);
	-o-transform:rotate(405deg);
	-ms-transform:rotate(405deg);
	transform:rotate(405deg);
	background-color: #FFF000;
}
.menuclick2 {
	opacity:0
}
.menuclick3 {
	top:13px;
	bottom: 0;
	-moz-transform:rotate(-405deg);
	-webkit-transform:rotate(-405deg);
	-o-transform:rotate(-405deg);
	-ms-transform:rotate(-405deg);
	transform:rotate(-405deg);
	background-color: #FFF000;
}

@media screen and (max-width: 640px) {
	#page-home .menu {
		display: block;
		top: 0;
		left: 5px;
	}
}


@media screen and (max-width: 768px) {
	#page-about .menu {
		display: block;
		top: 0;
		left: 5px;
	}
}

/*--------------------------------------*/
/*.sns{
  padding: 20px 0 0;
  width: calc(100% - 20px);
  margin: 0 auto;
}*/
._sns-list{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
._sns-list li{
  margin: 0 10px;
  font-size: 25px;
  line-height: 1;
}
._sns-list li a{
  color: #000;
  transition: all .5s;
}
._sns-list li a:hover{
  color: #fff;
}
@media screen and (max-width: 640px) {
/*  .sns{
    padding: 0;
    width: 30px;
    margin: 0 auto;
    position: absolute;
    top: 20px;
    right: 10px;
    left: auto;
  }*/
  ._sns-list{
    font-size: 24px;
  }
  ._sns-list li{
  }
}

@media screen and (max-width: 640px) {
}
/***********************************************************
 * contents
************************************************************/
section{
	position:relative;
	width: 100%;
	margin: 0 auto;
	padding: 100px 0;
}
@media screen and (max-width: 640px) {
	section{
		padding: 15% 0;
	}
}

/*-----------------
* slick
-----------------*/
.slick-list {
	margin-bottom: 15px;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}
.slick-slide{
	text-align: center;
	margin: 0 10px;
	position: relative;
}
.slick-slide img{
	width: 100%;
	margin: 0 auto;
}
.slick-dots li button:before{
	transition: all .5s;
}
.slick-dots li.slick-active button:before,
.slick-dots li.slick-active button:before{
    opacity: .75;
    color: #666 !important;
}
.slick-prev {
	z-index: 11;
	width: 30px;
	height: 30px;
  	border: 5px solid;
  	border-color:  transparent transparent #fff #fff;
  	transform: rotate(45deg);
	margin-top: -30px;
}
.slick-prev:before {
	content: none;
	width: 30px;
	height: 30px;
  	border: 5px solid;
  	border-color:  transparent transparent #fff #fff;
  	transform: rotate(45deg);
}
.slick-next {
	z-index: 11;
	width: 30px;
	height: 30px;
  	border: 5px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(45deg);
	margin-top: -30px;
}
.slick-next:before {
	content: none;
	width: 30px;
	height: 30px;
  	border: 5px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(45deg);
}
.slick-prev{
	left: 12%;
}
.slick-prev:before{
	content: none;
}
.slick-prev:hover {
}

.slick-next{
	right: 12%;
}
.slick-next:before{
	content: none;
}
.slick-next:hover {
}


/****loading****/
#loading {
	width: 100%;
	height: 100%;
	background: #FFF000;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	display: flex;
	justify-content:center;
	align-items: center;
}
.loader {
  color: #000;
  font-size: 20px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}

/*******************************************************************
 * pageTop
 *******************************************************************/
#pageTop {
	width: 75px;
	height: 75px;
	color: #000;
	position: fixed;
	bottom: 20px;
	right: 25px;
	z-index: 1000;
	cursor: pointer;
	transition: opacity 1s;
}
#pageTop:hover {
	opacity: 0.6;
}
@media screen and (max-width: 640px) {
	#pageTop {
		width: 50px;
		height: 50px;
		bottom: 70px;
	}
}

