@charset "UTF-8";


/* ---------------------------------------------------------------- *
でんきはじめました
* ---------------------------------------------------------------- */
/*.denki {
background-image: url(../parts/cv_htx.png);
background-repeat: repeat-x;
background-position: center top;
}*/

.denki h1 {
margin-bottom: 20px;
}
.denki p.note20230401 {
	border: 2px solid #E61D24;
	padding: 30px;
	border-radius: 15px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	font-size: 16px;
}
.denki p.note20230401 span {
	color: #E61D24;
}
.denki .Box01{
padding-top: 0px;
}
@media screen and (max-width: 834px) {
.denki .Box01{
padding-top: 0%;
}
.denki p.note20230401 {
	padding: 20px;
	border-radius: 15px;
	width: 80%;
	margin-bottom: 40px;
font-size: 3.6vw;
}
}

/* ---------------------------------------------------------------- *
セット割りサービス
* ---------------------------------------------------------------- */
.d_merit {
_zoom: 1;
overflow: hidden;
clear: both;
margin-right: auto;
margin-bottom: 40px;
margin-left: auto;
padding-top: 0px;
padding-right: 0px;
padding-left: 0px;
}
.d_merit h2{
margin-bottom: 30px;
}
.d_merit h3{
	font-size: 40px;
	font-weight: 800;
	padding-bottom: 20px;
	color: #E60212;
}
.d_merit p.lead{
margin-bottom: 10px;
font-size: 25px;
line-height: 1.4em;
}
.d_merit p.note{
margin-bottom: 0px;
font-size: 14px;
line-height: 1.4em;
}
.d_merit ul {
list-style: none;
padding: 0px;
margin-bottom: 50px;
width: 80%;
margin-left: auto;
margin-right: auto;
}
.d_merit li.type1 {
width: 23%;
margin-left: 0%;
margin-right: 0%;
float: left;
margin-bottom: 0px;
margin-top: 0px;
}
.d_merit li.type1 img {
width: 100%;
height: auto;
display: block;
}
.d_merit li.type2 {
width: 72%;
margin-left: 5%;
margin-right: 0%;
float: left;
margin-bottom: 0px;
margin-top: 0px;
}
.d_merit p.ch img{
width: 100%;
height: auto;
display: block;
}
.d_merit ul:after {
height: 0;
visibility: hidden;
content: ".";
display: block;
clear: both;
}
@media screen and (max-width: 834px) {
.d_merit {
width: 100%;
margin-bottom: 20px;
}
.d_merit ul {
margin-bottom: 40px;
width: 100%;
}
.d_merit h3{
font-size: 28px;
padding-bottom: 10px;
}
.d_merit p.lead{
margin-bottom: 10px;
font-size: 18px;
line-height: 1.4em;
}
.d_merit p.note{
margin-bottom: 0px;
font-size: 12px;
line-height: 1.4em;
}
.d_merit li.type1 {
width: 20%;
margin-left: 0%;
margin-right: 0%;
}
.d_merit li.type2 {
width: 77%;
margin-left: 3%;
margin-right: 0%;
}
}
@media screen and (max-width: 360px) {
.d_merit h2{
padding-top: 10px;
padding-bottom: 10px;
font-size: 16px;
}
}



/*アイコンタイトル*/
.d_tv_tc {
padding-top: 0px;
margin-top: 0px;
margin-bottom: 15px;
position: relative;
padding-left: 65px;
}
.d_tv_tc p {
font-size: 30px;
font-weight: bold;
padding-top: 15px;
padding-bottom: 15px;
}
.d_tv_tc img {
position: absolute;
top: -3px;
padding: 0;
margin: 0;
left: 0em;
}
@media screen and (max-width: 834px) {
.d_tv_tc {
margin-top: 0px;
margin-bottom: 10px;
padding-left: 16%;
}
.d_tv_tc p{
font-size: 20px;
padding-top: 5px;
padding-bottom: 5px;
line-height: 1.4em;
}
.d_tv_tc img {
top: -9px;
padding: 0;
margin: 0;
width: 15%;
height: auto;
display: block;
}
}
@media screen and (max-width: 360px) {
.d_tv_tc p{
font-size: 18px;
}
.d_tv_tc img {
top: -5px;
}
}


/* ---------------------------------------------------------------- *
でんき　内容
* ---------------------------------------------------------------- */
.d_course {
	/*_zoom: 1;
overflow: hidden;*/
	clear: both;
	margin-right: auto;
	margin-bottom: 70px;
	margin-left: auto;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
	border: 5px solid #000000;
	background-color: #FFFFFF;
	-moz-border-radius: 14px;
	-webkit-border-radius: 14px;
	border-radius: 14px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	padding-top: 40px;
}
.d_course h1 {
	font-size: 30px;
	font-weight: bold;
	position: absolute;
	left: 50%;
	top: -40px;
	transform: translateX(-50%);
	padding-top: 10px;
	padding-bottom: 10px;
	width: 500px;
	background-color: #FFFFFF;
	border: 5px solid #000000;
	border-radius: 50px;
	text-align: center;
	line-height: 1.4em;
}
.d_course h1.qat {
font-size: 28px;
font-weight: bold;
position: absolute;
left: 50%;
top: -30px;
transform: translateX(-50%);
padding-top: 10px;
padding-bottom: 10px;
width: 700px;
background-color: #FFFFFF;
border: 5px solid #000000;
-moz-border-radius: 30px;
-webkit-border-radius: 30px;
border-radius: 30px;
text-align: center;
}
.d_course h1 strong {
color: #E60113;
}
@media screen and (max-width: 834px) {
.d_course h1,.d_course h1.qat {
font-size: 16px;
padding-top: 5px;
padding-bottom: 5px;
top: -25px;
width: 80%;
border: 4px solid #000000;
}
}


.d_course p.price {
border-left-color: #000000;
border-left-style: solid;
border-right-color: #000000;
border-right-style: solid;
border-top-color: #000000;
border-top-style: solid;
margin-bottom: 0px;
padding-bottom: 0px;
}

.d_course h2.sub {
font-size: 27px;
font-weight: normal;
padding-top: 0px;
margin-top: 30px;
}
.d_course ul.c_flow {
list-style: none;
padding: 0;
width: 80%;
margin-right: auto;
margin-left: auto;
}
.d_course ul.c_flow h3 {
font-size: 30px;
font-weight: bold;
padding-bottom: 20px;
}
.d_course ul.c_flow h3 span {
font-size: 24px;
}
.d_course ul.c_flow li.type1 p {
font-size: 25px;
line-height: 1.4em;
}
.d_course ul.c_flow li.type3 p,.d_course ul.c_flow li.type4 p {
font-size: 20px;
line-height: 1.5em;
margin-bottom: 10px;
}
.d_course ul.c_flow p strong {
color: #FF0004;
font-weight: bold;
}
.d_course ul.c_flow p.note {
font-size: 15px !important;
}
.d_course ul.c_flow li {
position: relative;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.d_course ul.c_flow li p.flw01 {
position: absolute;
top: -15px;
left: 0px;
}
.d_course ul.c_flow li.type1 {
width: 45%;
margin-left: 0%;
margin-right: 0%;
float: left;
padding-left: 80px;
background-image: url(../parts/cv_dot.png);
background-repeat: repeat-y;
background-position: left 0%;
}
.d_course ul.c_flow li.type2 {
width: 27.5%;
margin-left: 0%;
margin-right: 0%;
float: left;
text-align: right;
padding-bottom: 50px;
}
.d_course ul.c_flow li.type3 {
width: 100%;
margin-left: 0%;
margin-right: 0%;
float: none;
clear: both;
padding-left: 80px;
background-image: url(../parts/cv_dot.png);
background-repeat: repeat-y;
background-position: left 0%;
padding-bottom: 50px;
}
.d_course ul.c_flow li.type4 {
width: 100%;
margin-left: 0%;
margin-right: 0%;
float: none;
clear: both;
padding-left: 80px;
}

.d_course ul:after {
height: 0;
visibility: hidden;
content: ".";
display: block;
clear: both;
}
@media screen and (max-width: 834px) {
.d_course {
width: 100%;
margin-bottom: 40px;
padding-top: 30px;
padding-right: 20px;
padding-left: 20px;
padding-bottom: 10px;
-moz-border-radius: 12px;
-webkit-border-radius: 12px;
border-radius: 12px;
border: 4px solid #000000;
}
.d_course h2.sub {
font-size: 18px;
margin-top: 10px;
}
.d_course ul.c_flow {
width: 100%;
}
.d_course ul.c_flow li.type1 {
width: 100%;
padding-left: 70px;
background-image: url(../parts/cv_dot.png);
float: none;
margin-bottom: 0px;
padding-bottom: 20px;
}
.d_course ul.c_flow li.type2 {
width: 50%;
margin-left: 0%;
margin-right: 0%;
float: left;
text-align: center;
padding-bottom: 50px;
}
.d_course ul.c_flow li.type2 img {
width: 90%;
height: auto;
margin-right: auto;
margin-left: auto;
}
.d_course ul.c_flow li.l_dot {
background-image: url(../parts/cv_dot.png);
background-repeat: repeat-y;
background-position: left 0%;
}
.d_course ul.c_flow li.type3 {
width: 100%;
margin-left: 0%;
margin-right: 0%;
float: none;
clear: both;
padding-left: 70px;
background-image: url(../parts/cv_dot.png);
background-repeat: repeat-y;
background-position: left 0%;
padding-bottom: 50px;
}
.d_course ul.c_flow li.type4 {
width: 100%;
margin-left: 0%;
margin-right: 0%;
float: none;
clear: both;
padding-left: 70px;
}

.d_course ul.c_flow h3 {
font-size: 20px;
padding-bottom: 10px;
line-height: 1.4em;
}
.d_course ul.c_flow h3 span {
font-size: 16px;
display: block;
}
.d_course ul.c_flow li.type1 p {
font-size: 16px;
line-height: 1.5em;
}
.d_course ul.c_flow li.type3 p,.d_course ul.c_flow li.type4 p {
font-size: 16px;
line-height: 1.5em;
margin-bottom: 10px;
}
}


.d_info {
width: 92%;
margin-left: auto;
margin-right: auto;
}
.d_info p.i_lead {
font-weight: bold;
margin-bottom: 10px;
font-size: 13px;
}
.d_info li {
margin-bottom: 10px;
font-size: 13px;
}
.denki .indent-1 {
padding-left:1em;
text-indent:-1em;
}
@media screen and (max-width: 834px) {
}


/* ---------------------------------------------------------------- *
シミュレーションのセレクト
* ---------------------------------------------------------------- */
.d_course h2.simu {
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 15px;
padding-bottom: 15px;
border: 2px solid #000000;
background-color: #FFFFFF;
-moz-border-radius: 40px;
-webkit-border-radius: 40px;
border-radius: 40px;
width: 50%;
font-size: 30px;
font-weight: normal;
text-align: center;
margin-top: 40px;
}
.d_course h3.simu {
font-size: 35px;
font-weight: bold;
text-align: center;
padding-bottom: 30px;
}
@media screen and (max-width: 834px) {
.d_course h2.simu {
margin-bottom: 20px;
padding-top: 10px;
padding-bottom: 10px;
width: 90%;
font-size: 18px;
margin-top: 20px;
}
.d_course h3.simu {
font-size: 24px;
padding-bottom: 10px;
line-height: 1.4em;
}
}

/*フォームスタイル　プルダウンメニュー*/
.simu_box {
text-align: center;
padding-bottom: 30px;
padding-top: 20px;
}
.simu_box span {
font-size: 40px;
padding-right: 10px;
padding-left: 10px;
}

select.usemonth{
outline: none;
text-overflow: '';
background: none transparent;
vertical-align: middle;
font-size: 20px;
color: inherit;
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
height: 40px;
padding: 8px 12px;
border: 1px solid #000000;
width: 30%;
border-radius: 3px;
margin-bottom: 20px;
}
select.usemonth::-ms-expand {
display: none;
}
select.usemonth:-moz-focusring { 
color: transparent; 
text-shadow: 0 0 0 #828c9a;
}
@media screen and (max-width: 834px) {
.simu_box {
padding-bottom: 20px;
padding-top: 20px;
}
.simu_box span {
font-size: 30px;
padding-right: 0px;
padding-left: 0px;
display: block;
padding-top: 10px;
padding-bottom: 10px;
}
select.usemonth{
text-overflow: '';
background: none transparent;
vertical-align: middle;
font-size: 18px;
height: 40px;
padding: 8px 12px;
width: 90%;
margin-bottom: 0px;
}
}




.simulate {
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-right: 0px;
padding-left: 0px;
padding-bottom: 30px;
border: 4px solid #E60113;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding-top: 0px;
}
.simulate h2 {
background-color: #E60113;
color: #FFFFFF;
text-align: center;
padding-top: 20px;
padding-bottom: 20px;
font-size: 30px;
font-weight: bold;
margin-bottom: 20px;
}
p.m_price {
display: none;
}
@media screen and (max-width: 834px) {
.simulate h2 {
padding-top: 15px;
padding-bottom: 15px;
font-size: 20px;
margin-bottom: 20px;
}
}

/* テキストフォームの設定 */
.item-text{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 15px;
border: 1px solid #EEEEEE;
background-color: #EEEEEE;
margin: 0;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
font-size: 20px !important;
}
@media screen and (max-width: 834px) {
.item-text{
padding: 15px;
margin: 0;
font-size: 20px !important;
width: 85%;
}
}


/* ---------------------------------------------------------------- *
シミュレーションの流れ
* ---------------------------------------------------------------- */
.sim_flow {
_zoom: 1;
overflow: hidden;
clear: both;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 0px;
padding-right: 0px;
padding-left: 0px;
width: 80%;
margin-top: 20px;
}
.sim_flow ul {
list-style: none;
margin-top: 0;
margin-right: 0;
margin-left: 0;
padding-top: 0;
padding-right: 0;
padding-left: 0;
padding-bottom: 20px;
margin-bottom: 20px;
border-bottom: 1px dashed #000000;
}
.sim_flow li {
width: 48%;
margin-left: 1%;
margin-right: 1%;
float: left;
margin-bottom: 0px;
position: relative;
}
/*.sim_flow li:first-child :before {
position: absolute;
content: '\f101';
color: #000000;
font-family: "Font Awesome 5 Free";
right: 10px;
bottom: 18%;
}*/
.sim_flow li p {
font-size: 25px;
line-height: 1.3em;
margin-bottom: 10px;
}
.sim_flow li p span {
padding-left: 10px;
}
.sim_flow li p strong {
color: #E60113;
}
.sim_flow ul:after {
height: 0;
visibility: hidden;
content: ".";
display: block;
clear: both;
}
.sim_flow p.result {
font-size: 35px;
color: #E60113;
font-weight: bold;
padding-bottom: 20px;
text-align: center;
padding-top: 10px;
}
.sim_flow p.result strong {
font-size: 45px;
font-weight: bold;
padding-top: 20px;
padding-bottom: 20px;
display: inline-block;
background-color: #EEEEEE;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
margin-left: 5px;
margin-right: 5px;
color: #000000;
width: 220px;
height: 30px;
}
.sim_flow p.result span.year {
vertical-align: middle;
}
@media screen and (max-width: 834px) {
.sim_flow {
width: 90%;
margin-top: 0px;
}
.sim_flow li {
float: none;
width: 100%;
margin-right: 0%;
margin-left: 0%;
margin-bottom: 10%;
}
/*.sim_flow li:first-child :before {
position: absolute;
margin-left: 0px;
content: '\f103';
color: #000000;
font-family: "Font Awesome 5 Free";
bottom: -40px;
right: 20%;
}*/
.sim_flow li p {
font-size: 22px;
line-height: 1.3em;
}
.sim_flow li p span {
padding-left: 8px;
}
.sim_flow p.result {
font-size: 25px;
padding-bottom: 10px;
padding-top: 0px;
line-height: 1.5em;
}
.sim_flow p.result strong {
font-size: 30px;
padding-bottom: 10px;
padding-left: 20px;
padding-right: 20px;
margin-left: 5px;
margin-right: 5px;
padding-top: 10px;
width: 200px;
}
}
@media screen and (max-width: 375px) {
.sim_flow p.result strong {
font-size: 30px;
padding-bottom: 10px;
padding-left: 20px;
padding-right: 20px;
margin-left: 5px;
margin-right: 5px;
padding-top: 10px;
width: 180px;
}
}
@media screen and (max-width: 360px) {
.sim_flow p.result {
font-size: 20px;
}
.sim_flow p.result strong {
font-size: 25px;
padding-bottom: 10px;
padding-left: 15px;
padding-right: 15px;
width: 160px;
}
}


/* ---------------------------------------------------------------- *
FAQ
* ---------------------------------------------------------------- */
.d_faq {
_zoom: 1;
overflow: hidden;
clear: both;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 20px;
padding-right: 0px;
padding-left: 0px;
}
.d_faq ul {
list-style: none;
padding: 0px;
margin-right: auto;
margin-left: auto;
width: 100%;
margin-top: 0px;
margin-bottom: 0px;
}
.d_faq h2 {
padding-right: 0px;
padding-left: 0px;
margin-right: 0px;
margin-left: 0px;
color: #EA6C1A;
font-size: 38px;
font-weight: normal;
text-align: center;
margin-top: 15px;
padding-bottom: 30px;
margin-bottom: 30px;
}
.d_faq li.LQ {
width: 100%;
margin-left: 0%;
margin-right: 0%;
margin-bottom: 30px;
border-bottom: 1px dashed #000000;
padding-bottom: 30px;
}
.d_faq li.LQ.last {
width: 100%;
margin-left: 0%;
margin-right: 0%;
margin-bottom: 30px;
border-bottom: 0px dashed #000000;
padding-bottom: 0px;
}
/*.d_faq li.RQ {
width: 60%;
margin-left: 0%;
margin-right: 0%;
margin-bottom: 30px;
border-bottom: 1px solid #F8C496;
padding-bottom: 30px;
padding-left: 40%;
}*/
.d_faq li h3 {
font-size: 24px;
font-weight: bold;
margin-bottom: 15px;
list-style-type: none;
margin-left: 0px;
display: -webkit-flex;
display: flex;
-webkit-align-items: center;
align-items: center;
}
.d_faq li h3 span {
margin-right: 10px;
}
.d_faq li p {
font-size: 18px;
margin-bottom: 0px;
line-height: 1.8em;
position: relative;
}
.d_faq ul:after {
height: 0;
visibility: hidden;
content: ".";
display: block;
clear: both;
}
@media screen and (max-width: 834px) {
.d_faq {
width: 100%;
}
.d_faq ul {
width: 100%;
}
.d_faq li.LQ,.d_faq li.RQ {
padding-bottom: 20px;
}
.d_faq li h3 {
font-size: 16px;
margin-bottom: 10px;
}
.d_faq li p {
font-size: 14px;
}
.d_faq li {
float: none;
width: 100%;
margin-right: 0%;
margin-left: 0%;
margin-bottom: 0%;
}
.d_faq li.RQ {
width: 100%;
padding-left: 0%;
}
}



/* ---------------------------------------------------------------- *
開閉コンテンツ
* ---------------------------------------------------------------- */

#d_OCbox{
margin-top: 0;
margin-right: 0;
margin-left: 0;
margin-bottom: 0px;
/*border-bottom: 1px solid #CCCCCC;*/
}
/*pcは初めからオープン*/
#d_OCbox .toggle_box {
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
padding: 0;
list-style: none;
margin-left: 70px;
}
#d_OCbox .toggle_box img {
position: absolute;
top: 6px;
left: -25px;
}
div.d_faqOC{
/*display: block;
cursor: pointer;*/
pointer-events: none;
margin: 0;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
div.d_faqOC.open{
cursor: pointer;
pointer-events: none;
background-repeat: no-repeat;
background-position: right center;
}
@media screen and (max-width: 834px) {
#d_OCbox{
margin-top: 0px;
margin-right: 0;
margin-left: 0;
padding: 0%;
margin-bottom: 0px;
}
#d_OCbox .toggle_box {
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
padding: 0;
list-style: none;
display: none;
margin-left: 40px;
}
#d_OCbox .toggle_box img {
top: 4px;
}
div.d_faqOC{
display: block;
cursor: pointer;
pointer-events: auto;
background-image: url(../parts/i_open.png);
background-repeat: no-repeat;
background-position: right center;
margin: 0;
padding-top: 0px;
padding-right: 35px;
padding-bottom: 0px;
padding-left: 0px;
}
div.d_faqOC.open{
cursor: pointer;
pointer-events: auto;
background-image: url(../parts/i_close.png);
background-repeat: no-repeat;
background-position: right center;
padding-bottom: 0px;
padding-top: 0px;
}
}


