.header_btn .container {
    text-align: right;
}
.header_btn{
	display: none;
}
ul,li{
	list-style:none;
}
/*.comingsoon{
	display: block;
	background: #dde1e8;
	text-align: center;
	padding: 15px 0;
	line-height: 0;
}*/
.comingsoon{
	display: block;
	background: #dde1e8;
	text-align: center;
	padding: 18px 0;
  line-height: 0;
  width: 486px;
  position: absolute;
  right: 3px;
  bottom: 0;
}


.contain{
	width:1200px;
	margin: auto;
}
#inline_content iframe {
    width: 90%;
    margin: auto;
    height: 100%;
}
#inline_content {
    text-align: center;
    width: auto;
    margin: auto;
    height: 100%;
}
.main-page .mv{
	position: relative;
}
.main-page .mv .btn{
	position: absolute;
	z-index:10;
    top: 300px;
    right: 115px;
}
.main-page .mv video{
	width: 100%;
}
.fadein-late,
.fadein {
	opacity : 0;
	transform : translate(0, 10px);
	transition : all 1500ms;
	}
.fadein-late.scrollin,
.fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
	}	
#canvas{
	width: 100%;
	position: absolute;
}
.main-page .concept .container{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	z-index:9;
	padding: 140px 0 125px;
}
.main-page .concept{
	position: relative;
	background:url(../img/top/bg_pc.jpg) no-repeat;
	background-size:cover;
}
.main-page .concept #canvas{
	position: absolute;
	top:0;
	left:0;
	right:0;
}
.main-page .concept .logo{
	margin-right: 40px;
	padding-top: 30px;
}
.main-page .concept p{
	font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
	font-size: 18px;
	line-height: 3;
	margin:0 0 40px;
}
.main-page .concept .bnr_box{
  text-align: center;
}
.main-page .concept .bnr_box p{
  background: #fff;
}
.main-page .concept .bnr_box a:hover img{
  opacity: 0.75;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;	
  margin: auto;
}

.main-page .special_contents{
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#8d9095+0,9a9da3+20,9a9da3+20,b0b4ba+100 */
background: #8d9095; /* Old browsers */
background: -moz-linear-gradient(top, #8d9095 0%, #9a9da3 20%, #9a9da3 20%, #b0b4ba 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #8d9095 0%,#9a9da3 20%,#9a9da3 20%,#b0b4ba 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #8d9095 0%,#9a9da3 20%,#9a9da3 20%,#b0b4ba 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8d9095', endColorstr='#b0b4ba',GradientType=0 ); /* IE6-9 */	
text-align: center;
padding: 30px 0;
position: relative;
    z-index: 2;
}
.main-page .special_contents h3{
	line-height: 1.5;
	color: #fff;
	font-size: 18px;
	font-weight: normal;
	margin: 0 0 0;
}

.main-page .special_contents h2 {
  margin: 0 0 30px;
}
.main-page .special_contents .bnr_box{
  margin-top: 30px;
}
.main-page .special_contents .bnr_box a:hover img{
  opacity: 0.75;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;	
  margin: auto;
}

.main-page .special_contents .ttl{
	color: #fff;
	display: block;
	font-size: 24px;
	letter-spacing: .2rem;
	line-height: 1.4;
	margin: 7px 0 0;
}
.main-page .special_contents .link__elm ul{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	margin: 35px 0;
}
.main-page .special_contents .link__elm li{
	line-height: 0;
	margin:0 1px;
}
.sub-page .common-links .link__elm li,
.main-page .special_contents .link__elm li{
 width:242px;
 overflow:hidden;
}
.sub-page .common-links .link__elm img,
.main-page .special_contents .link__elm img{
 transition:.2s all;
}
/*
.sub-page .common-links .link__elm img:hover,
.main-page .special_contents .link__elm img:hover{
  transform:scale(1.1,1.1);
  transition:1s all;
}
*/
.sub-page .common-links .link__elm a:hover img,
.main-page .special_contents .link__elm a:hover img{
  transform:scale(1.1,1.1);
  transition:1s all;
}

.main-page .lineup{
	padding: 40px 0;
}
.main-page .lineup h3{
	font-weight: normal;
	text-align: center;
	margin:0 0 35px;
	line-height: 1.6;
	font-size: 24px;
}
.main-page .lineup h3 .rt1{
	position: relative;
}
.main-page .lineup h3 .rt{
	font-size: 10px;
    position: absolute;
    top: -15px;
    left: -5px;
    display: block;
    width: 35px;
}
.main-page .lineup .item{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	text-align: center;
}
.main-page .lineup .item__elm{
	line-height: 1.6;
	width: 280px;
	height: 280px;
}
.main-page .lineup .item__elm .img{
	padding: 30px 0 5px;
}
.main-page .lineup .item__elm a{
	display: block;
	text-decoration: none;
	color: #000;
	font-size: 80%;
}
.main-page .lineup .item__elm a img{
	opacity: 1;
   transition: opacity .25s ease-in-out;
   -moz-transition: opacity .25s ease-in-out;
   -webkit-transition: opacity .25s ease-in-out;	
   margin: auto;
}
.main-page .lineup .item__elm a:hover img{
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}
.main-page .lineup .item__elm a .arrow{
  transition: all 0.6s ease 0s;
}
.main-page .lineup .item__elm a:hover .arrow{
  transform: translateX(10px);
}
.main-page .lineup .item__elm a .arrow{
	display: block;
}
.main-page .lineup .item01{
	background:url(../img/top/circle01.png) no-repeat center center;
}
.main-page .lineup .item02{
	background:url(../img/top/circle02.png) no-repeat center center;
	margin:0 65px;
}
.main-page .lineup .item03{
	background:url(../img/top/circle03.png) no-repeat center center;
}
.main-page .lineup .item04{
	background:url(../img/top/circle04.png) no-repeat center center;
	margin:0 65px 0 0;
}
.main-page .lineup .item05{
	background:url(../img/top/circle05.png) no-repeat center center;
}

.sub-page .mv{
	background:url(../img/contents01/head-bg.png) no-repeat;
	padding: 45px 0;
	text-align: left;
}
.sub-page .mv .container{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.sub-page .mv h3{
	font-size: 13px;
  font-weight: normal;
  margin: 0 0 0;
  letter-spacing: .1em;
  line-height: 2em;
}

.sub-page .mv .dot-line:after {
  background: radial-gradient(circle farthest-side, #000, #000 16%, transparent 0, transparent);
  background-size: 13px auto;
  content: "";
  display: inline-block;
  height: 3px;
  width: 320px;
}
.sub-page .mv div.ttl{
  display: block;
  margin: 0;
}
.sub-page .mv div.ttl span.ttl{
  display: block;
  font-size: 18px;
  letter-spacing: .2rem;
  line-height: 1.4em;
  text-align: center;
  margin-top: 10px;
}
.sub-page .mv div.ttl span.ttl span{
  display: block;
  font-size: 16px;
  letter-spacing: 0;
}
.sub-page .mv .number{
	text-align: center;
}
.sub-page .mv .number img.pc-only{
  display: inline-block;
}
.sub-page .mv h4{
	font-size: 24px;
	letter-spacing: .2rem;
	font-weight: normal;
	margin: 15px 0 0;
}
.sub-page .mv .logo img {
  width: 220px;
}
.sub-page .story .wrapper{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
  align-items: center;
}
.sub-page .story .rev{
  background:url(../img/contents01/contents-bg_rev.jpg) no-repeat top left;
}
.sub-page .story .rev .wrapper{
  flex-direction: row-reverse;
}
.sub-page .story .txt{
	width: 490px;
}
.sub-page .story p{
	font-size: 14px;
	line-height: 3;
	margin:0 0 35px;
}
.sub-page .story .img img.pic02 {
  padding-top: 200px;
}
.sub-page .story .block-bottom{
	background:url(../img/contents01/contents-bg.jpg) no-repeat center right;
	
}
.sub-page .common-links{
background: rgb(152,157,165); /* Old browsers */
background: -moz-linear-gradient(top, rgba(152,157,165,1) 0%, rgba(176,180,186,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(152,157,165,1) 0%,rgba(176,180,186,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(152,157,165,1) 0%,rgba(176,180,186,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#989da5', endColorstr='#b0b4ba',GradientType=0 ); /* IE6-9 */	
text-align: center;
padding: 30px 0;
}
.sub-page .common-links ul{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	margin: 35px 0 0;
}
.sub-page .common-links li{
	position: relative;
	line-height: 0;
	margin:0 1px;
}
.sub-page .common-links .active{
	position: absolute;
	z-index:2;
width: 0;
height: 0;
border-style: solid;
border-width: 0 13px 15px 13px;
border-color: transparent transparent #b0b4ba transparent;
  margin:auto;
  bottom:0;
  left:0;
  right:0;
}
.mv-sp{
	display: none;
}
.pc-only{
	display: block;
}
.sp-only{
	display: none;
}
#canvas2{
	display: none;
}


@media only screen and (max-device-width: 1280px) and (max-width: 640px) {
.pc-only{
	display: none;
}
.sp-only{
	display: block;
}	
.mv{
	display: none;
}	
.mv-sp{
	display: block;
    position: relative;
}
  .sub-page .mv{
    display: block;
    background: none;
    padding: 35px 0;
  }
  .sub-page .mv .container{
    display: flex;
    flex-direction: column-reverse;
    text-align: center;
  }
  .sub-page .mv .logo img {
    width: 60%;
  }
  .sub-page .mv div.ttl{
    margin: 20px 0;
  }
  .sub-page .mv .number img.pc-only{
    display: none;
  }
  .sub-page .story .wrapper{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  .sub-page .story .txt{
    width: 100%;
  }
  .sub-page .story .img img {
    width: 80%;
    margin: 0 auto 30px;
    display: block;
  }
  .sub-page .story .img img.pic02 {
    padding-top: 0;
  }
  .sub-page .story p{
    font-size: 13px;
    line-height: 2.5;
  }
  .sub-page .story .rev{
    background: none;
  }
  .sub-page .story .block-bottom{
    background:url(../img/contents01/contents-bg_sp.jpg) no-repeat center bottom;
    background-size: contain;
    padding-bottom: 100px;
    margin-bottom: 50px;
  }
  .sub-page .common-links ul:last-child{
    margin: 3px 0 0;
  }

.mv-sp .btn{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index:5;
}
.kv-video{
	width: 100%;
}
.header_btn{
	display: none;
}	
.contain {
    width: auto;
}
.container{
	width: 95%;
	margin:auto;
}

.main-page .concept p {
	text-align: center;
    font-size: 16px;
    margin: 0 0 30px;
}
.main-page .concept .container {
	flex-direction: column-reverse;
    padding: 40px 0 44px;
}	
.main-page .concept .logo {
    margin-right: 0;
    padding-top: 30px;
    text-align: center;
}
  .main-page .concept .bnr_box img{
    width: 90%;
  }
.main-page .special_contents .link__elm ul {
    margin: 3px 0 0;
}
  .main-page .special_contents .link__elm ul:last-child {
    margin: 3px 0 30px;
  }
.main-page .special_contents{
	padding: 25px 0;
}
.main-page .special_contents .ttl {
    font-size: 22px;
    margin: 15px 0 20px;
}
.main-page .special_contents h3 {
    font-size: 18px;
    margin: 0 0 15px;
}
  .main-page .special_contents h2 img {
    width: 90%;
  }
  .main-page .special_contents .bnr_box img {
    width: 90%;
  }
.main-page .special_contents .dot-line img{
	display: block;
	width: 95%;
    margin: auto;
}
.main-page .special_contents .dot-line:after {
	content:"";
	background:none;

}
.main-page .lineup h3 {
	line-height: 1.8;
    margin: 0 0 25px;
    font-size: 22px;
}
.main-page .lineup .item__elm {
    height: auto;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    width: 100%;
    margin:0;
}
.main-page .lineup .item__elm.item02,
.main-page .lineup .item__elm.item04{
	flex-direction: row-reverse;
}
.main-page .lineup .item__elm.item02,
.main-page .lineup .item__elm.item03,
.main-page .lineup .item__elm.item04,
.main-page .lineup .item__elm.item05{
	margin-top: -10px;
}
.main-page .lineup .item__elm .img {
    padding: 50px 0;
    width: 58%;
}
.main-page .lineup .item__elm.item04 .img{
	right: 20px;
    position: relative;
}
.main-page .lineup .item__elm.item05 .img{
	position: relative;
    right: -40px;
}
.main-page .lineup .item__elm .sp-text{
	text-align: center;
	width: 40%;

}
.main-page .lineup .item__elm.item01 .sp-text,
.main-page .lineup .item__elm.item03 .sp-text,
.main-page .lineup .item__elm.item05 .sp-text{
    margin: 0 0 0 -10px;
}
.main-page .lineup .item__elm.item02 .sp-text{
    margin: 0 -10px 0 0;	
}

.main-page .lineup .item__elm.item03 .sp-text{
    margin: 0 0 0 -10px;
}
.main-page .lineup .item__elm.item04 .sp-text{
    margin: 0 -15px 0 0;	
}

.main-page .lineup .item__elm.item05 .sp-text{
    margin: 0 0 0 -25px;
}
.main-page .lineup .item__elm .name{
	font-size: 20px;
    display: block;
    margin-bottom: 5px;
    line-height: 1.2;
}
.main-page .lineup .item01 {
    background: url(../img/top/circle01.png) no-repeat right 0;
    background-size: 60% auto;
}
.main-page .lineup .item02 {
    background: url(../img/top/circle02.png) no-repeat left 0;
    background-size: 60% auto;
    margin: 0;
}
.main-page .lineup .item03 {
    background: url(../img/top/circle03.png) no-repeat right 0;
    background-size: 60% auto;
}
.main-page .lineup .item04 {
    background: url(../img/top/circle04.png) no-repeat left 0;
    background-size: 60% auto;
    margin: 0;
}
.main-page .lineup .item05 {
    background: url(../img/top/circle05.png) no-repeat right 0;
    background-size: 60% auto;
}
.main-page .concept{
	background:url(../img/top/bg.jpg) no-repeat;
	background-size:cover;
}
  .comingsoon{
    padding: 15px 0;
    position: relative;
    width: auto;
    right: 0;
  }
}