@charset "utf-8";
/************************************************
 Reset
*************************************************/
/*


/************************************************************************************
全横幅共通
*************************************************************************************/

p, li, dt, dd, th, td, pre {/*2019年リニューアルで、変更したものの、このcssの制御するページでは、リニューアル前の状態に戻している。*/
    line-break: strict;
    word-break: normal;/*オンライン本体は　break-word;　に変更している*/
    list-style: none;
}
ol {
    margin: 0 0 15px 30px;
}
ol li {
    list-style-position: outside;
    list-style-type: decimal;
    padding-left: 10px;
    overflow: visible;
}

.main_underlayers_inner_2column {
	margin: 0px 20px 45px 20px!important;
}
.main_underlayers_inner_2column p {
	
    margin-bottom: 15px;
    font-size: 1.8rem;
    line-height: 1.6;
}
.main_underlayers_inner {
    position: relative;
	padding:20px;
}

.section {
	margin-bottom: 30px;
	display: block;
	clear: both;
}
.date_text {
    text-align:right;
    margin:1em 0;
}
.index_link_block {
    clear:both;
    border:1px solid #ccc;
}
.index_link_block .section_link {
    margin-top:1em;
}
.index_link_block ul,
.index_link_block ol {
	margin:0 10px 20px 50px;
}
.index_link_block ul li,
.index_link_block ol li {
    padding-bottom:5px;
	padding-left:0;
}
.index_link_block ul.column_link.list_style_disk li::before {
	background-image:none;
	}

.index_link_block .mark_labelA {
    margin-left:1em;
}

.index_link_block ul.column_link.list_style_disk li {
	padding-left:0;
		font-size:100%;
	margin: 0;
	}
.index_link_block p.url {
	margin:20px 10px;
	font-size:137.5%;
}
.index_link_block p {
	margin-top: 10px;
	margin-right: 10px;
	margin-left: 10px;
	margin-bottom: 10px;
}

.index_link_block h2.index_link_title {
    border-bottom:1px solid #ccc;
	border-left:none;
    font-weight:normal;
    font-size:1.0em;
    padding:7px 15px;
    background:#f4f4f4;
	margin:0;
	color:#333333;
}
p {
	margin: 0 0 15px;
	line-height: 1.8em;
    /*text-align:justify; inliene_centerが効かなくなる元凶だったのでコメントアウトしています*/
}

.main_underlayers_inner p a {
	padding-left:1.6rem;
}



section {
    margin-bottom:2em;
}
.title_block {
    border-top: 5px solid #050c8a;
    border-bottom: 5px solid #050c8a;
    padding:0.75em 0;
    margin-bottom:1em;
}
.title_block.column {
    padding:0;
    border-bottom:none;
}
.title_block h2.section_title {
    background-color: #fff;
    color: #333;
    font-size: 150.0%;
    margin:0;
    padding: 0;
	border-left:none;
}
.title_block .section_title {
    font-size:1.5em;
}
.title_block p {
    margin-bottom:0;
}
.section_sub_title {
    color: #050c8a;
    font-size:1.25em;
    margin:1em 0;
}
h2.section_sub_title,
.case_block h2.case_title {
	background-color: #fff;
	color:#333333;
	}
dl dt {
    font-weight:bold;
}
dl dd {
    margin-left:20px;
    margin-bottom:1em;
}
ul.list_style_disk {

    list-style-position:outside;
    margin: 10px 0 10px 30px;
    padding-left:0;
}
ul.list_style_disk li {
    margin-left:0;
    padding-left:1.6rem;
	    list-style-type:disc;
}
/* ============================
		topsDivision
 ============================ */

.topsDivision {
background-color: #050c88;
padding: 25px 20px 13px 20px;
border-bottom: 16px solid #efefef;
}

.topsDivision h1 {
font-size: 2.3rem;
font-weight: bold;
line-height: 1em;
color: #fff;
margin-bottom: 15px;
}

.topsDivision .body {
font-size: 1.4rem;
color: #fff;
line-height: 1.5em;
}


/* for PC */
@media screen and (min-width: 961) {

		.topsDivision {
		padding: 35px 32px;
		border-bottom: none;
		margin-bottom: 25px;
		}

		.topsDivision h1 {
		font-size: 3.5rem;
		margin-bottom: 25px;
		}

		.topsDivision .body {
		font-size: 1.6rem;
		line-height: 1.0em;
		}

}

/************************************************
2列のテーブル
*************************************************/
table.yoko_two {
    border: 1px solid #ccc;
}

table.yoko_two caption {
	margin: 1em 0;
	background-color: #F7DFB8;
    font-weight: bold;
	}
table.yoko_two th {
    width: 20%;
    padding: 10px;
    text-align: center;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
table.yoko_two td {
    width: 80%;
    text-align: left;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

}
table.yoko_two tr:last-child td{
  border-bottom: none;
}
table.yoko_two tr td:last-child{
  border-right: none;
}

.index_link_block li a::after,
.index_link_block li a::before,
p.toIndex a::after,
p.toIndex a::before
{content:none;}

.index_link_block a {
color: #006fff;
background-image: url("../module/common/images/mark009.svg");
background-repeat: no-repeat;
background-position: 15px center;
background-size: auto 16px;
padding-left: 30px;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
}

/* 768px以下の記述
------------------*/
@media screen and (max-width:768px){
table.yoko_two {
}
table.yoko_two td {
    padding: 5px;
}
}
/************************************************
3列のテーブル
*************************************************/
table.yoko_three {
    border: 1px solid #ccc;
}


table.yoko_three caption {
	margin: 1em 0;
    background-color: #F7DFB8;
    font-weight: bold;
}
table.yoko_three td {
    width: 33%;
    text-align: center;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
table.yoko_three tr:last-child td{
  border-bottom: none;
}
table.yoko_three tr td:last-child{
  border-right: none;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){

}

/* 768px以下の記述
------------------*/
@media screen and (max-width:768px){
table.yoko_three {
}
table.yoko_three td {
	margin:0.5em auto;
}
}
/************************************************
5列のテーブル
*************************************************/
table.yoko_five {
    border: 1px solid #ccc;
}

table.yoko_five caption {
	margin: 1em 0;
    background-color: #F7DFB8;
    font-weight: bold;
}
table.yoko_five td {
    width: 20%;
    text-align: center;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

}
table.yoko_five tr:last-child td{
  border-bottom: none;
}
table.yoko_five tr td:last-child{
  border-right: none;
}



/* 768px以下の記述
------------------*/
@media screen and (max-width:768px){
table.yoko_five {
}
table.yoko_five td {
    padding: 5px;
    width: 20%;
}
}
/************************************************
7列のテーブル
*************************************************/
table.yoko_seven {
    border: 1px solid #ccc;
}

table.yoko_seven caption {
	margin:0;
    background-color: #F7DFB8;
    font-weight: bold;
}
table.yoko_seven td {
    width: 14%;
    padding: 10px;
    text-align: center;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

}
table.yoko_seven tr:last-child td{
  border-bottom: none;
}
table.yoko_seven tr td:last-child{
  border-right: none;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
}

/* 768px以下の記述
------------------*/
@media screen and (max-width:768px){
table.yoko_seven {
}
table.yoko_seven td {
    padding: 5px;
    width: 14%;
}
}

/************************************************
テーブル風の横並び定義リスト　罫線あり　2列
*************************************************/

dl.table_like {
 margin-bottom: 15px;
}
dl.table_like dt,
dl.table_like dd {
 margin: 0;
 padding: 0;
}
dl.table_like {
 background-color: #333;
 border: 1px solid #999;
 border-top: none;
width:auto;
}
dl.table_like dt {
 color: #fff;
 width: 7em;
 padding: 0.5em;
 border-top: 1px solid #999;
 float: left;
 text-align:center;
}
dl.table_like dd {
 background-color: #FFF;
 margin: 0 0 0 8em;
 padding: 0.5em 1em 0.5em 1em;
 border-top: 1px solid #999;
 border-left: 1px solid #999;
}
/*テーブル風の横並び定義リスト スマホの場合縦組みに変化　罫線あり　2列*/
dl.table_like.tate_sp {
 margin-bottom: 15px;
}
dl.table_like.tate_sp dt,
dl.table_like.tate_sp dd {
 margin: 0;
 padding: 0;
}
dl.table_like.tate_sp {
 background-color: #333;
 border: 1px solid #999;
 border-top: none;
 width:auto;
}
dl.table_like.tate_sp dt {
 color: #fff;
 padding: 0.5em;
 border-top: 1px solid #999;
 float: none;
 text-align:center;
 width:auto;
}
dl.table_like.tate_sp dd {
 background-color: #FFF;
 margin: 0;
 padding: 0.5em;
 border-top: 1px solid #999;
 border-left: 1px solid #999;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){

dl.table_like.tate_sp {
 background-color: #333;
 border: 1px solid #999;
 border-top: none;
 margin:0 0 15px;
/*width:100%;*/
}
dl.table_like.tate_sp dt {
 color: #fff!important;
 width: 7em;
 padding: 0.5em;
 border-top: 1px solid #999;
 float: left!important;
 text-align:center;
}
dl.table_like.tate_sp dd {
 background-color: #FFF;
 margin: 0 0 0 8em;
 /*padding: 0.5em 1em 0.5em 1em;*/
 border-top: 1px solid #999;
 border-left: 1px solid #999;
}
}
.img_center {
    text-align:center;
    margin:2em 0;
}
.contact_block {
    border:1px solid #f1f1f1;
    background:#f6f6f6;
    margin:1em 0;
}
.contact_title {
    font-weight:bold;
    font-size:1.25em;
}
.case_block {
    border-top:1px solid #ccc;
    padding-top:1.5em;
    position:relative;
    margin-bottom:2em;
}
.case_block p:first-child {
    margin-bottom:0;
}
.case_title {
    font-weight:normal;
    font-size:1.5em;
    margin-bottom:1em;
}
.qa_block dt {
    border-top:1px solid #ccc;
    background: url(../images/common/icon_Q.png) no-repeat left 23px;
    padding: 20px 0 0 25px;
}
.qa_block dd {
    background: url(../images/common/icon_A.png) no-repeat left 13px;
    padding: 10px 0 0 25px;
    margin:0 0 20px 0;
}

.article_title {
	font-size:1.75em;
	margin-bottom:0.5em;
	text-align: center;
}
h1.article_title span.h1_small {
	font-size:65%;
}

/*.socialBar ul {
    text-align: center;
  }

.socialBar ul li {
  display: inline;
  padding: 0 0 0 18px !important;
}

.socialBar ul li.facebook iframe {
  width: 150px !important;
}
.socialBar ul li iframe#twitter-widget-0 {
  width: 80px !important;
}
.socialBar ul li iframe.hatena-bookmark-button-frame {
  width: 50px !important;
}
.socialBar ul li::before {
	background:none;	
	}*/

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
/*{
        width:717px;
        float:left;
    }*/

.btn_print {
        position:absolute;
        right:5px;
        top:5px;
    }
	.article_title {
		font-size:2em;
		margin-bottom:0.5em;
		text-align: center;
	}
h1.article_title {
    border-left: none;
	padding-left:0;

}
h1.article_title span.h1_small {
		font-size:75%;
	}
.section p {
		margin: 0 15px 15px;
	}

    .img_right {
    float:right;
    padding:0 0 1em 1em;
    }
    .contact_block {
    padding:1em;
    }
	.contact_block ul {
	margin-bottom:15px;
	}
	.contact_block ul li {
    background-image: none ;
    background-repeat: no-repeat;
	background-position: 0 4px;
	padding-left:18px;
	}
/*.contact_block ul li a {
    padding-left: 1.6rem;
}*/
/*ul li,
ul.link_list_a li {
	background-image:none;
	margin-bottom: 7px;
    padding-left: 18px;
	}*/
		
    .case_block .case_photo {
        position:absolute;
        right:0;
        top:20px;
    }
	#section1,
	#section2,
	#section3,
	#section4,
	#section5,
	#section6,
	#section7,
	#section8,
	#column1_for_anchor,
	#column2_for_anchor,
	#column3_for_anchor,
	#column4_for_anchor,
	#column5_for_anchor,
	#kakomi1_for_anchor,
	#kakomi2_for_anchor,
	#kakomi3_for_anchor,
	#kakomi4_for_anchor,
	#kakomi5_for_anchor {
        margin-top: -81px; /* 固定ナビの高さ分のネガティブマージン */
        padding-top: 81px; /* 打ち消し用のパディング */
    }
}
.contact_block ul.link_list_a li,
ul.link_list_a li {
	background:none;
	}
.pict {
	margin: 0 0 15px;
}
.left {
	float: left;
}
.right {
	float: right;
}
.center {
	text-align: center;
}

/************************************************
 .lead
************************************************/

.section.lead p {
}
.section.lead .pict img {
	width: 100%;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.lead p {
		float: left;
		width: 475px;
	}

.section.lead .pict {
		float: right;
	}
.section.lead .pict img {
		width: 212px;
	}
}

/************************************************
 .sentence
************************************************/

.section.sentence h2 {
	border: 1px solid #d3dee8;
	background: #f6f6f6;
	position: relative;
	font-size: 120%;
	padding: 5px 0 5px 15px;
	width: calc( 100% - 15px );
	margin-bottom: 15px;
}
.section.sentence h2:after {
	content: "";
	background: #cacaca;
	position: absolute;
	left: -1px;
	top: -1px;
	min-height: 39px;
	height: calc( 100% + 2px );
	width: 8px;
	display: block;
}

.section.sentence h3 {
	position: relative;
	font-size: 110%;
	padding: 0 15px 0 15px;
	width: calc( 100% - 30px );
	margin-bottom: 30px;
	border-left: 10px solid #050c8a;
}
/*上下にボーダー2本線のh3見出し（新設）*/

.subheading_block {
  position: relative;
  padding: 1em 0;
  /*margin-bottom: 1em;*/
  clear:both;
	
}
.main_inner .subheading_block h3 {
  position: relative;
  padding: 1em 0;
  border-left: none;
color:#000;	
    background:none;
    margin: 0 0 15px;

	
}
.subheading_block h3::before,
.subheading_block h3::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
	
}
.subheading_block h3::before {
  top: 0;
  border-top: 2px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.subheading_block h3::after {
  bottom: 0;
  border-top: 1px solid #ccc;
  border-bottom: 2px solid #ccc;
}


/*上下にボーダー2本線のh3見出し（新設）ここまで*/


/*下ボーダー（2カラー）のh4見出し（新設）*/
.subheading_block h4 {
  position: relative;
  /*margin-bottom:1em;*/
  padding-bottom: .2em;
  border-bottom: 3px solid #ccc;
  background-color: transparent;
	border-left:none;
}
.subheading_block h4::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 3px;
  background-color: #FBA848;
}

/*下ボーダー（2カラー）のh3見出し（新設）ここまで*/

/*全体を線で囲むh3見出し（新設）*/
.subheading_block2 h3 {
  position: relative;
  padding: 1em 0;
  border-left: none;
	
}
.subheading_block2 h3::before,
.subheading_block2 h3::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
	
}

.subheading_block2 h3 {
color: #fff;/*文字色*/
background-color: #364e96;/*背景色*/
border: solid 3px #364e96;/*線色*/
padding: 0.5em;/*文字周りの余白*/
border-radius: 0.5em;/*角丸*/
}

/*全体を線で囲むh3見出し（新設）ここまで*/


/*左端に三角をつけるh4見出し（新設）*/
.subheading_block2 h4 {
  position:relative;
  top:0;
  left:0;
  padding-left:18px;
  background-color: transparent;
border-left:none;
}
.subheading_block2 h4::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 2px;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 12px solid #FBA848;
}

/*下ボーダー（左端に三角）のh4見出し（新設）ここまで*/

/*吹き出し装飾テキスト（新設）*/
p.fukidashi {
  position: relative;
  padding: 0.6em;
  background: #e0edff;
  font-weight:bold;
}

p.fukidashi:after {
position: absolute;
content: '';
top: 100%;
left: 30px;
border: 15px solid transparent;
border-top: 15px solid #e0edff;
width: 0;
height: 0;
}
/*吹き出し装飾テキスト（新設）ここまで*/

.section.sentence h4 {
	position: relative;
	font-size: 110%;
	padding: 0 15px 0 15px;
	width: calc( 100% - 30px );
	margin-bottom: 15px;
	border-left: 10px solid #cacaca;
}
.section.sentence ul,
ul.link_no,
ul.link_list_a {
	margin: 0 15px 30px 0;
}
.section.sentence ul li,
ul.link_no li {
	margin: 0 0 15px;
	font-size: 90%;
	line-height: 1.6em;
	list-style: outside none none;
	list-style-type: disc;
	position: relative;
}
.section ul.link_list_a li::before {
background:none;	
}
/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.sentence ul {
		margin: 0 0 30px 35px;
	}
}

/************************************************
 .bg01
************************************************/

.section.bg01 {
	border: 1px solid #d3dee8;
	position: relative;
}
.section.bg01:after {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	width: calc( 100% - 10px );
	height: calc( 100% - 10px );
	background-image: url(../images/common/h_bg3.jpg);
	z-index: -1;
}
/* 768px以下の記述
------------------*/
@media screen and (max-width:768px){
ul,
.section.sentence ul,
ul.link_no,
ul.link_list_a {
    margin: 0 0 15px;
}
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.bg01:after {
		width: 705px;
	}
}

.section.bg01 h2 {
	position: relative;
	font-size: 110%;
	padding: 15px 15px 10px 30px;
	border-bottom: 1px solid #d3dee8;
}
.section.bg01 h2:after {
	content: "";
	background: #050c8a;
	position: absolute;
	left: 15px;
	top: 15px;
	height: 24px;
	width: 5px;
	display: block;
}




/************************************************
 .pager
************************************************/

.section.pager {
	padding: 20px 0 5px;
	text-align: center;
	border: 1px solid #d3dee8;
}

.section.pager .next_link {
	font-size: 100%;
	display: table;
	text-align: center;
	vertical-align: middle;
	margin: 0 auto;
	margin-bottom: 12px;
	padding: 0 15px;
	font-weight: bold;
}
.section.pager .next_link span {
	font-size: 76%;
	margin-right: 15px;
}

.section.pager .page_link {
	margin: 10px auto;
	display: table;
	padding: 0 10px;
}
.section.pager .page_link ul {
	display: table-cell;
}
.section.pager .page_link ul li {
	text-align: center;
	vertical-align: middle;
	float: left;
	margin: 5px 5px 5px;
}

.section.pager .page_link ul li a {
	padding: 10px;
	border: 1px solid #d3dee8;
	display: block;
	line-height: 1em;
	font-size: 80%;
}
.section.pager .page_link ul li.here a,
.section.pager .page_link ul li a:hover {
	text-decoration: none;
	background-color: #e9f6ff;
}
.section.pager .page_link ul li.digest a {
	background: #00a0d5;
	color: #fff;
	padding: 10px 20px;
}
.section.pager .page_link ul li.before a {
	background-color: #0066ff;
	color: #fff;
	padding: 10px 15px;
}
.section.pager .page_link ul li.before a img {
	margin: 2px 8px 0 0;
}

.section.pager .page_link ul li.next a {
	background-color: #0066ff;
	color: #fff;
	padding: 10px 15px;
}
.section.pager .page_link ul li.next a img {
	margin: 2px 0 0 8px;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.pager {
		padding: 25px 0 15px;
	}

.section.pager .next_link {
		margin-bottom: 15px;
	}
}


/************************************************
 .link_list
************************************************/

.link_list {
	margin: 15px 0 30px;
	display: block;
}

.link_list h2 {
	position: relative;
	font-size: 100%;
	padding: 0 0 3px 12px;
	border-bottom: 1px solid #d3dee8;
}
.link_list h2:after {
	content: "";
	background: #050c8a;
	position: absolute;
	left: 0;
	top: 0;
	height: 22px;
	width: 4px;
	display: block;
}
.link_list ul {
	margin: 10px 0;
}

.link_list ul li a {
	line-height: 1.8em;
	position: relative;
	padding: 2px 15px 2px 28px;
	font-size: 90%;
	display: block;
}
.link_list ul li a:before {
	content: "";
	background-image: url(../images/common/ico_arrow03.png);
	background-repeat: no-repeat;
	position: absolute;
	top: 10px;
	left: 14px;
	width: 20px;
	height: 20px;
	display: block;
}




/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
}


/************************************************
 .index
************************************************/

.section.index ul {
	margin: 10px 20px;
}
.section.index ul li h3 {
	line-height: 1.4em;
	position: relative;
	padding: 3px 5px 2px;
	font-size: 100%;
	display: block;
}
.section.index ul li p {
	line-height: 1.4em;
	padding-left: 20px;
	font-size: 80%;
}
.section.index .digest {
	margin: 10px 25px 15px;
	font-size: 100%;
	font-weight: bold;
}

/************************************************
 .message
************************************************/

.section.message {
	margin: 15px 20px;
}
.section.message h3 {
	font-size: 100%;
	margin-bottom: 12px;
}
.section.message .sub {
	margin: 0 5px 15px;
}
.section.message .sub .label {
	margin: 0 15px 15px;
}
.section.message .sub .pict {
	margin: 0 15px 15px;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.message {
		position: relative;
	}
.section.message {
		margin: 15px 0 30px 30px;
		width: 445px;
		z-index: 100;
		position: relative;
	}
.section.message h3 {
		margin: 0 0 15px;
	}
.section.message h3 span {
		display: block;
	}
.section.message p {
		height: 160px;
		overflow: auto;
		margin: 0;
	}

.section.message .sub {
		position: absolute;
		top: 75px;
		right: 30px;
		width: 300px;
		text-align: right;
	}
.section.message .sub .label {
		font-size: 80%;
		margin: 0 0 10px;
	}
.section.message .sub .pict {
		margin: 0;
	}
}

/************************************************
 .checklist
************************************************/

.section.checklist ul {
	margin: 10px 20px 15px;
}
.section.checklist ul li {
	line-height: 1.8em;
	position: relative;
	padding: 2px 15px 2px 28px;
}
.section.checklist ul li:before {
	content: "";
	background-image: url(../images/common/ico_square.png);
	background-repeat: no-repeat;
	position: absolute;
	top: 7px;
	left: 5px;
	width: 20px;
	height: 20px;
	display: block;
}
.section.checklist ul li h3 {
	font-size: 90%;
}
.section.checklist ul li p {
	font-size: 80%;
	margin: 0;
}

/************************************************
 .guide
************************************************/

.section.guide {
	margin: 15px 20px;
}
.section.guide .sub {
	margin: 0 5px 15px;
}
.section.guide .sub .pict {
	margin: 0 15px 15px;
}

/* 768px以上の記述
------------------*/
@media screen and (min-width:768px){
.section.guide {
		position: relative;
	}
.section.guide {
		margin: 15px 0 30px 30px;
		width: 500px;
		height: 200px;
		z-index: 100;
		position: relative;
	}
.section.guide p {
		height: 200px;
		overflow: auto;
		margin: 0;
	}

.section.guide .sub {
		position: absolute;
		top: 75px;
		right: 30px;
		width: 140px;
		text-align: right;
	}
.section.guide .sub .pict {
		margin: 0;
	}
}







.detailsBox02 h4.substitute01 span {
	display: none;
}



/* 768px以下の記述
------------------*/
@media screen and (max-width:767px){

	h4.substitute01 {
		width: auto;
		padding: 1em 0 1em 0.5em;
		background-color: #8C5800;
		clear: both;
	}
	h4.substitute01 span {
		display: block!important;
		font-weight: bold;
		color: #fff;
		text-align: left;
	}
	h4.substitute01 img {
		display: none;
	}
    .btn_print {
        display:none;
    }
    .contact_block {
        padding:1em;
        text-align:left;
    }
	.contact_block ul {
		margin-bottom:15px;
	}
	.contact_block ul li {
    /*background-image: url(../images/common/ico_arrow08.png);*/
    background-repeat: no-repeat;
	background-position: 0 4px;
	padding-left:18px;
	}
/*	.contact_block ul li a {
	background-image:none;
	padding-left:1.6rem;
	}*/
	#section1,
	#section2,
	#section3,
	#section4,
	#section5,
	#section6,
	#section7,
	#section8,
	#column1_for_anchor,
	#column2_for_anchor,
	#column3_for_anchor,
	#column4_for_anchor,
	#kakomi1_for_anchor,
	#kakomi2_for_anchor,
	#kakomi3_for_anchor,
	#kakomi4_for_anchor {
        margin-top: -81px; /* 固定ナビの高さ分のネガティブマージン */
        padding-top: 81px; /* 打ち消し用のパディング */
    }
}


h2.sub_category_title span {
    font-size: 60%;
    position: static;
    right: 10px;
    top: 14px;	
}

/************************************************
 PC版で右寄せ、スマホ版で下に移動しセンタリング
************************************************/

.imgOnOf {
    float: none;
    text-align: center;
    width: auto;
}

/* 768px以上の記述
------------------*/
@media print, screen and (min-width:768px){/*←左メディアクエリの記述については、印刷時も右寄せが適用させる記述にしています。*/

.imgOnOf {
    float: right;
    margin: 0 2% 0;
}
}

/************************************************
 PC版で左から5個横並び、スマホ版で2列横並び　1個は横幅150px以上で用意すること
************************************************/
/* 768px以上の記述
------------------*/
@media print, screen and (min-width:768px){/*←左メディアクエリの記述については、印刷時も右寄せが適用させる記述にしています。*/
.section.sentence .side_by_side5 {
    margin-bottom: 1.5%;
}

.section.sentence .side_by_side5 ul{
    list-style: inside none none;
	margin:0;
}
.section.sentence .side_by_side5 ul li {
    display: inline;
    float: left;
	margin:0;
    padding: 1.5%;
    width: 17.0%;
}
}
/* 768px以下の記述
------------------*/
@media only screen and (max-width:767px){/*←左メディアクエリの記述については、印刷時は適用させないようにする記述にしています。*/
.section.sentence .side_by_side5 {
    margin-bottom: 1.5%;
}

.section.sentence .side_by_side5 ul{
    list-style: inside none none;
}
.section.sentence .side_by_side5 ul li {
    display: inline;
    float: left;
	margin:0;
    padding: 2.5%;
    width: 45.0%;
}
}

/************************************************
 .lr　左右並列、スマホ時は縦並びに変更
************************************************/
.lr .l_block {
	width:100%;
}

.lr .r_block {
	width:100%;
}

/* 768px以下の記述
------------------*/
@media only screen and (max-width:767px){/*←左メディアクエリの記述については、印刷時は適用させないようにする記述にしています。*/
	.lr {
		padding:15px 15px 0;
	}	
	.lr .l_block {
		display: block;
		margin-bottom:15px;
	}
	.lr .r_block {
		display: block;
	}
.lr h5 {
    margin: 30px 0 15px;
    padding: 0 10px;
}
	.lr p img {
	width:100%;
	}
}

/* 768px以上の記述
------------------*/
@media print, screen and (min-width:768px){/*←左メディアクエリの記述については、印刷時も右寄せが適用させる記述にしています。*/
	.lr {
		clear: both;
		margin: 0 0 12px;
		padding:0;
	}

	.lr .l_block {
		float: left;
	}
	.lr .r_block {
		float: right;
	}

	.lr .l_block {
		margin-bottom:15px;
		width: 50%;
	}
	
	.lr .r_block {
		margin-bottom:15px;
		width: 50%;
	}


}

/************************************************
 .lr_80　左右並列、スマホ時は縦並びに変更　幅80％バージョン
************************************************/
.lr_80 .l_block {
	width:80%;
	margin:30px auto 15px;
}

.lr_80 .r_block {
	width:80%;
	margin:30px auto 15px;
}

/* 768px以下の記述
------------------*/
@media only screen and (max-width:767px){/*←左メディアクエリの記述については、印刷時は適用させないようにする記述にしています。*/
	.lr_80 {
		padding:15px auto 0;
	}	
	.lr_80 .l_block {
		display: block;
		margin-bottom:15px;
	}
	.lr_80 .r_block {
		display: block;
	}
.lr_80 h5 {
    margin: 30px 0 15px;
    padding: 0 10px;
}
	.lr_80 p img {
	width:80%;
	}
}

/* 768px以上の記述
------------------*/
@media print, screen and (min-width:768px){/*←左メディアクエリの記述については、印刷時も右寄せが適用させる記述にしています。*/
	.lr_80 {
		clear: both;
		margin: 0 0 12px;
		padding:0;
	}

	.lr_80 .l_block {
		float: left;
	}
	.lr_80 .r_block {
		float: right;
	}

	.lr_80 .l_block {
		margin:30px 5% 15px;
		width: 40%;
	}
	
	.lr_80 .r_block {
		margin:30px 5% 15px;
		width: 40%;
	}


}

/************************************************
 .three_block　左中右の3列並列、スマホ時は縦並びに変更
************************************************/

.three_block {
	margin:0 auto 15px;
}
.three_block .piece {
	display:inline-block;
	width:32%;
	margin:0 1% 2% 0;
}
.three_block .piece:nth-of-type(3n) {/*3の倍数（右端）の要素の時のみ右マージンを0とする。*/
	margin-right:0;
}

/* 768px以下の記述
------------------*/
@media only screen and (max-width:768px){/*←左メディアクエリの記述については、印刷時は適用させないようにする記述にしています。*/
.three_block .piece {
	width:100%;
	margin:0 0 2%;
	text-align:center;
}

}

/************************************************
.pc80等　PC、スマホともに縦並びかつ真ん中合わせで表示し、PC表示では横幅80％等、スマホ表示では横幅100％表示
************************************************/

/* 768px以上の記述
------------------*/

.pc90 {
		margin:15px auto 0!important;
		display: block;
		width:90%;
	}
.pc80 {
		margin:15px auto 0!important;
		display: block;
		width:80%;
	}
.pc70 {
		margin:15px auto 0!important;
		display: block;
		width:70%;
	}	
		
.pc60
 {
		margin:15px auto 0!important;
		display: block;
		width:60%;
	}	
	
.pc50 {
		margin:15px auto 0!important;
		display: block;
		width:50%;
	}
.pc48 {
		margin:15px auto 0!important;
		display: block;
		width:48%;
	}
.pc45 {
		margin:15px auto 0!important;
		display: block;
		width:45%;
	}		
.pc40 {
		margin:15px auto 0!important;
		display: block;
		width:40%;
	}
.pc30 {
		margin:15px auto 0!important;
		display: block;
		width:30%;
	}
.pc20 {
		margin:15px auto 0!important;
		display: block;
		width:20%;
	}
.pc10 {
		margin:15px auto 0!important;
		display: block;
		width:10%;
	}	
	

/* 768px以下の記述
------------------*/
@media screen and (max-width:767px), print{
.pc90,
.pc80,
.pc70,
.pc60,
.pc50,
.pc48,
.pc45,
.pc40,
.pc30,
.pc20,
.pc10 {
width:100%;
	}	
}

/************************************************
PC表示のみ字下げ（1行目＆2行目以降も全て）、スマホ表示では字下げなし。ブロックレベル要素に適用。
************************************************/
/*　.onlypc_1indent　PC表示では（1行目＆2行目以降も全て）1字下げ、スマホ表示では字下げなし　*/

/* 768px以上の記述
------------------*/
@media only screen and (min-width:768px){
.onlypc_1indent {
		margin-left:1em;
	}
}
/*　.onlypc_2indent　PC表示では（1行目＆2行目以降も全て）2字下げ、スマホ表示では字下げなし　*/

/* 768px以上の記述
------------------*/
@media only screen and (min-width:768px){
.onlypc_2indent {
		margin-left:2em;
	}
}
/*　.onlypc_3indent　PC表示では（1行目＆2行目以降も全て）3字下げ、スマホ表示では字下げなし　*/

/* 768px以上の記述
------------------*/
@media only screen and (min-width:768px){
.onlypc_3indent {
		margin-left:3em;
	}
}
/*　.onlypc_4indent　PC表示では（1行目＆2行目以降も全て）4字下げ、スマホ表示では字下げなし　*/

/* 768px以上の記述
------------------*/
@media only screen and (min-width:768px){
.onlypc_4indent {
		margin-left:4em;
	}
}
@media only screen and (min-width:768px){
.onlypc_5indent {
		margin-left:5em;
	}
}
/************************************************
 キャプション用
************************************************/

.img_caption {
	width: 80%;
	margin:0 auto;
	font-size: 90%;
}

/* 768px以下の記述
------------------*/
@media screen and (max-width:767px){
	.img_caption {
	width: 100%;
	}
}

/************************************************
 囲み .bg02　グレー
************************************************/

.section.bg02 {
    padding: 15px;
	background: repeating-linear-gradient(-45deg, #eff0f2, #eff0f2 2px, #fff 0, #fff 3px);
	border: 1px solid #d3dee8;
	width:inherit;
	margin-top: 0;
    padding-top: 15px;
    margin-bottom: 20px;
    position: relative;
    z-index: 0;
}

.section.bg02::after {
    width: 677px;
}

.section.bg02::after {
    border: 4px solid #fff;
    content: "";
    height: calc(100% - 8px);
    left: 0;
    position: absolute;
    top: 0;
    width: calc(100% - 8px);
    z-index: -1;
	font-size:100%;
}

.section.bg02 .title_block.column p.mark_labelA {
	margin:0 15px 15px 0;
}
.section.bg02 .title_block.column {
	border-bottom: 1px solid #ccc;
}
.section.bg02 .title_block.column {
	background-color:#fff;
}
.section.bg02 .title_block.column h2.section_title {
	font-size: 1.5em;
	padding-left: 15px;
}

h3.section_subtitle {
	border-left: none;
	border-bottom: none;
    background: #f0f0f0 none repeat scroll 0 0;
    font-weight: bold;
	font-size: 112.5%;
    margin: 0 0 15px;
    padding: 8px;
	line-height: 1.2;
}
h3.section_subtitle span {
    border-left: 5px solid #050c8a;
    display: block;
    padding: 0 0 0 8px;
}
h3.border_left,
.section.bg02 h3 {
    border-bottom: 1px dotted #cccccc;
    /*color: #666666;*/
    font-size: 125.0%;
	margin: 0 15px 15px;
    padding: 0 0 6px 11px;
    position: relative;
	border-left:none;
}
h3.border_left {
	margin: 0 0 15px;
}
/*h3.border_left::before,
.section.bg02 h3::before {
    border-left: 5px solid #050c8a;
    content: "";
    display: inline-block;
    height: 20px;
    left: 2px;
    position: absolute;
    top: 2px;
}
*/
/************************************************
定義リスト　（囲み .bg02　グレー　内）
************************************************/

dl,
dl {
margin: 0 15px 15px;
}
dl dt,
dl dt {
	color:#050c8a;
	font-weight:normal;
}
dl.onlypc_yoko dt {
   float:left;
   width:6em;	}

dl dd,
dl dd {
	margin:0 0 15px;
}

dl.onlypc_yoko dd {
   margin-left:0;
   padding-left:6em;
	}

hr.arrow_flow-next {
    background: rgba(0, 0, 0, 0)  url(../images/common/icon_arrow_flow-next.png) repeat scroll 0 0 / contain ;
    border: medium none;
    height: 20px;
    margin: 0 auto 15px;
    padding: 0;
    width: 51px;
}
@media only screen and (max-width:767px){
h3.section_subtitle {
    font-weight: normal;
	font-size: 100.0%;
    margin: 0 0 10px;
	}


.section.bg02 h3 {
    font-size: 112.5%;
	margin: 0 0 15px;
}
.section.bg02 h3::before {
    height: 18px;

    position: absolute;
}
dl,
dl {
margin: 0 0 15px;
font-size: 90%;
line-height: 1.2;
}
dl.onlypc_yoko dt {
   float:none;
   width:100%;	}

dl.onlypc_yoko dd {
	margin:0 0 15px;
	padding-left:0;
}
}
.section.bg02 ul.checkbox li {
    background-image: url("../img/common/li_checkbox.gif");
	background-attachment: scroll;
	background-position:15px 14px;
	background-repeat:no-repeat;
    padding: 10px 0 0 30px;
	font-size: 100%;
	margin:0;
}
.section.bg02 ul.checkbox li::before {
    background-image:none;
}

/*下部1行アキ*/
.bottom_one_l {
margin-bottom:1em;	
}



/************************************************
プラスマーク 
*************************************************/
/*縦 */
.plus {
	margin: 1em auto;
	font-size: 20px;
	position: relative;
	width: 0.4em;
	height: 1.6em;
	background-color: #b3b3b3;
}
/*横 */
.plus::before {
	position: absolute;
	top: 0.6em;
	left: -0.6em;
	width: 1.6em;
	height: 0.4em;
	content: "";
	background-color: #b3b3b3;
}

/************************************************
下向き三角（矢印）マーク 
*************************************************/
.arrow_down {
width: 0;
height: 0;
border-style: solid;
border-width: 40px 40px 0 40px;
border-color: #b3b3b3 transparent transparent transparent;
line-height: 0px;
_border-color: #b3b3b3 #000000 #000000 #000000;
_filter: progid:DXImageTransform.Microsoft.Chroma(color='#000000');
margin:1em auto!important;
}




/************************************************
その他 
*************************************************/


h3.mark_labelA {
    display:inline-block;
    background:#00a0d5;
    padding:4px 15px;
    color:#fff;
    font-weight: normal;
	border:none;
	font-size:1.4rem;
	border-left:none;
}
/************************************************************************************
-768 大雑把にSP以下
*************************************************************************************/
@media screen and (max-width:768px) {
	.main_underlayers_inner {
    padding: 0 0 20px;
		}
	.main_underlayers_inner_2column {
    margin: 0!important;

}
}

/************************************************************************************
769- 大雑把にTB以上　PC
*************************************************************************************/
@media screen and (min-width:769px) {}