@charset "utf-8";

/* ********************************************* */
/**共通CSS
/* ********************************************* */


/********************************
初期化
********************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}

/********************************
基本設定
********************************/
html
{
	-webkit-text-size-adjust:none;/*フォントサイズ自動調整OFF*/
}

a
{
	-webkit-tap-highlight-color:rgba(00,33,99,0.3);/*タップ時の背景色*/
}

body
{
	color:#333333;
	background-color:#ffffff;
	/*text-align:center;*/
	height:100%;
	width:100%;
	margin:0px;
	padding:0px;
	font-family:'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, Geneva, sans-serif;
}
@media (max-width: 768px) {
body {
	font-size: 14px;
	line-height:1.231;
}
}


/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

a:link
{
	color:#0066ff;
	text-decoration:none;
}
/*a:visited
{
	color:#800080;
}*/
/*a:hover
{
	color:#f20000;
}*/

/********************************
clearfix
********************************/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}

/********************************
フッター
********************************/
footer p {
	clear: both;
	padding: 0;
}
footer img {
	vertical-align: top;
}
#Copyright
{
	color:#ffffff;
	font-size:70%;
	padding:5px;
	text-align:center;
	background-color:#000;
}
footer p:last-child {
	margin: 0;
}

/********************************
イメージ設定
********************************/
img
{
	border:none;
}

a:hover
{
	background-color:transparent;
}

a:hover img
{
	visibility:hidden;
}

.NonHidden a:hover img
{
	visibility:visible;
}

.imgLeft
{
	float:left;
	margin:0 20px 0 0;
}

.imgRight
{
	float:right;
	margin:0 0 0 20px;
}

.imgCenter
{
	text-align:center;
}

.linkIcon
{
	vertical-align:middle;
	margin:0 5px;
}

/********************************
フォントサイズ設定
********************************/
/*文字の大きさ*/

.smallestFontLev1{
	font-size: 60%;
}
.moresmallestFont
{
	font-size:65%;
}
.smallestFont
{
	font-size:80%;
}
.smallerFont
{
	font-size:85%;
}
.smallFont
{
	font-size:90%;
}
.middleFont
{
	font-size:95%;
}
.lageFont
{
	font-size:105%;
}
.lagerFont
{
	font-size:115%;
}
.lagerFontL
{
	font-size:120%;
}
.lagestFont
{
	font-size:150%;
}


/*文字の太さ*/
.normalWeight
{
	font-weight:normal;
}
.boldWeight
{
	font-weight:bold;
}

/********************************
フォントデコレーション
********************************/
.NonTextDecoration a
{
	text-decoration:none;
	color:#333333;
}
.NonTextDecorationRed a
{
	text-decoration:none;
	color:#F00;
}


.NonTextDecorationBlue a
{
	text-decoration:none;
	color:#0484e4;
}

/********************************
フォントカラー設定
********************************/
.textRed
{
	color:#f20000;
}
.textOrange
{
	color:#ff5e01;
}
.textYellow
{
	color:#FF0;
}

.textBrightYellow {
	color: #927501;
}
.textBlue
{
	color:#0484e4;
}
.textWhite
{
	color:#ffffff;
}

.textPurple
{
	color:#7E35E4;
}

.textDeepBlue
{
	color:#0066CC;
}
.textGreen
{
	color:#00A613;
}

/********************************
フォント揃え設定
********************************/
.textCenter
{
	text-align:center;
}
.textLeft
{
	text-align:left;
}
.textRight
{
	text-align:right;
}
.textShadow_b
{
	text-shadow: 1px 1px 3px rgba(0, 0, 140, 0.55);
}

/********************************
行間設定
********************************/
.smallLH
{
	line-height:130%;
}
.middleLH
{
	line-height:150%;
}
.longLH
{
	line-height:180%;
}
.longestLH
{
	line-height:210%;
}
/********************************
文字間隔間設定
********************************/
.smallLS
{
	letter-spacing:1px;
}
.middleLS
{
	letter-spacing:2px;
}
.longLS
{
	letter-spacing:3px;
}
.longestLS
{
	letter-spacing:4px;
}
/********************************
字下げ
********************************/
.textCaution
{
	text-indent: -1em;
	padding-left: 1em;
}
.textCautionLage
{
	text-indent: -2em;
	padding-left: 2em;
}

/********************************
レイアウト設定
********************************/
.leftBox
{
	float:left;
}
.rightBox
{
	float:right;
}
.sideRow
{
	clear:both;
}

/********************************
段落マージン設定
********************************/

/*左マージン、右マージン*/
.shorterLevel
{
	margin-left:3px;
}
.shorterLevelR
{
	margin-right:3px;
}
.shortLevel
{
	margin-left:5px;
}
.shortLevelR
{
	margin-right:5px;
}
.middleLevel
{
	margin-left:10px;
}
.middleLevelR
{
	margin-right:10px;
}
.longLevel
{
	margin-left:15px;
}
.longLevelR
{
	margin-right:15px;
}
.longerLevel
{
	margin-left:20px;
}
.longerLevelR
{
	margin-right:20px;
}
.longestLevel
{
	margin-left:25px;
}
.longestLevelR
{
	margin-right:25px;
}
.per4LevelR{
	margin-right:4%;
}
.doubleLevel
{
 margin-left:35px;
}
.doubleLevelR
{
 margin-right:35px;
}
.tripleLevel
{
 margin-left:70px;
}
.tripleLevelR
{
 margin-right:70px;
}
.fourLevel
{
 margin-left:100px;
}
.fourLevelR
{
 margin-right:100px;
}


/*上下マージン*/
.shorterTalk
{
	margin:3px 0;
}
.shortTalk
{
	margin:5px 0;
}
.middleTalk
{
	margin:10px 0;
}
.longTalk
{
	margin:15px 0;
}
.longerTalk
{
	margin:20px 0;
}
.longestTalk
{
	margin:25px 0;
}

/*上マージン*/
.noneTopTalk
{
	margin-top:0;
}
.shorterTopTalk
{
	margin-top:3px;
}
.shortTopTalk
{
	margin-top:5px;
}
.middleTopTalk
{
	margin-top:10px;
}
.longTopTalk
{
	margin-top:15px;
}
.longerTopTalk
{
	margin-top:20px;
}
.longestTopTalk
{
	margin-top:25px;
}
.doubleTopTalk
{
	margin-top:35px;
}
.tripleTopTalk
{
	margin-top:70px;
}
.fourTopTalk
{
	margin-top:100px;
}
.fifTopTalk
{
	margin-top:150px;
}
.sixTopTalk
{
	margin-bottom:200px;
}
.sevenTopTalk
{
	margin-bottom:300px;
}

/*下マージン*/
.noneBottomTalk
{
	margin-bottom:0;
}
.shorterBottomTalk
{
	margin-bottom:3px;
}
.shortBottomTalk
{
	margin-bottom:5px;
}
.middleBottomTalk
{
	margin-bottom:10px;
}
.longBottomTalk
{
	margin-bottom:15px;
}
.longerBottomTalk
{
	margin-bottom:20px;
}
.longestBottomTalk
{
	margin-bottom:25px;
}
.doubleBottomTalk
{
	margin-bottom:35px;
}
.tripleBottomTalk
{
	margin-bottom:70px;
}
.fourBottomTalk
{
	margin-bottom:100px;
}
.fifBottomTalk
{
	margin-bottom:150px;
}
.sixBottomTalk
{
	margin-bottom:200px;
}
.sevenBottomTalk
{
	margin-bottom:300px;
}

/********************************
段落パディング設定
********************************/

/*上下左右パディング*/
.shorterPadding
{
	padding:3px;
}
.shortPadding
{
	padding:5px;
}
.middlePadding
{
	padding:10px;
}
.longPadding
{
	padding:15px;
}
.longerPadding
{
	padding:20px;
}
.longestPadding
{
	padding:25px;
}
.doublePadding
{
	padding:35px;
}
.triplePadding
{
	padding:70px;
}
.fourPadding
{
	padding:100px;
}
.fifPadding
{
	padding:150px;
}
.sixPadding
{
	padding:200px;
}
.sevenPadding
{
	padding:300px;
}

/*上パディング*/
.noneTopPadding
{
	padding-top:0;
}
.shorterTopPadding
{
	padding-top:3px;
}
.shortTopPadding
{
	padding-top:5px;
}
.middleTopPadding
{
	padding-top:10px;
}
.longTopPadding
{
	padding-top:15px;
}
.longerTopPadding
{
	padding-top:20px;
}
.longestTopPadding
{
	padding-top:25px;
}
.doubleTopPadding
{
	padding-top:35px;
}
.tripleTopPadding
{
	padding-top:70px;
}
.fourTopPadding
{
	padding-top:100px;
}
.fifTopPadding
{
	padding-top:150px;
}
.sixTopPadding
{
	padding-bottom:200px;
}
.sevenTopPadding
{
	padding-bottom:300px;
}

/*下パディング*/
.noneBottomPadding
{
	padding-bottom:0;
}
.shorterBottomPadding
{
	padding-bottom:3px;
}
.shortBottomPadding
{
	padding-bottom:5px;
}
.middleBottomPadding
{
	padding-bottom:10px;
}
.longBottomPadding
{
	padding-bottom:15px;
}
.longerBottomPadding
{
	padding-bottom:20px;
}
.longestBottomPadding
{
	padding-bottom:25px;
}
.doubleBottomPadding
{
	padding-bottom:35px;
}
.tripleBottomPadding
{
	padding-bottom:70px;
}
.fourBottomPadding
{
	padding-bottom:100px;
}
.fifBottomPadding
{
	padding-bottom:150px;
}
.sixBottomPadding
{
	padding-bottom:200px;
}
.sevenBottomPadding
{
	padding-bottom:300px;
}
/********************************
テーブル設定
********************************/
table
{
	font-size:100%;
	line-height:100%;
	border-collapse:collapse;
	border-spacing: 0;
}
th
{
	border:1px solid #cccccc;
	margin:0;
	padding:0;
}
td
{
	border:1px solid #cccccc;
	margin:0;
	padding:0;
}


/********************************
リストスタイル
********************************/
.listStyleSquare
{
	list-style-type:square;
}
.listStyleDisc
{
	list-style-type:disc;
}
.listStyleCircle
{
	list-style-type:circle;
}

.listStyleNone
{
	list-style:none;
}

.listPositionInside
{
	list-style-position:inside;
}
/*幅指定BOX*/
.W1024pxBox
{
	width:1024px;
	margin-left:auto;
	margin-right:auto;
}
.W1000pxBox
{
	width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.W980pxBox
{
	width:980px;
	margin-left:auto;
	margin-right:auto;
}

.W940pxBox
{
	width:940px;
	margin-left:auto;
	margin-right:auto;
}

.W920pxBox
{
	width:920px;
	margin-left:auto;
	margin-right:auto;
}

.W900pxBox
{
	width:900px;
	margin-left:auto;
	margin-right:auto;
}

.W800pxBox
{
	width:800px;
	margin-left:auto;
	margin-right:auto;
}

.W700pxBox
{
	width:700px;
	margin-left:auto;
	margin-right:auto;
}

.W660pxBox {
	width: 660px;
	margin-left: auto;
	margin-right: auto;
}

.W600pxBox
{
	width:600px;
	margin-left:auto;
	margin-right:auto;
}

.W580pxBox
{
	width:580px;
	margin-left:auto;
	margin-right:auto;
}

.W560pxBox
{
	width:560px;
	margin-left:auto;
	margin-right:auto;
}
.W540pxBox
{
	width:540px;
	margin-left:auto;
	margin-right:auto;
}

.W500pxBox
{
	width:500px;
	margin-left:auto;
	margin-right:auto;
}

.W480pxBox
{
	width:480px;
	margin-left:auto;
	margin-right:auto;
}

.W450pxBox
{
	width:450px;
	margin-left:auto;
	margin-right:auto;
}

.W440pxBox
{
	width:440px;
	margin-left:auto;
	margin-right:auto;
}

.W430pxBox
{
	width:430px;
	margin-left:auto;
	margin-right:auto;
}

.W400pxBox
{
	width:400px;
	margin-left:auto;
	margin-right:auto;
}

.W380pxBox
{
	width:380px;
	margin-left:auto;
	margin-right:auto;
}

.W350pxBox
{
	width:350px;
	margin-left:auto;
	margin-right:auto;
}

.W330pxBox
{
	width:330px;
	margin-left:auto;
	margin-right:auto;
}

.W300pxBox
{
	width:300px;
	margin-left:auto;
	margin-right:auto;
}

.W290pxBox
{
	width:290px;
	margin-left:auto;
	margin-right:auto;
}

.W260pxBox
{
	width:260px;
	margin-left:auto;
	margin-right:auto;
}

.W250pxBox
{
	width:250px;
	margin-left:auto;
	margin-right:auto;
}

.W240pxBox
{
	width:240px;
	margin-left:auto;
	margin-right:auto;
}

.W220pxBox
{
	width:220px;
	margin-left:auto;
	margin-right:auto;
}

.W210pxBox
{
	width:210px;
	margin-left:auto;
	margin-right:auto;
}
/*追加*/
.w48per{
	width: 48%;
}
/********************************
読み上げ用テキスト 
********************************/
div.reader
{
	position:absolute;
	top:0px;
	left:0px;
	display:block;
	height:1px;
	width:1px;
	padding:0px;
	overflow:hidden;
}

/********************************
要素　表示/非表示
********************************/
/*PCのみで表示*/
.pcOnly{
	display: block;
}
@media (max-width: 768px) {
.pcOnly{
	display: none;
}
}/*PCのみで表示*/
.pcOnlyText{
	display:inline;
}
@media (max-width: 768px) {
.pcOnlyText{
	display: none;
}
}
/*SPのみで表示*/
.spOnly{
	display: none;
}
@media (max-width: 768px) {
.spOnly{
	display: block;
}
}

/********************************
hr要素　表示/非表示
********************************/
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:10 0;
	padding:0;
}

/*PCのみで表示*/
.pcLine{
	display: block;
}
@media (max-width: 768px) {
.pcLine{
	display: none;
}
}
/*SPのみで表示*/
.spLine{
	display: none;
}
@media (max-width: 768px) {
.spLine{
	display: block;
}
}

/********************************
画像100%(SPのみ)
********************************/
@media (max-width: 768px) {
	.spImg100 img{
		width:100%;
		height: auto;
	}
}
/********************************
画像最大100%
********************************/
/*(PCとSPどちらも)*/
.maxImg100 img{
	max-width:100%;
}
/*(SPのみ)*/
@media (max-width: 768px) {
	.spMaxImg100 img{
		max-width:100%;
	}
}
/********************************
改行
********************************/
/* ～768pxまでのときのみ改行入れる */
.br-sp{
	display:none;
}
@media (max-width: 768px) {
.br-sp{
	display:block;
}
}
/* 768px～のときのみ改行入れる */
.br-pc{
	display:block;
}
@media (max-width: 768px) {
.br-pc{
	display:none;
}}

/* 広めの改行*/
.lineSpace{
	margin-top:10px;
}


/********************************
SPの時のみ画像とテキスト縦並びにする際使用※上の要素につける*
********************************/

@media (max-width: 768px) {
.spVerticalImg img{
	width:100%;
	margin:0 0 10px 0;
	float:none;
}
}
/********************************
下層ページ幅調整
********************************/
.underlayerpc{
	margin:0 15px;
}
@media (max-width: 768px) {
.underlayerpc{
	margin:0;
}
}
.underlayersp{
	margin:0px;
}
@media (max-width: 768px) {
.underlayersp{
	margin:0 2%;
}
}

