@charset "UTF-8";
/* CSS Document */
body{
	margin:0 auto;
	max-width: 1920px;
	font-family: "Noto Serif JP", serif;
  　font-optical-sizing: auto;
  　font-weight: 300;
  　font-style: normal;
}
/* ここからローディング画面用アニメーション */
	 .loading {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 10;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: fadeOut 1.5s 2.5s forwards;
  }
  
  @keyframes fadeOut {
	0% {
	  opacity: 1;
	}
  
	100% {
	  opacity: 0;
	  visibility: hidden;
	}
  }
  
  .loading__logo {
	opacity: 0;
	animation: logo_fade 2s 0.5s forwards;
	width: 90px;
  }
  
  @keyframes logo_fade {
	0% {
	  opacity: 0;
	  transform: translateY(20px);
	}
  
	60% {
	  opacity: 1;
	  transform: translateY(0);
	}
  
	100% {
	  opacity: 0;
	}
  }
/* ここまでローディング画面用アニメーション */
h2 {
	font-size: 50px;
}
h3 {
	font-size: 36px;
}
h4{
	font-size: 26px;
}
p {
	font-size: 26px;
	line-height:158%;
}
li {
	list-style: none;
	font-size: 26px;
}
ul{
	padding-left: 0;
	margin-bottom: 0;
}
.bl_header{
	margin:2em 2rem 2rem 2rem;
	display:flex;
	align-items: center;
	align-items: flex-start;
	justify-content: center;
}
.bl_header_rogo{
	flex:0 1 10%;
	position: fixed;
	top: 38px;
  	left: 2.65625%;
}
.bl_header_rogo img{
	max-width:60px;
	margin-top:38px;
	background:rgba(200,200,200,0.1);
}
.bl_header_rogo img:hover{
	background:rgba(255,255,255,0.3);
	border:0.5px solid #ACACAC;	
}
.bl_header > img{
	width:100%;
}
.bl_header_nav ul{
	display:flex;
}
.el_header_nav {
	margin-left:2rem;
	flex:1;
	text-align: center;
	font-size: 20px;
}
.bl_header > nav{
	width:70%;
}
.el_header_nav a{
	color:black;
}
.mv{
	display: flex;
    flex-direction: column;
    align-items: center;
	margin-top:60px;
}
.mv_logo img{
	max-width: 60px;
	margin-top:-1rem;
	margin-bottom:28px;
}
.mv_img{
	object-fit: contain;
}
.mv_img img{
	width:100%;
}
.scroll{
	font-size: 1.458333vw;
	color:#3F5A67;
	margin-top:1rem;
}
.bl_about{
	margin-top:280px;
	padding-top:114px;
	padding-bottom:114px;
	background-color: #E4E9EF;
	color:#3F5A67;
}
.bl_about_ttls{
	display:flex;
	justify-content: flex-end;
}
.el_about_ttl{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.el_about_subttl{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.el_about_img img{
	width: 100%;
	display: flex;
    flex-direction: row-reverse;
}
.bl_about_cont{
	margin-top: 137px;
	margin-left:10.5208%;
	max-width: 55%;
}
.bl_products{
	margin-top:380px;
	color:#3F5A67;
}
.bl_products_ttl{
	display:flex;
	justify-content: flex-end;
	margin-right:15%;
}
.el_products_ttl{
	writing-mode: vertical-rl;
}
.el_products_subttl{
	writing-mode: vertical-rl;
}
.el_products_img{
	margin-top:467px;
	display:flex;
	justify-content: center;
}
.el_products_img img{
	width:100%;
}
.el_products_sp_img{
	display:none;
}
.bl_media{
	display:flex;
	align-items: center;
	margin-top: 1032px;
	background-color:#3F5A67;
	max-height:719.3px;
	min-height:495.08px;
}
.bl_media_imagWrapper{
	flex:0 1 27.5833333%;
	margin-right:8.072916%;
}
.bl_media_imagWrapper > img{
	width:100%;
	object-fit: scale-down;
}
.bl_media_imagWrapper_sp{
	display: none;
}
.bl_media_body{
	flex:1;
	color:white;
	padding:1rem 14% 2rem 0;
}
.bl_media_body > *:last-child{
	margin-bottom: 0;
}
.bl_media_contents{
	display: flex;
	justify-content: flex-start;
	margin-top: 1.5em;
	margin-right:1em;
}
.bl_experience{
	margin-top:602px;
	display: flex;
	flex-direction: column;
	align-items: center;
	color:#3F5A67;
}
.bl_experience_ttl{
	display:flex;
	border-bottom: 0.5px solid #3F5A67;
	padding-bottom: 2rem;
}
.el_experience_ttl{
	writing-mode: vertical-rl;
}
.el_experience_subttl{
	writing-mode: vertical-rl;
}
.experience_imagWrapper{
	margin-top:60px;
	display:flex;
	justify-content: center;
}
.experience_imagWrapper img{
	width:100%;
}
.experience_content{
	background-color:#E4E9EF;
	display: flex;
	justify-content: center;
	padding: 62px;
	margin-right: 426px;
	margin-left: 426px;
	margin-top:74px;
	min-width:55.57%;
}
.experience_imagWrapper2{
	margin-top: 734px;
}
.experience_imagWrapper2 img{
	width: 100%;
}
.experience_imagWrapper3{
	margin-top: 211px;
}
.experience_imagWrapper3 img{
	width:100%;
}
.bl_contact{
	margin-top: 328px;
	padding-top:91px;
	padding-bottom:91px;
	background-color: #3F5A67;
	color: white;
	display:flex;
	flex-direction: column;
}
.bl_contact_ttl{
	display:flex;
	justify-content: center;
	align-items: center;
}
.bl_contact_ttl::after{
	background-color: white;
	content:"";
	height:0.5px;
	width:11.32vw;
	margin-right:1rem;
	margin-left: 2em;
}
.el_contact_ttl{
	margin-left: 3%;
	padding-right: 2%;
}
.el_contact_subttl_2{
	display: none;
}
.bl_contact_content{
	display:flex;
	justify-content: center;
    margin-top: 91px;
}
.bl_contact_content_sp{
	display:none;
}
footer{
	padding-bottom: 92px;
	background-color: #3F5A67;
	display:flex;
	justify-content: center
}
.ft_logo img{
	max-width: 90px;
}
/*----------------------------------------------------------------- ここからタブレット版 */
@media screen and (max-width: 900px) {
	.loading__logo {
		width:45px;
	  }
	body{
		margin:0 auto;
		max-width: 900px;
		font-family: "Noto Serif JP", serif;
		font-optical-sizing: auto;
	  	font-weight: 300;
	  	font-style: normal;
	}
	h2 {
		font-size: 36PX;
	}
	h3 {
		font-size: 24px;
	}
	h4{
		font-size: 18px;
	}
	p {
		font-size: 18px;
		line-height:158%;
	}
	li {
		list-style:none;
		font-size: 16px;
	}
	.bl_header{
		margin:2em 2rem 2rem 2rem;
		display:flex;
		align-items: center;
		align-items: flex-start;
		justify-content: center;
	}
	.bl_header_rogo{
		flex:0 1 10%;
		position: fixed;
		top:10px;
		left: 2.65625%;
	}
	.bl_header_rogo img{
		margin-top:1em;
		width:45px;
	}
	.bl_header_rogo img:hover{
		background:rgba(255,255,255,0.3);
		border:0.5px solid #ACACAC;	
	}
	.bl_header > img{
		width:100%;
	}
	.bl_header_nav ul{
		display:flex;
		flex-direction: row;
	}
	.el_header_nav {
		margin-left:2rem;
		flex:1;
		text-align: center;
		font-size: medium;
	}
	.bl_header > nav{
		width:70%;
	}
	.mv{
		margin-top:2em;
	}
	.mv_logo img{
		max-width: 45px;
		margin-top:-1rem;
		margin-bottom:28px;
	}
	.mv_img{
		object-fit: contain;
	}
	.mv_img img{
		width:100%;
	}
	.scroll{
		font-size: 1.458333vw;
		color:#3F5A67;
		margin-top:1.5em;
	}
	.bl_about{
		margin-top:2em;
		padding-top:2em;
		padding-bottom:1em;
		background-color: #E4E9EF;
		color:#3F5A67;
	}
	.bl_about_ttls{
		display:flex;
		justify-content: flex-end;
	}
	.el_about_ttl{
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	.el_about_subttl{
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	.el_about_img img{
		width:100%;
	}
	.bl_about_cont{
		margin-top: 5%;
		margin-left:30%;
		max-width: 55%;
	}
	.bl_products{
		margin-top:2em;
		color:#3F5A67;
	}
	.bl_products_ttl{
		display:flex;
		justify-content: flex-end;
		margin-right:15%;
	}
	.el_products_ttl{
		writing-mode: vertical-rl;
	}
	.el_products_subttl{
		writing-mode: vertical-rl;
	}
	.el_products_img{
		margin-top:2em;
		display:flex;
		justify-content: center;
	}
	.el_products_img img{
		width:100%;
	}
	.el_products_sp_img{
		display:none;
	}
	.bl_media{
		display:flex;
		align-items: center;
		margin-top: 2em;
		background-color:#3F5A67;
	}
	.bl_media_imagWrapper{
		flex:0 1 27.5833333%;
		margin-right:8.072916%;
	}
	.bl_media_imagWrapper > img{
		width:100%;
	}
	.bl_media_imagWrapper_sp{
		display: none;
	}
	.bl_media_body{
		flex:1;
		color:white;
		padding:1rem 20% 2rem 0;
	}
	.bl_media_body > hosi *:last-child{
		margin-bottom: 0;
	}
	.bl_experience{
		margin-top:2em;
		display: flex;
		flex-direction: column;
		align-items: center;
		color:#3F5A67;
	}
	.bl_experience_ttl{
		display:flex;
		padding-bottom: 1rem;
	}
	.el_experience_ttl{
		writing-mode: vertical-rl;
	}
	.el_experience_subttl{
		writing-mode: vertical-rl;
	}
	.experience_imagWrapper{
		margin-top:2em;
		display:flex;
		justify-content: center;
	}
	.experience_imagWrapper img{
		width:100%;
	}
	.experience_content{
		background-color:#E4E9EF;
		display: flex;
		justify-content: center;
		padding:2em 4em;
		margin-right:0.5em;
		margin-left:0.5em;
		margin-top:2em;
	}
	.experience_imagWrapper2{
		margin-top:2em;
	}
	.experience_imagWrapper2 img{
		width: 100%;
	}
	.experience_imagWrapper3{
		margin-top:2em;
	}
	.experience_imagWrapper3 img{
		width:100%;
	}
	.bl_contact{
		margin-top: 2em;
		padding-top:2em;
		padding-bottom:2em;
		background-color: #3F5A67;
		color: white;
		display:flex;
		flex-direction: column;
	}
	.bl_contact_ttl{
		display:flex;
		justify-content: center;
		align-items: center;
	}
	.el_contact_ttl{
		margin-left: 3%;
		padding-right: 2%;
	}
	.el_contact_subttl_2{
		display:none;
	}
	.bl_contact_content{
		display:flex;
		justify-content: center;
		margin-top: 1.5em;
	}
	.bl_contact_content_sp{
		display:none;
	}
	footer{
		padding-bottom: 4em;
		background-color: #3F5A67;
		display:flex;
		justify-content: center
	}
	.ft_logo img{
		width:45px;
	}
}
/*--------------------------------------------------------------------- ここからSP版 */
@media screen and (max-width: 600px) {
	.loading__logo {
		width:45px;
	  }
	body{
		margin:0 auto;
		max-width: 600px;
		font-family: "Noto Serif JP", serif;
	  	font-optical-sizing: auto;
	  	font-weight: 300;
	  	font-style: normal;
	}
	h2 {
		font-size: 4.5vw;
	}
	h3 {
		font-size: 4vw;
	}
	h4{
		font-size: 3vw;
	}
	p {
		font-size: 3vw;
		line-height:158%;
	}
	li {
		list-style:none;
		font-size: 3vw;
	}
	.bl_header{
		margin:2em 2rem 2rem 2rem;
		display:flex;
		align-items: center;
		align-items: flex-start;
		justify-content: center;
	}
	.bl_header_rogo{
		display:none;
	}
	.bl_header_rogo img{
		margin-top:1em;
		width: 100px;;
	}
	.bl_header_rogo img:hover{
		background:rgba(255,255,255,0.3);
		border:0.5px solid #ACACAC;	
	}
	.bl_header > img{
		width:100%;
	}
	.bl_header_nav ul{
		display:none;
	}
	.el_header_nav {
		margin-left:1em;
		font-size:x-small;
	}
	.bl_header > nav{
		width:70%;
	}
	.mv{
		margin-top:1em;
	}
	.mv_logo img{
		width:100px;
	}
	.mv_img{
		object-fit: contain;
	}
	.mv_img img{
		width:100%;
	}
	.scroll{
		display:none;
	}
	.bl_about{
		margin-top:0;
		padding-top:1em;
		padding-bottom:2em;
		background-color: #E4E9EF;
		color:#3F5A67;
	}
	.bl_about_ttls{
		display:flex;
		flex-direction: column;
		align-items: center;
	}
	.el_about_ttl{
		writing-mode: horizontal-tb;
	}
	.el_about_subttl{
		writing-mode: horizontal-tb;
	}
	.el_about_img img{
		width:100%;
	}
	.bl_about_cont{
		margin-top: 5%;
		margin-left: auto;
		margin-right: auto;
		max-width: 55%;
	}
	.bl_products{
		margin-top:1em;
		color:#3F5A67;
	}
	.bl_products_ttl{
		flex-direction: column;
		align-items: center;
		margin-left: auto;
		margin-right: auto;
	}
	.el_products_ttl{
		writing-mode: horizontal-tb;
	}
	.el_products_subttl{
		writing-mode: horizontal-tb;
	}
	.el_products_img{
		display:none;
	}
	.el_products_sp_img{
		margin-top:1em;
		display:flex;
		justify-content: center;;
	}
	.el_products_sp_img img{
		width:100%;
	}
	.bl_media{
		display:flex;
		flex-direction: column;
		margin-top: 0;
		background-color: none;
	}
	.bl_media_imagWrapper{
		display:none;
	}
	.bl_media_imagWrapper > img{
		width:100%;
	}
	.bl_media_imagWrapper_sp{
		display:block;
		margin-top:3em;
	}
	.bl_media_imagWrapper_sp > img{
		width:100%;
	}
	.bl_media_body{
		flex:1;
		color:white;
		padding:1em 10% 2em 10%;
	}
	.bl_media_body > hosi *:last-child{
		margin_bottom: 0;
	}
	.bl_experience{
		margin-top:0;
		padding-top: 1em;
		display: flex;
		flex-direction: column;
		align-items: center;
		color:#3F5A67;
		background-color: #E4E9EF;
	}
	.bl_experience_ttl{
		display:flex;
		flex-direction: column;
		align-items: center;
		padding-bottom: 0.5em;
		border: none;
	}
	.el_experience_ttl{
		writing-mode: horizontal-tb;
	}
	.el_experience_subttl{
		writing-mode: horizontal-tb;
	}
	.experience_imagWrapper{
		margin-top:0;
		display:flex;
		justify-content: center;
	}
	.experience_imagWrapper img{
		width:100%;
	}
	.experience_content{
		background-color:#E4E9EF;
		display: flex;
		justify-content: center;
		padding:1em 10% 2em 10%;
		margin-right:0;
		margin-left:0;
		margin-top:0;
	}
	.experience_imagWrapper2{
		display:none;
	}
	.experience_imagWrapper3{
		display: none;
	}
	.bl_contact{
		margin-top: 0;
		padding-top:1em;
		padding-bottom:1em;
		background-color: #3F5A67;
		color: white;
		display:flex;
		flex-direction: column;
	}
	.bl_contact_ttl{
		display:flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.bl_contact_ttl::after{
		display:none;
	}
	.el_contact_ttl{
		margin-left:auto;
		margin-right:auto;
		padding-right:0;
		font-size: 4vw;
	}
	.el_contact_subttl{
		display:none;
	}
	.el_contact_subttl_2{
		display:block;
		border-bottom: 1px solid #fff;
	}
	.bl_contact_content{
		display:none;
	}
	.bl_contact_content_sp{
		display:flex;
		justify-content: center;
		margin-top: 0.5em;
		padding-left: 10%;
		padding-right: 10%;
		word-break: break-all;
	}
	footer{
		padding-bottom: 2em;
		background-color: #3F5A67;
	}
	.ft_logo img{
		display:none;
	}
}
