@charset "UTF-8";
/*--------------------------------------------------------------
# ビューポイントごと表示非表示
-------------------------------------------------------------- */
.off1200,
.off1170,
.off1100,
.off991,
.off888,
.off850,
.off768,
.off767,
.off640,
.off480,
.off375,
.off360,
.off320 {
		display: block !important;
}

.on1200,
.on1170,
.on1100,
.on991,
.on888,
.on850,
.on768,
.on767,
.on640,
.on480,
.on375,
.on360,
.on320 {
		display: none !important;
}

@media (max-width: 1200px) {
		.off1200 {
				display: none !important;
		}
		.on1200 {
				display: block !important;
		}
}

@media (max-width: 1170px) {
		.off1170 {
				display: none !important;
		}
		.on1170 {
				display: block !important;
		}
}

@media (max-width: 1100px) {
		.off1100 {
				display: none !important;
		}
		.on1100 {
				display: block !important;
		}
}

@media (max-width: 991px) {
		.off991 {
				display: none !important;
		}
		.on991 {
				display: block !important;
		}
}

@media (max-width: 888px) {
		.off888 {
				display: none !important;
		}
		.on888 {
				display: block !important;
		}
}

@media (max-width: 850px) {
		.off850 {
				display: none !important;
		}
		.on850 {
				display: block !important;
		}
}

@media (max-width: 768px) {
		.off768 {
				display: none !important;
		}
		.on768 {
				display: block !important;
		}
}

@media (max-width: 767px) {
		.off767 {
				display: none !important;
		}
		.on767 {
				display: block !important;
		}
}

@media (max-width: 640px) {
		.off640 {
				display: none !important;
		}
		.on640 {
				display: block !important;
		}
}

@media (max-width: 480px) {
		.off480 {
				display: none !important;
		}
		.on480 {
				display: block !important;
		}
}

@media (max-width: 375px) {
		.off375 {
				display: none !important;
		}
		.on375 {
				display: block !important;
		}
}

@media (max-width: 360px) {
		.off360 {
				display: none !important;
		}
		.on360 {
				display: block !important;
		}
}

@media (max-width: 320px) {
		.off320 {
				display: none !important;
		}
		.on320 {
				display: block !important;
		}
}

/*/////////////////////////////////////////////////////////////*/
.scale-modal {
		z-index: 600;
		z-index: 1000;
		display: none;
}

.scale-modal, .scale-modal-overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
}

.scale-modal-overlay {
		right: 0;
		bottom: 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		     box-sizing: border-box;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		-webkit-align-items: flex-start;
		   -moz-box-align: start;
		        align-items: flex-start;
		padding: 50px;
		overflow: auto;
		background-color: rgba(88, 180, 186, 0.8);
}

@media (max-width: 768px) {
		.scale-modal-overlay {
				padding: 4vw 0;
		}
}

.scale-modal-card {
		position: relative;
		width: 80%;
		max-width: 1040px;
		margin: auto;
		background-color: #fff;
		border-radius: 20px;
}

@media (max-width: 768px) {
		.scale-modal-card {
				width: 89.3333333333vw;
				border-radius: 2.6666666667vw;
		}
}

.scale-modal-close-wrap {
		position: absolute;
		top: 30px;
		right: 30px;
		width: 25px;
		height: 25px;
		cursor: pointer;
		-webkit-transition: opacity .2s ease;
		-o-transition: opacity .2s ease;
		transition: opacity .2s ease;
}

.scale-modal-close-wrap:hover {
		opacity: .7;
}

@media (max-width: 768px) {
		.scale-modal-close-wrap {
				top: 2.6666666667vw;
				right: 2.6666666667vw;
				width: 3.3333333333vw;
				height: 3.3333333333vw;
		}
}

.scale-modal-close-wrap img {
		display: block;
		width: 100%;
}

.scale-model-content {
		display: none;
		padding: 55px 30px 60px;
}

@media (max-width: 768px) {
		.scale-model-content {
				padding: 6.6666666667vw 4vw 4vw;
		}
}

.scale-model-content img {
		display: block;
		max-width: 100%;
		margin-right: auto;
		margin-left: auto;
}

.scale-model-content .text-center {
		text-align: center;
}

.model-subject.model-subject__scale {
		letter-spacing: .12em;
}

@media (max-width: 768px) {
		.model-subject.model-subject__scale {
				font-size: 4vw;
		}
}

.model-image.model-image__scale {
		max-width: 771px;
		margin-top: 55px;
		margin-right: auto;
		margin-left: auto;
}

@media (max-width: 768px) {
		.model-image.model-image__scale {
				max-width: 73.6vw;
				margin-top: 4vw;
		}
}

.model-condition.model-condition__scale {
		max-width: 771px;
		margin-top: 22px;
		margin-right: auto;
		margin-left: auto;
		font-size: 12px;
		line-height: 2;
		color: #000;
}

@media (max-width: 768px) {
		.model-condition.model-condition__scale {
				max-width: none;
				margin-top: 2.6666666667vw;
				font-size: 2.6666666667vw;
		}
}

.model-condition.model-condition__scale dt {
		letter-spacing: .15em;
}

@media (max-width: 768px) {
		.model-condition.model-condition__scale dt {
				font-size: 2.6666666667vw;
				letter-spacing: .1em;
		}
}

.model-condition-item.model-condition-item__scale {
		letter-spacing: .15em;
}

@media (max-width: 768px) {
		.model-condition-item.model-condition-item__scale {
				font-size: 2.6666666667vw;
				letter-spacing: .1em;
		}
}

.model-condition-text.model-condition-text__scale {
		letter-spacing: .1em;
}

.model-condition-text.model-condition-text.model-condition-text__scale span {
		display: inline-block;
		margin-left: 1em;
		text-indent: -1em;
}

.model-condition-text.model-condition-text.model-condition-text__scale span a {
		display: inline-block;
		margin-left: 1em;
}

.aqua-energy-btn.aqua-energy-btn__close {
		position: relative;
}

.aqua-energy-btn.aqua-energy-btn__close:after {
		position: absolute;
		top: 0;
		right: 87px;
		bottom: 0;
		display: block;
		width: 12px;
		height: 12px;
		margin-top: auto;
		margin-bottom: auto;
		content: "";
		background-image: url(../../../../eco/ev/images/icon-close.png);
		background-size: 100% 100%;
}

@media (max-width: 768px) {
		.aqua-energy-btn.aqua-energy-btn__close:after {
				right: 8vw;
				width: 1.6vw;
				height: 1.6vw;
		}
}

.aqua-energy-btn.aqua-energy-btn__scale {
		margin-top: 33px;
}

@media (max-width: 768px) {
		.aqua-energy-btn.aqua-energy-btn__scale {
				width: 32.8vw;
				margin-top: 0;
				font-size: 3.2vw;
		}
}

.saving-energy {
		padding-bottom: 100px;
		background-color: #ceecc6;
}

.saving-energy, .saving-energy * {
		color: #444;
}

.saving-energy, .saving-energy *, .saving-energy:after, .saving-energy :after, .saving-energy:before, .saving-energy :before {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		     box-sizing: border-box;
}

.saving-energy img {
		max-width: 100%;
		margin: auto;
		vertical-align: bottom;
}

.saving-energy .text-center {
		text-align: center;
}

.saving-energy .saving-energy-inner {
		max-width: 1080px;
		margin-right: auto;
		margin-left: auto;
}

@media (max-width: 768px) {
		.saving-energy {
				padding-right: 5.33vw;
				padding-left: 5.33vw;
		}
}

.SP {
		display: none;
}

@media (max-width: 768px) {
		.SP {
				display: block;
		}
}

.PC,
.pc-l {
		display: block;
}

@media (max-width: 768px) {
		.PC {
				display: none;
		}
}

.tab {
	display: none;
}
@media (max-width: 999px) {
		.pc-l {
			display: none;
		}
		.tab {
				display: block;
		}
}

.saving-energy-btn {
		font-family: M PLUS Rounded\ 1c,sans-serif;
		font-weight: 400;
		color: #fff;
		text-align: center;
		text-decoration: none;
		letter-spacing: .06em;
		cursor: pointer;
		background-color: #62a74d;
		border: none;
		border-radius: 30px;
		-webkit-transition: opacity .2s ease;
		-o-transition: opacity .2s ease;
		transition: opacity .2s ease;
}

@media (max-width: 768px) {
		.saving-energy-btn {
				border-radius: 10.91vw;
		}
}

.saving-energy-btn:active, .saving-energy-btn:hover, .saving-energy-btn:link, .saving-energy-btn:visited {
		color: #fff;
		text-decoration: none;
}

.saving-energy-btn:active span, .saving-energy-btn:hover span, .saving-energy-btn:link span, .saving-energy-btn:visited span {
		color: #fff;
}

.saving-energy-btn:hover {
		opacity: .7;
}

.aqua-energy-blank-anchor, .aqua-energy-blank-anchor:active, .aqua-energy-blank-anchor:link, .aqua-energy-blank-anchor:visited {
		color: #4594cf;
		text-decoration: underline;
}

.aqua-energy-blank-anchor:hover {
		color: #4594cf;
		text-decoration: none;
}

.aqua-energy-blank-anchor.ico_none:after {
		background: none;
}

.aqua-energy-blank-anchor:after {
		display: inline-block;
		width: 13px;
		height: 11px;
		content: "";
		background-image: url(../images/icon-saving_03.png);
		background-size: 100% 100%;
}

.hero {
		max-width: 1080px;
		padding: 40px 0 15px;
		margin: 0 auto;
}

@media (max-width: 768px) {
		.hero {
				padding: 0;
				margin-right: -5.33vw;
				margin-left: -5.33vw;
		}
}

.nav-list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		max-width: 1080px;
		margin: auto;
}

@media (max-width: 768px) {
		.nav-list {
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				-webkit-justify-content: space-between;
				   -moz-box-pack: justify;
				        justify-content: space-between;
				margin-bottom: -15px;
		}
}

.nav-item {
		-ms-flex-preferred-size: 255px;
		-webkit-flex-basis: 255px;
		        flex-basis: 255px;
		max-width: 255px;
		margin-top: 25px;
}

@media (max-width: 1120px) {
		.nav-item {
				-ms-flex-preferred-size: 48%;
				-webkit-flex-basis: 48%;
				        flex-basis: 48%;
				max-width: 48%;
				margin-top: 2%;
		}
}

@media (max-width: 768px) {
		.nav-item {
				-ms-flex-preferred-size: 48%;
				-webkit-flex-basis: 48%;
				        flex-basis: 48%;
				max-width: 48%;
				margin-top: 4vw;
		}
}

.nav-item-wide {
		-ms-flex-preferred-size: 530px;
		-webkit-flex-basis: 530px;
		        flex-basis: 530px;
		max-width: 530px;
}

@media (max-width: 1120px) {
		.nav-item-wide {
				-ms-flex-preferred-size: 98%;
				-webkit-flex-basis: 98%;
				        flex-basis: 98%;
				max-width: 98%;
				margin-left: 0 !important;
		}
}

@media (max-width: 768px) {
		.nav-item-wide {
				-ms-flex-preferred-size: 100%;
				-webkit-flex-basis: 100%;
				        flex-basis: 100%;
				max-width: 100%;
		}
}

.nav-item + .nav-item {
		margin-left: 20px;
}

@media (max-width: 768px) {
		.nav-item + .nav-item {
				margin-left: 0;
		}
}

.nav-item:nth-child(4) {
		margin-left: 0;
}

@media (max-width: 1120px) {
		.nav-item:nth-child(6) {
				margin-left: 0;
		}
}

.nav-anchor {
		position: relative;
		display: block;
		padding: 20px 0;
		font-size: 1.25rem;
		line-height: 1;
		text-align: center;
		text-decoration: none;
}

.nav-anchor:active, .nav-anchor:hover, .nav-anchor:link {
		color: #fff;
		text-decoration: none;
}

@media (max-width: 768px) {
		.nav-anchor:active, .nav-anchor:hover, .nav-anchor:link {
				padding-right: 5px;
		}
}

.nav-anchor:after {
		position: absolute;
		top: 0;
		right: 1em;
		bottom: 0;
		display: block;
		width: 15px;
		height: 9px;
		margin-top: auto;
		margin-bottom: auto;
		content: "";
		background: url(../images/icon-saving_03.png) 0 0 no-repeat;
		background-size: 100% 100%;
}

@media (max-width: 768px) {
		.nav-anchor:after {
				width: 3.33vw;
				height: 2vw;
		}
}

@media (max-width: 768px) {
		.nav-anchor {
				padding: 3.8vw 0;
				font-size: 3.5vw;
		}
}

.button {
		background-color: #62a74d;
		border-radius: 25px;
		-webkit-transition: opacity .2s ease;
		-o-transition: opacity .2s ease;
		transition: opacity .2s ease;
}

@media (max-width: 768px) {
		.button {
				border-radius: 7.33vw;
		}
}

.button:hover {
		opacity: .7;
}

.button a {
		display: block;
		padding: 16px 0;
		line-height: 1;
		text-align: center;
		letter-spacing: .1em;
}

@media (max-width: 768px) {
		.button a {
				padding: 4.6vw 0;
		}
}

.button a:hover {
		text-decoration: none;
}

.button a span {
		position: relative;
		font-size: 1.125rem;
		font-weight: 700;
		color: #fff;
}

@media (max-width: 768px) {
		.button a span {
				font-size: 4.26vw;
		}
}

.button a span:after {
		display: inline-block;
		width: 9px;
		height: 15px;
		margin-left: 10px;
		content: "";
		background: url(../images/icon-saving_01.png) 0 0 no-repeat;
		background-size: contain;
}

.saving {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		margin-top: 60px;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
}

.saving-box {
		width: 48.15%;
		max-width: 520px;
		padding: 50px 40px 40px;
		background-color: #fff;
		border-radius: 28px;
}

@media (max-width: 768px) {
		.saving-box {
				width: 100%;
				max-width: 100%;
				padding: 7.33vw 5.33vw 8vw;
		}
}

@media (max-width: 768px) {
		.saving-box#pGas {
				margin-top: 8vw;
		}
}

.saving-box-ttl {
		font-family: "Rounded M+ 2c",M PLUS Rounded\ 1c,sans-serif;
		font-size: 2.5rem;
		font-weight: 700;
		line-height: 1;
		text-align: center;
}

@media (max-width: 768px) {
		.saving-box-ttl {
				font-size: 7.2vw;
		}
}

.saving-box-txt {
		margin-top: 32px;
		font-size: 1rem;
		line-height: 2;
}

@media (max-width: 768px) {
		.saving-box-txt {
				margin-top: 6.13vw;
				font-size: 3.73vw;
		}
}

.saving-box-link li {
		display: inline;
}

.saving-box-link li:after {
		margin: 0 3px;
		content: "|";
}

@media (max-width: 768px) {
		.saving-box-link li:after {
				font-size: 3.73vw;
		}
}

.saving-box-link li:last-child:after {
		display: none;
}

.saving-box-link li a {
		font-size: .875rem;
		line-height: 2.28;
		color: #0095d0;
		text-decoration: underline;
}

@media (max-width: 768px) {
		.saving-box-link li a {
				font-size: 3.73vw;
		}
}

.saving-box-link li a:hover {
		text-decoration: none;
}

.saving-box-img {
		margin-top: 30px;
}

.saving-box-img-listnone {
		margin-top: 60px;
}

@media (max-width: 768px) {
		.saving-box-img, .saving-box-img-listnone {
				margin-top: 4vw;
		}
}

.saving-box-comments {
		height: 0;
		font-size: .75rem;
		line-height: 1;
		text-align: right;
}

@media (max-width: 768px) {
		.saving-box-comments {
				height: auto;
				margin-top: 5px;
				font-size: 3.73vw;
		}
}

.saving-box-comments a {
		display: inline-block;
		margin-top: 10px;
		color: #0095d0;
		text-decoration: underline;
}

.saving-box-comments a:hover {
		text-decoration: none;
}

.saving-box-btn {
		margin-top: 40px;
}

@media (max-width: 768px) {
		.saving-box-btn {
				margin-top: 5.3vw;
		}
}

.supervision {
		position: relative;
		padding: 0 202px 24px 262px;
		margin-top: 72px;
		background: url(../images/bg-saving_01.png) 0 0 no-repeat;
		background-size: contain;
}

@media (max-width: 1080px) {
		.supervision {
				padding: 0 18.7% 2.2% 24.25%;
		}
}

@media (max-width: 768px) {
		.supervision {
				padding: 0 5.33vw 4vw;
				margin-top: 10.06vw;
				background: url(../images/bg-saving_01_sp.png) 0 0 no-repeat;
				background-size: contain;
		}
}

.supervision-sub {
		position: relative;
		top: -12px;
		text-align: center;
}

@media (max-width: 768px) {
		.supervision-sub img {
				width: 35%;
		}
}

.supervision-ttl {
		width: 100%;
		max-width: 616px;
		margin: -8px auto 0;
}

.supervision-txt {
		margin-top: 15px;
		font-size: .9375rem;
		line-height: 1.733;
		color: #666;
		text-align: center;
}

@media (max-width: 1080px) {
		.supervision-txt {
				font-size: 1.38vw;
		}
}

@media (max-width: 768px) {
		.supervision-txt {
				font-size: 2.2vw;
				line-height: 2;
				text-align: left;
		}
}

.supervision-link {
		margin-top: 5px;
		text-align: center;
}

@media (max-width: 1080px) {
		.supervision-link {
				margin-top: 0;
		}
}

@media (max-width: 768px) {
		.supervision-link {
				padding-left: 19vw;
				margin-top: 2vw;
				text-align: right;
		}
}

.supervision-link li {
		display: inline;
}

.supervision-link li:after {
		margin: 0 6px;
		content: "|";
}

@media (max-width: 768px) {
		.supervision-link li:after {
				font-size: 3.73vw;
		}
}

.supervision-link li:last-child:after {
		display: none;
}

.supervision-link li a {
		font-size: .875rem;
		line-height: 2.28;
		color: #0095d0;
		text-decoration: underline;
}

@media (max-width: 1080px) {
		.supervision-link li a {
				font-size: 1.29vw;
		}
}

@media (max-width: 768px) {
		.supervision-link li a {
				font-size: 3vw;
				line-height: 1.75;
		}
}

.supervision-link li a:hover {
		text-decoration: none;
}

.supervision-btn {
		position: absolute;
		top: 60px;
		right: 43px;
		width: 120px;
		height: 120px;
		background: url(../images/img-saving_06.png) 0 0 no-repeat;
		background-size: contain;
		-webkit-transition: opacity .2s ease;
		-o-transition: opacity .2s ease;
		transition: opacity .2s ease;
}

@media (max-width: 1080px) {
		.supervision-btn {
				top: 20.5%;
				right: 3.98%;
				width: 11.11%;
				height: 11.11vw;
		}
}

@media (max-width: 768px) {
		.supervision-btn {
				position: relative;
				top: 0;
				right: 5vw;
				width: 50%;
				margin: 2vw 0 0 auto;
				background: none;
		}
}

.supervision-btn:hover {
		opacity: .7;
}

.supervision-btn a {
		display: block;
		width: 100%;
		height: 100%;
		text-decoration: none;
		cursor: pointer;
}

.supervision-btn a span {
		display: none;
}

@media (max-width: 768px) {
		.supervision-btn a span {
				display: block;
		}
}

.living {
		padding: 70px 60px 90px;
		margin-top: 60px;
		background-color: #fff;
		border-radius: 28px;
}

@media (max-width: 768px) {
		.living {
				padding: 8vw 5.3vw;
				margin-top: 8vw;
		}
}

.living-flex {
		position: relative;
}

.living-img {
		position: absolute;
		top: 0;
		left: -60px;
		-webkit-flex-basis: 250px;
		        flex-basis: 250px;
		max-width: 250px;
		margin-top: 5.625%;
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		    transform: translateX(-100%);
		-ms-flex-preferred-size: 250px;
}

@media (max-width: 768px) {
		.living-img {
				position: static;
				left: 0;
				-webkit-flex-basis: 64.6%;
				        flex-basis: 64.6%;
				max-width: 64.6%;
				margin: 8vw auto 0;
				-webkit-transform: translateX(0);
				-ms-transform: translateX(0);
				    transform: translateX(0);
				-ms-flex-preferred-size: 64.6%;
		}
}

.living-detail {
		position: relative;
		-webkit-flex-basis: 650px;
		        flex-basis: 650px;
		max-width: 650px;
		padding-right: 10px;
		margin-left: auto;
		-ms-flex-preferred-size: 650px;
}

.living-detail-ttl {
		font-family: "Rounded M+ 2c",M PLUS Rounded\ 1c,sans-serif;
		font-size: 2.5rem;
		font-weight: 700;
		-webkit-font-feature-settings: "palt" 1;
		-moz-font-feature-settings: "palt" 1;
		     font-feature-settings: "palt" 1;
		line-height: 1;
		letter-spacing: .1em;
}

@media (max-width: 768px) {
		.living-detail-ttl {
				font-size: 7vw;
				text-align: center;
		}
}

.living-detail-txt {
		margin-top: 26px;
		font-size: 1rem;
		line-height: 2.5;
		letter-spacing: .05em;
}

@media (max-width: 768px) {
		.living-detail-txt {
				margin-top: 5.6vw;
				font-size: 3.73vw;
				text-align: left;
		}
}

.living-detail-link {
		margin-top: 5px;
}

.living-detail-link li {
		display: inline;
}

.living-detail-link li:after {
		margin: 0 6px;
		content: "|";
}

.living-detail-link li:last-child:after {
		display: none;
}

.living-detail-link li a {
		font-size: .875rem;
		line-height: 2.28;
		color: #0095d0;
		text-decoration: underline;
}

@media (max-width: 768px) {
		.living-detail-link li a {
				font-size: 3.73vw;
		}
}

.living-detail-link li a:hover {
		text-decoration: none;
}

.living-detail-img {
		position: absolute;
		right: 25px;
		bottom: -20px;
		width: 130px;
		text-align: center;
}

@media (max-width: 768px) {
		.living-detail-img {
				position: static;
				width: 54.23%;
				margin: 6vw auto 0;
		}
}

.living-detail-btn {
		width: 260px;
		margin-top: 40px;
}

@media (max-width: 768px) {
		.living-detail-btn {
				width: 100%;
		}
}

.amendment {
		padding: 70px 60px;
		margin-top: 60px;
		background-color: #fff;
		border-radius: 28px;
}

@media (max-width: 768px) {
		.amendment {
				padding: 8vw 5.3vw;
				margin-top: 8vw;
		}
}

.amendment-ttl {
		font-family: "Rounded M+ 2c",M PLUS Rounded\ 1c,sans-serif;
		font-size: 2.5rem;
		font-weight: 700;
		-webkit-font-feature-settings: "palt" 1;
		-moz-font-feature-settings: "palt" 1;
		     font-feature-settings: "palt" 1;
		line-height: 1;
		text-align: center;
		letter-spacing: .1em;
}

@media (max-width: 768px) {
		.amendment-ttl {
				font-size: 7vw;
				letter-spacing: .02em;
		}
}

.amendment-catch {
		margin-top: 25px;
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 2.5;
		color: #4b9535;
		text-align: center;
		letter-spacing: .05em;
}

@media (max-width: 768px) {
		.amendment-catch {
				margin-top: 3.86vw;
				font-size: 4.26vw;
		}
}

.amendment-txt {
		font-size: 1rem;
		line-height: 2.5;
		text-align: center;
		letter-spacing: .05em;
}

@media (max-width: 768px) {
		.amendment-txt {
				margin-top: 3vw;
				font-size: 3.73vw;
				text-align: left;
		}
}

.amendment-btn {
		width: 280px;
		margin: 26px auto 0;
}

@media (max-width: 768px) {
		.amendment-btn {
				width: 100%;
				margin-top: 6.13vw;
		}
}

.other {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		padding: 40px;
		margin-top: 60px;
		background-color: #fff;
		border-radius: 28px;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
}

@media (max-width: 768px) {
		.other {
				padding: 8vw 5.33vw;
				margin-top: 8vw;
		}
}

.other-box {
		-ms-flex-preferred-size: 480px;
		-webkit-flex-basis: 480px;
		        flex-basis: 480px;
		max-width: 48.8%;
		border: 2px solid red;
		border-radius: 22px;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
}
.other-box#pOther02 {
	margin-left: 2.4%;
}

@media (max-width: 768px) {
		.other-box {
				-ms-flex-preferred-size: 100%;
				-webkit-flex-basis: 100%;
				        flex-basis: 100%;
				max-width: 100%;
		}
}

@media (max-width: 768px) {
		.other-box#pOther02 {
				margin-top: 5.33vw;
				margin-left: 0;
		}
}

.other-box-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-transition: opacity .2s ease;
		-o-transition: opacity .2s ease;
		transition: opacity .2s ease;
}

.other-box-link:hover {
		text-decoration: none;
		opacity: .7;
}

.other-box-img {
		-ms-flex-preferred-size: 160px;
		-webkit-flex-basis: 160px;
		        flex-basis: 160px;
		max-width: 160px;
		margin-right: 30px;
}

@media (max-width: 768px) {
		.other-box-img {
				margin-right: 5.3vw;
		}
}

.other-box-detail {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		     box-sizing: border-box;
		padding: 30px 0 0;
}

@media (max-width: 768px) {
		.other-box-detail {
				width: 82%;
				padding: 5vw 3.33vw 4vw 0;
		}
}

.other-box-detail-ttl {
		font-family: "Rounded M+ 2c",M PLUS Rounded\ 1c,sans-serif;
		font-size: 1.875rem;
		font-weight: 700;
		line-height: 1;
		color: red;
		letter-spacing: .06em;
}

@media (max-width: 768px) {
		.other-box-detail-ttl {
				font-size: 5.33vw;
		}
}

.other-box-detail-anchor {
		margin-top: 12px;
		font-size: 1rem;
		line-height: 1.5;
		color: red;
		letter-spacing: .05em;
}

@media (max-width: 768px) {
		.other-box-detail-anchor {
				margin-top: 1.5vw;
				font-size: 3.73vw;
		}
}

.other-box-detail-anchor span {
		color: red;
}

.other-box-detail-anchor span:after {
		display: inline-block;
		width: 9px;
		height: 6px;
		margin: -4px 0 0 4px;
		vertical-align: middle;
		content: "";
		background: url(../images/icon-saving_02.png) 0 0 no-repeat;
		background-size: contain;
}

@media (max-width: 768px) {
		.other-box-detail-anchor span:after {
				width: 3.73vw;
				height: 2.13vw;
		}
}

@media (max-width: 768px) {
		.other-box-detail-anchor-single {
				margin-top: 4.8vw;
		}
}

.other-box-detail-txt {
		margin-top: 10px;
		font-size: .75rem;
		line-height: 1.66;
}

@media (max-width: 768px) {
		.other-box-detail-txt {
				margin-top: 1.2vw;
				font-size: 2.66vw;
		}
}

.leading {
		padding-top: 80px;
		margin-top: -80px;
}

@media (max-width: 768px) {
		.leading {
				width: 100%;
				padding: 0;
				margin: 0;
		}
}

/*@media screen and (min-width: 600px) {
.sp {
display: none;
}
}
@media screen and (max-width: 600px){
.pc {
display: none!important;
}
}*/
@media screen and (min-width: 769px) {
		.saving-wrapper .sp {
				display: none;
		}
}

@media screen and (max-width: 768px) {
		.saving-wrapper .pc {
				display: none;
		}
}

/***********************************************************
default layout(pc first)
***********************************************************/
.saving-wrapper {
		padding: 40px 15px 50px;
		background: #CEECC6;
		font-size: 24px;
		font-family: "Rounded M+ 2c","M PLUS Rounded\ 1c",sans-serif;
		color: #666;
		letter-spacing: 0.2em;
}
.saving-wrapper.savingenergy {
	padding-left: 0;
	padding-right: 0;
}

.saving-wrapper a {
		color: #666;
}

.saving-wrapper a:hover {
		text-decoration: none;
		opacity: 0.7;
}

.saving-wrapper img {
		max-width: 100%;
		vertical-align: bottom;
}

.saving-wrapper .text-center {
	text-align: center;
}
@media screen and (min-width: 769px) {
	.saving-wrapper .text-center-pc {
		text-align: center;
	}
}
.saving-wrapper .inline-block {
  display: inline-block;
}
.saving-wrapper .fw-bold {
  font-weight: 700;
}
.saving-wrapper .fw-medium {
  font-weight: 500;
}

.saving-wrapper .attention {
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		font-size: 62.5%;
}

.saving-wrapper ul.attention li {
		position: relative;
		padding: 0 0 0 1em;
		font-family: sans-serif;
		letter-spacing: 0;
}

.saving-wrapper ul.attention.number li {
		padding: 0 0 0 2em;
}

.saving-wrapper ul.attention li strong {
		font-weight: normal;
		color: #E62320;
}

.saving-wrapper ul.attention li span {
		position: absolute;
		left: 0;
}

.saving-wrapper ul.attention li a {
		color: #0096FF;
		text-decoration: underline;
}

.saving-wrapper > div {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		max-width: 1080px;
		margin: 0 auto 100px;
}

@media (max-width: 768px) {
		.saving-wrapper > div {
				margin: 0 auto 60px;
		}
}

.fw-bold {
	font-weight: 700;
}

/*****************************
sitemap
*****************************/
.saving-wrapper .sitemap {
		margin-bottom: 40px;
}

.saving-wrapper .sitemap h2 {
		margin: 0 0 15px;
		padding: 9px 0;
		background: #fff;
		border-radius: 30px 30px 0 0;
		text-align: center;
		font-size: 166.6667%;
		line-height: 120%;
}

.saving-wrapper .sitemap h2 span {
		display: block;
		font-size: 75%;
}

.saving-wrapper .sitemap h2 span b {
		font-size: 125%;
}

.saving-wrapper .sitemap ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.saving-wrapper .sitemap ul.tab {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		border-bottom: #e8eaeb 4px solid;
}

.saving-wrapper .sitemap ul.tab li {
		width: calc(50% - 2px);
		text-align: center;
		font-size: 150%;
		color: #B2B2B2;
}

.saving-wrapper .sitemap ul.tab li a {
		display: block;
		background: #F1F1F1;
		color: #B2B2B2;
		line-height: 160%;
}

.saving-wrapper .sitemap ul.tab li a:focus {
		text-decoration: none;
}

.saving-wrapper .sitemap ul.list {
		display: none;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		padding: 70px 80px;
		background: #fff;
		border-radius: 0 0 30px 30px;
}

.saving-wrapper .sitemap ul.list li {
		padding: 0 10px;
		margin: 20px 0 20px -2px;
		border-left: #666 2px solid;
		border-right: #666 2px solid;
		line-height: 100%;
}

.saving-wrapper .sitemap ul.list li a {
		color: #666;
}

.saving-wrapper .sitemap ul.list li a:hover {
		color: #666;
		text-decoration: underline;
		opacity: 1;
}

/* bnr */
.saving-wrapper .sitemap ul.list li.bnr {
		position: relative;
		width: 100%;
		border: none;
		padding: 0;
		margin: 70px 0 0;
		text-align: center;
}

.saving-wrapper .sitemap ul.list li.bnr a {
		display: inline-block;
		margin: 0 auto;
		padding: 20px;
		background: #64a452;
		border-radius: 10px;
		color: #fff;
		letter-spacing: 0.1em;
}

.saving-wrapper .sitemap ul.list li.bnr a:hover {
		text-decoration: none;
		opacity: 0.7;
}

.saving-wrapper .sitemap ul.list li.bnr span {
		position: absolute;
		top: -35px;
		left: 0;
		width: 100%;
		color: #666;
		font-size: 83.3333%;
}

/* active */
.saving-wrapper .sitemap ul.tab li a.active {
		background: #fff;
		color: #666;
}

.saving-wrapper .sitemap ul.tab li a.active:hover {
		opacity: 1;
		cursor: default;
}

.saving-wrapper .sitemap ul.list.active {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.saving-wrapper .sitemap p {
		margin: 40px 0 0;
		text-align: center;
}

.saving-wrapper .sitemap p a {
		position: relative;
		padding: 0 35px 0 0;
		text-decoration: underline;
}

.saving-wrapper .sitemap p a:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 18px;
		height: 31px;
		background: url("../images/ico_arrow_right.png") center center no-repeat;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

/* noopen */
.saving-wrapper .sitemap ul.tab.noopen {
		border-bottom: none;
}

.saving-wrapper .sitemap ul.tab.noopen li a {
		border-radius: 0 0 0 30px;
}

.saving-wrapper .sitemap ul.tab.noopen li:last-child a {
		border-radius: 0 0 30px 0;
}

/*****************************
#saving
*****************************/
.saving-wrapper .saving {
		padding: 50px 15px 15px;
		background: #fff;
		border-radius: 30px;
		text-align: center;
}

.saving-wrapper .saving h2 {
		width: 100%;
		margin: 0 0 50px;
		text-align: center;
}

.saving-wrapper .saving > p {
		width: 100%;
		margin: 0 0 50px;
		text-align: center;
		font-weight: bold;
}

.saving-wrapper .saving .set {
		margin: 0 0 50px;
		width: 100%;
}

.saving-wrapper .saving .set:first-of-type {
		margin-top: 50px;
}

.saving-wrapper .saving .set:last-of-type {
		margin: 0;
}

.saving-wrapper .saving .set h3 {
		position: relative;
		margin: 0 0 35px;
		background: #f1f1f1;
		border-radius: 30px 30px 0 30px;
		font-size: 83.3333%;
		line-height: 300%;
		color: #666;
		font-weight: normal;
}

.saving-wrapper .saving .set .link {
		margin: 35px 0 0;
		padding: 5px 0;
		background: #f1f1f1;
		border-radius: 0 0 30px 30px;
}

.saving-wrapper .saving .set .link ul {
		display: inline-block;
}

.saving-wrapper .saving .set .link ul li {
		font-size: 83.3333%;
		line-height: 250%;
}

.saving-wrapper .saving .set .link ul li a {
		display: block;
		position: relative;
		padding: 0 35px 0 0;
}

.saving-wrapper .saving .set .link ul li a:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 18px;
		height: 31px;
		background: url("../images/ico_arrow_right.png") center center no-repeat;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

/* slider */
.saving-wrapper .saving .set .slider .item img.slid-img {
		margin: 0 auto;
		max-width: 600px;
}

@media (max-width: 768px) {
		.saving-wrapper .saving .set .slider .item img.slid-img {
				width: 93%;
		}
}

@media screen and (min-width: 768px) {
		.saving-wrapper .saving .set .slider .item img.sp {
				display: none !important;
		}
}

@media screen and (max-width: 769px) {
		.saving-wrapper .saving .set .slider .item img.pc {
				display: none !important;
		}
}

.bx-controls-direction {
		opacity: 1;
}

.bx-wrapper a.bx-next {
		right: 90px;
		width: 75px;
		height: 75px;
		margin-top: -38px;
		background: #CFEBC7 url("../images/ico_slider_next.png") center center no-repeat !important;
		border-radius: 38px;
		z-index: 100;
}

.bx-wrapper a.bx-prev {
		left: 90px;
		width: 75px;
		height: 75px;
		margin-top: -38px;
		background: #CFEBC7 url("../images/ico_slider_prev.png") center center no-repeat !important;
		border-radius: 38px;
		z-index: 100;
}

.bx-wrapper a.bx-next.disable,
.bx-wrapper a.bx-prev.disable {
		background-color: #f1f1f1 !important;
		cursor: default;
}

.bx-wrapper a.bx-next.disable:hover,
.bx-wrapper a.bx-prev.disable:hover {
		opacity: 1;
}

.bx-wrapper .bx-pager.bx-default-pager a {
		background-color: #f1f1f1 !important;
}

.bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link.active {
		background: #CFEBC7 !important;
		border: none !important;
}

.bx-wrapper .bx-loading {
		display: none;
}

/* faq */
@media (max-width: 768px) {
		.saving-wrapper .faq {
				margin-bottom: 5vh;
		}
}

.saving-wrapper .faq h3 {
		max-width: initial;
		margin: 0 0 15px;
		background: #fff;
		border-radius: 30px 30px 0 0;
		font-size: 166.6667%;
		text-align: center;
		line-height: 165%;
}

.saving-wrapper .faq h3 img {
		margin: 0 25px 0 0;
		padding-bottom: 0.2em;
		vertical-align: middle;
}

.saving-wrapper .faq .inner dl {
		padding: 20px 30px 20px 35px;
		border-top: #FFF 3px solid;
		background: #F1F1F1;
}

.saving-wrapper .faq .inner dl:first-of-type {
		border-top: none;
}

.saving-wrapper .faq .inner dl:last-of-type {
		border-radius: 0 0 30px 30px;
}

.saving-wrapper .faq .inner dl dt {
		position: relative;
		padding: 0 60px 0 40px;
		font-size: 83.3333%;
}

.saving-wrapper .faq .inner dl dt:hover {
		opacity: 0.7;
		cursor: pointer;
}

.saving-wrapper .faq .inner dl dt span {
		position: absolute;
		left: 0;
		color: #E62320;
}

.saving-wrapper .faq .inner dl dt:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 29px;
		height: 29px;
		background: url("../images/ico_accordion_open.png") center center no-repeat;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.saving-wrapper .faq .inner dl dd {
		position: relative;
		display: none;
		padding: 30px 60px 1px 40px;
		font-size: 83.3333%;
}

.saving-wrapper .faq .inner dl dd img {
		background: #fff;
		padding: 20px;
		margin: 20px -20px 0;
}

.saving-wrapper .faq .inner dl.open dt:after {
		-webkit-transform: translateY(-50%) rotate(45deg);
		    -ms-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
}

.saving-wrapper .faq .inner dl dd span.anser {
		position: absolute;
		left: 0;
		top: 25px;
		color: #E62320;
}

.saving-wrapper .faq .inner dl dd h4 {
		margin: 0 0 10px;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
		font-size: 75%;
		font-weight: bold;
}

.saving-wrapper .faq .inner dl dd p {
		margin: 0 0 20px;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
		font-size: 75%;
}

.saving-wrapper .faq .inner dl dd p.investigation {
		text-align: right;
}

.saving-wrapper .faq .inner dl dd .thumbnail {
		margin: 0 0 20px;
		text-align: center;
}

.saving-wrapper .faq .inner dl dd .thumbnailWrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

.saving-wrapper .faq .inner dl dd .thumbnail {
		margin: 0 0 20px;
		text-align: center;
}

.saving-wrapper .faq .inner dl dd .thumbnailWrap .thumbnail {
		width: 450px;
		max-width: 49%;
}

.saving-wrapper .faq .inner dl dd .thumbnail.left {
		text-align: left;
}

.saving-wrapper .faq .inner dl dd .thumbnail p {
		margin: 10px 0 0;
		font-size: 58.3333%;
		text-align: left;
}

.saving-wrapper .faq .inner dl dd .thumbnailLayout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

.saving-wrapper .faq .inner dl dd .thumbnailLayout .thumbnail,
.saving-wrapper .faq .inner dl dd .thumbnailLayout > p {
		width: 445px;
		max-width: 49%;
}

.saving-wrapper .faq .inner dl dd ul {
		margin: 0 0 20px;
		font-size: 75%;
}

.saving-wrapper .faq .inner dl dd ul li {
		margin: 0 0 0 2em;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
		list-style-type: disc;
}

.saving-wrapper .faq .inner dl dd ul.attention {
		margin: -20px 0 20px;
		font-size: 62.5%;
}

.saving-wrapper .faq .inner dl dd .thumbnailWrap + ul.attention,
.saving-wrapper .faq .inner dl dd .thumbnail + ul.attention {
		margin-top: 0;
}

.saving-wrapper .faq .inner dl dd ul.attention li {
		margin: 0;
		list-style-type: none;
}

.saving-wrapper .faq .inner dl dd a {
		text-decoration: underline;
}

/* tab */
.saving-wrapper .faq .inner ul.faqtab {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		border-bottom: #fff 3px solid;
}

.saving-wrapper .faq .inner ul.faqtab li {
		width: calc(50% - 2px);
		text-align: center;
		font-size: 125%;
		color: #B2B2B2;
}

.saving-wrapper .faq .inner ul.faqtab li.one {
		width: 100%;
}

.saving-wrapper .faq .inner ul.faqtab li a,
.saving-wrapper .faq .inner ul.faqtab p {
		display: block;
		background: #FFF;
		color: #666;
		height: 100%;
		padding: 6px 0;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}
.saving-wrapper .faq .inner ul.faqtab li a {
	background: #F1F1F1;
	color: #B2B2B2;
}
.saving-wrapper .faq .inner ul.faqtab li a:not(.active) span {
	opacity: .5;
}

.saving-wrapper .faq .inner ul.faqtab li a:focus {
		text-decoration: none;
}

.saving-wrapper .faq .inner ul.faqtab li a span {
		display: block;
		height: 100%;
		background: url("../images/txt_faq_chllenge_on.png") center center no-repeat;
		overflow: hidden;
		text-indent: -120%;
		white-space: nowrap;
		text-align: left;
}

.saving-wrapper .faq .inner ul.faqtab li a.active {
	background: #fff;
	color: #666;
}

.saving-wrapper .faq .inner ul.faqtab li a.active:hover {
		opacity: 1;
		cursor: default;
}

.saving-wrapper .faq .inner .faqlist {
		display: none;
}

.saving-wrapper .faq .inner .faqlist.active {
		display: block;
}

/*****************************
regist
*****************************/
.saving-wrapper .regist-title {
		width: 58%;
		max-width: 432px;
		padding-top: 20px;
}
.saving-wrapper .regist-end {
	text-align: center;
	margin: 26px 0 0;
}

.saving-wrapper .regist-button {
		display: block;
		background: #909090;
		border-radius: 15px;
		color: #fff;
		font-size: 125%;
		text-align: center;
		text-decoration: none;
		max-width: 750px;
		margin: 0 auto;
		padding: 30px 0;
}

@media (max-width: 768px) {
		.saving-wrapper .regist-end {
			margin: 15px 0 10px;
		}
		.saving-wrapper .regist-button {
				padding: 20px 0;
		}
}

.saving-wrapper .howto-footer .regist-button {
		margin: 0 auto 20px;
}

/*****************************
campaign
*****************************/
.campaign {
	margin: 30px auto;
	text-align: center;
}

.campaign .item + .item {
		margin-top: 25px;
}

.point .campaign .popup-element.item {
		margin: 50px auto;
}

.campaign .popup-element.item .popup-element-airconditioner{
	margin: 20px auto 0;
	width: 760px;
	max-width: 100%;
}

@media (max-width: 768px) {
		.point .campaign .popup-element.item {
				margin: 20px auto;
		}

		.campaign .popup-element.item .popup-element-airconditioner{
			margin-top: 10px;
		}
}

/*****************************
bnr
*****************************/
.saving-wrapper p.bnr {
		text-align: center;
}
.saving-wrapper.savingenergy .bnr {
	width: 100%;
	max-width: 1042px;
	box-sizing: border-box;
	padding: 0 30px;
	margin-left: auto;
	margin-right: auto;
}
.saving-wrapper.savingenergy .bnr + .bnr {
	margin-top: 50px;
}
.saving-wrapper.savingenergy .bnr a {
	display: inline-block;
}
.saving-wrapper.savingenergy .bnr a img {
	width: 100%;
	max-width: 981px;
	height: auto;
}
@media (max-width: 768px) {
	.saving-wrapper.savingenergy .bnr {
		padding: 0 5.33335vw;
	}
	.saving-wrapper.savingenergy .bnr + .bnr {
		margin-top: 4vw;
	}
}

/*****************************
underheader
*****************************/
.saving-wrapper .underheader .menu {
		position: relative;
		margin: 0 0 25px;
		padding: 0 30px;
		background: #fff;
		border-radius: 30px;
}

.saving-wrapper .underheader .menu p {
		line-height: 250%;
		font-weight: bold;
}

.saving-wrapper .underheader .menu p.open {
		position: absolute;
		right: 30px;
		top: 50%;
		line-height: 100%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.saving-wrapper .underheader .menu .sitemap {
		position: absolute;
		display: none;
		right: 0;
		top: 0;
		width: 540px;
		background: #F1F1F1;
		border-radius: 30px;
		-webkit-box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.25);
		        box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.25);
		z-index: 2;
}

.saving-wrapper .underheader .menu .sitemap .close {
		height: 60px;
		padding: 0 33px;
		text-align: right;
}

.saving-wrapper .underheader .menu .sitemap ul.tab li {
		width: 50%;
}

.saving-wrapper .underheader .menu .sitemap ul.list {
		padding: 20px;
		border-radius: 0;
}

.saving-wrapper .underheader .menu .sitemap ul.list li {
		font-size: 91.6667%;
}

.saving-wrapper .underheader .menu .sitemap p {
		margin: 0;
		border-top: #fff 2px solid;
		font-size: 91.6667%;
		line-height: 272.7273%;
}

.saving-wrapper .underheader .inner {
		padding: 15px;
		background: #fff;
		border-radius: 30px;
}

.saving-wrapper .underheader .inner > .head {
		position: relative;
		height: 160px;
		margin: 0 0 45px;
		background: #F1F1F1;
		border-radius: 30px 30px 0 0;
}

.saving-wrapper .underheader .inner > .head:after {
		content: " ";
		position: absolute;
		right: 10px;
		bottom: -2px;
		width: 150px;
		height: 151px;
		background: url("../../images/fig_underheader_nakamura.png") center center no-repeat;
}

.saving-wrapper .underheader .inner > .head h1 {
		position: absolute;
		left: 190px;
		top: 50px;
		font-size: 166.6667%;
		line-height: 100%;
}

.saving-wrapper .underheader .inner > .head h1 img {
		position: absolute;
		left: -160px;
		top: -5px;
}

.saving-wrapper .underheader .inner > .head dl {
		position: absolute;
		right: 175px;
		bottom: 0;
		text-align: center;
}

.saving-wrapper .underheader .inner > .head dl dd {
		padding: 0 5px;
		border-top: #666 2px solid;
}

.saving-wrapper .underheader .inner > .head dl dd strong {
		font-size: 125%;
		font-weight: normal;
}

.saving-wrapper .underheader .inner > .head dl dd.update {
		padding: 5px;
		font-size: 50%;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
}

.saving-wrapper .underheader .inner .point .head {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		padding: 0 0 0 170px;
		margin: 0 0 20px;
}

.saving-wrapper .underheader .inner .point .head:after {
		content: " ";
		position: absolute;
		left: 56px;
		top: -80px;
		width: 87px;
		height: 138px;
		background: url("../../images/fig_underheader_rabbit.png") center center no-repeat;
}

.saving-wrapper .underheader .inner .point .head h2 {
		margin: 0 95px 0 0;
		font-size: 150%;
}

.saving-wrapper .underheader .inner .point .head ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.saving-wrapper .underheader .inner .point .head ul li {
		line-height: 100%;
}

.saving-wrapper .underheader .inner .point .head ul li:last-child {
		margin: 0 0 0 15px;
		padding: 0 0 0 15px;
		border-left: #666 2px solid;
}

.saving-wrapper .underheader .inner .point .head ul li a {
		color: #B2B2B2;
}

.saving-wrapper .underheader .inner .point .head ul li a:hover {
		color: #666;
		text-decoration: underline;
		opacity: 1;
}

.saving-wrapper .underheader .inner .point .check {
		padding: 40px;
		background: #62A64D;
		border-radius: 34px;
		text-align: center;
}

.saving-wrapper .underheader .inner .point .check ol {
		display: inline-block;
		text-align: left;
}

.saving-wrapper .underheader .inner .point .check ol li {
		position: relative;
		margin: 0 0 30px;
		padding: 0 0 0 60px;
		background: url("../../images/ico_check_point.png") left center no-repeat;
		color: #fff;
		font-size: 125%;
		line-height: 140%;
}

.saving-wrapper .underheader .inner .point .check ol li:last-child {
		margin: 0;
}

.saving-wrapper .underheader .inner .point .cut {
		margin: 20px 0 0;
}

.saving-wrapper .underheader .inner .point .cut h2 {
		margin: 0 0 30px;
		border: #62A64D 2px solid;
		border-radius: 34px 34px 0 0;
		text-align: center;
		font-size: 166.6667%;
		color: #62A64D;
}

.saving-wrapper .underheader .inner .point .cut dl {
		margin: 0 25px 50px;
}

.saving-wrapper .underheader .inner .point .cut dl:last-of-type {
		margin-bottom: 0;
}

.saving-wrapper .underheader .inner .point .cut dl dt {
		margin: 0 0 10px;
		border-bottom: #CEECC6 2px solid;
		font-weight: bold;
}

.saving-wrapper .underheader .inner .point .cut dl dd {
		text-align: right;
}

.saving-wrapper .underheader .inner .point .cut dl dd.conditions {
		margin: 0 0 10px;
		text-align: left;
		font-size: 83.3333%;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0;
}

.saving-wrapper .underheader .inner .point .cut dl dd strong {
		font-size: 125%;
		font-weight: bold;
		color: #62A64D;
}

.saving-wrapper .underheader .inner .point .cut p {
		margin: 30px 25px 0;
		font-size: 62.5%;
		letter-spacing: 0;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
}

.saving-wrapper .underheader .inner .point .cut p a {
		text-decoration: underline;
}

/* 冷蔵庫 */
.saving-wrapper .underheader .inner.refrigerator > .head h1 img {
		left: -87px;
		top: -42px;
}

.saving-wrapper .underheader .inner.refrigerator .point .head:after {
		left: 20px;
}

/*****************************
information
*****************************/
.saving-wrapper .information h2 {
		margin: 0 0 15px;
		background: #fff;
		border-radius: 30px 30px 0 0;
		text-align: center;
		font-size: 166.6667%;
		line-height: 165%;
}

.saving-wrapper .information .inner {
		border: #fff 3px solid;
		border-radius: 0 0 30px 30px;
		padding: 45px 20px 0;
}

.saving-wrapper .information .inner > iframe {
		display: block;
		width: 520px;
		height: 290px;
		margin: 0 auto 15px;
}

.saving-wrapper .information .inner > p {
		margin: 0 0 30px;
		text-align: center;
}

.saving-wrapper .information .inner > p a {
		position: relative;
		padding: 0 35px 0 0;
		text-decoration: underline;
}

.saving-wrapper .information .inner > p a:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 18px;
		height: 31px;
		background: url("../images/ico_arrow_right.png") center center no-repeat;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.saving-wrapper .information .inner .point {
		margin: 0 0 45px;
}

.saving-wrapper .information .inner .point h3 {
		position: relative;
		margin: 0 0 15px;
		padding: 12px 0 12px 100px;
		background: #fff;
		border-radius: 30px;
		color: #666;
		line-height: 150%;
}

.saving-wrapper .information .inner .point h3 span {
		position: absolute;
		left: 5px;
		top: 50%;
		width: 50px;
		height: 50px;
		background: #62A64D url("../images/ico_check_information.png") center center no-repeat;
		border-radius: 25px;
		line-height: 50px;
		color: #fff;
		text-indent: -100%;
		letter-spacing: 0;
		overflow: hidden;
		white-space: nowrap;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.saving-wrapper .information .inner .point .detail {
		margin: 0 0 0 100px;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
}

.saving-wrapper .information .inner .point .detail h4 {
		position: relative;
		margin: 0 0 10px;
		padding: 0 0 4px 15px;
		border-bottom: #666 1px solid;
		font-size: 83.3333%;
		font-weight: normal;
		line-height: 120%;
}

.saving-wrapper .information .inner .point .detail h4:after {
		content: " ";
		position: absolute;
		left: 0;
		top: 0;
		height: calc(100% - 4px);
		border-left: #62A64D 3px solid;
}

.saving-wrapper .information .inner .point .detail p {
		margin: 0 0 30px;
		font-size: 83.3333%;
}

.saving-wrapper .information .inner .point .detail p.investigation {
		font-size: 62.5%;
		text-align: right;
}

.saving-wrapper .information .inner .point .detail p.reference {
		font-size: 62.5%;
}

.saving-wrapper .information .inner .point .detail p strong {
		color: #62A64D;
		font-weight: normal;
}

.saving-wrapper .information .inner .point .detail ul {
		margin: 0 0 30px;
		font-size: 83.3333%;
}

.saving-wrapper .information .inner .point .detail ul li {
		margin: 0 0 0 2em;
		list-style-type: disc;
}

.saving-wrapper .information .inner .point .detail a {
		color: #2282BF;
		text-decoration: underline;
}

.saving-wrapper .information .inner .point .detail .thumbnailWrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

.saving-wrapper .information .inner .point .detail .thumbnail {
		margin: 0 0 30px;
		text-align: center;
}

.saving-wrapper .information .inner .point .detail .thumbnailWrap .thumbnail {
		width: 394px;
		max-width: 49%;
}

.saving-wrapper .information .inner .point .detail .thumbnail.left {
		text-align: left;
}

.saving-wrapper .information .inner .point .detail .thumbnail p {
		margin: 10px 0 0;
		font-size: 58.3333%;
		font-family: sans-serif;
		letter-spacing: 0;
		text-align: left;
}

.saving-wrapper .information .inner .point .detail .thumbnailLayout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

.saving-wrapper .information .inner .point .detail .thumbnailLayout .thumbnail,
.saving-wrapper .information .inner .point .detail .thumbnailLayout > p {
		width: 394px;
		max-width: 49%;
}

.saving-wrapper .information .inner .point .detail table {
		margin: 0 0 30px;
}

.saving-wrapper .information .inner .point .detail table.tbl01 {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		width: 100%;
		background: #fff;
		border: #62A64D 2px solid;
}

.saving-wrapper .information .inner .point .detail table.tbl01 thead tr th {
		padding: 10px;
		background: #CEECC6;
		font-size: 83.3333%;
		text-align: center;
		font-weight: normal;
}

.saving-wrapper .information .inner .point .detail table.tbl01 thead tr th:nth-of-type(1) {
		border-right: #62A64D 2px solid;
}

.saving-wrapper .information .inner .point .detail table.tbl01 tbody td {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		width: 25%;
		padding: 10px;
		border-top: #62A64D 1px solid;
		border-right: #62A64D 1px solid;
		font-size: 62.5%;
		text-align: center;
}

.saving-wrapper .information .inner .point .detail table.tbl01 tbody tr td:nth-of-type(2) {
		border-right-width: 2px;
}

.saving-wrapper .information .inner .point .detail table.tbl01 tbody tr td:last-of-type {
		border-right: none;
}

.saving-wrapper .information .inner .point .detail ul.attention {
		margin-top: -30px;
		font-size: 62.5%;
}

.saving-wrapper .information .inner .point .detail div.thumbnailWrap + ul.attention,
.saving-wrapper .information .inner .point .detail div.thumbnail + ul.attention {
		margin-top: -20px;
}

.saving-wrapper .information .inner .point .detail ul.attention li {
		margin: 0;
		list-style-type: none;
}

.saving-wrapper .information .inner .point .detail dl {
		margin: 0 0 30px;
		font-size: 83.3333%;
}

.saving-wrapper .information .inner .point .detail dl dt {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		display: inline-block;
		min-width: 310px;
		margin: 0 0 10px;
		padding: 0 15px;
		background: #62A64D;
		border-radius: 5px;
		color: #fff;
		text-align: center;
}

.saving-wrapper .information .inner .point .detail dl dd h4,
.saving-wrapper .information .inner .point .detail dl dd p,
.saving-wrapper .information .inner .point .detail dl dd ul,
.saving-wrapper .information .inner .point .detail dl dd .thumbnail {
		margin-bottom: 10px;
}


/*--------------------------------------------------------------
# challenge.html 
-------------------------------------------------------------- */
/*****************************
#program
*****************************/
.saving-wrapper.challenge #anchor03 {
		padding: 15px 15px;
		background: #fff;
		border-radius: 30px;
		color: #666;
}

.saving-wrapper.challenge #anchor03 h2 {
		margin: 15px 0 23px;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .about {
		padding: 30px 35px 20px;
		background: #f1f1f1;
		border-radius: 30px;
}

.saving-wrapper.challenge #anchor03 .about h3 {
		max-width: 820px;
		margin: 0 auto 15px;
		padding: 0 0 20px;
		border-bottom: #666 1px solid;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .about p {
		position: relative;
		margin-bottom: 10px;
		padding: 0 90px;
		text-align: center;
		font-weight: bold;
		letter-spacing: 0.12em;
		line-height: 200%;
}

.saving-wrapper.challenge #anchor03 .about p:after {
		content: " ";
		position: absolute;
		right: -10px;
		top: -35px;
		width: 115px;
		height: 174px;
		background: url("../images/fig_program_about.png") center center no-repeat;
}

.saving-wrapper.challenge #anchor03 .about ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

.saving-wrapper.challenge #anchor03 .about ul li {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		width: 475px;
		max-width: 49%;
}

.saving-wrapper.challenge #anchor03 .about ul li a {
		display: block;
		padding: 25px 15px;
		background: #C4EFFD;
		border: #fff 3px solid;
		border-radius: 30px;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .about ul li:last-child a {
		background: #C3E9A7;
}

/* program */
.saving-wrapper.challenge #anchor03 .program {
		padding: 50px 25px 40px;
		/* background: #C3E9A7; */
		border-radius: 30px;
}

.saving-wrapper.challenge #anchor03 .program h3 {
		margin: 0 auto;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program .saving-challenge-ttl {
	max-width: 750px;
	margin-bottom: 80px;
}

.saving-wrapper.challenge #anchor03 .program > p {
		max-width: 950px;
		margin: 0 auto 30px;
		font-size: 65%;
		letter-spacing: 1px;
		line-height: 2;
}

.saving-wrapper.challenge #anchor03 .program > p strong {
		font-weight: normal;
		color: #E62320;
}

.saving-wrapper.challenge #anchor03 .program > p.catch {
		margin: 0 auto 10px;
		text-align: center;
		font-size: 125%;
		font-weight: bold;
}

.saving-wrapper.challenge #anchor03 .program > p.p-present {
		max-width: initial;
		text-align: center;
		font-size: 100%;
		font-weight: bold;
		position: relative;
		background-color: #FFF;
		padding: 4% 7.5% 4% 32%;
		margin: 35px auto 50px;
		border-radius: 30px;
}

.saving-wrapper.challenge #anchor03 .program > p.p-present::before {
	position: absolute;
	content: '';
	display: inline-block;
	background-image: url(/ep/private/savingenergy/lp/images/tit_program03_denko.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right center;
	width: 24%;
  height: 114%;
	left: 0;
	bottom: 0;
}
.saving-wrapper.challenge #anchor03 .program > p.notes {
	position: relative;
	font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
	font-size: 62%;
	line-height: 1.33;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin: 38px 38px 30px;
	padding-left: 1.2em;
}
.saving-wrapper.challenge #anchor03 .program > p.notes::before {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.saving-wrapper.challenge #anchor03 .program > p.period {
		max-width: initial;
		text-align: center;
		font-size: 120%;
		font-weight: bold;
}

.saving-wrapper.challenge #anchor03 .program .inner .content {
		padding: 20px 30px;
		border: #fff 3px solid;
		border-top: none;
}

.saving-wrapper.challenge #anchor03 .program .inner .content:first-of-type {
		border-top: #fff 3px solid;
}

.saving-wrapper.challenge #anchor03 .program .inner .content:last-of-type {
		border-radius: 0 0 30px 30px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content h4 {
		margin: 0 0 10px;
		text-align: center;
		font-size: 125%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content .figure {
		position: relative;
		margin: 10px auto;
		text-align: center;
		max-width: 851px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn01 {
		position: absolute;
		top: 20.47413793103448%;
		width: 38.89541715628672%;
		left: 5.992949471210341%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn02 {
		position: absolute;
		top: 20.47413793103448%;
		width: 19.9764982373678%;
		left: 52.29142185663925%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn03 {
		position: absolute;
		top: 20.47413793103448%;
		width: 19.9764982373678%;
		left: 73.6780258519389%;
}

.saving-wrapper.challenge #anchor03 .program#anchor05 .inner .content:nth-of-type(1) p {
		text-align: center;
		font-size: 166.6667%;
		font-weight: bold;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.check {
		margin: 10px 0;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.check li {
		position: relative;
		padding: 0 0 0 28px;
		font-size: 83.3333%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.check li:after {
		content: " ";
		position: absolute;
		left: 0;
		top: 5px;
		width: 22px;
		height: 22px;
		background: url("../images/ico_checklist.png") center center no-repeat;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan {
		margin: 10px 0;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan li {
		position: relative;
		display: inline-block;
		padding: 0 0 0 22px;
		margin: 0 15px 0 0;
		font-size: 83.3333%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan li:after {
		content: " ";
		position: absolute;
		left: 0;
		top: 8px;
		width: 16px;
		height: 16px;
		background: #666;
		border-radius: 9px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan.stop li {
		padding: 0 0 0 18px;
		font-size: 75%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan.stop li:after {
		top: 7px;
		width: 14px;
		height: 14px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan li sup {
		font-size: 60%;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan + p {
		text-align: center;
		font-size: 75%;
		text-decoration: underline;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan + p.note {
		text-align: left;
		font-size: 56%;
		text-decoration: none;
}

.saving-wrapper.challenge #anchor03 .program .inner .content ul.attention {
		margin-top: 40px;
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail {
		margin: 30px 0 0;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules2 {
		margin: 40px 0 0;
		font-size: 76%;
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules3 {
		margin: 5px 0 0;
		font-size: 56%;
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail a {
		position: relative;
		padding: 0 35px 0 0;
		text-decoration: underline;
		color: #0096FF;
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail a:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 18px;
		height: 31px;
		background: url("../images/ico_arrow_right.png") center center no-repeat;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules2 a:after {
		right: 10px;
		width: 21px;
		height: 17px;
		background-size: contain;
}

/*****************************
challenge
*****************************/
.saving-wrapper.challenge .challenge-end {
	margin-bottom: 45px;
}
.saving-wrapper.challenge .challenge-end h2 {
	background: #fff;
	border-radius: 25px;
	padding: 52px 83px;
	margin-bottom: 33px;
}
.saving-wrapper.challenge .challenge-end p {
	max-width: 960px;
	text-align: center;
	box-sizing: border-box;
	background: #909090;
	color: #fff;
	font-size: 28px;
	font-weight: 500;
	padding: 28px;
	margin: 0 auto;
}
.saving-wrapper.challenge .challenge-end p a {
	color: #fff;
	text-decoration: underline;
}
@media (max-width: 768px) {
	.saving-wrapper.challenge .challenge-end {
		margin-bottom: 7vw;
	}
	.saving-wrapper.challenge .challenge-end h2 {
		border-radius: 3.3vw;
		padding: 3.2vw 5.3vw;
		margin-bottom: 5vw;
	}
	.saving-wrapper.challenge .challenge-end p {
		font-size: 3.3vw;
		padding: 3.7vw 2vw;
	}
}

.saving-wrapper.challenge .saving-challenge-ttl {
	max-width: 812px;
	margin: 0 auto;
}

.saving-wrapper.challenge p.p-present {
    max-width: initial;
    text-align: center;
    font-size: 100%;
    font-weight: bold;
    position: relative;
    background-color: #FFF;
    max-width: 556px;
		margin: 80px auto 50px;
    padding: 3% 7.5% 3% 27%;
    border-radius: 30px;
}

/* .saving-wrapper.challenge p.p-present::before {
    position: absolute;
    content: '';
    display: inline-block;
    background-image: url(/ep/private/savingenergy/lp/images/tit_program03_denko.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 24%;
    height: 119%;
    right: 1%;
    bottom: -11px;
} */

.saving-wrapper.challenge .challenge-notes {
	position: relative;
	font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
	font-size: 62%;
	line-height: 1.33;
	font-weight: 700;
	max-width: 900px;
	letter-spacing: 0.1em;
	margin: 35px auto 45px;
	padding-left: 1.2em;
}
.saving-wrapper.challenge .challenge-notes::before {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.saving-wrapper .challengeheader p.period {
		margin: 0 0 50px;
		padding: 15px 0;
		background: #F2F2F2;
		border-radius: 30px;
		font-size: 125%;
}

.saving-wrapper .challengeheader .p-present {
		max-width: initial;
		text-align: center;
		font-size: 100%;
		font-weight: bold;
}

.saving-wrapper .challengeheader .about h2 {
		max-width: 820px;
		margin: 0 auto 15px;
		padding: 0 0 20px;
		border-bottom: #666 1px solid;
		text-align: center;
}

.saving-wrapper .challengeheader .about p {
		position: relative;
		text-align: center;
		font-weight: bold;
		letter-spacing: 0.12em;
		line-height: 200%;
}

.saving-wrapper .challengeheader .about p strong {
		color: #E62320;
}

.saving-wrapper.challenge #anchor03 {
		padding: 15px;
}

.saving-wrapper.challenge #anchor03 .program {
		margin: 0;
		padding: 15px 15px 40px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content:first-of-type {
		border: none;
}

.saving-wrapper.challenge #anchor03 .program .inner .content.requirement {
		border-top: #fff 3px solid;
}

@media (max-width: 768px) {
		.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules2 a:after {
				right: 0;
				width: 2vw;
				height: 2.5vw;
		}
}

.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules3 a:after {
		right: 20px;
		width: 10px;
		height: 13px;
		background-size: contain;
}

@media (max-width: 768px) {
		.saving-wrapper.challenge #anchor03 .program .inner p.detail.rules3 a:after {
				right: 0;
				width: 2.5vw;
				height: 2.3vw;
		}
}

/* #program01 */
.saving-wrapper.challenge #anchor03 .program#anchor04 {
		background: #C4EFFD;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto {
		position: relative;
		padding: 25px 30px;
		background: #fff;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto.radius-top {
		margin: 0 0 5px;
		border-top-left-radius: 30px;
		border-top-right-radius: 30px;
}

@media (max-width: 768px) {
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto.radius-top {
				border-top-left-radius: 4vw;
				border-top-right-radius: 4vw;
				border-bottom-right-radius: 0;
				border-bottom-left-radius: 0;
		}
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto.radius-bottom {
		margin: 0 0 30px;
		border-bottom-right-radius: 30px;
		border-bottom-left-radius: 30px;
}

@media (max-width: 768px) {
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto.radius-bottom {
				border-top-left-radius: 0;
				border-top-right-radius: 0;
				border-bottom-right-radius: 4vw;
				border-bottom-left-radius: 4vw;
		}
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto.radius-bottom .point {
		margin-top: 0;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .campaign .content .howto-footer a.regist-button {
		margin: 0 auto 10px;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto h4 {
		font-size: 125%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto p {
		font-size: 85%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto p a {
		color: #0196ff;
		text-decoration: underline;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto ul.attention li {
		padding-left: 2em;
		margin-bottom: 8px;
		letter-spacing: 0;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto ul.attention li.strong {
		color: #e62321;
		font-size: 113%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto ul.attention.no-number li {
		padding-left: 1.3em;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .point {
		margin-top: 10px;
		padding: 25px 17px;
		background: #fff;
		border-radius: 30px;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .point h5 {
		background: #666;
		margin: 50px 0 30px;
		border-radius: 15px 15px 0 0;
		color: #fff;
		font-size: 100%;
		font-weight: normal;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content .point ul.attention {
		max-width: 840px;
		margin-left: auto;
		margin-right: auto;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period h4 {
		margin: 0 0 10px;
		background: #fff;
		border-radius: 30px 30px 0 0;
		font-size: 166.6667%;
		line-height: 165%;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table {
		width: 100%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tr th {
		width: 50%;
		padding: 5px 0;
		background: #666;
		color: #fff;
		font-size: 125%;
		font-weight: normal;
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tr td {
		width: 50%;
		padding: 15px 0;
		background: #F2F2F2;
		border-top: #C3F0FF 3px solid;
		text-align: center;
		vertical-align: middle;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table thead tr th:nth-of-type(1),
.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr td:nth-of-type(1) {
		border-right: #C3F0FF 3px solid;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table thead tr th:nth-of-type(2),
.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr td:nth-of-type(2) {
		border-left: #C3F0FF 3px solid;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr:last-of-type td:nth-of-type(1) {
		border-radius: 0 0 0 30px;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr:last-of-type td:nth-of-type(2) {
		border-radius: 0 0 30px 0;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception p {
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception ul {
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception ul li.title {
		border-bottom: solid 2px;
		display: inline;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception ul li.title span {
		display: inline-block;
		vertical-align: middle;
		width: 20px;
		height: 20px;
		margin-right: 10px;
		background: #666;
		border-radius: 100%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception ul li.text {
		font-size: 80%;
		margin-top: 10px;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.calculation a {
		color: #0096FF;
		text-decoration: underline;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit strong {
		color: #E62320;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit p:nth-of-type(2) {
		text-align: center;
		font-size: 125%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit p:nth-of-type(2) span {
		display: block;
		font-size: 80%;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit ul.attention li {
		text-align: center;
}

.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit ul.attention li span {
		position: static;
}

/* program02 */
.saving-wrapper.challenge #anchor03 .program#anchor05 .content h4.service {
		background: #666;
		margin-bottom: 30px;
		border-radius: 15px 15px 0 0;
		color: #fff;
		font-size: 100%;
}

.saving-wrapper.challenge .program.out-sude {
		background: #fff;
		border-radius: 30px;
		text-align: center;
		padding: 50px 25px 60px;
		margin: -50px auto 50px;
}
.saving-wrapper.challenge .program.out-sude h3 {
	font-size: 40px;
	margin-bottom: 35px;
}
.saving-wrapper.challenge .program.out-sude .detail {
	max-width: 830px;
	background: #F4F7AE;
	border-radius: 20px;
	padding: 30px 20px 35px;
	margin-left: auto;
	margin-right: auto;
}
.saving-wrapper.challenge .program.out-sude .detail + .detail {
	margin-top: 30px;
}
.saving-wrapper.challenge .program.out-sude .detail p {
	min-height: 2.2em;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.36;
	margin-bottom: 10px;
}
.saving-wrapper.challenge .program.out-sude .detail a {
	display: inline-block;
	max-width: 720px;
}
@media (max-width: 768px) {
	.saving-wrapper.challenge .program.out-sude {
		border-radius: 4vw;
		padding: 5.3vw 2vw 6.1vw;
		margin-top: -90px;
		margin-bottom: 6.6vw;
	}
	.saving-wrapper.challenge .program.out-sude h3 {
		font-size: 5.3vw;
		margin-bottom: 4.8vw;
	}
	.saving-wrapper.challenge .program.out-sude .detail {
		border-radius: 2.6vw;
		padding: 4vw 3.3vw;
	}
	.saving-wrapper.challenge .program.out-sude .detail + .detail {
		margin-top: 4vw;
	}
	.saving-wrapper.challenge .program.out-sude .detail p {
		font-size: 2.9vw;
		margin-bottom: 2.5vw;
	}
}

.saving-wrapper.challenge .challengeheader.program {
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 50px;
}
.saving-wrapper.challenge .challengeheader .about p strong {
		color: #E62320;
}

.saving-wrapper.challenge #anchor03 {
		padding: 15px;
}

.saving-wrapper.challenge #anchor03 .program {
		margin: 0;
		padding: 15px 15px 40px;
}

.saving-wrapper.challenge #anchor03 .program .inner .content:first-of-type {
		border: none;
}

.saving-wrapper.challenge #anchor03 .program .inner .content.requirement {
		border-top: #fff 3px solid;
}
@media screen and (max-width: 768px) {

	.saving-wrapper.challenge #anchor03 {
			    margin-bottom: 120px;
				padding: 22px 7px 2px;
				border-radius: 4vw;
		}
		.saving-wrapper.challenge #anchor03 h2 {
				margin: 1vw 4vw 9vw;
		}
		.saving-wrapper.challenge #anchor03 .about {
				padding: 4vw 3.3333vw 3.3333vw 3.3333vw;
				border-radius: 4vw;
		}
		.saving-wrapper.challenge #anchor03 .about h3 {
				margin: 0 auto 4vw;
				padding: 0 0 2vw;
		}
		.saving-wrapper.challenge #anchor03 .about p {
				margin: 0 0 4vw;
				padding: 0 0;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .about p:after {
				right: 0;
				top: auto;
				bottom: -2vw;
				width: 11.3333vw;
				height: 17.1478vw;
				background-size: 100% auto;
		}
		.saving-wrapper.challenge #anchor03 .about ul {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
		}
		.saving-wrapper.challenge #anchor03 .about ul li {
				width: 100%;
				max-width: initial;
				margin: 0 0 2vw;
		}
		.saving-wrapper.challenge #anchor03 .about ul li:last-child {
				margin: 0;
		}
		.saving-wrapper.challenge #anchor03 .about ul li a {
				padding: 4vw 0 2.6667vw;
				border-width: 2px;
				border-radius: 4vw;
		}
		.saving-wrapper.challenge #anchor03 .about ul li a img {
				width: 66.6667vw;
		}
		.saving-wrapper.challenge #anchor03 .program > p.p-present {
			max-width: 100%;
			padding: 4.5vw 0 4.5vw 30vw;
			border-radius: 10px;
			margin-bottom: 5vw;
		}
		.saving-wrapper.challenge #anchor03 .program > p.p-present::before {
			width: 100%;
			height: 100%;
			background-size: 32.5% auto;
			background-position: left 3% bottom;
		}
		.saving-wrapper.challenge #anchor03 .program > p.notes {
			margin: 10px 0 30px;
		}
		.saving-wrapper.challenge #anchor03 .program > p.notes br {
			display: none;
		}
	
			/* program */
		.saving-wrapper.challenge #anchor03 .program {
				padding: 6vw 3.3333vw 3.3333vw 3.3333vw;
				border-radius: 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program h3 {
				margin: 0 auto;
		}
		.saving-wrapper.challenge #anchor03 .program .saving-challenge-ttl {
			max-width: 78%;
			margin-bottom: 5.5vw;
		}
		.saving-wrapper.challenge #anchor03 .program > p {
				margin: 0 auto 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program > p.catch {
				margin: 0 auto 1.3333vw;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .program > p.period {
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .program > p.period span.block {
				display: block;
				margin: 0 0 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program > p.period span.block:last-of-type {
				margin: 0;
		}
		.saving-wrapper.challenge #anchor03 .program > p.period span.block span.start {
				display: block;
				padding: 0 0 4vw;
				background: url("../images/ico_arrow_bottom.png") center bottom 1vw no-repeat;
				background-size: 3.8667vw auto;
		}
		.saving-wrapper.challenge #anchor03 .program > .inner {
				padding: 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content {
				padding: 2.4vw;
				border: #fff 2px solid;
				border-top: none;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content:last-of-type {
				border-radius: 0 0 4vw 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content h4 {
				margin: 0;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content .figure {
				margin: 1.3333vw 0;
				max-width: none;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn01 {
				top: 8.333333333333333%;
				width: 89.27272727272727%;
				left: 5.272727272727273%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn02 {
				top: 21.49532710280374%;
				width: 43.27272727272727%;
				left: 5.272727272727273%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content .figure .btn03 {
				top: 21.49532710280374%;
				width: 43.27272727272727%;
				left: 51.27272727272727%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor05 .inner .content:nth-of-type(1) p {
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.check {
				margin: 10px 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.check li {
				padding: 0 0 0 10vw;
				margin: 0 0 1.3333vw;
				font-size: 71.4286%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.check li:last-child {
				margin: 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.check li:after {
				top: 0.8vw;
				width: 7.2vw;
				height: 7.2vw;
				background-image: url("../images/ico_checklist_sp.png");
				background-size: 100% auto;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut {
				margin: 2vw 0 0;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut h2 {
				margin: 0 0 2vw;
				border-radius: 4vw 4vw 0 0;
				font-size: 128.5714%;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut dl {
				margin: 0 2vw 4vw;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut dl:last-of-type {
				margin-bottom: 0;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut dl dt {
				margin: 0 0 2vw;
				font-size: 128.5714%;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut dl dd.conditions {
				margin: 0 0 2vw;
				font-size: 100%;
		}
		.saving-wrapper.challenge .underheader .inner .point .cut dl dd strong {
				font-size: 128.5714%;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan {
				margin: 1.3333vw 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan li {
				display: block;
				padding: 0 0 0 3.5vw;
				margin: 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan li:after {
				top: 1.2vw;
				width: 2.8vw;
				height: 2.8vw;
				border-radius: 1.4vw;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan.stop li {
				padding: 0 0 0 3vw;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan.stop li:after {
				top: 1vw;
				width: 2.4vw;
				height: 2.4vw;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.plan + p {
				text-align: left;
		}
		.saving-wrapper.challenge #anchor03 .program .inner .content ul.attention {
				margin-top: 2.6667vw;
		}
		.saving-wrapper.challenge #anchor03 .program .inner p.detail {
				margin: 2vw 0 0;
				font-size: 85.7143%;
				letter-spacing: 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner p.detail a {
				padding: 0 3.2vw 0 0;
		}
		.saving-wrapper.challenge #anchor03 .program .inner p.detail a:after {
				width: 1.86667vw;
				height: 3.21487vw;
				background-size: 100% auto;
		}
		/* #program01 */
		.saving-wrapper.challenge #anchor03 .program#anchor04 .inner .content:first-of-type {
				border: none;
				padding: 0;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto {
				margin: 0 0 4vw;
				padding: 2.4vw calc(2.4vw + 2px);
				border-radius: 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .howto h4 {
				font-size: 128.5714%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .point {
				padding: 2.4vw 0;
				border-radius: 4vw;
				margin: 4vw 0 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content .point h5 {
				margin: 3vw 0;
				border-radius: 4vw 4vw 0 0;
				padding: 5px 0;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.requirement {
				border-top: #fff 2px solid;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period h4 {
				margin: 0 0 2vw;
				border-radius: 4vw 4vw 0 0;
				font-size: 100%;
				line-height: 235.7143%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table {
				width: 100%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tr th {
				padding: 2vw;
				font-size: 100%;
				line-height: 120%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tr td {
				padding: 2vw 0;
				font-size: 78.5714%;
				line-height: 120%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr:last-of-type td:nth-of-type(1) {
				border-radius: 0 0 0 4vw;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tbody tr:last-of-type td:nth-of-type(2) {
				border-radius: 0 0 4vw 0;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.period table tr td span.start {
				display: block;
				padding: 0 0 4vw;
				background: url("../images/ico_arrow_bottom.png") center bottom 1vw no-repeat;
				background-size: 3.8667vw auto;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception p {
				text-align: left;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.reception ul li.title span {
				display: inline-block;
				vertical-align: middle;
				width: 15px;
				height: 15px;
				margin-right: 5px;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit p:nth-of-type(2) {
				text-align: left;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit p:nth-of-type(2) span {
				text-align: center;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit ul.attention li {
				text-align: left;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor04 .content.benefit ul.attention li span {
				position: absolute;
		}
		/* #program02 */
		.saving-wrapper.challenge #anchor03 .program#anchor05 .inner .content:first-of-type {
				border: #fff 2px solid;
		}
		.saving-wrapper.challenge #anchor03 .program#anchor05 .inner .content.service h4 {
				margin-bottom: 1vw;
				border-radius: 4vw 4vw 0 0;
		}

		.saving-wrapper.challenge .challengeheader h1 {
				margin: 0 0 4vw;
		}
		.saving-wrapper.challenge .challengeheader p.period {
				margin: 0 0 4vw;
				padding: 4vw;
				border-radius: 4vw;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge .challengeheader p.period {
				width: 78.6667vw;
				margin-left: auto;
				margin-right: auto;
				font-size: 107.1429%;
		}
		.saving-wrapper.challenge .challengeheader p.period span.block {
				margin: 0 0 2vw;
		}
		.saving-wrapper.challenge .challengeheader p.period span.block:last-of-type {
				margin: 0;
		}
		.saving-wrapper.challenge .challengeheader p.period span.block span.start {
				display: block;
				padding: 0 0 4vw;
				background: url("../images/ico_arrow_bottom.png") center bottom 1vw no-repeat;
				background-size: 3.8667vw auto;
		}
		.saving-wrapper.challenge .challengeheader.program {
				margin-bottom: 30px;
				padding: 0 3vw;
		}
		.saving-wrapper.challenge .challengeheader .about h2 {
				margin: 0 auto 4vw;
				padding: 0 0 2vw;
		}
		.saving-wrapper.challenge .challengeheader .about h2 img {
				width: 74.6667vw;
		}
		.saving-wrapper.challenge .challengeheader .about p {
				line-height: 160%;
		}
		.saving-wrapper.challenge #anchor03 {
				padding: 2vw;
		}
		.saving-wrapper.challenge #anchor03 .program {
				padding: 3.3333vw;
		}
		.saving-wrapper.challenge .challengeheader.program p.p-present {
			max-width: 100%;
			margin-top: 30px;
			margin-bottom: 15px;
			padding: 3.7% 0px 3.7% 32.2%;
			border-radius: 10px;
		}
		.saving-wrapper.challenge .challengeheader.program p.p-present {
			max-width: 100%;
			padding: 3.7% 0px 3.7% 33%;
			border-radius: 10px;
		}
		.saving-wrapper.challenge .challenge-notes {
			margin-top: 0;
			margin-bottom: 30px;
		}

}

/*****************************
modal
*****************************/
.modal-lp {
		position: relative;
		max-width: 1080px;
		margin: 0 auto;
		padding: 50px 0 30px;
		font-size: 24px;
		font-family: "Rounded M+ 2c","M PLUS Rounded\ 1c",sans-serif;
		color: #666;
		letter-spacing: 0.2em;
}

.modal-lp .modal-lp-close {
		text-align: center;
		margin-top: 40px;
}

.modal-lp .modal-lp-close a {
		position: relative;
		display: inline-block;
		color: #666666;
		text-decoration: none;
		font-weight: bold;
		font-size: 83%;
		padding-right: 26px;
}

.modal-lp .modal-lp-close a:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 24px;
		height: 24px;
		background: url(../images/ico_accordion_open.png) center center no-repeat;
		background-size: 100% 100%;
		-webkit-transform: translateY(-50%) rotate(45deg);
		    -ms-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
}

.modal-lp a:hover {
		opacity: 0.7;
		text-decoration: none;
}

.modal-lp .sp {
		display: none;
}

/*****************************
modal-regist
*****************************/
.modal-regist .inline-wrap-inner {
		border: 3px solid #e62320;
		border-radius: 20px 20px;
		background-color: #ffffff;
		padding: 8px 8px;
}

.modal-regist .inline-wrap-inner-content {
		padding: 50px 6.143667296786389%;
		border: 2px solid #e62320;
		border-radius: 14px 14px;
}

.modal-regist .regist-title {
		text-align: center;
		font-size: 167%;
		margin-bottom: 40px;
}

.modal-regist .regist-plan {
		margin-top: 40px;
}

.modal-regist .regist-plan-box {
		position: relative;
		overflow: hidden;
		border: 1px solid #666;
		border-radius: 0 0 20px 20px;
}

.modal-regist .regist-plan-box .box {
		position: relative;
		overflow: hidden;
		max-height: 150px;
}

.modal-regist .regist-plan-box .inner {
		padding: 20px 10px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.modal-regist .regist-plan-box .inner ul {
		width: 50%;
		padding: 0 10px;
}

.modal-regist .regist-plan-box .inner ul li {
		text-indent: -7%;
		padding-left: 7%;
}

.modal-regist .regist-plan-box .btn {
		position: relative;
}

.modal-regist .regist-plan-box .btn:before {
		content: "";
		position: absolute;
		top: -120px;
		left: 0;
		width: 100%;
		height: 120px;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
		background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), white);
		background: -o-linear-gradient(top, rgba(255, 255, 255, 0), white);
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}

.modal-regist .regist-plan-box .btn a {
		position: relative;
		display: block;
		text-align: center;
		background-color: #e6e6e6;
		color: #666666;
		text-decoration: none;
		font-weight: bold;
		font-size: 83%;
		padding: 20px 20px;
}

.modal-regist .regist-plan-box .btn a > span {
		position: relative;
		display: inline-block;
		padding-right: 30px;
}

.modal-regist .regist-plan-box .btn a > span:after {
		content: " ";
		position: absolute;
		right: 0;
		top: 50%;
		width: 24px;
		height: 24px;
		background: url(../images/ico_accordion_open.png) center center no-repeat;
		background-size: 100% 100%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
}

.modal-regist .regist-plan-box .btn a > span .close {
		display: none;
}

.modal-regist .regist-plan-box.is-active .box {
		max-height: none;
}

.modal-regist .regist-plan-box.is-active .btn a > span .open {
		display: none;
}

.modal-regist .regist-plan-box.is-active .btn a > span .close {
		display: block;
}

.modal-regist .regist-plan-box.is-active .btn:before {
		opacity: 0;
}

.modal-regist .regist-plan-box.is-active .btn a > span:after {
		-webkit-transform: translateY(-50%) rotate(45deg);
		    -ms-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
}

.modal-regist .regist-plan-btn01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		border: #e5231f 3px solid;
		background: #e5231f;
		border-radius: 20px 20px 0 0;
		color: #fff;
		font-size: 125%;
		text-align: center;
		padding: 20px 5px;
		min-height: 110px;
		text-decoration: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}

.modal-regist .regist-plan-btn01 span.plan {
		position: relative;
		padding-right: 60px;
}

.modal-regist .regist-plan-btn01 span.plan:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
		width: 50px;
		height: 50px;
		background: url(../images/ico_arrow_right2.png) 52% center no-repeat, #fff;
		background-size: 16px auto;
		border-radius: 50% 50%;
}

.modal-regist .regist-plan-btn01 span.note {
		margin-top: 10px;
		color: #fff;
		font-size: 70%;
}

.modal-regist .regist-plan-btn02 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		border: #e5231f 3px solid;
		background: #cccccc;
		border-radius: 20px 20px;
		color: #e5231f;
		font-size: 125%;
		text-align: center;
		line-height: 1.3;
		padding: 0 20px;
		height: 110px;
		text-decoration: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}

.modal-regist .regist-plan-btn02 span {
		padding-right: 40px;
		background: url(../images/ico_arrow_right2.png) right center no-repeat;
		background-size: 18px auto;
}

/*****************************
modal-campaign-tokyo
*****************************/
.modal-campaign-tokyo .inline-wrap-inner {
		border: 3px solid #0096ff;
		border-radius: 10px 10px;
		background-color: #0096ff;
		line-height: 1.45;
		padding: 8px 8px;
}

.modal-campaign-tokyo .inline-wrap-inner-content {
		padding: 50px 6.143667296786389%;
		border: 2px solid #ffff00;
		background: #ffffff;
}

.modal-campaign-tokyo .program-title {
		width: 100%;
		text-align: center;
		margin: 0 0 20px;
}

.modal-campaign-tokyo .program-title p {
		display: inline-block;
		background: #0096ff;
		color: #fff;
		border-radius: 50px;
		padding: 5px 30px;
		font-size: 100%;
}

.modal-campaign-tokyo .program-title p .large {
		font-size: 140%;
}

.modal-campaign-tokyo .program-title p .mid {
		font-size: 120%;
}

.modal-campaign-tokyo .color-blue {
		color: #0096ff;
}

.modal-campaign-tokyo .campaign-present {
		border-radius: 20px 20px;
		margin-bottom: 40px;
		padding: 20px 30px;
		background-color: #0096ff;
		color: #ffff00;
		font-size: 92%;
		text-align: center;
}
.modal-campaign-tokyo .campaign-title .sub {
	margin-bottom: 20px;
}
.modal-campaign-tokyo .campaign-present .line {
		text-decoration: underline;
}
.modal-campaign-tokyo .campaign-info .item a {
	color: #0096ff;
}
.modal-campaign-tokyo .campaign-info .item a.-color-gray {
	color: #666;
}
.modal-campaign-tokyo .campaign-info .item a.-underline {
	text-decoration: underline;
}
.modal-campaign-tokyo .campaign-info .item a.-underline:hover {
	opacity: .8;
}

.modal-lp .campaign-title {
		font-size: 125%;
		text-align: center;
		letter-spacing: 4px;
}

.modal-lp .campaign-title strong {
		font-size: 133%;
}

.modal-lp .campaign-title img.bnr_campaign_tokyo_title.pc {
		width: 100%;
		max-width: 703px;
}

.modal-lp .campaign-title img.bnr_campaign_tokyo_title.sp {
		width: 100%;
}

.modal-lp .campaign-title img.bnr_campaign_winter_title.pc {
		width: 100%;
		max-width: 845px;
}

.modal-lp .campaign-title img.bnr_campaign_winter_title.sp {
		width: 100%;
}

.modal-lp .campaign-title .main {
		display: block;
		font-size: 140%;
		font-weight: bold;
		margin-bottom: 20px;
}

.modal-lp .campaign-title .main span {
		font-size: 65%;
		vertical-align: middle;
}

.modal-lp .campaign-title .sub {
		display: block;
		font-size: 95%;
}
.modal-lp .campaign-title .sub em {
	font-size: 1.178em;
}

.modal-lp .campaign-lead {
		text-align: center;
		margin-bottom: 20px;
		font-size: 83%;
		font-weight: 700;
}

.modal-lp .campaign-info {
		font-size: 83%;
}

.modal-lp .campaign-info .item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
}

.modal-lp .campaign-info .item + .item {
		margin-top: 20px;
}

.modal-lp .campaign-info .label {
		width: 100%;
		text-align: center;
		margin: 40px 0 20px;
}

.modal-lp .campaign-info .label span {
		background: #e62321;
		display: inline-block;
		color: #fff;
		font-size: 125%;
		font-weight: 700;
		padding: 5px 20px;
		border-radius: 10px;
}

.modal-lp .campaign-info .item .title {
		position: relative;
		width: 6.3em;
}

.modal-lp .campaign-info .item .title span {
		display: inline-block;
}

.modal-lp .campaign-info .item .title span.colon:after {
		content: "：";
		position: absolute;
		top: 0;
		right: 0;
}
.modal-lp .campaign-info .item .title .mark {
	position: absolute;
	top: -1.3em;
	right: 1.2em;
	font-size: 80%;
}
@media (max-width: 768px) {
	.modal-lp .campaign-info .item .title .mark {
		top: -1.2em;
		right: .8em;
	}
	.modal-lp .campaign-info .item.-entry .note br {
		display: none;
	}
}

.modal-lp .campaign-info .item .title span.flex-box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		padding-right: 22%;
}

@media (max-width: 768px) {
		.modal-lp .campaign-info .item .title span.flex-box {
				width: 3.8em;
		}
}

.modal-lp .campaign-info .item .title span span {
		padding-right: 0;
}

.modal-lp .campaign-info .item .body {
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		   -moz-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
}

.modal-lp .campaign-info .item .body > * + * {
		margin-top: 10px;
}
.modal-lp .campaign-info .item a {
		text-decoration: underline;
}

.modal-lp .campaign-info .item a:hover {
		text-decoration: none;
}

.modal-lp .campaign-info .item .note {
		font-size: 75%;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
}

.modal-lp .campaign-info .item .idx li {
		text-indent: -1.3em;
		margin-left: 1.3em;
}

.modal-lp .campaign-info .item .idx li a.white {
		color: #fff;
}

.modal-lp .campaign-info .item.item-w {
		display: block;
}

.modal-lp .campaign-info .item.item-w .title {
		width: auto;
}

.modal-lp .campaign-info .item.item-w .title span {
		position: relative;
		padding-right: 1em;
}

.modal-lp .campaign-info .item.item-other .title {
		width: auto;
		font-size: 75%;
}

/*****************************
modal-campaign-winter
*****************************/
.modal-campaign-winter .inline-wrap-inner {
		border: 3px solid #ffae42;
		border-radius: 10px 10px;
		background-color: #ffae42;
		padding: 8px 8px;
}

.modal-campaign-winter .inline-wrap-inner-content {
		padding: 50px 6.143667296786389%;
		border: 2px solid #ffffff;
		background: #ffffff;
}

.modal-campaign-winter .color-red {
		color: #e62320;
}

.modal-campaign-winter .program-title {
		width: 100%;
		text-align: center;
		margin: 0 0 20px;
}

.modal-campaign-winter .program-title p {
		display: inline-block;
		background: #ffae42;
		color: #fff;
		border-radius: 50px;
		padding: 5px 30px;
		font-size: 100%;
		font-weight: 700;
		line-height: 1.3;
}

.modal-campaign-winter .program-title p .large {
		font-size: 140%;
}

.modal-campaign-winter .program-title p .mid {
		font-size: 120%;
}

/*****************************
modal program
*****************************/
.modal-program .inline-wrap-inner-content {
	padding: 0;
}
.modal-program img {
	max-width: 100%;
	vertical-align: top;
}

/***********************************************************
tablet layout
***********************************************************/
@media screen and (max-width: 980px) {
		.saving-wrapper {
				font-size: 20px;
		}
		.bx-wrapper a.bx-prev {
				left: 0;
		}
		.bx-wrapper a.bx-next {
				right: 0;
		}
		.saving-wrapper .underheader .inner .point .head {
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				-webkit-justify-content: space-between;
				   -moz-box-pack: justify;
				        justify-content: space-between;
		}
		.saving-wrapper .underheader .inner .point .head h2 {
				margin-right: 0;
		}
		.saving-wrapper .underheader .inner .point ol li {
				padding-left: 90px;
				padding-right: 15px;
				text-align: left;
		}
		.saving-wrapper .information .inner .point h3 {
				padding-left: 60px;
				padding-right: 15px;
		}
		.saving-wrapper .information .inner .point .detail {
				margin-left: 60px;
		}
		.modal-lp {
				font-size: 20px;
		}
}

/*****************************
modal-challenge
*****************************/
.modal-challenge {
	line-height: 1.4;
	letter-spacing: 0.1em;
}
.modal-challenge * {
	box-sizing: border-box;
}
.modal-challenge .inline-wrap-inner {
	position: relative;
	text-align: center;
	border-radius: 25px;
}
.modal-challenge .inline-wrap-inner::before {
	content: '';
	position: absolute;
	display: block;
	top: 24px;
	right: 24px;
	bottom: 24px;
	left: 24px;
	border: solid 2px #E5231F;
	border-radius: 25px;
	pointer-events: none;
}
.modal-challenge .inline-wrap-inner-content {
	padding: 80px 72px;
}
.modal-challenge .lead {
	font-size: 40px;
	font-weight: 700;
	margin-bottom: 64px;
}
.modal-challenge .btn {
	display: block;
	margin-bottom: 64px;
}
.modal-challenge .btn img {
	width: 100%;
	height: auto;
}
.modal-challenge .sub {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 30px;
}
.modal-challenge .links li {
	margin-bottom: 35px;
}
.modal-challenge .links li a {
	position: relative;
	display: block;
	width: 100%;
	max-width: 796px;
	text-align: center;
	border: solid 3px #E62320;
	border-radius: 25px;
	color: #E62320;
	font-size: 26px;
	letter-spacing: 0;
	font-weight: 700;
	padding: 24px 60px 24px 24px;
	margin: 0 auto;
}
.modal-challenge .links li a img {
	position: absolute;
	right: 25px;
	top: 0;
	bottom: 0;
	height: auto;
	margin: auto;
}
.modal-challenge .links li a .inline-block {
	display: inline-block;
}
@media(max-width: 768px) {
	.modal-challenge .inline-wrap-inner {
		border-radius: 3.3vw;
	}
	.modal-challenge .inline-wrap-inner::before {
		border-radius: 3.3vw;
		top: 3.2vw;
		right: 3.2vw;
		left: 3.2vw;
		bottom: 3.2vw;
	}
	.modal-challenge .inline-wrap-inner-content {
		padding: 10vw 9vw;
	}
	.modal-challenge .lead {
		font-size: 5.3vw;
		margin-bottom: 8.5vw;
	}
	.modal-challenge .btn {
		margin-bottom: 8.5vw;
	}
	.modal-challenge .sub {
		font-size: 3.4vw;
		margin-bottom: 4vw;
	}
	.modal-challenge .links li {
		margin-bottom: 4.6vw;
	}
	.modal-challenge .links li a {
		border-radius: 3.3vw;
		border-width: .4vw;
		font-size: 3.4vw;
		padding: 3.2vw 7.5vw 3.2vw 3.2vw;
	}
	.modal-challenge .links li a img {
		width: 1.6vw;
		right: 2.8vw;
	}
	.modal-challenge.modal-lp .modal-lp-close {
		margin-top: 8vw;
	}
}

/*****************************
country
*****************************/
.saving-wrapper.country {
	background: #fff;
	padding: 0;
}
.saving-wrapper.country .modal-lp {
	max-width: 100%;
	padding: 0;
	margin: 0;
}
.saving-wrapper.country .modal-campaign-winter .inline-wrap-inner {
	background: #fff;
	border-radius: 0;
	border-width: 20px;
}
.saving-wrapper.country .modal-campaign-winter .inline-wrap-inner-content {
	max-width: 1080px;
	padding: 36px 36px 70px;
	margin: 0 auto;
}
.saving-wrapper.country .modal-campaign-winter .program-title {
	margin-bottom: 33px;
}
.saving-wrapper.country .modal-lp .campaign-title img.bnr_campaign_winter_title.pc {
	max-width: 100%;
	margin-bottom: 33px;
}
.saving-wrapper.country .modal-campaign-winter .campaign-title-sub {
	text-align: center;
	margin-bottom: 16px;
}
.saving-wrapper.country .modal-campaign-winter .campaign-lead {
	margin-bottom: 50px;
}
.saving-wrapper.country .modal-campaign-winter .end {
	padding-top: 70px;
}
.saving-wrapper.country .modal-campaign-winter .end > p {
	text-align: center;
	font-size: 35px;
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.saving-wrapper.country .modal-campaign-winter .inline-wrap-inner {
		border-width: 8px;
	}
	.saving-wrapper.country .modal-campaign-winter .inline-wrap-inner-content {
		padding-left: 25px;
		padding-right: 25px;
		padding-bottom: 8vw;
	}
	.saving-wrapper.country .modal-campaign-winter .campaign-title-sub img {
		max-width: 100%;
	}
	.saving-wrapper.country .modal-campaign-winter .campaign-title img {
		width: 63%;
		margin-left: auto;
		margin-right: auto;
	}
	.saving-wrapper.country .modal-campaign-winter .campaign-lead {
		margin-bottom: 30px;
	}
	.saving-wrapper.country .modal-campaign-winter .end {
		padding-top: 8vw;
	}
	.saving-wrapper.country .modal-campaign-winter .end > p {
		font-size: 4vw;
	}
	.saving-wrapper.country .modal-campaign-winter .label {
		margin-top: 6vw;
		margin-bottom: 6vw;
	}
}

/***********************************************************
smartphone layout
***********************************************************/
@media screen and (max-width: 768px) {
		.saving-wrapper {
				padding: 6vw 0;
				font-size: 3.7333vw;
				letter-spacing: 0.05em;
		}
		.saving-wrapper a:hover {
				opacity: 1;
		}
		.saving-wrapper img {
				width: 100%;
		}
		.saving-wrapper .attention {
				font-size: 71.4286%;
		}
		.saving-wrapper > div {
				max-width: 89.3333vw;
				margin: 0 auto 6vw;
		}
		/*****************************
 header
 *****************************/
		.saving-wrapper .header h1 {
				margin: 0 0 7vw;
		}
		.saving-wrapper .header p,
		.saving-wrapper .header p.bnr {
				margin: 0 0 7vw;
				font-size: 85.7143%;
		}
		.saving-wrapper .header ul {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
				gap: 15px;
		}
		.saving-wrapper .header ul li {
				width: 100%;
				max-width: 100%;
		}
		.saving-wrapper .header ul li a {
				border-radius: 4vw;
				height: auto;
		}
		/* .lead_savingenergy{
			padding: 0 27% 0 0;
		}
		.saving-wrapper .header .lead_savingenergy {
			background-size: 29% auto;
			padding: 2% 28% 2% 0;
		} */
		
		/*****************************
 sitemap
 *****************************/
		.saving-wrapper .sitemap {
				margin-bottom: 4vw;
		}
		.saving-wrapper .sitemap h2 {
				margin: 0 0 2vw;
				border-radius: 4vw 4vw 0 0;
				font-size: 142.8571%;
		}
		.saving-wrapper .sitemap ul.tab {
				border-bottom-width: 2px;
		}
		.saving-wrapper .sitemap ul.tab li {
				width: calc(50% - 1px);
				font-size: 125%;
		}
		.saving-wrapper .sitemap ul.list {
				display: none;
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				-webkit-justify-content: center;
				   -moz-box-pack: center;
				        justify-content: center;
				padding: 0 4vw 4vw;
				border-radius: 0 0 4vw 4vw;
		}
		.saving-wrapper .sitemap ul.list li {
				padding: 0 2vw;
				margin: 4vw 0 0 -1px;
				border-left-width: 1px;
				border-right-width: 1px;
		}
		.saving-wrapper .sitemap p {
				margin: 4vw 0 0;
		}
		.saving-wrapper .sitemap p a {
				padding: 0 4vw 0 0;
		}
		.saving-wrapper .sitemap p a:after {
				width: 1.86667vw;
				height: 3.21487vw;
				background-size: 100% auto;
		}
		/* bnr */
		.saving-wrapper .sitemap ul.list li.bnr {
				margin-top: 10vw;
		}
		.saving-wrapper .sitemap ul.list li.bnr a {
				padding: 4vw;
				border-radius: 2vw;
		}
		.saving-wrapper .sitemap ul.list li.bnr span {
				top: -5vw;
				font-size: 85.7143%;
		}
		/* noopen */
		.saving-wrapper .sitemap ul.tab.noopen li a {
				border-radius: 0 0 0 4vw;
		}
		.saving-wrapper .sitemap ul.tab.noopen li:last-child a {
				border-radius: 0 0 4vw 0;
		}
		/*****************************
 #saving
 *****************************/
		.saving-wrapper .saving {
				padding: 4vw 2vw 2vw;
				border-radius: 4vw;
		}
		.saving-wrapper .saving h2 {
				margin: 0 0 4vw;
		}
		.saving-wrapper .saving > p {
				margin: 0 0 4vw;
				font-size: 107.1429%;
		}
		.saving-wrapper .saving .set {
				margin: 0 0 6vw;
		}
		.saving-wrapper .saving .set h3 {
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: center;
				-ms-flex-align: center;
				-webkit-align-items: center;
				   -moz-box-align: center;
				        align-items: center;
				height: 11.3333vw;
				margin: 0 0 4vw;
				padding: 0 0 0 26.6667vw;
				border-radius: 5.6667vw 5.6667vw 0 5.6667vw;
				font-size: 100%;
				line-height: 120%;
				text-align: left;
		}
		.saving-wrapper .saving .set h3 span {
				left: 1.3333vw;
				top: 1.3333vw;
				width: 24vw;
				padding: 0;
				border-radius: 4.3333vw;
				font-size: 100%;
				line-height: 232.1428%;
				text-align: center;
		}
		.saving-wrapper .saving .set .link {
				margin: 6vw 0 0;
				padding: 1.3333vw 0;
				border-radius: 0 0 4vw 4vw;
		}
		.saving-wrapper .saving .set .link ul li a {
				padding: 0 4vw 0 0;
		}
		.saving-wrapper .saving .set .link ul li a:after {
				width: 1.86667vw;
				height: 3.21487vw;
				background-size: 100% auto;
		}
		/* slider */
		.bx-wrapper a.bx-next {
				right: 0;
				width: 6vw;
				height: 6vw;
				margin-top: -3vw;
				border-radius: 3vw;
				background-size: 2vw auto !important;
		}
		.bx-wrapper a.bx-prev {
				left: 0;
				width: 6vw;
				height: 6vw;
				margin-top: -3vw;
				border-radius: 3vw;
				background-size: 2vw auto !important;
		}
		.bx-wrapper .bx-pager {
				bottom: -5vw !important;
		}

		/* faq */
		.faqWrap {
				max-width: 100%;
				background: #D1E7FF;
				padding: 0 15px 28px;
			}
			.faq .inner ul.faqtab li {
				width: 100%;
			}
			.faq {
				max-width: 1080px;
				margin: 0 auto;
			}
			.faq .inner ul.faqtab li a span {
				background: url(../images/txt_faq_chllenge_on03.png) center center no-repeat;
				background-size: auto 60%;
			}
			@media (max-width: 768px) {
				.faqWrap {
					padding: 0 5.33vw 6.6vw;
				}
				.faq .inner ul.faqtab li a span {
					background-size: 85% auto;
				}
			}
		.saving-wrapper .faq h3 {
				margin: 0 0 1.3333vw;
				border-radius: 4vw 4vw 0 0;
				font-size: 142.8571%;
		}
		.saving-wrapper .faq h3 img {
				width: 44vw;
				padding-bottom: 0.1em;
				margin: 0 3vw 0 0;
		}
		.saving-wrapper .faq .inner dl {
				padding: 4vw;
		}
		.saving-wrapper .faq .inner dl:last-of-type {
				border-radius: 0 0 4vw 4vw;
		}
		.saving-wrapper .faq .inner dl dt {
				position: relative;
				padding: 0 8vw 0 6vw;
				font-size: 100%;
				line-height: 120%;
		}
		.saving-wrapper .faq .inner dl dt:hover {
				opacity: 1;
		}
		.saving-wrapper .faq .inner dl dt:after {
				width: 3.3333vw;
				height: 3.3333vw;
				background-size: 100% auto;
		}
		.saving-wrapper .faq .inner dl dd {
				padding: 4vw 2vw 1px;
				font-size: 100%;
		}
		.saving-wrapper .faq .inner dl.open dt:after {
				-webkit-transform: translateY(-50%) rotate(45deg);
				    -ms-transform: translateY(-50%) rotate(45deg);
				        transform: translateY(-50%) rotate(45deg);
		}
		.saving-wrapper .faq .inner dl dd span.anser {
				position: static;
				display: block;
				font-size: 142.857%;
				line-height: 130%;
				color: #fff;
				text-align: center;
				background: #808080;
				margin: 0px 0px 2vw;
				border-radius: 3.4667vw;
		}
		.saving-wrapper .2vwfaq .inner dl dd h4 {
				margin: 0 0 1vw;
				font-size: 100%;
		}
		.saving-wrapper .faq .inner dl dd p {
				margin: 0 0 2vw;
				font-size: 100%;
		}
		.saving-wrapper .faq .inner dl dd .thumbnail {
				margin: 0 0 2vw;
		}
		.saving-wrapper .faq .inner dl dd .thumbnailWrap,
		.saving-wrapper .faq .inner dl dd .thumbnailLayout {
				display: block;
		}
		.saving-wrapper .faq .inner dl dd .thumbnail {
				margin: 0 0 2vw;
		}
		.saving-wrapper .faq .inner dl dd .thumbnailWrap .thumbnail,
		.saving-wrapper .faq .inner dl dd .thumbnailLayout .thumbnail,
		.saving-wrapper .faq .inner dl dd .thumbnailLayout > p {
				width: 100%;
				max-width: initial;
		}
		.saving-wrapper .faq .inner dl dd .thumbnail p {
				margin: 1vw 0 0;
				font-size: 62.5%;
		}
		.saving-wrapper .faq .inner dl dd ul {
				margin: 0 0 2vw;
				font-size: 100%;
		}
		.saving-wrapper .faq .inner dl dd ul.attention {
				margin: -2vw 0 2vw;
				font-size: 71.4286%;
		}
		.saving-wrapper .faq .inner ul.faqtab {
				-webkit-box-align: strech;
				-webkit-align-items: strech;
				   -moz-box-align: strech;
				    -ms-flex-align: strech;
				        align-items: strech;
		}
		.saving-wrapper .faq .inner ul.faqtab li {
				width: calc(50% - 1px);
				text-align: center;
				font-size: 100%;
		}
		.saving-wrapper .faq .inner ul.faqtab li a {
				-webkit-box-sizing: border-box;
				   -moz-box-sizing: border-box;
				        box-sizing: border-box;
				height: 100%;
				padding: 1vw 0;
				line-height: 120%;
		}
		.saving-wrapper .faq .inner ul.faqtab li a span {
				background-image: url("../images/txt_faq_chllenge_on_sp.png");
				background-size: 31.0667vw auto;
		}
		/*****************************
 regist
 *****************************/
		.saving-wrapper .regist-title {
				padding-top: 4vw;
		}
		.saving-wrapper .regist-button {
				border-width: 2px;
				border-radius: 2vw;
				font-size: 107%;
				margin-bottom: 4vw;
		}
		/*****************************
 campaign
 *****************************/
		.campaign {
				text-align: center;
				margin: 5.33vw 0;
		}
		.campaign .item + .item {
				margin-top: 4vw;
		}
		/*****************************
 bnr
 *****************************/
		.saving-wrapper p.bnr {
				width: 89.3333vw;
				margin: 0 auto;
		}
		/*****************************
 underheader
 *****************************/
		.saving-wrapper .underheader .menu {
				position: relative;
				margin: 0 0 2vw;
				padding: 0 4vw;
				background: #fff;
				border-radius: 4vw;
		}
		.saving-wrapper .underheader .menu p.open {
				right: 4vw;
		}
		.saving-wrapper .underheader .menu p.open img {
				width: 5.2vw;
		}
		.saving-wrapper .underheader .menu .sitemap {
				width: 100%;
				border-radius: 4vw;
				-webkit-box-shadow: 2vw 2vw 1vw 0px rgba(0, 0, 0, 0.25);
				        box-shadow: 2vw 2vw 1vw 0px rgba(0, 0, 0, 0.25);
		}
		.saving-wrapper .underheader .menu .sitemap .close {
				height: 8vw;
				padding: 0 4vw;
				text-align: right;
				line-height: 8vw;
		}
		.saving-wrapper .underheader .menu .sitemap .close img {
				width: 5.2vw;
				vertical-align: middle;
		}
		.saving-wrapper .underheader .menu .sitemap ul.tab li {
				width: 50%;
		}
		.saving-wrapper .underheader .menu .sitemap ul.list {
				padding: 1vw 4vw 4vw;
		}
		.saving-wrapper .underheader .inner {
				padding: 2vw;
				border-radius: 4vw;
		}
		.saving-wrapper .underheader .inner > .head {
				height: 19vw;
				margin: 0 0 14vw;
				border-radius: 4vw 4vw 0 0;
		}
		.saving-wrapper .underheader .inner > .head:after {
				right: -1.8vw;
				bottom: -1px;
				width: 20vw;
				height: 20.1333vw;
				background-size: 100% auto;
		}
		.saving-wrapper .underheader .inner > .head h1 {
				left: 24vw;
				top: 4vw;
				font-size: 125%;
		}
		.saving-wrapper .underheader .inner > .head h1 img {
				width: 17.3333vw;
				left: -20.6667vw;
				top: -0.6667vw;
		}
		.saving-wrapper .underheader .inner > .head dl {
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: stretch;
				-ms-flex-align: stretch;
				-webkit-align-items: stretch;
				   -moz-box-align: stretch;
				        align-items: stretch;
				right: 0;
				bottom: -8.2vw;
				line-height: 120%;
		}
		.saving-wrapper .underheader .inner > .head dl dt {
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: center;
				-ms-flex-align: center;
				-webkit-align-items: center;
				   -moz-box-align: center;
				        align-items: center;
				padding: 0 2vw 0 1vw;
				border-top: #666 2px solid;
				border-bottom: #666 2px solid;
				line-height: 5.1vw;
				letter-spacing: 0em;
				font-size: 85.7143%;
		}
		.saving-wrapper .underheader .inner > .head dl dd {
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: center;
				-ms-flex-align: center;
				-webkit-align-items: center;
				   -moz-box-align: center;
				        align-items: center;
				padding: 0;
				border-top: #666 2px solid;
				border-bottom: #666 2px solid;
				line-height: 5.1vw;
				letter-spacing: 0em;
				font-size: 85.7143%;
		}
		.saving-wrapper .underheader .inner > .head dl dd.update {
				padding: 0 0 0 1vw;
				border: none;
				line-height: 100%;
		}
		.saving-wrapper .underheader .inner .point .head {
				position: relative;
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: center;
				-ms-flex-align: center;
				-webkit-align-items: center;
				   -moz-box-align: center;
				        align-items: center;
				padding: 0 4vw 0 6vw;
				margin: 0 0 2vw;
		}
		.saving-wrapper .underheader .inner .point .head:after {
				content: " ";
				position: absolute;
				left: 6.6vw;
				top: -19.2vw;
				width: 11.4667vw;
				height: 18.1885vw;
				background-size: 100% auto;
		}
		.saving-wrapper .underheader .inner .point .head h2 {
				font-size: 128.5714%;
		}
		.saving-wrapper .underheader .inner .point .head ul li {
				font-size: 85.7143%;
		}
		.saving-wrapper .underheader .inner .point .head ul li:last-child {
				margin: 0 0 0 2vw;
				padding: 0 0 0 2vw;
		}
		.saving-wrapper .underheader .inner .point .head ul li a {
				color: #B2B2B2;
		}
		.saving-wrapper .underheader .inner .point .head ul li a:hover {
				color: #666;
				text-decoration: underline;
				opacity: 1;
		}
		.saving-wrapper .underheader .inner .point .check {
				padding: 4vw 6vw;
				border-radius: 4vw;
		}
		.saving-wrapper .underheader .inner .point .check ol li {
				margin: 0 0 6vw;
				padding: 0 0 0 8vw;
				background-size: 6vw auto;
				font-size: 100%;
				line-height: 120%;
		}
		.saving-wrapper .underheader .inner .point .check ol li:last-child {
				margin: 0;
		}
		/* 冷蔵庫 */
		.saving-wrapper .underheader .inner.refrigerator > .head h1 img {
				width: 7.8667vw;
				left: -11vw;
				top: -3.2vw;
		}
		.saving-wrapper .underheader .inner.refrigerator .point .head:after {
				left: 1vw;
		}
		/*****************************
 information
 *****************************/
		.saving-wrapper .information h2 {
				margin: 0 0 2vw;
				border-radius: 4vw 4vw 0 0;
				font-size: 142.8571%;
		}
		.saving-wrapper .information .inner {
				border-width: 2px;
				border-radius: 0 0 4vw 4vw;
				padding: 4.6667vw 1.6vw 0;
		}
		.saving-wrapper .information .inner > iframe {
				width: 80vw;
				height: 44.6154vw;
				margin: 0 auto 4vw;
		}
		.saving-wrapper .information .inner > p {
				margin: 0 0 4vw;
				font-size: 85.7143%;
		}
		.saving-wrapper .information .inner > p a {
				padding: 0 4vw 0 0;
		}
		.saving-wrapper .information .inner > p a:after {
				width: 1.86667vw;
				height: 3.21487vw;
				background-size: 100% auto;
		}
		.saving-wrapper .information .inner .point {
				margin: 0 0 6vw;
		}
		.saving-wrapper .information .inner .point h3 {
				-webkit-box-sizing: border-box;
				   -moz-box-sizing: border-box;
				        box-sizing: border-box;
				display: -webkit-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: -moz-box;
				display: flex;
				-webkit-box-align: center;
				-ms-flex-align: center;
				-webkit-align-items: center;
				   -moz-box-align: center;
				        align-items: center;
				min-height: 12vw;
				margin: 0 0 2vw;
				padding: 1vw 4vw 1vw 16vw;
				background: #fff;
				border-radius: 6vw;
				line-height: 120%;
		}
		.saving-wrapper .information .inner .point h3 span {
				left: 1vw;
				width: 10vw;
				height: 10vw;
				border-radius: 5vw;
				background-size: 4.8vw;
				line-height: 10vw;
		}
		.saving-wrapper .information .inner .point .detail {
				margin: 0 1vw;
		}
		.saving-wrapper .information .inner .point .detail h4 {
				margin: 0 0 2vw;
				padding: 0 0 1vw 2vw;
				font-size: 100%;
		}
		.saving-wrapper .information .inner .point .detail h4:after {
				height: calc(100% - 1vw);
		}
		.saving-wrapper .information .inner .point .detail p {
				margin: 0 0 4vw;
				font-size: 100%;
		}
		.saving-wrapper .information .inner .point .detail p.reference {
				font-size: 71.4286%;
		}
		.saving-wrapper .information .inner .point .detail ul {
				margin: 0 0 4vw;
				font-size: 100%;
		}
		.saving-wrapper .information .inner .point .detail .thumbnail {
				margin: 0 0 4vw;
				text-align: center;
		}
		.saving-wrapper .information .inner .point .detail .thumbnailWrap,
		.saving-wrapper .information .inner .point .detail .thumbnailLayout {
				display: block;
		}
		.saving-wrapper .information .inner .point .detail .thumbnail {
				margin: 0 0 4vw;
		}
		.saving-wrapper .information .inner .point .detail .thumbnailWrap .thumbnail,
		.saving-wrapper .information .inner .point .detail .thumbnailLayout .thumbnail,
		.saving-wrapper .information .inner .point .detail .thumbnailLayout > p {
				width: 100%;
				max-width: initial;
		}
		.saving-wrapper .information .inner .point .detail .thumbnail p {
				margin: 1vw 0 0;
				font-size: 62.5%;
		}
		.saving-wrapper .information .inner .point .detail table {
				margin: 0 0 4vw;
		}
		.saving-wrapper .information .inner .point .detail table.tbl01 thead tr th {
				padding: 2vw;
				font-size: 100%;
		}
		.saving-wrapper .information .inner .point .detail table.tbl01 tbody td {
				padding: 2vw;
				font-size: 71.4286%;
		}
		.saving-wrapper .information .inner .point .detail ul.attention {
				margin-top: -4vw;
				font-size: 71.4286%;
		}
		.saving-wrapper .information .inner .point .detail div.thumbnailWrap + ul.attention,
		.saving-wrapper .information .inner .point .detail div.thumbnail + ul.attention {
				margin-top: -2vw;
		}
		.saving-wrapper .information .inner .point .detail dl {
				margin: 0 0 4vw;
				font-size: 100%;
		}
		.saving-wrapper .information .inner .point .detail dl dt {
				min-width: 32vw;
				margin: 0 0 2vw;
				padding: 0 4vw;
				border-radius: 2vw;
		}
		.saving-wrapper .information .inner .point .detail dl dd h4,
		.saving-wrapper .information .inner .point .detail dl dd p,
		.saving-wrapper .information .inner .point .detail dl dd ul,
		.saving-wrapper .information .inner .point .detail dl dd .thumbnail {
				margin-bottom: 2vw;
		}
/*****************************
 challenge
 *****************************/
		.saving-wrapper .challengeheader h1 {
				margin: 0 0 4vw;
		}
		.saving-wrapper .challengeheader p.period {
				margin: 0 0 4vw;
				padding: 4vw;
				border-radius: 4vw;
				font-size: 107.1429%;
		}
		.saving-wrapper .challengeheader p.period {
				width: 78.6667vw;
				margin-left: auto;
				margin-right: auto;
				font-size: 107.1429%;
		}
		.saving-wrapper .challengeheader p.period span.block {
				margin: 0 0 2vw;
		}
		.saving-wrapper .challengeheader p.period span.block:last-of-type {
				margin: 0;
		}
		.saving-wrapper .challengeheader p.period span.block span.start {
				display: block;
				padding: 0 0 4vw;
				background: url("../images/ico_arrow_bottom.png") center bottom 1vw no-repeat;
				background-size: 3.8667vw auto;
		}
		.saving-wrapper .challengeheader.program {
				margin-bottom: 30px;
				padding: 0 3vw;
		}
		.saving-wrapper .challengeheader .about h2 {
				margin: 0 auto 4vw;
				padding: 0 0 2vw;
		}
		.saving-wrapper .challengeheader .about h2 img {
				width: 74.6667vw;
		}
		.saving-wrapper .challengeheader .about p {
				line-height: 160%;
		}
		.saving-wrapper.challenge #anchor03 {
				padding: 2vw;
		}
		.saving-wrapper.challenge #anchor03 .program {
				padding: 3.3333vw;
		}
		.saving-wrapper .challengeheader.program p.p-present {
			max-width: 100%;
			margin-top: 30px;
			margin-bottom: 15px;
			padding: 3.7% 0px 3.7% 32.2%;
			border-radius: 10px;
		}
		.saving-wrapper .challengeheader.program p.p-present {
			max-width: 100%;
			padding: 3.7% 0px 3.7% 33%;
			border-radius: 10px;
		}
		.saving-wrapper.challenge .challenge-notes {
			margin-top: 0;
			margin-bottom: 30px;
		}

		/*****************************
 modal
 *****************************/
		.modal-lp {
				max-width: 89.3333vw;
				font-size: 3.6vw;
				letter-spacing: 0.05em;
		}
		.modal-lp .sps {
			font-size: 2.8vw;
		}
		.modal-lp .modal-lp-close {
				margin-top: 3vw;
		}
		.modal-lp .modal-lp-close a {
				padding-right: 5vw;
		}
		.modal-lp .modal-lp-close a:after {
				width: 4vw;
				height: 4vw;
		}
		.modal-lp a:hover {
				opacity: 1;
		}
		.modal-lp .sp {
				display: block;
		}
		.modal-lp .pc {
				display: none;
		}
		/*****************************
 modal-regist
 *****************************/
		.modal-regist .inline-wrap-inner {
				border-width: 2px;
				border-radius: 4vw 4vw;
				padding: 0.8vw 0.8vw;
		}
		.modal-regist .inline-wrap-inner-content {
				padding: 6vw 6.143667296786389%;
				border-width: 1px;
				border-radius: 3vw 3vw;
		}
		.modal-regist .regist-title {
				font-size: 143%;
				margin-bottom: 4vw;
		}
		.modal-regist .regist-plan {
				margin-top: 4vw;
		}
		.modal-regist .regist-plan-box {
				border-radius: 0 0 3vw 3vw;
		}
		.modal-regist .regist-plan-box .box {
				max-height: 24vw;
		}
		.modal-regist .regist-plan-box .inner {
				padding: 4vw 3vw;
				display: block;
		}
		.modal-regist .regist-plan-box .inner ul {
				width: 100%;
				padding: 0 0;
		}
		.modal-regist .regist-plan-box .btn:before {
				top: -15vw;
				height: 15vw;
		}
		.modal-regist .regist-plan-box .btn a {
				padding: 4vw 3vw;
		}
		.modal-regist .regist-plan-box .btn a > span {
				padding-right: 5vw;
		}
		.modal-regist .regist-plan-box .btn a > span:after {
				width: 4vw;
				height: 4vw;
		}
		.modal-regist .regist-plan-btn01 {
				border-radius: 3vw 3vw 0 0;
				font-size: 107%;
				padding: 10px 0;
				min-height: 16vw;
		}
		.modal-regist .regist-plan-btn01 span.plan {
				padding-right: 8vw;
		}
		.modal-regist .regist-plan-btn01 span.plan:before {
				width: 6.67vw;
				height: 6.67vw;
				background-size: 35% auto;
		}
		.modal-regist .regist-plan-btn02 {
				border-radius: 3vw 3vw;
				font-size: 107%;
				padding: 0 0;
				height: 18vw;
		}
		.modal-regist .regist-plan-btn02 span {
				padding-right: 6vw;
				background-size: 3vw auto;
		}
		/*****************************
 modal-campaign-tokyo
 *****************************/
		.modal-campaign-tokyo .inline-wrap-inner {
				border-width: 2px;
				border-radius: 2vw 2vw;
				padding: 0.8vw 0.8vw;
		}
		.modal-campaign-tokyo .inline-wrap-inner-content {
				padding: 6vw 1.8vw;
				border-width: 1px;
		}
		.modal-campaign-tokyo .campaign-present {
				border-radius: 3vw 3vw;
				margin-bottom: 4vw;
				padding: 4vw 4vw;
		}
		.modal-lp .campaign-title {
				font-size: 107%;
				margin-bottom: 3vw;
		}
		.modal-lp .campaign-lead {
				letter-spacing: 0;
				margin-bottom: 3vw;
		}
		.modal-lp .campaign-info .item {
				display: block;
		}
		.modal-lp .campaign-info .item + .item {
				margin-top: 4vw;
		}
		.modal-lp .campaign-info .item .title span {
				position: relative;
				padding-right: 1em;
		}
		.modal-lp .campaign-title {
				letter-spacing: 2px;
		}
		.modal-lp .campaign-title .main {
				font-size: 160%;
				line-height: 1.4;
				margin-bottom: 10px;
		}
		.modal-lp .campaign-info .item .body > * + * {
				margin-top: 1.33vw;
		}
		.modal-lp .campaign-info .item a:hover {
				text-decoration: underline;
		}
		/*****************************
 modal-campaign-winter
 *****************************/
		.modal-campaign-winter .inline-wrap-inner {
				border-width: 2px;
				border-radius: 2vw 2vw;
				padding: 0.8vw 0.8vw;
		}
		.modal-campaign-winter .inline-wrap-inner-content {
				padding: 6vw 6.143667296786389%;
				border-width: 1px;
		}
}

.other-box {
		-ms-flex-preferred-size: auto;
		-webkit-flex-basis: auto;
		        flex-basis: auto;
		width: 480px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.other-box a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

.other-box-imgbg {
		background-color: red;
		border-radius: 22px 0 0 22px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		height: auto;
		-ms-flex-preferred-size: auto;
		-webkit-flex-basis: auto;
		        flex-basis: auto;
		width: 160px;
}

.other-box-imgbg img {
		width: 160px;
}

@media (max-width: 480px) {
		.other-box-imgbg {
				width: 110px;
				max-width: 110px;
		}
}

.other-box-detail {
		width: calc(100% - 160px);
}

/*/////////////////////////////////////////////////////////////
202208 WID
/////////////////////////////////////////////////////////////*/
.pt15 {
		padding-top: 15px !important;
}

.mt15 {
		margin-top: 15px !important;
}

.mt20 {
		margin-top: 20px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
		margin-bottom: 20px !important;
}

.mt30 {
		margin-top: 30px !important;
}

.mb30 {
		margin-bottom: 30px !important;
}

.mt40 {
		margin-top: 40px !important;
}

.mb40 {
		margin-bottom: 40px !important;
}

.mt50 {
		margin-top: 50px !important;
}

.mb50 {
		margin-bottom: 50px !important;
}

#howto-step2,
#anchor08 {
		/* ヘッダーの高さ分を指定 */
		padding-top: 69px;
		margin-top: -69px;
		display: block;
}

@media (max-width: 767px) {
		#howto-step2,
		#anchor08 {
				padding-top: 52px;
				margin-top: -52px;
		}
}

/*////////////////////////////////////////////////////////////////////////////
自由化前の料金プラン（従量電灯A/B/C、低圧電力）のお客さまのエントリー方法
////////////////////////////////////////////////////////////////////////////*/
.saving-wrapper.howto {
		background: #C3F0FF;
		letter-spacing: 0.1em;
}

.saving-wrapper.howto h1, .saving-wrapper.howto h2, .saving-wrapper.howto h3 {
		letter-spacing: 0.2em;
}

@media (max-width: 768px) {
		.saving-wrapper.howto {
				padding: 3vw 0 6vw;
		}
		.saving-wrapper.howto > div {
				max-width: 94vw;
		}
}

.entry-inner {
		background: #fff;
		border-radius: 20px;
		padding: 40px 15px 15px;
		text-align: center;
}

@media (max-width: 768px) {
		.entry-inner {
				padding: 30px 10px 10px;
		}
}

.entry-inner h1 {
		padding-bottom: 30px;
}

@media (max-width: 768px) {
		.entry-inner h1 {
				padding-bottom: 20px;
		}
}

@media (max-width: 768px) {
		.entry-inner h1 img {
				width: 60%;
		}
}

.entry-inner .method {
		padding-top: 30px;
		font-size: 136%;
		font-weight: 500;
}

.entry-inner .method span {
		font-size: 80%;
}

@media (max-width: 768px) {
		.entry-inner .method {
				font-size: 140%;
				padding-top: 20px;
		}
}

@media (max-width: 480px) {
		.entry-inner .method {
				font-size: 160%;
		}
}

.entry-inner .step-list {
		margin: 25px 0 25px 21%;
}

@media (max-width: 1080px) {
		.entry-inner .step-list {
				margin: 25px 0 25px 11%;
		}
}

@media (max-width: 991px) {
		.entry-inner .step-list {
				margin: 25px 0 25px 0;
		}
}

.entry-inner .step-list ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		line-height: 2;
		margin-bottom: 10px;
}

.entry-inner .step-list ul li {
		font-size: 103%;
}

.entry-inner .step-list ul li:first-child {
		width: 130px;
		text-align: right;
}

@media (max-width: 768px) {
		.entry-inner .step-list ul li:first-child {
				width: 22%;
		}
}

.entry-inner .step-list ul li:last-child {
		width: calc(100% - 130px);
		text-align: left;
}

@media (max-width: 768px) {
		.entry-inner .step-list ul li:last-child {
				width: calc(100% - 22%);
		}
}

.entry-inner .step-list ul li:last-child .underline {
		text-decoration: underline;
}

.entry-inner .step-list ul li:last-child .note {
		display: block;
		font-size: 74%;
		text-decoration: none;
		text-indent: -20px;
		padding-left: 20px;
		letter-spacing: 2px;
}

@media (max-width: 480px) {
		.entry-inner .step-list ul li:last-child .note {
				text-indent: -14px;
				padding-left: 14px;
				margin-left: -26%;
		}
}

.entry-inner .step-area {
		background: #F2F2F2;
		border-radius: 20px;
		padding: 25px;
}

@media (max-width: 768px) {
		.entry-inner .step-area {
				padding: 5px;
		}
}

.entry-inner .step-area .step {
		background: #fff;
		border: solid 5px #fff;
		border-radius: 25px;
		/*====================================================================
   .accordion_one
   ====================================================================*/
}

.entry-inner .step-area .step#step01, .entry-inner .step-area .step#step02 {
		margin-bottom: 50px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01, .entry-inner .step-area .step#step02 {
				margin-bottom: 10%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step {
				border: solid 2px #fff;
		}
}

.entry-inner .step-area .step .step-header {
		background: #fff;
		margin: 10px 5px;
}

.entry-inner .step-area .step .step-header h3 {
		font-size: 160%;
		line-height: 1.5;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-header h3 {
				font-size: 130%;
		}
}

.entry-inner .step-area .step .step-body {
		padding: 45px;
		background: #c3f0ff;
		border-bottom-right-radius: 25px;
		border-bottom-left-radius: 25px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body {
				padding: 30px 15px;
		}
}

.entry-inner .step-area .step#step01 .make-account {
		width: 100%;
		background: #e5231f;
		text-align: right;
		border-radius: 25px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .make-account {
				border-radius: 20px;
		}
}

.entry-inner .step-area .step#step01 .make-account a {
		display: block;
		padding: 25px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		-webkit-justify-content: flex-end;
		   -moz-box-pack: end;
		        justify-content: flex-end;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .make-account a {
				padding: 15px;
		}
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step#step01 .make-account a img {
				max-width: 80%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .make-account a img {
				max-width: 90%;
				margin-left: 5%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step#step01 .make-account a img {
				max-width: 95%;
				margin-left: 0;
		}
}

.entry-inner .step-area .step#step01 .account-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .account-link {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
		}
}

.entry-inner .step-area .step#step01 .account-link dl {
		width: 100%;
		max-width: 48%;
		text-align: center;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .account-link dl {
				max-width: 80%;
				margin: auto;
		}
}

.entry-inner .step-area .step#step01 .account-link dl dt {
		margin: 20px 0 15px;
		font-size: 65%;
		font-weight: 800;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .account-link dl dt {
				margin: 40px 0 15px;
		}
}

@media (max-width: 640px) {
		.entry-inner .step-area .step#step01 .account-link dl dt {
				font-size: 100%;
		}
}

.entry-inner .step-area .step#step01 .account-link dl dd.btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		height: 123px;
		border: #e5231f 3px solid;
		background: #e5231f;
		border-radius: 10px;
		-webkit-box-shadow: 3px 3px 0px 0px #770100;
		        box-shadow: 3px 3px 0px 0px #770100;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step#step01 .account-link dl dd.btn a {
				height: 100px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step01 .account-link dl dd.btn a {
				height: auto;
				padding: 10px 0;
		}
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step#step01 .account-link dl dd.btn a img {
				max-width: 80%;
		}
}

.entry-inner .step-area .step#step02 .description, .entry-inner .step-area .step#step03 .description {
		font-size: 140%;
		font-weight: bold;
		margin-bottom: 30px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step02 .description, .entry-inner .step-area .step#step03 .description {
				font-size: 120%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step#step02 .description, .entry-inner .step-area .step#step03 .description {
				font-size: 130%;
		}
}

.entry-inner .step-area .step#step02 .need-info {
		max-width: 860px;
		margin: 0 auto 20px;
		text-align: left;
		border-bottom: solid #fff;
		padding: 0 0 20px 20px;
		line-height: 1.8;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step02 .need-info {
				padding: 0 0 20px 0;
		}
}

.entry-inner .step-area .step#step02 .need-info ul li {
		font-size: 120%;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step02 .need-info ul li {
				font-size: 100%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step#step02 .need-info ul li {
				font-size: 120%;
		}
}

.entry-inner .step-area .step#step02 .need-info ul li.note {
		font-size: 85%;
		letter-spacing: 1px;
}

@media (max-width: 480px) {
		.entry-inner .step-area .step#step02 .need-info ul li.note {
				font-size: 85%;
		}
}

.entry-inner .step-area .step#step02 .need-info ul li.note.caution {
		color: #E62320;
}

.entry-inner .step-area .step#step02 .need-info a.about-customer {
		display: block;
		font-size: 70%;
		text-align: left;
		margin-bottom: 20px;
		text-decoration: underline;
}

.entry-inner .step-area .step#step02 .tap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		width: 100%;
		max-width: 860px;
		margin: auto;
}

.entry-inner .step-area .step#step02 .tap p {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		width: 100%;
		position: relative;
		margin: 20px 0 20px 100px;
}

@media (max-width: 480px) {
		.entry-inner .step-area .step#step02 .tap p {
				margin: 20px 0 20px 50px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step02 .next-step {
				margin-top: 30px;
		}
}

.entry-inner .step-area .step#step02 .next-step p {
		font-size: 75%;
}

.entry-inner .step-area .step#step02 .next-step p a {
		font-size: 170%;
		letter-spacing: 2px;
		text-decoration: underline;
		margin: 0 5px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step02 .next-step p a {
				font-size: 130%;
				margin: 0 10px 0 0;
		}
}

.entry-inner .step-area .step#step03 a.entry-step3 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		max-width: 750px;
		margin: auto;
		padding: 20px;
		border: #e5231f 3px solid;
		background: #e5231f;
		border-radius: 10px;
		-webkit-box-shadow: 3px 3px 0px 0px #770100;
		        box-shadow: 3px 3px 0px 0px #770100;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#step03 a.entry-step3 {
				padding: 15px 20px;
		}
}

.entry-inner .step-area .step .accordion_one {
		width: 100%;
		margin: 20px 0 30px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one {
				margin: 20px 0 0px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header {
		background-color: #5e5e5e;
		border-radius: 25px;
		color: #fff;
		font-size: 110%;
		font-weight: bold;
		padding: 20px 5px;
		text-align: center;
		position: relative;
		z-index: +1;
		cursor: pointer;
		-webkit-transition-duration: 2s;
		     -o-transition-duration: 2s;
		        transition-duration: 2s;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header {
				border-radius: 20px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header.open {
		border-top-left-radius: 25px;
		border-top-right-radius: 25px;
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header.open {
				border-top-left-radius: 20px;
				border-top-right-radius: 20px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header #gaclick-savingenergyhowto-create,
.entry-inner .step-area .step .accordion_one .accordion_header #gaclick-savingenergyhowto-register,
.entry-inner .step-area .step .accordion_one .accordion_header #gaclick-savingenergypaln-chat,
.entry-inner .step-area .step .accordion_one .accordion_header #gaclick-savingenergypaln-phone {
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
}

.entry-inner .step-area .step .accordion_one .accordion_header#ac1 img {
		margin-right: 50px;
}

@media (max-width: 1080px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac1 img {
				margin-right: 10%;
				max-width: 67%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac1 img {
				margin-right: 0;
				max-width: 85%;
				margin-left: 5%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac2 {
				padding: 15px 20px 60px;
		}
}

@media (max-width: 1080px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac2 img {
				margin-right: 10%;
				max-width: 67%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac2 img {
				margin-right: 0;
				max-width: 95%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header#ac2 .ac_btn {
				left: 0;
				right: 0;
				margin: auto;
				bottom: 10px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header:hover {
		opacity: .8;
}

.entry-inner .step-area .step .accordion_one .accordion_header .i_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		position: absolute;
		top: 50%;
		right: 5%;
		width: 40px;
		height: 40px;
		border: 1px solid #fff;
		margin-top: -20px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		    transform: rotate(45deg);
		-webkit-transform-origin: center center;
		    -ms-transform-origin: center center;
		        transform-origin: center center;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
}

.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		position: absolute;
		top: 25%;
		right: 20px;
		background: #fff;
		width: 130px;
		height: 46px;
		border-radius: 50px;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn {
				width: 90px;
				height: 35px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn {
				width: 100px;
				top: auto;
				bottom: 15px;
				right: 15%;
				height: 35px;
		}
}

@media (max-width: 640px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn {
				width: 110px;
				bottom: 10px;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn {
				width: 90px;
				bottom: 7px;
				height: 30px;
				right: 11%;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn:before {
		content: "OPEN";
		display: block;
		color: #e5231f;
		font-size: 80%;
		position: absolute;
		right: 15px;
		letter-spacing: 1px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn:before {
				font-size: 100%;
		}
}

@media (max-width: 640px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn:before {
				font-size: 150%;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn .cross {
		display: inline-block;
		width: 15px;
		height: 15px;
		margin: 0 10px;
		border-top: 2px solid #e5231f;
		border-left: 2px solid #e5231f;
		position: absolute;
		left: 8px;
		-webkit-transform: rotate(-135deg);
		-ms-transform: rotate(-135deg);
		    transform: rotate(-135deg);
		top: 11px;
		-webkit-transform-origin: center center;
		    -ms-transform-origin: center center;
		        transform-origin: center center;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn .cross {
				width: 10px;
				height: 10px;
				left: 2px;
				top: 8px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn .cross {
				top: 8px;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_header .ac_btn .cross {
				top: 6px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_header.open .ac_btn:before {
		content: "CLOSE";
		right: 10px;
}

.entry-inner .step-area .step .accordion_one .accordion_header.open .ac_btn .cross {
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		    transform: rotate(45deg);
		top: 19px;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_header.open .ac_btn .cross {
				top: 14px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header.open .ac_btn .cross {
				top: 15px;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_header.open .ac_btn .cross {
				top: 13px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner {
		display: none;
		background: #fff;
		border-bottom-right-radius: 30px;
		border-bottom-left-radius: 30px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .box_one {
		padding: 0;
}

.entry-inner .step-area .step .accordion_one .accordion_inner p.txt_a_ac {
		margin: 0;
		padding: 20px 30px 0 70px;
		font-size: 50%;
		text-align: left;
		letter-spacing: 1px;
}

@media (max-width: 640px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner p.txt_a_ac {
				font-size: 80%;
				padding: 20px 30px 0 10%;
				text-align: center;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner p.txt_a_ac span {
		font-size: 150%;
		font-weight: 800;
		margin-right: 10px;
		display: inline-block;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item {
		margin: 20px 30px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item {
				margin: 20px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-left {
		width: 55%;
}
.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-left img {
	max-width: 380px;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-left {
				width: 48%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-left {
				-webkit-box-ordinal-group: 2;
				-ms-flex-order: 2;
				-webkit-order: 2;
				-moz-box-ordinal-group: 3;
				     order: 2;
				width: 100%;
				max-width: 330px;
				margin: 0 auto 30px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right {
		width: 45%;
		text-align: left;
		font-size: 70%;
		line-height: 2;
		letter-spacing: 1px;
}

@media (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right {
				width: 48%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right {
				-webkit-box-ordinal-group: 1;
				-ms-flex-order: 1;
				-webkit-order: 1;
				-moz-box-ordinal-group: 2;
				     order: 1;
				font-size: 65%;
				width: 100%;
				max-width: 330px;
				margin: 0 auto 10px;
		}
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right img {
				width: auto;
		}
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right img.icon {
				height: 30px;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right a.underline {
		text-decoration: underline;
		color: #656d73;
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right {
				font-size: 90%;
		}
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right img {
		vertical-align: middle;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right p.btn {
		background: #eb1e1d;
		display: block;
		text-align: center;
		max-width: 380px;
		border-radius: 50px;
		padding: 3px;
		color: #fff;
		position: relative;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right p.btn.reg {
		background: #39B54A;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right p.btn .ac_btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		width: 12px;
		height: 20px;
		position: absolute;
		top: 8px;
		right: 10px;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .item .item-right p.btn .ac_btn .arrow {
		display: block;
		width: 10px;
		height: 10px;
		margin: 0 10px;
		border-top: 2px solid #fff;
		border-left: 2px solid #fff;
		position: absolute;
		-webkit-transform: rotate(135deg);
		-ms-transform: rotate(135deg);
		    transform: rotate(135deg);
}

.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea {
		width: 100%;
		margin: 50px auto 20px;
		border-bottom-right-radius: 30px;
		border-bottom-left-radius: 30px;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea .close_box a.close_btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		background: #f2f2f2;
		padding: 25px 15px 25px 20px;
		text-decoration: none;
		line-height: 1.3;
		color: #333;
		font-size: 18px;
		font-weight: bold;
		position: relative;
		cursor: pointer;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
		border-bottom-right-radius: 30px;
		border-bottom-left-radius: 30px;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea .close_box a.close_btn .ac_btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		width: 25px;
		height: 20px;
		margin-left: 5px;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea .close_box a.close_btn .ac_btn span.cross {
		display: inline-block;
		width: 15px;
		height: 15px;
		margin: 0 10px;
		border-top: 2px solid #333;
		border-left: 2px solid #333;
		position: absolute;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		    transform: rotate(45deg);
		top: 32px;
		position: absolute;
}

.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea .close_box a.close_btn:hover {
		opacity: .8;
}

@media screen and (max-width: 1024px) {
		.entry-inner .step-area .step .accordion_one .accordion_header {
				font-size: 75%;
		}
		.entry-inner .step-area .step .accordion_one .accordion_header .i_box {
				width: 30px;
				height: 30px;
				margin-top: -15px;
		}
		.entry-inner .step-area .step .accordion_one .accordion_inner .closeArea .close_box a.close_btn {
				font-size: 14px;
		}
}

@media screen and (max-width: 768px) {
		.entry-inner .step-area .step .accordion_one .accordion_header {
				font-size: 60%;
				text-align: left;
				padding: 15px 40px 15px 15px;
		}
}

@media screen and (max-width: 768px) and (max-width: 480px) {
		.entry-inner .step-area .step .accordion_one .accordion_header {
				padding: 15px 15px 15px 15px;
		}
}

.account-confirmation#modal-inner01 .inline-wrap-inner {
		background: #fff;
		border-radius: 25px;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content {
		padding: 5%;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .modal-discription {
		text-align: left;
		font-weight: 800;
		font-size: 120%;
		margin-bottom: 40px;
}

@media (max-width: 768px) {
		.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .modal-discription {
				font-size: 90%;
		}
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .modal-discription a {
		text-decoration: underline;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .modal-discription a:hover {
		text-decoration: underline;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement {
		text-align: center;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement p.supplement-text {
		font-size: 80%;
		margin-bottom: 20px;
		font-weight: 500;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement img {
		margin: auto;
}

@media (max-width: 768px) {
		.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement img {
				width: 70%;
		}
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement .modal-btn {
		margin: 50px 0;
}

.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement .modal-btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		height: 100px;
		border: #e5231f 3px solid;
		background: #e5231f;
		border-radius: 10px;
		-webkit-box-shadow: 3px 3px 0px 0px #770100;
		        box-shadow: 3px 3px 0px 0px #770100;
}

@media (max-width: 480px) {
		.account-confirmation#modal-inner01 .inline-wrap-inner .inline-wrap-inner-content .supplement .modal-btn a {
				height: auto;
				padding: 10px;
		}
}

p.back-top {
		margin: auto;
		display: table;
		position: relative;
}

p.back-top a {
		color: #0096FF;
		text-decoration: underline;
}

p.back-top span.cross {
		display: inline-block;
		width: 14px;
		height: 14px;
		margin: 0 10px;
		border-top: 2px solid #333;
		border-left: 2px solid #333;
		position: absolute;
		right: -35px;
		-webkit-transform: rotate(135deg);
		-ms-transform: rotate(135deg);
		    transform: rotate(135deg);
		top: 12px;
		-webkit-transform-origin: center center;
		    -ms-transform-origin: center center;
		        transform-origin: center center;
}

@media (max-width: 980px) {
		p.back-top span.cross {
				top: 8px;
		}
}

@media (max-width: 768px) {
		p.back-top span.cross {
				top: 30%;
		}
}

@media (max-width: 640px) {
		p.back-top span.cross {
				top: 24%;
				width: 10px;
				height: 10px;
				right: -25px;
		}
}

.mr5 {
		margin-right: 5px;
}

.ml5 {
		margin-left: 5px;
}

.saving-wrapper .content-body-top {
		margin: 0 auto;
		font-size: 0;
		line-height: 0;
		text-align: right;
		width: 100% !important;
		max-width: 1920px;
		padding: 0 20px 40px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
}

.saving-wrapper .content-body-top > a {
		position: relative;
		display: block;
		width: 50px;
		height: 50px;
		margin: auto;
		background: #fff;
		border: solid 1px #ddd;
		border-radius: 25px;
		-webkit-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
		        box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
}

.saving-wrapper .content-body-top > a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 15px;
		height: 15px;
		margin: -3px 0 0 -8px;
		border-top: solid 1px #eb0810;
		border-right: solid 1px #eb0810;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		    transform: rotate(-45deg);
}

/*////////////////////////////////////////////////////////////////////////////
契約中の料金プランを確認したい
////////////////////////////////////////////////////////////////////////////*/
.saving-wrapper.plan {
		background: #C3F0FF;
		letter-spacing: 0.1em;
}

.saving-wrapper.plan h1, .saving-wrapper.plan h2, .saving-wrapper.plan h3 {
		letter-spacing: 0.2em;
}

@media (max-width: 768px) {
		.saving-wrapper.plan {
				padding: 3vw 0 6vw;
		}
		.saving-wrapper.plan > div {
				max-width: 94vw;
		}
}

.saving-wrapper.plan * {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}

.entry-inner h2 {
		font-size: 136%;
		font-weight: 500;
}

.entry-inner h2 span {
		font-size: 80%;
}

@media (max-width: 768px) {
		.entry-inner h2 {
				font-size: 140%;
				padding-top: 20px;
		}
}

@media (max-width: 480px) {
		.entry-inner h2 {
				font-size: 160%;
		}
}

.entry-inner .conflink-area {
		width: 100%;
		max-width: 850px;
		margin: 30px auto 40px;
}

@media (max-width: 768px) {
		.entry-inner .conflink-area {
				padding: 0 20px;
		}
}

.entry-inner .conflink-area .btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		background: #e62321;
		color: #fff;
		height: 65px;
		text-decoration: none;
}

.entry-inner .conflink-area .btn.full {
		margin-bottom: 20px;
}

.entry-inner .conflink-area .btn.full a {
		padding: 15px 10px;
		border-radius: 50px;
}

.entry-inner .conflink-area .btn.half {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
}

@media (max-width: 768px) {
		.entry-inner .conflink-area .btn.half {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
		}
}

.entry-inner .conflink-area .btn.half a {
		font-size: 90%;
		padding: 15px 0;
		position: relative;
}

.entry-inner .conflink-area .btn.half a:first-child {
		width: 45.3%;
		border-top-left-radius: 50px;
		border-bottom-left-radius: 50px;
}

.entry-inner .conflink-area .btn.half a:first-child::before {
		background-color: #e62321;
		bottom: 0;
		-webkit-clip-path: polygon(0 0, 0 100%, 100% 0);
		        clip-path: polygon(0 0, 0 100%, 100% 0);
		content: "";
		height: 65px;
		margin: auto;
		position: absolute;
		right: -9%;
		top: 0;
		width: 9%;
}

@media (max-width: 768px) {
		.entry-inner .conflink-area .btn.half a:first-child::before {
				content: none;
		}
}

@media (max-width: 768px) {
		.entry-inner .conflink-area .btn.half a:first-child {
				width: 100%;
				border-top-left-radius: 30px;
				border-top-right-radius: 30px;
				border-bottom-left-radius: 0;
				margin-bottom: 2px;
		}
}

.entry-inner .conflink-area .btn.half a:last-child {
		width: 50.3%;
		border-top-right-radius: 50px;
		border-bottom-right-radius: 50px;
}

.entry-inner .conflink-area .btn.half a:last-child::before {
		background-color: #e62321;
		bottom: 0;
		-webkit-clip-path: polygon(100% 0, 0 100%, 100% 100%);
		        clip-path: polygon(100% 0, 0 100%, 100% 100%);
		content: "";
		height: 65px;
		margin: auto;
		position: absolute;
		left: -8%;
		top: 0;
		width: 8%;
}

@media (max-width: 768px) {
		.entry-inner .conflink-area .btn.half a:last-child::before {
				content: none;
		}
}

@media (max-width: 768px) {
		.entry-inner .conflink-area .btn.half a:last-child {
				width: 100%;
				border-top-right-radius: 0;
				border-bottom-right-radius: 30px;
				border-bottom-left-radius: 30px;
		}
}

.entry-inner .step-area .step#anchor01, .entry-inner .step-area .step#anchor02 {
		margin-bottom: 50px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step#anchor01, .entry-inner .step-area .step#anchor02 {
				margin-bottom: 10%;
		}
}

.entry-inner .step-area .step#anchor02 .step-body {
		background: #CEECC6;
}

.entry-inner .step-area .step#anchor03 .step-body {
		background: #FFD2A5;
}

.entry-inner .step-area .step .step-body h4 {
		font-weight: 800;
		font-size: 120%;
		margin-bottom: 30px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body h4 {
				font-size: 100%;
		}
}

.entry-inner .step-area .step .step-body ul.confirmation {
		text-align: left;
		margin: 0 auto 30px;
		max-width: 830px;
}

.entry-inner .step-area .step .step-body ul.confirmation li {
		text-indent: -22px;
		padding-left: 22px;
		font-size: 77%;
		line-height: 2;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body ul.confirmation li span {
				font-size: 63%;
				margin-left: -20px;
				line-height: 1.6;
				text-indent: 0;
				padding-left: 0;
				display: block;
		}
}

.entry-inner .step-area .step .step-body ul.confirmation li a.underline {
		text-decoration: underline;
}

.entry-inner .step-area .step .step-body .modal-area .popup img {
		margin-left: 7%;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .modal-area .popup img {
				width: 70%;
				max-width: 400px;
				margin-left: 11%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .step-body .modal-area .popup img {
				width: 80%;
		}
}

.entry-inner .step-area .step .step-body .customer-number {
		margin-top: 50px;
}

.entry-inner .step-area .step .step-body .customer-number .title {
		background: #fff;
		padding: 15px;
		font-size: 120%;
		font-weight: 800;
		border-radius: 30px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .title {
				font-size: 100%;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box {
		margin-top: 40px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box p {
		font-size: 80%;
		margin-bottom: 15px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box p {
				font-size: 100%;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box p span {
		font-size: 150%;
		margin: 0 5px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title {
		border-top-left-radius: 20px;
		border-top-right-radius: 20px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title a {
		padding: 20px;
		background: #e62321;
		border: solid 2px #e62321;
		border-top-left-radius: 20px;
		border-top-right-radius: 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title a {
				padding: 10px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title a img {
				width: 80%;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title a .note {
		margin-top: 10px;
		color: #fff;
		font-size: 70%;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-title a:hover {
		opacity: 0.7;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body {
		border: solid 2px;
		border-top: none;
		border-bottom-right-radius: 20px;
		border-bottom-left-radius: 20px;
		background: #fff;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body.text_wrapper {
		position: relative;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text {
		overflow: hidden;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		position: relative;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text {
				padding: 20px 15px;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text.hidden {
		height: 130px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text.hidden::after {
		content: "";
		display: block;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(120%, white));
		background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 120%);
		background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 120%);
		background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, white 120%);
		width: 100%;
		height: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text.open::after {
		background: none;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul {
		width: 49%;
		padding: 20px 1%;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul {
				width: 100%;
				padding: 0;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul li {
		font-size: 75%;
		letter-spacing: 1px;
		text-align: left;
		padding: 0 10px;
		text-indent: -20px;
		padding-left: 20px;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul li {
				font-size: 100%;
				text-indent: -6%;
				padding-left: 6%;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul li {
				padding: 0;
				padding-left: 1%;
		}
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul li:not(:last-child) {
		margin-bottom: 8px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .text ul li:first-child {
		margin-bottom: 8px;
}

.entry-inner .step-area .step .step-body .customer-number .plan-box .plan-body .show_more {
		position: relative;
		font-size: 80%;
		bottom: 0px;
		left: 0px;
		width: 100%;
		padding: 20px 0;
		text-align: center;
		cursor: pointer;
		background: #E6E6E6;
		border-bottom-right-radius: 20px;
		border-bottom-left-radius: 20px;
}

@media (max-width: 850px) {
		.entry-inner .step-area .step .step-body .accordion_one #ac3, .entry-inner .step-area .step .step-body .accordion_one #ac4 {
				padding: 20px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one #ac3, .entry-inner .step-area .step .step-body .accordion_one #ac4 {
				text-align: center;
				padding: 15px;
		}
		.entry-inner .step-area .step .step-body .accordion_one #ac3 img, .entry-inner .step-area .step .step-body .accordion_one #ac4 img {
				width: auto;
				-o-object-fit: contain;
				   object-fit: contain;
				text-align: center;
				height: 40px;
		}
}

@media (max-width: 640px) {
		.entry-inner .step-area .step .step-body .accordion_one #ac3 img, .entry-inner .step-area .step .step-body .accordion_one #ac4 img {
				height: 35px;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .step-body .accordion_one #ac3 img, .entry-inner .step-area .step .step-body .accordion_one #ac4 img {
				height: 25px;
		}
}

.entry-inner .step-area .step .step-body .accordion_one #ac3 .accordion_open, .entry-inner .step-area .step .step-body .accordion_one #ac4 .accordion_open {
		display: none;
}

.entry-inner .step-area .step .step-body .accordion_one #ac3.open .accordion_close, .entry-inner .step-area .step .step-body .accordion_one #ac4.open .accordion_close {
		display: none;
}

.entry-inner .step-area .step .step-body .accordion_one #ac3.open .accordion_open, .entry-inner .step-area .step .step-body .accordion_one #ac4.open .accordion_open {
		display: block;
		margin: auto;
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .text {
		padding: 40px 20px;
		font-weight: 800;
		font-size: 120%;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .text {
				font-size: 100%;
		}
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .text ul {
		text-align: left;
		margin: auto;
		max-width: 800px;
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .text ul li {
		text-indent: -33px;
		padding-left: 33px;
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .text ul li:not(:last-child) {
		margin-bottom: 20px;
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .text ul li a {
		color: #E62320;
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
}

@media (max-width: 850px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner {
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				-webkit-justify-content: space-between;
				   -moz-box-pack: justify;
				        justify-content: space-between;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				        flex-wrap: wrap;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				-webkit-justify-content: center;
				   -moz-box-pack: center;
				        justify-content: center;
		}
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .img-area {
		width: 60%;
		margin: 0 10px;
}

@media (max-width: 850px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .img-area {
				width: 55%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .img-area {
				width: 100%;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .img-area img {
				width: auto;
				max-width: 90%;
		}
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .text-area {
		font-size: 80%;
		line-height: 2;
		text-align: left;
		width: 40%;
		margin: 0 10px;
}

@media (max-width: 850px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .text-area {
				width: 45%;
				margin-left: 20px;
		}
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .confirmation-inner .text-area {
				width: 100%;
				text-align: center;
				margin-top: 30px;
				font-size: 70%;
		}
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		        align-items: center;
		margin: 0 50px;
		padding: 10px;
		border: #e5231f 3px solid;
		background: #e5231f;
		border-radius: 10px;
		-webkit-box-shadow: 3px 3px 0px 0px #770100;
		        box-shadow: 3px 3px 0px 0px #770100;
		-webkit-transition-duration: 0.2s;
		     -o-transition-duration: 0.2s;
		        transition-duration: 0.2s;
}

@media (max-width: 768px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a {
				margin: 0 15px;
		}
		.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a img {
				width: auto;
		}
}

@media (max-width: 640px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a img {
				height: 25px;
		}
}

@media (max-width: 480px) {
		.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a img {
				height: 20px;
		}
}

.entry-inner .step-area .step .step-body .accordion_one .box_one .btn a:hover {
		opacity: 0.7;
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
		width: 30px;
		right: 5px;
		top: 0px !important;
}

.savingenergy-contents {
		margin: 0;
}

.savingenergy-contents .tab-area {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-moz-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		gap: 1.5%;
}

@media (max-width: 768px) {
		.savingenergy-contents .tab-area {
				gap: 2%;
		}
}

.savingenergy-contents .tab-area li {
		text-align: center;
		cursor: pointer;
		width: 50%;
		padding: 30px 30px 50px;
		border-top-left-radius: 25px;
		border-top-right-radius: 25px;
}

@media (max-width: 768px) {
		.savingenergy-contents .tab-area li {
				padding: 30px 30px 40px;
		}
}

.savingenergy-contents .tab-area li#tab1 {
		background-color: #c4effd;
}

.savingenergy-contents .tab-area li#tab2 {
		background-color: #c3e9a7;
}

.savingenergy-contents .tab-area li.select {
		z-index: 3;
}

.savingenergy-contents .content-area {
		z-index: 2;
		position: relative;
}

.savingenergy-contents .content-area.hide {
		display: none;
}

@media (max-width: 768px) {
		.savingenergy-contents .content-area {
				margin-top: -15px;
		}
}

ul.moraeru {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-moz-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: flex-start;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-moz-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
		/* max-width: 940px; */
		/* margin: 0 auto 30px; */
		gap: 30px 0;
}
@media (max-width: 768px) {
	ul.moraeru {
		gap: 1.8vw;
		margin-bottom: 3vw;
	}
}

ul.moraeru li.small {
		width: 48%;
		margin-right: 15px;
}

ul.moraeru li.small2 {
		width: 48%;
}

ul.moraeru li.small2 img {
		position: relative;
		right: -17px;
}

@media (max-width: 768px) {
		ul.moraeru li {
				width: 100%;
		}
		ul.moraeru li.small {
				width: 100%;
				margin-right: 0;
		}
		ul.moraeru li.small img {
				right: 0;
				left: 0;
				width: 100%;
				max-width: 100%;
		}
		ul.moraeru li.small2 {
				width: 100%;
		}
		ul.moraeru li.small2 img {
				right: 0;
				left: 0;
				width: 100%;
				max-width: 100%;
		}
}

/*****************************
modal-campaign-tokyo
*****************************/
.campaign-tokyo-end {
		max-width: 1080px;
		margin: 0 auto;
		padding: 50px 10px 30px;
		font-size: 24px;
		font-family: "Rounded M+ 2c","M PLUS Rounded\ 1c",sans-serif;
		color: #666;
		letter-spacing: 0.2em;
}
.campaign-tokyo-end.-country {
	padding-bottom: 60px;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .pc {
				display: none;
		}
}

.campaign-tokyo-end .sp {
		display: none;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .sp {
				display: block;
				margin: auto;
				width: 100%;
				max-width: 550px;
		}
}

@media (max-width: 980px) {
		.campaign-tokyo-end {
				font-size: 143%;
		}
}

@media (max-width: 768px) {
		.campaign-tokyo-end {
				font-size: 3.7333vw;
				letter-spacing: 0.05em;
				padding: 6vw 2vw 0;
		}
}

.campaign-tokyo-end .end-text {
		text-align: center;
}

@media (max-width: 640px) {
		.campaign-tokyo-end .end-text {
				font-size: 130%;
		}
}

.campaign-tokyo-end .end-text .end-text p {
		font-size: 150%;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .end-text .end-text p {
				font-size: 110%;
		}
}

.campaign-tokyo-end .inline-wrap-inner {
		border: 3px solid #0096ff;
		border-radius: 10px 10px;
		background-color: #0096ff;
		padding: 8px 8px;
}
.campaign-tokyo-end.-country .inline-wrap-inner {
	border-color: #ffae42;
	background-color: #ffae42;
}
@media (max-width: 768px) {
		.campaign-tokyo-end .inline-wrap-inner {
				border-width: 2px;
				padding: 0.8vw 0.8vw;
		}
}

.campaign-tokyo-end .inline-wrap-inner .inline-wrap-inner-content {
		padding: 50px 6.143667296786389%;
		border: 2px solid #ffff00;
		background: #ffffff;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .inline-wrap-inner .inline-wrap-inner-content {
				padding: 6vw 5vw;
				border-width: 1px;
		}
}

.campaign-tokyo-end .program-title p {
	padding: 10px 40px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
}

.campaign-tokyo-end .campaign-title {
	margin-bottom: 20px;
	text-align: center;
}
.campaign-tokyo-end .campaign-title .main {
	display: block;
	margin-bottom: 20px;
	font-size: 40px;
	font-weight: 900;
}
.campaign-tokyo-end .campaign-title .main >span {
	font-size: 75%;
}
.campaign-tokyo-end .campaign-title .sub {
	display: block;
	font-size: 28px;
	letter-spacing: 0.05em;
}
.campaign-tokyo-end .campaign-title .sub >span {
	font-size: 1.178em;
}
.campaign-tokyo-end .campaign-title .sub br {
	display: none;
}
@media (max-width: 999px) {
	.campaign-tokyo-end .campaign-title .sub br {
		display: block;
	}
}
@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-title {
				margin-bottom: 3vw;
		}
		.campaign-tokyo-end .campaign-title .main {
			font-size: 5.7vw;
			margin-bottom: 3vw;
		}
		.campaign-tokyo-end .campaign-title .sub {
			font-size: 3.8vw;
			margin-bottom: 3vw;
		}
}

.campaign-tokyo-end .campaign-lead {
		text-align: center;
		margin-bottom: 20px;
		font-size: 83%;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-lead {
				margin-bottom: 3vw;
		}
}

.campaign-tokyo-end .campaign-info {
		font-size: 83%;
}

.campaign-tokyo-end .campaign-info .item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-info .item {
				display: block;
		}
}

.campaign-tokyo-end .campaign-info .item + .item {
		margin-top: 20px;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-info .item + .item {
				margin-top: 4vw;
		}
}

.campaign-tokyo-end .campaign-info .item .title {
		position: relative;
		width: 6.3em;
}

.campaign-tokyo-end .campaign-info .item .title span {
		display: inline-block;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-info .item .title span {
				position: relative;
				padding-right: 1em;
		}
}

.campaign-tokyo-end .campaign-info .item .title span.colon::after {
		content: "：";
		position: absolute;
		top: 0;
		right: 0;
}

.campaign-tokyo-end .campaign-info .item .title span.flex-box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		-moz-box-pack: justify;
		justify-content: space-between;
		padding-right: 22%;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-info .item .title span.flex-box {
				width: 3.8em;
		}
}

.campaign-tokyo-end .campaign-info .item .body {
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		-moz-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
}

.campaign-tokyo-end .campaign-info .item .body > * + * {
		margin-top: 10px;
}

.campaign-tokyo-end .campaign-info .item .note {
		font-size: 75%;
		font-family: 'Hiragino Kaku Gothic ProN',Meiryo,'ＭＳ Ｐゴシック','Arial',sans-serif;
		letter-spacing: 0.1em;
}

.campaign-tokyo-end .campaign-info .item .idx li {
		text-indent: -1.3em;
		margin-left: 1.3em;
}
.campaign-tokyo-end .campaign-info .item .idx li + li {
	margin-top: 0.3em;
}

.campaign-tokyo-end .campaign-info .item.item-w {
		display: block;
}

.campaign-tokyo-end .campaign-info .item.item-w .title {
		width: auto;
		margin-bottom: 5px;
}

.campaign-tokyo-end .campaign-info .item.item-w .title span {
		position: relative;
		padding-right: 1em;
}

.campaign-tokyo-end .color-blue {
		color: #0096ff;
}

.campaign-tokyo-end .campaign-present {
		border-radius: 20px 20px;
		margin-bottom: 40px;
		padding: 20px;
		background-color: #0096ff;
		color: #ffff00;
		font-size: 92%;
		text-align: center;
}

@media (max-width: 768px) {
		.campaign-tokyo-end .campaign-present {
				border-radius: 3vw 3vw;
				margin-bottom: 4vw;
				padding: 4vw 4vw;
				font-size: 100%;
		}
}
.campaign-tokyo-end .line {
		text-decoration: underline;
}
.campaign-tokyo-back {
	text-align: center;
	padding-top: 40px;
}
.campaign-tokyo-back a {
	display: inline-block;
	width: 402px;
}
.campaign-tokyo-back a:hover {
	opacity: .7;
}
.campaign-tokyo-back a img {
	width: 100%;
}
@media (max-width: 768px) {
	.campaign-tokyo-back {
		padding-top: 5.3vw;
	}
	.campaign-tokyo-back a {
		width: 76.6vw;
	}
}
/* グレーカラー */
.campaign-tokyo-end.-gray .inline-wrap-inner {
	border-color: #777;
	background-color: #777;
}
.campaign-tokyo-end.-gray .inline-wrap-inner .inline-wrap-inner-content {
	border-color: #ccc;
}
.modal-campaign-tokyo.-gray .program-title p {
	background-color: #777;
}
.campaign-tokyo-end.-gray .color-blue {
	color: #777;
}
.campaign-tokyo-end.-gray .campaign-present {
	background-color: #777;
	color: #fff;
}

.saving-wrapper .faq .inner {
		position: relative;
}

.saving-wrapper .faq .inner .faq_list {
		overflow: hidden;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		        justify-content: space-between;
		position: relative;
}

.saving-wrapper .faq .inner .faq_list.open::after {
		background: none;
}

.saving-wrapper .faq .inner .faq_list dl {
		width: 100%;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
}

.saving-wrapper .faq .inner .show_faq {
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		text-align: center;
		bottom: 0;
		font-size: 150%;
		height: 185px;
		cursor: pointer;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		background: rgba(255, 255, 255, 0.8);
}

@media (max-width: 768px) {
		.saving-wrapper .faq .inner .show_faq {
				height: 130px;
				padding-bottom: 20px;
		}
}

.saving-wrapper .faq .inner .show_faq::after {
		content: "";
		position: absolute;
		top: 70%;
		left: 50%;
		width: 20px;
		height: 20px;
		margin: -3px 0 0 -8px;
		border-top: solid 3px #666666;
		border-right: solid 3px #666666;
		-webkit-transform: rotate(135deg);
		-ms-transform: rotate(135deg);
		    transform: rotate(135deg);
}

@media (max-width: 768px) {
		.saving-wrapper .faq .inner .show_faq::after {
				top: 65%;
		}
}

.saving-wrapper .faq .inner .show_faq.active {
		bottom: -130px;
		background: #fff;
		height: 90px;
		padding-bottom: 30px;
		border-radius: 30px;
}

.saving-wrapper .faq .inner .show_faq.active::after {
		content: "";
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
}


/* モーダル - 規約改訂 */
.modal-termsKaitei {
  max-width: 830px;
}
.modal-termsKaitei .mfp-close {
  right: -30px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background-color: #3D86B4;
  background-position: center;
  opacity: 1;
}
.modal-termsKaitei .inline-wrap-inner {
  border-radius: 40px;
}
.modal-termsKaitei .inline-wrap-inner-content {
  padding: 70px 40px;
}
.modal-termsKaitei .termsKaitei {
  letter-spacing: 0.05em;
}
.modal-termsKaitei .termsKaitei_title {
  text-align: center;
  margin-bottom: 60px;
  font-size: 1.25em;
}
.modal-termsKaitei .termsKaitei_item + .termsKaitei_item {
  margin-top: 40px;
}
.modal-termsKaitei .termsKaitei_item dt {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 0.2em;
  font-weight: 700;
}
.modal-termsKaitei .termsKaitei_item dt::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.modal-termsKaitei .termsKaitei_item dd {
  padding-left: 1.25em;
  font-size: 0.8333333333em;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .modal-termsKaitei .mfp-close {
    top: 5vw !important;
    right: 1vw;
    width: 13vw;
    height: 13vw;
  }
  .modal-termsKaitei .inline-wrap-inner {
    border-radius: 5.3333333333vw;
  }
  .modal-termsKaitei .inline-wrap-inner-content {
    padding: 9.3333333333vw 5.3333333333vw;
  }
  .modal-termsKaitei .termsKaitei_title {
    margin-bottom: 8vw;
    font-size: 4.8vw;
  }
  .modal-termsKaitei .termsKaitei_item + .termsKaitei_item {
    margin-top: 6.4vw;
  }
  .modal-termsKaitei .termsKaitei_item dt {
    font-size: 3.7333333333vw;
  }
  .modal-termsKaitei .termsKaitei_item dd {
    font-size: 3.2vw;
  }
}

/*--------------------------------------------------------------
# 国の節電プログラムによる追加特典の条件
-------------------------------------------------------------- */
.privilege {
		/*--最新の節電チャレンジ実施状況-- */
		/*table*/
		/*accordion*/
}

.privilege h1.privilege-title {
		position: relative;
		display: inline-block;
		margin-bottom: 1em;
		color: #333;
		font-size: 132%;
		padding-bottom: 0px;
}

.privilege h1.privilege-title:before {
		content: '';
		position: absolute;
		bottom: -15px;
		display: inline-block;
		width: 84px;
		height: 4px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		    transform: translateX(-50%);
		background-color: #D42233;
}

@media (max-width: 768px) {
		.privilege h1.privilege-title {
				font-size: 150%;
				padding-bottom: 12px;
		}
}

.privilege div.privilege {
		background: #fff;
		border-radius: 20px;
		padding: 40px 40px 40px;
		margin-top: -20px;
		text-align: center;
}

.privilege div.privilege-box {
		background: #F2F2F2;
		border-radius: 15px;
		padding: 20px 20px 1px;
		clear: both;
}

.privilege div.privilege-box div.privilege-con {
		background: #FFF;
		border-radius: 10px;
		padding: 40px;
		margin-bottom: 20px;
}

@media (max-width: 768px) {
		.privilege div.privilege {
				border-radius: 10px;
				padding: 30px 10px;
				margin-top: -10px;
		}
		.privilege div.privilege-box {
				border-radius: 10px;
				padding: 15px 15px 1px;
		}
		.privilege div.privilege-box div.privilege-con {
				padding: 15px;
				margin-bottom: 15px;
		}
}

.privilege div.privilege-box div.privilege-con h1 {
		font-size: 13px;
		color: #333;
		font-weight: bold;
		margin-bottom: 10px;
}

.privilege div.privilege-box div.privilege-con h1 span.red {
		color: #D42233;
}

.privilege div.privilege-box div.privilege-con h1 span.circle-number {
		width: 24px;
		height: 24px;
		padding: 1px 0 0 3px;
		margin-left: 5px;
		background-color: #D42233;
		border-radius: 50%;
		text-align: center;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		color: #fff;
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
}

.privilege div.privilege-box div.privilege-con h2 {
		font-size: 24px;
		color: #333;
		font-weight: bold;
}

.privilege div.privilege-box div.privilege-con p {
		font-size: 13px;
		margin-top: 20px;
}

.privilege div.privilege-box div.privilege-con p.sub {
		font-size: 12px;
		margin-top: 20px;
}

.privilege div.privilege-box div.privilege-con ul {
		font-size: 13px;
		color: #333;
		margin: 10px 22% 0;
}

.privilege div.privilege-box div.privilege-con ul li {
		padding-top: 10px;
		text-align: left;
}

.privilege div.privilege-box div.privilege-con ul li span {
		font-weight: bold;
}

.privilege div.privilege-box div.privilege-con ul.disc {
		font-size: 13px;
		color: #333;
		margin: 10px 15% 0;
		list-style-type: disc;
}

.privilege div.privilege-box div.privilege-con ul.disc li span {
		font-weight: bold;
}

@media (max-width: 768px) {
		.privilege div.privilege-box div.privilege-con p {
				margin-top: 10px;
		}
		.privilege div.privilege-box div.privilege-con ul {
				margin: 10px 5% 0;
		}
		.privilege div.privilege-box div.privilege-con ul li {
				padding-top: 5px;
		}
		.privilege div.privilege-box div.privilege-con ul.disc {
				margin: 10px 0 0 15px;
		}
}

.privilege div.pri-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		-moz-box-pack: justify;
		justify-content: space-between;
		margin-bottom: 20px;
		padding-top: 30px;
}

@media (max-width: 768px) {
		.privilege div.pri-link {
				-ms-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				flex-wrap: wrap;
				margin-bottom: 20px;
				padding-top: 10px;
		}
}

.privilege div.pri-link dl {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		width: 450px;
		max-width: 47%;
		margin: 20px auto 0;
}

@media (max-width: 768px) {
		.privilege div.pri-link dl {
				max-width: 100%;
				margin: 20px auto 0;
		}
}

.privilege div.pri-link dl dt h1 {
		font-size: 18px;
		color: #333;
		font-weight: bold;
		margin-bottom: 10px;
}

.privilege div.pri-link dl dt h1 span.red {
		color: #D42233;
}

.privilege div.pri-link dl dt h1 span.circle-number {
		width: 28px;
		height: 28px;
		padding: 1px 0 0 3px;
		margin-left: 5px;
		background-color: #D42233;
		border-radius: 50%;
		text-align: center;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		color: #fff;
		display: inline-block;
		font-size: 18px;
		font-weight: bold;
}

.privilege div.pri-link dl dt p {
		font-size: 100%;
		color: #333;
		font-weight: bold;
		padding-bottom: 20px;
		border-bottom: 1px solid #ddd;
		margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
		.privilege div.pri-link dl dt h1 {
				font-size: 14px;
				margin-bottom: 5px;
		}
		.privilege div.pri-link dl dt h1 span.circle-number {
				width: 24px;
				height: 24px;
				font-size: 14px;
		}
		.privilege div.pri-link dl dt p {
				padding-bottom: 10px;
				margin-bottom: 20px;
		}
}

@media screen and (max-width: 768px) and (max-width: 480px) {
		.privilege div.pri-link dl dt p {
				font-size: 130%;
		}
}

.privilege div.pri-link dl dd {
		padding: 0;
		width: 88%;
}

@media screen and (max-width: 768px) {
		.privilege div.pri-link dl dd {
				width: 84%;
				margin: 0;
		}
}

.privilege a.btn-priv {
		width: 100%;
		padding: 1em 2em;
		margin: 15px 0;
		color: #fff !important;
		background: #D42233;
		text-decoration: none;
		font-weight: bold;
		font-size: 14px;
		border-radius: 5px;
		text-align: center;
		display: inline-block;
}

.privilege a.btn-priv:after {
		content: "";
		display: inline-block;
		width: 28px;
		height: 28px;
		margin: 0 0 0 5px;
		background: url("../images/ico_pri_btn.png") no-repeat;
		background-size: contain;
		vertical-align: middle;
}

.privilege a.btn-priv:hover {
		background: #E2717C;
}

@media screen and (max-width: 768px) {
		.privilege a.btn-priv {
				margin: 10px auto;
				font-size: 14px;
				display: block;
		}
		.privilege a.btn_priv:before {
				margin: -3px 0 0 10px;
		}
		.privilege a.btn_priv:after {
				width: 24px;
				height: 24px;
		}
}

.privilege p.update {
		text-align: right;
		color: #707070;
		font-size: 14px;
}

.privilege div.pri-line {
		height: 1px;
		width: 100%;
		background-color: #FFF;
		clear: both;
}

.privilege div.pri-box {
		background: #fff;
		border-radius: 20px;
		padding: 40px 0px 40px;
}

.privilege div.pri-box dl.pri-title {
		border-left: solid 8px #D42233;
		padding-left: 60px;
		margin-bottom: 40px;
		height: 68px;
		line-height: 0.8em;
}

.privilege div.pri-box dl.pri-title dt {
		font-size: 18px;
		color: #333;
		font-weight: bold;
		padding-bottom: 15px;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}

@media (max-width: 768px) {
		.privilege div.pri-box dl.pri-title dt {
				-webkit-flex-wrap: wrap;
				    -ms-flex-wrap: wrap;
				        flex-wrap: wrap;
		}
}

.privilege div.pri-box dl.pri-title dt .pri-title-number {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-right: 20px;
}

@media (max-width: 768px) {
		.privilege div.pri-box dl.pri-title dt .pri-title-number {
				width: 100%;
				margin-right: 0;
		}
}

.privilege div.pri-box dl.pri-title dt span.red {
		color: #D42233;
}

.privilege div.pri-box dl.pri-title dt span.circle-number {
		width: 28px;
		height: 28px;
		padding: 2px 0 0 2px;
		margin-left: 5px;
		background-color: #D42233;
		border-radius: 50%;
		text-align: center;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		color: #fff;
		display: inline-block;
		font-size: 18px;
		font-weight: bold;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}

.privilege div.pri-box dl.pri-title dd {
		font-size: 32px;
		color: #333;
		font-weight: bold;
}

.privilege div.pri-box div.privilege-box {
		margin: 0 40px;
}

@media screen and (max-width: 768px) {
		.privilege div.pri-box {
				border-radius: 10px;
				padding: 30px 0px;
		}
		.privilege div.pri-box dl.pri-title {
				border-left: solid 4px #D42233;
				padding-left: 20px;
				margin-bottom: 15px;
				height: auto;
				line-height: 1.2em;
		}
		.privilege div.pri-box dl.pri-title dt {
				font-size: 14px;
				padding-bottom: 10px;
		}
		.privilege div.pri-box dl.pri-title dt span.circle-number {
				width: 24px;
				height: 24px;
				padding: 2px 0 0 2px;
				margin-left: 5px;
				font-size: 14px;
		}
		.privilege div.pri-box dl.pri-title dd {
				font-size: 28px;
				line-height: 36px;
		}
		.privilege div.pri-box div.privilege-box {
				margin: 0 10px;
		}
}

.privilege dl.pri-area {
		clear: both;
		margin-bottom: 20px;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
}

.privilege dl.pri-area dt {
		font-size: 24px;
		color: #D42233;
		font-weight: bold;
		display: inline-block;
		width: 150px;
}

.privilege dl.pri-area dd {
		font-size: 14px;
		width: calc(100% - 150px);
		max-width: 720px;
		display: inline-block;
}

.privilege dl.areaL dt {
		width: 170px;
}

.privilege dl.areaL dd {
		width: calc(100% - 170px);
		max-width: 700px;
}

@media screen and (max-width: 768px) {
		.privilege dl.pri-area dt {
				font-size: 20px;
				clear: both;
				width: 100%;
		}
		.privilege dl.pri-area dd {
				clear: both;
				width: 100%;
		}
		.privilege dl.areaL dt,
		.privilege dl.areaL dd {
				width: 100%;
		}
}

.privilege div.privilege-box div.privilege-con table {
		width: 100%;
		border: 1px solid #DDD;
		font-size: 14px;
		font-weight: normal;
		margin: 10px 0 20px;
}

@media screen and (max-width: 768px) {
		.privilege div.privilege-box div.privilege-con table {
				font-size: 10px;
				margin-bottom: 10px;
		}
}

.privilege div.privilege-box div.privilege-con table.month {
		margin: 0px;
}

.privilege div.privilege-box div.privilege-con table th, .privilege td {
		padding: 1vw;
}

.privilege div.privilege-box div.privilege-con table th {
		background: #333;
		color: #FFF;
		border: 1px solid #FFF;
		padding: 0.5vw 1vw;
		font-weight: normal;
}

.privilege div.privilege-box div.privilege-con table th.pri-month {
		width: 15%;
}

.privilege div.privilege-box div.privilege-con table th.pri1 {
		background: #4D4D4D;
		width: 28%;
		padding: 1vw;
}

.privilege div.privilege-box div.privilege-con table th.pri2 {
		background: #4D4D4D;
		width: 35%;
		padding: 1vw;
}

.privilege div.privilege-box div.privilege-con table td {
		border: 1px solid #DDD;
		color: #666;
		padding: 1vw;
}

.privilege div.privilege-box div.privilege-con table td.point {
		color: #333;
}

.privilege .toggle {
		display: none;
}

.privilege .Label {
		padding: 1em 0;
		display: block;
		color: #707070;
		border-bottom: 1px solid #DDD;
		font-size: 14px;
		margin: 0;
		padding-top: 15px;
		cursor: pointer;
}

.privilege .Label span {
		font-size: 18px;
		font-weight: bold;
		color: #333;
		padding-left: 5px;
}

.privilege .Label::before {
		content: "開く";
		position: absolute;
		right: 0px;
		background-image: url(../images/ico_pri_open.png);
		background-size: 24px;
		background-position: right center;
		background-repeat: no-repeat;
		padding-right: 30px;
}

.privilege .Label,
.privilege .content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transform: translateZ(0);
		        transform: translateZ(0);
		-webkit-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
}

.privilege .content {
		height: 0;
		padding: 0;
		overflow: hidden;
}

.privilege .content.open {
		overflow: inherit;
}

.privilege .toggle:checked + .Label + .content {
		height: auto;
		padding: 0;
		-webkit-transition: all .5s;
		-o-transition: all .5s;
		transition: all .5s;
}

.privilege .toggle:checked + .Label::before {
		content: "閉じる";
		background-image: url(../images/ico_pri_close.png);
}

/*--------------------------------------------------------------
# echocute.html、ecosystem.html 
-------------------------------------------------------------- */
.saving-wrapper.ecocute {
  padding-top: 0;
  padding-bottom: 100px;
  background: #DDF2D7;
  color: #5E6F82;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute {
    padding-bottom: 0;
  }
}
.saving-wrapper.ecocute * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.saving-wrapper.ecocute > div {
  margin-bottom: 0;
}
.saving-wrapper.ecocute .inline-block {
  display: inline-block;
}
.saving-wrapper.ecocute .fw-bold {
  font-weight: 700;
}
.saving-wrapper.ecocute .fw-medium {
  font-weight: 500;
}
.saving-wrapper.ecocute .list-check li {
  position: relative;
  padding-left: 1.4em;
}
.saving-wrapper.ecocute .list-check li::before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  width: 1em;
  height: 1em;
  background: url(../images/ico_circlecheck_green.png) no-repeat center;
  background-size: contain;
}
.saving-wrapper.ecocute .list-check li + li {
  margin-top: 0.4em;
}
.saving-wrapper.ecocute .has-hr {
  padding-bottom: 32px;
  background-image: url(../images/hr_hirushiftchallenge.png);
  background-repeat: repeat-x;
  background-size: 10px auto;
  background-position: left bottom;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .has-hr {
    padding-bottom: 8.5333333333vw;
    background-size: 2.6666666667vw auto;
  }
}
.saving-wrapper.ecocute .header {
  max-width: none;
  padding: 48px 15px 5px;
  margin-left: -15px;
  margin-right: -15px;
  background: #CEECC6;
}
.saving-wrapper.ecocute .header h1 {
  max-width: 918px;
  margin: 0 auto;
}
.saving-wrapper.ecocute .header h1 img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .header {
    padding: 5.3333333333vw 0 0;
    margin: 0;
  }
}
.saving-wrapper.ecocute .lead {
  text-align: center;
  padding-top: 40px;
  padding-bottom: 42px;
}
.saving-wrapper.ecocute .lead p {
  margin-bottom: 1.5em;
  color: #029883;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .lead {
    padding-top: 10.6666666667vw;
    padding-bottom: 9.6vw;
  }
  .saving-wrapper.ecocute .lead p {
    font-size: 3.6vw;
  }
  .saving-wrapper.ecocute .lead p .inline-block {
    display: inline;
  }
}
.saving-wrapper.ecocute .application {
  padding-top: 40px;
}
.saving-wrapper.ecocute .application.-a1 {
	padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application {
    padding-top: 10.6666666667vw;
  }
}
.saving-wrapper.ecocute .application-a2wrap {
  margin-top: 40px;
  background-image: url(../images/hr_hirushiftchallenge.png);
  background-repeat: repeat-x;
  background-size: 10px auto;
  background-position: left top;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-a2wrap {
    margin-top: 10.6666666667vw;
    background-size: 2.6666666667vw auto;
  }
}
.saving-wrapper.ecocute .application-title {
  text-align: center;
  padding-bottom: 20px;
  color: #029883;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-title {
    padding-bottom: 5.3333333333vw;
    font-size: 4.6666666667vw;
    letter-spacing: 0;
  }
}
.saving-wrapper.ecocute .application-end {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 10px;
	color: #8c8c8c;
  font-weight: 700;
}
.saving-wrapper.ecocute .application-end::before, 
.saving-wrapper.ecocute .application-end::after {
  content: "";
  display: block;
  width: 4px;
  height: 25px;
  margin: 0 12px;
  background: #8c8c8c;
  border-radius: 99px;
}
.saving-wrapper.ecocute .application-end::before {
  -webkit-transform: rotate(-20deg);
          transform: rotate(-20deg);
}
.saving-wrapper.ecocute .application-end::after {
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-end {
    padding-bottom: 2.5vw;
    font-size: 5vw;
  }
  .saving-wrapper.ecocute .application-end::before, 
	.saving-wrapper.ecocute .application-end::after {
    width: 1vw;
    height: 5.5vw;
    margin: 0 3vw;
  }
}
.saving-wrapper.ecocute .application-link {
  text-align: center;
  padding-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-link {
    padding-bottom: 3.2vw;
  }
}
.saving-wrapper.ecocute .application-link a {
	pointer-events: none;
}
.saving-wrapper.ecocute .application-notes {
  text-align: center;
  padding-bottom: 40px;
  font-size: 0.5833333333em;
}
@media screen and (max-width: 768px) {
	.saving-wrapper.ecocute .application-link a img {
		width: 90%;
	}
  .saving-wrapper.ecocute .application-notes {
    padding-bottom: 5.3333333333vw;
    font-size: 3.2vw;
    letter-spacing: 0;
  }
}
.saving-wrapper.ecocute .application-rules {
  text-align: center;
  color: #029883;
  font-size: 0.6666666667em;
	padding-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-rules {
    font-size: 3.7333333333vw;
    letter-spacing: 0;
  }
}
.saving-wrapper.ecocute .application-rules a {
  color: #029883;
  text-decoration: underline;
}
.saving-wrapper.ecocute .application-terms {
  max-width: 760px;
  padding: 20px;
  margin: 40px auto 0;
  background: #C7E9CE;
  border: solid 2px #029883;
  border-radius: 8px;
  font-size: 0.8333333333em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-terms {
    padding: 5.3333333333vw;
    margin-top: 5.3333333333vw;
    border-radius: 2.1333333333vw;
  }
}
.saving-wrapper.ecocute .application-terms dt {
  text-align: center;
  padding-bottom: 20px;
  border-bottom: solid 2px #78C9B0;
  color: #029883;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-terms dt {
    padding-bottom: 5.3333333333vw;
    font-size: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .application-terms dd {
  padding-top: 20px;
}
.saving-wrapper.ecocute .application-terms dd ul {
  padding-top: 20px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .application-terms dd {
    text-align: center;
    padding-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
  .saving-wrapper.ecocute .application-terms dd ul {
    text-align: left;
  }
}
.saving-wrapper.ecocute .timechange {
  text-align: center;
  padding: 40px 0 70px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .timechange {
    padding: 10.6666666667vw 0;
  }
}
.saving-wrapper.ecocute .important {
  max-width: 100%;
  padding: 40px;
  margin: 0 5px;
  background: #FDFFAB;
  border: solid 2px #E62320;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .important {
    padding: 5.3333333333vw;
    margin: 0 5.3vw;
    border-radius: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .important-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  padding-bottom: 20px;
  color: #E62320;
  font-size: 1.6666666667em;
}
.saving-wrapper.ecocute .important-title span {
  display: inline-block;
  width: 36px;
  height: 36px;
  text-align: center;
  background: #E62320;
  border-radius: 50%;
  color: #fff;
  font-size: 0.6em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .important-title {
    gap: 3.2vw;
    padding-bottom: 5.3333333333vw;
    font-size: 6.4vw;
  }
  .saving-wrapper.ecocute .important-title span {
    width: 6.4vw;
    height: 6.4vw;
    font-size: 0.7em;
  }
}
.saving-wrapper.ecocute .important-list {
  max-width: 1080px;
  padding-bottom: 20px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .important-list {
    padding-bottom: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .important-others {
  max-width: 1080px;
  padding: 20px 20px 20px 40px;
  margin: 0 auto;
  border: solid 2px #E62320;
  border-radius: 8px;
}
.saving-wrapper.ecocute .important-others dt {
  text-align: center;
  padding: 0 20px 20px 0;
  color: #E62320;
  font-size: 0.8333333333em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .important-others {
    padding: 2.6666666667vw;
    border-radius: 2.1333333333vw;
  }
  .saving-wrapper.ecocute .important-others dt {
    padding: 0 0 3.2vw;
    font-size: 4.8vw;
  }
}
.saving-wrapper.ecocute .important ul li {
  position: relative;
  padding-left: 1.35em;
  font-size: 0.8333333333em;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .important ul li {
    font-size: 3.7333333333vw;
  }
}
.saving-wrapper.ecocute .important ul li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 0;
  display: block;
  width: 0.6em;
  height: 0.6em;
  background: #E62320;
  border-radius: 50%;
}
.saving-wrapper.ecocute .important ul li + li {
  margin-top: 0.25em;
}
.saving-wrapper.ecocute .challenge {
  padding-top: 80px;
  padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge {
    padding-top: 16vw;
    padding-bottom: 10.6666666667vw;
  }
}
.saving-wrapper.ecocute .challenge-inner {
  padding: 60px 40px;
  background: #fff;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-inner {
    padding: 10.6666666667vw 5.3333333333vw;
    border-radius: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-header {
  text-align: center;
  padding-bottom: 40px;
}
.saving-wrapper.ecocute .challenge-header .title {
  padding-bottom: 20px;
  color: #029883;
  font-size: 1.6666666667em;
  line-height: 1.4;
}
.saving-wrapper.ecocute .challenge-header .period {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.saving-wrapper.ecocute .challenge-header .period dt {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 0 20px;
  background: #FBAF41;
  border-radius: 999px;
  color: #fff;
  font-size: 0.6666666667em;
  line-height: 38px;
}
.saving-wrapper.ecocute .challenge-header .period dd {
  color: #FBAF41;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-header {
    padding-bottom: 8.5333333333vw;
  }
  .saving-wrapper.ecocute .challenge-header .title {
    padding-bottom: 5.3333333333vw;
    font-size: 6.4vw;
  }
  .saving-wrapper.ecocute .challenge-header .period {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.2vw;
  }
  .saving-wrapper.ecocute .challenge-header .period dt {
    padding: 0 5.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 7.2vw;
  }
  .saving-wrapper.ecocute .challenge-header .period dd {
    font-size: 4.8vw;
  }
}
.saving-wrapper.ecocute .challenge-present {
  position: relative;
  padding-bottom: 40px;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-present {
    padding-bottom: 5.3333333333vw;
    margin-top: 8.5333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-present .title {
  width: 49.2%;
  padding-bottom: 16px;
  color: #029883;
}
.saving-wrapper.ecocute .challenge-present .title em {
  color: #FBAF41;
}
.saving-wrapper.ecocute .challenge-present .title sup {
  font-weight: 400;
  font-size: 60%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-present .title {
    width: 100%;
    padding-bottom: 4.2666666667vw;
    font-size: 4.8vw;
  }
}
.saving-wrapper.ecocute .challenge-present .image {
  position: absolute;
  top: 0;
  right: 0;
  width: 46.8%;
  margin: 0;
  border: solid 1px #EFEFEF;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-present .image {
    position: inherit;
    width: 100%;
  }
}
.saving-wrapper.ecocute .challenge-present .notes-large {
  width: 49.2%;
  padding-bottom: 16px;
}
.saving-wrapper.ecocute .challenge-present .notes-large li {
  position: relative;
  padding-left: 1.35em;
  font-size: 0.6666666667em;
}
.saving-wrapper.ecocute .challenge-present .notes-large li + li {
  margin-top: 6px;
}
.saving-wrapper.ecocute .challenge-present .notes-large li span {
  position: absolute;
  top: 0;
  left: 0;
  color: #029883;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-present .notes-large {
    width: 100%;
    padding-bottom: 4.2666666667vw;
  }
  .saving-wrapper.ecocute .challenge-present .notes-large li {
    font-size: 3.2vw;
  }
  .saving-wrapper.ecocute .challenge-present .notes-large li + li {
    margin-top: 1.3333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-present .notes li {
  opacity: 0.8;
  font-size: 0.6666666667em;
}
.saving-wrapper.ecocute .challenge-present .notes li + li {
  margin-top: 2px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-present .notes {
    padding-top: 2.6666666667vw;
  }
  .saving-wrapper.ecocute .challenge-present .notes li {
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .challenge-box {
  padding: 40px;
  margin-bottom: 8px;
  background: #F0F7F9;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-box {
    padding: 4.2666666667vw;
    margin-bottom: 1.6vw;
    border-radius: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-point + .challenge-point {
  padding-top: 32px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point + .challenge-point {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point.has-hr {
    padding-bottom: 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-point .title {
  text-align: center;
  padding: 5px 12px;
  background: #FBAF41;
  border-radius: 999px;
  color: #fff;
  font-size: 0.8333333333em;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .title {
    padding: 2.1333333333vw 3.2vw 1.6vw;
    border-radius: 2.1333333333vw;
    font-size: 4.8vw;
  }
}
.saving-wrapper.ecocute .challenge-point .lead-large {
  padding: 16px 0;
  font-size: 0.8333333333em;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .lead-large {
    padding: 4.2666666667vw 0;
    font-size: 3.7333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-point .lead {
  padding: 16px 0 10px;
  font-size: 0.8333333333em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .lead {
    padding: 4.2666666667vw 0 3.2vw;
    font-size: 3.7333333333vw;
  }
  .saving-wrapper.ecocute .challenge-point .lead.sp-left {
    text-align: left;
  }
}
.saving-wrapper.ecocute .challenge-point .image {
  padding-bottom: 8px;
  margin: 0;
}
.saving-wrapper.ecocute .challenge-point .image img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .image {
    padding-bottom: 2.6666666667vw;
  }
}
.saving-wrapper.ecocute .challenge-point .list-check li {
  font-size: 0.8333333333em;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .list-check li {
    font-size: 3.7333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-point .notes li {
  font-size: 0.6666666667em;
  letter-spacing: 0;
}
.saving-wrapper.ecocute .challenge-point .notes li + li {
  margin-top: 6px;
}
.saving-wrapper.ecocute .challenge-point .notes li a {
  color: inherit;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .notes li {
    font-size: 3.2vw;
  }
  .saving-wrapper.ecocute .challenge-point .notes li + li {
    margin-top: 1.6vw;
  }
}
.saving-wrapper.ecocute .challenge-point .notes-text {
  padding-top: 10px;
  opacity: 0.8;
  font-size: 0.6666666667em;
  letter-spacing: 0;
}
.saving-wrapper.ecocute .challenge-point .notes-text a {
  text-decoration: underline;
  color: #5E6F82;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-point .notes-text {
    padding-top: 2.6666666667vw;
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .challenge-flow {
  padding-top: 40px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-flow {
    padding-top: 8.5333333333vw;
  }
}
.saving-wrapper.ecocute .challenge-flow > .title {
  text-align: center;
  padding-bottom: 20px;
  color: #029883;
  font-size: 1.6666666667em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-flow > .title {
    padding-bottom: 5.3333333333vw;
    font-size: 6.4vw;
  }
}
.saving-wrapper.ecocute .challenge-flow > .image {
  padding-bottom: 8px;
  margin: 0;
}
.saving-wrapper.ecocute .challenge-flow > .image img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-flow > .image {
    padding-bottom: 2.6666666667vw;
  }
}
.saving-wrapper.ecocute .challenge-flow > .flow-notes {
  text-align: center;
  padding-bottom: 40px;
  font-size: 0.6666666667em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge-flow > .flow-notes {
    padding-bottom: 5.3333333333vw;
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable {
  padding: 10px;
  margin-bottom: 8px;
  background: #CCDEE3;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable {
    padding: 0;
    margin-bottom: 3.2vw;
    background: transparent;
  }
}
.saving-wrapper.ecocute .challenge .changetable-inner {
  padding: 16px;
  background: #fff;
  border-radius: 8px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable-inner {
    padding: 3.2vw 2.6666666667vw 5.3333333333vw;
    border-radius: 2.1333333333vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 2px 8px;
  margin-bottom: 20px;
  border-bottom: solid 1px #DEE2E5;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable-head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.0666666667vw;
    padding-bottom: 1.6vw;
    margin-bottom: 2.6666666667vw;
    border-bottom-width: 0.2666666667vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable-head .head-title {
  font-size: 0.8333333333em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable-head .head-title {
    font-size: 3.7333333333vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable-head .head-notes {
  color: #029883;
  font-size: 0.5833333333em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable-head .head-notes {
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table {
  width: 100%;
  table-layout: fixed;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table + table {
    margin-top: 2.6666666667vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table th, .saving-wrapper.ecocute .challenge .changetable table td {
  border: solid 2px #fff;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table th, .saving-wrapper.ecocute .challenge .changetable table td {
    border: none;
  }
}
.saving-wrapper.ecocute .challenge .changetable table thead th {
  padding: 10px;
  background: #5E6F82;
  color: #fff;
  font-size: 0.75em;
  line-height: 1.25;
}
.saving-wrapper.ecocute .challenge .changetable table thead th:first-child {
  width: 31.16%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table thead th:first-child {
    width: 100%;
  }
}
.saving-wrapper.ecocute .challenge .changetable table thead th:nth-child(n+2) {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table thead th {
    text-align: center;
    padding: 2.6666666667vw;
    background: #CCEAE6;
    border-radius: 1.6vw 1.6vw 0 0;
    color: #5E6F82;
    font-size: 3.4666666667vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table tbody th, .saving-wrapper.ecocute .challenge .changetable table tbody td {
  border-top: solid 2px #fff;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table tbody th, .saving-wrapper.ecocute .challenge .changetable table tbody td {
    border-top-width: 0.5333333333vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table tbody th {
  padding: 10px 20px;
  background: #CCEAE6;
  font-size: 0.8333333333em;
  line-height: 1.3;
}
.saving-wrapper.ecocute .challenge .changetable table tbody th sup {
  font-size: 60%;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table tbody th {
    text-align: center;
    padding: 2.6666666667vw;
    background: #5E6F82;
    color: #fff;
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table tbody td {
  position: relative;
  text-align: center;
  padding: 20px;
  background: #F0F7F9;
  font-size: 0.8333333333em;
  font-weight: 700;
}
.saving-wrapper.ecocute .challenge .changetable table tbody td:last-child {
  color: #029883;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table tbody td {
    padding: 3.2vw 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
  .saving-wrapper.ecocute .challenge .changetable table tbody td:first-child {
    border-bottom-left-radius: 2.1333333333vw;
  }
  .saving-wrapper.ecocute .challenge .changetable table tbody td:last-child {
    border-bottom-right-radius: 2.1333333333vw;
  }
}
.saving-wrapper.ecocute .challenge .changetable table tbody td img {
  position: absolute;
  z-index: 2;
  left: 100%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-8px);
          transform: translateX(-50%) translateY(-8px);
  width: 46px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .challenge .changetable table tbody td img {
    width: 5.3333333333vw;
    -webkit-transform: translateX(-50%) translateY(-1.3333333333vw);
            transform: translateX(-50%) translateY(-1.3333333333vw);
  }
}
.saving-wrapper.ecocute .campaign {
  padding-top: 40px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .campaign {
    padding-top: 10.6666666667vw;
  }
}
.saving-wrapper.ecocute .campaign .has-hr {
  padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .campaign .has-hr {
    padding-bottom: 10.6666666667vw;
  }
}
.saving-wrapper.ecocute .campaign_lead {
  padding-bottom: 40px;
  color: #029883;
  font-size: 0.7916666667em;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .campaign_lead {
    padding-bottom: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
.saving-wrapper.ecocute .campaign_lead.-s {
  padding-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .campaign_lead.-s {
    padding-bottom: 1.3333333333vw;
  }
}
.saving-wrapper.ecocute .campaign_banner {
  display: block;
}
.saving-wrapper.ecocute .campaign_banner img {
  width: 100%;
}
.saving-wrapper.ecocute .howto {
  padding-bottom: 80px;
  margin-top: 116px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .howto {
    padding-bottom: 16vw;
    margin-top: 30.9333333333vw;
  }
}
.saving-wrapper.ecocute .howto-header {
  position: relative;
  padding: 30px 40px;
  background: #02B9A4;
  border-radius: 20px 20px 0 0;
}
.saving-wrapper.ecocute .howto-header .title {
  color: #fff;
  font-size: 1.6666666667em;
}
.saving-wrapper.ecocute .howto-header .image {
  position: absolute;
  right: 50px;
  bottom: 12px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .howto-header {
    padding: 12vw 4vw 3.7333333333vw;
    border-radius: 5.3333333333vw 5.3333333333vw 0 0;
  }
  .saving-wrapper.ecocute .howto-header .title {
    text-align: center;
    font-size: 6.4vw;
    line-height: 1.25;
  }
  .saving-wrapper.ecocute .howto-header .image {
    width: 23.2vw;
    top: -20.5333333333vw;
    left: 0;
    right: 0;
    bottom: initial;
    margin: auto;
  }
}
.saving-wrapper.ecocute .howto-content {
  padding: 0 40px 40px;
  background: #fff;
  border-radius: 0 0 20px 20px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .howto-content {
    padding: 0 5.3333333333vw 8.5333333333vw;
    border-radius: 0 0 5.3333333333vw 5.3333333333vw;
  }
}
.saving-wrapper.ecocute .howto-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  padding-top: 32px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .howto-row {
    display: block;
    padding-top: 8.5333333333vw;
  }
}
.saving-wrapper.ecocute .howto-row-col:first-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.saving-wrapper.ecocute .howto-row-col:last-child {
  width: 46.8%;
}
.saving-wrapper.ecocute .howto-row-col .title {
  color: #029883;
}
.saving-wrapper.ecocute .howto-row-col .lead {
  text-align: left;
  padding: 10px 0 0;
  font-size: 0.6666666667em;
}
.saving-wrapper.ecocute .howto-row-col .lead.fc-green {
  color: #029883;
}
.saving-wrapper.ecocute .howto-row-col .image {
  margin: 0;
}
.saving-wrapper.ecocute .howto-row-col .image img {
  width: 100%;
}
.saving-wrapper.ecocute .howto-row-col .notes {
  padding-top: 20px;
  color: #7F7F7F;
  font-size: 0.5833333333em;
}
.saving-wrapper.ecocute .howto-row-col .link {
  padding-top: 8px;
  font-size: 0.5833333333em;
}
.saving-wrapper.ecocute .howto-row-col .link a {
  color: #029883;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .howto-row-col:last-child {
    width: 100%;
  }
  .saving-wrapper.ecocute .howto-row-col .title {
    font-size: 4.8vw;
  }
  .saving-wrapper.ecocute .howto-row-col .lead {
    padding-top: 1.6vw;
    font-size: 3.2vw;
    letter-spacing: 0;
  }
  .saving-wrapper.ecocute .howto-row-col .lead.fw-medium {
    font-size: 3.7333333333vw;
  }
  .saving-wrapper.ecocute .howto-row-col .image {
    padding-top: 4.2666666667vw;
  }
  .saving-wrapper.ecocute .howto-row-col .notes {
    padding-top: 2.6666666667vw;
    font-size: 3.2vw;
  }
  .saving-wrapper.ecocute .howto-row-col .link {
    padding-top: 2.1333333333vw;
    font-size: 3.2vw;
  }
}
.saving-wrapper.ecocute .faqWrap {
  max-width: none;
  padding: 80px 15px;
  margin-left: -15px;
  margin-right: -15px;
  background: #CEECC6;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .faqWrap {
    padding: 10.6666666667vw 5.3vw 14.6666666667vw;
    margin: 0;
  }
}
.saving-wrapper.ecocute .faqWrap .faq {
  max-width: 1080px;
  margin: 0 auto;
}
.saving-wrapper.ecocute .faqWrap .inner .faqtab {
  display: block;
}
.saving-wrapper.ecocute .faqWrap .inner .faqtab li {
  width: 100%;
  padding: 16px 14px 12px;
  background: #fff;
  color: #029883;
  font-size: 0.8333333333em;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .faqWrap .inner .faqtab li {
    padding: 3.7333333333vw 1.3333333333vw 3.2vw;
    font-size: 4.2666666667vw;
    letter-spacing: 0;
  }
}
.saving-wrapper.ecocute .faqWrap .inner .faqlist dl {
  color: #666;
}
.saving-wrapper.ecocute .faqWrap .inner .faqlist dl dt {
  font-weight: 500;
  font-size: 0.8333333333em;
}
.saving-wrapper.ecocute .faqWrap .inner .faqlist dl dd p {
  font-family: inherit;
  font-weight: 500;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  .saving-wrapper.ecocute .faqWrap .inner .faqlist dl dt {
    font-size: 4.2666666667vw;
  }
  .saving-wrapper.ecocute .faqWrap .inner .faqlist dl dt:after {
    font-size: 5.3333333333vw;
  }
  .saving-wrapper.ecocute .faqWrap .inner .faqlist dl dd .anser {
    font-size: 3.7333333333vw;
  }
  .saving-wrapper.ecocute .faqWrap .inner .faqlist dl dd p {
    font-size: 3.7333333333vw;
  }
}

.saving-wrapper .c-lplink {
  text-align: center;
}
.saving-wrapper .c-lplink > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 402px;
  height: 54px;
  background: #fff;
  border: solid 2px #029883;
  border-radius: 9999px;
  -webkit-box-shadow: 0 4px 0 #029883;
          box-shadow: 0 4px 0 #029883;
  color: #029883;
  font-size: 0.6666666667em;
	font-weight: 700;
  letter-spacing: 0.02em;
}
.saving-wrapper .c-lplink > a:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
}
.saving-wrapper .c-lplink > a img {
  margin-left: 16px;
}
@media screen and (max-width: 768px) {
  .saving-wrapper .c-lplink > a {
    width: 100%;
    height: 13.6vw;
    border-width: 0.5333333333vw;
    -webkit-box-shadow: 0 0.5333333333vw 0 #029883;
            box-shadow: 0 0.5333333333vw 0 #029883;
    font-size: 3.2vw;
		letter-spacing: 0;
  }
  .saving-wrapper .c-lplink > a span {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
		padding-left: 1vw;
  }
  .saving-wrapper .c-lplink > a img {
    width: 1.6vw;
    margin-left: auto;
    margin-right: 2.4vw;
  }
}