@charset "UTF-8";
/*---------------------------------------------
Each Base CSS(for HTML5)
coded by cloud-box
---------------------------------------------*/
/* iphoneの文字の大きさ変更を防ぐ */
body {
	-webkit-text-size-adjust: 100%;
}
/* レスポンシブ対応 */
.pc {
	display: inherit;
}
.sp {
	display: none;
}
/* フッター */
footer {
	padding: 20px 0 0;
	background-color: #465A63;
	font-size: 80%;
	font-weight: normal;
}
footer nav {
	max-width: 940px;
	margin: 0 auto;
	overflow: hidden;
	padding: 0 0 10px 0;
}
footer nav ul li {
	float: left;
	margin: 0 8px 10px 0;
	color: #fff;
}
footer nav ul li a {
	text-decoration: none;
	color: #fff;
}
footer nav ul li a:hover {
	text-decoration: underline;
}
footer nav ul li:after {
	content: '  |';
}
footer nav ul li:first-child:before {
	content: '|  ';
}
footer .credit {
	background-color: #38474E;
	text-align: center;
	padding-top: 5px;
}
footer .credit p {
	max-width: 940px;
	margin: 0 auto;
	display: block;
	color: #79909B;
}
footer .credit p a{
	color: #79909B;
}
/* message */ /* by aoki start */
.menu {
	height: 0;
	padding-bottom: 110px;
	position: relative;
}
.menu > li > a {
	display: block;
	width: 140px;
	max-width: 18%;
	padding-bottom: 10px;
	position: absolute;
	bottom: -2px;
	z-index: 3;
}
.menu > li.nav1 > a {
	right: 147px;
}
.menu > li.menuH > a {
	right: 0;
}
ul.level {
	display: none;
	z-index: 1;
}
/* --------------------------------------------------- message menu */
li.message ul.level {
	position: absolute;
	top: 108px;
	right: 0;
	padding: 20px 10px 5px 10px;
	background: #1453A0;
	border-radius: 8px;
	z-index: 3;
}
li.message ul.level:after {
	content: url(../img/bl-top-be.png);
	transform: scale(0.4);
	position: absolute;
	top: -16px;
	right: 200px;
}
/*
li.message:hover ul.level {
	display: block;
}
*/
li.message ul.level > li {
	float: left;
	width: 32.2%;
	border: none;
	margin: 0 0.5% 10px;
}
li.message ul.level > li a:hover img {
	filter: alpha(opacity=85);
	-moz-opacity: 0.8;
	opacity: 0.8;
}
li.menuH ul.level:after {
	content: url(../img/bl-top-gy.png);
	transform: scale(0.4);
	position: absolute;
	top: -16px;
	right: 55px;
}
li.menuH ul.level {
	position: absolute;
	top: 108px;
	right: 0;
	max-width: 450px;
	padding: 15px 20px;
	background: #465A63;
	border-radius: 8px;
	z-index: 3;
}
li.menuH ul.level > li {
	float: left;
	width: 48%;
	margin: 5px 0;
	border: none;
	font-size: 86%;
}
li.menuH ul.level > li:nth-child(2n+1) {
	margin-right: 4%;
}
li.menuH ul.level > li:nth-child(3) {
	letter-spacing: -1px;
}
li.menuH ul.level > li a {
	color: #fff;
	text-decoration: none;
}
li.menuH ul.level > li a:hover {
	color: #fff;
	text-decoration: underline;
}
li.menuH ul.level > li a:before {
	color: #fff;
	font-size: 60%;
	content: '▶　';
}
/* --------------------------------------------------- message menu */

.information a,
.contents a{
	text-decoration:underline;
}
.information a:hover,
.contents a:hover{
	text-decoration:none;
	color:#CC3434;
}
.information a:visited,
.contents a:visited{
	text-decoration:none;
	color:#551A8B;
}


/* 共通文字配置 */
.text-center {
	text-align: center
}

.text-left {
	text-align: left
}

.text-right {
	text-align: right
}

/* スクリプト無効 */
.noscript{
	width: 100%;
	padding: 50px 0px;
	text-align: center;
	font-weight: 900;
	font-size: xx-large;
	background-color: red;
	color: white;
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
	-moz-animation:blink 1.5s ease-in-out infinite alternate;
	animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}
@-moz-keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}
@keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}
@media screen and (max-width:960px) {
.no-tablet {
	display: none;
}
.tablet {
	display: inherit;
}
}

@media screen and (max-width:800px) {
	
.menu > li.nav1 > a {
	right: 19%;
}
li.message ul.level:after {
	right: 27%;
}
li.menuH ul.level:after {
	right: 12%;
}
#nav-up {
	max-width: 100%;
}
#nav-up #back-top {
	right: 10px;
}
#nav-up #back-top span {
	width: 60px;
	height: 60px;
	background-size: 60px;
}
}

@media screen and (max-width:640px) {
.pc {
	display: none;
}
.sp {
	display: inherit;
}
.menu {
	text-align: center;
	height: auto;
	width: auto;
	padding: 3% 10px 0;
	background: #1453A0;
	position: relative;
}
.menu > li {
	display: inline-block;
	width: 42%;
	margin: 0 1%;
}
.menu > li > a {
	display: block;
	width: auto;
	max-width: none;
	padding-bottom: 0;
	position: static;
}
.menu-top {
	text-align: right;
	margin: 0 27% 0 0;
	height: auto;
	width: auto;
	padding: 0;
	position: relative;
}
.menu-top > li {
	display: inline-block;
	width: 48%;
	margin: 0;
}
.menu-top > li > a {
	display: block;
	width: auto;
	max-width: none;
	padding-bottom: 0;
	position: static;
}
li.message ul.level {
	top: 0;
	margin: 20% 10px 0;
}
li.message ul.level:after {
	transform: scale(0.7);
	left: 25%;
	right: auto;
}
li.menuH ul.level {
	text-align: left;
	max-width: none;
	padding: 3% 1% 3% 4%;
	top: 0;
	margin: 20% 10px 0;
}
.menu-top li.menuH ul.level {
	position:absolute;
	text-align: left;
	max-width: none;
	width: 115%;
	padding: 3% 1% 3% 4%;
	top: 0;
	left: 0;
	margin: 20% 10px 0;
	z-index: 3;
}
li.menuH ul.level:after {
	transform: scale(0.7);
	right: 25%;
}
li.menuH ul.level > li {
	width: 95%;
	margin-right: 3%;
}
li.menuH ul.level > li:nth-child(2n+1) {
	margin-right: 3%;
}
}

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

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

@media screen and (max-width:640px) {
li.message ul.level > li {
	float: none;
	width: 95%;
}
}

