@charset "utf-8";
/* CSS Document */




/*Fonts
----------------------------------------------------------------------------------------------------------------------*/

/*Noto Sans JP 和ゴシック
-----------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

/*font-family: 'Noto Sans JP', sans-serif;*/




/*Noto Sans JP 和明朝
-----------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400&display=swap');

/*font-family: 'Noto Serif JP', serif;*/




/*Roboto 英ゴシック
-----------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@500&display=swap');

/*font-family: 'Roboto', sans-serif;*/




/*a
----------------------------------------------------------------------------------------------------------------------*/




/*Wrapp,Contents-wrapp,Footer
----------------------------------------------------------------------------------------------------------------------*/
/*Wrapp
-----------------------------------------------------------*/
.wrapp{
	width:100%;
	overflow:hidden;
	background:#fff;
	position:relative;
	z-index:10;
}




/*Contents-wrapp
-----------------------------------------------------------*/
.contents-wrapp{
	width:100%;
	padding:125px 0;
}


/*背景色*/

.back-bl{
	background:#111;
}

.back-gr{
	background:#eee;
}

.back-ye{
	background:#fffaf0;
}

.back-wh{
	background:#fff;
}
.back-db{
	background: #030f32;
}
/*文字色*/

.font-wh{
	color:#fff;
}


@media screen and (max-width:900px) {

.contents-wrapp{
	padding:100px 0;
}

}

@media screen and (max-width:700px) {

.contents-wrapp{
	padding:75px 0;
}

}





/*Contents
-----------------------------------------------------------*/
.contents1200{
	width:1200px;
	margin:0 auto;
}

@media screen and (max-width:1200px) {
	
.contents1200{
	width:92%;
}

}

.contents900{
	width:90%;
	margin:0 auto;
}

@media screen and (max-width:900px) {
	
.contents900{
	width:92%;
}

}





/*H2,H3
-----------------------------------------------------------*/

h1.regular-h1{
	font-size:20px;
	line-height:1.5 !important;
	text-align:center;
}

h1.regular-h1 span.eng-regular{
	font-size:48px;
	font-family: 'Roboto', sans-serif;
	letter-spacing:0.05em;
	color:#333;
	border-bottom:1px solid #666;
	line-height:1.5 !important;
}

h2.regular-h2{
	font-size:16px;
	line-height:1.5 !important;
	text-align:center;
}

h2.regular-h2 span.eng-regular{
	font-size:32px;
	font-family: 'Roboto', sans-serif;
	letter-spacing:0.05em;
	color:#333;
	border-bottom:1px solid #666;
	line-height:2 !important;
}

h3.regular-h3{
	font-size:20px;
	line-height:1.3 !important;
	font-weight:normal;
}


@media screen and (max-width:700px) {
	
h1.regular-h1{
	font-size:18px;
}

h1.regular-h1 span.eng-regular{
	font-size:36px;
}

h2.regular-h2{
	font-size:18px;
}

h2.regular-h2 span.eng-regular{
	font-size:36px;
}

h3.regular-h3{
	font-size:18px;
}


}

@media screen and (max-width:500px) {
	
h1.regular-h1{
	font-size:16px;
}

h1.regular-h1 span.eng-regular{
	font-size:30px;
}

h2.regular-h2{
	font-size:16px;
}

h2.regular-h2 span.eng-regular{
	font-size:30px;
}

h3.regular-h3{
	font-size:16px;
}

}

@media screen and (max-width:350px) {
	
h1.regular-h1 span.eng-regular{
	font-size:24px;
}
	
h2.regular-h2 span.eng-regular{
	font-size:16px;
}

h3.regular-h3{
	font-size:12px;
}
	
}







/*Span
-----------------------------------------------------------*/
span.bold{
	font-weight:bold;
}






/*Pタグ
-----------------------------------------------------------*/
p.m-text{
	font-size:16px;
	font-family: 'Noto Sans JP', sans-serif;
}

p.s-text{
	font-size:14px;
	font-family: 'Noto Sans JP', sans-serif;
}

p.l-text{
	font-size:18px;
	font-family: 'Noto Sans JP', sans-serif;
}

p.ll-text{
	font-size:20px;
	font-family: 'Noto Sans JP', sans-serif;
}

p.min-text{
	font-size:20px;
	font-family: 'Noto Serif JP', serif;
}


@media screen and (max-width:900px) {
	
p.m-text{
	font-size:14px;
}

p.s-text{
	font-size:12px;
}

p.l-text{
	font-size:16px;
}

p.ll-text{
	font-size:18px;
}

p.min-text{
	font-size:18px;
}

}

@media screen and (max-width:700px) {
	
p.min-text{
	font-size:16px;
}
	
}

@media screen and (max-width:500px) {
	
p.m-text{
	font-size:12px;
}
	
p.min-text{
	font-size:14px;
}
	
}

@media screen and (max-width:350px) {
	
p.m-text{
	font-size:10px;
}

p.l-text{
	font-size:14px;
}
	
}






/*Table
-----------------------------------------------------------*/
table th,table td{
	font-size:16px;
	font-family: 'Noto Sans JP', sans-serif;
}


@media screen and (max-width:900px) {

table th,table td{
	font-size:14px;
}

}

@media screen and (max-width:500px) {

table th,table td{
	font-size:12px;
}

}

@media screen and (max-width:350px) {

table th,table td{
	font-size:10px;
}

}




/*Br
-----------------------------------------------------------*/
br.br-900{
	display:none;
}

br.br-700{
	display:none;
}

br.br-500{
	display:none;
}

br.br-400{
	display:none;
}


@media screen and (max-width:900px) {

br.br-900{
	display:block !important;
}

}

@media screen and (max-width:700px) {

br.br-700{
	display:block !important;
}

}

@media screen and (max-width:480px) {

br.br-500{
	display:block !important;
}

}

@media screen and (max-width:400px) {

br.br-400{
	display:block !important;
}

}






/*Footer
-----------------------------------------------------------*/
footer {
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #666;
  text-align: center;
}
.logo-en {
  text-align: center;
  font-size: 2.5rem;
  color: #ffffff;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  margin: 0;
  padding: 0;
}
.copy {
  font-family: 'Roboto', sans-serif;
  color: #fff;
  font-size: 1rem;
}



@media screen and (max-width:700px) {
	
p.copy{
	font-size:1rem;
}

}

@media screen and (max-width:500px) {
.logo-en {
  font-size: 1.5rem;
  margin: 0;
  padding: 0;
}
.foot-logo span.foot-eg{
	font-size:1.5rem;
}

.foot-logo span.foot-rb{
	font-size:12px;
}

}

@media screen and (max-width:350px) {
	
.foot-logo span.foot-eg{
	font-size:1.2rem;
}

}







/*PageTop リンク
-----------------------------------------------------------*/
#Page-top{
	width:60px;
	height:60px;
	font-size:24px;
	position: fixed;
	right:1%;
	bottom:60px;
}

#Page-top a{
	color:#fff;
	text-align:center;
	padding:0 25%;
	background:#996;
	border-radius:10em;
	display:block;
	text-decoration:none;
	line-height:60px;
	opacity:0.8;
}
#Page-top a:hover{
	opacity:0.5;
}





/*Fadeアニメーション設定
-----------------------------------------------------------*/
 
.fade{
  opacity: 0;
   transform: translate3d(0, 0, 0);
  transition: all 2s ease;   /*fadeスピード*/
  &.full {
   transition: all 0.8 ease;
  }
}

 .top_fade{
  opacity: 0;
   transform: translate3d(0, -75px, 0);
  transition: all 2s ease; 
  &.full {
   transition: all 0.8 ease;
  }
}

 .right_fade{
  opacity: 0;
   transform: translate3d(75px, 0, 0);
  transition: all 2s ease; 
  &.full {
   transition: all 0.8 ease;
  }
}

 .left_fade{
  opacity: 0;
   transform: translate3d(-75px, 0, 0);
  transition: all 2s ease; 
  &.full {
   transition: all 0.8 ease;
  }
}

.bottom_fade{
  opacity: 0;
   transform: translate3d(0, 75px, 0);
  transition: all 2s ease;  
  &.full {
   transition: all 0.8 ease;
  }

}
/*delay,fast,full*/

.fade-content .anm_mod.active {
 opacity: 1;
 transform: translate3d(0, 0, 0);
}
/*background-color: #FFFFFF;
