@charset "utf-8";
/* CSS Document */


html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, a, 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;
	list-style: none;
	text-decoration: none;
}
dt {
	font-weight: bold;
	font-size: 18px;
}
* {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	border: none;
}
strong {
	color: #64737d;
	font-weight: normal;
}

@media screen and (max-width: 640px) {
dt {
	font-weight: bold;
	font-size: 16px;
}
}
dd {
	display: block;
}

/* ----------------------------------
	img
---------------------------------- */
img {
	margin: 0 auto;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: middle;
	max-width: 100%; /*Fluid Image*/
	height: auto; /*Fluid Image*/
}
.ie8 img {
	width: auto; /*Fluid Image*/
}
/* ----------------------------------
	html,body
---------------------------------- */

html {
	height: 100%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, arial, helvetica;
	-webkit-text-size-adjust: 100%; /*文字サイズの自動調整機能のキャンセル*/
	-ms-text-size-adjust: 100%; /*文字サイズの自動調整機能のキャンセル*/
	font-size: 22px;
	color: #64737d;
	line-height: 1.6em;
	text-align: left;
	width: 100%;
	height: 100%;
	background-color: #eff0f1;
	-webkit-backface-visibility: hidden; /* for Android 2.x */
}

@media screen and (max-width: 640px) {
html {
	/*height:auto;*/
}
body {
	/*height:auto;*/	
	font-size: 16px;
	letter-spacing: -0.001em;/*iOS4でのテキスト隙間への対応*/
	line-height: 1.5em;
}
}
/* ----------------------------------
	link
---------------------------------- */	

a {
	color: #cddadf;
}
a:hover {
	color: #cddadf;
	text-decoration: underline;
}
@media screen and (min-width: 641px) {
.anchor {
	padding-top: 50px;
	margin-top: -50px;
}
}
@media screen and (max-width: 640px) {
.anchor {
	padding-top: 50px;
	margin-top: -50px;
}
}

/* ----------------------------------
	clearfix
---------------------------------- */
.clearfix:after {
	content: " ";
	display: block;
	height: 0.1px;
	font-size: 0;/*firefox対策*/
	line-height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */

	
/* -----------------------------------------------------
	wrapper
----------------------------------------------------- */
#wrapper {
	-webkit-backface-visibility: hidden; /* for Android 2.x */
	z-index: 20;
	min-height: 100%;
}

@media screen and (min-width: 641px) {
#wrapper {
	margin: 0 auto;
	width: 100%;
	min-width: 1200px;
	position: relative;
	z-index: 1;
}
body .fixedBg {
	display: block;
	content: " ";
	width: 100%;
	height: 300%;
	background-image: url(../img/body_bg01.jpg);
	background-position: 50% 50px;
	background-repeat: repeat-y;
	background-size: 100%;
	position: fixed;
	left: auto;
	left: 0px\9;
	top: 0px;
	z-index: 0;
}
:root body .fixedBg {
 left: auto\0/;
}
}

@media screen and (max-width: 640px) {
#wrapper {
	margin: 0 auto;
	width: 100%;
	position: relative;
}
body .fixedBg {
	display: block;
	content: " ";
	width: 100%;
	height: 300%;
	background-image: url(../img/small/body_bg01.jpg);
	background-position: 50% 50px;
	background-repeat: repeat-y;
	background-size: 100%;
	position: fixed;
	left: auto;
	top: 0px;
}
}

/* -----------------------------------------------------
	contents
----------------------------------------------------- */
@media screen and (min-width:641px) {
#contents {
	margin: 0px auto 0px;
	padding: 85px 0px 180px 0px;
	width: 1000px;
	min-width: 300px;
	/*width: 880px;*/	
	height: auto;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 2;
}
}

@media screen and (max-width: 640px) {
#contents {
	margin: 0px auto;
	padding: 75px 20px 135px 20px;
	width: auto;
}
}
#contents .vaT {
	vertical-align: top;
}
.note {
	color: #ff0000 !important;
}
.smallFont {
	font-size: 84%;
	line-height: 115%;
}

/* -------------------------------------------------------------------
header
-------------------------------------------------------------------- */
#header {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
	position: fixed;
	top: 0px;
	left: 0px;
	-webkit-backface-visibility: hidden; /* for Android 2.x */
	width: 100%;
	height: 50px;
	padding: 0;
	background: #cddadf;
	z-index: 100;
}
#header_inner {
	position: relative;
	left: 0px;
	top: 0px;
	width: 100%;
	padding: 0px;
	margin: 0 auto;
}

#simple-menu {
	margin: 0;
	padding: 0;
	display: block;
	width: 100px;
	height: 50px;
	text-indent: -99999px;
	text-align: left;
	overflow: hidden;
	position: absolute;
	left: 0px;
	top: 0px;
	background: url(../img/img_nav_icon.png) no-repeat 0px 50%;
	cursor: pointer;
	-webkit-backface-visibility: hidden; /* for Android 2.x */
}

@media screen and (min-width: 641px) {
#header {
	min-width: 1200px;
}
#header_inner {
	max-width: 1200px;
	width: 100%;
	margin: 0px auto;
}
}
@media screen and (max-width: 640px) {
#simple-menu {
	width: 50px;
	height: 50px;
	background: url(../img/small/img_nav_icon.png) no-repeat 50% 50%;
	background-size: cover;
}
}


/* -------------------------------------------------------------------
footer
-------------------------------------------------------------------- */

#footer {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
	width: 100%;
	height: 120px;
	padding: 0;
	color: #64737d;
	background: url(../img/img_f_bg01.png) no-repeat 50% 100%;
	z-index: 20;
}

#footer {
	position: absolute;
	left: 0px;
	bottom: 0px;
}

#footer a {
	font-size: 22px;
	color: #64737d;
}

ul#page_nav {
	margin: 0px auto;
	padding-top: 65px;
	vertical-align: middle;
	position: relative;
	left: 0px;
	top: 0px;
	zoom: 1;
}
ul#page_nav:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

ul#page_nav a:link,
ul#page_nav a:visited {
	color: #64737d;
	text-decoration: none;
}
ul#page_nav a:hover,
ul#page_nav a:active {
	color: #64737d;
	text-decoration: underline;
}

/*641px以上*/	
@media screen and (min-width:641px) {
ul#page_nav {
	width: 290px;
}
}
ul#page_nav li.page_top {
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	text-align: center;
}
ul#page_nav li.page_prev {
	float: left;
	text-align: left;
}
ul#page_nav li.page_prev a {
	display: inline-block;
}
ul#page_nav li.page_next {
	float: right;
	text-align: right;
}
ul#page_nav li.page_next a {
	display: inline-block;
}

@media screen and (max-width: 640px) {
#footer {
	width: 100%;
	height: 100px;
	background-size: auto 75%;
}
ul#page_nav {
	width: 240px;
	padding-top: 50px;
}
#footer ul#page_nav a {
	font-size: 16px;
}
}


/* -----------------------------------------------------
	title
----------------------------------------------------- */

#header h1 {
	padding-top: 8px;
	padding-left: 50px;
	padding-right: 50px;
	text-align: center;
	vertical-align: center;
	font-size: 100%;
 font-weight:bold;
	color: #64737d;
}
#header h1 img {
	margin-top: -5px;
}
#contents h1 {
	height: 70px;
	width: auto;
	margin: 50px 0 20px;
	padding-left: 20px;
	vertical-align: middle;
}
.h1text {
	font-size: 30px;
	display: inline-block;
	width: 625px;
	height: 70px;
	/*padding-top:20px;*/
	padding-top: 22px;
	padding-left: 15px;
}

@media screen and (min-width: 641px) {
#header h1 {
	font-size: 26px;
}
}

@media screen and (max-width: 640px) {
#header h1 {
	padding-top: 13px;
	font-size: 16px;
}
#header h1 img {
	display: inline;
}
}


/* -----------------------------------------------------
	section
----------------------------------------------------- */
.section01 {
	clear: both;
	margin-bottom: 56px;
	zoom: 1;
}
.section01:last-child {
	margin-bottom: 0px;
}
.section01:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

.section02 {
	clear: both;
	margin-bottom: 48px;
	zoom: 1;
}
.section02:last-child {
	margin-bottom: 0px;
}
.section02:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.section02 p {
	margin-bottom: 1.4em;
}

.section03 {
	clear: both;
	margin-top: 30px;
	margin-bottom: 40px;
	zoom: 1;
}
.section03:last-child {
	margin-bottom: 0px;
}
.section03:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.section03 p {
	margin-bottom: 1.4em;
}

@media screen and (max-width: 640px) {
.section02 {
	margin-bottom: 40px;
}
.section03 {
	margin-top: 30px;
	margin-bottom: 40px;
}
}

.borderBox {
	clear: both;
	margin: 0px auto 40px auto;
}
.borderBoxInner {
	border: 1px solid #64737d;
	padding: 28px 24px 28px 24px;
	zoom: 1;
}
.borderBoxInner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.borderBoxHeading {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	margin: 0px 0px 16px 0px;
	color: #64737d;
	font-size: 26px;
	line-height: 135%;
	vertical-align: top;
	/*padding: 2px 0px 0px 42px;
	min-height: 38px;
	background-image: url(../img/img_heading02_bg.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;*/
	font-weight: bold;
}
.borderBoxInner p {
	margin-bottom: 0.1em !important;
}
.borderBox .image01 {
	width: 450px;
	/*margin-bottom: 0.1em !important;*/
}
.borderBox .image01-l {
	width: 450px;
	/*margin-bottom: 0.1em !important;*/
}
@media screen and (max-width: 640px) {
.borderBox {
	margin: 0px auto 56px auto;
}
.borderBoxInner {
	border-width: 2px;
	padding: 20px 14px 16px 14px;
}
.borderBoxHeading {
	font-size: 18px;
	line-height: 135%;
	/*padding: 1px 0px 0px 28px;
	min-height: 24px;
	background-size: 22px;
	background-position: 0px 2px;*/
}
.borderBox .image01 {
	width: 100%;
}
.borderBox .image01-l {
	width: 100%;
}
}


/* -----------------------------------------------------
	heading
----------------------------------------------------- */
.heading01 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 32px;
	line-height: 115%;
	font-weight: bold;
	color: #64737d;
	margin-bottom: 20px;
}
.heading01 > span {
	display: block;
}
.heading02 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 0px;
	font-size: 28px;
	line-height: 135%;
	font-weight: bold;
	color: #64737d;
	margin-bottom: 8px;
}
.heading03 {
	font-size: 26px;
	line-height: 145%;
	font-weight: bold;
	padding: 0px 0px 0px 1.1em;
	margin-bottom: 8px;
	background: url(../img/img_ic_circle.png) no-repeat 0px 0.25em;
}

@media screen and (max-width: 640px) {
.heading01 {
	font-size: 20px;
	line-height: 110%;
	margin-bottom: 10px;
}
.heading01 > span {
	display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 0px;
}
.heading01 > span span {
	position: relative;
	left: 0px;
	top: -2px;
}
.heading02 {
	padding: 0px;
	font-size: 18px;
	line-height: 135%;
}
.heading03 {
	font-size: 18px;
	padding-left: 1.2em;
	background-position: 0px 0.2em;
	background-size: 1.0em;
}
}

/* -----------------------------------------------------
	image
----------------------------------------------------- */
@media screen and (min-width: 641px) {
#spacer01,
#spacer02,
#spacer03,
#spacer04,
#spacer05,
#spacer06,
#spacer07,
#spacer08,
#spacer09,
#spacer10 {
	display: none !important;
}
}
.img_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.image01 {
	width: 460px;
	float: right;
	margin-left: 20px;
	margin-bottom: 12px;
}
.image01 img {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	/*border: 1px solid #64737d;*/
}

.image01-l {
	width: 460px;
	float: left;
	margin-right: 20px;
	margin-bottom: 12px;
}
.image01-l img {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	/*border: 1px solid #64737d;*/
}

@media screen and (max-width: 640px) {
.image01 {
	width: 100%;
	float: none;
	margin: 0px 0px 1.0em 0px;
	text-align: center;
}
.image01 img {
	/*border: 2px solid #64737d;*/
}
.image01-l {
	width: 100%;
	float: none;
	margin: 0px 0px 1.0em 0px;
	text-align: center;
}
.image01-l img {
	/*border: 2px solid #64737d;*/
}
}

.image02 {
	width: 100%;
	margin-bottom: 32px;
}
.image02 img {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	border: 1px solid #64737d;
}

/* -----------------------------------------------------
	text
----------------------------------------------------- */
.lead01 {
	color: #64737d;
	margin-bottom: 2.4em !important;
}
#contents p {
	margin: 0px 0px 1.0em 0px;
}
@media screen and (min-width: 641px) {
.box-left {
	width: 480px;
	float: left;
	margin-bottom: 24px;
}
.box-right {
	width: 480px;
	float: right;
	margin-bottom: 24px;
}
}


/* -----------------------------------------------------
	icon
----------------------------------------------------- */
.ic_caution {
	background: url(../img/img_common_caution.png) no-repeat 0px 4px;
	padding: 0px 0px 0px 36px;
	color: #9b8246;
}

@media screen and (max-width: 640px) {
.ic_caution {
	background-size: 18px;
	padding: 0px 0px 0px 22px;
}
}


/* -----------------------------------------------------
	table
----------------------------------------------------- */
.table01 {
	clear: both;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	border: none;
	margin: 0px;
	padding: 0px;
	border-collapse: collapse;
	margin-top: 20px;
	margin-bottom: 20px;
}
.table01 thead th,
.table01 thead td {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	border: none;
	padding: 16px 14px 14px 14px;
	font-size: 116%;
	line-height: 100%;
	font-weight: bold;
	color: #64737d;
}
.table01 th,
.table01 td {
	padding: 10px 14px;
	border-bottom: 2px solid #64737d;
	vertical-align: top;
	text-align: left;
	color: #64737d;
}
.table01 th {
	border-right: 2px solid #64737d;
	color: #64737d;
	font-weight: bold;
	width: 26%;
}
.table01 .midHead {
	color: #64737d;
	font-weight: bold;
}
.table01 .midHead2 {
	color: #64737d;
	font-weight: normal;
	width: 19%;
}
.table01 td.auto,
.table01 td.midAuto {
	width: 36%;
}
.table01 .icon {
	width: 7%;
	white-space: nowrap;
}
.table01 .icon img {
	width: 40px !important;
	height: auto;
	margin-bottom: 8px !important;
}
.table01 td {
	font-weight: normal;
	width: 55%;
}

@media screen and (max-width: 640px) {
.table01 {
	display: block;
	border: none;
}
.table01 thead,
.table01 tbody,
.table01 tfoot,
.table01 tr,
.table01 th,
.table01 td {
	display: block;
	border: none;
	width: auto !important;
}
.table01 th {
	background: none;
	width: auto;
	padding: 0px;
	font-size: 16px;
	line-height: 135%;
	padding-left: 1.2em;
	background: url(../img/img_ic_circle.png) no-repeat;
	background-position: 0px 0.15em;
	background-size: 1.0em;
}
.table01 td {
	background: none;
	padding: 0px;
	margin-bottom: 20px;
}
.table01 .midHead {
	margin-top: 8px;
	font-size: 100%;
}
.table01 .midHead:before {
	content: "－ ";
}
.table01 .midData {
	padding-left: 1.5em;
}
.table01 .midHead2 {
	margin-top: 8px;
	font-weight: bold;
	font-size: 100%;
	color: #64737d;
	padding-left: 0.5em;
}
.table01 .midHead2:before {
	content: "・";
}
.table01 .midData2 {
	padding-left: 1.5em;
}
.table01 td.midAuto {
	margin-bottom: 0px;
}
.table01 thead th,
.table01 thead td {
	font-size: 18px;
	line-height: 135%;
	padding: 10px 18px 8px 18px;
	border: none;
	margin-top: 40px;
	margin-bottom: 10px;
}
}

.table02 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	border: none;
	margin: 0px;
	padding: 0px;
	border-collapse: collapse;
	margin-top: 20px;
	margin-bottom: 30px;
}
.table02 caption {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	border: none;
	border-bottom: 2px solid #64737d;
	padding: 16px 20px 14px 20px;
	font-size: 116%;
	line-height: 100%;
	font-weight: bold;
	color: #64737d;
	text-align: left;
}
.table02 th,
.table02 td {
	padding: 10px 18px;
	border-bottom: 2px solid #64737d;
	vertical-align: top;
	text-align: left;
	color: #64737d;
}
.table02 th {
	font-weight: bold;
	border-right: 2px solid #64737d;
	color: #64737d;
}
.table02 td {
	font-weight: normal;
}

@media screen and (max-width: 640px) {
.table02 {
	display: block;
	border: none;
}
.table02 caption,
.table02 thead,
.table02 tbody,
.table02 tfoot,
.table02 tr,
.table02 th,
.table02 td {
	display: block;
}
.table02 th,
.table02 td {
	background: none;
	border: none;
	padding: 0px;
	position: relative;
	left: 0px;
	top: 0px;
}
.table02 th {
	margin-bottom: 0.2em;
}
.table02 td {
	margin-bottom: 16px;
	line-height: 186%;
}
.table02 caption {
	font-size: 18px;
	line-height: 135%;
	padding: 10px 18px 8px 18px;
	border: none;
	margin-bottom: 16px;
}
.table02 .number01 th,
.table02 .number02 th,
.table02 .number03 th,
.table02 .number04 th,
.table02 .number05 th,
.table02 .number06 th,
.table02 .number07 th,
.table02 .number08 th,
.table02 .number09 th,
.table02 .number10 th {
	padding-left: 32px;
	padding-top: 0px;
}
.table02 .number01 td,
.table02 .number02 td,
.table02 .number03 td,
.table02 .number04 td,
.table02 .number05 td,
.table02 .number06 td,
.table02 .number07 td,
.table02 .number08 td,
.table02 .number09 td,
.table02 .number10 td {
	padding-left: 32px;
}
.table02 .number01 th:before,
.table02 .number02 th:before,
.table02 .number03 th:before,
.table02 .number04 th:before,
.table02 .number05 th:before,
.table02 .number06 th:before,
.table02 .number07 th:before,
.table02 .number08 th:before,
.table02 .number09 th:before,
.table02 .number10 th:before {
	content: '';
	position: absolute;
	left: 0px;
	top: 1px;
	background-position: 0px 0px;
	background-repeat: no-repeat;
	background-size: 24px;
	width: 24px;
	height: 24px;
	margin: 0px;
	display: inline-block;
 /display: inline;
}
.table02 .number01 th:before {
	background-image: url(../img/img_number_01.png);
}
.table02 .number02 th:before {
	background-image: url(../img/img_number_02.png);
}
.table02 .number03 th:before {
	background-image: url(../img/img_number_03.png);
}
.table02 .number04 th:before {
	background-image: url(../img/img_number_04.png);
}
.table02 .number05 th:before {
	background-image: url(../img/img_number_05.png);
}
.table02 .number06 th:before {
	background-image: url(../img/img_number_06.png);
}
.table02 .number07 th:before {
	background-image: url(../img/img_number_07.png);
}
.table02 .number08 th:before {
	background-image: url(../img/img_number_08.png);
}
.table02 .number09 th:before {
	background-image: url(../img/img_number_09.png);
}
.table02 .number10 th:before {
	background-image: url(../img/img_number_10.png);
}

.table02 span.number01:before,
.table02 span.number02:before,
.table02 span.number03:before,
.table02 span.number04:before,
.table02 span.number05:before,
.table02 span.number06:before,
.table02 span.number07:before,
.table02 span.number08:before,
.table02 span.number09:before,
.table02 span.number10:before {
	content: " ";
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	margin-top: 1px;
	vertical-align: top;
	font-size: 0.1em;
	line-height: 100%;
	background-position: 0px 0px;
	background-repeat: no-repeat;
	background-size: 24px;
	width: 24px;
	height: 24px;
	line-height: 100%;
}
.table02 span.number01:before {
	background-image: url(../img/img_number_01.png);
}
.table02 span.number02:before {
	background-image: url(../img/img_number_02.png);
}
.table02 span.number03:before {
	background-image: url(../img/img_number_03.png);
}
.table02 span.number04:before {
	background-image: url(../img/img_number_04.png);
}
.table02 span.number05:before {
	background-image: url(../img/img_number_05.png);
}
.table02 span.number06:before {
	background-image: url(../img/img_number_06.png);
}
.table02 span.number07:before {
	background-image: url(../img/img_number_07.png);
}
.table02 span.number08:before {
	background-image: url(../img/img_number_08.png);
}
.table02 span.number09:before {
	background-image: url(../img/img_number_09.png);
}
.table02 span.number10:before {
	background-image: url(../img/img_number_10.png);
}
}

.table03 {
	border: none;
	margin: 0px 0px 1.6em 0px !important;
	padding: 0px;
	border-collapse: collapse;
}
.table03 th,
.table03 td {
	border: none;
	padding: 0px 0px 0.6em 0px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}
.table03 th {
	padding-right: 2.0em;
	padding-bottom: 1.0em;
}
.table03 td > p {
	margin: 0px !important;
	padding-bottom: 1.0em;
}
@media screen and (max-width: 640px) {
.table03 {
	display: block;
}
.table03 tr {
	display: block;
}
.table03 th,
.table03 td {
	display: block;
}
.table03 th {
	padding-right: 0px;
	padding-bottom: 0px;
}
.table03 td {
	padding-left: 2.0em;
	padding-bottom: 0px;
}
}

.table04 {
	border: none;
	margin: 0px 0px 1.6em 0px !important;
	padding: 0px;
	border-collapse: collapse;
}
.table04 th,
.table04 td {
	border: none;
	padding: 0px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}
.table04 th {
	padding-right: 2.0em;
}
.table04 td > p {
	margin: 0px !important;
}
.table04 tr.pad th {
	padding-bottom: 1.0em;
}
.table04 tr.pad td > p {
	padding-bottom: 1.0em;
}
@media screen and (max-width: 640px) {
.table04 {
	display: block;
	empty-cells: hide;
}
.table04 tr {
	display: block;
}
.table04 th,
.table04 td {
	display: block;
}
.table04 th {
	padding-right: 0px;
	padding-bottom: 0px;
}
.table04 td {
	padding-left: 2.0em;
	padding-bottom: 0px;
}
.table04 tr.pad th {
	padding-bottom: 0px;
}
.table04 tr.pad td {
	padding-bottom: 0.4em;
}
.table04 .empty {
	display: none;
}
}


/* -----------------------------------------------------
	list
----------------------------------------------------- */
ul.disc li {
	list-style-type: none;
	margin: 0px;
	padding: 0px 0px 0px 28px;
	background: url(../img/img_ic_circle.png) no-repeat 0px 0.3em;
	margin-top: 5px;
	word-wrap: break-word;
	word-break: break-all;/* webkit */
}

@media screen and (max-width:640px) {
ul.disc li {
	margin-bottom: 10px;
	padding-left: 22px;
	/*background-position: 0px 0.25em;*/
	background-size: 16px 16px;
}
}

.list01 {
	list-style-type: none;
	margin: 0px;
	padding: 0px 0px 48px 0px;
}
.list01 li {
	margin: 0px 0px 16px 0px;
	padding: 0px 0px 0px 45px;
	min-height: 33px;
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
.list01 li > .heading {
	margin: 0px 0px 0.2em 0px !important;
	padding: 0px 0px 0px 0px !important;
	font-weight: bold;
}
.list01 li > .text {
	margin: 0px !important;
	padding: 0px !important;
}
.list01 li.number01 {
	background-image: url(../img/img_number_01.png);
}
.list01 li.number02 {
	background-image: url(../img/img_number_02.png);
}
.list01 li.number03 {
	background-image: url(../img/img_number_03.png);
}
.list01 li.number04 {
	background-image: url(../img/img_number_04.png);
}
.list01 li.number05 {
	background-image: url(../img/img_number_05.png);
}
.list01 li.number06 {
	background-image: url(../img/img_number_06.png);
}
.list01 li.number07 {
	background-image: url(../img/img_number_07.png);
}
.list01 li.number08 {
	background-image: url(../img/img_number_08.png);
}
.list01 li.number09 {
	background-image: url(../img/img_number_09.png);
}
/*.list01 li.alphabetA {
	background-image: url(../img/img_number_a.png);
}
.list01 li.alphabetB {
	background-image: url(../img/img_number_b.png);
}
.list01 li.alphabetC {
	background-image: url(../img/img_number_c.png);
}
.list01 li.alphabetD {
	background-image: url(../img/img_number_d.png);
}
.list01 li.alphabetE {
	background-image: url(../img/img_number_e.png);
}
.list01 li.alphabetF {
	background-image: url(../img/img_number_f.png);
}
.list01 li.alphabetG {
	background-image: url(../img/img_number_g.png);
}
.list01 li.alphabetH {
	background-image: url(../img/img_number_h.png);
}*/

@media screen and (max-width:640px) {
.list01 li {
	padding: 1px 0px 0px 32px;
	min-height: 24px;
	background-position: 0px 0px;
	background-size: 24px;
}
.list01 li > .heading {
	padding: 4px 0px 0px 0px !important;
}
}



/* -----------------------------------------------------
	カラー太字
----------------------------------------------------- */
.strong {
	font-weight: bold;
	color: #64737d;
}


/* -----------------------------------------------------
	PS4・PC / スマホ での表示切替指定
----------------------------------------------------- */	
@media screen and (min-width:641px) {
.pcNone {
	display: none !important;
}
}

@media screen and (max-width:640px) {
.spNone {
	display: none !important;
}
}


/* -----------------------------------------------------
	レイアウト調整
----------------------------------------------------- */
.mg_text_b {
	margin-bottom: 1.2em !important;
}
.mg_t0 {
	margin-top: 0px !important;
}
.mg_t0 .clearfix {
	margin-top: 0px !important;
}
.mg_t5 {
	margin-top: 5px !important;
}
.mg_t15 {
	margin-top: 15px !important;
}
.mg_t10 {
	margin-top: 10px !important;
}
.mg_t20 {
	margin-top: 20px !important;
}
.mg_t30 {
	margin-top: 30px !important;
}

@media screen and (min-width:641px) {
.pc_mg_t0 {
	margin-top: 0px !important;
}
.pc_mg_t10 {
	margin-top: 10px !important;
}
.pc_mg_t20 {
	margin-top: 20px !important;
}
}

@media screen and (max-width:640px) {
.sp_mg_t-20 {
	margin-top: -20px !important;
}
.sp_mg_t-10 {
	margin-top: -10px !important;
}
.sp_mg_t0 {
	margin-top: 0px !important;
}
.sp_mg_t10 {
	margin-top: 10px !important;
}
.sp_mg_t20 {
	margin-top: 20px !important;
}
.sp_mg_t30 {
	margin-top: 30px !important;
}
}
.mg_t40 {
	margin-top: 40px !important;
}
/*-左-*/
.mg_l10 {
	margin-left: 10px !important;
}

	
/* -----------------------------------------------------
	webfont指定              		scefont 3.7
----------------------------------------------------- */
@font-face {
	font-family: "sce3.7w1";
	src: url("../../shared/fonts/sce3.7w1.eot");
	src: url("../../shared/fonts/sce3.7w1.eot?#iefix") format("embedded-opentype"), url("../../shared/fonts/sce3.7w1.woff") format("woff"), url("../../shared/fonts/sce3.7w1.ttf") format("truetype"), url("../../shared/fonts/sce3.7w1.svg#sce3.7w1") format("svg");
	font-weight: normal;
	font-style: normal;
	font-stretch: normal
}
@font-face {
	font-family: "sce3.7w2";
	src: url("../../shared/fonts/sce3.7w2.eot");
	src: url("../../shared/fonts/sce3.7w2.eot?#iefix") format("embedded-opentype"), url("../../shared/fonts/sce3.7w2.woff") format("woff"), url("../../shared/fonts/sce3.7w2.ttf") format("truetype"), url("../../shared/fonts/sce3.7w2.svg#sce3.7w2") format("svg");
	font-weight: normal;
	font-style: normal;
	font-stretch: normal
}
.ps-button-icon {
	display: inline-block;
	font-family: "sce3.7w1", Arial, sans-serif;
	font-size: 24px;
	padding: 0 3px;
	vertical-align: -1px;
	font-weight: normal !important;
	line-height: 0.9em;
}

/*-- スマホ用 --*/
@media screen and (max-width:640px) {
.ps-button-icon {
	vertical-align: -1px;
	display: inline-block;
 /display: inline;
	zoom: 1;
	font-size: 20px;
	line-height: 20px;
}
}
.ps-button-iconL {
	font-family: "sce3.7w1", Arial, sans-serif;
	font-size: 24px;
	padding: 0 2px;
	font-weight: normal !important;
}
.web-font-S {
	color: #64737d;
}




/* -----------------------------------------------------
	#sidr
----------------------------------------------------- */
#sidr {
	-webkit-backface-visibility: hidden; /* for Android 2.x */
	position: fixed;
	left: -398px;
	top: 0px;
	z-index: 1;
	width: 398px;
	height: 100%;
	overflow: auto;
	border: none;
}
#sidr:after,
#sidr #pie-shadow {
	content: " ";
	width: 0px;
	height: 150%;
	overflow: hidden;
	position: absolute;
	right: 0px;
	top: 0px;
	-webkit-box-shadow: 20px 0px 20px 30px rgba(0,0,0,0.1);
	-moz-box-shadow: 20px 0px 20px 30px rgba(0,0,0,0.1);
	box-shadow: 20px 0px 20px 30px rgba(0,0,0,0.1);
	-pie-box-shadow: 0px 0px 20px 0px #000000;
	z-index: 9999;
}
#sidr #pie-shadow {
	width: 1px; /* for IE8 */
	right: -1px; /* for IE8 */
	behavior:url(../shared/js/PIE.htc); /*CSS3 PIE実行*/
}
#sidr .scrollgeneric {
	line-height: 1px;
	font-size: 1px;
	position: absolute;
	top: 0;
	left: 0;
}
#sidr .vscrollerbar {
	width: 8px;
	background: #666666;
}
#sidr .vscrollerbarbeg {
	width: 8px;
	height: 0px;
	background: #cccccc;
	margin: 0px;
}
#sidr .vscrollerbarend {
	width: 8px;
	height: 0px;
	background: #999999;
}
#sidr .vscrollerbase {
	width: 8px;
	background: #666666;
	margin: 0px;
}
#sidr .vscrollerbasebeg {
	width: 8px;
	height: 10px;
	background: #666666;
}
#sidr .vscrollerbaseend {
	width: 8px;
	height: 1px;
	background: #666666;
	margin-top: -1px;
}
#sidr .hscrollerbase {
	height: 8px;
	background-color: #666666;
}
#sidr .hscrollerbar {
	height: 8px;
	background-color: #666666;
}
#sidr .vscrollerbar, .hscrollerbar {
	padding: 0px;
	z-index: 2;
}
#sidr_mcontentwrapper {
	z-index: 100 !important;
}
#sidr_scrollwrapper {
	z-index: 10 !important;
}
#sidr {
	/* ----- */
}
#sidr ul {
	background: #eaf0f2;
	margin: 0;
	padding: 0px 0px 40px 0px;
	border: none;
}
#sidr ul li {
	color: #64737d;
	line-height: 115% !important;
}
#sidr ul li:first-child a {
	padding: 0px !important;
	background: none;
}
#sidr ul li a,
#sidr ul li span {
	display: block;
	color: #64737d;
	padding: 15px 15px 15px 30px !important;
}

body#introduction #sidr ul li.introduction a,
body#character1 #sidr ul li.character1 a,
body#character2 #sidr ul li.character2 a,
body#character3 #sidr ul li.character3 a,
body#menu1 #sidr ul li.menu1 a,
body#menu2 #sidr ul li.menu2 a,
body#control #sidr ul li.control a,
body#action1 #sidr ul li.action1 a,
body#action2 #sidr ul li.action2 a,
body#words #sidr ul li.words a,
body#secret #sidr ul li.secret a {
 background: url(../img/img_nav_active.png) no-repeat 100% 50% !important;
	background-size: cover;
} 

@media screen and (min-width:641px) {
#sidr ul li a:hover {
 background: url(../img/img_nav_hover.png);
	background-size: cover;
	text-decoration: none;
}
#sidr ul li:first-child a:hover {
	text-decoration: none;
}
}

@media screen and (max-width: 640px) {
#sidr {
	width: 260px;
}
#sidr ul {
	/*border-bottom: 2px solid #2a0602 !important;*/
}
#sidr ul li {
	font-size: 90% !important;
	line-height: 100% !important;
}
#sidr ul li:first-child {
	text-align: center !important;
	border-top: none !important;
}
#sidr ul li:first-child img {
	max-width: 90% !important;
}
#sidr ul li a,  #sidr ul li span {
	padding: 10px 15px !important;
}
}
/* -----------------------------------------------------
	alert for landscape			  
----------------------------------------------------- */
#landscapeAlertOuter {
	display: none;
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 99999;
}
#landscapeAlertOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 90000;
	background: #000000;
	opacity: 0.7;
	width: 100%;
	height: 200%;
}
#landscapeAlertMes {
	position: fixed;
	left: 50%;
	top: 10%;
	z-index: 99999;
	width: 40%;
	margin-left: -20%;
	margin-top: 0px;
}
#landscapeAlertMes img {
	width: 100%;
	height: auto;
}



/* -----------------------------------------------------
	top.html				
----------------------------------------------------- */
#topSiteInfo {
	background: #64737d;
	padding: 12px 20px;
	border-radius: 8px;
	color: #ffffff;
	word-break: break-all;
	word-wrap: break-word;
	margin-bottom: 40px;
}
#topSiteInfo p {
	margin: 0px;
}
#topSiteInfo a:link,
#topSiteInfo a:visited,
#topSiteInfo a:hover,
#topSiteInfo a:active {
	color: #ffffff !important;
	text-decoration: underline;
}

.img_QRcode {
	float: right;
	margin: 0 0 0 10px;
	display: block;
	width: 85px;
}
#top #header h1 {
	font-family: 'Montserrat';
	font-weight: 300;
	letter-spacing: 0.1em;
}
#top #header h1 span {
	font-weight: 700;
}
#top #contents_inner a:link,
#top #contents_inner a:visited,
#top #contents_inner a:hover,
#top #contents_inner a:active {
	color: #64737d;
	text-decoration: underline;
}
#top #top_hint {
	width: auto;
	height: auto;
	margin: 0 auto;
	padding: 20px 20px 20px 20px;
	/*border-radius:34px;*/
	/*border-radius:25px;*/
	border: 1px solid #64737d;
	background: transparent;
	position: relative;
	behavior: url(../../shared/js/PIE.htc);/*CSS3 PIE実行 絶対パス*/
}
#top #top_hint p {
	color: #64737d !important;
	margin: 0px !important;
}
/*641px以上*/
@media screen and (min-width:641px) {
#top #contents {
	margin: 0px auto 0px;
	padding: 50px 0px 160px 0px;
	width: 1200px;
	height: auto;
	behavior: url(../../shared/js/PIE.htc);/*IE8対策  CSS3 PIE実行*/
}
/*#contents_inner_  topページのみ*/	
#top #contents_inner {
	width: 1000px;
	margin: 0px auto 0px auto;
	padding-bottom: 30px;
}
#top .box {
	margin: 0 auto;
	padding: 0px 0px 30px 0px;
	width: auto;
}
#top .disc {
	margin: 0 auto;
	padding: 0px 0px 40px 0px;
	width: auto;
}
#top #top_visual {
	width: 100%;
 height: 387px;
	margin: 0px;
	padding: 0px;
 background: url(../img/top_main.png) no-repeat 0px 0px;
}
}
/*640px以下*/
@media screen and (max-width: 640px) {
#top #header h1 {
	letter-spacing: normal;
	font-size: 14px;
}
#top #contents {
	padding: 50px 0 80px;
	width: auto;
	height: auto;
}
/*#contents_inner_  topページのみ*/	
#top #contents_inner {
 position: relative;
 left: 0px;
 top: 0px;
 z-index: 2;
	margin: 20px 10px 0px;
	padding-bottom: 50px;
}
#topSiteInfo {
	margin-bottom: 20px;
}
#top .disc {
	margin: 0 auto;
	padding: 0px 0px 20px 0px;
	width: auto;
}
#top #top_visual {
 position: relative;
 left: 0px;
 top: 0px;
 z-index: 1;
	width: 100%;
	margin: 0px 0px !important;
	padding: 0px;
}
#top #top_visual img {
	width: 100%;
 height: auto;
}
}


/*--copyright--*/
#copyright {
	font-size: 74%;
	line-height: 1.4em;
	margin-top: 50px;
	color: #64737d !important;
}
#copyright img {
	margin-top: 12px;
}

@media screen and (max-width: 640px) {
#copyright {
	font-size: 10px;
	line-height: 1.4em;
	margin: 30px 0px 0px;
}
}



/* -----------------------------------------------------
	introduction.html
----------------------------------------------------- */
#introduction #contents p {
	/*font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;*/
}
@media screen and (min-width: 641px) {

}

@media screen and (max-width: 640px) {

}


/* -----------------------------------------------------
	character				
----------------------------------------------------- */
.charaSsList {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	zoom: 1;
}
.charaSsList:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.charaSsList li {
	margin: 0px;
	padding: 0px 0px 1.0em 0px;
}
.charaSsList li img {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 641px) {
#charaImg {
	margin-left: -61px;
	margin-bottom: 40px;
}
.charaSsList li.odd {
	width: 49%;
	float: left;
}
.charaSsList li.even {
	width: 49%;
	float: right;
}
}

@media screen and (max-width: 640px) {
#charaImg {
	margin-left: -20px;
	margin-bottom: 30px;
}
}

/* -----------------------------------------------------
	control.html			  
----------------------------------------------------- */
#control .table01 {
	width: 100%;
}
#control .table02 {
	width: 100%;
}
#control .image02 img {
	border: none;
}

@media screen and (min-width: 641px) {
#control .image02 {
 margin-bottom: 64px;
}
#control .table02 th {
	width: 22%;
}
#control .image01 {
	padding-bottom: 32px;
}
}

@media screen and (max-width: 640px) {
#control #contents {
	padding-top: 50px;
}
#control .scrollFixed {
	position: fixed;
	left: 0px;
	box-sizing: border-box;
	min-width: 320px;
	margin-left: 0px !important;
	margin-right: 0px !important;
	z-index: 10;
}
#control #fixed01 {
	box-sizing: border-box;
	min-width: 320px;
	margin-left: -20px;
	margin-right: -20px;
	padding-bottom: 24px;
}
#control #fixed01 img {
	width: 100%;
}
}

/* -----------------------------------------------------
	secret
----------------------------------------------------- */
body#secret {
	background: #000000 url(../img/img_secret.jpg) no-repeat;
}
@media screen and (min-width: 641px) {
body#secret {
	background-position: 50% 32%;
	background-size: cover;
}
}
@media screen and (max-width: 640px) {
body#secret {
	background-position: 50% 0px;
	background-size: 100%;
}
}
.seccretLink {
	color: #64737d !important;
	text-decoration: none !important;
}
a.seccretLink:link,
a.seccretLink:visited,
a.seccretLink:hover {
	opacity: 0.1;
}
a.seccretLink:active {
	opacity: 1.0;
}
.secretBox01 {
	text-align: center;
	padding-top: 6.5em;
}
.secretBox01 a {
	color: #64737d !important;
}

#secretAlertOuter {
	display: none;
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 99999;
}
#secretAlertOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 90000;
	background: #000000;
	background: rgba(0,0,0,0.9);
	opacity: 0.7;
	width: 100%;
	height: 200%;
}
#secretAlertMes {
	position: fixed;
	left: 50%;
	top: 28%;
	z-index: 99999;
	width: 80%;
	margin-left: -40%;
	margin-top: 0px;
	background: #cddadf;
	border-radius: 20px;
}
#secretAlertMesInner {
	padding: 40px 10px;
	text-align: center;
	font-size: 32px;
	line-height: 180%;
}
#secretAlertMesInner p {
	margin: 0px !important;
	padding: 0px !important;
}
#secretAlertClose {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	margin: 40px auto 0px auto;
	width: 60px;
	height: 60px;
	text-align: center;
	border-radius: 50%;
	background: #64737d;
	font-size: 50px;
	line-height: 100%;
	font-weight: bold;
	color: #cddadf !important;
	text-decoration: none !important;
}


/* -----------------------------------------------------
	modal window				
----------------------------------------------------- */
#modalOverlay {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 10000000;
	background-image: url(../img/loading.gif);
	background-repeat: no-repeat;
	background-position: 50% 48%;
	background-color: #000000;
	background-color: rgba(40,40,40,0.8);
}

#youtubeBox {
	display: none;
	position: fixed;
	left: 50%;
	top: 48%;
	z-index: 20000000;
	overflow: visible;
}
#youtubeBox iframe {
	display: block;
	width: 100%;
	height: 100%;
}
#youtube-close {
	display: none !important;
	position: absolute;
	left: 50%;
	bottom: -70px;
	margin-left: -25px;
	z-index: 10000;
	display: table-cell;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 50px;
	height: 50px;
	border: 2px solid #64737d;
	border-radius: 25px;
	text-align: center;
	vertical-align: middle;
	font-size: 40px;
	line-height: 90%;
	color: #64737d !important;
	text-decoration: none !important;
	font-weight: bold;
}

.youtube {
	display: block;
	background: #ffffff;
	margin: 0px auto 30px auto;
}
.youtube a {
	display: block;
	position: relative;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
}
.youtube a img {
	width: 100.1%;
	max-width: 100.1%;
}
.youtube a:before {
	content: " ";
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 2000000;
	background: rgba(0,0,0,0.4);
}
.youtube a:after {
	content: " ";
	position: absolute;
	left: 50%;
	top: 48%;
	z-index: 3000000;
	background: url(../img/playicon.png) no-repeat 50% 50%;
}
.youtube a:link:before,
.youtube a:visited:before {
	background: rgba(0,0,0,0.4);
}
.youtube a:hover:before,
.youtube a:active:before {
	background: rgba(255,255,255,0.4);
}

.youtubeList {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	text-align: center;
}
.youtubeList li {
	display: inline-block;
	vertical-align: top;
	margin: 0px 15px 40px 15px;
	padding: 0px;
}
.youtubeList li .youtube {
	margin: 0px !important;
	overflow: hidden;
}
.youtubeList li .text {
	margin: 8px 0px 0px 0px !important;
	text-align: center;
	font-size: 84%;
}

@media screen and (min-width:641px) {
#youtubeBox {
	width: 853px;
	height: 480px;
	margin: -240px 0px 0px -427px;
}
#modalOverlay #youtubeBox iframe {
	width: 100%;
	height: 100%;
}
.youtube {
	width: 820px;
	height: 461px;
}
.youtube a:after {
	width: 100px;
	height: 100px;
	margin: -60px 0px 0px -60px;
	background-size: 100px;
}
.youtubeList li {
	width: 460px;
}
.youtubeList li .youtube {
	width: 100%;
	height: 258px;
}
}

@media screen and (max-width:640px) {
#youtubeBox {
	width: 300px;
	height: 169px;
	margin: -85px 0px 0px -150px;
}
.youtube {
	width: 300px;
	height: 169px;
}
.youtube {
	width: 270px;
	height: 152px;
}
.youtube a:after {
	width: 60px;
	height: 60px;
	margin: -35px 0px 0px -35px;
	background-size: 60px;
}
.youtubeList li {
	display: block;
	margin: 0px auto 40px auto !important;
}
.youtubeList li .youtube {
	margin: 0px auto 8px auto !important;
	width: 270px;
	height: 151px;
}
}
















