@charset "utf-8";

/* 
 * **************************************************
 * ページ（共通）
 * **************************************************
 */



  /*問題〜回答
	------------------------------------------------------------------- */  
	.floatL2 p {
		font-size: 1.7em;
	}


 /*バックナンバー　テーブル
	------------------------------------------------------------------- */  
	.infoBk {
	padding-top:5em;
	}
	.bkNumber table {
		width: 100%;
		border-collapse: collapse;
		font-family: Arial, sans-serif;
	}
	
	.bkNumber table th,
	.bkNumber table td {
		font-size: 1.3em;
		padding: 10px;
		text-align: left;
	}
	
	.bkNumber table th {
		background-color: #ddd; /* グレー背景色 */
		border: 1px solid #ddd;
		text-align: center;
		letter-spacing: 0.5em;
	}
	
	.bkNumber table td:first-child {
		width: 20%;
	}
	
	.bkNumber table td {
		width: 40%;
		border: 1px solid #ddd;
		vertical-align: middle;
		text-align: center;
	}
	
	.bkNumber table tr:hover {
		background-color: #f1f1f1;
	}
	



/* 
 * **************************************************
 * ページ（PC）
 * **************************************************
 */

/*pc*/@media (min-width: 641px)  {

	/* イメージ　PC←→SP　切り替え
	------------------------------------------------------------------ */
	.spImg {
	display:none;
	}

	/* イメージ
	------------------------------------------------------------------ */
	.waku h2 img,
	.waku2 h2 img,
	.wakuSub h2 img {
	width: 860px;
	}
	
	/*  Site Width
	------------------------------------------------------------------- */
	/* padding、borderの値を含めない */
	* {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	}
	body {
	overflow: hidden;
	min-width: 1000px;
	}



	/* トップページ */
	#home #content .inner .logo img {
	width:440px;
	float:left;
	margin-bottom:20px;
	}
	#home #content .inner {
	margin: 0 auto;
	width: 950px;
	}
	#home #content .main {
	width: 950px;
	}

	/* 下層ページ */
	#subPage #content .inner {
	margin: 0 auto;
	width: 950px;
	}
	#subPage #content .main {
	width: 950px;
	}



	

	/*  Header
	------------------------------------------------------------------- */
	#header {
	margin-bottom:1px;
	margin: 0 auto;
	width: 100%;
	}

	/* Logo　トップ */
	#home .log p img {
	position: relative; top:12px; left:0px;
	width:470px;
	}

	/* Logo */
	#header p.kirari img {
	width:305px;
	drop-shadow(10px 10px 10px rgba(0,0,0,0.6));
	}

	#header p.kirariSub img {
	width:200px;
	drop-shadow(10px 10px 10px rgba(0,0,0,0.6));
	}

	#header p.circle img {
	width:155px;
	}

	#header p.circleSub img {
	width:120px;
	}




	/* Utility */
	#header .utility {
	display: inline-block;
	padding: 20px 0 0 0;
	height: 32px;
	width:250px;
	color:#FFF;
	text-align:center;
	background-color: #333333;
	-webkit-border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px;
	border-radius: 0 0 4px 4px;
	}
	#header .utility:after {
	content:".";
	display:block;
	height:0px;
	clear:both;
	visibility:hidden;
	}
	/* Font Size Change */
	#header .utility .sizeChange dt {
	padding: 0 5px 0 0;
	font-size: 1.0em; /* =10px */
	line-height: 2.8;
	font-weight: bold;
	}
	#header .utility .sizeChange dd img {
	cursor: pointer;
	}
	/* Site Search */
	#header .utility .search form {
	position:relative;
	padding: 0 0 0 10px;
	height: 23px;
	width: 185px;
	background-color: #ffffff;
	border: 1px solid #c1c1c1;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	border-radius: 14px;
	}
	#header #cse-search-box input[type="text"] {
	padding: 4px 0;
	height: 15px;
	width: 143px;
	border:none !important;
	background-color:transparent;
	font-size: 1.4em; /* =14px */
	}
	#header #cse-search-box input[type="text"]:focus {
	outline: 0;
	}
	#header #cse-search-box input[type="submit"] {
	position:absolute; top: -1px; left:160px;
	overflow:hidden;
	height: 23px;
	width: 23px;
	text-indent: -70px;
	border: 0 none;
	background: url("../images/common/icon_search.png") no-repeat center center;
	-webkit-appearance: none;
	}

	/* MENU */
	#header .menuBtn {
	display:none;
	}


	/* Content
	------------------------------------------------------------------ */

	/* トップページ */
	#home #content {
	padding: 0;
	}
	#home #content .main {
	padding: 0 0 20px 0;
	}
	#home #content .side {
	padding: 0 0 20px 0;
	}

	/* Category Img */
	/* PC：テキスト非表示 */
	#subPage #content .categoryImg span {
	display: none;
	}

	/* 下層ページ  */
	#subPage #content {
	padding: 0;
	}
	#subPage #content .main {
	padding: 5em 0 10px 0;
	}
	#subPage #content .side {
	padding: 0 0 30px 0;
	}
	#subPage #content .inner {
	margin: 0 auto;
	padding: 0;
	}
	#subPage #content .inner:after {
	content:".";
	display: block;
	height: 0px;
	clear: both;
	visibility: hidden;
	}

	#subPage .main div.waku {
	position: relative; /* 三角の位置を固定するために設定 */
	padding:20px;
	-webkit-border-radius: 30px;  
	-moz-border-radius: 30px;  
	border-radius: 30px;
	margin-bottom:0;
	margin-bottom:0;
	background: #fff;
	box-shadow: 0 0px 0 4px rgba(1, 172, 220, 1);
	text-align: center;
	}


	#subPage .main div.wakuSub {
    position: relative; /* 三角の位置を固定するために設定 */
    padding: 40px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    margin-bottom: 0;
    box-shadow: 0 0px 0 4px rgba(1,171,180,1);
    text-align: left;
	}

	#subPage .main div.wakuBk {
	position: relative; /* 三角の位置を固定するために設定 */
	padding:20px;
	-webkit-border-radius: 30px;  
	-moz-border-radius: 30px;  
	border-radius: 30px;
	margin-bottom:0;
	box-shadow: 0 0px 0 4px rgba(1,171,180,1);/*左右の向きpx  上下の向きpx ぼかしpx 広がりpx 色 内側指定*/
	}

	div.waku2 {
	padding:20px;
	background: url(../images/common/bg_stripe01.png) top center repeat;
	margin-bottom:0;
	}



	#subPage .main div.waku::before { /* 三角の部分 */
	content: '';
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	width: 40px; /* 影をつけるために線幅で設定せずにboxを使用する */
	height: 40px;
	transform: rotate(45deg); /* 回転 */
	background: #fff; /* 吹き出しの地と同じ色 */
	box-shadow: 3.5px 3.5px 0px 1px rgba(1, 172, 220, 1);
	}

	#subPage .main div.wakuSub::before { /* 三角の部分 */
	content: '';
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	width: 40px; /* 影をつけるために線幅で設定せずにboxを使用する */
	height: 40px;
	transform: rotate(45deg); /* 回転 */
	background: #fff; /* 吹き出しの地と同じ色 */
	box-shadow: 3.5px 3.5px 0px 1px rgba(1,171,180,1);
	}

	#subPage .main div.wakuBk::before { /* 三角の部分 */
	content: '';
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	width: 40px; /* 影をつけるために線幅で設定せずにboxを使用する */
	height: 40px;
	transform: rotate(45deg); /* 回転 */
	background: #fff; /* 吹き出しの地と同じ色 */
	box-shadow: 3.5px 3.5px 0px 1px rgba(1,171,180,1);
	}

	#subPage .main div.page {
	position: relative;
	margin-bottom:4em;
	}












	




	/* Topic Path
	------------------------------------------------------------------ */
	#subPage .topicPath {
	width: 100%;
	background:#f7f7f7;
	border-top:1px #CCCCCC solid;
	border-bottom:1px #CCCCCC solid;
	}

	#subPage .topicPath p {
	text-align:center;
	padding:2em 0;
	}

	#subPage .topicPath p img {
	margin:0 1em;
	}

	#subPage .topicPath dl {
	width: 950px;
	margin:auto;
	}
	#subPage .topicPath dt {
	overflow: hidden;
	width: 0;
	height: 0;
	font-size: 1px;
	line-height: 1px;
	/* except MacIE \*/position: absolute;/* end */
	left: 0;
	top: 0;
	color: #FFFFFF;
	background-image: url(images/img1.png);
	}
	#subPage .topicPath dd {
	font-size: 1.1em; /* =11px */
	}

	#subPage .topicPath ul {
	}
	#subPage .topicPath li:first-child {
	float: left;
	padding: 10px 0;
	}
	#subPage .topicPath li + li {
	float: left;
	padding: 10px 0;
	}
	#subPage .topicPath li span {
	padding: 0 10px;
	}
	#subPage .topicPath li a {
	text-decoration: none;
	color: #000000;
	}
	#subPage .topicPath li a:hover {
	text-decoration: underline;
	}


	/* PageTop
	------------------------------------------------------------------ */
	#pageTop {
	position:relative;
	margin:0 auto;
	max-width:1000px;
	}
	#pageTop a {
	z-index:9999;
	display: block;
	overflow:hidden;
	position: fixed;
	bottom: 0px;
	left: auto;
	margin-left:1000px;
	height:50px;
	width: 50px;
	background:	url(../images/common/btn_pagetop.png) top left no-repeat;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-indent:-9999px;
	outline:none;
	}


	/* Footer
	------------------------------------------------------------------ */
	#footer {
	text-align: left;
	background-color: #ffffff;
	}
	#footer .copyRight {
	color: #000;
	padding: 14px 0;
	border-top: 1px solid #c1c1c1;
	font-size: 1.0em; /* =10px */
	text-align: center;
	background-color:#fff;
	}


	/*改行解除
	------------------------------------------------------------------- */
	.sp_br{
	display: none;
	}

	/*スペース
	------------------------------------------------------------------- */  
	.spaceImg {
	padding:2em 0;
	}


}


/* 
 * **************************************************
 * ページ（sp）
 * **************************************************
 */

/*sp*/@media (max-width: 640px)  {

				/* イメージ　PC←→SP　切り替え
				------------------------------------------------------------------ */
				.button-container {
					text-align: center;
				}

				/* イメージ　PC←→SP　切り替え
				------------------------------------------------------------------ */
				.pcImg {
					display:none;
				}

				.spImg img {
					display: block;
				  }
	
					/* イメージ
				------------------------------------------------------------------ */
				.waku h2 img,
				.waku2 h2 img,
				.wakuSub h2 img {
					max-width: 100%;
				}


				/*  Site Width
				------------------------------------------------------------------- */
				/* padding、borderの値を含めない */
				* {
				-webkit-box-sizing: content-box;
				-moz-box-sizing: content-box;
				box-sizing: content-box;
				}
				body {
				overflow: hidden;
				}
				#header .inner,
				#globalNav .inner {
				width: auto;
				}

				/* トップページ */
				#home #content,
				#subPage #content {
				padding: 0;
				margin: 0;
				}
				#home #content .inner {
				width: auto;
				}
				#home #content .main {
				width: auto;
				}
				/* 下層ページ */
				#subPage #content .inner {
				width: auto;
				}

				#subPage .main div.waku,
				#subPage .main div.wakuSub {
				position: relative; /* 三角の位置を固定するために設定 */
				-webkit-border-radius: 30px;  
				-moz-border-radius: 30px;  
				border-radius: 30px;
				background:#FFF;
				margin-bottom:0;
				margin-top: 40px;
				}

				#subPage .main div.waku::before,
				#subPage .main div.wakuSub::before { /* 三角の部分 */
				content: '';
				position: absolute;
				bottom: -20px;
				left: 50%;
				margin-left: -10px;
				width: 40px; /* 影をつけるために線幅で設定せずにboxを使用する */
				height: 40px;
				transform: rotate(45deg); /* 回転 */
				background: #fff; /* 吹き出しの地と同じ色 */
				}

				#subPage .main div.waku {
				padding:20px;
				box-shadow: 0 0px 0 4px rgba(1, 172, 220, 1);/
				}

				#subPage .main div.waku::before {
				box-shadow: 3.5px 3.5px 0px 1px rgba(1, 172, 220, 1);
				}

				#subPage .main div.wakuSub {
				padding:40px;
				box-shadow: 0 0px 0 4px rgba(1,171,180,1);/
				}

				#subPage .main div.wakuSub::before {
				box-shadow: 3.5px 3.5px 0px 1px rgba(1,171,180,1);
				}

				#subPage .main div.waku2 {
				padding:20px;
				margin-bottom:0;
				}

				#subPage .main div.page {
				position: relative;
				margin-bottom:5em;
				margin-top:0.5em;
				}


				#subPage #content .main {
				width: auto;
				}
				/* 下層ページ */
				#subPage.protection #content .main {
				width: auto;
				}
				#subPage #content .side {
				width: auto;
				}
			

				


				/*  Header
				------------------------------------------------------------------- */
			
				/* Logo */
				#header p img {
				position: relative; top:0px; left:0px;
				max-width: 100%;
				height: auto;
				}
				/* Utility */
				#header .utility {
				display: none;
				}
				
				#sidr-right #cse-search-box input[type="text"] {
				padding: 4px 0;
				height: 20px;
				width: 85%;
				border:none !important;
				background-color:transparent;
				font-size: 1.4em; /* =14px */
				}
				#sidr-right #cse-search-box input[type="text"]:focus {
				outline: 0;
				}
				#sidr-right #cse-search-box input[type="submit"] {
				position:absolute; top: -1px; right:5px;
				overflow:hidden;
				height: 28px;
				width: 28px;
				text-indent: -70px;
				border: 0 none;
				background: url("../images/common/icon_search.png") no-repeat center center;
				-webkit-appearance: none;
				}





				/* Content
				------------------------------------------------------------------ */
				#content {
				/*background-color: #f8f8f8;*/
				}
				/* トップページ */
				#home #content .inner .logo {
				text-align:center;
				padding-top:10px;
				}
				#home #content .inner .logo img {
				width:90%;
				margin-bottom:10px;
				}
				/* 下層ページ */
				#subPage #content .main {
				float: left;
				margin: 0 15px;
				padding: 0;
				}
				#subPage #content .inner:after {
				content:".";
				display:block;
				height:0px;
				clear:both;
				visibility:hidden;
				}



				/* Common Elements
				------------------------------------------------------------------ */
				/* Paragraph */
				#subPage .main p,
				#subPage .main > p,
				#subPage .main section > p {
				font-size: 1.4em; /* =14px */
				line-height: 2;
				}
				/* Line Height */
				#subPage .main section  dd {
				line-height: 1.8;
				}
				#subPage .main > p img,
				#subPage .main section > p img {
				display:block;
				margin: 0 auto;
				}
				/* Table：Common */
				#subPage .main div.infoBk {
				padding-top:5em;
				}
				#subPage .main div.infoBk p {
				text-align:center;
				display:block;
				width:50%;
				float:left;
				padding-bottom:1em;
				}
				#subPage .main div.infoBk p img {
				width:85%;
				border: #CCC 1px solid;
				}



				/* 改行禁止 */
				#subPage .main .noBrCnt {
				text-align: center;
				}

				/* List */
				/* Notes*/
				#subPage .main ul.notes {
				margin-left: 1em;
				text-indent: -1em;
				}
				#subPage .main ul.notes li {
				font-size: 1.2em; /* =12px */
				}
				/* もっと詳しく：Notes */
				#subPage .main .moreLink ul.notes li {
				font-size: 1.2em; /* =12px */
				}
				/*  List：数字（パーレン） */
				#subPage .main ul.parenList {
				margin-left: 1.0em;
				text-indent: -1.0em;
				list-style-type: none;
				}
				#subPage .main ul.parenList li {
				font-size: 1.4em; /* =14px */
				}
				/*  List：黒丸 */
				#subPage .main ul.discList {
				margin-left: 0.5em;
				list-style-type: none;
				}
				#subPage .main ul.discList li {
				padding: 0 0 0 18px;
				background: url(../images/common/list_style_disc_gray.png) no-repeat 0 2px;
				font-size: 1.4em; /* =14px */
				}
				@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx) {
				#subPage .main ul.discList li {
				background: url(../images/common/list_style_disc_gray@2x.png) no-repeat 0 2px;
				-moz-background-size: auto 15px;
				-webkit-background-size: auto 15px;
				background-size: auto 15px;
				}
				}
				/*  List：数字（順番） */
				#subPage .main dl.decimalList {
				margin-left: 1.0em;
				text-indent: -1.0em;
				list-style-type: none;
				}
				#subPage .main dl.decimalList dt {
				font-size: 1.4em; /* =14px */
				font-weight: bold;
				}
				#subPage .main dl.decimalList dd {
				font-size: 1.4em; /* =14px */
				}
				#subPage .main dl.decimalList dd + dt {
				margin: 0.8em 0 0 0;
				}
				/*  List：数字（順番：ol） */
				#subPage .main ol.decimalList {
				margin-left: 3.0em;
				list-style-type: decimal;
				}
				#subPage .main ol.decimalList li {
				font-size: 1.4em; /* =14px */
				}

				/* Link */
				/* Link：Page */
				#subPage .main ul.pageLink {
				/*background-color: #fff;*/
				}
				#subPage .main ul.pageLink li,
				#subPage .main ul.mailLink li {
				font-size: 1.5em;
				/*background:url(../images/common/icon_link.png) left center no-repeat;*/
				/*padding-left:1em;*/
				} 
				#subPage .main ul.pageLink a {
				padding: 8px;
				color:#000000;
				}



			
				@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx) {
				#subPage .main ul.pageLink a[href$=".html"],
				#subPage .main ul.pageLink a[href^="../"]  {
				background: url(../images/common/icon_link@2x.png) no-repeat 20px 8px;
				-moz-background-size: auto 50%;
				-webkit-background-size:auto 50%;
				background-size: auto 50%;
				}
				}



				/* Topic Path
				------------------------------------------------------------------ */

				#subPage .topicPath {
				width: 100%;
				background:#f7f7f7;
				padding-left:1em;
				border-top:1px #CCCCCC solid;
				border-bottom:1px #CCCCCC solid;
				}
				#subPage .topicPath p {
				text-align:center;
				}

				#subPage .topicPath p img {
				width:40%;
				margin: 1em;
				}

				#subPage .topicPath dt {
				overflow: hidden;
				width: 0;
				height: 0;
				font-size: 1px;
				line-height: 1px;
				/* except MacIE \*/position: absolute;/* end */
				left: 0;
				top: 0;
				color: #FFFFFF;
				}
				#subPage .topicPath dd {
				font-size: 1.1em; /* =11px */
				line-height: 1.1em;
				}
				#subPage .topicPath li:first-child {
				float: left;
				padding: 5px 0;
				}
				#subPage .topicPath li + li {
				float: left;
				padding: 5px 0;
				}
				#subPage .topicPath li span {
				padding: 0 10px;
				}
				#subPage .topicPath li a {
				text-decoration: none;
				color: #000000;
				}
				#subPage .topicPath li a:hover {
				text-decoration: underline;
				}

				/* fukidashi
				------------------------------------------------------------------ */

				#subPage .main div.fukidashi {
				background: url("../images/common/fukidashi_bottom.png") no-repeat center top;
				height:100px;
				}


				/* PageTop
				------------------------------------------------------------------ */
				#pageTop {
				position:relative;
				width: auto;
				}
				#pageTop a {
				z-index: 9999;
				display: block;
				overflow: hidden;
				position: relative;
				bottom: 0px;
				right: 10px;
				height:50px;
				width: 50px;
				background:	url(../images/common/btn_pagetop.png) top left no-repeat;
				-webkit-border-radius: 4px;
				-moz-border-radius: 4px;
				border-radius: 4px;
				text-indent: -9999px;
				outline: none;
				}


				/* Footer
				------------------------------------------------------------------ */
				#footer {
				border-top: 1px solid #c1c1c1;
				background-color: #fff;
				text-align: left;
				padding: 0 0;
				margin: 0;
				}
				
				#footer .copyRight {
				padding: 10px 0;
				/*border-top: 1px solid #c1c1c1;*/
				font-size: 1.0em; /* =10px */
				text-align: center;
				}

				/*改行
				------------------------------------------------------------------- */
				.sp_br {
				display:block;
				}

				/*スペース
				------------------------------------------------------------------- */  
				.spaceImg {
				padding:1em 0;
				}



}
