@charset "utf-8";

/*! HTML5 Boilerplate v7.2.0 | MIT License | https://html5boilerplate.com/ */


/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */


/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */


/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
	color: #222;
	font-size: 1em;
	line-height: 1.4;
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #000;
}


/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
	background: #c0f3c5;
	text-shadow: none;
}

::selection {
	background: #c0f3c5;
	text-shadow: none;
}


/*
 * A better looking default horizontal rule
 */

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}


/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}


/*
 * Remove default fieldset styles.
 */

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}


/*
 * Allow only vertical resizing of textareas.
 */

textarea {
	resize: vertical;
}


/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */


/* ==========================================================================
   Helper classes
   ========================================================================== */


/*
 * Hide visually and from screen readers
 */

.hidden {
	display: none !important;
}


/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
	/* 1 */
}


/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	white-space: inherit;
	width: auto;
}


/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
	visibility: hidden;
}


/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
	content: " ";
	/* 1 */
	display: table;
	/* 2 */
}

.clearfix:after {
	clear: both;
}

h1 {
	margin: 0;
	padding-bottom: 178vw;
}

.mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

header img {
	width: 100%;
}

.plate {
	width: 90%;
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
	padding-top: 10px;
	background-color: rgba(25, 25, 25, 0.7);
}

div#head {
	position: relative;
}


/* ----- info_shell ----- */

#info_shell {
	position: absolute;
	width: 100%;
	height: 141vw;
	top: 92vw;
	/* キービジュの高さは125vw  */
}

/* ----- downloadbanner_shell ----- */
#downloadbanner_shell {
	text-align: center;
	color: #FFF;
	margin-bottom: 1em;
}
#downloadbanner_shell .plate {
}
.downloadbanner_area {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
	padding-bottom: 1em;
	text-align:center;
}
.plate .downloadbanner_area img {
	width: 90%;
	max-width: 400px;
}
.downloadbanner_area a {
	color:#FFF;
	font-size: 3.2vw;
	text-decoration: none;
}
.steam_logo_line{
	border:2px solid #cccdcd;
}
/* ----- spec_shell ----- */

#spec_shell {
	/*	padding:30px 0 0 0; */
	text-align: center;
	color: #FFF;
}

#spec_shell h2 {
	font-size: 4.5vw;
}

#spec_shell dl {
	display: inline-block;
	margin-top: 0;
	padding: 0 1em 1em;
	font-size: 3.2vw;
}

#spec_shell dt {
	float: left;
	text-align: left;
}

#spec_shell dd {
	margin-left: 9.5em;
	text-align: left;
}


/* ----- news_shell ----- */

#news_shell {
	text-align: center;
	/* 	padding:30px 0; */
	color: #FFF;
	margin-top: 1em;
}

#news_shell h2 {
	font-size: 4.5vw;
}

#news_shell dl {
	display: inline-block;
	margin-top: 0;
	padding-bottom: 1em;
	font-size: 3.2vw;
	height: 5em;
	overflow: auto;
}

#news_shell dt {
	float: left;
	text-align: left;
	margin-bottom: 5px;
}

#news_shell dd {
	margin-left: 8em;
	text-align: left;
	margin-bottom: 5px;
}


/* ----- introduction_shell ----- */

#introduction_shell {
	color: #FFF;
}

#introduction_shell h3 {
	font-size: 18px;
	text-align: center;
	color: #d3cb97;
	margin: 0;
	background-color: rgba(0, 0, 0, 0.5);
	padding-bottom: 10px;
	padding-top: 10px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	background-image: url(../img/186_fl.png), url(../img/186_flr.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: right center, left center;
	border: 2px solid #d3cb97;
}

#introduction_shell h3 span {
	font-size: 20px;
}

#introduction_shell .big {
	line-height: 2;
}

#introduction_shell img {
	width: 100%;
}

.introduction_a {
	padding: 40px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.introduction_b {
	padding: 40px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.introduction_c {
	padding: 40px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.introduction_d {
	padding: 40px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.introduction_e {
	padding: 40px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

#introduction_shell .capimagearea div {
	width: 90%;
	margin-top: 25px;
	margin-left: auto;
	margin-right: auto;
}


/* ----- under_shell ----- */

#under_shell {
	background-position: center center;
	background-size: cover;
}

/* ----- downloadbanner_shell ----- */
#downloadbannar_shell_under {
	text-align: center;
	color: #FFF;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
#downloadbannar_shell_under img {
	width: 100%;
	max-width: 400px;
}
#downloadbannar_shell_under a {
	color:#FFF;
	/* font-size: 80%; */
	text-decoration: none;
}

/* ----- bannar_shell ----- */

#bannar_shell img {
	width: 100%;
}

#bannar_shell {
	padding-bottom: 0px;
	text-align: center;
	color: #FFF;
}

#bannar_shell div {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 25px;
}


/* ----- other_shell ----- */

#other_shell {
	width: 100%;
	padding-bottom: 0px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color: #FFF;
}

#other_shell ul {
	width: 85%;
	text-align: left;
	font-size: 80%;
	margin-left: auto;
	margin-right: auto;
}

#other_shell ul li {
	margin: 0.5em 0;
}

#other_shell a {
	color: #fff;
}


/* ----- footer ----- */

footer {
	text-align: center;
	padding-top: 30px;
	padding-bottom: 5px;
	color: #FFF;
}

footer p {
	margin: 0;
	line-height: 1;
}


/* ----- topへ戻る ----- */

.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 15px;
	z-index: 2;
}

.pagetop a {
	display: block;
	background-color: #0e6a79;
	text-align: center;
	color: #2e8864;
	font-size: 12px;
	text-decoration: none;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	width: 40px;
	height: 40px;
	background-image: url(../img/top_arrow.png);
	background-repeat: no-repeat;
}

.pagetop a:hover {
	display: block;
	background-color: #73cddc;
	text-align: center;
	color: #fff;
	font-size: 12px;
	text-decoration: none;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

@media only screen and (min-width: 768px) {
	h1 {
		padding-bottom: 143vw;
	}
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 769px) {
	/* Style adjustments for viewports that meet the condition */
	a:hover {
		 opacity: 0.8; 
	}
	.ani img {
		-moz-transition: -moz-transform 0.5s linear;
		-webkit-transition: -webkit-transform 0.5s linear;
		-o-transition: -o-transform 0.5s linear;
		-ms-transition: -ms-transform 0.5s linear;
		transition: transform 0.5s linear;
	}
	.ani img:hover {
		-webkit-transform: scale(1.03);
		-moz-transform: scale(1.03);
		-o-transform: scale(1.03);
		-ms-transform: scale(1.03);
		transform: scale(1.03);
	}
	h1 {
		padding-bottom: 0;
	}
	article {
		min-width: 1024px;
	}
	header {
		text-align: center;
		background-color: black;
	}
	header img {
		width: 100%;
		max-width: 1500px;
		min-width: 1024px;
	}
	.plate {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	/* ----- info_shell ----- */
	#info_shell {
		position: absolute;
		bottom: 20px;
		width: 100%;
		min-width: 1024px;
		left: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-evenly;
		height: auto;
		top: auto;
	}
	/* ----- downloadbanner_shell ----- */
	#downloadbanner_shell {
		width: 32%;
		display: flex;
		margin-top: 0;
		margin-bottom:0;
	}
	#downloadbanner_shell .plate {
		position: relative;
	}
	.downloadbanner_area {
		text-align:center;
		width: 100%;
		/* position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%); */
	}
	.plate .downloadbanner_area img {
		width: 60%;
		max-width: 400px;
	}
	br.appbr{
		display:none;
	}
	.downloadbanner_area a {
		color:#FFF;
		font-size: 1.2vw;
		text-decoration: none;
		display: block;
		margin-bottom: 0.5em;
	}

	/* ----- news_shell ----- */
	#news_shell {
		width: 32%;
		display: flex;
		margin-top: 0;
	}
	#news_shell h2 {
		font-size: 24px;
	}
	#news_shell dl {
		font-size: 13px;
		height: 8em;
		overflow: auto;
		padding-right: 1em;
	}
	#news_shell dd {
		margin-left: 8.5em;
	}
	/* ----- spec_shell ----- */
	#spec_shell {
		width: 32%;
		display: flex;
	}
	#spec_shell h2 {
		font-size: 24px;
	}
	#spec_shell dl {
		font-size: 13px;
	}
	#spec_shell dd {
		margin-left: 9.5em;
		white-space: nowrap;
	}
	/* ----- introduction_shell ----- */
	#introduction_shell img {
		-moz-transition: -moz-transform 0.5s linear;
		-webkit-transition: -webkit-transform 0.5s linear;
		-o-transition: -o-transform 0.5s linear;
		-ms-transition: -ms-transform 0.5s linear;
		transition: transform 0.5s linear;
	}
	#introduction_shell img:hover {
		-webkit-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-o-transform: scale(1.1);
		-ms-transform: scale(1.1);
		transform: scale(1.1);
	}
	.introduction_a {
		padding: 30px 0;
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.introduction_b {
		padding: 30px 0;
		height: 700px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.introduction_c {
		padding: 30px 0;
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.introduction_d {
		padding: 30px 0;
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.introduction_e {
		padding: 30px 0;
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.introduction_f {
		padding: 30px 0;
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.sp {
		display: none;
	}
	#introduction_shell h3 {
		font-size: 30px;
		margin: 0;
		background-color: #00000080;
		padding-bottom: 20px;
		padding-top: 1em;
		width: 1000px;
		margin-right: auto;
		margin-left: auto;
		background-image: url(../img/186_fl.png), url(../img/186_flr.png);
		background-size: 60px;
		background-repeat: no-repeat;
		background-position: right center, left center;
		border: 2px solid #d3cb97;
	}
	#introduction_shell h3 span {
		font-size: 38px;
	}
	.capimagearea {
		width: 1000px;
		padding-bottom: 0px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
	}
	#introduction_shell .capimagearea div {
		width: 460px;
		float: left;
	}
	#introduction_shell .capimagearea div:first-child {
		margin-right: 80px;
	}
	#introduction_shell .capimagearea div img {
		width: 460px;
		height: 352px;
	}
	/* ----- downloadbannar_shell ----- */
	#downloadbannar_shell {
		width: 1000px;
		padding-bottom: 0px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		text-align: center;
		color: #FFF;
	}
	#downloadbannar_shell img {
		width: 310px;
	}
	#downloadbannar_shell a {
		color:#FFF;
		font-size: 1.2vw;
		text-decoration: none;
	}
	/* ----- bannar_shell ----- */
	#bannar_shell {
		width: 1000px;
		padding-bottom: 0px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		text-align: center;
		color: #FFF;
	}
	#bannar_shell div {
		width: 450px;
		float: left;
	}
	#bannar_shell div:first-of-type {
		margin-right: 100px;
	}
	/* ----- other_shell ----- */
	#other_shell {
		width: 1024px;
		padding-bottom: 0px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		text-align: center;
		color: #FFF;
	}
	/* ----- footer ----- */
	footer {
		text-align: center;
		padding-top: 30px;
		color: #FFF;
	}
	footer p {
		margin: 0;
	}
}

@media only screen and (min-width: 1150px) {
	/* Style adjustments for viewports that meet the condition */
	article {
		min-width: 1100px;
	}
	header img {
		width: 100%;
		min-width: 1100px;
	}
	/* ----- info_shell ----- */
	#info_shell {
		position: absolute;
		bottom: 30px;
		width: 94%;
		left: 3%;
	}
	/* ----- introduction_shell ----- */
	#introduction_shell h3 {
		width: 1100px;
	}
	.capimagearea {
		width: 1100px;
	}
	#introduction_shell .capimagearea div:first-child {
		margin-right: 100px;
	}
	#introduction_shell .capimagearea div {
		width: 500px;
		float: left;
	}
	#introduction_shell .capimagearea div img {
		width: 500px;
		height: 382px;
	}
	/* ----- spec_shell ----- */
	#spec_shell h2 {
		font-size: 2vw;
	}
	#spec_shell dl {
		font-size: 1.2vw;
	}
	/* ----- news_shell ----- */
	#news_shell h2 {
		font-size: 2vw;
	}
	#news_shell dl {
		font-size: 1.2vw;
	}
	/* ----- bannar_shell ----- */
	#bannar_shell {
		width: 1100px;
	}
	#bannar_shell div:first-of-type {
		margin-right: 100px;
	}
	#bannar_shell div {
		width: 500px;
		float: left;
	}
	#bannar_shell {
		width: 1100px;
	}
	/* ----- other_shell ----- */
	#other_shell {
		width: 1100px;
	}
}

@media only screen and (min-width: 1520px) {
	/* Style adjustments for viewports that meet the condition */
	/* ----- info_shell ----- */
	#info_shell {
		position: absolute;
		bottom: 40px;
		width: 1412px;
		left: 0;
		right: 0;
		margin: auto;
	}
	/* ----- downloadbanner_area ----- */
	.downloadbanner_area a {
		color:#FFF;
		font-size: 17px;
		text-decoration: none;
	}
	/* ----- spec_shell ----- */
	#spec_shell {}
	#spec_shell h2 {
		font-size: 28px;
	}
	#spec_shell dl {
		font-size: 17px;
	}
	/* ----- news_shell ----- */
	#news_shell {}
	#news_shell h2 {
		font-size: 28px;
	}
	#news_shell dl {
		font-size: 17px;
	}
	/* ----- downloadbannar_shell ----- */
	#downloadbannar_shell a {
		color:#FFF;
		font-size: 17px;
		text-decoration: none;
	}
}

@media print,
(-webkit-min-device-pixel-ratio: 1.25),
(min-resolution: 1.25dppx),
(min-resolution: 120dpi) {
	/* Style adjustments for high resolution devices */
}


/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
	*,
	*:before,
	*:after {
		background: transparent !important;
		color: #000 !important;
		/* Black prints faster */
		-webkit-box-shadow: none !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	a[href]:after {
		content: " (" attr(href) ")";
	}
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	/*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
	a[href^="#"]:after,
	a[href^="javascript:"]:after {
		content: "";
	}
	pre {
		white-space: pre-wrap !important;
	}
	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	/*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
	thead {
		display: table-header-group;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}