@charset "utf-8";


/* ==========================================================================
	header派生用
========================================================================== */
#header {
	background:rgba(0, 0, 0, 0.3);
}


.login_btn{
	background:rgba(255,255, 255, .8);
	color:#333;
    background-size: 200% 100%; 
    background-image: linear-gradient(to right, transparent 50%, rgba(255, 255, 255, 1) 50%);
    transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .3s ease 0s, background-color .3s ease;
	}
.shop_btn{
	background:rgba(157,16, 10, .8);
    background-size: 200% 100%; 
    background-image: linear-gradient(to right, transparent 50%, rgba(255, 255, 255, 1) 50%);
    transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .3s ease 0s, background-color .3s ease;
	}

.fixed .login_btn{
	
	color:#fff;
}

/* ==========================================================================
	main
========================================================================== */
#hasei_main{
	width:100%;
	height:640px;
	position:relative;
	box-sizing:border-box;
	padding-top:302px;
	background-size:cover;
	background-position:center center;
	text-align:center;
	background-repeat: no-repeat;
	}
#hasei_main h1{
	font-size:72px;
	color:#fff;
	letter-spacing:0.05em;
	}
.member h1{
    -webkit-text-shadow: 0px 2px 6px #949494;
    -moz-text-shadow: 0px 2px 6px #949494;
    text-shadow: 0px 2px 6px #949494;
	}	
#hasei_main h2{
	font-size:20px;
	color:#fff;
	letter-spacing:0.15em;
	margin-top:23px;
    -webkit-text-shadow: 0px 2px 6px #949494;
    -moz-text-shadow: 0px 2px 6px #949494;
    text-shadow: 0px 2px 6px #949494;
	}

@media screen and ( max-width: 950px ) {
	#hasei_main{
		padding-top:277px;
		}

	}
@media screen and ( max-width: 720px ) {
	#hasei_main{
	height:420px;
	padding-top:205px;
	
}
	#hasei_main h1{
	font-size:40px;
}	
	#hasei_main h2{
	font-size:12px;
	margin-top:16px;
}
	}
	
	
/* ==========================================================================
	photo
========================================================================== */

#wrap{	
	width:1100px;
	margin:90px auto 120px;
	padding:0;
	box-sizing:border-box;
	}

.midashi{
	font-size:52px;
	color:#000;
	text-align:center;
	position:relative;
	}
.midashi:after{
	content:"";
	display:block;
	width:60px;
	height:1px;
	background:#9d100a;
	margin:50px auto 100px;
	}
	
	
/*box1*/
#box1{
	width:100%;
	-js-display: flex;
	display:-webkit-box;
	display: -webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			margin-bottom:4.5%;
}	
	
#box1 .l_box{
	width:47.7%;
	max-width:525px;
	background-size:cover;
	background-position:center center;
	}
#box1 .r_box{
	width:47.7%;
	max-width:525px;
	}
#box1 .r_box .text_box{
	width:100%;
	padding:39px 10px 41px 50px;
	box-sizing:border-box;
	background:#9d100a;
	margin-bottom:9.5%;
	}
#box1 .r_box .text_box h2{
	font-size:22px;
	line-height:40px;
	color:#fff;
	font-weight:400;
	position:relative;
	}
	
#box1 .r_box .text_box h2:after{
	content:"";
	display:block;
	width:104px;
	height:1px;
	background:#fff;
	margin:21px 0 24px;
	}
#box1 .r_box .text_box p{
	font-size:13px;
	line-height:30px;
	letter-spacing:0.1em;
	color:#fff;
	}
	
#box1 .r_box .s_imgbox{
	width:45%;
	position:relative;
	background-size:cover;
	background-position:center center;
	}
#box1 .r_box .s_imgbox:before{
	content:"";
	display:block;
	padding-top:95%;
	}
#box1 .r_box .left{
	float:left;
	}
#box1 .r_box .right{
	float:right;
	}
	
	
	
/*box2*/
#box2{
	width:100%;
	-js-display: flex;
	display:-webkit-box;
	display: -webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
}	
	
#box2 .r_box{
	width:47.7%;
	max-width:525px;
	background-size:cover;
	background-position:center center;
	}
#box2 .l_box{
	width:47.7%;
	max-width:525px;
	}
#box2 .l_box .text_box{
	width:100%;
	padding:39px 10px 41px 50px;
	box-sizing:border-box;
	background:#000000;
	margin-bottom:9.5%;
	}
#box2 .l_box .text_box h2{
	font-size:22px;
	line-height:40px;
	color:#fff;
	font-weight:400;
	position:relative;
	}
	
#box2 .l_box .text_box h2:after{
	content:"";
	display:block;
	width:104px;
	height:1px;
	background:#fff;
	margin:21px 0 24px;
	}
#box2 .l_box .text_box p{
	font-size:13px;
	line-height:30px;
	letter-spacing:0.1em;
	color:#fff;
	}
	
#box2 .l_box .m_imgbox{
	width:100%;
	position:relative;
	background-size:cover;
	background-position:center center;
	}
#box2 .l_box .m_imgbox:before{
	content:"";
	display:block;
	padding-top:65%;
	}
	
@media screen and ( max-width: 1130px ) {
#wrap{
	width : 95% ;
   width : -webkit-calc(100% - 30px) ;
   width : calc(100% - 30px) ;
	
	}

	}
@media screen and ( max-width: 720px ) {
#wrap{
	margin:54px auto 60px;
	}
.midashi{
	font-size:23px;
}
.midashi:after{
	width:34px;
	height:1px;
	margin:24px auto 50px;
	}
	
	
/*box1*/
#box1,#box2{
	display: block;
}	
#box1{
	margin-bottom:6.9%;
	}
#box1 .l_box,
#box2 .r_box{
	width:100%;
	max-width:720px;
	position:relative;
}

#box1 .l_box:before{
	content:"";
	display:block;
	padding-top:100%;
	}
#box2 .r_box:before{
	content:"";
	display:block;
	padding-top:121%;
	margin-top:6.9%;
	}
#box1 .r_box,
#box2 .l_box{
	width:100%;
	max-width:720px;
	}
#box1 .r_box .text_box{
	width:100%;
	padding:18px 10px 18px 15px;
	margin:6.9% 0;
	}
#box2 .l_box .text_box{
	width:100%;
	padding:18px 10px 18px 15px;
	margin:0 0 6.9%;
	}
#box1 .r_box .text_box h2,
#box2 .l_box .text_box h2{
	font-size:14px;
	line-height:26px;
}
	
#box1 .r_box .text_box h2:after,
#box2 .l_box .text_box h2:after{
	width:58px;
	height:1px;
	margin:10px 0 12px;
	}
#box1 .r_box .text_box p,
#box2 .l_box .text_box p{
	font-size:10px;
	line-height:19px;
}
	
#box1 .r_box .s_imgbox{
	width:46.5%;
	}
#box2 .l_box .m_imgbox{
	width:100%;
	position:relative;
}

#box1 .l_box .m_imgbox:before{
	content:"";
	display:block;
	padding-top:62.5%;
	}
}


/* ==========================================================================
	movie
========================================================================== */

#movie_wrap{	
	width:100%;
	background:#f4f2f2;
	padding:115px 0 120px;
}

#movie{
	width:1100px;
	margin:0 auto;
	}
.movie_area{
	width:100%;
	position:relative;
	background-size:cover;
	overflow:hidden;
	}
.movie_area:before{
	content:"";
	display:block;
	position:absolute;
	padding-top:49%;
	}
.movie_area .youtube_video {
  position: relative;
  height: 0;
  padding: 30px 0 56.25%;
  overflow: hidden;
}
.movie_area iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie_area video{
	width:100%;
	background-size:cover;
	}
.video-btn {
    content: "";
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0px; /*コントローラー分下部に余白を*/
    cursor: pointer;
}
.play{
	display:block;
	width:80px;
	height:80px;
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:auto;
	}
	/*
#shumei_movie #movie video {
  position: absolute;
  top: 0px;
  left: 0;
  bottom:100%;
  width: 100%;
  height: 100%;
  background:#fff;
}*/

.movie_select{
	width:100%;
	-js-display: flex;
	display:-webkit-box;
	display: -webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	}
.movie_select li{
	width:22.2%;
	position:relative;
	background-size:cover;
	margin-top:40px;
    cursor: pointer;
	}
	
.movie_select li:before{
	content:"";
	display:block;
	padding-top:65%;
	
	}
.movie_select li:after{
	content:"";
	display:block;
	width:40px;
	height:40px;
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:auto;
	background:url(./static/photo/image/play_btn.png) center center no-repeat;
	background-size:cover;
	}

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

#movie{
	width:100%;
	}	
	
.movie_select{
	width : 95% ;
   width : -webkit-calc(100% - 30px) ;
   width : calc(100% - 30px) ;
   margin:0 auto;
	
	}
	}
	
@media screen and ( max-width: 720px ) {
#movie_wrap{	
	padding:54px 0 60px;
	}
	

.play{
	width:45px;
	height:45px;
}
.movie_select li{
	width:46.5%;
	margin-top:7%;
}
.movie_select li:after{
	width:23px;
	height:23px;
	}

	}