@charset "utf-8";

/* ====================================
	common
===================================== */
.base-width{
	padding-bottom: 3rem;
	border-bottom: 1px solid #d9d9d9;
}
.caption{
	font-size: 0.86em;
}
/* feature */

ul.gaiyo-text{
    margin: 2em 0.5em;
}
ul.gaiyo-text li{
    margin-bottom: 1em;
}

ul.gaiyo-text li h3{
    font-weight: 500;
    margin-bottom: 0;
}

.feat-flex{
	display: flex;
	flex-wrap: wrap;
}
.feat-flexItem{
	display: block;
}
.contents-about.cancel{
	padding-top: 0;
	margin-bottom: 0;
}
.contents-about h2.sub-section-ttl{
	text-align: center;
	padding-bottom: 2rem;
}

.contents-about h2.sub-section-ttl span{
    font-size: 1rem;
}
#siaa{
    padding-top: 5rem;
}
.contents-about .conceptImg{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1rem;
	margin-bottom: 3rem;
}

.itemBoxWrap h4{
	margin-top: 5rem;
	margin-left: 13px;
	font-size: 1.2rem;
	font-weight: 600;
	position: relative;
}
.itemBoxWrap h4:before {
	content: '';
	display: block;
	background: #000;
	height: 85%;
	width: 4px;
	position: absolute;
	bottom: 1.5px;
	left: -13px;
}
.itemBoxWrap h4 span{
	font-size: 0.86rem;
}
.itemBoxWrap p{
	padding: 1rem 2rem 2rem;
	line-height: 1.5;
	font-size: 16px;
}
.itemBoxWrap ul{
    padding: 1rem 0;
}
.itemBoxWrap ul li{
	padding-left: 1rem;
}

.itemBoxWrap ul.caption{
    padding: 0 0 1rem;
}
.itemBoxWrap .caption li{
	font-size: 0.86rem;
}
.itemBoxWrap .caption.star li{
	padding-left: 1.86em;
}
.itemBoxWrap .caption.disc li{
	padding-left: 1.5em;
}

.itemBoxWrap .leftText{
	width: 65%;
}
.itemBoxWrap .rightImg{
	max-width: 180px;
	width: 30%;
}
.itemBoxWrap .rightImg02{
	padding-left: 1rem;
	width: 120px;
}
.itemBoxWrap .rImg{
	width: 180px;
	margin-left: auto;
	margin-right: 0;
}
.itemBoxWrap .cImg{
	width: 180px;
	margin-left: auto;
	margin-right: auto;
}
.itemBoxWrap ul.dftext li{
	padding: 0;
}
.itemBoxWrap ul.dftext li h5{
	font-weight: 600;
}
.itemBoxWrap ul.dftext li h5 .sqColor{
	color: #2E7FDF;
	margin-right: 0.5rem;
}
.itemBoxWrap ul.dftext li p{
	font-size: 0.94rem;
	padding: 0.5rem 0 2rem;
}
.itemBoxWrap a{
	text-decoration: underline;
}
.faxSecurity{
	max-width: 400px;
	margin-left: auto;
	margin-right: 1rem;
}
.faxSecurity img{
	width: auto;
}
.secIdTable table{
	width: 100%;
	border-bottom: 1px solid #c5c5c5;
}
.secIdTable table th{
	text-align: center;
	font-weight: 600;
	background: #c5c5c5;
	line-height: 1.5;
	padding: 5px;
	border-right: 1px solid #fff;
}
.secIdTable table td{
	text-align: center;
	background: #fff;
	line-height: 1.5;
	padding: 5px;
	border-right: 1px solid #c5c5c5;
}
.secIdTable table td.nob{
	border-right: 1px solid #fff;
}

/* spec */
/* 表 */
.specBox{
	margin-bottom: 4rem;
}
table.table-spec {
	width: 100%;
	font-size: 1rem;
	line-height: 1.4;
	/*border-collapse: separate;*/
	border-spacing: 0;
}

table.table-spec th, table.table-spec td, table.table-spec td.sub-td2 {
	padding: 0.5em 0;
	font-weight: normal;
	border-bottom: solid 1px #e5e5e5;
	text-align: left;
}
.spec-page table.table-spec th, .spec-page table.table-spec td, .spec-page table.table-spec td.sub-td2 {
	padding: 0.5em;
	font-weight: normal;
	border: solid 1px #e5e5e5;
	text-align: center;
}


table.table-spec td.sub-td2 {
	border-bottom: dashed 1px #e5e5e5;
	padding-left: 1em;
}

table.table-spec th {
	font-weight: 500;
	vertical-align: top;
    padding-right: 1em;
}

table.table-spec th.has-sub-th {
	width: auto;
	padding-right: 0.5em;
}

table.table-spec th.sub-th {
	width: auto;
}

table.table-spec dl.normal {
	display: flex;
}

table.table-spec dl.normal dt, table.table-spec dl.normal dd {
	padding: 0.2em 0;
}

table.table-spec dl.normal dt {
	width: 12rem;
}

table.th-size th {
	width: 13rem;
}

/*見出し3列表*/
table#th3col th {
    width: 15%;
}




/* ====================================
        PC style
===================================== */
@media print, screen and (min-width: 768px) {
	/* for more information --- add by nii 2020/12/29 */
	#f-cont01,#f-cont02,#f-cont03,#f-cont04,#f-cont05,#f-cont06,#f-cont07,#f-cont08,#basic{
		margin-top: 3rem;
	}
	.contents-about{
		padding-top: 3rem;
		margin-bottom: 3rem;
	}
	.contents-about h2.sub-section-ttl{
		font-size: 2rem;
	}
	.sub-title {
		margin-bottom: 2rem;
		padding: 0.2em 0;
		font-size: 1.4rem;
		text-align: center;
	}

.contents-about ul{
	display: flex;
	justify-content: center;
	/*width: 400px;*/
	margin: 0 auto 2rem;
	border-bottom: 1px solid #d0d0d0;
	border-top: 1px solid #d0d0d0;
}

.contents-about ul li{
	font-size: 1.2rem;
	padding: 0.5rem 0;
	margin-right: 15px;
}

/* feature */
	.feat-flexItem.colum3s{
		width: 32%;
        margin-right: 1%;
	}
	
    .ecoimgR{
        text-align: center;
        display: block;
    }
    .ecoimgR img{
        width: auto;
    }
	
	.leftImg01{
		width: 35%;
	}

	.rightTxt01{
		width: 65%;
		font-size: 0.94;
		line-height: 1.2;
	}
	.secIdTable{
		padding-left: 2rem;
		width: 60%;
	}

	.indent1{
		text-indent: -0.5em;
		margin-left: 0.5em;
	}
	.indent1-5{
		text-indent: -1.5em;
		margin-left: 1.5em;
	}
	.indent2{
		text-indent: -2em;
		margin-left: 2em;
	}
	.indent1 li span{
		color: #00a0e9;
		margin-right: 0.5em;
	}
	.smallImg{
		width: 40%;
		min-width: 350px;
		margin: 0 auto 1rem;
	}
	.middleImg{
		width: 60%;
		max-width: 600px;
		margin: 0 auto 1rem;
	}
	.largeImg{
		width: 80%;
		margin: 0 auto 1rem;
	}
	
/* spec */
	table.table-spec th {
		width: 36.5%;
	}
	table.table-spec td {
		width: 33.5%;
	}
	table.table-spec table.innerTable{
		font-size: 0.86em;
	}
	
/* option spec */
	.optionMap{
		max-width: 80%;
		margin: 0 auto 3rem;
	}
	table.table-option {
		font-size: 1rem;
	}

	div.optClum2 .clm2Item{
		width: 48%;
		margin-right:1%;
		margin-left: 1%;
	}
	.photoImg{
		padding: 0 2rem 2rem;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.photoBox{
		width: 20%;
		border: 1px solid #e0e0e0;
		margin: 1em;
	}
	
/** -------------------------------------------------------
 ** lightbox
 ** ------------------------------------------------------- */
	#lightboxContainer {
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		z-index: 7000;
	}
	#lightboxOverlay {
		background-color: #000;
		opacity: 0.8;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		display: none;
		z-index: 7000;
	}
	#lightboxContent {
		width: 595px;
		background-color: #FFF;
		position: absolute;
		top: 0;
		left: 0;
		display: none;
		padding-top: 5px;
		z-index: 7000;
		border-radius: 5px;
		-webkit-border-radius: 5px; 
		-moz-border-radius: 5px; 
	}
	#lightboxInner {
		padding: 15px 20px 20px 20px;
		width: 555px;
	}

	#lightboxInner .clearfix {
		padding: 10px 0;
		border-bottom: #b9bec2 dotted 1px;
		margin-bottom: 15px;
	}
		/* optionimg */
		#lightboxInner.optionimg .clearfix {
			padding: 10px 0 0;
			border-bottom: none;
			margin-bottom: 0;
		}
		/* standardimg */
		#lightboxInner.standardimg .clearfix {
			padding: 10px 0 0;
			border-bottom: none;
			margin-bottom: 0;
		}
	.lightboxTxt {
		float: left;
	}
	.lightboxNumberBox {
		float: right;
	}
		/* optionimg */
		.optionimg .lightboxNumberBox {
			display: none;
		}
	.lightboxBtn {
		border: 1px solid #a3a3a3;
		min-width: 305px;
		width: 55%;
		height: 42px;
		text-align: center;
		line-height: 42px;
		margin: 0 auto;
		border-radius: 5px;
		-webkit-border-radius: 5px; 
		-moz-border-radius: 5px; 
	}
		/* optionimg */
		.optionimg .lightboxBtn {
			display: none;
		}
		/* standardimg */
		.standardimg .lightboxBtn {
			display: none;
		}
	.lightboxBtn a {
		display: block;
		width: 305px;
		height: 42px;
	}
	#lightboxNextBtn {
		position: absolute;
		width: 42px;
		top: 50%;
		right: -60px;
		cursor: pointer;
		margin-top: -21px;
	}
		/* optionimg */
		.optionimg #lightboxNextBtn {
			display: none !important;
		}
	#lightboxPrevBtn {
		position: absolute;
		width: 42px;
		top: 50%;
		left: -60px;
		cursor: pointer;
		margin-top: -21px;
	}
		/* optionimg */
		.optionimg #lightboxPrevBtn {
			display: none !important;
		}
	#lightboxBackBtn {
		position: absolute;
		width: 34px;
		top: -16px;
		left: 575px;
		cursor: pointer;
		z-index: 7000;
	}




}

/* ====================================
        SP Style
===================================== */
@media only screen and (max-width: 767px) {
	/* for more information : to 08 --- add by nii 2020/12/29 */
	#f-cont02,#f-cont03,#f-cont04,#f-cont05,#f-cont06,#f-cont07,#f-cont08,#basic{
		margin-top: 3rem;
	}
.contents-about{
	padding-top: 3rem;
	margin-bottom: 3rem;
}
	.contents-about h2.sub-section-ttl{
		font-size: 1.6rem;
	}
.contents-about ul{
	width: 83%;
	padding: 0.5em 0;
	margin: 0 auto 2rem;
	border-bottom: 1px solid #d0d0d0;
	border-top: 1px solid #d0d0d0;
}
.contents-about ul li{
	font-size: 1rem;
}

/* feature */
	.feat-flexItem.colum3s{
		width: 75%;
        margin:0 auto 1em;
	}
    .ecoimgR{
        text-align: right;
        display: block;
    }
    .ecoimgR img{
        width: auto;
    }
	.leftImg01{
		width: 50%;
		margin: 0 auto;
	}

	.rightTxt01{
		width: 90%;
		margin: 0 auto;
		font-size: 0.94;
		line-height: 1.2;
	}
	.secIdTable{
		width: 90%;
		margin: 0 auto;
	}
	.indent1{
		text-indent: -0.5em;
		margin-left: 0.5em;
	}
	.indent1-5{
		text-indent: -1.5em;
		margin-left: 1.5em;
	}
	.indent2{
		text-indent: -2em;
		margin-left: 2em;
	}
	.indent1 li span{
		color: #00a0e9;
		margin-right: 0.5em;
	}
	.smallImg{
		width: 45%;
		/* min-width: 350px; */
		margin: 0 auto 1rem;
	}
	.middleImg{
		width: 80%;
		margin: 0 auto 1rem;
	}
	.largeImg{
		width: 95%;
		margin: 0 auto 1rem;
	}

/* spec */
	table.table-spec th {
		width: 26.5%;
	}
	table.table-spec td {
		width: 33.3%;
	}
	table.table-spec table.innerTable{
		font-size: 0.64em;
	}

/* option spec */
	.optionMap{
		max-width: 100%;
		margin: 0 auto 3rem;
	}
	table.table-option {
		font-size: 0.86em;
	}

	div.optClum2 .clm2Item{
		width: 98%;
		margin: 0 auto 2rem;
	}
	.photoImg{
		padding: 0 2rem 2rem;
	}
	.photoBox{
		width: 85%;
		border: 1px solid #e0e0e0;
		margin: 1em auto;
	}

/** -------------------------------------------------------
 ** lightbox
 ** ------------------------------------------------------- */
	#lightboxContainer {
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		z-index: 7000;
	}
	#lightboxOverlay {
		background-color: #000;
		opacity: 0.8;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		display: none;
		z-index: 7000;
	}
	#lightboxContent {
		width: 300px;
		background-color: #FFF;
		border: 2px solid #000;
		position: absolute;
		top: 0;
		left: -50%;
		display: none;
		padding-top: 5px;
		z-index: 7000;
		border-radius: 5px;
		-webkit-border-radius: 5px; 
		-moz-border-radius: 5px; 
	}
	#lightboxInner {
		padding: 15px 10px 10px 10px;
		margin: 0 auto;
		width: 280px;
	}
	.lightboxTxt {
		float: left;
	}
	.lightboxNumberBox {
		float: right;
	}
	.lightboxBtn {
		border: 1px solid #a3a3a3;
		width: 270px;
		height: 42px;
		text-align: center;
		line-height: 42px;
		margin: 0 auto;
		border-radius: 5px;
		-webkit-border-radius: 5px; 
		-moz-border-radius: 5px; 
	}
	.lightboxBtn a {
		display: block;
		min-width: 270px;
		min-height: 42px;
	}
	#lightboxNextBtn {
		position: absolute;
		width: 24px;
		top: 50%;
		right: -30px;
		cursor: pointer;
		margin-top: -21px;
	}
	#lightboxPrevBtn {
		position: absolute;
		width: 24px;
		top: 50%;
		left: -30px;
		cursor: pointer;
		margin-top: -21px;
	}
	#lightboxBackBtn {
		position: absolute;
		width: 26px;
		top: -13px;
		left: 283px;
		cursor: pointer;
		z-index: 7000;
	}
	
	.log-area{
		font-size: 90%;
	}
}



