﻿body {
	padding-top: 0px;
}
.container {
	line-height: 1.7;
}
.container #main {
	margin: 0;
}
.anc_navi .anc_btn a {
	background-color: #7c8fc9;
}
article section .heading-text {
	color: #000;
}
article section .textPink {
	color: #df4668;
}
article section .textPurple {
	color: #7c8fc9;
}
article section .monitor {
	color: #e04769;
}
article section h2 {
	font-size: 50px;
}
article section h2 span {
	font-size: 28px !important;
	position: relative;
	padding: 15px 0 0;
}
article section h2 span::before {
	content: "";
	width: 40px;
	height: 6px;
	background: #000;
	position: absolute;
	top: 0;
	left: 48%;
	left: calc(50% - 20px);
}
@media (max-width: 979px) {
	article section h2 {
		font-size: 10vw;
	}
	article section h2 span {
		font-size: 4vw !important;
		padding: 3vw 0 0;
	}
	article section h2 span::before {
		content: "";
		width: 15vw;
		height: 3px;
		left: calc(50% - 7.5vw);
	}
}
article section .inner {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 979px) {
	article section .inner {
		max-width: 96%;
	}
}
article section .price {
	line-height: 1.5;
	font-size: 50px;
	font-weight: bold;
}
article section .price > span {
	position: relative;
	font-size: 26px;
}
article section .price > span > span {
	position: absolute;
	right: 0;
	top: -13px;
	font-size: 13px;
	white-space: nowrap;
}
@media (max-width: 979px) {
	article section .price {
		font-size: 6vw;
	}
	article section .price > span {
		font-size: 6vw;
		margin-left: 0.5vw;
	}
	article section .price > span > span {
		top: -3.5vw;
		font-size: 3vw;
	}
}
article section#mv {
	background: url("../images/mainbg.jpg") center top no-repeat;
}
@media (max-width: 979px) {
	article section#mv {
		background: none;
	}
}
article section#photo {
	padding: 60px 0 80px;
}
article section#photo h3 {
	font-size: 24px;
	color: #fff;
	background: #7c8fc9;
	background: linear-gradient(90deg, rgba(124, 143, 201, 0) 0%, #7c8fc9 10%, #7c8fc9 90%, rgba(124, 143, 201, 0) 100%);
}
article section#photo ul {
	display: flex;
	justify-content: center;
}
article section#photo ul li p {
	font-size: 22px;
	margin: 5px 0 0;
	position: relative;
}
article section#photo ul li p::before {
	content: "";
	position: absolute;
	right: -3px;
	top: 0;
	top: calc(50% - 7px);
	width: 12px;
	height: 12px;
	border: 2px solid;
	border-color: #000 #000 transparent transparent;
	transform: rotate(45deg);
}
article section#photo ul li:last-child p::before {
	display: none;
}
@media (max-width: 979px) {
	article section#photo {
		padding: 5% 0 7%;
	}
	article section#photo h3 {
		font-size: 4vw;
	}
	article section#photo ul {
		flex-wrap: wrap;
		justify-content: center;
	}
	article section#photo ul li {
		width: 50%;
	}
	article section#photo ul li p {
		font-size: 3.5vw;
		margin: 1vw 0 0;
	}
	article section#photo ul li p::before {
		right: 3px;
		top: calc(50% - 5px);
		width: 8px;
		height: 8px;
		border: 1px solid;
		border-color: #000 #000 transparent transparent;
	}
}
article section#movie {
	padding: 60px 0 80px;
	background: #7c8fc9;
}
article section#movie h2 {
	color: #fff;
}
article section#movie h2 span {
	color: #fff;
}
article section#movie h2 span::before {
	background: #fff;
}
@media (max-width: 979px) {
	article section#movie {
		padding: 5% 0 7%;
	}
}
article section#menu {
	padding: 60px 0 0;
	background: url("../images/img02.jpg") center top no-repeat #e1e6f2;
}
article section#menu .container {
	height: 662px;
	background: url("../images/img01.png") center top no-repeat;
	position: relative;
}
article section#menu .containerInner {
	width: 300px;
	height: 290px;
	border: 2px solid #7c8fc9;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1), 8px 8px 0px 0px rgba(124, 143, 201, 0.4);
	position: absolute;
}
article section#menu .containerInner p {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	line-height: 1.5;
	color: #e04769;
	font-size: 16px;
}
article section#menu .containerInner p:first-child {
	height: 45%;
}
article section#menu .containerInner p:last-child {
	font-size: 16px;
	color: #6279bf;
	height: 55%;
	background: rgba(237, 240, 250, 0.8);
}
article section#menu .containerInner p .price {
	font-size: 34px;
	line-height: 1.1;
}
article section#menu .containerInner p .price span {
	font-size: 25px;
	position: relative;
}
article section#menu .containerInner.memoto {
	left: 35px;
	top: 0;
	position: relative;
}
article section#menu .containerInner.memoto:before {
	content: "NEW";
	display: block;
	background-color: #ff0;
	position: absolute;
	left: -15px;
	top: -15px;
	border-radius: 50%;
	padding: 10px;
	font-family: sans-serif;
	color: #e04769;
}
article section#menu .containerInner.kogao {
	left: 615px;
	top: 0;
}
article section#menu .containerInner.hourei {
	left: 35px;
	top: 330px;
}
article section#menu .containerInner.ago {
	left: 645px;
	top: 330px;
}
@media (max-width: 979px) {
	article section#menu {
		padding: 5% 0 0;
		background-size: cover;
	}
	article section#menu .container {
		height: inherit;
		background: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-evenly;
	}
	article section#menu .containerInner {
		width: 44vw;
		height: 45vw;
		box-shadow: 0px 1vw 2vw 0 rgba(10, 10, 10, 0.1), 1vw 1vw 0px 0px rgba(124, 143, 201, 0.4);
		position: relative;
		margin-bottom: 4.5vw;
	}
	article section#menu .containerInner p {
		font-size: 3.2vw;
		padding: 1.5vw;
	}
	article section#menu .containerInner p:first-child {
		height: 60%;
	}
	article section#menu .containerInner p:last-child {
		font-size: 3vw;
		height: 40%;
		background: rgba(237, 240, 250, 0.8);
		line-height: 1.1;
	}
	article section#menu .containerInner p .price {
		font-size: 7vw;
	}
	article section#menu .containerInner p .price span {
		font-size: 5vw;
	}
	article section#menu .containerInner.memoto {
		left: inherit;
		top: inherit;
	}
	article section#menu .containerInner.memoto:before {
		left: -3vw;
		top: -6vw;
		padding: 2vw;
		font-size: 2vw;
	}
	article section#menu .containerInner.kogao, article section#menu .containerInner.hourei, article section#menu .containerInner.ago {
		left: inherit;
		top: inherit;
	}
}
article section#option {
	padding: 60px 0 80px;
	background: #7c8fc9;
}
article section#option h2 {
	color: #fff;
}
article section#option h2 span {
	color: #fff;
}
article section#option h2 span::before {
	background: #fff;
}
article section#option .container {
	background: #fff;
	padding: 45px 40px;
	font-size: 20px;
}
article section#option .container h3 {
	background: #edf0fa;
	color: #8294cb;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	padding: 0;
	line-height: 1.7;
	margin: 0px auto;
}
article section#option .container h3 + p {
	margin: 20px 0 0;
}
article section#option .container h3:before {
	content: "NEW";
	background-color: #ff0;
	padding: 5px 10px;
	font-family: sans-serif;
	color: #e04769;
	font-size: 65%;
	vertical-align: text-bottom;
	margin-right: 10px;
}
article section#option .container dl {
	margin: 10px 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px dashed #000;
	line-height: 1.3;
	padding: 10px 0;
}
article section#option .container dl + dl {
	margin-top: 0;
}
article section#option .container dl dd {
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
	font-weight: bold;
}
article section#option .container dl dd > p {
	color: #8092cb;
}
article section#option .container dl dd > div {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin-left: 15px;
}
article section#option .container dl dd > div > p:first-child {
	border: 1px solid #000;
	padding: 0 3px;
	font-size: 14px;
}
article section#option .container dl dd > div > p:last-child {
	margin-left: 5px;
}
article section#option .container dl dd > div > p:last-child .price {
	font-size: 30px;
}
article section#option .container dl dd > div > p:last-child .price > span {
	font-size: 20px;
	margin-left: 3px;
}
article section#option .container dl dd > div > p:last-child .price > span > span {
	font-size: 11px;
}
article section .box-basic {
	padding: 0px;
	background-color: #fff;
}
article section .tbl-price tbody th {
	background-color: #f8faff;
}
@media (max-width: 979px) {
	article section#option {
		padding: 5% 0 7%;
	}
	article section#option .container {
		padding: 3vw;
		font-size: 1.6rem;
	}
	article section#option .container h3 {
		font-size: 4vw;
	}
	article section#option .container h3 + p {
		margin: 3vw 0 0;
		font-size: 3vw;
	}
	article section#option .container h3:before {
		margin-right: 5px;
		padding: 1vw;
	}
	article section#option .container dl {
		margin: 1vw 0 0;
		justify-content: flex-start;
		padding: 1.5vw 0 1vw;
		font-size: 3.8vw;
	}
	article section#option .container dl dt {
		width: 45%;
	}
	article section#option .container dl dd {
		width: 55%;
		flex-wrap: wrap;
		font-weight: bold;
		text-align: right;
	}
	article section#option .container dl dd > p {
		color: #8092cb;
		width: 100%;
	}
	article section#option .container dl dd > div {
		width: 100%;
		margin-left: 0;
	}
	article section#option .container dl dd > div > p:first-child {
		padding: 0 1vw;
		font-size: 3vw;
	}
	article section#option .container dl dd > div > p:last-child {
		margin-left: 1vw;
	}
	article section#option .container dl dd > div > p:last-child .price {
		font-size: 6vw;
	}
	article section#option .container dl dd > div > p:last-child .price > span {
		font-size: 5vw;
		margin-left: 0;
	}
	article section#option .container dl dd > div > p:last-child .price > span > span {
		font-size: 2.5vw;
	}
}
article section#what {
	padding: 60px 0 0;
	background: url("../images/img03.jpg") center top no-repeat #f6dbea;
	height: 900px;
}
article section#what .inner {
	width: 694px;
	height: 587px;
	position: relative;
}
article section#what .inner > div {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-size: 32px;
	line-height: 1.3;
	width: 278px;
	height: 278px;
	border-radius: 50%;
	position: absolute;
}
article section#what .inner > div .in {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	flex-flow: column;
	align-items: center;
	padding-top: 0.5em;
}
article section#what .inner > div .in .no {
	position: absolute;
	top: 10%;
	width: 100%;
	text-align: center;
	color: #000;
}
article section#what .inner > div span sup {
	top: -0.35em;
	font-size: 70%;
}
article section#what .inner > div:nth-child(1) {
	left: 0;
	top: 0;
	background: rgba(250, 231, 240, 0.76);
	color: #de639d;
}
article section#what .inner > div:nth-child(2) {
	right: 0;
	top: 0;
	background: rgba(252, 228, 230, 0.76);
	color: #ea4d51;
}
article section#what .inner > div:nth-child(3) {
	left: calc(50% - (278px / 2));
	top: calc(50% - (278px / 2));
	background: rgba(251, 232, 236, 0.76);
	color: #e04769;
}
article section#what .inner > div:nth-child(4) {
	left: 0;
	bottom: 0;
	background: rgba(252, 228, 230, 0.76);
	color: #ea4d51;
}
article section#what .inner > div:nth-child(5) {
	right: 0;
	bottom: 0;
	background: rgba(250, 231, 240, 0.76);
	color: #de639d;
}
@media (max-width: 979px) {
	article section#what {
		padding: 5% 0;
		background-size: cover;
		height: inherit;
	}
	article section#what .inner {
		width: 90vw;
		height: 90vw;
		position: relative;
	}
	article section#what .inner > div {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		font-size: 5vw;
		width: 40vw;
		height: 40vw;
	}
	article section#what .inner > div .in {
		position: relative;
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: center;
		flex-flow: column;
		align-items: center;
		padding-top: 0.5em;
	}
	article section#what .inner > div .in .no {
		position: absolute;
		top: 12%;
		width: 100%;
		text-align: center;
		color: #000;
	}
	article section#what .inner > div:nth-child(3) {
		left: calc(50% - (40vw / 2));
		top: calc(50% - (40vw / 2));
	}
}
article section#price {
	padding: 60px 0 80px;
}
article section#price dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 1.5;
	border-bottom: 1px dashed #000;
	padding: 0 0 7px;
}
article section#price dl dt {
	font-size: 18px;
}
article section#price dl dt em {
	font-style: normal;
	font-size: 24px;
	color: #8294cb;
}
article section#price dl + dl {
	margin: 15px 0 0;
}
article section#price dl dd .price {
	line-height: 1;
}
article section#price .table-box th {
	background-color: #8294cb;
}
article section#price .table-box td.other_price {
	text-align: right;
	color: #e04769;
	font-weight: bold;
}
@media (max-width: 979px) {
	article section#price {
		padding: 5% 0 7%;
	}
	article section#price dl {
		flex-direction: column;
		padding: 0 0 5px;
	}
	article section#price dl dt {
		width: 100%;
		font-size: 4vw;
	}
	article section#price dl dt em {
		font-size: 5vw;
	}
	article section#price dl dd {
		width: 100%;
		text-align: right;
		font-size: 3vw;
		margin-top: 10px;
	}
	article section#price dl dd .price > span > span {
		top: -2vw;
	}
	article section#price dl + dl {
		margin: 10px 0 0;
	}
	article section#price .table-box {
		padding: 0;
	}
	article section#price .table-box table {
		width: 100%;
	}
	article section#price .table-box table th {
		background-color: #8294cb;
	}
	article section#price .table-box table td {
		font-size: 14px;
		padding: 5px 8px;
	}
	article section#price .table-box table td.other_price {
		padding: 5px;
		width: 100px;
	}
	article section#price .table-box::before, article section#price .table-box::after {
		display: none;
	}
}
article section#details {
	padding: 60px 40px  00px  40px;
	/*background: #7c8fc9;*/
}
article section#details h2 {
	color: #fff;
}
article section#details h2 span {
	color: #fff;
}
article section#details h2 span::before {
	background: #fff;
}
article section#details h3 {
	background: #edf0fa;
	color: #7a8dc9;
}
article section#details .container {
	background: #fff;
	padding: 45px 40px;
	font-size: 20px;
}
article section#details .container + .container {
	margin: 60px 0 0;
}
article section#details .container .-size-55 {
	width: calc(((99.99% - (2.5% * (2 - 1))) / 10) * 5.5);
}
article section#details .priceWrap {
	border-bottom: 1px dashed #000;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
article section#details .priceWrap > div {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 48%;
}
article section#details .priceWrap > div .priceInner {
	display: flex;
	justify-content: right;
	align-items: center;
}
article section#details .priceWrap > div .priceInner .price {
	margin-left: 25px;
}
article section#details .btn a {
	width: 480px;
	height: 72px;
	color: #fff;
	text-align: center;
	justify-content: center;
	font-size: 20px;
	font-weight: bold;
	display: flex;
	align-items: center;
	background: #7a8dc9;
	text-decoration: none;
	position: relative;
	border-radius: 100px;
	margin-left: auto;
	margin-right: auto;
}
article section#details .btn a::before {
	content: "";
	position: absolute;
	right: 15px;
	top: 0;
	top: calc(50% - 7px);
	width: 12px;
	height: 12px;
	border: 3px solid;
	border-color: #fff #fff transparent transparent;
	transform: rotate(45deg);
}
@media (max-width: 979px) {
	article section#details {
		padding: 5% 10px 10px 10px;
	}
	article section#details .container {
		background: #fff;
		padding: 3vw;
		font-size: 1.6rem;
	}
	article section#details .container + .container {
		margin: 5% 0 0;
	}
	article section#details .container .-size-55 {
		width: 100%;
	}
	article section#details .container .col.img {
		text-align: center !important;
	}
	article section#details .priceWrap {
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		border: none;
	}
	article section#details .priceWrap > div {
		width: 100%;
		border-bottom: 1px dashed #000;
		margin: 0 0 3vw;
	}
	article section#details .priceWrap > div p._text-size-20:first-child {
		font-size: 4vw !important;
	}
	article section#details .priceWrap > div .priceInner {
		font-size: 4vw;
		display: flex;
		justify-content: right;
		align-items: center;
	}
	article section#details .priceWrap > div .priceInner .price {
		margin-left: 3vw;
	}
	article section#details .btn a {
		width: 100%;
		height: inherit;
		font-size: 4vw;
		padding: 3vw;
	}
	article section#details .btn a::before {
		right: 3vw;
		border: 2px solid;
		border-color: #fff #fff transparent transparent;
	}
}