/*******************************************
*
* css for オプションサービス
*
********************************************/
@charset "UTF-8";


/* ==========================================================
*
* オプションサービス DUひかり電話詳細
*
========================================================== */
#topImage {
	background-image: url("../images/ttlbg/about.png");
}


#contentBody h2.copyTxt{
	margin:80px 0 40px;
}


/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	#contentBody h2.copyTxt{
		margin:40px 0 20px;
	}


}


/*------------------------------------------
 オプション概要
 ------------------------------------------*/
#overview{
	display:block;
	overflow:hidden;
	text-align:center;
	margin-bottom:80px;
}


#overview > p{
	display:block;
	overflow:hidden;
	font-size: 1.6rem;
	line-height:175%;
}

#overview ul{
	display:block;
	overflow:hidden;
	margin:40px 0;
}

#overview ul li{
	display:block;
	overflow:hidden;
	width:33.3%;
	float:left;
	text-align:center;
}

#overview ul li > p{
	display:block;
	overflow:hidden;
	padding:1em 0;
	font-size:1.4rem;
	line-height:155%;
}

#overview a.linkedBtn{
	width:320px;
	margin:0 10px;
}


/* for TB --------------------------*/
@media screen and ( max-width:896px) {
	/**/
}


/* for SP --------------------------*/
@media screen and ( max-width:750px) {

	#overview{
		margin-bottom:40px;
	}


	#overview > p{
		font-size: 1.4rem;
		text-align:left;
	}

	#overview ul{
		display:block;
		overflow:hidden;
		margin:40px 0 0;
	}

	#overview ul li{
		width:100%;
		float:none;
		margin-bottom:20px;
	}

	#overview ul li img{
		width:44vw;
		height:auto;
		max-width:332px;
	}

	#overview ul li > p{
		padding:0 0 1em;
		font-size:1.6rem;
	}

	#overview a.linkedBtn{
		width:100%;
		margin:10px 0;
	}

}


/*------------------------------------------
 オプション本文
 ------------------------------------------*/
#optionBody{
	/**/
}


#optionBody h2{
	display:block;
	overflow:hidden;
	font-size: 2.4rem;
	line-height:155%;
	font-weight:bold;
	text-align:center;
	margin-bottom:1em;
	clear:both;
}

#optionBody h2 > strong{
	color:#e9636c;
}



/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	#optionBody h2{
		font-size: 1.8rem;
		margin-bottom:1em;
	}

}

/*------------------------------------------
 グレーカラム
 ------------------------------------------*/
#frontData{
	display:block;
	overflow: hidden;
	padding:40px 0;
	position:relative;
	background-color:#f6f6f6;
}

#frontData p.frontTxt{
	display:block;
	overflow:hidden;
	text-align:center;
	font-size:1.6rem;
	line-height:175%;
	margin-bottom: 40px;
}

/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	#frontData p.frontTxt{
		text-align:left;
		font-size:1.4rem;
		margin-bottom:20px;
	}

}

/*------------------------------------------
 セクションボックス
 ------------------------------------------*/
.sectionBox{
	display:block;
	overflow:hidden;
	margin:40px 0;
}

.sectionBox h3{
	display:block;
	overflow:hidden;
	font-size:2.0rem;
	font-weight:bold;
	line-height:125%;
	padding-bottom:1em;
	border-bottom:1px solid #d3d3d4;
	margin-bottom:1em;
}


.sectionBox:last-child{
    margin: 40px 0 0;
}



/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	.sectionBox h3{
		font-size:1.6rem;
	}

}



/*------------------------------------------
 料金表
 ------------------------------------------*/
.planTable{
	display:block;
	overflow:hidden;
	margin-bottom:40px;
}

.planTable h4{
	display:block;
	overflow:hidden;
	font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 1em;
}


/*料金表テーブル*/
.planTable table{
	width:90%;
	border:1px solid #d3d3d4;
	margin:0 auto 1em;
}

.planTable table td,
.planTable table th{
    padding: 0.75em 1em;
    font-size: 1.6rem;
    line-height: 155%;
    border-collapse: collapse;
	border:1px solid #d3d3d4;
	text-align:center;
}

.planTable table > thead th{
	background-color:#e9636c;
	color:#ffffff;
}
.planTable table > tbody th {
	background-color:#ededee;
}

.planTable table > thead td:first-child,
.planTable table > thead th:first-child{
	width:32%;
}

.planTable strong{
	font-weight:bold;
	color:#e9636c;
	font-size:2.4rem;
}

.planTable strong > span{
	font-size:1.8rem;
}


.planTable table td > p.redTxt{
	display:inline-block;
	margin-left:1em;
	color:#e9636c;
}
 
/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	.planTable table{
		width:100%;
		border:1px solid #d3d3d4;
		margin:0 auto 1em;
	}

	.planTable table td,
	.planTable table th{
	    padding: 0.5em 0.5em;
    	font-size: 1.4rem;
	}

	.planTable table > thead td:first-child,
	.planTable table > thead th:first-child{
		width:auto;
	}

	.planTable table td > p.redTxt{
		display:block;
	}

	.planTable strong{
		display: block;
	}

}



/*------------------------------------------
 フロー
 ------------------------------------------*/
ul#stepFlow{
	display:inline-block;
	overflow:hidden;
	margin:0 auto;
	letter-spacing:-.4em;
}

ul#stepFlow > li{
	display:inline-block;
	overflow:hidden;
	letter-spacing:normal;
}

ul#stepFlow > li:after{
	display:block;
	overflow:hidden;
	content:"";
	width:50px;
	height:200px;
	float:right;
	background:url('../images/arrow_right.png') no-repeat right 50%;
	background-size:contain;
}

ul#stepFlow > li:last-child:after{
	display:none;
}

.stepInner{
	display:block;
	overflow:hidden;
	width:200px;
	height:200px;
	padding:20px 20px;
	text-align:center;
	background-color:#ededee;
	position:relative;
	float:left;
}

.stepInner h5{
	display:block;
	overflow:hidden;
	font-weight:bold;
	font-size:2.0rem;
	line-height:155%;
}
.stepInner p{
	display:block;
	overflow:hidden;
	font-size:1.4rem;
	line-height:155%;
	height:4em;
}


/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	ul#stepFlow{
		display:block;
		margin-bottom: 0;
	}

	ul#stepFlow > li{
		width: 50%;
		padding-bottom:20px;
	}

	ul#stepFlow > li:nth-child(even){
		padding-left:10px;
	}
	ul#stepFlow > li:nth-child(odd){
		padding-right:10px;
	}


	ul#stepFlow > li:after{
		display:none;
	}

	.stepInner{
		width:100%;
		height:auto;
		float:none;
	}

	.stepInner h5{
		font-size:1.6rem;
	}
	.stepInner p{
		font-size:1.2rem;
	}
	.stepInner > img{
		width:14vw;
		height:auto;
		max-width: 108px;
	}

}

/*********************************************************************/
/*********************************************************************/


#pointImage{
	display:block;
	overflow:hidden;
	text-align:center;
}

#pointImage img{
	width:50%;
	height:auto;
	float:left;
}


/* for SP --------------------------*/
@media screen and ( max-width:896px) {

}

@media screen and ( max-width:750px) {
	#pointImage{
		margin-bottom:20px;
	}

	#pointImage img{
		width:100%;
		height:auto;
		float:none;
	}

}

#kiyakuPdf{
	display:block;
	overflow:hidden;
	padding:20px;
	border:1px solid #cccccc;
}

#kiyakuPdf > a{
	margin-right:0.5em;
}

#kiyakuPdf > a:before{
	content:"\e902";
	margin-right:1em;
	color:#e9636c;
}

/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	#contactLine a{
		width:calc(100% - 40px);
	}

}




.cautionBox{
	display:block;
	overflow:hidden;
	text-align:center;
	padding-top:2em;
}

.cautionBox > article{
	display:block;
	width:min(100%,1000px);
	margin:0 auto;
	padding:0 3em 1em;
	border:2px dotted #c3c3c3;
	border-radius:10px;
	font-size:1.6rem;
	line-height:155%;
	position:relative;
}

.cautionBox > article > h4{
	display:block;
	overflow:hidden;
	font-size:2.1rem;
	font-weight:700;
	line-height:125%;
	color:#e41845;
	position:relative;
	top:-0.75em;
}


.cautionBox > article > h4 > span{
	display:inline-block;
	overflow:hidden;
	padding:0 1em;
	background-color: #ffffff;
}

.cautionBox > article > p{
	margin-bottom: 1em;
}


/* for SP --------------------------*/
@media screen and ( max-width:896px) {

	#contactLine .cautionBox{
		padding:2em 20px 0;
	}

	.cautionBox > article{
		padding:0 1em 1em;
		font-size:1.4rem;
		line-height:155%;
	}

	.cautionBox > article > h4{
		font-size:1.8rem;
		line-height:125%;
	}

	.cautionBox > article a.linkedBtn{
		min-width:100%!important;
	}

}

