@charset "utf-8";

/* for Common & Smartphone*/
html,body{
	position:relative;
	height:100%;
}
html {
  scroll-behavior: smooth;
  /*font-size: 62.5%;10px基準*/
	}

@media screen and  (max-width:767px){
  /* スマートフォン 767px以下 */
  :target {
    scroll-margin-top: 75px;
  }
}
@media screen and (min-width:768px){
  :target {
    scroll-margin-top: 120px;
  }
}


body{
	position:relative;
	-webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  font-family: YakuHanJP, "BIZ UDPGothic", "游ゴシック","Yu Gothic", YuGothic, "游ゴシック体",'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-weight: 700;
  font-style: normal;
	color:#111;
	line-height:1.6;
}
h1,h2,h3,h4,h5,h6{
  /*font-weight: 400 !important;*/
}

@media screen and (max-width:320px) {
	html{
		/*font-size: 50%;8px基準*/
	}
}
/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 840px) and (orientation:portrait) {
/*縦向きのみの記述*/
	
}
/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 834px) and (orientation:portrait) {
/*縦向きのみの記述 --- iPad Pro12.9はPC表示*/
	html{
		/*font-size: 50%;*//*8px基準*/
	}
}

.page{
  padding-bottom: 80px;
  overflow-x: hidden;
}
.sp{display:block;}
.pc{display:none;}

.spIL{display:inline;}
.pcIL{display:none;}

.conSP{
margin-left: 5.33vw !important;
margin-right: 5.33vw !important;
/*margin-left: 8vw !important;
margin-right: 8vw !important;*/
}



/*リンク 
*/
a:link{
	color:#111;
	text-decoration: none;
	}
a:visited{
	color:#111;
	}

a:active/*,
a:hover*/{
	color:#111;
	}
.disabled{
	cursor:default;
  opacity: 1 !important;
}
.txtUL{
	text-decoration: underline;
}

img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}
img[src$=".svg"] {
    width: 100%;
}
.img100{
	width:100%;
}

.relative{
	position:relative;
	}
.static{
	position:static !important;
	}
.hide{
	display:none;
	}

/*font*/
.normal{
	font-family: YakuHanJP, "BIZ UDPGothic", "游ゴシック","Yu Gothic",  YuGothic, "游ゴシック体",'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-weight: 400;
	}
.bold{
  font-weight: 700 !important;
	}
.fMin{
  font-family: "Hiragino Mincho ProN","Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif;
}

/*きりのいいとことで改行*/
.br{
  display: inline-block;
}

/* for PC*/
@media print, screen and (min-width:768px) {
  .page{
    padding-bottom: 0;
  }
	.sp{display:none;}
	.pc{display:block;}

	.spIL{display:none;}
	.pcIL{display:inline;}

	.conSP{
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.conPC{
		max-width:1020px;/*1000px*/
		width: auto !important;
		width: 1100px;
		margin-left:auto !important;
		margin-right:auto !important;
		padding-left:10px;
		padding-right:10px;
	}
	.conPCW{
		max-width:1280px;
		margin-left:auto !important;
		margin-right:auto !important;
	}
	.conPCS{
		max-width:970px;
		margin-left:auto !important;
		margin-right:auto !important;
		padding-left:10px;
		padding-right:10px;
	}
	.conPCSS{
		max-width:850px;
		margin-left:auto !important;
		margin-right:auto !important;
		padding-left:10px;
		padding-right:10px;
	}

	a:link,
	a:visited{}
	a:active,
	a:not(.disabled):hover{
		text-decoration:none;
		}
	a,
	.hover{
		-webkit-transition: .3s;
		transition: .3s;
		}
  
  .hover:hover{
    opacity: 0.7;
  }


	.disabled{
		text-decoration:none;
	}

}

/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 834px) and (orientation:portrait) {
/*縦向きのみの記述 --- iPad Pro12.9はPC表示*/
	
}


/*header [
----------------------------------------------------------- */
.header{}

/* for PC*/
@media print, screen and (min-width:768px) {
  .header{}
}


/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 834px) and (orientation:portrait) {
/*縦向きのみの記述 --- iPad Pro12.9はPC表示*/

}

/*btnPageTop*/
.btnPageTop{
	display: none;
	position:fixed;
	right:10px;
	bottom:65px;
	width:48px;
	height:48px;
  z-index: 150;
  border-radius: 50%;
	}
.btnPageTop:hover{
  cursor: pointer;
}
.btnPageTop span{
	position:relative;
	display:block;
	width:100%;
	height:100%;
	background: rgba(0,0,0,0.4);
  border-radius: inherit;
	}
.btnPageTop span::after{
	content:"";
	position:absolute;
	display:block;
	left: 50%;
	top: 15px;
	width:15px;
	height:15px;
	margin:-5px 0 0 -10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
  transform-origin: right top;
	-webkit-transform: rotate(-45deg) translate(-50%,0);
	transform: rotate(-45deg) translate(-50%,0);
	}

/* for PC*/
@media print, screen and (min-width:768px) {
  /*btnPageTop*/
  .btnPageTop{
    bottom:10px;
    }
  }



.shiny{
  display: block;
  position: absolute !important;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  overflow: hidden;
  transition: 300ms;
  z-index: 3;
}
.shiny::before{
  position: absolute;
  content: '';
  display: inline-block;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: #fff;
  transition: 300ms;
  animation: shinyshiny 3.0s ease-in-out infinite;
}

a:hover .shiny {
    animation:none;
}

@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*
contents
*/
main{
	display: block;
}
.contents{
  position: relative;
  padding: 0 0 40px 0;
  z-index: 100;
  /*overflow-x: hidden;*/
}

.tCol00{
  color: #111 !important;
}
.tCol99{
  color: #fff !important;
}

/* for PC*/
@media print, screen and (min-width:768px) {
	.contents{
    padding: 0 0 80px 0;
  }


}

/*キャプション*/
.caption{
	clear: both;
	padding: 0 0 40px 0;
  color: #777;
}
.cap{
	font-size: 10px;
	line-height: 1.6;
	letter-spacing: normal;
  z-index: 2;
}
.cap02{
	font-size: 11px;
	line-height: 1.4;
	letter-spacing: normal;
  z-index: 2;
}
.cap.type01,
.cap02.type01{
  position: absolute !important;
  right: 5px;
  bottom: 2px;
}
.cap.type02,
.cap02.type02{
  position: absolute !important;
  right: 10px;
  bottom: 2px;
}

.cap.type03,
.cap02.type03{
  position: absolute !important;
  left: 5px;
  bottom: 2px;
}

.cap.type04,
.cap02.type04{
  position: absolute !important;
  left: 10px;
  bottom: 2px;
}

/* for PC*/
@media print, screen and (min-width:768px) {
	.caption{
		padding: 30px 0;
	}
	.cap{}
  .cap02{
    font-size: 12px;
  }
  
  .cap.type01,
  .cap02.type01{
    right: 2px
  }
  .cap.type02,
  .cap02.type02{
    right: 4px;
  }
}


/* for PC*/
@media print, screen and (min-width:768px) {
}








/* for SP iPhone5*/
@media screen and (max-width:320px) {
	
}

/* for SP landscape*/
@media screen and (max-width:767px) and (orientation: landscape) {
}


/* for iPad*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
/*縦横両方の記述*/

}







/*set aos
--------------------------------- */
/*custom animation*/
* [data-aos="ca-slideup"] {
	transform: translateY(30px);
}
* [data-aos="ca-slideup"].aos-animate {
	transform: translateY(0);
}

* [data-aos="ca-slideleft"] {
	transform: translateX(30px);
}
* [data-aos="ca-slideleft"].aos-animate {
	transform: translateY(0);
}

* [data-aos="ca-slideright"] {
	transform: translateX(-30px);
}
* [data-aos="ca-slideright"].aos-animate {
	transform: translateY(0);
}


* [data-aos="ca-fade"] {
  opacity: 0;
}
* [data-aos="ca-fade"].aos-animate {
  opacity: 1;
}

* [data-aos="ca-fadeup"] {
	transform: translateY(30px);
  opacity: 0;
}
* [data-aos="ca-fadeup"].aos-animate {
	transform: translateY(0);
  opacity: 1;
}

/*ca-fadeup02*/
* [data-aos="ca-fadeup02"] {
	transform: translateY(30px);
}
* [data-aos="ca-fadeup02"].aos-animate {
	transform: translateY(0);
}
* [data-aos="ca-fadeup02"] img {
	 opacity: 0;
  transition-duration: .6s;
}
* [data-aos="ca-fadeup02"].aos-animate img {
	opacity: 1;
}

* [data-aos="ca-fadedown"] {
	transform: translateY(-30px);
  opacity: 0;
}
* [data-aos="ca-fadedown"].aos-animate {
	transform: translateY(0);
  opacity: 1;
}

/*ca-fadedown02*/
* [data-aos="ca-fadedown02"] {
	transform: translateY(-30px);
}
* [data-aos="ca-fadedown02"].aos-animate {
	transform: translateY(0);
}
* [data-aos="ca-fadedown02"] img {
	 opacity: 0;
  transition-duration: .6s;
}
* [data-aos="ca-fadedown02"].aos-animate img {
	opacity: 1;
}


* [data-aos="ca-faderight"] {
	transform: translateX(-30px);
  opacity: 0;
}
* [data-aos="ca-faderight"].aos-animate {
	transform: translateX(0);
  opacity: 1;
}

* [data-aos="ca-fadeleft"] {
	transform: translateX(30px);
  opacity: 0;
}
* [data-aos="ca-fadeleft"].aos-animate {
	transform: translateX(0);
  opacity: 1;
}





/* for pc*/
@media screen and (min-width: 768px) {
	/*custom animation*/
	* [data-aos="ca-slideup"] {
		transform: translateY(60px);
	}
  * [data-aos="ca-fadeup"] {
    transform: translateY(60px);
  }
  * [data-aos="ca-fadeup02"] {
    transform: translateY(60px);
  }
  
  * [data-aos="ca-slideleft"] {
    transform: translateX(60px);
  }

  * [data-aos="ca-slideright"] {
    transform: translateX(-60px);
  }
  
  
  * [data-aos="ca-fadeleft"] {
    transform: translateX(60px);
  }
  * [data-aos="ca-faderight"] {
    transform: translateX(-60px);
  }

}





/*for ios*/
.ios a:hover{
	opacity: 1 !important;
}