@charset "UTF-8";

/* kojin05Menu12 */
li.kojin05Menu12 > a:before {
	content: "";
	width: 38px;
	height: 38px;
	background: url(/common/images/ico_resonaplus01.svg) 0 0 no-repeat;
	background-size: contain;
	background-position: center center;
}
.navDropLink > dl > dd > ul > li.kojin05Menu12 > a:hover:before {
	background-image: url(/common/images/ico_resonaplus02.svg);
	background-position: center center;
}

/* icoTxtBlock01 */
.icoTxtBlock01 .icoItem {
	text-align: center;
}
.icoTxtBlock01 .icoItem img {
	width: 120px;
}

/* icoTxtBlock02 */
.icoTxtBlock02 {
	display: flex;
	align-items: center;
	width: 880px;
	margin: 0 auto;
}
.icoTxtBlock02 .icoItem {
	width: 80px;
}
.icoTxtBlock02 .txtItem {
	width: calc(100% - 100px);
	margin-left: 20px;
}

/* decorationLeadTxt01 */
.decorationLeadTxt01 > span {
	position: relative;
	display: inline-block;
	padding: 15px 35px 0;
	text-align: center;
}
.decorationLeadTxt01 > span:before,
.decorationLeadTxt01 > span:after {
	content: "";
	position: absolute;
	top: 0;
	display: inline-block;
	width: 27px;
	height: 26px;

}
.decorationLeadTxt01 > span:before {
	left: 0;
	background: url(/kojin/hiraku/images/index_icon_34.png) 0 0 no-repeat;
	background-size: 100% 100%;
}
.decorationLeadTxt01 > span:after {
	right: 0;
	background: url(/kojin/hiraku/images/index_icon_35.png) 0 0 no-repeat;
	background-size: 100% 100%;
}

/* cardBlockA01 typeHiraku */
.cardBlockA01.typeHiraku {
	position: relative;
	width: 100%;
	background: #fff0f1;
	margin: 0 auto;
	padding: 45px 30px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
	box-sizing: border-box;
}
.cardBlockA01.typeHiraku.beforeBlowout01 {
	margin-top: 50px;
}
.cardBlockA01.typeHiraku.beforeBlowout01:before {
	content: "";
	display: block;
	position: absolute;
	top: -20px;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -21px;
	border-style: solid;
	border-width: 0 21px 20px 21px;
	border-color: transparent transparent #fff0f1 transparent;
}
.cardBlockA01.typeHiraku.hasFlag .labelFlag01 {
	position: absolute;
	top: 0;
	left: 0;
}
.cardBlockA01.typeHiraku > .title {
	margin-bottom: 28px;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
	font-size: 1.11em;
}
.cardBlockA01.typeHiraku.hasFlag > .title {
	padding: 0 115px;
}
.cardBlockA01.typeHiraku .campaignTxtImg01 {
	margin-top: 20px;
	text-align: center;
}
.cardBlockA01.typeHiraku .campaignTxtImg01 img {
	width: 294px;
}
.cardBlockA01.typeHiraku .campaignLogoImg01 {
	margin-top: 20px;
	text-align: center;
}
.cardBlockA01.typeHiraku .campaignLogoImg01 img {
	width: 400px;
}
.cardBlockA01.typeHiraku > .detail {
	position: relative;
	background: #fff;
	margin-top: 20px;
	padding: 30px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
}

@media screen and (max-width: 767px) {
	/* kojin05Menu12 */
	#drawerMenu .spDrawerMenu .firstHierarchy .secondHierarchy .thirdHierarchy > li.kojin05Menu12 > a:before {
		width: 18px;
		height: 18px;
		left: 18px;
	}

	/* icoTxtBlock02 */
	.icoTxtBlock02 {
		width: 100%;
	}
	#wrap *[class*="layoutColumn"] > *.icoTxtBlock02 {
		margin-top: 18px !important;
	}
	#wrap *[class*="layoutColumn"] > *.icoTxtBlock02:first-child {
		margin-top: 0 !important;
	}
	.icoTxtBlock02 .txtItem {
		width: calc(100% - 90px);
		margin-left: 10px;
	}

	/* cardBlockA01 typeHiraku */
	.cardBlockA01.typeHiraku {
		width: 100%;
		padding: 25px 12px;
	}
	.cardBlockA01.typeHiraku.beforeBlowout01 {
		margin-top: 30px;
	}
	.cardBlockA01.typeHiraku.beforeBlowout01:before {
		content: "";
		display: block;
		position: absolute;
		top: -15px;
		margin-left: -18px;
		border-style: solid;
		border-width: 0 18px 15px 18px;
	}
	.cardBlockA01.typeHiraku.hasFlag .labelFlag01 {
		width: 72px;
	}
	.cardBlockA01.typeHiraku > .title {
		margin-bottom: 22px;
		font-size: 1.125em;
	}
	.cardBlockA01.typeHiraku.hasFlag > .title {
		padding: 0 30px;
	}
	.cardBlockA01.typeHiraku .campaignTxtImg01 img {
		width: 100%;
	}
	.cardBlockA01.typeHiraku .campaignLogoImg01 img {
		width: 100%;
	}
	.cardBlockA01.typeHiraku > .detail {
		padding: 20px 12px;
	}
}
