@charset "utf-8";

/* life-support
-------------------------------------------------- */
@media print, screen and (min-width:768px) {
}
.ot-sdk-container{
  display: none;
}
.text_white {color: #fff;}
.bg_white{ background-color: #fff; }
.bg_orange{ background-color: #FF5514; }
.bg_yellow{ background-color: #FEF29C; }
.bg_brown{ background-color: #64463C; }

.content_section_inner{
  max-width: 992px;
  margin: 0 auto;
}

.num_btn_wrap .ene_nav_icon img{
  vertical-align: text-bottom;
  margin-right: 15px;
}

.num_btn_link_page .num_btn .icon{
  background-repeat: no-repeat;
  background-size: contain;
  width: 96px;
  height: 40px;
}
.num_btn_link_page .num_btn.btn_num_point .num{
  border: 2px solid #fff;
}

.icon_servise01{
  background-image: url('/jpn/consumer/energy/life-support/images/icon_servise01.png');
}

.icon_servise02{
  background-image: url('/jpn/consumer/energy/life-support/images/icon_servise02.png');
}

.icon_servise03{
  background-image: url('/jpn/consumer/energy/life-support/images/icon_servise03.png');
}

.icon_servise04{
  background-image: url('/jpn/consumer/energy/life-support/images/icon_servise04.png');
}

.num_btn_box{
  background: #FEF29C;
  max-width: 640px;
  margin: 0 auto;
  padding: 50px 0 27px;
  margin-bottom: 52px;
  border-radius: 8px;
}

.num_btn_desc{
  font-size: 24px;
  line-height: 1.4;
  text-align: center;
  font-weight: bold;
}

.num_btn_desc .txt_size_m{
  font-size: 32px;
}
.num_btn_desc .txt_size_l{
  font-size: 50px;
}
.num_btn_desc .txt_size_xl{
  font-size: 56px;
  line-height: 1;
}
.num_btn_desc .txt_size_s{
  font-size: 14px;
}
.num_btn_desc .txt_fw_m{
  font-weight: 500;
}
.num_btn_desc .txt_fw_sb{
  font-weight: 600;
}

.inquiry_flow_block{
  background: #F1A99D;
  border-radius: 16px;
  padding: 33px 24px 23px;
  text-align: center;
}

.inquiry_flow_heading_main{
  color: #fff;
  font-weight: 900;
  font-size: 24px;
  margin-bottom: 54px;
}

.inquiry_flow_box{
  background: #fff;
  border-radius: 8px;
  margin-top: 44px;
  position: relative;
  padding: 40px 50px 28px;
}

.inquiry_flow_box_title{
  border-radius: 40px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  min-width: 288px;
  padding: 6px 10px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -20px;
  color: #fff;
}

@media screen and (min-width:768px) {
  .link_page_ttl{
    margin-bottom: 15px;
  }
 
  .support_list_btn li{
    max-width: 344px;
    margin-bottom: 27px;
  }
  .ene_ttl_main_block {
    margin: 52px 0 29px 17px;
  }
  .ene_sub_desc {
    margin: 0 14px 47px;
    letter-spacing: 0px;
  }
  #sec01{
    margin-bottom: 85px;
  }
  #sec02{
    margin-bottom: 84px;
  }
  #sec03{
    margin-bottom: 82px;
  }
  .support_list_btn{
    margin-top: 82px;
    margin-bottom: 79px;
  }
  .ene_sec.search_office_sec .content_fixed_inner{
    padding: 0 66px
  }
  .ene_sec.search_office_sec .search_office_wrap{
    border-radius: 16px;
  }
  .ene_btn01 {
    max-width: 345px; 
  }
  #main .content {
    padding-bottom: 110px;
  }
  .breadcrumbs_wrap .content_inner { 
    padding: 0 66px;
  }
  #ene_footer .ene_footer_inner {
    width: 995px;
    padding: 46px 50px 30px; 
  }
  .txt_large {
    font-size: 82px;
  }

  .num_btn_wrap {
    padding-top: 0;
  }

  .num_btn_link_page .num_btn{
    margin-left: 24px;
    width: 256px;
  }
  .num_btn_link_page .num_btn .txt{
    font-size: 14px;
  }
  .num_btn_link_page .num_btn a .num_btn_inner{
    padding: 35px 5px 35px 5px;
  }

  .num_btn_link_page .num_btn.btn_num_point a:hover .num {
    border-color: #F1A99D;
  }

  .num_btn_link_page .num_btn a:hover .icon_servise01{
    background-image: url('/jpn/consumer/energy/life-support/images/icon_servise01_hover.png');
  }

  .num_btn_link_page .num_btn a:hover .icon_servise02{
    background-image: url('/jpn/consumer/energy/life-support/images/icon_servise02_hover.png');
  }

  .num_btn_link_page .num_btn a:hover .icon_servise03{
    background-image: url('/jpn/consumer/energy/life-support/images/icon_servise03_hover.png');
  }

  .num_btn_link_page .num_btn a:hover .icon_servise04{
    background-image: url('/jpn/consumer/energy/life-support/images/icon_servise04_hover.png');
  }

  .row_reverse{
    flex-direction: row-reverse;
  }

  .desc01{
    margin-top: 6px;
  }

  .desc02{
    margin-top: 10px;
    margin-bottom: 5px;
  }

  .point_ttl_wrap .point{
    min-width: 160px;
    padding: 10px 23px 5px;
    margin-bottom: 26px;
  }

  .point_ttl_wrap{
    margin-bottom: 28px;
  }

  .imgtxt_hor_2_1 > .col_inner > .img{
    width: calc(432/992*100%);
  }
  .imgtxt_hor_2_1 > .col_inner > .txt{
    width: calc(512/992*100%);
  }

  .servise_imgtxt .text_mb{
    margin-bottom: 15px;
  }

  .inquiry_flow_box.box01{
    padding-bottom: 20px;
  }
}
#fixed_cv { 
  position: fixed;
  z-index: 8;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 14px 27px 14px 14px;
  background-color: rgba(100, 70, 60, 0.4);
  box-sizing: border-box;
}
#fixed_cv .ene_btn01{
  max-width: 330px; 
}
#fixed_cv .ene_btn01 a {
  padding: 16px 6px 13px 4px;
  
}
.text_note1 a{
  color: #FF5514;
  text-decoration: underline;
}
body{
  padding-bottom: 96px;
}
@media screen and (max-width:767px) {
  #ene_header #header .header_logo{
    padding: 18px 0 16px;
  } 
  #fixed_cv{
    padding: 14px;
  }
  body{
    padding-bottom: 91px;
  }
  #fixed_cv .ene_btn01 {
    max-width: 310px;
}
#fixed_cv .ene_btn01 a {
  width: 95%;
  
}
  #header .header_logo a{
    width: 110px;
  }
  #ene_header #header_hamburger a {
    padding: 22px 0 19px;
    width: 60px;
  }
  #header_office a {
    display: block;
    width: 55px;
    padding: 4px 0;
    line-height: 0;
  }
  .txt_large{
    font-size: 48px;
  }
  .ene_ttl_main_block {
    margin-top: 58px;
    margin-bottom: 45px;
  }
  .ene_sub_desc{
    line-height: 1.714;
  }
  .ene_ttl_main {
    font-size: 24px;
  }
  .num_btn_wrap{
    margin-bottom: 88px;
  }
  .imgtxt_hor_2_1 {
    margin-bottom: 90px;
}
  .num_btn_wrap._bg_set .content_fixed_inner{
    padding: 39px 0 30px;
  }
  .num_btn_wrap .ene_nav_icon{
    display: inline-block;
    width: 290px;
  }
  .link_page_ttl {
    margin: 0 auto 23px;
    font-size: 22px;
  }
  #sec01 {
    margin-bottom: 94px;
  }
  #sec01 .point_ttl_wrap .point{
    margin-bottom: 18px;
  }
  #sec02 {
    margin-bottom: 94px;
  }
  #sec03 {
    margin-bottom: 90px;
  }
  #sec01 .text_mb {
    margin-bottom: 20px;
    letter-spacing: -0.3px;
    line-height: 1.6;
}
#sec04 .text_mb {
  margin-bottom: 30px;
  letter-spacing: -0.3px;
  line-height: 1.6;
}
  .num_btn_box {
    padding: 52px 0 24px;
    margin-bottom: 49px;
  }
  .num_btn_box .num_btn_link_page .num_btn {
    width: calc(136 / 285 * 100%);
  }
  .num_btn_link_page .num_btn.btn_num_point a .num_btn_inner {
    padding: 32px 10px 42px;
  }
  .desc01 {
    line-height: 1.5;
    margin: 27px 0 0;
  }
  .num_btn_wrap .ene_nav_icon img{
    margin-right: 0;
  }
  .num_btn_wrap .link_page_ttl {
    line-height: 1.2;
  }

  .num_btn_link_page ul{
    max-width: 320px;
    margin: 0 auto;
  }

  .num_btn_link_page .num_btn{
    width: calc(136/282*100%);
  }
  .num_btn_link_page .num_btn.btn_num_point .num{
    padding: 13px 18px 5px;
  }
  .num_btn_link_page .num_btn.btn_num_point .num .num_txt{
    margin-bottom: 0;
  }
  .num_btn_link_page .num_btn .txt{
    margin-bottom: 5px;
  }
 

  .num_btn_desc{
    font-size: 18px;
  }
  .num_btn_desc .txt_size_m{
    font-size: calc(24/16*100%);
  }
  .num_btn_desc .txt_size_l{
    font-size: calc(36/16*100%);
  }
  .num_btn_desc .txt_size_xl{
    font-size: calc(36/16*100%);
  }
  .num_btn_desc .txt_size_s{
    font-size: calc(12/16*100%);
  }
   
  .desc01 .txt_size_l {
    display: inline-block;
    margin-top: -5px;
  }
  .desc02{
    margin: 28px 0 0;
  }
  .desc02 .txt_size_l{
    display: inline-block;
    line-height: 1;
  }

  .point_ttl_wrap{
    margin-bottom: 25px;
  }
  .point_ttl_wrap .point{
    min-width: 105px;
  }
  .point_ttl_wrap .point_ttl{
    line-height: 1.4;
    font-size: 22px;
  }

  .servise_imgtxt .txt {
    line-height: 1.714;
  }
  .support_list_btn{
    margin-bottom: 90px;
  }
  .support_list_btn .search_office_btn.ene_btn01 a {
    font-size: 16px;
  }
  .support_list_btn li {
    margin-bottom: 30px;
  }
  .search_office_wrap {
    padding: 30px 20px 46px;
  }
  #main .content {
    padding-bottom: 93px;
}
  .search_office_ttl {
    margin-bottom: 25px;
    font-size: 22px;
  }
  .inquiry_flow_block {
    padding: 23px 14px 23px;
    border-radius: 0;
    margin-bottom: 88px;
  }
  .inquiry_flow_heading_main{
    font-size: 20px;
    margin-bottom: 45px;
  }
  .ene_btn01{
    margin: 0 auto;
    width: 100%;
  }
  .support_list_btn .search_office_btn.ene_btn01 a {
    font-size: 18px;
  }
  .search_office_btn.ene_btn01 a {
    padding: 16px 57px 13px 30px; 
  }
  .inquiry_flow_box_title{
    min-width: 263px;
    padding: 11px 10px;
  }
  .inquiry_flow_box{
    padding: 40px 15px 28px;
    text-align: left;
    margin-top: 35px;
  }
}


/* stepList
-------------------------------------------------- */
.stepList {
	border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
	.stepList {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		padding: 10px 0 8px;
	}
	.stepList > .step_column {
		position: relative;
		width: calc((100% - 100px) / 3);
		margin-top: 50px;
		margin-right: 50px;
    display: flex;
    flex-direction: column;
	}
	.stepList > .step_column .point_ttl_wrap {
    display: table;
		width: 100%;
	}
	.stepList > .step_column .point_ttl {
    	display: table-cell;
		position: relative;
		vertical-align: middle;
    line-height: 1.333;
	}
	.stepList > .step_column:not(:last-child) .point_ttl:after {
		content: "";
		position: absolute;
		top: 50%;
		left: 111%;
		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;
	}
	.point_one {
		top: 30% !important;
	}
	.pc_w62p {
		width: 61.63% !important;
	}
	.pc_w48p {
		width: 47.95% !important;
	}
	.step_content {
		text-align: center;
    margin-top: auto;
	}
	.step_content .btn {
		width: 216px;
    margin-bottom: 17px;
	}
  .stepList > .step_column:last-child .step_point_ttl_wrap {
		padding-left: 14%;
	}
  .stepList > .step_column:last-child .step_content {
		padding-left: 3%;
	}
}


@media screen and (max-width:767px) {
	.stepList {
		padding: 10px 0 7px;
	}
	.stepList > .step_column:not(:last-child) {
		padding-bottom: 25px;
	}
	.stepList > .step_column:not(:first-child) {
		margin-top: 30px;
	}
	.point_one {
		top: 20% !important;
	}
	.point_two {
		top: 30% !important;
	}
	.step_content {
		padding-left: 40px;
		text-align: center;
	}
	.stepList > .step_column {
		position: relative;
	}
	.stepList > .step_column:not(:last-child):after {
		content: "";
		position: absolute;
		top: 40px;
		width: 3px;
		height:80%;
		transform: translateX(-50%);
		background: url("/jpn/consumer/energy/life-support/images/bg_dotted.png") repeat-y top / 100% auto;
		left: 17px;
		z-index: 1;
	}
	/* .stepList > .step_column:after {
		top: 20% !important;
		height: 100% !important;
	} */
	.stepList > .step_column:not(:last-child):before {
		content: "";
		position: absolute;
    top: 20%;
    width: 20px;
    height: 100%;
		background: url("/jpn/consumer/energy/life-support/images/bg_icon_arrow.png") bottom 10px center no-repeat;
		background-size: contain;
		left: 7px;
		z-index: 1;
	}
	.stepList > .step_column:nth-child(2) {
		padding-bottom: 0;
	}
	.stepList > .step_column:nth-child(2) .step_point_ttl_wrap {
		margin-bottom: 0;
	}
	.stepList > .step_column:nth-child(2):after {
		top: 40px;
		height:67%;
	}
	.stepList > .step_column:nth-child(2):before {
		top: 10%;
	}
  .stepList .step_content .search_office_btn.ene_btn01 a {
		font-size: 16px;
	}
}
/* point_ttl_wrap
-------------------------------------------------- */
.step_point_ttl_wrap {
	/* display: flex;
	align-items: center; */
	text-align: left;
}
.step_point_ttl_wrap .point{
	display: inline-block;
	padding: 5px 23px 1px;
	border-radius: 1000px;
}
.color_white {
	color: #fff !important;
}
.step_point_ttl_wrap .point .ttl_num{
	margin-left: 3px;
	font-weight: normal;
	line-height: 1;
}
.step_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;
}
.step_point_ttl_wrap .point_ttl {
	display: block;
	position: relative;
    padding-left: 45px;
	font-weight: 500;
    line-height: 1.75;
    text-align: left;
}
.bg_circle_orange {
	background-color: #FF5514 !important;
}
@media print, screen and (min-width:768px) {
	.step_point_ttl_wrap {
		margin-bottom: 17px;
		font-size: 18px;
		display: flex;
		align-items: center;
	}
	.step_point_ttl_wrap .point{
		margin-bottom: 15px;
		font-size: 16px;
	}
	/* .point_ttl_wrap .point_ttl {
	    padding-left: 40px;
	} */
	.step_point_ttl_wrap .point .ttl_num{
		font-size: 36px;
	}
}

@media screen and (max-width:767px) {
	.step_point_ttl_wrap {
		margin-bottom: 20px;
		font-size: 18px;
		text-align: center;
		position: relative;
		z-index: 2;
		width: 70%;
	}
	.step_point_ttl_wrap .point{
		margin-bottom: 15px;
		font-size: 14px;
	}
	.step_point_ttl_wrap .point_ttl {
	    padding-left: 50px;
      line-height: 1.25;
	}
	.step_point_ttl_wrap .point .ttl_num{
		font-size: 26px;
	}
	.step_point_ttl_wrap .point_num{
    max-width: 36px;
    height: 36px;
	}
	/* .ene_sec .content_fixed_inner {
		padding: 0;
	} */
}