@charset "utf-8";


/**
 * Common
 */
.cf::after{
	content: "";
	display: block;
	clear: both;
}
* {
	box-sizing: border-box;
}



/**
 * Utility
 */
.u-mt5            { margin-top: 5px;  }
.u-mt10           { margin-top: 10px; }
.u-mt20           { margin-top: 20px; }
.u-block          { display: block;   }
.u-inline         { display: inline-block; }
.u-none           { display: none;    }
.u-cursor-pointer { cursor: pointer;  }
.u-cursor-default { cursor: default;  }


/**
 * Main Contents
 */
.dev-main-contents {
	font-family: "微软雅黑","Microsoft YaHei",'HiraginoSansGB-W3','Helvetica Neue','San Francisco','PingFang SC';
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	line-height: 1.6;
	box-sizing: border-box;
}
.dev-main-contents h1 { font-size: 80px; }
.dev-main-contents h2 { font-size: 34px; }
.dev-main-contents h3 {
	font-size: 18px;
	line-height: 1.3;
}
.dev-main-contents h4,
.dev-main-contents p {
	font-size: 16px;
}
.dev-main-contents a {
	text-decoration: none;
	outline: none;
}
.dev-main-contents h1 {
	font-weight: normal;
}
.dev-main-contents h1,
.dev-main-contents h2,
.dev-main-contents h3,
.dev-main-contents h4 {
	margin: 0;
	padding: 0;
}
.dev-main-contents h2,
.dev-main-contents h3,
.dev-main-contents h4 {
	font-weight: bolder;
}
.dev-main-contents span,
.dev-main-contents ul {
	font-weight: normal;
	line-height: 1.4;
}
.dev-main-contents > img {
	display: none;
}


/**
 * Font
 */
.fontSize--large  { font-size: 18px !important; }
.fontSize--middle { font-size: 16px !important; }
.fontSize--small  {
	font-size: 12px !important;
	line-height: 1.3 !important;
}
.fontSize--scroll {
	font-size: 13px !important;
	font-weight: bold;
}
.fontColor--black     { color: #333; }

.fontColor--gray-l1 { color: #555; }
.fontColor--gray-l2 { color: #666; }
.fontColor--gray-l3 { color: #999; }
.fontColor--black h3 > span {
	color: #555;
}
/* Release Unpublished */
.fontColor--white h3 > span {
	color: #eee;
}

.fontColor--white     { color: #fff; }
.fontWight--normal { font-weight: normal; }
.fontWight--bold   { font-weight: bolder; }
.textShadow--white {
	text-shadow: 0px 1px 2px rgba(255,255,255,0.2), -1px -1px 1px rgba(255,255,255,0.2), 1px 1px 2px rgba(255,255,255,0.2), 1px 1px 40px rgba(255, 255, 255, 7.2);
 }



/**
 * Background
 */

/* Section Background Image */
.bg-fixed { background-attachment: fixed; }
.bgImg {
	position: relative;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Background Image */
.bgImg--top { background-image: url(../img/mv.png); }
.bgImg--1st { background-image: url(../img/section_05.jpg); }
.bgImg--2nd { background-image: url(../img/section_04.jpg); }
.bgImg--3rd { background-image: url(../img/section_01.jpg); }
.bgImg--4th { background-image: url(../img/section_02.jpg); }
.bgImg--5th { background-image: url(../img/section_03.jpg); }

/* Background Image Position */
.imgPosition--top    { background-position: top; }
.imgPosition--center { background-position: center; }
.imgPosition--bottom { background-position: bottom; }
.imgPosition--right { background-position: right center; }

/* Translucent Background */
.translucentBg:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
}

/* Translucent Background Color */
.translucentBgColor--black:after { background-color: rgba(0, 0, 0, .4); }
.translucentBgColor--white:after { background-color: rgba(255, 255, 255, .6); }

/* Monotone Color */
.monotoneColor {
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}



/**
 * Scroll Button
 */
.scroll-btn {
	width: 100%;
}
.scroll-btn ul {
	width: 100%;
}
.scroll-btn ul li {
	width: 20%;
	height: 220px;
	border-left: 1px solid #aaa;
	overflow: hidden;
	text-align: center;
	float: left;
}
.scroll-btn ul li:first-child {
	height: 220px;
	border-left: none;
}
.scroll-btn ul li > a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
}
.scroll-btn .scroll-detail-wrap {
	position: relative;
	z-index: 1;
	height: 100%;
	padding: 40px 20px;
}
.scroll-btn h3 > span {
	display: block;
	margin-top: 5px;
	font-size: 13px;
	line-height: 1.3;
}
.scroll-btn .scroll-guide {
	position: absolute;
	bottom: 30px;
	left: 50%;
	width: 76%;
	margin-left: -38%;
}
.scroll-btn .scroll-guide .insert-scroll {
	margin-bottom: 5px;
}
.scroll-btn .dev-coming-soon {
	line-height: inherit;
}
.scroll-btn .un-published {
	bottom: 54px;
}
.dev-coming-soon p {
	font-weight: bolder;
}
.dev-coming-soon p:last-child {
	font-size: 22px;
}
.scroll-bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.scrollImg {
	position: absolute;
	width: 100%;
	height: 220px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: all 0.5s ease-out;
}
.scrollImg--1st { background-image: url(../img/scroll_05.jpg); }
.scrollImg--2nd { background-image: url(../img/scroll_04.jpg); }
.scrollImg--3rd { background-image: url(../img/scroll_01.jpg); }
.scrollImg--4th { background-image: url(../img/scroll_02.jpg); }
.scrollImg--5th { background-image: url(../img/scroll_03.jpg); }



/**
 * Scroll Button Translucent Color
 */
.scrollBg-color:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: -1px;
	bottom: 0;
}
.scrollBg--white:before {
	background-color: #fff;
	opacity: .55;
}
.scrollBg--black:before {
	background-color: #000;
	opacity: .65;
}
.scrollBg--gray:before {
	background-color: #fff;
	opacity: .85;
}


/**
 * Scroll Button Arrow
 */
svg {
	display: block;
	margin: 0 auto;
}
.icon-black{ fill:#333; }
.icon-white{ fill:#fff; }


/**
 * Scroll Button Hover
 */
.scroll-btn-wraper {
	position: relative;
}
.scroll-btn-wraper:hover .scrollImg {
	transform: matrix3d(
		1, 0, 0, 0,
		0, 1, 0, 0,
		0, 0, 1, 0,
		0, 0, 0, 0.9
	);
}
.scroll-btn-wraper .scrollImg:before {
	transition: all 0.1s linear 0s;
	-moz-transition:all 0.1s linear 0s;
	-o-transition:all 0.1s linear 0s;
	-webkit-transition:all 0.1s linear 0s;
}
.scroll-btn-wraper:hover .noAnimation {
	transform: none;
}
.scroll-btn-wraper:hover .scrollImg:before {
	background-color: #383d9b;
	opacity: .8;
}
.scroll-btn-wraper:hover .scrollImg.scrollBg--gray:before {
	background-color: #fff;
	opacity: .85;
}
.scroll-btn-wraper:hover .fontColor--black,
.scroll-btn-wraper:hover .fontColor--gray-l2,
.scroll-btn-wraper:hover .fontColor--white,
.scroll-btn-wraper:hover .fontColor--black span,
.scroll-btn-wraper:hover .fontColor--gray-l2 span,
.scroll-btn-wraper:hover .fontColor--white span {
	color: #fff;
	text-shadow: none;
}
.scroll-btn-wraper:hover .scroll-guide .icon-black {
	fill: #fff;
}



/**
 * Section
 */
.dev-section {
	padding: 100px 50px;
}
.dev-section > div {
	position: relative;
	z-index: 10;
}
.dev-section a {
	color: #333;
}
.dev-section .dev-section-title {
	text-align: center;
}
.dev-section .dev-section-title h2 {
	line-height: 1;
}
.dev-section .dev-section-title h2 + span {
	display: block;
	margin-top: 7px;
	font-size: 17px;
}
.dev-section .dev-section-title p {
	font-weight: normal;
}
.dev-section .dev-section-detail {
	max-width: 1200px;
	margin: 0 auto;
}
.dev-section .dev-section-detail ul {
	display:-ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content: space-between;
}
.dev-section .dev-section-detail ul li {
	width: calc(50% - 10px);
	margin-top: 20px;
	background: #fff;
	box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);
	transition: all 0.1s linear 0s;
}
.dev-section .dev-section-detail ul li a:hover {
	background: #eee;
	 box-shadow: 0 1px 2px -2px rgba(0,0,0,0.1), 0 4px 6px 0 rgba(0,0,0,0.24), 0 3px 6px 0px rgba(0,0,0,0.2);
}
.dev-section .dev-section-detail ul li a:hover .dev-btn span {
	background: #7a7a7a;
	color: #fff;
}
.dev-section .dev-section-detail ul li a:hover .dev-btn span:before {
	border-color: #fff #fff transparent transparent;
}
.dev-section .dev-section-detail ul li:last-child {
	margin-left: 20px;
}
.dev-section .dev-section-detail ul li a {
	width: 100%;
	height: 100%;
	display: block;
}
.dev-section .dev-section-detail ul li .item-wrap {
	padding: 20px;
}
.dev-section .dev-section-detail .ellipsis {
	font-size: 14px;
	word-break: break-all;
}
.dev-section .dev-section-detail .number-icon {
	display: inline-block;
	width: 50px;
	margin-right: 10px;
	padding: 6px;
	background: #383d9b;
	border-radius: 2px;
	line-height: 1;
	font-size: 11px;
	font-weight: bolder;
	color: #fff;
	text-align: center;
}
.dev-section .dev-section-detail h3 {
	width: calc(100% - 60px);
	word-break: break-all;
}



.dev-section .dev-section-detail .contents-title,
.dev-section .contents-detail {
	display:-ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
.dev-section .dev-section-detail .contents-detail > div:first-child {
	width: 140px;
	min-height: 112px;
	max-height: 117px;
}
.dev-section .dev-section-detail .contents-detail > div:last-child {
	width: calc(100% - 160px);
	margin-left: 20px;
}


/**
 * Main Visual
 */
.dev-main-visual {
	position: relative;
	width: 100%;
	height: 430px;
	padding: 100px 50px;
}
.dev-main-visual > div {
	margin-top: 10px;
}
.dev-main-visual > div:first-child {
	margin-top: 0;
}
.dev-main-visual > div:last-child {
	margin-top: 20px;
}
.dev-main-visual .dev-sub-title {
	margin-top: 10px;
}
.dev-main-visual h1 {
	height: 84px;
	line-height: 1;
	white-space: nowrap;
}
.dev-main-visual h1,
.dev-main-visual p,
.dev-main-visual li {
	color: #fff;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5), 1px 1px 5px rgba(0,0,0,0.2);
}
.dev-main-visual p {
	height: 22px;
	line-height: 1;
}
.dev-main-visual ul li {
	height: 20px;
	display: inline-block;
	margin-top: 10px;
	font-weight: bolder;
	line-height: 1;
}
.dev-main-visual ul li:first-child {
	margin-top: 0;
}
.dev-detail-title-pc {
	display: block;
}
.dev-detail-title-sp {
	display: none;
}


/**
 * Button
 */
.dev-btn {
	width: 110px;
	height: 40px;
	margin-top: 15px;
}
.dev-btn > span {
	position: relative;
	width: 100%;
	height: 100%;
	display: inline-block;
	padding: 0 30px 0 20px;
	background-color: #fff;
	border: 1px solid #7a7a7a;
	line-height: 38px;
	text-align: center;
	color: #7a7a7a;
	font-size: 13px;
	font-weight: bolder;
}
.dev-btn > span:before {
	content: '';
	width: 4px;
	height: 4px;
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -3px;
	border: 1px solid;
	border-color: #7a7a7a #7a7a7a transparent transparent;
	transform: rotate(45deg);
	opacity: 1;
}


/**
 * SNS Logo
 */
.dev-sns h2{
	font-size: 30px;
}
.dev-sns a {
	display: inline-block;
}
.dev-sns .dev-sns-logo > div {
	width: 140px;
	margin: 0 auto;
	font-size: 0;
}

.dev-sns .dev-sns-logo .we-chat,
.dev-sns .dev-sns-logo .we-chat-pc {
	position: relative;
}
.dev-sns .dev-sns-logo .weibo {
	margin-left: 20px;
}
.dev-sns .dev-sns-logo .img {
	width: 60px;
	height: auto;
}
.dev-sns .dev-sns-logo .sns-logo:hover .img{
	opacity: .5;
}


.dev-sns .dev-sns-logo .we-chat-pc .we-chat-qr {
	display: none;
	width: 186px;
	max-width: 186px;
	height: auto;
	position: absolute;
	bottom: 60px;
	left: 50%;
	margin-left: -93px;
}



/**
 * Animation
 */
.fade-in {
	transition: opacity 0.4s;
	-moz-transition: opacity 0.4s;
	-webkit-transition: opacity 0.4s;
	-o-transition: opacity 0.4s;
}
.animation-title {
	position: relative;
	width: 0;
	white-space: nowrap;
}
.animation-title h1,
.animation-title p {
	display: inline-block;
	position: relative;
	opacity: 0;
}
.animation-title span {
	display: inline-block;
	position: absolute;
	right: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}


/**
 * IE
 */
@media screen\0 {
	.scrollImg--1st.monotoneColor { background-image: url(../img/scroll_05_mono.jpg); }
	.scrollImg--2nd.monotoneColor { background-image: url(../img/scroll_04_mono.jpg); }
	.scrollImg--4th.monotoneColor { background-image: url(../img/scroll_02_mono.jpg); }
	.scrollImg--5th.monotoneColor { background-image: url(../img/scroll_03_mono.jpg); }
	.dev-section .dev-section-detail ul li,
	.dev-section .dev-section-detail .contents-title > div,
	.dev-section .dev-section-detail .contents-title > h3,
	.dev-section .contents-detail > div,
	.dev-section .dev-section-detail .contents-title > div,
	.dev-section .dev-section-detail .contents-title > h3 {
		float: left;
	}
	.dev-section .dev-section-detail .contents-title > h3 {
		width: calc(100% - 60px);
	}
}




/**
 * Safari
 */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, .scroll-btn-wraper:hover .scrollImg {
		transform: none;
	}
}
_::-webkit-full-page-media, _:future, :root .scroll-btn-wraper:hover .scrollImg {
	transform: none;
}




/**
 * media 768
 */
@media (max-width: 768px) {

	/* 768 - Utility */
	.u-mt20 { margin-top: 15px; }

	/* 768 - Main Contents */
	.dev-main-contents {
		min-width: 320px;
	}
	.dev-main-contents h1 {
		font-size: 34px;
		font-weight: bolder;
	}
	.dev-main-contents h2,
	.dev-sns h2 {
		font-size: 26px;
	}
	.dev-main-contents h3 {
		font-size: 16px;
	}
	.dev-main-contents p {
		font-size: 14px;
	}
	.dev-main-contents > img {
		display: block;
		width: 100%;
		height: auto;
	}

	/* 768 - Background Color */
	.scrollImg--black {
		background-color: rgb(0, 0, 0, .8);
	}
	.scrollImg--gray {
		background-color:rgb(72, 72, 72, .9);
	}

	/* 768 - Common*/
	.fontSize--large  { font-size: 15px !important; }
	.fontSize--middle { font-size: 13px !important; }
	.fontSize--scroll { font-size: 12px !important; }
	.textShadow--white {
		text-shadow: 0px 1px 2px rgba(255,255,255,0.2), -1px -1px 4px rgba(255,255,255,0.2), 0px 0px 3px rgba(255,255,255,0.2), 1px 1px 0px rgba(255, 255, 255, .5);
	}

	/* 768 -  Main Visual */
	.dev-main-visual {
		height: 267px;
		padding: 50px 20px;
	}
	.dev-main-visual > div:first-child {
		position: relative;
		top: 50%;
	}
	.dev-main-visual .dev-sub-title {
		margin-top: 0;
	}
	.dev-main-visual h1 {
		height: 36px;
	}
	.dev-main-visual p {
		height: 18px;
	}
	.dev-main-visual ul li {
		height: 15px;
		margin-top: 5px;
	}
	.dev-detail-title-pc {
		display: none;
	}
	.dev-detail-title-sp {
		display: block;
		padding: 30px;
		text-align: center;
		line-height: 1.8;
	}

	/* 768 - Scroll */
	.scroll-btn {
		margin-bottom: 0;
	}
	.scroll-btn ul {
		flex-direction: column;
	}
	.scroll-btn ul li {
		width: 100%;
		height: 64px;
		position: relative;
		border-left: none;
		border-bottom: 1px solid #ccc;
		text-align: left;
	}
	.scroll-btn ul li:first-child {
		height: 64px;
	}
	.scroll-btn a > div:first-child {
		height: 100%;
		padding: 12px 20px;
	}
	.scroll-btn .scroll-detail-wrap {
		height: 100%;
		padding: 12px 20px;
	}
	.scroll-btn .scroll-guide {
		position: static;
		width: 100%;
		margin-top: 3px;
		margin-left: 0;
	}
	.scroll-btn .scroll-guide .insert-scroll {
		margin-bottom: 0;
	}
	.scroll-btn .scroll-guide .insert-scroll p {
		float: left;
		font-weight: bold;
		white-space: nowrap;

	}
	.dev-release .insert-scroll p {
		width: 95%;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.dev-coming-soon p:first-child {
		margin-right: 10px;
	}
	.dev-coming-soon p:last-child {
		font-size: 12px;
		line-height: 1.3;
	}
	.scroll-btn h3 {
		width: 90%;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.scroll-btn h3 > span {
		display: inline-block;
		margin-top: 0;
		margin-left: 10px;
		font-size: 13px;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.scroll-btn .comingSoon {
		display:-ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-ms-flex-align: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		align-items: center;
	}

	/* 768 - Scroll Background Image*/
	.scrollImg      { height: 100%; }
	.scrollImg--3rd { background-image: url(../img/sp_scroll_01.jpg); }
	.scrollImg--4th { background-image: url(../img/sp_scroll_02.jpg); }
	.scrollImg--5th { background-image: url(../img/sp_scroll_03.jpg); }
	.scrollImg--2nd { background-image: url(../img/sp_scroll_04.jpg); }
	.scrollImg--1st { background-image: url(../img/sp_scroll_05.jpg); }

	/*  768 - Arrow*/
	svg {
		position: absolute;
		right: 15px;
		top: 50%;
		margin-top: -12px;
	}

	/*  768 - Monotone */
	.comingSoon p {
		font-size: 12px !important;
		line-height: inherit;
	}
	.comingSoon p:last-child {
		margin-left: 5px;
	}

	.scroll-btn-wraper:hover .scrollImg {
		transform: inherit;
	}


	/* 768 - Section */
	.dev-section {
		padding: 70px 20px;
	}
	.dev-section .dev-section-title h2 {
		line-height: 1.3;
	}
	.dev-section .dev-section-detail ul {
		-webkit-flex-direction: column;
		-ms-flex-direction    : column;
		flex-direction        : column;
	}
	.dev-section .dev-section-detail ul li {
		width: 100%;
	}
	.dev-section .dev-section-detail ul li:last-child {
		margin-left: 0;
	}
	.dev-section .dev-section-detail .contents-detail > div:first-child {
		width: 100px;
		min-height: 89px;
		height: inherit;
	}
	.dev-section .dev-section-detail .contents-detail > div:last-child {
		width: calc(100% - 140px);
		margin-left: 15px;
	}

	/* 768 - Button */
	.dev-btn { margin-top: 14px; }

	/* 768 - SNS */
	.dev-sns .dev-sns-logo .img {
		width: 50px;
	}

	/* 768 - Safari */
	@media screen\0 {
		.scrollImg--1st.monotoneColor { background-image: url(../img/sp_scroll_05_mono.jpg); }
		.scrollImg--2nd.monotoneColor { background-image: url(../img/sp_scroll_04_mono.jpg); }
		.scrollImg--4th.monotoneColor { background-image: url(../img/sp_scroll_02_mono.jpg); }
		.scrollImg--5th.monotoneColor { background-image: url(../img/sp_scroll_03_mono.jpg); }
	}
}
@media (min-width: 769px) {
	.scroll-btn ul li:first-child h3,
	.scroll-btn ul li:nth-child(2) h3,
	.scroll-btn ul li:nth-child(3) h3,
	.scroll-btn ul li:nth-child(4) h3,
	.scroll-btn ul li:nth-child(5) h3 {
	    margin-top: 55px;
	}
}
