﻿@charset "utf-8";

/* ===================================================================
CSS information

 file name  :style.css
 style info :コンテンツエリア関係 他
 
このスタイルシートの構成
 基本設定、レイアウト、横幅設定など
 汎用class
 #header
  #utilityNav
 #navi
  #gNav
 #footer
  #footerContents
 #page
 #mainImg
  #imgArea
  #contents
   #main
   #sub
=================================================================== */

/*--- reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption,th {
	text-align: left;
}
q:before,q:after {
	content: '';
}
object,
embed {
	vertical-align: top;
}
hr,legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}
img,abbr,acronym,fieldset {
	border: 0;
}
li {
	list-style-type: none;
}

table{

}

/*--- default */
body {
	background:#fffff2 url(images/bg.png) repeat-y 50% 0;
	color: #666;
	font-size: small;
	font-family: verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo",arial,Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height: 1.5;
}
* html body {	/* for IF6 */
	font-family: "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

/*----------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------*/
body {
	background:#ffffff url(images/bg_base.png) repeat 50% 0;
}

a:link {
	color:#fff;
	text-decoration: none;
}
a:visited {
	color:#fff;
	text-decoration: none;
}
a:hover {
	color:#fff;
	text-decoration: underline;
}
a:active {
	color:#fff;
	text-decoration: none;
}

#sub .zh {color: #fff;text-decoration:none;cursor: pointer;}
#sub .zh:hover{color: #fff;text-decoration: underline;}

#main .zh {text-decoration: underline;color:#000;cursor: pointer;}
#main .zh:hover{text-decoration: none;color:#000;}

.contentsBox .zh {text-decoration: underline;color:#fff;cursor: pointer;}
.contentsBox .zh:hover{text-decoration: none;color:#fff;}
/* -----------------------------------------------------------
	#navi
		ナビ
----------------------------------------------------------- */

#navi {
	clear: both;
	height: 80px;
}

/* #gNav
----------------------------------------------------------- */
#navi #gNav {
	clear: both;
	overflow: hidden;
}

* html #navi #gNav {
	height: 1%;
}

#naviArea {
	width: 960px;
	margin: 0 auto;
}

#navi #gNav li {
	float: left;
	text-align: center;
	padding-top:12px;
}

#navi #gNav li a:link,
#navi #gNav li a:visited,
#navi #gNav li a:active {
	font-size: 12px;
	text-decoration:none;
	display:block;
	width: 160px;
	height: 55px;
	padding-top: 12px;
}


#navi #gNav li a:hover{
	background-position:0 -56px;
	text-decoration:none;
}

/*----------------------------------------------------
	汎用class
----------------------------------------------------*/
.imgR {
	float: right;
	margin: 0 0 0 10px;
}

.imgL {
	float: left;
	margin: 0 10px 0 0;
}

/* clearfix */
.clearfix:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

/* -----------------------------------------------------------
	#header
		ヘッダー
----------------------------------------------------------- */
#header {
	width: 960px;
	height:60px;
	margin: 0 auto;
}

#header #logo {
	clear: both;
	float: left;
	font-size: 14px;
	font-weight: bold;
	margin: 5px 5px 0;
}

#headerDescArea {
	width: 960px;
	margin: 0 auto;
}

#headerDescArea h1 {
	font-size: 10px;
	font-weight: normal;
	float: left;
	margin: 2px 0 0 10px;
}
#headerDescArea h2 {
	font-size: 10px;
	font-weight: normal;
	float: right;
	margin: 2px 10px 0 0;
}

/* #utilityNav
----------------------------------------------------------- */
#header #utilityNav {
	float: right;
	text-align: right;
	padding: 20px 5px 0 0;
}

#header #utilityNav li {
	display: inline;
	list-style-type: none;
	margin-right: 5px;
	padding:0 0 0 8px;
}




/* -----------------------------------------------------------
	#footer
		フッター
----------------------------------------------------------- */
#footer {
	clear: both;
	background: url(images/bg_footer.png) repeat-x 50% 130px;
}

#footer .copyright {
	color: #707070;
	text-align: center;
	padding: 75px 0 10px;
  	
}

#footerContents ul {
	padding-top:5px;
	padding-bottom:5px;
	text-align: center;
}

#footerContents ul li {
	display: inline;
	border-right: dashed #ccc 1px;
	padding: 0 10px 0 10px;
}
#footerContents ul li.end {
	display: inline;
	border: none;
	padding: 0 10px 0 10px;
}

#footerContents .box {
	width: 280px;
	float: left;
	border: none;
	margin-right: 10px;
	padding: 10px;
	border: dashed #ccc 1px;
}

#footerContents h3 {
	font-weight: normal;
}

/* -----------------------------------------------------------
	#footerContents
		フッターコンテンツ
----------------------------------------------------------- */
#footerContents {
	width: 960px;
	padding:10px 0 0;
	margin: 0 auto;
}

/*----------------------------------------------------
	#page
----------------------------------------------------*/
#page {
}

/*----------------------------------------------------
	#mainImg
----------------------------------------------------*/
#imgArea {}
.img_main {
	width:100%;
	margin: 0 auto;
	text-align:center;
}

/*----------------------------------------------------
	#contents
----------------------------------------------------*/
#contents {
	width: 960px;
	margin: 20px auto 0 auto;
	text-align: left;
}

#contents .pageTop {
	clear: both;
	text-align: right;
}


/*.contentsBox
----------------------------------------------------*/
.contentsBox {
	margin: 0 0 20px 15px;
	min-height:1px;
}

.contentsBox .box {
	font-size: 12px;
	width: 280px;
	float: left;
	border: dashed #ccc 1px;
	margin-right: 10px;
	padding: 10px;
}

/*----------------------------------------------------
	#main
		メイン
----------------------------------------------------*/
#main {
	float: right;
	width: 700px;
	overflow:hidden;
}

#main p{
	font-size:15px;
	padding: 10px 10px 10px 10px;
}

.star{
	margin: 0 auto;
	font-size:45px;
	padding: 10px 10px 10px 10px;
	text-align:center;
	color: #ffff66;		
}

#main h2{
	font-size: 20px;
	font-weight: normal;
	line-height: 28px;
	margin-bottom:10px;
	background: url(images/bg-h2.png) no-repeat;
	padding: 0 0 0 0;
	text-shadow: 1px 1px 1px #ccc;
	text-align:center;
}

#main h3{
	font-size: 20px;
	font-weight: normal;
	line-height: 28px;
	margin-bottom:5px;
	background: url(images/bg-h3.png) no-repeat;
	padding: 0 0 0 0;
	text-shadow: 1px 1px 1px #ccc;
	text-align:center;
}

#main h4{
	color: #000;
	font-size: 20px;
	font-weight: normal;
	margin: 0 0 10px 0;
	text-shadow: 1px 1px 1px #ccc;
	background: url(images/line.gif) repeat-x bottom left;
	padding-bottom: 10px;
	text-align:center;
}

#main h5{
	color: #000;
	font-size: 20px;
	font-weight: normal;
	text-shadow: 1px 1px 1px #ccc;
	background: url(images/line.gif) repeat-y bottom left;
	padding-bottom: 5px;
	padding-top:5px;
	padding-left:15px;
}

#head{
}

#main .section{
	margin: 0 0 20px 0;
	padding: 10px;
}

#main .box {
	width: 190px;
	float: left;
	border-right: solid #ffa7a1 1px;
	margin-right: 5px;
	padding: 0 15px 0 10px;
}

#main .box-end {
	width: 190px;
	float: left;
	margin-right: 5px;
	padding: 0 0 0 10px;
}

#main ul li{
	list-style-type: none;
	padding: 2px 0 2px 8px;
	background: url(images/list-arw.png) no-repeat 0 50%;
	font-size: 16px;
}

/* -----------------------------------------------------------
	#sub
		サイドバー、サブ
----------------------------------------------------------- */
#sub {
	float: left;
	width: 230px;
}

#sub h3{
	font-size: 15px;
	font-weight: normal;
	width: 230px;	
	line-height: 28px;
	margin-bottom:5px;
	background: url(images/bg-side-h3.png) no-repeat;
	padding: 0 0 0 12px;
	color: #000000;
	letter-spacing: 0.42em;
	
}

#sub ul {
	margin: -10px 0 2px;
	font-size: 12px;
	margin: -5px 0 20px 0;
	padding: 5px 10px 10px 10px;
}

#sub ul li{
	list-style-type: none;
	padding: 5px 0 5px 8px;
	background: url(images/list-arw.png) no-repeat 0 50%;
	border-bottom: dashed #ccc 1px;
	margin: 5px 0 5px;
}

#sub .sectionBorder{
	font-size: 12px;
	margin: 0 0 20px 0;
	padding: 10px 10px 10px 10px;
}

#sub .box {
	border-bottom: dashed #ccc 1px;
	padding: 5px;
}

#sub .box-end {
	padding: 5px;
}

.indexL {
	width: 322px;
	float: left;
	margin-right: 7px;
	padding: 5px 15px 0 10px;
	font-size: 17px;
	margin-bottom: 20px;	
}

.small {
	font-size: 13px;
}

.indexR {
	width: 322px;
	float: left;
	padding: 5px 0 0 10px;
	font-size: 17px;
	margin-bottom: 20px;
}

.clear{
	clear:both;
}

.bg_f {
background: rgba(255,255,255,0.7);
padding: 10px;
color: #000;
-webkit-box-shadow: 3px 3px 5px #ccc;
-moz-box-shadow: 3px 3px 5px #ccc;
}

.bg_a {
background: url(images/g.png) repeat;
padding: 10px;
color: #000;
}

.totop {
    position: fixed;
    bottom: 250px;
    right: 0px;
}

/*------ 追記 ------*/

/* ul */
.post ul li{
position: relative;
background: none !important;
list-style-type: none !important;
margin: 0 0 10px 27px !important;
font-size: 15px !important;
padding: 0 1.5em !important;
line-height: 1.8em;
}

.post ul li:first-child{
margin: 10px 0 10px 27px !important;
}

.post ul li::after{
display: block;
content: '';
position: absolute;
background: #333;
top: .72em;
left: .2em;
width: 6px;
height: 6px;
}

/* リストにタイトルを入れる場合 */
.post li.title{
display: inline-block;
padding: 0 1em !important;
}

.post li.title::before,
.post li.title::after{
display: block;
content: '';
position: absolute;
top: 50%;
width: 12px;
height: 12px;
background: none;
box-sizing: border-box;
border: 2px solid transparent;
transform: translate(0, -50%) rotate(-45deg);
}

.post li.title::before{
left: 2px;
border-left-color: #999;
border-top-color: #999;
}

.post li.title::after{
left: auto;
right: 2px;
border-right-color: #999;
border-bottom-color: #999;
}

/* 数字付き */
.post ul,
.post ol{
counter-reset: num;
}

.post li.num{
padding: 0 2.3em !important;
}

.post li:not(.title) + li.num{
margin-top: 1.5em !important;
}

.post li.num::after{
content: "("counter(num)")";
counter-increment: num;
top: 0;
left: 0;
width: auto;
height: auto;
background: none;
}

/* 補足 */
.post ul.kome{
counter-reset: number3;
}

.post ul.kome li{
padding: 0 1.5em 0 2.5em !important;
}

.post ul.kome li:nth-child(10){
padding: 0 1.5em 0 3.2em !important;
}

.post ul.kome li::after{
content: '※'counter(number3);
counter-increment: number3;
background: none;
top: .05em;
left: 0;
width: auto;
font-size: 15px;
font-weight: 600;
}

/* ol */
.post ol{
counter-reset: number;
}

.post ol li{
position: relative;
background: none !important;
list-style-type: none !important;
margin: 0 0 10px 27px !important;
font-size: 15px !important;
padding: 0 1.5em !important;
line-height: 1.8em;
}

.post ol li:first-child{
margin: 10px 0 10px 27px !important;
}

.post ol li::after{
display: block;
content: "【"counter(number)"】";
counter-increment: number;
margin-right: 0.5em;
position: absolute;
top: 0em;
left: -1em;
}

/* aリンク */

.post a:link,
.post a:visited,
.post a:hover,
.post a:active{
color:#F58C55 !important;
font-weight: 600 !important;
}

/* 目次ボックス */
.post .mokuji-box{
width: auto;
height: auto;
border: 1px dashed #fff;
margin: 10px;
}

.post .mokuji-box h3{
text-align: left !important;
background: none !important;
padding: 10px 10px 0 !important;
margin: 0 0 10px 27px !important;
font-size: 15px !important;
position: relative;
border: none;
}

.post .mokuji-box h3::after {
display: block;
content: '';
position: absolute;
top: 1.3em;
left: -.7em;
width: 6px;
height: 6px;
border-right: 2px solid #000;
border-bottom: 2px solid #000;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.post .mokuji-box ol{
padding: 0 10px 10px;
counter-reset: number3;
}

.post .mokuji-box ol ol{
padding: 0;
}

.post .mokuji-box ol.padding{
padding: 10px;
}

.post .mokuji-box ol li{
font-size: 15px !important;
padding: 0 10px 0 0 !important;
margin: 0 0 10px 27px !important;
}

.post .mokuji-box ol li:last-child{
margin: 0 0 0 27px !important;
}

.post .mokuji-box ol li li{
padding: 0 0 0 1.1em !important;
}

.post .mokuji-box ol li li:first-child{
padding: 10px 0 0 1.1em !important;
}

.post .mokuji-box ol li li li{
padding: 0 0 0 2.2em !important;
}

.post .mokuji-box ol li li li:first-child{
padding: 10px 0 0 2.2em !important;
}

.post .mokuji-box ol li::after{
display: none;
}

.post .mokuji-box ol li::before{
content: counters(number3,"-")".";
counter-increment: number3;
display: block;
margin-right: 0.5em;
position: absolute;
top: 0em;
left: -1.5em;
}

.post .mokuji-box ol li li:first-child::before{
top: 10px;
}

/* h4 */
.post h4{
font-size: 18px !important;
padding: .5em .75em !important;
margin: 1.5em 10px .5em 10px !important;
background: none !important;
border-left: 10px solid #549B8D;
border-bottom: 3px double #549B8D;
text-align: left !important;
}

.post h4:first-child{
margin: 10px 10px .5em 10px !important;
}

/* h5 */
.post h5{
font-size: 18px !important;
font-weight: 500 !important;
padding: .5em .75em !important;
margin: 1.5em 10px .5em 10px !important;
border-bottom: 3px double #549B8D;
border-top: 3px double #549B8D;
background: none !important;
}

/* h6 */
.post,
.post h4,
.post h5{
counter-reset: number2;
}

.post h6{
position: relative;
font-size: 18px !important;
font-weight: 500 !important;
padding: 0 .75em .5em 2.5em !important;
margin: 1.5em 10px .5em 10px !important;
background: none !important;
border-bottom: 1px solid #549B8D;
}

.post h6::after,
.post h6::before{
display: block;
position: absolute;
top: 0;
left: 10px;
width: 27px;
height: 27px;
line-height: 27px;
text-align: center;
box-sizing: border-box;
}

.post h6::after{
content: '';
background: #549B8D;
border-radius: 100%;
}

.post h6::before{
content: counter(number2);
counter-increment: number2;
left: 10.5px;
color: #fff;
z-index: 999;
font-size: 16px;
font-size: 90% !important;
}

.post h6.margin{
margin: 10px 10px .5em 10px !important;
}

.post h6.no-ab{
border-bottom: 1px dashed #549B8D;
}

.post h6.no-ab::before{
counter-increment: none;
content: "?";
}

/* h7 */
.post span.h7{
position: relative;
display: block;
font-size: 1rem;
font-weight: 500;
padding: .5em .75em .5em 2.5em;
margin: 1.5em 10px .5em 10px;
background: rgba(255, 255, 255, .5);
box-sizing: border-box;
}

.post span.h7::before,
.post span.h7::after{
display: block;
position: absolute;
left: 0;
width: 23px;
text-align: center;
box-sizing: border-box;
}

.post span.h7::after{
content: '';
top: 0;
height: 100%;
background: #000;
}

.post h6{
counter-reset: numberH7;
}

.post span.h7::before{
content: counter(numberH7);
counter-increment: numberH7;
top: 50%;
transform: translate(0, -50%);
height: auto;
color: #fff;
font-size: .85rem;
z-index: 5;
}

.margin-top{
margin-top: 20px !important;
}

.post .table_wrap{
width: auto;
height: auto;
padding: 10px;
}

.post table{
table-layout: fixed;
width: 100%;
height: auto;
font-size: 15px;
box-sizing: border-box;
border: 1px solid #549B8D;
padding: 0;
margin: 0;
outline: 0;
}

.post table tr{
width: 100%;
}

.post table th,
.post table td{
width: 50%;
padding: .7em;
border-bottom: 1px solid #549B8D;
}

.post table th{
border-right: 1px dashed #549B8D;
}

.post table .title{
width: 100%;
text-align: center;
background: #549B8D;
color: #fff;
border-bottom: hidden;
}

/* tableタイプ2 */

.border{
border-bottom: 1px dotted #549B8D;
padding-bottom: 20px !important;
margin-bottom: 10px;
}

.table_table td{
border-right: 1px dashed #549B8D;
}

.table_table th{
border-right: 1px solid #549B8D !important;
background: rgba(84, 155, 141, .3);
}

.table_table tr:first-child th{
background: transparent;
text-align: center;
}

.orange th{
background: rgb(246, 142, 86, .3);
}

.orange td{
background: rgb(246, 142, 86, .1);
}

/* dlタグ */
.dl{
font-size: 15px;
padding: 10px;
}

.dl dt{
position: relative;
font-size: 18px;
font-weight: 500;
padding: 0 .75em .5em 2.3em !important;
}

.dl dt::after{
display: block;
content: '';
position: absolute;
top: .5em;
left: .75em;
width: 8px;
height: 8px;
border-right: 2px solid #549B8D;
border-bottom: 2px solid #549B8D;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
box-sizing: border-box;
}

.dl dd{
padding: 20px;
border: 1px dashed #549B8D;
}

.dl dd + dt{
margin: 1.5em 0 0 0 !important;
}

#main.post .dl dd h6{
margin-right: 0 !important;
margin-left: 0 !important;
}

#main .dl dd p:first-child,
.post dl dd div.postBox:first-child{
padding-top: 0;
}

#main .dl dd p,
.post dl dd div.postBox{
padding-right: 0;
padding-left: 0;
}

#main .dl dd p:last-child,
.post dl dd div.postBox:last-child{
padding-bottom: 0;
}

#main.post .dl dd ul li,
#main.post .dl dd ol li{
margin-left: 17px !important;
}

/* box */
.post div.postBox{
padding: 10px;
}

.post div.postboxInner{
padding: 10px 0;
background: rgba(255,255,255,.5);
}

.post div.postboxInner > h6{
margin-top: 0 !important;
}

#main.post div.postboxInner > p:last-child{
padding-bottom: 0;
}