/* recruit.css
-------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
    .u_pc_only {
        display: none !important;
    }
}
@media print, screen and (min-width: 768px) {
    .u_sp_only {
        display: none !important;
    }
} 

/* index */
.recruit_index .recruit_title1 {
	margin: 58px 0 40px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: #0050A9;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .recruit_title1 {
		margin: 79px 0 55px;
		font-size: 29px;
	}
}
.recruit_index .sec_intro p {
	text-align: center;
	font-size: 15px;
}
.recruit_index .recruit_title2 {
	width: 300px;
	margin: 49px auto 43px;
	padding: 17px;
	text-align: center;
	font-size: 25px;
	font-weight: bold;
	line-height: 1.4;
	background: #0050A9;
	color: #fff;
	transform: skewX(-20deg);
}
@media print, screen and (min-width: 768px) {
	.recruit_index .recruit_title2 {
		width: 470px;
		padding: 15px;
		line-height: 1;
	}
}
.recruit_index .recruit_title2 .title_text {
	display: block;
	transform: skewX(20deg);
}
.recruit_index .candidate_type {
	padding: 50px 30px 30px;
	border: solid 3px #0050A9;
	border-radius: 30px;
	position: relative;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .candidate_type {
		min-height: 163px;
		padding: 50px;
	}
}
.recruit_index .candidate_type + .candidate_type {
	margin-top: 50px;
}
.recruit_index .candidate_type .number {
	position: absolute;
	top: -22px;
  	left: 40px;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .candidate_type .number {
		left: 52px;
	}
}
.recruit_index .candidate_type .text {
	text-align: justify;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .candidate_type .text {
		width: 55%;
	}
}
.recruit_index .candidate_type h3 {
	margin-bottom: 16px;
	font-size: 17px;
	font-weight: bold;
	line-height: 1.8;
	color: #0050A9;
}
@media only screen and (max-width: 767px) {
	.recruit_index .candidate_type .picture {
		margin-top: 23px;
	}
}
@media print, screen and (min-width: 768px) {
	.recruit_index .candidate_type .picture {
		width: 36%;
		position: absolute;
		top: 23px;
		right: 33px;
	}
	.recruit_index .candidate_type:nth-of-type(2) .picture {
		top: 37px;
	}
}
.recruit_index .candidate_type .picture img {
	max-width: 100%;
}
.recruit_index .link_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 50px 0 63px;
}
.recruit_index .link_area .link_item {
	width: 100%;
	letter-spacing: 0.05em;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .link_area .link_item {
		width: calc((100% - 60px) / 2);
	}
}
@media only screen and (max-width: 767px) {
	.recruit_index .link_area .link_item + .link_item {
		margin-top: 18px;
	}
}
.recruit_index .link_area .link_button {
	display: block;
	max-width: 345px;
	margin: auto;
	padding: 16px;
	font-size: 15px;
  	font-weight: bold;
	text-align: center;
	border: solid 1px #0050A9;
	border-radius: calc(1px / 0);
	color: #0050A9;
	position: relative;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .link_area .link_button {
		max-width: 310px;
		padding: 16px;
		font-size: 15px;
		  font-weight: bold;
		text-align: center;
		border: solid 1px #0050A9;
		border-radius: calc(1px / 0);
		color: #0050A9;
		position: relative;
	}
}
.recruit_index .link_area .link_button::after {
	content: "";
	display: block;
	width: 10px;
	height: auto;
	background: url(/assets/images/recruit/icon_arrow01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
}
.recruit_index .link_area .link_button::first-letter {
	color: #F18E1D;
}
.recruit_index .link_area .link_button span {
	font-size: 20px;
	vertical-align: -1px;
}
.recruit_index .sec_outline .recruit_title2 {
	margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .sec_outline .recruit_title2 {
		margin-bottom: 30px;
	}
}
.recruit_index .sec_outline ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .sec_outline ul {
		padding: 0 22px;
	}
}
.recruit_index .sec_outline li {
	width: 100%;
}
@media print, screen and (min-width: 768px) {
	.recruit_index .sec_outline li {
		width: calc((100% - 15px) / 2);
	}
}
@media only screen and (max-width: 767px) {
	.recruit_index .sec_outline li:nth-of-type(n+2) {
		margin-top: 15px;
	}
}
@media print, screen and (min-width: 768px) {
	.recruit_index .sec_outline li:nth-of-type(n+3) {
		margin-top: 15px;
	}
}
.recruit_index .sec_outline li img {
	max-width: 100%;
}

/*==============================================
sp.css
==============================================*/

@media only screen and (min-width: 768px){
	.sp_only{
		display: none !important;
	}
	.wrap_lease_price tbody th.wrap{
		white-space: nowrap;
	}
	table.event_detail th{
		white-space: nowrap;
	}
}

@media print{ /*プリント用*/
	.sp_only{
		display: none !important;
	}
}

@media only screen and (max-width: 767px){
	.sp_none{
		display: none !important;
	}
	
	/* ==========================
	base
	========================== */
	*{
		width: initial;
		max-width: 100%;
		box-sizing: border-box;
	}
	a{
		word-break: break-all;
	}
	img{
		height: auto;
	}
	.fl,
	.fr{
		float: none;
	}
	
	/* header */
	/* header{
		position: relative;
		height: 46px;
	}*/
	#logo{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		max-width: calc(100% - 46px);
		padding: 5px 10px;
		background-color: #fff;
		box-shadow: 0 2px 5px rgba(0,0,0,0.2);
		z-index: 9999;
	}
	#logo img{
		margin: 0;
		max-height: 36px;
	}
	
	/* nav{
		position: fixed;
		top: 0;
		right: 0;
		height: initial;
		margin: 0;
		z-index: 9999;
	} */
	
	.nav_sp input{
		display: none;
	}
	.nav_sp .nav_sp_btn{
		position: absolute;
		top: 0;
		right: 0;
		z-index: 200;
		box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	}
	.nav_sp .nav_sp_btn label{
		display: block;
		width: 46px;
		height: 46px;
		color: #fff;
		font-size: 11px;
		text-align: center;
		background-color: #2d2d2d;
	}
	.nav_sp .nav_sp_btn label::after{
		content: "MENU";
	}
	.nav_sp > .trigger:checked ~ .nav_sp_btn label::after{
		content: "CLOSE";
	}
	.nav_sp .nav_sp_btn span{
		position: relative;
		margin-top: 14px;
	}
	.nav_sp .nav_sp_btn span,
	.nav_sp .nav_sp_btn span::before,
	.nav_sp .nav_sp_btn span::after{
		display: inline-block;
		width: 16px;
		height: 2px;
		background-color: #fff;
	}
	.nav_sp .nav_sp_btn span::before,
	.nav_sp .nav_sp_btn span::after{
		content: "";
		position: absolute;
		left: 0;
		transition: .2s;
	}
	.nav_sp .nav_sp_btn span::before{
		top: -4px;
	}
	.nav_sp .nav_sp_btn span::after{
		top: 4px;
	}
	.nav_sp > .trigger:checked ~ .nav_sp_btn span{
		background-color: rgba(255,255,255,0);
	}
	.nav_sp > .trigger:checked ~ .nav_sp_btn span::before{
		top: 0;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.nav_sp > .trigger:checked ~ .nav_sp_btn span::after{
		top: 0;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.nav_sp .nav_sp_btn + .menulist{
		position: absolute;
		top: 46px;
		z-index: 10;
		width: 100%;
		height: calc(100vh - 120px);
		padding: 0 10px;
		overflow-y: scroll;
		background-color: #f2f2f2;
		box-shadow: 0 4px 4px rgba(0,0,0,0.2);
	}
	.nav_sp .menulist{
		display: none;
		padding-left: 20px;
	}
	.nav_sp .trigger:checked ~ .menulist{
		display: block;
	}
	.nav_sp .menutl{
		position: relative;
		color: #2044A8;
	}
	.nav_sp .menutl::after{
		content: "";
		position: absolute;
		top: 14px;
		right: 10px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #999;
		border-right: 1px solid #999;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		transition: .2s;
	}
	.nav_sp .trigger:checked ~ .menutl::after{
		top: 18px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.nav_sp .menutl label{
		position: relative;
		z-index: 2;
	}
	.nav_sp .menulist label,
	.nav_sp .menulist a{
		display: block;
		padding: 10px 5px 10px;
		font-size: 15px;
		border-top: 1px solid #999;
	}
	.nav_sp .nav_sp_btn + .menulist > div:first-child > .menutl label{
		border-top: none;
	}
	#pankuzu{
		min-height: initial;
	}
	#pankuzu li > div{
		padding: 8px 10px;
		font-family: inherit;
	}
	#pankuzu li > div::after{
		display: none;
	}
	
	/* contents */
	.cate{
		height: 120px;
		padding: 15px;
		background: center center / cover no-repeat;
	}
	.bd_corp .cate,
	.bd_privacy .cate,
	.bd_sitemap .cate,
	.bd_news .cate,
	.bd_commerce .cate{
		background-image: url(/assets/images/corporate_title_bg.jpg);
	}
	.bd_service .cate{
		background-image: url(/assets/images/service_title_bg.jpg);
	}
	.bd_recruit .cate{
		background-image: url(/assets/images/recruit_title_bg.jpg);
	}
	.contact_top .cate{
		background-image: url(/assets/images/contact_title_bg.jpg);
	}
	.cate strong,
	.cate span{
		display: inline-block;
		font-weight: normal;
	}
	.cate strong{
		margin-bottom: 10px;
		padding: 10px 0;
		color: #251E1C;
		font-size: 20px;
		border-bottom: 1px solid #666;
	}
	.cate span{
		font-size: 13px;
	}
	h1.ts_h1{
		margin-top: 10px;
		margin-bottom: 5px;
		padding: 15px;
		font-size: 18px;
		line-height: 1.4;
	}
	#contents_nav{
		display: none;
	}
	#contents_containar{
		margin: 0 15px 15px;
	}
	.contents{
		padding-bottom: 0;
	}
	#top_contents_left_topb{
		float: none;
		padding-bottom: 20px;
	}
	h3.ts_h3{
		font-size: 1.6rem;
		margin-bottom: 20px;
	}
	h3.ts_h3_blue{
		margin-top: 15px;
		margin-bottom: 15px;
		padding-top: 15px;
		padding-bottom: 15px;
		font-size: 1.6rem;
	}
	h3.ts_h3_border{
		margin-bottom: 20px;
		font-size: 1.6rem;
	}
	h4.ts_h4_black{
		line-height: 1.4;
	}
	.tel-link a{
		color: #2044A8;
		text-decoration: underline;
	}
	
	#top_right{
		position: relative;
		float: none;
		width: initial;
	}
	#top_right::before{
		content: "";
		position: absolute;
		top: -20px;
		left: -15px;
		display: block;
		width: calc(100% + 30px);
		height: 1px;
		background-color: #CCC;
	}
	#top_box_navi{
		display: none;
	}
	
	.contact_box{
		display: none;
	}
	
	.right_contact_sg .tel-link a{
		color: #0A377B;
	}
	.right_contact_denka .telbox img{
		height: 17px;
	}
	.right_contact_denka .tel-link a{
		color: #B19962;
	}
	
	/* footer */
	.ft_group{
		padding: 15px;
		border-top: 1px solid #CCC;
		display: -webkit-flex;
		display: flex;
	}
	.ft_group > *{
		margin: 0 5px;
	}
	.ft_group > div{
		min-width: 100px;
	}
	.ft_group > div a{
		display: inline-block;
		width: 100px;
	}
	.ft_group img{
		width: 100%;
		height: auto;
	}
	footer{
		padding: 15px;
	}
	[class*="bd_denka"] footer{
		/* padding-bottom: 80px; */
		padding-bottom: 140px;
	}
	footer .fl p{
		margin-bottom: 5px;
	}
	#copyright{
		text-align: center;
	}
	#page-top{
		bottom: 10px;
		right: 10px;
		width: 60px;
		height: 60px;
	}
	[class*="bd_denka"] #page-top{
		/* bottom: 60px; */
		bottom: 100px;
	}
	#denka_contact{
		width: 100%;
	}
	.list_denka_contact [class*="item"]{
		flex-grow: 1;
	}
	
	
	/* ==========================
	top
	========================== */
	.bd_top #contents_containar{
		margin: 0;
		padding: 15px;
	}
	#slide_box{
		height: 130px;
		overflow: hidden;
		border: none;
	}
	#slide_box *{
		max-width: initial;
	}
	.slider-for{
		width: 318px;
	}
	#slide_box img{
		max-width: 100%;
		height: 130px;
	}
	
	#tougou_info{
		padding: 15px;
		border: none;
		text-align: left;
	}
	#top_contents{
		padding-top: 0;
		padding-bottom: 5px;
	}
	#top_contents div{
		float: none;
	}
	#top_contents_left{
		padding-bottom: 20px;
	}
	
	.wrap_top_houjin .info_h2{
		margin-top: 25px;
	}
	.cont_top_service{
		width: 100%;
	}
	.cont_top_service > div:nth-of-type(n+2),
	.cont_top_service:nth-of-type(n+2){
		margin-top: 2px;
	}
	.cont_top_service h3 a{
		padding: 15px 10px;
	}
	
	.wrap_top_link{
		position: relative;
		margin-top: 25px;
		padding-top: 25px;
	}
	.wrap_top_link::before{
		content: "";
		position: absolute;
		top: 0;
		left: -15px;
		width: calc(100% + 30px);
		border-top: 1px solid #ccc;
	}
	[class*="bana_"]{
		margin: 2px 0;
	}
	.wrap_top_link [class*="bana_"]{
		border: none;
	}
	.bana_potal img{
		max-width: 220px;
	}
	
	#top_info_box{
		padding: 0;
	}
	.top_info li{
		display: block;
		width: 100%;
		padding: 10px;
	}
	.top_info li span{
		display: block;
	}
	
	
	
	/* ==========================
	service
	========================== */
	.service dl.top{
		width: 100%;
		height: initial;
		margin: 0;
	}
	.service dl.top + dl.top,
	.service dl.nen + dl.nen{
		margin-top: 10px;
	}
	.service dl.top img{
		max-width: 210px;
	}
	.service dd{
		padding: 8px 10px 10px 10px;
	}
	.service dl.nen{
		width: initial;
		height: auto;
	}
	
	.service dl.nen dd{
		padding-bottom: 8px;
	}
	
	/* 燃料販売 */
	.lng .fblu,
	.sekitan .fblu{
		font-size: 1.5rem;
	}
	.lng .area01,
	.lng .area01 *,
	.sekitan .area01,
	.sekitan .area01 *{
		width: initial !important;
	}
	.lng .area01 .w210{
		margin: 5px 0 0;
	}
	
	.sekitan p.txt{
		margin-bottom: 5px;
	}
	.sekitan .area01 .w205,
	.sekitan .area01 .w205 + .w205{
		margin: 5px 0 0;
	}
	.sekitan .area02{
		margin-bottom: 0;
	}
	
	/* トータルソリューション */
	.total_menu dl{
		width: initial;
		height: initial;
		min-height: initial;
		margin: 0 0 5px;
	}
	.total_menu dt{
		height: initial;
		padding: 0;
	}
	.total_menu dt a{
		display: block;
		margin-top: 0;
		padding: 10px 10px 10px 28px;
	}
	.total_menu dd{
		display: none;
	}
	
	.jirei{
		margin-top: 25px;
	}
	.jirei dt{
		line-height: 40px;
	}
	.jirei dd img{
		margin-bottom: 10px;
	}
	
	/* 電力供給サービス */
	.pps_box_r{
		float: none;
		width: initial;
		text-align: center;
	}
	.pps_box_r img{
		width: 100%;
	}
	.pps_case h4{
		font-size: 1.2rem;
	}
	.pps_case ul{
		max-width: initial;
		margin: 0;
	}
	.pps_case li{
		width: calc((100% - 20px) /2);
		margin: 5px;
	}
	
	.taiyoukou .area02{
		margin-bottom: 0;
	}
	
	/* 住宅電化 */
	.btn_shop,
	.btn_ad,
	.btn_line,
	.btn_gutto,
	.btn_download{
		width: 100%;
	}
	.wrap_menu_denka{
		display: none;
	}
	.wrap_news_important{
		padding: 15px;
	}
	.wrap_news_important .bn_ad{
		margin: 0;
	}
	.slide_campaign{
		max-width: calc(100% - 40px);
		margin: 0 auto;
	}
	.slide_campaign div{
		max-width: initial;
	}
	/*
	.wrap_menu_denka{
		padding: 15px;
	}
	.wrap_menu_denka li{
		float: none;
		width: 100%;
	}
	.wrap_menu_denka li + li{
		margin: 0;
	}
	.wrap_menu_denka .inner_menu_denka li a{
		height: auto;
		padding: 10px;
		text-align: left;
		border-bottom: none;
		background-position: right 15px center;
		background-size: auto 32px;
	}
	.wrap_menu_denka .inner_menu_denka li + li a{
	}*/
	.bd_denka_top #contents_containar{
		/* margin: 0; */
	}
	.wrap_top_point{
		/* padding: 15px 15px 25px; */
		padding: 15px 5px 25px;
	}
	.wrap_top_point h1{
		margin-bottom: 14px;
		padding: 0;
		font-size: 2.0rem;
	}
	.wrap_top_point .read{
		/* font-size: 1.0rem; */
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.wrap_top_point .read strong{
		/* font-size: 1.0rem; */
		font-size: 1.4rem;
	}
	.wrap_top_point .read{
		margin: 12px 0;
	}
	.cont_top_point dl{
		float: none;
		width: initial;
		overflow: hidden;
	}
	.cont_top_point dl + dl{
		margin: 10px 0 0;
	}
	.cont_top_point dl dd{
		height: 0;
		padding: 0;
		transition: .2s;
	}
	.cont_top_point #trigger_anshin:checked ~ .anshin dd,
	.cont_top_point #trigger_kaiteki:checked ~ .kaiteki dd,
	.cont_top_point #trigger_keizai:checked ~ .keizai dd{
		height: 100%;
		padding: 10px;
	}
	.wrap_top_lineup{
		padding: 25px 15px;
	}
	.wrap_top_lineup h2{
		margin: 0 0 20px;
		font-size: 1.8rem;
		line-height: 1.3;
	}
	.wrap_top_lineup .tl_lineup p{
		position: static;
	}
	.wrap_top_lineup .tl{
		font-size: 1.6rem;
	}
	.wrap_top_lineup .tl_lease{
		font-size: 1.4rem;
	}
	.wrap_top_lineup .box_lease .btn_more{
		position: static;
		display: block;
		padding: 5px;
		text-align: center;
	}
	.wrap_top_lineup .box_shikumi p{
		margin: 10px 0;
	}
	.wrap_top_lineup .box_shikumi img{
		width: 100%;
		height: auto;
		margin: 0;
	}
	.wrap_top_lineup .box_qa{
		margin: 35px 0 0 5px;
		padding: 25px 10px 20px;
	}
	.wrap_top_lineup .box_qa .tl_q{
		top: -22px;
		left: -10px;
		height: 40px;
	}
	.wrap_top_lineup .box_qa .tl_q img{
		height: 40px;
	}
	.wrap_top_lineup .box_qa .txt_a{
		font-size: 1.3rem;
	}
	.wrap_top_lineup .box_qa .youryo img{
		width: 46%;
		margin: 3px;
		height: auto;
	}
	.wrap_top_lineup .box_qa .img{
		left: -10px;
		width: 60px;
	}
	.wrap_top_lineup .box_qa .img img{
		width: 100%;
	}
	.wrap_top_lineup .box_qa .type dd{
		font-size: 1.0rem;
	}
	.wrap_top_lineup .box_qa .semi,
	.wrap_top_lineup .box_qa .kyuto{
		width: 100%;
	}
	.wrap_top_lineup .box_qa .kyuto{
		border: none;
	}
	.wrap_top_lineup .box_qa .graph{
		margin-bottom: 20px;
	}
	.wrap_top_lineup .box_qa .graph img{
		margin: 0;
	}
	.wrap_top_lineup .bnr_eco{
		padding: 10px 10px 10px 90px;
		font-size: 1.3rem;
	}
	.wrap_top_lineup .bnr_eco img{
		top: 5px;
		width: 80px;
	}
	.wrap_top_lineup .box_recom{
		width: 100%;
	}
	.wrap_top_lineup .subtl_lineup{
		font-size: 1.4rem;
	}
	.wrap_top_lineup .subtl_lineup:first-child{
		margin-top: 20px;
	}
	.wrap_top_lineup .ih .tl_column::before{
		top: -10px;
	}
	.wrap_top_lineup .box_movie li{
		float: none;
		width: 100%;
		margin: 0;
	}
	.wrap_top_lineup .other .img{
		margin: 0 auto 10px;
	}
	.wrap_top_lineup .box_detail:last-child .tl_other{
		margin-top: 30px;
	}
	
	.box_product img{
		margin-left: 0;
	}
	.box_product .denka_subtl{
		line-height: 1.4;
	}
	.nabe_point01,
	.nabe_point02,
	.nabe_point03{
		padding-bottom: 0;
	}
	
	.ac_trigger::after{
		right: 15px;
		width: 10px;
		height: 10px;
		border-width: 2px;
	}
	.wrap_lease_tl strong{
		font-size: 1.5rem;
	}
	[class*="sec_lease_"]{
		margin-top: 50px;
	}
	[class*="sec_lease_"] .tl_sec{
		margin-bottom: 20px;
	}
	[class*="sec_lease_"] .tl_sec img{
		max-width: 100%;
		height: 6.4vw;
	}
	.sec_lease_point{
		margin-top: 40px;
	}
	.wrap_lease_point{
		margin: 15px 0;
	}
	.wrap_lease_point::before{
		content: none;
	}
	.wrap_lease_point dt{
		height: 65px;
		padding: 16px 30px 16px 48px;
		font-size: 1.6rem;
	}
	.wrap_lease_point dt span{
		font-size: 1.3rem;
	}
	.wrap_lease_point dt::before{
		content: "";
		position: absolute;
		display: block;
		top: calc(50% - 20px);
		left: 4px;
		z-index: 1;
		width: 40px;
		height: 40px;
		background: url(/assets/images/service_line/lease_point1.png) center center / 40px 40px no-repeat;
	}
	.wrap_lease_point.point2 dt::before{
		background-image: url(/assets/images/service_line/lease_point2.png);
	}
	.wrap_lease_point.point3 dt::before{
		background-image: url(/assets/images/service_line/lease_point3.png);
	}
	.wrap_lease_point.point4 dt::before{
		background-image: url(/assets/images/service_line/lease_point4.png);
	}
	.wrap_lease_point dd{
		padding: 15px;
	}
	.wrap_lease_point .read{
		font-size: 1.6rem;
	}
	.wrap_lease_point .box_hoshou .inner{
		padding: 20px;
	}
	.wrap_lease_point .box_hoshou .txt_suigai{
		font-size: 1.6rem;
		line-height: 30px;
	}
	.wrap_lease_point.point2 p:not(.read),
	.wrap_lease_point.point4 p:not(.read){
		font-size: 1.4rem;
		line-height: 1.4;
	}
	
	.sec_lease_campaign .slide_campaign{
		margin-bottom: 50px;
	}
	.sec_lease_campaign .wrap_banner .item{
		margin: 10px 0;
	}
	.sec_lease_campaign .slide_campaign img,
	.sec_lease_campaign .wrap_banner img{
		width: 100%;
	}
	
	.wrap_lease_lineup{
		border-radius: 4px;
	}
	.wrap_lease_lineup .tl_lineup{
		height: 65px;
		padding: 16px 30px 16px 40px;
		font-size: 1.6rem;
		line-height: 1.3;
		background-position: 5px center;
		background-size: 32px auto;
	}
	.wrap_lease_lineup > div:last-of-type .cont_lease_lineup{
		border-radius: 0 0 4px 4px;
	}
	.cont_lease_lineup .inner{
		padding: 13px;
	}
	.cont_lease_lineup .tl{
		font-size: 1.5rem;
	}
	.cont_lease_lineup .btn_item{
		width: 100%;
		margin-top: 2px;
		margin-bottom: 2px;
	}
	.cont_lease_lineup .btn_solar{
		margin-top: 10px;
	}
	.cont_lease_lineup .btn_solar img{
		max-width: 40vw;
	}
	.cont_lease_lineup .btn_lease a{
		width: 65vw;
		height: 40px;
		margin-top: 15px;
		line-height: 40px;
		border-radius: 6px;
	}
	
	.list_lease_flow{
		margin: 40px 0 0;
	}
	.list_lease_flow .item{
		margin: 25px 0;
	}
	.list_lease_flow .item > img{
		max-width: 50%;
	}
	/*.bd_leasetop .ts_h3_blue.ac_trigger{
		font-size: 1.3rem;
	}
	.bd_leasetop strong{
		font-size: 1.3rem;
	}
	.wrap_lease_point .box_hoshou .tl{
		padding: 5px 0;
		font-size: 1.3rem;
	}
	.wrap_lease_point .box_hoshou img{
		max-width: 100%;
	}
	.wrap_lease_point.point2 dd > img{
		margin: 5px 0;
	}
	.wrap_lease_point.point3 img{
		width: 100%;
	}
	.wrap_lease_lineup .tl{
		font-size: 1.5rem;
		line-height: 1.4;
	}
	.wrap_lease_lineup .solar > a{
		margin: 2px 0;
	}
	.ts_h3_blue.ac_trigger{
		padding-right: 30px;
	}
	.ts_h3_blue.ac_trigger + div{
		padding-top: 10px;
	}
	.wrap_lease_price .scroll{
		overflow: auto;
	}
	.wrap_lease_price table{
		width: 100%;
		margin-top: 10px;
		overflow-x: scroll;
	}
	.wrap_lease_price tbody th,
	.wrap_lease_price tbody td{
		padding: 5px;
		font-size: 1.1rem;
		line-height: 1.2;
	}
	.wrap_lease_price thead th{
		white-space: nowrap;
	}
	.wrap_lease_price tbody th.wrap{
		white-space: wrap !important;
	}
	.wrap_lease_price thead th span{
		font-size: 1.0rem;
	}
	.wrap_lease_price .tate{
		display: block;
		writing-mode: tb-rl;
		writing-mode: vertical-rl;
		margin: 0 auto;
		padding: 0 3px 0 15px;
		white-space: nowrap;
		width: 1em;
		line-height: 1em;
		text-orientation: upright;
	}*/
	
	.cont_read .txt_read{
		float: none;
		width: 100%;
	}
	.box_catalogue{
		float: none;
		margin-top: 20px;
		margin-bottom: 20px;
		text-align: center;
	}
	.box_catalogue > a{
		display: inline-block;
		width: 45%;
		margin: 0 5px;
	}
	
	.plan_s{
		margin-top: 20px;
	}
	.plan_s li{
		display: inline-block;
		width: calc(100% / 3);
	}
	#top_contents_left_topb .plan_s li a{
		position: relative;
		display: block;
		padding: 10px 0 20px;
		color: #fff;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
	}
	.plan_s .btn_3s a{
		background-color: #6DBA44;
	}
	.plan_s .btn_2s a{
		background-color: #3885C7;
	}
	.plan_s .btn_s a{
		background-color: #EA6172;
	}
	.plan_s li a::after{
		content: "";
		position: absolute;
		bottom: 8px;
		right: 0;
		left: 0;
		width: 6px;
		height: 6px;
		margin: 0 auto;
		border-right: 1px solid #fff;
		border-bottom: 1px solid #fff;
		transform: rotate(45deg);
	}
	.plan_ad .btn_s a::after{
		content: none;
	}
	.box_3s,
	.box_2s,
	.box_s{
		padding: 10px;
	}
	.box_3s h4,
	.box_2s h4,
	.box_s h4{
		font-size: 1.8rem;
	}
	.box_i_right{
		margin-top: 0;
	}
	.box_flow dt{
		font-size: 1.8rem;
	}
	.box_flow dt::before{
		font-size: 2.8rem;
	}
	.box_flow dd{
		text-align: center;
	}
	.box_flow dd p{
		text-align: left;
	}
	.box_flow dd img{
		margin: 5px 0;
	}
	.plan_solar_menu li{
		width: calc(100% / 3);
		margin-right: 0;
	}
	.wrap_v2h_detail,
	.wrap_chikudenchi_detail{
		padding-right: 10px;
		padding-left: 10px;
	}
	.wrap_v2h_detail h4{
		line-height: 1.4;
	}
	.two_column li{
		float: none;
		width: 100%;
	}
	.two_column li:first-child{
		margin-bottom: 15px;
	}
	.wrap_v2h_detail .section{
		margin-right: 5px;
		margin-left: 5px;
	}
	.wrap_v2h_detail .section_after_fit{
		margin-right: 5px;
		margin-left: 5px;
		padding: 10px;
	}
	.wrap_v2h_detail h4.zeh{
		padding: 15px;
		font-size: 2.0rem;
	}
	.wrap_aihems_detail .ml_l{
		margin-left: 0;
	}
	.box_korekara{
		padding: 15px;
	}
	.box_korekara > p > strong{
		font-size: 2.1rem;
	}
	.box_korekara li{
		width: 100%;
	}
	.wrap_chikudenchi_detail .wrap_chikudenchi_point img{
		width: 45%;
	}
	.wrap_chikudenchi_detail h4{
		font-size: 23px;
		line-height: 1.4;
	}
	.wrap_chikudenchi_life h5{
		line-height: 1.4;
	}
	.wrap_chikudenchi_life .icon{
		position: static;
		margin-bottom: 15px;
	}
	.wrap_chikudenchi_life > .icon + *{
		width: 100%;
	}
	.wrap_chikudenchi_life .wrap_sarani .tl{
		position: static;
		font-size: 20px;
	}
	.wrap_chikudenchi_life .wrap_sarani .img{
		margin-left: 0;
		margin-top: 0;
	}
	.wrap_chikudenchi_life .wrap_sarani .text{
		padding-top: 20px;
	}
	.wrap_chikudenchi_life .wrap_sarani .icon{
		position: static;
		width: inherit;
		margin-top: 15px;
	}
	.wrap_chikudenchi_life .wrap_sarani .icon::before{
		content: none;
	}
	.wrap_chikudenchi_life.life02 > div > .fl{
		margin-bottom: 15px;
		padding-bottom: 15px;
		padding-right: 0;
		border-right: none;
		border-bottom: 1px dashed #878787;
	}
	.wrap_chikudenchi_life.life02 .wrap_sarani .text{
		padding-top: 20px;
	}
	.wrap_chikudenchi_life.life04 .fr{
		width: 100%;
		margin-top: 15px;
	}
	.wrap_chikudenchi_life .wrap_reason + .txt_notes{
		font-size: 20px;
		line-height: 1.4;
	}
	
	.wrap_planc_point h3{
		font-size: 1.7rem;
	}
	.wrap_planc_point .inner{
		padding: 10px;
	}
	.wrap_planc_point .box_read{
		padding-left: 70px;
	}
	.wrap_planc_point .box_read::before{
		background-size: 56px 56px;
	}
	.wrap_planc_point .box_read .point{
		font-size: 1.8rem;
	}
	.wrap_planc_point .box_read .lease{
		width: calc(100% + 70px);
		max-width: initial;
		margin-left: -70px;
		padding: 5px;
		font-size: 1.5rem;
		line-height: 1.4;
	}
	.wrap_planc_point .item{
		width: 100%;
	}
	.wrap_planc_point .box_kumiawase .tl{
		padding: 5px;
		font-size: 1.3rem;
		line-height: 1.4;
	}
	.wrap_planc_point .box_kumiawase ol{
		padding: 5px;
	}
	.wrap_planc_point .box_kumiawase li{
		margin-bottom: 10px;
		font-size: 1.0rem;
		line-height: 1;
	}
	.wrap_planc_point .box_kumiawase li:last-child{
		margin-bottom: 0;
	}
	.wrap_planc_point .box_kumiawase li > div:first-child{
		margin-top: 5px;
		vertical-align: top;
	}
	.wrap_planc_point .box_kumiawase li > div:last-child{
		text-align: center;
	}
	.wrap_planc_point .box_kumiawase .item{
		width: 104px;
		margin: 0 1px;
		font-size: 0.9rem;
		text-indent: 0;
	}
	.wrap_planc_point .box_kumiawase + .TxtR{
		text-align: left;
	}
	.wrap_planc_point.hoshou .box_hoshou_point p{
		width: 100%;
	}
	.wrap_planc_point .txt_hikaku{
		width: 100%;
		margin-top: 10px;
	}
	
	.jirei.mame .fl,
	.jirei.mame .fr{
		width: 100%;
	}
	.jirei.mame dd img{
		margin-left: 0;
		margin-right: 0;
	}
	.flow_box{
		background-size: 32px auto;
	}
	.flow_box h3{
		margin: 0;
	}
	.flow_box p{
		margin: 0 0 10px;
		padding: 0;
	}
	.bd_solarsimu .ml_m{
		margin-left: 0;
	}
	
	.body .index_copy{
		font-size: 2.4rem;
		letter-spacing: 4px;
		line-height: 1.6;
	}
	.index_flow dt{
		float: none;
		width: 100%;
	}
	.index_flow dd{
		margin: 0;
	}
	#shop .shop_cat ul li{
		width: calc(100% / 3);
		margin-right: 0;
	}
	.shop_cat ul li.on{
		border: 1px solid #0082C8;
	}
	#shop .shop_cat ul li a{
		padding: 8px 0;
	}
	table.shop_list,
	table.shop_list tbody,
	table.shop_list tr{
		display: block;
		width: 100%;
	}
	table.shop_list td{
		display: block;
		width: 100% !important;
		padding: 0 0 5px;
		border: none;
	}
	table.shop_list td:first-child{
		margin-bottom: 8px;
		padding: 8px;
		background-color: #CCC;
	}
	table.shop_list td:last-child{
		padding-bottom: 10px;
	}
	#shop table.shop_list td a{
		display: inline-block;
	}
	table.shop_list td span{
		width: auto;
	}
	table.shop_list td span + span{
		margin: 0 0 0 2px;
	}
	table.shop_list td img{
		margin: 0 2px 0 0;
	}
	
	.event_list dl:last-child{
		border: none;
	}
	.event_list dt{
		float: none;
		width: 100%;
		text-align: center;
		border: none;
	}
	.event_list dd{
		margin-left: 0;
		padding: 0;
		border: none;
	}
	
	#faq h3.ts_h3_blue{
		margin-bottom: 15px;
	}
	#faq #top_contents_left_topb dl{
		margin-bottom: 30px;
	}
	.answer .txt_notes,
	.answer .tel-link{
		font-size: 1.4rem;
	}
	
	.wrap_ad .ts_h1{
		margin-bottom: 20px;
		font-size: 2.0rem;
	}
	.wrap_character{
		padding: 20px 0 30px;
	}
	.wrap_tvcm,
	.wrap_column{
		max-width: calc(100% + 30px);
		padding: 20px 15px 30px;
	}
	.wrap_tvcm .cont_mv li{
		float: none;
		width: 100%;
	}
	.wrap_tvcm .cont_mv li + li{
		margin-top: 20px;
	}
	.wrap_tvcm .cont_mv li p{
		margin-top: 5px;
	}
	.wrap_column{
		margin-bottom: -15px;
		margin-left: -15px;
		margin-right: -15px;
		padding: 30px 15px;
	}
	.wrap_column .inner{
		padding: 20px;
		background-position: 5px 5px, right 5px top 3px;
		background-size: auto 65px, auto 70px;
	}
	
	.wrap_line_tl{
		max-width: calc(100% + 30px);
		margin-left: -15px;
		margin-right: -15px;
		padding-bottom: 30px;
	}
	.wrap_line_tl img{
		width: 300px;
		height: auto;
	}
	.wrap_line_way{
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 0;
	}
	.wrap_line_way .ts_h1{
		padding: 0 0 20px;
		font-size: 22px;
	}
	.wrap_line_way .ts_h1::before,
	.wrap_line_way .ts_h1::after{
		height: 20px;
		margin: 0 10px -2px;
	}
	.wrap_line_way .ts_h1 + p{
		font-size: 14px;
	}
	.wrap_line_way .list_way{
		width: 240px;
		margin-top: 20px;
	}
	.wrap_line_way .list_way::before{
		left: inherit;
		right: -32px;
		width: 54px;
		background-size: 54px auto;
	}
	.wrap_line_way .list_way::after{
		left: -30px;
		bottom: -30px;
		width: 92px;
		background-size: 92px auto;
	}
	.wrap_line_way .list_way li{
		margin: 10px 0;
		padding: 10px 10px 20px;
	}
	.wrap_line_way .list_way .way_id{
		z-index: inherit;
	}
	.wrap_line_way .list_way li::before,
	.wrap_line_way .list_way li::after,
	.wrap_line_way .list_way li .tl::before,
	.wrap_line_way .list_way li .tl::after{
		width: 6px;
		height: 6px;
	}
	.wrap_line_way .list_way .tl img{
		height: 80px;
	}
	.wrap_line_way .list_way .img{
		margin: 18px auto !important;
	}
	.wrap_line_way .list_way .way_btn .img{
		width: 140px;
	}
	.wrap_line_way .list_way .way_qr .img{
		width: 80px;
	}
	.wrap_line_way .list_way .way_friend .img,
	.wrap_line_way .list_way .way_id .img{
		width: 210px;
	}
	.wrap_line_way .list_way li p{
		font-size: 13px;
		line-height: 1.5;
	}
	.wrap_line_banner{
		width: 240px;
		margin: 0 auto;
	}
	.wrap_line_way .list_notes{
		width: 240px;
	}
	
	/* ==========================
	corporate
	========================== */
	#greeting .left{
		float: none;
		max-width: 55%;
		margin-bottom: 15px;
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	
	#vision{
		font-size: 1.7rem;
		line-height: 1.8;
		text-align: left;
	}
	#guidelines{
		font-size: 1.5rem;
		line-height: 1.5;
	}
	
	.office_box thead{
		display: none;
	}
	.office_box tbody th,
	.office_box tbody td{
		display: block;
	}
	.office_box tbody th{
		width: initial;
		color: #FFF;
		background-color: #1483C3;
	}
	.office_box td{
		border: none;
	}
	
	#contents{
		margin: 0;
	}
	.bd_corp .mt_ll{
		margin-top: 25px;
	}
	.plan_h dd{
		width: initial;
	}
	
	
	/* ==========================
	recruit
	========================== */
	.bd_recruit .mb_ll,
	.bd_news .mb_ll{
		margin-bottom: 0;
	}
	
	
	/* ==========================
	contact
	========================== */
	.wrap_contact_entrance > div:nth-of-type(n+2){
		margin-top: 15px;
	}
	.wrap_contact_entrance .tl{
		padding: 10px;
		line-height: 1.6;
		background-image: url(/assets/images/ttl_bak.png);
		background-position: right 5px bottom 5px;
		background-repeat: no-repeat;
	}
	.wrap_contact_entrance .inner{
		display: none;
	}
	.box_tel .tel{
		font-size: 210%;
	}
	.box_tel .fax{
		font-size: 170%;
	}
	.cont_ess .box_tel .tel-link a{
		color: #1483C3;
	}
	.cont_enela .box_tel .tel-link a{
		color: #b29963;
	}
	.cont_pps .box_tel .tel-link a{
		color: #39A54A;
	}
	.cont_recruit .box_tel .tel-link a{
		color: #EC8500;
	}
	.cont_enela .box_tel img{
		width: auto;
		height: 18px;
	}
	
	
	/* ==========================
	sitemap
	========================== */
	.sitemap_left,
	.sitemap_right{
		float: none;
		width: 100%;
		padding: 0;
	}
	.sitemap_right{
		margin-top: 20px;
	}
	.sitemap h3{
		margin-bottom: 20px;
	}
	
	
	/* ==========================
	privacy
	========================== */
	.privacy h4{
		font-size: 16px;
	}
	
	
	.gochui_inq .tl{
		display: block;
		margin-bottom: 15px;
		margin-right: 0;
		padding: 5px;
		font-size: 1.5rem;
		line-height: 1.4;
		text-align: center;
	}
	.gochui_inq img{
		height: 22px;
	}
	.gochui_inq .tel-link,
	.gochui_inq .tel-link a{
		font-size: 2.8rem;
	}
	.gochui_inq span:last-child{
		margin-top: 15px;
	}
}

/*==============================================
追加
==============================================*/
#contents_containar {
	margin-top: 40px;
}

#top_contents_left_topb {
	max-width: 1200px;
	margin: 0 auto;
}

h3.ts_h3{font-weight:bold; font-size:20px; color:#333; margin-top:30px; margin-bottom:40px; line-height: 1.5em;}
.mt_m {	margin-top:20px;}
.mb_m {	margin-bottom:20px;}
.pt_15 { padding-top:15px;}
.fs_l{ font-size:110%}
.fb{ font-weight:bold;}

.p-recruitMain table {
	width: 100%;
	border-collapse: collapse;
}
.p-recruitMain table th {
	background: #eee;
	color: #777;
	font-weight: bold;
}
.p-recruitMain table th,
.p-recruitMain table td {
	border: 1px solid #ddd;
	padding: 8px;
	text-align: left;
}
.p-recruitMain table th.center,
.p-recruitMain table td.center {
	text-align: center;
}

@media (min-width: 768px) and (max-width: 1200px) {
	#contents_containar {
		padding: 0 24px;
	}
}

@media (max-width: 767px) {
	#contents_containar {
		margin-top: 24px;
	}

	#top_contents_left_topb {
		width: 100%;
	}
}

@media print, screen and (min-width: 768px) {
	.recruit_index .candidate_type {
		min-height: 350px;
		overflow: visible;
	}

	.recruit_index .candidate_type .text {
		width: 60%;
	}
	
	.recruit_index .candidate_type .picture {
		width: 31%;
	}

	.recruit_index .candidate_type .picture img {
		max-width: 100%;
		height: auto;
	}

	.recruit_index .candidate_type:nth-of-type(2) .picture {
		top: 23px;
	}

	.recruit_index .link_area .link_button {
		max-width: 496px;
	}
}
