/* ----------------------------------------------------------------------
	
	 モジュール　css
	
---------------------------------------------------------------------- */


/* --------------------------------------------------

	見出し関連

-------------------------------------------------- */


.section-title {
  position: relative;
  margin-bottom: 40px;
  padding-top:25px;
  border-top: 3px solid #dbdce2;
}
@media (max-width: 768px) {
  .section-title {
    margin-bottom: 30px;
	padding-top:20px;
}
}
.section-title:before {
  position: absolute;
  top: -3px;
  left: 0;
  width: 180px;
  height: 3px;
  background: #ee4500;
  content: "";
}
@media (max-width: 768px) {
  .section-title:before {
    width: 65px;
    height: 3px;
  }
}
.section-title h1,
.section-title h2,
.section-title h3,
.section-title h4,
.section-title h5,
.section-title h6 {
  position: relative;
  color: #222;
  color: #FFF;
  font-size: 1.6em;
  font-weight: bold;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .section-title h1,
  .section-title h2,
  .section-title h3,
  .section-title h4,
  .section-title h5,
  .section-title h6 {
    font-size: 1.4em;
  }
}


.content-title {
 
}

.content-title h1,
.content-title h2,
.content-title h3,
.content-title h4,
.content-title h5,
.content-title h6 {
  position: relative;
  padding-left: 20px;
  font-weight: bold;
  font-size: 1.5em;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .content-title h1,
  .content-title h2,
  .content-title h3,
  .content-title h4,
  .content-title h5,
  .content-title h6 {
    font-size: 1.4em;
  }
}

.content-title h1:before,
.content-title h2:before,
.content-title h3:before,
.content-title h4:before,
.content-title h5:before,
.content-title h6:before {
  position: absolute;
  top: .15em;
  left: 0;
  width: 4px;
  height: 80%;
  background: #2ecc71;
  content: "";
}
@media (max-width: 768px) {
  .content-title h1:before,
  .content-title h2:before,
  .content-title h3:before,
  .content-title h4:before,
  .content-title h5:before,
  .content-title h6:before {
    top: .15em;
    width: 3px;
    height: 90%;
  }
}


/* - コンテンツ内ヘッダー（中見出し）
------------------------------------------------------------ */
.block_header {
	padding-bottom: 4px;
	border-bottom: 2px solid #e2e2e2;
	position: relative;
}

.block_header:after {
	position: absolute;
	left: 0;
	bottom: -2px;
	content: "";
	width: 120px;
	border-bottom: 2px solid #ee4500;
}

.block_header > .content { display: block; }

.block_header > .content > h1,
.block_header > .content > h2,
.block_header > .content > h3,
.block_header > .content > h4,
.block_header > .content > h5,
.block_header > .content > h6 {
	font-size: 1.6rem;
	font-weight: bold;
	color: #444;
	line-height: 1.4;
	padding: 4px 0;
}

/* - コンテンツ内サブヘッダー（小見出し）
------------------------------------------------------------ */
h1.block_header_line,
h2.block_header_line,
h3.block_header_line,
h4.block_header_line,
h5.block_header_line,
h6.block_header_line {
    border-bottom: 1px dotted #ccc;
    color: #444;
    color: #FFF;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 5px 0;
}


/* - コンテンツ内サブヘッダー（小見出し ベタ塗り）
------------------------------------------------------------ */
h1.sub_header,
h2.sub_header,
h3.sub_header,
h4.sub_header,
h5.sub_header,
h6.sub_header {
	background-color: #1b521f;
	color: #fff;
	font-weight: bold;
	font-size: 1.4rem;
	padding: 6px 12px;
}

/* --- ベタ塗り 余白広め・フォントサイズ大きめ --- */
h1.sub_header.lg,
h2.sub_header.lg,
h3.sub_header.lg,
h4.sub_header.lg,
h5.sub_header.lg,
h6.sub_header.lg {
	padding: 10px;
    font-size: 1.5rem;
}


/* - コンテンツ内サブヘッダー（小見出し h5スタイル）
------------------------------------------------------------ */
h1.lv5,h2.lv5,h3.lv5, h4.lv5, h5.lv5, h6.lv5 {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.4em;
	color: #388e3c;
	color: #028708;
	background: none;
	padding: 0;
}

/* --- フォントサイズ（小） --- */
h1.lv5.lv5-sm, h2.lv5.lv5-sm, h3.lv5.lv5-sm,
h4.lv5.lv5-sm, h5.lv5.lv5-sm, h6.lv5.lv5-sm { font-size: 1.4rem; }


/* - コンテンツ内サブヘッダー（小見出し h6スタイル）
------------------------------------------------------------ */
h1.lv6, h2.lv6, h3.lv6, h4.lv6, h5.lv6, h6.lv6 {
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 0.4em;
	background: none;
	padding: 0;
	color: #444;
}

/* --- フォントサイズ（小） --- */
h1.lv6.lv6-sm, h2.lv6.lv6-sm, h3.lv6.lv6-sm,
h4.lv6.lv6-sm, h5.lv6.lv6-sm, h6.lv6.lv6-sm { font-size: 1.4rem; }


/* --------------------------------------------------

	ボタン関連

-------------------------------------------------- */


.m-btn {
	display:inline-block;
	position: relative;
}

.m-btn a {
	display:block;
	padding:15px 5px;
	box-sizing:border-box;
	position: relative;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	border:1px solid #444;
	background-color:#444;
	width:240px;
	color:#FFF;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}

.m-btn a:hover {
	background-color:#FFF;
	color:#444;
}

.m-btn a span.inner {
	display:table;
	width:100%;
}

.m-btn a span.inner > span {
	display:table-cell;
}

.m-btn a span.inner > span.cap {
	width:16px;
}

.m-btn a span.inner > span.txt {
	text-align:center;
	font-size:1.45rem;
}

.m-btn a span.inner > span.cap {
	font-size:1.4rem;
}

@media (max-width: 768px) {

.m-btn a span.inner > span.txt {
	font-size:1.4rem;
}
	
}


/* ----- テーブル（ベーシック） ----- */

div.scr {
	width:100%;
}

table.basic {
	width:auto;
	border-collapse:collapse;
}

table.basic.t_fixed {
	table-layout:fixed;
}

table.basic thead tr th {
	text-align:center;
	background-color:#3a697d;
	color:#FFF;
	border:1px solid #ccc;
	padding:6px;
	box-sizing:border-box;
	font-size:1.3rem;
}

table.basic tbody tr td {
	border:1px solid #dcdcdc;
	padding:6px;
	box-sizing:border-box;
	font-size:1.3rem;
}

p.kome {
	font-size:1.2rem;
	font-weight:bold;
	text-indent:-1em;
	padding-left:1em;
}

p.sp_kome {
	font-size:1.2rem;
	font-weight:bold;
	text-indent:-1em;
	padding-left:1em;
	display:none;
}

.dot_list li {
    padding-left: 1em;
    text-indent: -1em;
}

@media (max-width: 768px) {

div.scr {
   	overflow-x: auto;
	padding-bottom:10px;
}

div.scr > table {
	width:660px;
	margin-top:5px;
}

p.sp_kome {
	display:block;
}

}

/* ----- 注釈エリア ----- */

div.annotation {
	background-color:#f7f7f7;
	border:1px solid #ddd;
	padding:15px;
	box-sizing:border-box;
}