@charset "UTF-8";

/*================================
	Reset
================================*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

html {
	font-size: 62.5%;
}

body {
	line-height: 1;
	font-family: Century Gothic, '游ゴシック体', 'YuGothic', '游ゴシック', 'Yu Gothic', 'メイリオ', Meiryo, sans-serif;;
	font-size: 10px;
	font-size: 1.0rem;
}

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

nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

/ change colours to suit your needs /
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

/ change colours to suit your needs /
mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}

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

/* change border colour to suit your needs
*/
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}

input, select {
	vertical-align:middle;
}

/*================================
	Break Point
================================*/
/*	breakPoing1(smartPhone):	768px以下 */
/* breakPoint(PC):				1,040px以上 */


/*================================
	Keycolor Settings
================================*/
/*	sing-blue:		#01236f;	*/
/* sing-yellow:	#ffdd2a; */


/*================================
	Style
	1040px以上
================================*/
.pc-disnone {
	display: none;
}
.sp-disnone {
	display: block;
}
#mainContents {
	margin: 0;
	padding: 0;
	width: 100%;
}
#mainContents section {
	margin: 0 auto;
	padding: 60px 0;
}
#mainContents section .sectionInner {
	margin: 0 auto;
	width: 1040px;
}

/* common style */
#mainContents .h2Title {
	margin-bottom: 40px;
	line-height: 1;
	width: 100%;
	color: #63271a;
	background-image: url("../images/ttl_bg_e.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
}
#mainContents .h2Title.cWhite {
	background-image: url("../images/ttl_bg_w.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
}
#mainContents .h2Title .h2Title__jp {
	display: block;
	line-height: 2.4;
	font-size: 1.8rem;
	font-weight: normal;
}

/* firstView */
#mainContents #firstView {
	padding-top: 0;
	padding-bottom: 80px;
	border-top: 4px solid #e87119;
	border-bottom: 1px solid #f2f2f2;
	position: relative;
	width: 100%;
	/*Other Browser*/
	/*background: #021f63;*/
	/*For Old WebKit*/
	/*background: -webkit-linear-gradient(
		#021f63 0%,
		#013581 15%,
		#2581c4 60%,
		#fff 100%
	);*/
	/*For Modern Browser*/
	/*background: linear-gradient(
		#021f63 0%,
		#013581 15%,
		#2581c4 60%,
		#fff 100%
	);*/
	background-image: url("../images/fvw_bg.png");
	background-repeat: repeat;
	background-position: left top;
	background-size: auto;

}
/*#mainContents #firstView::after {
	margin: 0 auto;
	position: absolute;
	top: 0;
	content: '';
	width: 100%;
	min-height: 289px;
	background-image: url("../images/fvw_bg.png");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}*/
#mainContents #firstView .sectionInner {
	margin: 0 auto;
	padding-top: 20px;
	width: 1040px;
}
#mainContents #firstView .leadText {
	margin-bottom: 20px;
	line-height: 1.6;
	color: #333;
	font-size: 1.8rem;
	font-weight: normal;
	text-align: center;
}
#mainContents #firstView .logo {
	margin: 0 auto;
	width: 50.6%;
}
#mainContents #firstView .logo img {
	width: 100%;
	height: auto;
}
#mainContents #firstView .pointText {
	margin-top: 20px;
	line-height: 1.2;
	color: #333;
	font-size: 3.6rem;
	text-align: center;
}
#mainContents #firstView .pointText .emphasis {
	font-size: 6rem;
	font-weight: bold;
}
#mainContents #firstView .pointText .emphasis.fcW {
	color: #fff;
}
#mainContents #firstView .pointText .emphasis.fcY {
	color: #df4520;
}
#mainContents #firstView .informationImage {
	margin-top: 100px;
	width: 100%;
}
#mainContents #firstView .informationImage::after {
	/* clearfix */
	content:"";
	display:block;
	clear:both;
}
#mainContents #firstView .informationImage .informationImage__info {
	float: left;
	position: relative;
	width: 55.77%;
}
#mainContents #firstView .informationImage .informationImage__info::before {
	content: '';
	position: absolute;
	top: -53px;
	background-image: url(../images/fvw_itm_infomation.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 332px 53px;
	width: 100%;
	height: 53px;
}
#mainContents #firstView .informationImage .informationImage__info table {
	margin-bottom: 40px;
	border-collapse:separate;
	border: 4px solid #0d72ff;
	/*-webkit-border-radius: 20px;
	-moz-border-radius: 20px;*/
	/*border-radius: 20px;*/
	box-sizing: border-box;
	width: 100%;
	/*Other Browser*/
	background: #fff;
	/*For Old WebKit*/
	/*background: -webkit-linear-gradient(
		#053f87 0%,
		#3968a0 100%
	);*/
	/*For Modern Browser*/
	/*background: linear-gradient(
		#053f87 0%,
		#3968a0 100%
	);*/
}
#mainContents #firstView .informationImage .informationImage__info table th,
#mainContents #firstView .informationImage .informationImage__info table td {
	padding: 1em 5%;
	border-bottom: 1px solid #0d72ff;
	border-left: 1px solid #0d72ff;
	box-sizing: border-box;
	line-height: 1.4;
	color: #333;
	font-size: 1.6rem;
}
#mainContents #firstView .informationImage .informationImage__info table th {
	text-align: center;
	width: 25%;
}
#mainContents #firstView .informationImage .informationImage__info table td {
	text-align: left;
	width: 55%;
}
#mainContents #firstView .informationImage .informationImage__info table td .fs-small {
	font-size: 1.4rem;
}
#mainContents #firstView .informationImage .informationImage__info table thead th {
	border-left: none;
}
#mainContents #firstView .informationImage .informationImage__info table tbody tr:last-child th {
	border-bottom: none;
	border-left: none;
}
#mainContents #firstView .informationImage .informationImage__info table tbody tr:last-child td {
	border-bottom: none;
}
#mainContents .conversionBox {
	padding: 2%;
	border: 4px solid #fff;
	box-sizing: border-box;
	width: 100%;
	/*Other Browser*/
	background: #053f87;
	/*For Old WebKit*/
	background: -webkit-linear-gradient(
		#ffd75b 0%,
		#fff5a0 30%,
		#ffffdb 50%,
		#fff5a0 70%,
		#fdd456 100%
	);
	/*For Modern Browser*/
	background: linear-gradient(
		#ffd75b 0%,
		#fff5a0 30%,
		#ffffdb 50%,
		#fff5a0 70%,
		#fdd456 100%
	);

	/* box-shadow */
	box-shadow: 2px 2px 2px 2px #ccc;
	-moz-box-shadow: 2px 2px 2px 2px #ccc;
	-webkit-box-shadow: 2px 2px 2px 2px #ccc;

}
#mainContents .conversionBox::after {
	/* clearfix */
	content:"";
	display:block;
	clear:both;
}
#mainContents .conversionBox .conversionBox__lead {
	margin-bottom: 1em;
	line-height: 1.4;
	color: #002070;
	font-size: 1.4rem;
	text-align: center;
}
#mainContents .conversionBox .conversionBox__tel {
	float: left;
	width: 45.67%;
}
#mainContents .conversionBox .conversionBox__tel p {
	margin-bottom: 10px;
	line-height: 1;
	background: #fff;
	color: #01236f;
	font-size: 1.6rem;
	text-align: center;
}
#mainContents .conversionBox .conversionBox__tel img {
	width: 100%;
	height: auto;
}
#mainContents .conversionBox .conversionBox__form {
	float: right;
	width: 49.3%;
}
#mainContents .conversionBox .conversionBox__form a {
	padding: 0.75em 0;
	display: block;
	box-sizing: border-box;
	border: 4px solid #fff;
	line-height: 1.4;
	color: #fff;
	/*Other Browser*/
	background: #133f73;
	/*For Old WebKit*/
	background: -webkit-linear-gradient(
		#deecff 0%,
		#7cb3ff 30%,
		#0d72ff 70%,
		#133f73 100%
	);
	/*For Modern Browser*/
	background: linear-gradient(
		#deecff 0%,
		#7cb3ff 30%,
		#0d72ff 70%,
		#133f73 100%
	);
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: all 1s linear 0;
}
#mainContents .conversionBox .conversionBox__form a:hover,
#mainContents .conversionBox .conversionBox__form a:active {
	/*Other Browser*/
	background: #deecff;
	/*For Old WebKit*/
	background: -webkit-linear-gradient(
		#133f73 0%,
		#0d72ff 30%,
		#7cb3ff 70%,
		#deecff 100%
	);
	/*For Modern Browser*/
	background: linear-gradient(
		#133f73 0%,
		#0d72ff 30%,
		#7cb3ff 70%,
		#deecff 100%
	);
	transition: all 1s linear 0;
}
#mainContents #firstView .informationImage .informationImage__image {
	float: right;
	width: 39.23%;
}
#mainContents #firstView .informationImage .informationImage__image img {
	width: 100%;
	height: auto;
}
#mainContents #firstView .informationImage .informationImage__image figcaption {
	line-height: 1.2;
	color: #333;
	font-size: 1.2rem;
	text-align: right;
}

/* story */
#mainContents #story {
	width: 100%;
	background: #fefbf5;
}
#mainContents #story .leadImage {
	margin: 0 auto 60px;
	width: 90%;
}
#mainContents #story .leadImage img {
	width: 100%;
	height: auto;
}
#mainContents #story .storyBox {
	padding: 40px 4.8% 30px;
	border: 6px solid #ffde2e;
	box-sizing: border-box;
	width: 100%;
	background: #fff799;
}
#mainContents #story .storyBox::after {
	/* clearfix */
	content:"";
	display:block;
	clear:both;
}
#mainContents #story .storyBox figure {
	float: left;
	width: 55%;
}
#mainContents #story .storyBox figure img {
	width: 100%;
	height: auto;
}
#mainContents #story .storyBox .storyText {
	line-height: 1.6;
	float: right;
	width: 42%;
	color: #01236f;
	font-size: 1.8rem;
}
#mainContents #story .storyBox .storyText p {
	margin-bottom: 1em;
}

/* character */
#mainContents #character {
	/*Other Browser*/
	background: #ffdd2a;
	/*For Old WebKit*/
	background: -webkit-linear-gradient(
		#ffdd2a 0%,
		#fff 100%
	);
	/*For Modern Browser*/
	background: linear-gradient(
		#ffdd2a 0%,
		#fff 100%
	);
}
#mainContents #character .characterContent {
	margin: 0 auto;
	width: 90%;
}
#mainContents #character .characterContent ul {
	margin: 0;
	padding: 0;
}
#mainContents #character .characterContent li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#mainContents #character .characterContent li dl {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #333;
}
#mainContents #character .characterContent li dl::after {
	/* clearfix */
	content:"";
	display:block;
	clear:both;
}
#mainContents #character .characterContent li dt {
	float: left;
	width: 43%;
}
#mainContents #character .characterContent li dt figure img {
	/*border: 4px solid #021f63;*/
	/* box-shadow */
	box-shadow:1px 1px 4px 1px #333;
	-moz-box-shadow:1px 1px 4px 1px #333;
	-webkit-box-shadow:1px 1px 4px 1px #333;
	box-sizing: border-box;
	width: 100%;
	height: auto;
}
#mainContents #character .characterContent li dd {
	margin-bottom: 30px;
	float: right;
	width: 52%;
}
#mainContents #character .characterContent li dd:last-child {
	margin-bottom: 0;
}
#mainContents #character .characterContent li dd h3 {
	margin-bottom: 0.5em;
	line-height: 1.2;
	color: #01236f;
	font-size: 3.6rem;
	font-weight: bold;
	text-align: left;
}
#mainContents #character .characterContent li dd h3 span {
	font-size: 2.7rem;
}
#mainContents #character .characterContent li dd p {
	line-height: 1.6;
	color: #01236f;
	font-size: 1.6rem;
}
#mainContents #character .characterContent .characterEtc {
	margin-top: 60px;
	padding: 30px;
	border: 2px solid #ffdd2a;
	border-radius: 20px;
	box-sizing: border-box;
}
#mainContents #character .characterContent .characterEtc p {
	margin-bottom: 1em;
	line-height: 1.6;
	color: #01236f;
	font-size: 1.6rem;
}
#mainContents #character .characterContent .characterEtc p:last-child {
	margin-bottom: 0;
}


/* poster */
#mainContents #poster {
	/*Other Browser*/
	background: #021f63;
	/*For Old WebKit*/
	background: -webkit-linear-gradient(
		#021f63 0%,
		#013581 15%,
		#2581c4 60%,
		#fff 100%
	);
	/*For Modern Browser*/
	background: linear-gradient(
		#021f63 0%,
		#013581 15%,
		#2581c4 60%,
		#fff 100%
	);
}
#mainContents #poster .h2Title {
	color: #fff;
}
#mainContents #poster .posterContent {
}
#mainContents #poster .posterContent ul {
	margin: 0;
	padding: 0;
}
#mainContents #poster .posterContent ul::after {
	/* clearfix */
	content:"";
	display:block;
	clear:both;
}
#mainContents #poster .posterContent li {
	margin: 0;
	padding: 0;
	border: 1px solid #fff;
	box-sizing: border-box;
	float: left;
	list-style: none;
	width: 44.23%;
}
#mainContents #poster .posterContent li:nth-child(even) {
	float: right;
}
#mainContents #poster .posterContent li img {
	width: 100%;
	height: auto;
}

/* gallery */
#mainContents #gallery {
	background: #fff;
}
#mainContents #gallery .galleryBox {
}
#mainContents #gallery .galleryBox ul {
	margin: 0;
	padding: 0;
	width: 100%;
	font-size: 0;
}
#mainContents #gallery .galleryBox ul li {
	margin: 1%;
	padding: 0;
	display: inline-block;
	width: 31.3%;
}

/* series */
#mainContents #series {
	background: #f2f2f2;
}
#mainContents #series .seriesBox {
}
#mainContents #series .seriesBox ul {
	margin: 0;
	padding: 0;
	width: 100%;
	font-size: 0;
}
#mainContents #series .seriesBox ul li {
	margin: 1%;
	padding: 0;
	display: inline-block;
	width: 23%;
}

/* conversion */
#mainContents #conversion {
	width: 100%;
}
#mainContents #conversion .sectionInner {
	margin: 0 auto;
}
#mainContents #conversion .sectionInner .sectionInner__conversion {
	margin: 0 auto;
	width: 55.77%;
}

footer {
	margin: 0 auto;
	width: 100%;
	background: #f2f2f2;
	text-align: center;
}
footer small {
	padding: 1.5em 0;
	display: block;
	color: #333;
	font-size: 1.2rem;
	text-align: center;
	width: 100%;
}


/*================================
	for PC
================================*/
@media (max-width: 1040px) {
	#mainContents section .sectionInner {
		width: 100%;
	}
	#mainContents #firstView .sectionInner {
		width: 100%;
	}
}


/*================================
	for SmartPhone
================================*/
@media (max-width: 768px) {
	.pc-disnone {
		display: block;
	}
	.sp-disnone {
		display: none;
	}
	#mainContents section .sectionInner {
		margin: 0 auto;
		width: 90%;
	}
	#mainContents .h2Title {
		margin-bottom: 20px;
		font-size: 2.4rem;
	}
	#mainContents .h2Title .h2Title__jp {
		font-size: 1.6rem;
	}
	#mainContents #firstView .logo {
		width: 90%;
	}
	#mainContents #firstView .leadText {
		font-size: 1rem;
	}
	#mainContents #firstView .pointText {
		font-size: 2rem;
	}
	#mainContents #firstView .pointText .emphasis {
		font-size: 3rem;
	}
	#mainContents #firstView .sectionInner {
		padding-top: 10px;
	}
	#mainContents #firstView .informationImage {
		margin-top: 30px;
	}
	#mainContents #firstView .informationImage .informationImage__image {
		margin: 0 auto;
		float: none;
		width: 80%;
	}
	#mainContents #firstView .informationImage .informationImage__image figcaption {
		color: #fff;
	}
	#mainContents #firstView .informationImage .informationImage__info {
		margin: 70px auto 0;
		float: none;
		width: 90%;
	}
	#mainContents #firstView .informationImage .informationImage__info::before {
		content: '';
		position: absolute;
		top: -43px;
		background-image: url(../images/fvw_itm_infomation.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 270px 43px;
		width: 100%;
		height: 43px;
	}
	#mainContents #firstView .informationImage .informationImage__info table th,
	#mainContents #firstView .informationImage .informationImage__info table td {
		font-size: 1.4rem;
	}
	#mainContents .conversionBox {
		margin: 0 auto;
		width: 100%;
	}
	#mainContents .conversionBox .conversionBox__tel,
	#mainContents .conversionBox .conversionBox__form {
		float: none;
		width: 100%;
	}
	#mainContents .conversionBox .conversionBox__tel {
		margin-bottom: 10px;
	}
	#mainContents #story .storyBox {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	#mainContents #story .storyBox figure {
		margin-bottom: 10px;
		float: none;
		width: 100%;
	}
	#mainContents #story .storyBox .storyText {
		float: none;
		width: 100%;
		font-size: 1.6rem;
	}
	#mainContents #character .characterContent li dt {
		margin: 0 auto 20px;
		float: none;
		display: block;
		width: 100%;
	}
	#mainContents #character .characterContent li dd {
		float: none;
		width: 100%;
	}
	#mainContents #character .characterContent li dd h2 {
		font-size: 2.4rem;
	}
	#mainContents #character .characterContent li dd p {
		font-size: 1.4rem;
	}
	#mainContents #character .characterContent .characterEtc {
		padding: 4%;
	}
	#mainContents #character .characterContent .characterEtc p {
		font-size: 1.4rem;
	}
	#mainContents #poster .posterContent li {
		margin: 0 auto 20px;
		display: block;
		float: none;
		width: 80%;
	}
	#mainContents #poster .posterContent li:nth-child(even) {
		float: none;
	}
	#mainContents #conversion .sectionInner .sectionInner__conversion {
		width: 100%;
	}
	#mainContents #story .leadImage {
		width: 100%;
	}
	#mainContents #gallery .galleryBox ul li {
		width: 48%;
	}
	#mainContents #series .seriesBox ul li {
		margin: 2%;
		width: 46%;
	}
	#mainContents #gallery .galleryBox ul li img,
	#mainContents #series .seriesBox ul li img {
		width: 100%;
		height: auto;
	}
}

