@charset "utf-8";

/*--------------------------------------------------------------------
	common
--------------------------------------------------------------------*/

#contents a         { color: #003122; }
#contents a:link    { color: #003122; }
#contents a:visited { color: #003122; }
#contents a:hover   { color: #003122; }
#contents a:active  { color: #003122; }

@media screen and (max-width: 767px) {

#campaign .mainArticleWrap {
	font-size: 1.0em;
}

.p-index #wrapper {
	padding-top: 0;
	margin-top: 0;
}

.mainArchiveHeadCountWrap02 {
	margin: 10px 0 0;
}

}

/*--------------------------------------------------------------------
	layoutMain
--------------------------------------------------------------------*/

.layoutMain {
	width: 750px;
	float: left;
}

.layoutMainInnerWrap {
	border: 1px solid #9D9D9D;
}

.layoutMainInnerWrapVisual img {
	max-width: 100%;
	height: auto;
}

.layoutMainInnerWrapContainer {
	padding: 15px;
}

.mainList li {
	padding: 0 0 60px;
}

.p-entry .mainList > li:last-child {
	border-bottom: none;
}

.mainListSmallBtn a {
	background-color: #F2F2F2 !important;
}

.mainListTitle {
	background: url("../../../common/images/common/bg_title01b.png") right center no-repeat,url("../../../common/images/common/bg_title01a.png") left center no-repeat;
}

.mainListTag {
	background-image: url("../../../common/images/common/icon_tag03.png");
}

@media screen and (max-width: 1024px) {


}

@media screen and (min-width: 960px) and (max-width: 1024px) {

.layoutMain {
	width: 100%;
	float: left;
	margin-right: -270px;
}

.layoutMainInner {
	margin-right: 270px;
}

}

@media screen and (max-width: 959px) {

.layoutMain {
	width: auto;
	float: none;
}

}

@media screen and (min-width: 768px) and (max-width: 959px) {

}

@media screen and (max-width: 767px) {

.p-index .layoutMainInnerWrap {
	border: none
}

.layoutMainInnerWrapContainer {
	padding: 10px;
}

.indexArticleListBox {
	padding: 10px;
	border: 1px solid #9D9D9D;
}

.indexArticleListBox ul li:last-child {
	margin-bottom: 0;
}

.p-index .layoutMainInnerWrapContainer {
	padding: 0;
}

.mainList li {
	padding: 0 0 25px;
}

}


/*--------------------------------------------------------------------
	layoutSide
--------------------------------------------------------------------*/

.layoutSide {
	width: 330px;
	float: right;
}

.layoutSideOrder {
	margin: 0;
	padding: 0;
	list-style: none;
}

.sideCategoryList {
	border-left: 1px solid #D9D9D9;
	border-right: 1px solid #D9D9D9;
	border-bottom: 1px solid #D9D9D9;
}

.sideCategoryList > li a {
	border-bottom: 1px dotted #D9D9D9;
	display: block;
}

.sideCategoryList > li:nth-child(1) a { padding: 12px 10px 12px 20px; }
.sideCategoryList > li:nth-child(2) a { padding: 14px 10px 14px 20px; }
.sideCategoryList > li:nth-child(3) a { padding: 10px 10px 10px 20px; }
.sideCategoryList > li:nth-child(4) a { padding: 12px 10px 12px 20px; }
.sideCategoryList > li:nth-child(5) a { padding: 12px 10px 12px 20px; }
.sideCategoryList > li:nth-child(6) a { padding: 9px 10px 9px 20px; }

.sideCategoryList > li:last-child a {
	border-bottom: none;
}

.sideCategoryTitle a {
	background-color: #005B40;
}

.sideTag {
	padding: 0 5px;
	margin-top: 15px;
}

.sideTag > dt {
	font-weight: bold;
	padding-bottom: 5px;
}

.sideTag > dd {
	padding-bottom: 15px;
	line-height: 1.4em;
}

.sideTag > dd:last-child {
	padding-bottom: 0;
}

@media screen and (max-width: 959px) {

.layoutSide {
	width: auto;
	float: none;
	margin-top: 20px;
}

.sideCategoryResearch a {
	border: 1px solid #94B31A;
	padding: 10px;
	box-sizing: border-box;
}

}

@media screen and (min-width: 960px) and (max-width: 1024px) {

.layoutSide {
	width: 250px;
	float: right;
	margin-top: 0;
}

}

@media screen and (max-width: 1024px) {

.sideTag > dd {
	padding-bottom: 5px;
}

.sideTag > dd a {
	display: block;
	background-color: #005B40;
	padding: 5px 10px;
	color: #FFF !important;
	text-decoration: none !important;
	float: left;
	margin: 0 10px 10px 0;
}

#contents .sideTag a         { color: #FFF; }
#contents .sideTag a:link    { color: #FFF; }
#contents .sideTag a:visited { color: #FFF; }
#contents .sideTag a:hover   { color: #FFF; }
#contents .sideTag a:active  { color: #FFF; }

}

@media screen and (max-width: 767px) {

.p-index .layoutSide {
	margin-top: 0;
}

.sideCategoryList > li:nth-child(1) a { padding: 9px 7px 9px 10px; }
.sideCategoryList > li:nth-child(2) a { padding: 11px 7px 11px 10px; }
.sideCategoryList > li:nth-child(3) a { padding: 7px 7px 7px 10px; }
.sideCategoryList > li:nth-child(4) a { padding: 9px 7px 9px 10px; }
.sideCategoryList > li:nth-child(5) a { padding: 9px 7px 9px 10px; }
.sideCategoryList > li:nth-child(6) a { padding: 6px 7px 6px 10px; }

.sideCategoryList {
	font-size: 1.0em;
}

.sideTag {
	font-size: 0.9em;
}

.layoutSideOrder {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-direction: column;
}

.layoutSideOrder00 { order: 0; }
.layoutSideOrder01 { order: 1; }
.layoutSideOrder02 { order: 4; }
.layoutSideOrder03 { order: 5; }
.layoutSideOrder04 { order: 3; }
.layoutSideOrder05 { order: 2; }

}

/*--------------------------------------------------------------------
	index
--------------------------------------------------------------------*/

.indexArticleList {
	position: relative;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}

.indexArticleList > li {
	width: 48.8%;
	margin-bottom: 1em;
	padding-bottom: 40px;
	position: relative;
}

.indexArticleList > li:nth-child(odd) { margin-right: 1.2%; }
.indexArticleList > li:nth-child(even) { margin-left: 1.2%; }

.indexArticleList.listOpen > li { background-color: #D9E7E3; }
.indexArticleList.listClosed > li { background-color: #EDEDED; }

.indexArticleListVisual {
	position: relative;
	border-bottom: 5px solid #FFF;
}

.indexArticleListVisual img {
	max-width: 100%;
	height: auto;
}

.indexArticleListVisual .tagOriginal {
	width: 89px;
	height: 85px;
	position: absolute;
	top: 0;
	right: 0;
}

.indexArticleListVisual .linkArrow {
	width: 51px;
	height: 51px;
	position: absolute;
	bottom: -28px;
	left: 10px;
}

.indexArticleListVisual .maskClosed,
.photoSetW300 .maskClosed {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.indexArticleListVisual .txtClosed,
.photoSetW300 .txtClosed {
	position: absolute;
	width: 220px;
	height: 80px;
	left: 50%;
	top: 50%;
	margin:  -40px 0 0 -110px;
	background-color: #000000;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	text-align: center;
	font-size: 1.4em;
	line-height: 1.4em;
	box-sizing: border-box;
	padding-top: 12px;
	border: 3px solid #D9E7E3;
	color: #FFF;
}

.indexArticleList.listClosed a:hover {
	opacity: 1.0 !important;
	filter: alpha(opacity=100) !important;
	-ms-filter: "alpha(opacity=100)" !important;
	-moz-opacity: 1.0 !important;
	-khtml-opacity: 1.0 !important;
	transition-property: all;
	transition: 0.2s linear;
	cursor: pointer;
}

.indexArticleListTxt {
	position: relative;
}

.indexArticleList.listOpen .indexArticleListTxt { padding: 40px 10px 10px; }
.indexArticleList.listClosed .indexArticleListTxt { padding: 10px 10px 10px; }

.indexArticleListIcon {
	position: absolute;
	top: 5px;
	right: 0;
}

.indexArticleListTitle {
	font-size: 1.16em;
	font-weight: bold;
	line-height: 1.5em;
	margin-bottom: 0.5em;
	padding: 0 0.2em;
}

.indexArticleListDescription {
	background-color: #FFF;
	padding: 10px;
	margin-bottom: 1em;
}

.indexArticleListDescription p {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.indexArticleListTag {
	padding: 0 0 0 25px;
	font-size: 0.96em;
	background: url("../../../common/images/common/icon_tag03.png") left top no-repeat;
}

.indexArticleListTerm {
	background-color: #3D3D3D;
	color: #FFF;
	text-align: center;
	width: 100%;
	padding: 5px;
	font-size: 0.96em;
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	left: 0;
}

@media screen and (max-width: 767px)  {

.indexArticleListTitle {
	font-size: 1.26em;
}

.indexArticleListDescription {
	font-size: 1.1em;
	line-height: 1.7em;
}

.indexArticleList.listOpen > li {
	width: 100%;
	margin-bottom: 10px;
}

.indexArticleList.listOpen  > li:nth-child(odd) { margin-right: 0; }
.indexArticleList.listOpen  > li:nth-child(even) { margin-left: 0; }

.indexArticleList.listOpen.typeIndex > li:nth-child(n+6) { display: none; }

.indexArticleList.listClosed > li {
	margin-bottom: 0;
}

.indexArticleList.listClosed > li:nth-child(n+3) {
	margin-top: 10px;
}

.indexArticleList.listClosed .indexArticleListTxt { padding: 5px; }

.listClosed .indexArticleListTitle {
	font-size: 0.96em;
	font-weight: normal;
}

.listClosed .indexArticleListVisual {
	border-bottom: 1px solid #FFF;
}

.listClosed .indexArticleListVisual .txtClosed {
	position: absolute;
	width: 120px;
	height: 50px;
	left: 50%;
	top: 50%;
	margin: -25px 0 0 -60px;
	background-color: #000000;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	text-align: center;
	font-size: 0.9em;
	line-height: 1.2em;
	box-sizing: border-box;
	padding-top: 9px;
	border: 2px solid #D9E7E3;
	color: #FFF;
}

.listClosed .indexArticleListTerm {
	font-size: 0.86em;
	padding: 3px;
}

}

@media screen and (max-width: 359px) {

.indexArticleListTitle {
	font-size: 1.16em;
}

.indexArticleListDescription {
	font-size: 1.0em;
}

}

/*--------------------------------------------------------------------
	article
--------------------------------------------------------------------*/

.h1StyleArticle,.hStyle01 {
	padding-left: 10px;
	border-left: 8px solid #0C6349;
}

.h2StyleArticle,.hStyle02 {
	border-bottom: 3px solid #0C6349;
}

.h3StyleArticle,.hStyle03 {
	border-left: 8px solid #0C6349;
}

.h4StyleArticle,.hStyle04 {
	background: url("../../../common/images/common/arrow_green02.png") left top 10px no-repeat;
}

.blockquote01:before{
	color: #0C6349;
}

.mainArticleListTitle {
	background: url("../../../common/images/common/bg_stripe06.png") center top repeat;
}

.mainArticleCampaignWrap {
	border: 1px solid #D7D7D7;
	background-color: #F8F8F8;
	padding: 20px;
	margin-bottom: 1.3em;
}

.mainArticleCampaignWrapBox {
	padding: 1em;
}

.mainArticleCampaignWrap > div:last-child {
	padding: 1em 1em 0;
}

.mainArticleBrokerLogo {
	position: relative;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	margin-left: 0 !important;
	margin-right: 0 !important;
	font-size: 0.86em;
}

.mainArticleBrokerLogo li {
	width: 33.3%;
	padding: 0 0.5em 1em;
	box-sizing: border-box;
	text-align: center;
}

.mainArticleBrokerLogo li img {
	max-width: 100%;
	height: auto;
}

.mainArticleBrokerLogo li p {
	margin-bottom: 0;
	line-height: 1.4em;
}

.mainArticleBrokerLogo li a > p:first-child {
	margin-bottom: 0.5em;
}

@media screen and (max-width: 767px)  {

.h1StyleArticle,.hStyle01 {
	font-size: 1.36em;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.h3StyleArticle,.hStyle03 {
	border-left: 4px solid #005B40;
}

.mainArticleCampaignWrap {
	padding: 10px;
}

.mainArticleBrokerLogo li {
	width: 100%;
	padding: 0 0 1em;
}

}

@media screen and (min-width: 768px) and (max-width: 1024px) {

.mainArticleWrap {
	font-size: 1.26em;
}

}

@media screen and (max-width: 1024px)  {

}


/*--------------------------------------------------------------------
	images common
--------------------------------------------------------------------*/

.photoSetW231 img {
	border-bottom: none;
}