@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=M+PLUS+1p:400,800&display=swap&subset=japanese");
.pcOnly {
	display: inherit;
}
@media screen and (max-width: 750px) {
	.pcOnly {
		display: none;
	}
}

.spOnly {
	display: none;
}
@media screen and (max-width: 750px) {
	.spOnly {
		display: inherit;
	}
}

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

#loader-bg {
	background: #000000;
	height: 100%;
	width: 100%;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 11;
}
#loader-bg .loader-bg-inner {
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 11;
}

.loader,
.loader:before,
.loader:after {
	background: #C6000B;
	-webkit-animation: load1 1s infinite ease-in-out;
	animation: load1 1s infinite ease-in-out;
	width: 1em;
	height: 4em;
}

.loader {
	color: #C6000B;
	text-indent: -9999em;
	margin: 88px auto;
	position: relative;
	font-size: 11px;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

.loader:before,
.loader:after {
	position: absolute;
	top: 0;
	content: "";
}

.loader:before {
	left: -1.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.loader:after {
	left: 1.5em;
}

@-webkit-keyframes load1 {
	0%, 80%, 100% {
		-webkit-box-shadow: 0 0;
		        box-shadow: 0 0;
		height: 4em;
	}
	40% {
		-webkit-box-shadow: 0 -2em;
		        box-shadow: 0 -2em;
		height: 5em;
	}
}
@keyframes load1 {
	0%, 80%, 100% {
		-webkit-box-shadow: 0 0;
		        box-shadow: 0 0;
		height: 4em;
	}
	40% {
		-webkit-box-shadow: 0 -2em;
		        box-shadow: 0 -2em;
		height: 5em;
	}
}
@-webkit-viewport {
	width: device-width;
}
@-moz-viewport {
	width: device-width;
}
@-ms-viewport {
	width: device-width;
}
@-o-viewport {
	width: device-width;
}
@viewport {
	width: device-width;
}
iframe {
	width: 100%;
	border: 1px solid #CCC;
	padding: 1em;
	-webkit-transition: height 0.25s ease;
	transition: height 0.25s ease;
}

img {
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}

figure {
	margin: 0;
}

strong {
	font-weight: bold;
}

html {
	font-size: 62.5%;
	background-color: #000;
}

body {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	     text-size-adjust: 100%;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
	color: #333;
	background-color: #000;
	line-height: 1.5;
	font-size: 1.6rem;
	overflow-wrap: break-word;
	word-wrap: break-word;
	background: url("../img/background.jpg") no-repeat top center fixed;
	background-size: cover;
}

.wrapper, .secondBody, footer, .formInfo {
	max-width: 750px;
	margin: auto;
	overflow: hidden;
}

.wrapper {
	background-color: #000024;
}

#wrapperForm,
#wrapperSecond {
	max-width: 750px;
	margin: auto;
}

.header {
	position: relative;
	background: #000;
}
.header .header_layout {
	background: url("../img/header.jpg") no-repeat top center #000000;
	background-size: cover;
	position: relative;
	overflow: hidden;
}
.header .header_layout:before {
	content: "";
	display: block;
	padding-top: 133.3333333333%;
}
.header .header_layout div, .header .header_layout p, .header .header_layout h1 {
	position: absolute;
}
.header .header_layout .h01 {
	max-width: 340px;
	width: 45.3333333333%;
	top: 3.5%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}
.header .header_layout .h02 {
	max-width: 460px;
	width: 61.3333333333%;
	top: 8.5%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 2;
}
.header .header_layout .title01 {
	max-width: 348px;
	width: 46.4%;
	top: 25%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 2;
}
.header .header_layout .title02 {
	max-width: 483px;
	width: 64.4%;
	top: 29%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 2;
}
.header .header_layout .title03 {
	max-width: 237px;
	width: 31.6%;
	top: 37.5%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 2;
}
.header .header_layout .kuji_logo {
	max-width: 550px;
	width: 73.3333333333%;
	bottom: 28%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}
.header .header_layout .b01 {
	max-width: 537px;
	width: 71.6%;
	bottom: 18%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}
.header .header_layout .b02 {
	max-width: 622px;
	width: 82.9333333333%;
	bottom: 12%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 2;
}
.header .header_layout .b03 {
	max-width: 527px;
	width: 70.2666666667%;
	bottom: 6.5%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	z-index: 3;
}
.header .header_logo {
	background: url("../img/header.jpg") no-repeat top center;
	background-size: 100%;
}
.header .header_logo a {
	display: block;
	width: 100px;
	margin: auto;
	padding: 8px;
}

.container {
	margin: auto;
	max-width: 800px;
	background: #FFF;
	padding: 2em;
}
.container div, .container h1, .container h2, .container h3, .container p {
	margin: 0 auto 1em;
}
@media screen and (max-width: 640px) {
	.container {
		max-width: inherit;
		padding: 1em;
	}
	.container div, .container h1, .container h2, .container h3, .container p {
		padding: 0;
	}
}
.container h2 {
	color: #496234;
	font-size: 2.4rem;
	font-weight: bold;
	margin-top: 1.5em;
	margin-bottom: 0.5em;
}
.container h2::before {
	content: "■";
	display: inline-block;
	margin-right: 0.25em;
}
.container h2.img::before {
	content: "";
	display: none;
}
.container h3 {
	color: #496234;
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.container h3::before {
	content: "■";
	display: inline-block;
	margin-right: 0.25em;
}
.container h3.img::before {
	content: "";
	display: none;
}
.container h3 span {
	font-size: 0.75em;
	display: block;
}
.container figure {
	margin: 0 auto 1em;
}
.container figure.oikawa {
	width: 35%;
	max-width: 320px;
}
.container figure figcaption {
	color: #C6000B;
	font-size: 1.8rem;
	font-weight: bold;
}
.container p {
	margin-bottom: 1em;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 auto 4em;
}

caption {
	text-align: center;
	padding: 1em 0;
	font-size: 1.6em;
	font-weight: bold;
}

th {
	background: #C8E8F3;
	text-align: center;
	padding: 1em;
	border: 1px solid #7DACDD;
	font-weight: bold;
	color: #003366;
}

td {
	background: #FFF;
	text-align: center;
	padding: 1em;
	border: 1px solid #7DACDD;
}

.form_box {
	text-align: center;
}

/*========================================
price_area
========================================*/
.price_area {
	padding: 80px 0;
	background-image: url("../img/price_bg.jpg");
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
}
@media screen and (max-width: 640px) {
	.price_area {
		padding: 2em 0;
		background-size: cover;
	}
}
.price_area h1 {
	max-width: 874.5px;
	width: 80%;
	margin: auto;
}
.price_area h1 img {
	width: 100%;
}
.price_area .limitedWrap {
	margin: 0 auto;
}
.price_area .limitedWrap .limitedNum {
	font-size: 2.4rem;
	color: #ff0000;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
	.price_area .limitedWrap .limitedNum {
		font-size: 4.8vw;
	}
}
.price_area .termWrap {
	position: relative;
	z-index: 0;
}
.price_area .termWrap .termText {
	margin: 0 auto 0.5em;
	color: #ff0000;
	font-size: 3.6rem;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
	.price_area .termWrap .termText {
		font-size: 7.2vw;
	}
}
.price_area .priceWrap {
	width: 100%;
	margin: 0 auto 4%;
	position: relative;
}
.price_area .priceWrap .unitpriceWrap {
	width: 100%;
}
.price_area .priceWrap .unitpriceWrap .unitpriceImg {
	max-width: 311px;
	width: 40%;
	position: absolute;
	right: -15%;
	top: -50%;
	z-index: 10;
}
@media screen and (max-width: 640px) {
	.price_area .priceWrap .unitpriceWrap .unitpriceImg {
		width: 35%;
		right: -6%;
		top: -25%;
	}
}
.price_area .priceWrap .salespriceWrap {
	padding: 1em 2em;
	background: rgba(0, 0, 0, 0.4);
	display: inline-block;
	width: 90%;
}
.price_area .priceWrap .salespriceWrap .salespriceNum {
	font-family: "Roboto", sans-serif;
	font-size: 10rem;
	font-weight: 900;
	color: #FF7C00;
	margin: auto;
	position: relative;
	z-index: 2;
	background: -webkit-linear-gradient(top, #FFB76B 0%, #FFA73D 50%, #FF7C00 51%, #FF7F04 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-text-stroke-width: 2px;
	-webkit-text-stroke-color: #FFF;
}
.price_area .priceWrap .salespriceWrap .salespriceNum span {
	font-size: 50%;
}
@media screen and (max-width: 640px) {
	.price_area .priceWrap .salespriceWrap .salespriceNum {
		font-size: 16vw;
	}
}
.price_area .entryWrap {
	margin: 0 auto 2em;
}
.price_area .entryWrap a {
	display: block;
	padding: 0.5em 1em;
	background: -webkit-gradient(linear, left top, left bottom, from(#ff9900), color-stop(50%, #FFCC00), color-stop(50%, #FF9900), to(#ff9900));
	background: linear-gradient(to bottom, #ff9900 0%, #FFCC00 50%, #FF9900 50%, #ff9900 100%);
	text-shadow: 0px 2px 4px #996600;
	margin: 0 auto;
	border: 3px solid #FC0;
	border-radius: 0.5em;
	color: #FFFFFF;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 2rem;
	line-height: 1.2;
	text-decoration: none;
	width: 90%;
}
.price_area .entryWrap a:hover {
	opacity: 0.7;
}
.price_area .entryWrap a i {
	font-size: 200%;
	vertical-align: middle;
	position: relative;
	top: -0.1em;
	padding-right: 0.1em;
}
.price_area .paymentWrap p {
	text-align: center;
	margin: 0 auto 1em;
}
.price_area .paymentWrap p:last-of-type {
	margin-bottom: 0;
}
.price_area .paymentWrap p img {
	width: auto !important;
	max-width: 100%;
}

/*========================================
detail_area
========================================*/
.detail_area .inner {
	padding: 1em 2em;
}
@media screen and (max-width: 640px) {
	.detail_area .inner {
		padding: 1em 0;
	}
}
.detail_area .inner h4 {
	font-weight: bold;
	margin-bottom: 0.5em;
	color: #C6000B;
}
.detail_area .inner table {
	margin: 0 auto 1em;
}
@media screen and (max-width: 640px) {
	.detail_area .inner table tbody tr th, .detail_area .inner table tbody tr td {
		display: block;
	}
}

/*========================================
payment_area
========================================*/
/*========================================
campaign_area
========================================*/
.campaign_area .inner {
	padding: 1em 2em;
}

/*========================================
warranty
========================================*/
.warranty_area {
	padding: 0 0 4%;
	margin: 0 auto;
}
.warranty_area img {
	max-width: 100%;
}
.warranty_area .price-refund {
	position: relative;
	z-index: 1;
	margin: 0 auto 2em;
	text-align: center;
}
.warranty_area .price-refund p {
	max-width: 532px;
	margin: 0 auto;
	padding: 1em 2em;
	display: inline-block;
	border-bottom: 6px solid #11373A;
}
.warranty_area .price-refund p:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -20px;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 10px 0 10px;
	border-color: #11373A transparent transparent transparent;
}
.warranty_area h1 {
	border: none;
	max-width: 661px;
	margin: 0 auto 2em;
}
.warranty_area h1:before, .warranty_area h1:after {
	display: none;
}
.warranty_area p {
	padding: 0;
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

/*========================================
telorder
========================================*/
.telorder_area {
	margin-bottom: 3em;
	padding: 0 0 4%;
	margin: 0 auto;
}
.telorder_area p {
	text-align: center;
	margin: 0 auto 1em;
}
.telorder_area img {
	max-width: 100%;
	height: auto;
}
.telorder_area a {
	color: #C6000B;
}
.telorder_area .hover:hover {
	opacity: 0.7;
	-webkit-transition: 0.2s;
	transition: 0.2s;
}

/*========================================
magazine
========================================*/
.magazine_area {
	padding: 0 0 4%;
	margin: 0 auto;
}
.magazine_area img {
	max-width: 100%;
}

.message_box {
	padding: 0 0;
	margin: 0 auto;
}

.message_box p {
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

/*--------------------------------------------------------
第二階層
--------------------------------------------------------*/
.second_header h1 {
	width: 50%;
	margin: auto;
}

#wrapperForm,
#wrapperSecond {
	max-width: 960px;
	margin: auto;
	background: #FFF;
}
#wrapperForm header,
#wrapperSecond header {
	text-align: center;
	color: #FFF;
	padding: 2%;
	background: #C6000B;
}
#wrapperForm header .shoulder,
#wrapperSecond header .shoulder {
	font-size: 1.2rem;
	color: #496234;
}
#wrapperForm header .subtitle,
#wrapperSecond header .subtitle {
	font-size: 1.4rem;
	font-weight: bold;
	color: #496234;
}
#wrapperForm header .maintitle,
#wrapperSecond header .maintitle {
	font-size: 1.8rem;
	font-weight: bold;
	color: #FFF;
}
@media screen and (max-width: 640px) {
	#wrapperForm header .maintitle,
	#wrapperSecond header .maintitle {
		font-size: 3.6vw;
	}
}
#wrapperForm img,
#wrapperSecond img {
	width: inherit;
}

#Form {
	min-height: 100%;
	height: 100%;
}

#Form .formInfo {
	padding: 4% 0;
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
	line-height: 1.5;
	background: #FFF;
}

#Form .formInfo h1 {
	font-size: 2rem;
	padding: 0 0 0.25em;
	border-bottom: 1px dotted #C6000B;
	margin: 0 4% 1.5em;
	color: #C6000B;
	font-weight: bold;
}

#Form .formInfo h2 {
	font-size: 2.4rem;
	padding: 0 0 0.25em;
	border-bottom: 1px dotted #C6000B;
	margin: 0 4% 1em;
	color: #C6000B;
}

#Form .formInfo h3 {
	font-size: 1.8rem;
	margin: 0 0 1em;
	color: #E3BE5E;
}

#Form .formInfo h4 {
	font-size: 1.6rem;
	margin: 0.5em 0 0.5em;
	color: #E3BE5E;
}

#Form .formInfo iframe {
	width: 100%;
}

#Form .formInfo p {
	line-height: 1.5;
	padding: 0 4% 2%;
}

#Second {
	min-height: 100%;
	height: 100%;
}

#Second .secondBody {
	padding: 4% 4%;
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
	margin: 0 0 4em;
	line-height: 1.5;
	color: #FFF;
	background: #000;
}

#Second .secondBody h1 {
	font-size: 2rem;
	padding: 0 0 0.25em;
	border-bottom: 1px dotted #E3BE5E;
	margin: 0 0 1.5em;
	color: #E3BE5E;
	font-weight: bold;
}

#Second .secondBody h2 {
	font-size: 1.8rem;
	padding: 0 0 0.25em;
	border-bottom: 1px dotted #E3BE5E;
	margin: 0 0 1em;
	color: #E3BE5E;
}

#Second .secondBody h3 {
	font-size: 1.8rem;
	margin: 0 0 1em;
	color: #E3BE5E;
}

#Second .secondBody h4 {
	font-size: 1.6rem;
	margin: 0.5em 0 0.5em;
	color: #E3BE5E;
}

#Second .secondBody div {
	margin-bottom: 1.6rem;
}

#Second .secondBody p {
	margin-bottom: 1.6rem;
}

#Second .secondBody .caption {
	margin: 0 0 24px;
}

#Second dl {
	border: 1px solid #C6000B;
	border-collapse: collapse;
	width: 100%;
	margin: 0;
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

#Second dt {
	padding: 6px 8px;
	border: 1px solid;
	border-color: #CCC #999 #999 #CCC;
	background-color: #C6000B;
	color: #FFF;
}

#Second dd {
	padding: 6px 8px;
	border: 1px solid;
	border-color: #CCC #999 #999 #CCC;
	background-color: #FFF;
	color: #000;
}

nav {
	background-color: #C6000B;
	text-align: justify;
	overflow-wrap: break-word;
	word-wrap: break-word;
	font-size: 0.875em;
	border-top: 1px solid #333;
}

nav ul li a {
	border-bottom: 1px solid #333;
	padding: 0.75em 0.75em 0.75em;
	display: block;
	color: #FFF !important;
	text-decoration: none;
}

nav ul li a:hover {
	background-color: #E3BE5E;
}

#copy {
	background-color: #000;
	padding: 0.25em 0;
	color: #E3BE5E;
	text-align: center;
	font-size: 1.6rem;
}

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 1.2rem;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"; /* IE */
	filter: alpha(opacity=75); /* IE */
	-moz-opacity: 0.75; /* Firefox(old) */
	-khtml-opacity: 0.75; /* Safari(old) */
	opacity: 0.75;
}

#page-top a {
	background: #666;
	text-decoration: none;
	color: #fff;
	width: 3em;
	padding: 0.5em 0;
	text-align: center;
	display: block;
	border-radius: 2px;
}

#page-top a:hover {
	text-decoration: none;
	background: #C60;
}

@media screen and (min-width: 640px) {
	footer nav {
		color: #fff;
		text-align: justify;
		overflow-wrap: break-word;
		word-wrap: break-word;
		background: -webkit-gradient(linear, left top, left bottom, from(#222), to(#111));
		background: linear-gradient(top, #222 0%, #111 100%);
		background-color: #111;
		padding: 3em 1em;
	}
	footer nav ul {
		text-align: center;
		margin: 0;
		padding: 0;
	}
	footer nav ul li {
		display: inline;
		margin: 0 0.5em;
		font-size: 1.4rem;
	}
	footer nav ul li a {
		border-bottom: none;
		padding: 0;
		background: none;
		display: inline;
		color: #fff;
	}
	footer nav ul li a:hover {
		background-color: transparent;
		text-decoration: underline;
	}
	#copy {
		background-color: #000;
		padding: 1em 0;
		color: #E3BE5E;
		text-align: center;
		font-size: 1.6rem;
	}
}