@charset "utf-8";

/* COMMON ==================== */
body {
	background-color: #E6E6E6;
	font-size: 1em;
	color: #4D4D4D;
	line-height: 1.0;
	margin: 0;
	padding: 0;
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

ul.asterisk li {
	list-style-type: none;
	text-align: left;
	text-indent: -1em;
	margin-left: 15px;
}

ul.asterisk li:before {
	display: inline;
	content: "※";
}

.mp-17_wrapper {
	:focus {
		outline: 0;
	}

	p {
		margin: 0;
		padding: 0;
		line-height: 1.5;
	}

	ol,
	ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	table {
		border-collapse: separate;
		border-spacing: 0;
	}

	caption,
	th,
	td {
		font-weight: normal;
		text-align: left;
	}

	blockquote:before,
	blockquote:after,
	q:before,
	q:after {
		content: "";
	}

	blockquote,
	q {
		quotes: "" "";
	}

	img,
	a img {
		border: 0;
		margin: 0;
	}

	body article,
	aside,
	details,
	figcaption,
	figure,
	footer,
	header,
	hgroup,
	menu,
	nav,
	section {
		display: block;
		margin: 0;
		padding: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		clear: both;
		font-weight: normal !important;
		margin: 0;
		padding: 0;
	}

	hr {
		border: 0;
		background-color: #999;
		margin: 0;
		padding: 0.5px;
	}

	a,
	a:focus,
	a:active,
	a:hover,
	form button,
	form button:focus,
	form button:active,
	form button:hover {
		display: block;
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		text-decoration: none;
		cursor: pointer;
	}

	img {
		width: 100%;
		vertical-align: bottom;
	}

	@media screen and (min-width:760px) {

		/* PC === */
		.pc {
			display: block !important;
		}

		.sp {
			display: none !important;
		}
	}

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

		/* SP  === */
		.pc {
			display: none !important;
		}

		.sp {
			display: block !important;
		}

		br.pc {
			display: none !important;
		}
	}

	width:100%;
	margin:0;
	font-family:"source-han-sans-japanese",
	sans-serif;
	font-weight:300;
	font-style:normal;
	position:relative;
	text-align:left;
}

.mp-17_wrapper h2 {
	font-size: 1.3em;

	span {
		font-family: "bebas-neue-pro", sans-serif;
		font-weight: 600;
		font-style: normal;
		font-size: 4em !important;
		display: block;
		margin-bottom: 5px;
	}
}

.mp-17_wrapper h3 {
	font-size: 1.3em;

	span {
		font-family: "bebas-neue-pro", sans-serif;
		font-weight: 600;
		font-style: normal;
		font-size: 3em !important;
		display: block;
		margin-bottom: 5px;
	}
}

/* Head Image ==================== */
.head-img {
	background-image: url(../img/img-head.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}

@media screen and (min-width:760px) {

	/* PC === */
	.head-img {
		max-width: 2000px;
		height: 800px;
		background-size: 2000px;
	}
}

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

	/* SP  === */
	.head-img {
		max-width: 650px;
		height: 260px;
		background-size: 650px;
	}
}

/* MOVIES ==================== */
.movie {
	width: 100%;
	background: url(../img/bg-line-01.png) top right / 300px 300px no-repeat;
}

@media screen and (min-width:760px) {

	/* PC === */
	.movie {
		padding-top: 100px;
	}
}

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

	/* SP  === */
	.movie {
		padding-top: 50px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.movie h2 {
		width: 600px;
		margin: 0 auto;
	}
}

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

	/* SP  === */
	.movie h2 {
		margin: 0 auto;
		width: 70%;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.movie div {
		width: 800px;
		margin: 60px auto 100px;
	}
}

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

	/* SP  === */
	.movie div {
		width: 90%;
		margin: 30px auto 50px;
	}
}

.movie div iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
}

/* Style Gen. ==================== */
.style-gen-bg {
	position: relative;
	background: url(../img/bg-line-02.png) top left / 300px 150px no-repeat;
}

.style-gen-bg::after {
	content: "";
	position: absolute;
	top: 50px;
	left: 0;
	width: 100%;
	background-color: #FAFAFA;
	z-index: -1;
}

@media screen and (min-width:760px) {

	/* PC === */
	.style-gen-bg::after {
		height: 800px;
	}
}

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

	/* SP  === */
	.style-gen-bg::after {
		height: 1160px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.style-gen-area {
		width: 1040px;
		margin: 0 auto;
	}
}

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

	/* SP  === */
	.style-gen-area {
		width: 100%;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.style-gen-l,
	.scale-l {
		width: 520px;
		float: left;
	}
}

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

	/* SP  === */
	.style-gen-l,
	.scale-l {
		width: 90%;
		margin: 0 auto;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.style-gen-r,
	.scale-r {
		width: 480px;
		float: right;
	}

	.style-gen-r {
		margin-top: 160px;
	}
}

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

	/* SP  === */
	.style-gen-r,
	.scale-r {
		width: 90%;
		margin: 0 auto;
	}
}

.style-gen-r h2,
.scale-r h3 {
	line-height: 1.2 !important;
}

.style-gen-r h2 {
	border-bottom: 1px solid #999;
	padding-bottom: 25px;
	margin-bottom: 25px;
}

@media screen and (min-width:760px) {

	/* PC === */
	.scale {
		margin-top: 40px;
	}
}

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

	/* SP  === */
	.scale {
		margin-top: 20px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.scale-r {
		margin-top: 60px;
	}
}

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

	/* SP  === */
	.scale-r {
		margin-top: 30px;
	}
}

.scale-r h3 {
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
}

@media screen and (min-width:760px) {

	/* PC === */
	.scale-r h3 {
		padding: 25px 0 40px 0;
	}
}

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

	/* SP  === */
	.scale-r h3 {
		padding: 12.5px 0 20px 0;
	}
}

/* WEAPONS / MATRIX ==================== */
.weapons-matrix-bg {
	width: 100%;
	background:
		url(../img/bg-line-03.png) top right / 300px 300px no-repeat,
		url(../img/bg-line-04.png) bottom left / 300px 150px no-repeat;
}

@media screen and (min-width:760px) {

	/* PC === */
	.weapons-matrix-bg {
		padding-bottom: 0;
	}
}

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

	/* SP  === */
	.weapons-matrix-bg {
		margin-top: 50px;
		padding-bottom: 50px;
	}
}

.weapons-matrix {
	margin: 0 auto;
}

@media screen and (min-width:760px) {

	/* PC === */
	.weapons-matrix {
		width: 1300px;
		padding-top: 100px;
	}
}

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

	/* SP  === */
	.weapons-matrix {
		width: 90%;
		padding-top: 50px;
	}
}

.weapons-matrix h2 {
	margin: 0 auto;
}

@media screen and (min-width:760px) {

	/* PC === */
	.weapons-matrix h2 {
		width: 600px;
	}
}

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

	/* SP  === */
	.weapons-matrix h2 {
		margin: 0 auto;
		width: 80%;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.wm-l {
		width: 700px;
		float: left;
		margin-top: 80px;
	}
}

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

	/* SP  === */
	.wm-l {
		margin-top: 40px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.wm-r {
		width: 600px;
		float: right;
		margin-top: 60px;
	}
}

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

	/* SP  === */
	.wm-r {
		width: 100%;
		margin-top: 30px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.wm-lb {
		width: 480px;
		float: left;
		margin-top: 80px;
		margin-left: 80px;
	}
}

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

	/* SP  === */
	.wm-lb {
		width: 100%;
		margin: 40px auto 20px;
	}

	.wm-lb p {
		margin: 0 20px 20px 20px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.wm-rb {
		width: 620px;
		float: right;
		margin-top: -30px;
	}
}

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

	/* SP  === */
	.wm-rb {
		width: 100%;
		margin-top: 10px;
	}
}


/* WEAPONS / MATRIX ==================== */
@media screen and (min-width:760px) {

	/* PC === */
	.setparts {
		width: 980px;
		margin: 0 auto;
	}
}

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

	/* SP  === */
	.setparts {
		width: 90%;
		margin: -20px auto 0;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.setparts-l {
		width: 520px;
		float: left;
	}
}

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

	/* SP  === */
	.setparts-l {
		width: 100%;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.setparts-r {
		width: 460px;
		float: right;
	}
}

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

	/* SP  === */
	.setparts-r {
		width: 100%;
	}
}

.setparts-r h3 {
	width: 100%;
	border-bottom: 1px solid #999;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-bottom: 10px;
}

@media screen and (min-width:760px) {

	/* PC === */
	.setparts-r h3 {
		text-indent: 40px;
	}
}

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

	/* SP  === */
	.setparts-r h3 {}
}

.setparts-r ul {
	list-style-type: disc;
}

.setparts-r ul li {
	margin-bottom: 8px;
}

@media screen and (min-width:760px) {

	/* PC === */
	.setparts-r ul {
		margin-left: 60px;
	}
}

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

	/* SP  === */
	.setparts-r ul {
		margin-left: 20px;
	}
}

/* PRODUCT ==================== */
.product {
	background-color: #ff9700;
}

.product img {
	width: 100%;
}

@media screen and (min-width:760px) {

	/* PC === */
	.product {
		margin-top: 100px;
	}
}

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

	/* SP  === */
	.product {
		margin-top: 50px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.product-area {
		width: 1060px;
		margin: 0 auto;
		padding-top: 100px;
	}
}

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

	/* SP  === */
	.product-area {
		width: 90%;
		margin: 0 auto;
		padding-top: 30px;
	}
}

@media screen and (min-width:760px) {

	/* PC === */
	.product-l {
		width: 550px;
		float: left;
	}
}

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

	/* SP  === */
	.product-l {
		width: 100%;
	}
}

.product-l ul {
	font-size: 0.8em;
	color: #fff;
}

@media screen and (min-width:760px) {

	/* PC === */
	.product-l ul {
		margin-top: 30px;
	}
}

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

	/* SP  === */
	.product-l ul {
		margin-top: 15px;
	}
}

.product-l ul li {
	margin-bottom: 5px;
	line-height: 1.2;
}

@media screen and (min-width:760px) {

	/* PC === */
	.product-r {
		width: 460px;
		float: right;
	}
}

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

	/* SP  === */
	.product-r {
		width: 100%;
		margin-top: 50px;
	}
}

.btn-takaratomymall {
	text-align: center;
	background-color: #fff;
	border-radius: 40px;
}

@media screen and (min-width:760px) {

	/* PC === */
	.btn-takaratomymall {
		width: 460px;
		height: 80px;
		margin-top: 40px;
	}
}

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

	/* SP  === */
	.btn-takaratomymall {
		width: 90%;
		height: 80px;
		margin: 20px auto 0;
	}
}

.btn-takaratomymall p {
	float: left;
	border-right: 1px solid #333;
	padding: 0 15px 0 30px;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #000;
}

.btn-takaratomymall span {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.btn-takaratomymall img {
	padding: 0 60px 0 15px;
	float: left;
}

@media screen and (min-width:760px) {

	/* PC === */
	.btn-takaratomymall img {
		width: 370px;
	}
}

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

	/* SP  === */
	.btn-takaratomymall img {
		padding: 0 40px 0 20px;
		width: 200px;
	}
}

.copyright {
	width: 100%;
	text-align: center;
	color: #fff;
}

@media screen and (min-width:760px) {

	/* PC === */
	.copyright {
		padding: 60px 0 100px 0;
	}
}

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

	/* SP  === */
	.copyright {
		padding: 50px 0 50px 0;
	}
}

.copyright small {
	font-size: 1em;
}



/* 20251231追加 */
.border-box{
	border: 1px solid #fff;
    margin: 100px auto 100px;
    text-align: center;
    padding: 30px;
    width: 745px;
}

@media screen and (max-width: 759.98px) {
	.border-box{
		margin: 30px auto 50px;
		padding: 20px;
		text-align: left;
    	width: 90%;
	}	
}

.banner{
	margin: 40px auto 0;
    width: 240px;
}

@media screen and (max-width: 759.98px) {
	.banner{
		margin: 20px auto 0;
    	width: 62%;
	}
}



