@charset "utf-8";
/* CSS Document */
*, ::before, ::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
ul, li {
  list-style: none;
}
a {
  color: inherit;
  text-decoration: none;
}
body {
  font-family: sans-serif;
  font-size: 16px;
  color: #000000;
  line-height: 1;
  background-color: #f8f8f8;
}
img {
  max-width: 100%;
  height: auto;
}
/*----------------------headerここから--------------------------*/
.header-inner {
  max-width: 1500px;
  height: 80px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  display: flex; /*横並び*/
  justify-content: space-between;
  align-items: center; /*水平方向揃え*/
}
.toggle-menu-button {
  display: none; /*一度見えなくする*/
}
.header img {
  display: block;
  width: 170px;
}
.site-menu ul { /*ulにかけないと横並びにならない*/
  display: flex;
}
.site-menu ul li {
  margin-left: 20px;
  margin-right: 20px;
}
.site-menu ul li a {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bolder;
}
.footer {
  color: #ffffff;
  background-color: #000F2C;
  padding: 30px;
  padding-bottom: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.footer-logo {
  display: block;
  width: 170px;
  margin-top: 90px;
}


/*--------------------mainここから------------------------*/
.main{

	height: auto;
}


.first-view{
	width: 100%;
	height: calc(100vh - 110px);
	background-image: url("../image/top-pc.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.main-text{
	text-align: center;
	margin: 100px 0;
}

/*--------------------------exp-areaここから------------------------------*/
.exp-area{
	display: flex;
	justify-content: center;/*中央に*/
}
#exp-left{
margin-right: 50px;	
}
#exp-right{
	margin-left: 50px;
}
/*--------------------------exp-areaここまで------------------------------*/


/*--------------------------コンテンツここから---------------------------------*/
.contents-area{
background-color: #ECECEC;
}

.contents-area h1{
	text-align: center;
	margin-top: 150px;
	padding-top: 150PX;
	margin-bottom: 150px;
}
.contents-inner{
	
	margin-left: auto;
	margin-right: auto;
	
}

#contents-01,#contents-02{
	display: flex;/*横並び*/
	justify-content: center;
}
#contents-02{
	margin-top: 50px;
	flex-direction: row-reverse;/*右から左へ*/
}
.contents-text{
	flex-direction: column;/*文字を縦軸配置に*/
	width: 350px;
	height: 280px;
	margin-right: 50px;
	margin-left: 50px;
	/*border: 1px solid red;*/
}
.contents-text-p{
	color: #3140EB;
	font-weight: 900;
	font-size: 20px;
	margin-bottom: 30px;
}

.contents-area img{
	box-shadow: 0 3px 6px rgba(0,0,0,0.5);
	width: 350px;
	height: 350px;
	margin-right: 50px;
	margin-left: 50px;
}
.contents-inner h2{
	margin-bottom: 50px;
}


.movie-menu-area h1{
	text-align: center;
	margin-top: 150px;
	margin-bottom: 150px;
}

/*グリッドレイアウト*/
#movie-menu{
	width: 930px;
	max-width: 90%;
	margin-top: 75px;
	margin-left: auto;
	margin-right: auto;
	display: grid;
	grid-template-columns: repeat(auto-fit,240px);
	column-gap:95px;
	row-gap:70px;
}

.movie-menu-item h3{
	padding-top: 5px;
	padding-bottom: 20px;
}



.movie-pr{
	width: 1200px;
	max-width: 100%;
	margin-top: 75px;
	margin-left: auto;
	margin-right: auto;
display: grid;
	grid-template-columns: repeat(2,500px);
	justify-content: center;
	column-gap:95px;
	row-gap:70px;
}


.production-flow-area{
	background-color: #ECECEC;
	margin-bottom: 100px;
	
}



.production-flow-area h1{
	text-align: center;
	margin-top: 150px;
	margin-bottom: 150px;
}


.production-flow-list{
	max-width: 1500px;
	width: 800px;
	margin-left: auto;
	margin-right: auto;
	
}

.production-flow-item{
	display: flex;
	margin: 100px 0;
}

.production-flow-text{
	padding: 0 20px;
	margin-left: 80px;
}

.production-flow-text h3{
	margin-top: 20px;
	margin-bottom: 20px;
	
}
.Cautionary_note{
text-align: center;	
	margin-top: 80px;
	margin-bottom: 80px;
}
/*--------------------------コンテンツここまで---------------------------------*/












/*=============================PCここまで================================*/
/*8888888888888888888888888888スマホここから8888888888888888888888888888888888*/
@media (max-width: 750px) {
  .site-menu ul { /*navメニューを立て並びに	*/
    display: block;
    text-align: center;
  }

	.site-menu li{
		margin-top: 20px;
	}
	
	.header{/*headerを常に上部に固定*/
		width: 100vw;
		
		position:fixed;/*固定*/
		top: 0;
		left: 0;
		right: 0;
		background-color: #ffffff;
		height: 50px;
		z-index: 10;/*先にposition:fixedをかけていないと効かない*/
		box-shadow: 0 3px 6px rgba(0,0,0,0.1);
		
	}
	
	/*header内部のサイズを調整*/
	.header-inner{
		padding-left: 20px;
		padding-right: 20px;
		height: 100%;
		position: relative;/*これを基準にハンバーガーメニューを作成する*/
	}
	
	/*logoサイズ調整*/
	.header-logo{
		width: 100px;
	}
	
	/*ハンバーガーメニュー作成*/
	.header-site-menu{
		position: absolute;/*位置を指定*/
		top: 100%;
		left: 0;
		right: 0;
		background-color: #f8f8f8;
		padding-top: 30px;
		padding-bottom: 50px;
		display: none;
	}
	
	.header-site-menu.is-show{
		display: block;
	}
	
	.toggle-menu-button{
		display: block;
		width: 44px;
		height: 34px;
		background-image: url("../image/ハンバーガーアイコン.png");
		background-size: 50%;/*アイコンのデザイン調整*/
		background-position: center;
		background-repeat: no-repeat;/*ここまで*/
		background-color: transparent;/*背景色を透明に*/
		boder:none;/*境界線削除*/
		border-radius: 0;/*角丸解除*/
		outline: none;/*タップしたときに表示される枠線を削除*/
	}
	.main{
		padding-top: 50px;
		
	}
	
	
	.first-view{
		max-width: 750px;
		width: 100%;
		height: calc(110vh - 50px);
		background-image:url("../image/top-ph-02.jpg");
	}
	.main-text{
		padding-left: 50px;
		padding-right: 50px;
	}
	
	.exp-area{
		padding-left: 50px;
		padding-right: 50px;
		
	}
	.contents-area{
		
	}
	
	.contents-inner{
		padding-left: auto;
		padding-right: auto;
		display: flex;
		flex-direction: column;
		max-width: 750px;
		width: 90%;
		height: auto;
	}
	
	
	
	
	
	.contents-text{
		align-items: center;
		max-width: 750px;
		width: 100vw;
		
		padding-left: auto;
		padding-right: auto;
		
	}
	
	
	.contents-area img{
		max-width: 325px;
		width: 50%;
		height: 50%;
	}
	#contents-01,#contents-02{
		 display: block;/*横並び解除*/
		width: 100vw;
	}
	
	#movie-menu{
		max-width:750px;
		width:100%;
		height: auto;
		margin-left: 50px;
		
	}
	
	.movie-pr{
		display: block;
		width: 100vw;
		padding-left: 50px;
		padding-right: 50px;
		
	}
	
	.movie-pr-list{
		max-width: 750px;
		
	}
	
	
	.production-flow-area{
		max-width: 750px;
		
		
	}
	.production-flow-item{
		display: block;
		width: 100vw;
		padding-left: auto;
		padding-right: auto;
	}
	
	
	
	.production-flow-list{
		width: 100vw;
		margin-right: auto;
		margin-left: auto;
	}
	
	.production-flow-item img{
		max-width: 300px;
		max-height: 300px;
		width: 100%;
		height: 100%;
	}
	
	
	.footer-logo{
		margin-top: 60px;
	}
	.copyright{
		margin-top: 50;
	}
}