@charset "utf-8";

/* process_block
-------------------------------------------------- */
.process_heading_main {
	background: #FFFBF3;
}
.process_heading_main figure {
	display: flex;
	align-items: center;
}
.process_heading_main .process_ttl {
	padding: 0 0 0 20px;
	font-size: 32px;
	font-weight: bold;
}

@media print, screen and (min-width:768px) {
	.process_heading_main {
		padding: 15px 25px;
	}
	.process_content {
		padding: 25px;
	}
	.process_heading_main figure span img {
		width: 90px;
		height: 90px;
	}
	.process_heading_main .notif_ttl {
		font-size: 36px;
	}
	.process_block .process_block_column:not(:first-child) {
		margin-top:50px;
	}
}

@media screen and (max-width:767px) {
	.process_heading_main {
		padding: 10px 30px;
	}
	.process_heading_main .process_ttl {
		font-size: 22px;
	}
	.process_heading_main figure span img {
		max-width: 62px;
	}
	.process_content {
		padding: 15px 30px;
	}
	.process_block .process_block_column:not(:first-child) {
		margin-top: 25px;
	}
}


/* custom text_borders
-------------------------------------------------- */
.text_bordered .line_marker {
	font-weight: bold;
}

@media print, screen and (min-width:768px) {
	.text_bordered {
	    margin-bottom: 20px;
	}
	.text_bordered .txt_highlight {
		font-size: 22px;
	}
}

@media screen and (max-width:767px) {
	.text_bordered {
	    margin-bottom: 15px;
	}
	.text_bordered .txt_highlight {
		font-size: 18px;
	}
}


/* custom bg colors
-------------------------------------------------- */
.bg_pink {
	background-color: #F1A99D;
}
.bg_white {
	background-color: #fff !important;
}

/* custom text colors
-------------------------------------------------- */
.text_white {
	color: #fff;
}

/* .inquiry_flow_block
-------------------------------------------------- */
.inquiry_flow_heading_main {
	font-weight: bold;
	text-align: center;
}
@media print, screen and (min-width:768px) {
	.inquiry_flow_block {
		margin-top: 50px;
		border-radius: 10px;
	}
	.inquiry_flow_heading_main {
		margin-bottom: 34px;
		font-size: 24px;
	}
	.inquiry_flow_block .inquiry_block_wrap {
		padding: 30px;
	}
}

@media screen and (max-width:767px) {
	.text_bordered .txt_highlight {
		font-size: 18px;
	}
	.inquiry_flow_block .inquiry_block_wrap {
		padding: 30px 20px;
	}
	.inquiry_flow_block {
	    margin-top: 25px;
	}
	.inquiry_flow_heading_main {
		margin-bottom: 16px;
		font-size: 18px;
	}
}

/* stepList
-------------------------------------------------- */
.stepList {
	border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
	.stepList {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		padding: 22px 30px;
	}
	.stepList > .step_column {
		position: relative;
		width: calc((100% - 100px) / 3);
		margin-top: 50px;
		margin-right: 50px;
	}
	.stepList > .step_column .point_ttl_wrap {
    	display: table;
		width: 100%;
	}
	.stepList > .step_column .point_ttl {
    	display: table-cell;
		position: relative;
		vertical-align: middle;
	}
	.stepList > .step_column:not(:last-child) .point_ttl:after {
		content: "";
		position: absolute;
		top: 50%;
		left: 101%;
		transform: translateY(-50%);
		width: 38px;
		height: 14px;
		background: url("/jpn/consumer/energy/process/images/bg_arrow_step.svg") no-repeat;
	}
	.stepList > .step_column:nth-of-type(-n+3) {
		margin-top: 0;
	}
	.stepList > .step_column:nth-of-type(3n) {
		padding-right: 0;
		margin-right: 0;
	}
}

@media screen and (max-width:767px) {
	.stepList {
		padding: 20px;
	}
	.stepList > .step_column:not(:last-child) {
		padding-bottom: 35px;
	}
	.stepList > .step_column:not(:first-child) {
		margin-top: 15px;
	}
	.step_content {
		padding-left: 50px;
	}
	.stepList > .step_column {
		position: relative;
	}
	.stepList > .step_column:not(:last-child):after {
		content: "";
		position: absolute;
		top: 4%;
		width: 6px;
		height: 77%;
		transform: translateX(-50%);
		background: url("/jpn/consumer/energy/process/images/bg_dotted.png") repeat-y;
		left: 17px;
		z-index: 1;
	}
	.stepList > .step_column:not(:last-child):before {
		content: "";
		position: absolute;
		top: 0;
		width: 20px;
		height: 100%;
		background: url("/jpn/consumer/energy/process/images/bg_icon_arrow.png") bottom 10px center no-repeat;
		background-size: contain;
		left: 7px;
		z-index: 1;
	}
	.stepList > .step_column:nth-child(2):after {
		height: 82%;
	}
	.stepList > .step_column:nth-child(2):before {
		content: "";
		position: absolute;
		top: 0;
		left: 7px;
		width: 20px;
		height: 100%;
		background: url("/jpn/consumer/energy/process/images/bg_icon_arrow.png") bottom 0 center no-repeat;
		background-size: contain;
		z-index: 1;
	}
}

/* point_ttl_wrap
-------------------------------------------------- */
.point_ttl_wrap {
	/* display: flex;
	align-items: center; */
	text-align: left;
}
.point_ttl_wrap .point{
	display: inline-block;
	padding: 5px 23px 1px;
	border-radius: 1000px;
}
.color_white {
	color: #fff !important;
}
.point_ttl_wrap .point .ttl_num{
	margin-left: 3px;
	font-weight: normal;
	line-height: 1;
}
.point_ttl_wrap .point_num{
	position: absolute;
    top: 50%;
    left: 0;
	transform: translateY(-50%);
    max-width: 32px;
    width: 64px;
	height: 32px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 20px 0 0;
	border-radius: 1000px;
	font-size: 20px;
	font-weight: normal;
}
.point_ttl_wrap .point_ttl {
	display: block;
	position: relative;
    padding-left: 45px;
	font-weight: bold;
    line-height: 1.75;
    text-align: left;
}
.bg_circle_orange {
	background-color: #FF5514 !important;
}
@media print, screen and (min-width:768px) {
	.point_ttl_wrap {
		margin-bottom: 20px;
		font-size: 18px;
	}
	.point_ttl_wrap .point{
		margin-bottom: 15px;
		font-size: 16px;
	}
	.point_ttl_wrap .point_ttl {
	    padding-left: 40px;
	}
	.point_ttl_wrap .point .ttl_num{
		font-size: 36px;
	}
}

@media screen and (max-width:767px) {
	.point_ttl_wrap {
		margin-bottom: 15px;
		font-size: 18px;
		text-align: center;
		position: relative;
		z-index: 2;
	}
	.point_ttl_wrap .point{
		margin-bottom: 15px;
		font-size: 14px;
	}
	.point_ttl_wrap .point_ttl {
	    padding-left: 50px;
	}
	.point_ttl_wrap .point .ttl_num{
		font-size: 26px;
	}
	.ene_sec .content_fixed_inner {
		padding: 0;
	}
}