@charset "utf-8";

/* Home
---------------------------------------------*/
#header.home{
 height: 155px;
}
#main_container.home{
 width: 100%;
}
#main_container.home .main_visual{
 position: relative;
 margin: 0 auto 150px;
 overflow: hidden;
}
#main_container.home .main_visual .image{
 position: relative;
 z-index: -1;
}
#main_container.home .site_leadtext{
 width: 100%;
 word-break: keep-all;
 position: absolute;
 top: 30%;
 left: 50%;
 transform: translate(-50%, 0);
 margin: 0 auto;
 text-align: center;
 text-shadow: 0 0 3px rgba(0,0,0,0.9),
  0 0 6px rgba(0,0,0,0.9),
  0 0 9px rgba(0,0,0,0.9),
  0 0 12px rgba(0,0,0,0.9),
  0 0 15px rgba(0,0,0,0.9);
 color: #fff;
}
#main_container.home .site_leadtext h1{
 font-size: 6.0rem;
 font-weight: 700;
 margin-bottom: 0.7rem;
}
#main_container.home .site_leadtext p{
 font-size: 1.9rem;
 line-height: 1.7;
 letter-spacing: 0.5px;
}
#main_container.home .site_leadtext p a {
    color: #fff;
    text-decoration: underline;
}
#main_container.home p.sp_lead{
 display: none;
}
#main_container.home .bm_home_section{
 display: block;
 text-align: center;
 margin: 0 auto 150px;
}
#main_container.home .bm_home_section h2,
#main_container.home .bm_home_section h2 + p{
 width: 90%;
 margin-left: auto;
 margin-right: auto;
}
#main_container.home .bm_home_section h2{
 font-size: 5.0rem;
 font-weight: 700;
 letter-spacing: -0.1rem;
 margin-bottom: 0.2rem;
}
#main_container.home .bm_home_section h2 .new {
    display: block;
    color: #E42828;
    line-height: 1;
    font-size: 0.7em;
}
#main_container.home .bm_home_section p{
 margin-bottom: 1em;
}
#main_container.home .bm_home_section a{
 font-weight: 700;
 font-size: 2.4rem;
 font-family: 'Montserrat', sans-serif;
}
#main_container.home .bm_home_section .image{
 margin: 50px auto;
}
#main_container.home .bm_home_section .two_img{
 display: flex;
}
#main_container.home .bm_home_section .home__picture{
 flex: 0 0 50%;
}
.home_movie{
	position: relative;
	width: 100%;
	height: 0;
	padding: 56.25% 0 0;
	margin: 50px auto;
}
.home_movie iframe{
	display: block;
	width: 100%;
	height: 100%;
	border: none;
	position: absolute;
	top: 0;
	left: 0;
}

#main_container.home .profile{
 text-align: center;
 width: 92%;
 max-width: 980px;
 margin: 0 auto 150px;
}
#main_container.home .profile .profile_img{
 max-width: 400px;
 margin: 0 auto;
}
#main_container.home .profile h3{
 font-size: 2.4rem;
 font-weight: 700;
 margin: 1.8rem auto;
}



/* css only mobile
------------------------------*/
@media only screen and (max-width: 980px) {
 #main_container.home .site_leadtext{
  width: 90%;
 }
 #main_container.home .site_leadtext h1{
  font-size: 5.5vw;
 }
 #main_container.home .site_leadtext p{
  font-size: 1.8vw;
 }
 
}
/* css only mobile
------------------------------*/
@media only screen and (max-width: 760px) {
 #header.home{
  height: 64px;
 }
 #main_container.home .main_visual{
  margin-bottom: 0;
 }
 #main_container.home .site_leadtext{
  top: 50%;
  transform: translate(-50%, -50%);
 }
 #main_container.home .site_leadtext h1{
  font-size: 5.5vw;
  line-height: 1.5;
  margin: 0 auto;
 }
 #main_container.home .site_leadtext p {
  display: none;
 }
 #main_container.home p.sp_lead {
  display: block;
  line-height: 1.5;
  width: 100%;
  padding: 2rem 1.5rem;
  margin: 0 auto 75px;
  box-sizing: border-box;
  color: #fff;
  background-color: #000;
 }
 #main_container.home p.sp_lead br {
	 display: block;
 }
	#main_container.home p.sp_lead .linkTxt {
		display: block;
		margin-top: 2em;
	}
	#main_container.home p.sp_lead .linkTxt a {
		display: block;
		color: #FFF;
		text-decoration: underline;
	}
 #main_container.home .bm_home_section h2{
  width: 90%;
  margin: 0 auto 0.5em;
  font-size: 5.2vw;
  text-align: left;
 }
 #main_container.home .bm_home_section a{
  font-size: 4.75vw;
 }
 #main_container.home .bm_home_section p {
  width: 90%;
  margin: 0 auto 1em;
  text-align: left;
 }
 #main_container.home .bm_home_section p.right{
  text-align: right;
 }
 #main_container.home .bm_home_section{
  margin-bottom: 75px;
 }
 #main_container.home .bm_home_section .image{
  margin: 20px auto;
 }
 #main_container.home .profile{
  width: 92%;
  text-align: left;
  margin-bottom: 75px;
 }
 #main_container.home .profile .profile_img{
  width: 60%;
 }
 #main_container.home .profile h3{
  font-size: 3.75vw;
  text-align: center;
 }
 .home_movie{
  margin: 20px auto 50px;
 }
 
}
