@charset "UTF-8";

.warranty-page {
	padding-bottom: 20px;
}

.warranty-page .inner {
	text-align: left;
}

.warranty-page em {
    font-style: normal;
}

.u-font--serif {
	font-family: 'Shippori Mincho B1';
}

.u-font--Oswald {
	font-family: 'Oswald';
}

/*mv*/
.l-mv {
	margin: 60px 0 0;
}

.l-mv-inner {
	text-align: center;
	width: calc(100% - 240px);
	height: 200px;
	margin: -200px auto 0;
	background: #fff;
	position: relative;
	z-index: 10;
}

.l-mv-badge {
	width: 213px;
	margin: -130px -50px 0 0;
	position: absolute;
	top: 0;
	right: 0;
}

.l-mv-badge img {
	border-radius: 50%;
	box-shadow: 0 3px 10px 0 rgba(0,0,0,.5);
}

.l-mv-catch {
	color: #000;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.75;
	padding: 25px 0 0;
}

.l-mv-title {
	line-height: 1;
	width: 490px;
	margin: 30px 0 0;
	padding: 0;
	background: transparent;
	position: relative;
}

.l-mv-title:after {
	content: '';
	width: 200px;
	height: 12px;
	background: #000;
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translate(-50%,0);
}

.l-mv-sub {
	color: #000;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin: 70px 0 0;
	display: block;
}

.l-cta-button {
	text-align: center;
	margin: 0 0 100px;
}

.l-cta-button-title {
	font-size: 22px;
	font-weight: 700;
}

.l-cta-button a {
	color: #fff;
	font-size: 22px;
	min-width: 486px;
	margin: 20px 0 0;
	padding: .5em 0;
	border-radius: 10em;
	display: inline-block;
	background: #C90010;
	transition: .2s cubic-bezier(.8,0,.4,1);
}

.l-cta-button a:hover {
	opacity: .8;
}

.warranty-page section img {
	width: auto;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.warranty-page h2.title {
	font-size: 46px;
	font-weight: bold;
    background: none;
    line-height: 1;
    margin: 6% auto 5rem;
}

.warranty-page h2.title span {
    display: inline-block;
    font-size: 26px;
	padding-left: 1rem;
}

.warranty-page .subTitle {
    font-size: 140%;
}

.warranty-page .subTitle {
    font-size: 26px;
	margin-bottom: 2rem;
}

.warranty-page .subTitle span {
    font-size:46px;
	font-weight: bold;
}

.warranty-page .taiyonensu {
	margin-bottom: 4rem;
}

.plan .blue {
	background: #ddecf9;
}

.plan .yellow {
	background: #fff7e1;
}

.plan .orange {
	background: #fce3d6;
}

.plan .purple {
	background: #eee2ef;
}

.plan .blue_dark {
	background: #dadde9;
}

.plan .planName {
	font-size: 29px;
	text-align: center;
	margin: 0 auto 1.6rem;
	line-height: 1.1;
}

.plan .planName span.textSmall {
	font-size: 20px;
}

.plan .planName span.textSmaller {
	font-size: 16px;
}

.plan .osusume {
	border: 6px solid #C90010;
}

.plan .text {
	margin-bottom: 25px;
}

.plan div table {
	width: 100%;
	white-space: unset;
}

.plan table, td, th {
	border: none;
	font-size: 12px;
	line-height: 1;
	vertical-align: middle;
}

.plan table tr {
	background: #fff;
}

.plan .blue table tr:nth-child(2n) {
	background: #c5dff5;
}

.plan .yellow table tr:nth-child(2n) {
	background: #feebc8;
}

.plan .orange table tr:nth-child(2n) {
	background: #f9d0ba;
}

.plan .purple table tr:nth-child(2n) {
	background: #e1c9e1;
}

.plan .blue_dark table tr:nth-child(2n) {
	background: #c8ccd9;
}

.plan div table th {
	text-align: center;
	border-right:1px solid #fff;
	width: 35%;
}	

.plan div table td {
	text-align: center;
}

.plan table tr.-emphasis {
	border: 2px solid #C90010;
}

.plan table tr.-emphasis th,
.plan table tr.-emphasis td {
	color: #C90010;
	font-weight: 700;
}

.plan table tr.-none {
	background: transparent !important;
}

.plan table tr.-none th,
.plan table tr.-none td {
	color: transparent !important;
	background: transparent !important;
	border-color: transparent !important;
}

.plan div .kakaku {
	text-align: center;
	font-size: 56px;
	color: #C90010;
	line-height: 1;
    margin-bottom: 15px;
}

.plan div .kakaku span {
	font-size:26px;
}

.plan div .kakaku span.textSmall01 {
	font-size:16px;
}

.plan div .kakaku span.textSmaller {
    font-size: 25%;
}

.plan .loan {
	font-size: 12px;
	text-align: center;
}

.plan div .soba {
	text-align: center;
	color:#6d6d6d;
	font-size: 20px;
    line-height: 1.4;
}

.warranty-page h3 {
    text-align: center;
    font-size: 26px;
    line-height: 1.8;
    color: #000;
    margin-bottom: 4rem;
}

.warranty-page h3.u-title--hi {
	color: #000;
	padding: 5px 0 0 20px;
	border-left: 8px solid #000;
	font-size: 26px;
	text-align: left;
}

.warranty-page h3.u-title--hi em {
	font-size: 32px;
	font-weight: 700;
	display: block;
}

.warranty-page h3.u-title--hi b {
	font-size: 20px;
	font-weight: 700;
	display: block;
}

.warranty-page h3.u-title--hi.-bg {
	padding-top: .5em;
	padding-bottom: .5em;
	background: #f2f2f2;
}

.warranty-page h3.u-title--hi.-bg em {
	font-size: 28px;
	line-height: 1.35;
}

.warranty-page h4.maru {
    font-size: 22px;
	margin-bottom: 1rem;
}

.warranty-page h4.maru:before {
    content:"●";
	color:#C90010;
	font-size: 22px;
	margin-right: 5px;
}

.merit ul,.caution ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 2rem;
}

.merit ul li {
	background: #ddd;
	text-align: center;
    width: 32.5%;
    padding: 1.4rem 0;
    margin-bottom: 1.2%;
	font-weight: bold;
    font-size: 17px;
}

.caution ul li {
	text-align: center;
    width: 32.5%;
    padding: 1.4rem 0;
    margin-bottom: 1.2%;
	border: 1px solid #434242;
	font-weight: bold;
    font-size: 17px;
}

.progression,.radical {
    margin-bottom: 4rem;
}

.radical {
    justify-content: center;
}

.radical.flexBox div {
    width: 44%;
	margin: 0 auto 4rem;
}

p.kakaku02.u-font--serif {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 24px;
    line-height: 1;
}

p.kakaku02.u-font--serif span {
    font-size: 40px;
}

p.kakaku02.u-font--serif small {
	font-size: 14px;
}

.voice .good .textArea {
	min-height: 9.5rem;
}

.voice .good .case {
	color: #fff;
	background: #3baf26;
}

.voice .good .textArea {
	border-color: #b4d9ad;
}

.voice .bad {
	margin-top: 20px;
}

.voice .bad .textArea {
	min-height: 12rem;
}

.caseBox {
    width: 49%;
	margin-bottom: 4rem;
}

.voice .bad .caseBox {
	margin-bottom: 0;
}

.case {
    display: inline-block;
    background: #ddd;
    padding: 10px 15px 7px;
    border-radius: 5px 5px 0 0;
    font-weight: bold;
    line-height: 1;
}

.flexBox.textArea {
    border: 4px solid #ddd;
    align-items: center;
    padding: 1.5rem;
	justify-content: flex-start;
}

.flexBox.textArea img {
    width: 70px;
	margin-right: 15px;
}

.flexBox.textArea p span {
    font-weight: bold;
}

.voice h4:before {
	content: "";
}

.enefarm h3.l-service-lineup-title span {
    font-size: 46px;
}

.hojokin p {
	margin-bottom: 3rem;
}

.hojokin ul {
    justify-content: center;
	align-items: center;
	margin-bottom: 3rem;
}

.hojokin ul li {
	background: #ddd;
	position: relative;
	width: 12%;
	font-size: 15px;
	text-align: center;
	padding: 0.6rem;
	margin: 0 1rem;
	min-height:108px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.hojokin ul li::after {
    content: "";
    position: absolute;
    right: -80px;
    top: 0;
    bottom: 0;
    margin: auto;
    box-sizing: border-box;
    border: 55px solid transparent;
    border-left: 25px solid #ddd;
}

.hojokin ul li:last-child {
    background: none;
	border: 2px solid #75A92D;
	color: #75A92D;
	font-weight: bold;
	font-size: 18px;
}

.hojokin ul li:last-child:after {
    border: none;
}

.hojokin ul li.bgGreen {
	background: #75A92D;
	color:#fff;
}

.hojokin ul li.bgGreen::after {
    border-left: 25px solid #75A92D;
}

.hojokinKakaku {
	font-size: 26px;
	line-height: 1;
	font-weight: bold;
}

.hojokinKakaku span {
	font-size: 70px;
	color:#C90010;
	font-weight: bold;
}

.hojokinToiawase {
	border: 1px solid #434242;
	padding: 1.6rem;
	width: 50%;
	margin: 0 auto;
}

.hojokinToiawase h5 {
	text-align: center;
	margin-bottom: 1rem;
	font-size: 20px;
}

.hojokinToiawase p {
	margin-bottom: 0;
	text-align: center;
}

.hojokinToiawase a {
	display: inline-block;
	text-decoration: underline;
	color:#C90010;
}

.hojokinToiawase .tel a {
	text-decoration:none;
	pointer-events: none;
	font-weight: bold;
	color:#434242;
	font-size: 30px;
}

.present .text {
	margin-bottom: 2rem;
}

.present .hojokinKakaku span {
    font-size: 70px;
}

/*.present .hojokinKakaku span.kana {
    letter-spacing: -0.5rem;
}*/

.flexBox.column03 {
	margin-bottom: 40px;
}

.flexBox.column03 div {
	align-items: center;
}

.flexBox.column03 div {
    text-align: center;
    border: 4px solid #ddd;
    padding: 1rem 1.6rem;
    width: 32%;
    margin-bottom: 2rem;
	align-items: center;
    justify-content: center;
    display: flex;
	flex-direction: column;
}

.flexBox.column03 div .kakaku {
	font-size: 20px;
	line-height: 1.2;
}

.flexBox.column03 div .kakaku span {
	font-size:36px ;
}

.flexBox.column03 div.otoku {
    text-align: center;
    border: 4px solid #C90010;
    padding: 1rem 1.6rem;
    width: 32%;
    margin-bottom: 2rem;
	align-items: center;
    justify-content: center;
    display: flex;
	flex-direction: column;
}

.flexBox.column03 div.otoku .kakaku span {
	color: #C90010;
}

.flexBox.column02 {
	justify-content: center;
	margin-bottom: 40px;
}

.flexBox.column02 .ecowill,.flexBox.column02 .gas {
	width: 38%;
	margin: 0 1%;
}

.flexBox.column02 .ecowillBg,.flexBox.column02 .gasBg {
	color:#fff;
	padding: 0.6rem 1.2rem;
	margin-bottom: 0.6rem;
	text-align: center;
}

.flexBox.column02 .kakaku span {
	font-size: 30px;
}

.flexBox.column02 .ecowillBg {
	background: #8B76AE;
}

.flexBox.column02 .gasBg {
	background: #268CB4;
}

.flexBox.column02 .text {
	font-size: 14px;
}

.enefarm .typeS h3.l-plan-voice-message {
    margin: 0 0 40px;
}

.enefarm .typeS p {
    margin: 0 0 40px;
}

.hatsudenPlan .flexBox {
	justify-content: center;
}

.hatsudenPlan .flexBox div {
	margin: 0 2%;
}

.hatsudenPlan .flexBox .inline {
    display: inline-block;
	margin: 0 4% 0 0;
}

.hatsudenPlan .flexBox div h5 {
    background: #66b4b6;
    display: inline-block;
    padding: 4px 12px;
    color: #fff;
    border-radius: 5px;
	margin-bottom: 5px;
}

.hatsudenPlan .flexBox div p {
    margin-bottom: 1rem;
}

.hatsudenPlan .flexBox div .flexBox {
	justify-content: flex-start;
}

.hatsudenPlan .flexBox div p.kinri {
	background: #ea5206;
	color: #fff;
	font-weight: bold;
	padding: 4px 12px;
	font-size: 26px;
	border-radius: 5px;
	margin-right: 1rem;
	display: inline-block;
    vertical-align: middle;
	margin: 1.5rem 1rem 0 0;
}

.hatsudenPlan .flexBox div p.kinri span {
	font-size: 16px;
}

.hatsudenPlan .flexBox div p.u-font--Oswald {
    font-size: 48px;
    font-weight: bold;
    color: #C90010;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
	margin: 1.5rem 0 0;
}

.l-service-3plan {
	width: 100%;
	margin: 40px auto 0;
	border: 1px solid #707070;
}

.warranty-page h3.l-service-3plan-title {
	color: #000;
	font-size: 24px;
	line-height: 1;
	text-align: center;
	margin: 55px 0 0;
}

.l-service-3plan-title em {
	font-size: 32px;
	display: block;
	margin-bottom: 2rem;
}

.l-service-3plan-title em span {
	color: #B90F17;
	font-size: 32px;
	font-weight: 700;
}

.l-service-3plan-title em span b {
	font-size: 64px;
}

.l-service-3plan-items {
	margin: 30px 0 40px;
	padding: 0 30px;
	display: flex;
	gap: 20px;
}

.l-service-3plan-item {
	text-align: center;
	width: calc(100% / 3);
	border: 2px solid #000;
}

.l-service-3plan-item--low {
	border-color: #ddecf9;
}

.l-service-3plan-item--mid {
	border-color: #fff7e1;
}

.l-service-3plan-item--hi {
	border-color: #dadde9;
}

.l-service-3plan-item--max {
	border-color: #eee2ef;
}

.l-service-3plan-item h4 {
	padding: 20px 0;
	font-size: 22px;
}

.l-service-3plan-item h4 span.textSmall {
	font-size: 16px;
}

.l-service-3plan-item--low h4 {
	background: #ddecf9;
}

.l-service-3plan-item--mid h4 {
	background: #fff7e1;
}

.l-service-3plan-item--hi h4 {
	background: #dadde9;
}

.l-service-3plan-item--max h4 {
	background: #eee2ef;
}

.l-service-3plan-item h4 img {
	width: 67.85%;
}

.l-service-3plan-item p {
	font-size: 28px;
}

.l-service-3plan-item p {
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
	padding: 15px 0 25px;
}

.l-service-3plan-item--low p {
	color: #B90F17;
}

.l-service-3plan-item--mid p {
	color: #B90F17;
}

.l-service-3plan-item--hi p {
	color: #B90F17;
}

.l-service-3plan-item--max p {
	color: #B90F17;
}

.l-service-3plan-item small {
	font-size: 18px;
	font-weight: 700;
}

.l-service-3plan-item p em {
	font-size: 54px;
	font-weight: 400;
	margin: 0 .15em 0 -.05em;
	display: inline-block;
}

.center.price {
    margin-bottom: 40px;
}

/*Add CS 202308*/
.defect_warranty * {
	box-sizing: border-box;
}

.defect_warranty .u-title--hi + * {
	margin-top: -30px;
}

.defect_warranty .-chart_title {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
	margin: 30px 0 0;
	padding: .5em 1em;
	background: #9b2224;
}

.defect_warranty .-chart_image {
	text-align: center;
	margin: 30px 0 0;
	padding: 0 120px;
	display: block;
}

.defect_warranty .-chart_image img {
	width: 100%;
}

.defect_warranty .-summary {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin: 30px 120px 0;
	padding: 15px 0;
	background: #a5393a;
}

.defect_warranty .-summary strong {
	color: #fff33f;
	font-size: 24px;
	display: block;
}


@media screen and (max-width: 768px) {	
	
	.warranty-page .inner {
		margin-bottom: 40px;
	}
	
	.warranty-page section img {
		width: 100%;
		max-width: unset;
		transform: unset;
	}
	
	.l-mv-image {
		overflow: hidden;
	}
	
	.l-mv-image img {
		width: 140%;
		transform: translate(-7%,0);
	}
	
	.l-mv-inner {
		width: calc(100% - 30px);
		margin-top: -10%;
	}
	
	.l-mv-badge {
		width: 30%;
		margin: -26% 2% 0 0;
	}
	
	.l-mv-catch {
		font-size: 14px;
	}
	
	.l-mv-title {
		width: 90%;
		margin-top: 15px;
	}
	
	.l-mv-title:after {
		width: 120px;
		height: 7px;
		bottom: -30px;
	}
	
	.l-mv-sub {
		font-size: 12px;
		margin-top: 50px;
	}
		
	.l-cta-button {
		margin: 60px 0 60px;
	}
	
	.l-cta-button a {
		font-size: 16px;
		width: calc(100% - 30px);
		min-width: 0;
		margin: 0 auto;
	}
	
	.u-title--hi em {
		font-size: 22px;
	}
	
	.u-title--hi b {
		font-size: 16px;
	}
	
	.warranty-page h3.u-title--hi.-bg em {
		font-size: 20px;
	}
	
	.enefarm img {
		width: 100%;
		margin-bottom: 40px;
	}
	
	.enefarm p.text {
		margin-bottom: 1.6rem;
	}
	
	.warranty-page h2.title span {
		font-size: 20px;
	}
	
	.enefarm h3.l-service-lineup-title span {
		font-size: 7vw;
	}
	
	.enefarm h3.l-plan-voice-message {
		color: #000;
		font-size: 20px;
		font-weight: 700;
		text-align: center;
		margin: 0 0 40px;
	}
	
	.enefarm h3.l-plan-voice-message span {
		color: #C90010;
		font-size: 30px;
		font-weight: 700;
		text-align: center;
	}
	
	.enefarm h3.l-plan-voice-message span.u-font--Oswald {
		font-size: 40px;
	}
	
	.enefarm h3.u-title--hi {
		margin: 40px 0 40px;
		font-size: 20px;
	}
	
	.enefarm .sign {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
		margin-bottom: 40px;
	}
	
	.enefarm .sign li {
		width: 49%;
		background: #eee;
		color:#434242;
		text-align: center;
		min-height: 5rem;
		margin-bottom: 1%;
		display: grid;
		align-items: center;
		font-size: 13px;
		font-weight: bold;
	}

	.warranty-page h2.title {
		line-height: 1.2;
		margin: 3rem auto 3rem;
		font-size: 30px;
	}

	.warranty-page .subTitle {
		font-size: 20px;
		margin-bottom: 2rem;
	}

	.warranty-page .subTitle span {
		font-size: 28px;
		font-weight: bold;
	}

	.warranty-page .taiyonensu {
		margin-bottom: 4rem;
	}
	
	.plan.flexBox {
		display: block;
	}
	
	.plan div {
		width: 94%;
		padding: 20px 15px;
		margin: 0 auto 1.6rem;
	}

	.plan .planName {
		width: 100%;
		margin: 0 auto 20px;
		font-size: 26px;
		line-height: 1.1;
	}
	
	.plan .planName span.textSmall {
		font-size: 18px;
	}
	
	.plan .planName span.textSmaller {
		font-size: 15px;
	}
	
	.plan .text {
		min-height: unset;
		margin-bottom: 20px;
	}
	
	.plan div table {
		margin-bottom: 20px;
	}
	
	.plan div table th {
		width: 40%;
		vertical-align: middle;
		
	}
	
	.plan table, td, th {
		font-size: 12px;
		padding: 10px 0;
	}
	
	.plan div .kakaku {
		font-size: 70px;
		line-height: 1;
    	margin-bottom: 20px;
	}

	.plan div .soba {
		font-size: 24px;
	}

	.warranty-page h3 {
		font-size: 20px;
		margin-bottom: 40px;
		line-height: 1.6;
	}

	.warranty-page h3.u-title--hi {
		color: #000;
		padding: 5px 0 0 20px;
		border-left: 8px solid #000;
		font-size: 22px;
		text-align: left;
	}

	.warranty-page h3.u-title--hi em {
		font-size: 22px;
		display: block;
	}

	.warranty-page h3.u-title--hi b {
		font-size: 16px;
	}

	.warranty-page h4.maru {
		font-size: 18px;
	}

	.warranty-page h4.maru:before {
		font-size:18px;
	}

	.merit ul li {
		font-size: 13px;
		width:49%;
		padding: 1.2rem 0;
		margin-bottom: 2%;
	}

	.caution ul li {
		font-size: 13px;
		width: 100%;
		padding: 1.2rem 0;
		margin-bottom: 2%;
	}

	.progression {
		margin-bottom: 20px;
	}
	
	.radical {
		margin-bottom: 0;
	}

	.radical.flexBox div {
		width: 100%;
		margin: 0 auto 40px;
	}

	p.kakaku02.u-font--serif {
		font-size: 22px;
		margin-bottom: 20px;
	}

	p.kakaku02.u-font--serif span {
		font-size: 50px;
	}
	
	.flexBox.good {
		display: block;
	}

	.voice .good .textArea {
		min-height: unset;
		padding: 15px;
	}
	
	.flexBox.bad {
		display: block;
	}

	.voice .bad .textArea {
		min-height: unset;
		padding: 15px;
	}

	.caseBox {
		width: 100%;
		margin-bottom: 40px;
	}

	.voice .bad .caseBox {
		margin-bottom: 40px;
	}

	.case {
		font-size: 14px;
	}

	.flexBox.textArea img {
		width: 70px;
		margin: 0 auto 15px;
	}

	.enefarm h3.l-service-lineup-title span {
		font-size: 30px;
	}
	
	.center.imageWrap {
		overflow-x: scroll;
	}
	
	.center.imageWrap div {
		width: 600px;
		margin-bottom: 5px;
	}	
	
	.center.imageWrap img {
		width: 100%;
		margin-bottom: 5px;
	}
	
		.hojokin p {
		margin-bottom: 2rem;
	}

	.hojokin ul {
		display: block;
	}

	.hojokin ul li {
		width: 220px;
		padding: 15px;
		margin: 0 auto 35px;
		min-height:unset;
	}

	.hojokin ul li::after {
		bottom: 0;
		top: 100%;
		right: 0;
		left: 0;
		margin: 0 auto auto;
		border: 110px solid transparent;
		border-top: 20px solid #ddd;
	}

	.hojokin ul li:last-child {
		margin-bottom: 20px;
	}

	.hojokin ul li.bgGreen::after {
		border-top: 20px solid #75A92D;
		border-left:110px solid transparent;
	}

	.hojokinKakaku {
		font-size: 20px;
	}

	.hojokinKakaku span {
		font-size: 40px;
	}

	.hojokinToiawase {
		padding: 15px;
		width: 100%;
	}

	.hojokinToiawase h5 {
		font-size: 16px;
		line-height: 1;
    	margin-bottom: 15px;
	}
	
	.hojokin .hojokinToiawase p {
		margin-bottom: 0;
	}
	
	.hojokin .hojokinToiawase p.textSmall {
		margin-bottom: 10px;
	}

	.hojokinToiawase .tel a {
		pointer-events: inherit;
		font-size: 24px;
	}

	.present .text {
		margin-bottom: 2rem;
	}

	.present .hojokinKakaku span {
		font-size: 40px;
	}

	.present .hojokinKakaku span.kana {
		/*letter-spacing: -5px;*/
    	line-height: 1.6;
	}

	.flexBox.column03 {
		margin-bottom: 0;
		display: block;
	}

	.flexBox.column03 div {
		padding: 15px;
		width: 100%;
		margin-bottom: 20px;
	}

	.flexBox.column03 div .kakaku {
		font-size: 18px;
	}

	.flexBox.column03 div .kakaku span {
		font-size:30px ;
	}

	.flexBox.column03 div.otoku {
		padding: 10px;
		width: 100%;
		margin-bottom: 40px;
	}

	.flexBox.column02 {
		margin-bottom: 20px;
	}

	.flexBox.column02 .ecowill,.flexBox.column02 .gas {
		width: 90%;
		margin: 0 auto;
	}

	.flexBox.column02 .ecowillBg,.flexBox.column02 .gasBg {
		padding: 15px;
	}

	.flexBox.column02 .kakaku span {
		font-size: 30px;
	}

	.enefarm .typeS h3.l-plan-voice-message {
		margin: 0 0 40px;
	}

	.enefarm .typeS p {
		margin: 0 0 40px;
	}

	.hatsudenPlan .flexBox div {
		margin: 0 2%;
	}
	
	.hatsudenPlan .flexBox div.photo {
		width: 70%;
		margin: 0 auto 20px;
	}
	
	.hatsudenPlan .flexBox div.photo img {
		margin: 0 ;
	}
	
	.hatsudenPlan .flexBox div p.kinri {
		font-size: 20px;
		margin: 0 0.5rem 40px 0;
	}

	.hatsudenPlan .flexBox div p.kinri span {
		font-size: 14px;
	}

	.hatsudenPlan .flexBox div p.u-font--Oswald {
		font-size: 36px;
		margin: 0 0 40px;
	}

	.warranty-page .hatsudenPlan h3 {
		font-size: 16px;
	}

	.warranty-page .enefarm.inner,.warranty-page .enefarm.inner .l-cta-button {
		margin: 0 auto;
	}
	
	.detail {
		font-size: 90%;
	}
	
	.l-service-3plan-title {
		font-size: 18px;
		margin-top: 30px;
	}
	
	.l-service-3plan-title em {
		font-size: 24px;
		line-height: 1.25;
	}
	
	.l-service-3plan-title em span b {
		font-size: 46px;
	}
	
	.l-reform-price-title:before,
	.l-reform-price-title:after {
		width: 60px;
	}
	
	.l-service-3plan-items {
		margin-top: 20px;
		margin-bottom: 15px;
		display: block;
		padding-right: 15px;
		padding-left: 15px;
	}
	
	.l-service-3plan-item {
		width: 100%;
		margin: 10px 0 0;
	}
	
	.l-service-3plan-item h4 {
		padding: 7px 0;
	}
	
	.l-service-3plan-item h4 img {
		width: 60%;
	}
	
	.l-service-3plan-item p {
		padding: 10px 0 15px;
	}
	
	.l-service-3plan-item p em {
		font-size: 52px;
	}

	.center.price {
		margin-bottom: 20px;
	}
	
/*Add CS 202308*/
	.defect_warranty .-chart_title {
		text-align: center;
	}
	
	.defect_warranty .-chart_image {
		padding-right: 0;
		padding-left: 0;
	}
	
	.defect_warranty .-summary {
		font-size: 14px;
		margin-right: 0;
		margin-left: 0;
	}
	
	.defect_warranty .-summary strong {
		line-height: 1.35;
		margin-top: 5px;
	}
	
	
	
}
@media screen and (min-width: 769px) {	

	.plan.flexBox {
		flex-wrap: wrap;
	}
	
	.plan div {
		width: 25%;
		padding: 25px 12px;
		margin: 0 0 2%;
	}
	
	.plan table, td, th {
		line-height: 1.3;
		height: 50px;
	}
		
	.plan .text {
		margin-bottom: 25px;
		min-height: 8.5rem;
		font-size: 14px;
	}
	
	.plan .osusume {
		margin: 0 4px 2%;
	}
	
	.enefarm img {
		width: auto;
		max-width: 100%;
		margin-bottom: 60px;
	}
	
	.enefarm p.text {
		margin-bottom: 1.6rem;
	}
	
	.enefarm h3.l-service-lineup-title {
		margin-bottom: 40px;
	}
	
	.enefarm h3.l-service-lineup-title span {
		font-size: 46px;
	}
	
	.enefarm h3.l-plan-voice-message {
		color: #000;
		font-size: 26px;
		font-weight: 700;
		text-align: center;
		margin: 0 0 80px;
	}
	
	.enefarm h3.l-plan-voice-message span {
		color: #C90010;
		font-size: 70px;
		font-weight: 700;
		text-align: center;
	}
	
	.enefarm h3.l-plan-voice-message.replacement {
		color: #000;
		font-size: 26px;
		font-weight: 700;
		text-align: center;
		margin: 0 0 80px;
		line-height: 1.2;
	}
	
	.enefarm h3.l-plan-voice-message.replacement span {
		color: #C90010;
		font-size: 26px;
		font-weight: 700;
		text-align: center;
	}
	
	.enefarm h3.l-plan-voice-message.replacement span.u-font--Oswald {
		font-size: 70px;
	}
	
	.enefarm h3.u-title--hi {
		margin: 80px 0 40px;
	}
	
	.enefarm .sign {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
		margin-bottom: 80px;
	}
	
	.enefarm .sign li {
		width: 24%;
		background: #eee;
		color:#434242;
		text-align: center;
		min-height: 6rem;
		margin-bottom: 1%;
		display: grid;
		align-items: center;
		font-weight: bold;
	}
	
	#fixedNav {
		display: none;
	}
	
}

@media screen and (max-width: 1119px) {
	
	.l-mv-inner {
		width: calc(100% - 120px);
	}
	
	.l-mv-title {
		width: 70%;
	}
	
	.l-mv-badge {
		width: 25%;
		margin: -14% -8% 0 0;
	}
		
	.u-title--hi em {
		font-size: 28px;
	}
	
	.plan div {
		width: 100%;
	}
	
	.l-service-3plan {
		width: 100%;
	}
	
	.l-service-3plan-item h4 img {
		width: calc(100% - 30px);
	}
	
	.l-service-3plan-item h4 {
		font-size: 18px;
	}
	
	.l-service-3plan-items {
		gap: 10px;
	}

	.l-service-3plan-item p em {
		font-size: 42px;
	}
	
	
	
	
	
}




/*＝＝＝＝2023/4/7追加＝＝＝＝*/


.bgRed {
    text-align: center;
    margin-top: 50px;
}
		
.bgRed p {
    background: #b90f17;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    padding: 7px 25px;
    display: inline-block;
}		
		
.u-notes li {
	font-size: 11px;
	line-height: 1.35;
	padding: 0 0 0 1.5em;
	display: inline-block;
	position: relative;
}

.u-notes li:before {
	content: attr(data);
	position: absolute;
	top: 0;
	left: 0;
}		
		
.l-reform-price + .u-notes li {
	display: block;
}		
		
.l-reform-price + .u-notes.annotation,.u-notes.annotation {
    margin-bottom: 1rem;
}

.annotation li {
	display: inherit;
}
		
.center.price img {
    margin-bottom: 0;
}
		
.hatsudenPlan {
    margin-bottom: 100px;
}		

@media screen and (max-width: 768px) {	

.u-align--right {
	text-align: left;
}

.bgRed {
	padding: 0 15px;
}

.bgRed p {
	font-size: 17px;
	padding: 7px 15px;
	width: 100%;
}	

.l-reform-price-center-bar {
	margin: 0;
}

.hatsudenPlan {
    margin-bottom: 30px;
}
	
	
	
}


/*＝＝＝＝＝＝＝＝
ページ最下部エネファームの金額の箇所
＝＝＝＝＝＝＝＝＝*/

.hatsudenPlan .price .flexBox.parent {
	margin-bottom: 30px;
}

.hatsudenPlan .price .flexBox.parent .leftArea ul.flexBox {
	align-items: center;
	margin-bottom: 10px;
}

.hatsudenPlan .price .flexBox.parent .leftArea ul.flexBox li.border {
	border:1px solid #C90310;
	padding: 5px 20px;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	line-height: 1.3;
	min-height: 52px;
}

.hatsudenPlan .price .flexBox.parent .leftArea ul.flexBox li.plus {
	font-size: 18px;
	margin: 0 10px;
	font-weight: bold;
}

.hatsudenPlan .price .flexBox.parent .flexBox.child {
	justify-content: center;
	align-items: center;
}

.hatsudenPlan .price .flexBox.parent .flexBox.child .textSmall {
    margin-bottom: 0;
    margin-top: 7px;
    font-size: 11px;
}

.hatsudenPlan .price .flexBox.parent .price_text {
	color:#C90310;
	font-size: 28px;
    font-weight: 500;
}

.hatsudenPlan .price .flexBox.parent .leftArea .price_text span {
    font-size: 73px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 3px;
}

.hatsudenPlan .price .flexBox.parent .leftArea .right.textSmaller {
    font-size: 10px;
    margin-top: -20px;
}

.hatsudenPlan .price .flexBox.parent .leftArea ul {
    margin-bottom: 10px;
}

.hatsudenPlan .price .flexBox.parent .rightArea ul li.border {
	border:1px solid #000;
	padding: 5px 20px;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	line-height: 1.3;
	min-height: 52px;
	display: flex;
    flex-direction: column;
    justify-content: center;
}

.hatsudenPlan .price .flexBox.parent .rightArea ul li.plus {
	font-size: 18px;
	margin: 0 10px;
	font-weight: bold;
}

.hatsudenPlan .price .flexBox.parent .rightArea .center.textSmall {
	margin-bottom: 0;
}

.hatsudenPlan .price .flexBox.parent .rightArea .price_text span {
    font-size: 58px;
    font-weight: 500;
	line-height: 1;
}

@media screen and (max-width: 768px) {
	
	.hatsudenPlan .price .flexBox.parent .leftArea ul.flexBox li.border {
		padding: 5px 5px;
		font-size: 10px;
		min-height: auto;
	}

	.hatsudenPlan .price .flexBox.parent .leftArea ul.flexBox li.plus {
		font-size: 12px;
		margin: 0 3px;
	}

	.hatsudenPlan .price .flexBox.parent .leftArea .price_text span {
		font-size: 54px;
	}
	
	.hatsudenPlan .price .flexBox.parent .rightArea ul li.border {
		padding: 5px 5px;
		font-size: 11px;
		line-height: 1.8;
		min-height: auto;
	}
	
	.hatsudenPlan .price .flexBox.parent .rightArea .price_text span {
		font-size: 48px;
	}	
	
	
	.hatsudenPlan .price .flexBox.parent {
		margin-bottom: 20px;
	}
	
	.hatsudenPlan .price .flexBox.parent .flexBox.child .textSmall {
		margin-top: -7px;
		margin-right: 5px;
		line-height: 1.2;
	}
	
	
	
	
}