@charset "utf-8";

/* ========================================
  common
======================================== */
.bgGray{
	background-color: #333333;
}
.secTtl{
	font-size: 32px;
	font-weight: normal;
	letter-spacing: 0.1em;
	line-height: 1.3;
	text-align: center;
	color: #333333;
	margin-bottom: 40px;
}
.boldTtl{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
}
.fadeArea .sec{
	position: relative;
	overflow: hidden;
}
.slideTtl{
	position: absolute;
	top: 0;
	left: 50px;
	width: 100%;
	-webkit-transition: all 0.8s;
	-moz-transition: all 0.8s;
	-ms-transition: all 0.8s;
	-o-transition: all 0.8s;
	transition: all 0.8s;
	opacity: 1;
}
/* .slideTtl.show{
	top: 0;
	left: 0;
	opacity: 1;
	text-align: left;
} */
/* .fadeBlock{
	opacity: 0;
	-webkit-transition: all 0.8s;
	-moz-transition: all 0.8s;
	-ms-transition: all 0.8s;
	-o-transition: all 0.8s;
	transition: all 0.8s;
}
.fadeBlock.show{
	opacity: 1.0;
	position: relative;
} */
.blackBg {
	background: #000000;
	color: #fff;
	font-size: 26px;
}
.blackBg .boldTtl {
	margin-bottom: 0;
	padding: 30px 10px;
}
.cBlue {
	color: #007ec4;
}
@media screen and (max-width: 767px){
	.blackBg .boldTtl {
		margin-bottom: 0;
		padding: 15px 10px;
	}
	.secTtl{
		font-size: 21px;
		letter-spacing: 0;
	}
	.secTtl span{
		font-size: 14px;
	}
	.boldTtl{
		font-size: 19px;
		font-weight: bold;
		margin: 20px 0 10px;
		line-height: 1.4;
	}
}

.thmbList,
.thmbList2,
.thmbList3{
	background-color: #666;
	padding: 20px 0;
}
.thmbList2 > .sec,
.thmbList3 > .sec {
	display: flex;
	justify-content: center;
}
.thmbList .bx-pager-item,
.thmbList2 .bx-pager-item,
.thmbList3 .bx-pager-item{
	float: left;
	margin-right: 8px;
}
.thmbList .bx-pager-item:last-child,
.thmbList2 .bx-pager-item:last-child,
.thmbList3 .bx-pager-item:last-child{
	margin-right: 0;
}
.thmbList2 .bx-pager-item a,
.thmbList3 .bx-pager-item a{
	margin-top: 10px;
	display: block;
	width: 160px;
	height: 60px;
	text-indent: -9999px;
	background-size: contain;
	background-repeat: no-repeat;
}
.thmbList .bx-pager-item a{
	margin-top: 10px;
	display: block;
	width: 136px;
	height: 60px;
	text-indent: -9999px;
	background-size: contain;
	background-repeat: no-repeat;
}
.thmbList .bx-pager-item a:hover,
.thmbList2 .bx-pager-item a:hover,
.thmbList3 .bx-pager-item a:hover,
.thmbList .bx-pager-item a.active,
.thmbList2 .bx-pager-item a.active,
.thmbList3 .bx-pager-item a.active{
	margin-top: 0;
}
.sliderWrap,
.sliderWrap2{
	width: 750px;
	margin: 40px auto 0;
	position: relative;
}
.bx-controls-direction{
	position: absolute;
	width: 100%;
	top: 170px;
}
.bx-prev,
.bx-next{
	display: block;
	position: absolute;
	text-indent: -9999px;
	width: 60px;
	height: 60px;
	background-repeat: no-repeat;
	background-size: contain;
}
.bx-prev{
	left: -125px;
	background-image: url(../images/arrow_prev.png);
}
.bx-next{
	background-image: url(../images/arrow_next.png);
	right: -125px;
}
.dtlList{
	margin-top: 80px;
}
.dtlList .list{
	text-indent: -27px;
	padding-left: 27px;
	margin-bottom: 30px;
}
.dtlList .list .bold{
	font-weight: bold;
	padding-left: 5px;
}
.dtlList .list .sldLink{
	padding-left: 5px;
}
.dtlList .list .num{
	/* font-weight: bold; */
	/* padding-right: 10px; */
	display: inline-block;
	width: 2em;
	height: 2em;
	line-height: 2em;
	color: #fff;
	font-size: 12px;
	text-align: center;
	border-radius: 50%;
	text-indent: 0px;
}
.dtlList .list dl{
	padding-left: 27px;
}
.dtlList .list dt,
.dtlList .list dd{
	display: inline-block;
	vertical-align: top;
	min-width: 11em;
	padding-left: 27px;
}
.dtlList .list dd .tel{
	text-decoration: none;
	color: #333;
	pointer-events: none;
}
.accArea{
	width: 750px;
	margin: 0 auto 5px;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
}
.accArea .accBtn{
	display: block;
	padding: 15px 40px 15px 15px;
	color: #333;
	text-decoration: none;
	background-repeat: no-repeat;
	background-size: 16px auto;
	background-position: right 20px center;
	background-image: url(../images/icon_plus.png);
}
.accArea .accIn{
	display: none;
}
.accArea .accBtn.open{
	background-image: url(../images/icon_minus.png);
}
.accArea .accIn .dtlList{
	margin-top: 10px;
}
.accArea .accIn .dtlList .list{
	border-bottom: 1px solid #e6e6e6;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.accArea .accIn .dtlList .list:last-child{
	border-bottom: 0;
	margin-bottom: 0;
}
@media screen and (max-width: 767px){
	.thmbList,
	.thmbList2,
	.thmbList3{
		display: none;
	}
	.thmbList,
	.thmbList2,
	.thmbList3{
	background-color: #666;
	padding: 10px 0;
	}	
	.sliderWrap,
	.sliderWrap2{
		width: 92%;
		margin-top: 20px;
	}
	.slideIn img{
		display: block;
		width: 260px;
		margin: auto;
	}
	.bx-controls-direction{
		top: 65px;
	}
	.bx-prev,
	.bx-next{
		width: 36px;
		height: 36px;
	}
	.bx-prev{
		left: -5px;
	}
	.bx-next{
		right: -5px;
	}
	.dtlList{
		margin-top: 50px;
	}
	.dtlList .list{
		/* text-indent: -27px; */
		/* padding-left: 27px; */
		margin-bottom: 20px;
	}
	.dtlList .list dl{
		padding-left: 0;
	}
	.dtlList .list dt,
	.dtlList .list dd{
		display: block;
		padding-left: 0;
		text-indent: 0;
	}
	.dtlList .list dd .tel{
		display: block;
		color: #007ec4;
		width: 100%;
		margin: 10px auto;
		padding: 10px;
		text-align: center;
		border: 1px solid #007ec4;
		font-size: 18px;
		pointer-events: auto;
	}
	.dtlList .list dd .tel:before{
		content: "";
		width: 28px;
		height: 30px;
		background: url(../images/icon_tel.png) no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
		margin: -4px 10px 0 0;
	}
	.accArea{
		width: 92%;
	}
}

/* ========================================
  pageMeta
======================================== */
.pageMeta{
	text-align: center;
}
.pageMeta .inner{
	border: 2px solid #46d78e;
}
.pageMeta .sec{}
.pageMeta .ttl{
	margin-bottom: 10px;
	color: #46d78e;
	line-height: 1.4;
}
.pageMeta .cnt{}

@media print, screen and (min-width:768px){
	.pageMeta .inner{
	}
	.pageMeta .sec{
		padding: 30px 0 15px;
	}
	.pageMeta .ttl{
		font-size: 2.8rem;
	}
	.pageMeta .cnt{
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 767px){
	.pageMeta .inner{
	}
	.pageMeta .sec{
		padding: 20px 4% 10px;
	}
	.pageMeta .ttl{
		font-size: 2.4rem;
	}
	.pageMeta .cnt{
		font-size: 1.2rem;
	}
}


/* ========================================
  mv
======================================== */
/* #mv{
	background: url(../images/mv_bg.jpg) no-repeat center;
	background-size: cover;
	padding: 100px 0 0;
} */
#mv .sec{
	position: relative;
	max-width: 100%;
}
@media screen and (max-width: 767px){
	#mv{
		padding: 0;
		background: none;
	}
	#mv .sec{
		padding: 0;
	}
}

/* ========================================
  news
======================================== */
#news{
	padding: 30px 0;
	text-align: center;
}
#news .ttl{
	font-weight: bold;
	margin-bottom: 10px;
}
#news dl div{
	margin-bottom: 5px;
}
#news dt,
#news dd{
	display: inline-block;
	vertical-align: top;
}
#news dt{
	width: 110px;
	margin-right: 10px;
}
#news dd a{
	color: #333;
	text-decoration: none;
}
@media screen and (max-width: 767px){
	#news{
		padding: 20px 0;
	}
	#news dt,
	#news dd{
		display: block;
		text-align: left;
	}
	#news dt{
		width: auto;
		margin-right: 0;
	}
}

/* ========================================
  anchor
======================================== */
.anchorNav{
	overflow: hidden;
	max-width: 1000px;
	margin: auto;
	padding: 50px 0 60px;
	text-align: center;
}
.anchorNav li{
	/* float: left; */
	width: 260px;
	padding-right: 32px;
	text-align: center;
	position: relative;
	box-sizing:content-box;
	display: inline-block;
}
.anchorNav li:first-child:before,
.anchorNav li:after{
	position: absolute;
	top: 0;
	right: 0;
	vertical-align: middle;
	content: "";
	display: block;
	width: 32px;
	height: 53px;
	background: url(../images/icon_slash.png) no-repeat;
	background-size: contain;
}
.anchorNav li:first-child{
	padding-left: 32px;
}
.anchorNav li:first-child:before{
	right: 100%;
	left: 0;
}
.anchorNav li a{
	display: inline-block;
	color: #fff;
	text-decoration: none;
	line-height: 53px;
}
.anchorNav li a:before{
	content: "";
	display: inline-block;
	width: 13px;
	height: 9px;
	background: url(../images/icon_down.png) no-repeat;
	background-size: contain;
	margin-right: 38px;
}
.anchorNav li:first-child a:before{
	margin-right: 18px;
}
@media screen and (max-width: 767px){
	.anchorNav{
		width: 92%;
		margin: auto;
		padding: 0;
	}
	.anchorNav li{
		float: none;
		width: 100%!important;
		padding: 0!important;
	}
	.anchorNav li:first-child:before,
	.anchorNav li:after{
		display: none;
	}
	.anchorNav li a{
		display: block;
		line-height: 1.4;
		padding: 15px 0;
		background: url(../images/icon_down.png) no-repeat left 10px center;
		background-size:14px auto;
		border-bottom: 1px solid #fff;
	}
	.anchorNav li a:before{
		display: none;
	}
}

/* ========================================
  About
======================================== */
#about {
	padding-top: 80px;
}
#about .sec{
	padding: 85px 0;
}
#about .secTtl{
	color: #c7c7c9;
}
#about .subTtl{
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 25px;
	text-align: center;
}
#about .catch{
	line-height: 2;
	color: #fff;
	margin-bottom: 50px;
	text-align: center;
}
#about .catch .italic{
	display: block;
	margin: 15px 0;
	font-style: italic;
}
#about .annotation{
	line-height: 2;
	color: #f0f0f0;
	margin-bottom: 50px;
	text-align: center;
	font-size: 12px;
}

#about .videoArea{
	margin: auto;
	width: 670px;
	height: 375px;
	position: relative;
}
#about .videoArea iframe{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}
#about .videoCap{
	width: 670px;
	margin: 10px auto 0;
	color: #ccccce;
	font-size: 14px;
}
@media screen and (max-width: 767px){
	#about .sec{
		padding: 50px 4% 40px;
	}
	#about .catch{
		color: #c7c7c9;
		margin-bottom: 30px;
	}
	#about .annotation{
		color: #c7c7c9;
		margin-bottom: 30px;
	}

	#about .videoArea{
		margin: auto;
		width: 100%;
		height: 1px;
		padding-bottom: 56%;
	}
	#about .videoCap{
		width: 100%;
	}
}
/* ========================================
  profile
======================================== */
#profile {
    padding: 85px 0 75px;
}
#profile > .sec {
    padding-top: 85px;
	margin-bottom: 50px;
}
#profile #ev{
	padding: 80px 0 50px;
}
#profile #exterior{
	/* background-color: #fafafa; */
	padding: 80px 0 50px;
}
#profile #interior{
	/* margin: 50px 0 80px; */
	/* margin: 50px 0 0; */
	padding-top: 80px;
}
#profile #ev .num{background-color: #46d78e;}
#profile #exterior .num{background-color: #42be9d;}
#profile #interior .num{background-color: #46d78e;}

#ev .thmbList .bx-pager-item:first-child a{background-image: url(../images/ev_thmb01.jpg);}
#ev .thmbList .bx-pager-item:nth-child(2) a{background-image: url(../images/ev_thmb02.jpg);}
#ev .thmbList .bx-pager-item:nth-child(3) a{background-image: url(../images/ev_thmb03.jpg);}
#ev .thmbList .bx-pager-item:nth-child(4) a{background-image: url(../images/ev_thmb04.jpg);}
#ev .thmbList .bx-pager-item:nth-child(5) a{background-image: url(../images/ev_thmb05.jpg);}
#ev .thmbList .bx-pager-item:nth-child(6) a{background-image: url(../images/ev_thmb06.jpg);}
#ev .thmbList .bx-pager-item:nth-child(7) a{background-image: url(../images/ev_thmb07.jpg);}

#exterior .thmbList3 .bx-pager-item:first-child a{background-image: url(../images/ex_thmb01.jpg);}
#exterior .thmbList3 .bx-pager-item:nth-child(2) a{background-image: url(../images/ex_thmb02.jpg);}
#exterior .thmbList3 .bx-pager-item:nth-child(3) a{background-image: url(../images/ex_thmb03.jpg);}

#interior .thmbList2 .bx-pager-item:first-child a{background-image: url(../images/in_thmb01.jpg);}
#interior .thmbList2 .bx-pager-item:nth-child(2) a{background-image: url(../images/in_thmb02.jpg);}
#interior .thmbList2 .bx-pager-item:nth-child(3) a{background-image: url(../images/in_thmb04.jpg);}
#interior .thmbList2 .bx-pager-item:nth-child(4) a{background-image: url(../images/in_thmb05.jpg);}
#interior .thmbList2 .bx-pager-item:nth-child(5) a{background-image: url(../images/in_thmb06.jpg);}
.slideSet {
	position: relative;
}
.pager1,
.pager2,
.pager3{
	position: absolute;
    transform: translateX(-50%);
    top: 585px;
    left: 50%;
    z-index: 99;
}
/* .pager .bx-pager,
.pager2 .bx-pager,
.pager3 .bx-pager{
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 20px;
	left: 0;
	z-index: 99;
} */
.pager1 .bx-pager-item,
.pager2 .bx-pager-item,
.pager3 .bx-pager-item{
	margin-right: 10px;
	margin-left: 10px;
	display: inline-block;
}
.pager1 .bx-pager-item a,
.pager2 .bx-pager-item a,
.pager3 .bx-pager-item a{
	width: 10px;
	height: 10px;
	background-color: #bfbfbf;
	border-radius: 50%;
	text-indent: -10000px;
	display: block;
	overflow: hidden;
}
.pager1 .bx-pager-item a.active,
.pager2 .bx-pager-item a.active,
.pager3 .bx-pager-item a.active{
	background-color: #595959;
}

@media screen and (max-width: 767px){
	#ev .thmbList .bx-default-pager,
	#exterior .thmbList3 .bx-default-pager,
	#interior .thmbList2 .bx-default-pager {
		display: flex;
		flex-wrap: wrap;
	}
	.thmbList .bx-pager-item {
		margin-right: 0;
		width: 14.3%;
		padding: 0 5px;
	}
	.thmbList2 .bx-pager-item {
		margin-right: 0;
		width: 16.6%;
		padding: 0 5px;
	}
	.thmbList .bx-pager-item a,
	.thmbList2 .bx-pager-item a {
		width: 100%;
		background-position: center center;
	}
	#profile {
    padding: 40px 0;
	}
	#profile > .sec {
			padding-top: 40px;
	}
	#profile #ev{
		margin: 30px 0;
	}
	#profile #exterior{
		background-color: #fafafa;
	}
	#profile #interior{
		margin: 30px 0 40px;
	}
	#profile .boldTtl{
		margin-top: 0;
	}
	.pager1{
		width: 210px !important;
		top: 160px;
	}
	.pager2{
		width: 150px !important;
		top: 160px;
	}
	.pager3{
		width: 90px !important;
		top: 240px;
	}
	#exterior .bx-controls-direction {
		top: 116px !important;
	}
	.pager1 .sec,
	.pager2 .sec,
	.pager3 .sec{
		padding: 0;
	}
	#ev .thmbList .bx-pager-item:first-child a{background-image: url(../images/ev_thmb01.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(2) a{background-image: url(../images/ev_thmb02.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(3) a{background-image: url(../images/ev_thmb03.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(4) a{background-image: url(../images/ev_thmb04.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(5) a{background-image: url(../images/ev_thmb05.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(6) a{background-image: url(../images/ev_thmb06.jpg); background-size: 140px;}
	#ev .thmbList .bx-pager-item:nth-child(7) a{background-image: url(../images/ev_thmb07.jpg); background-size: 140px;}

	#exterior .thmbList3 .bx-pager-item:first-child a{background-image: url(../images/ex_thmb01.jpg); background-size: 140px;}
	#exterior .thmbList3 .bx-pager-item:nth-child(2) a{background-image: url(../images/ex_thmb02.jpg); background-size: 140px;}
	#exterior .thmbList3 .bx-pager-item:nth-child(3) a{background-image: url(../images/ex_thmb03.jpg); background-size: 140px;}

	#interior .thmbList2 .bx-pager-item:first-child a{background-image: url(../images/in_thmb01.jpg); background-size: 140px;}
	#interior .thmbList2 .bx-pager-item:nth-child(2) a{background-image: url(../images/in_thmb02.jpg); background-size: 140px;}
	#interior .thmbList2 .bx-pager-item:nth-child(3) a{background-image: url(../images/in_thmb04.jpg); background-size: 140px;}
	#interior .thmbList2 .bx-pager-item:nth-child(4) a{background-image: url(../images/in_thmb05.jpg); background-size: 140px;}
	#interior .thmbList2 .bx-pager-item:nth-child(5) a{background-image: url(../images/in_thmb06.jpg); background-size: 140px;}
}
/* ========================================
  interview
======================================== */
#interview{
	padding: 85px 0 0;
	background-color: #fafafa;
}
#interview > .sec{
	/* padding-top: 85px; */
}
#interview .pplImg{
	width: 740px;
	margin: 0 auto 60px;
	text-align: center;
}
#interview .pplImg .name{
	margin: 30px 0 10px;
}
[data-ruby] {
	position: relative;
	font-weight: bold;
}
.noBold {
	font-weight:normal;
}
[data-ruby]::before {
	font-weight: normal;
	white-space: nowrap;
	content: attr(data-ruby);
	width: auto;
	position: absolute;
	top: -1.4em;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin: auto;
	font-size: 0.5em;
	text-align: center;
}
#interview .pplImg .cap{
	font-size: 15px;
}
#interview .interviewBlk{
	overflow: hidden;
	margin-bottom: 75px;
}
/*-----interview----*/
#interview .flBox1 .flL{
	width: 340px;
}
#interview .flBox1 .flR{
	width: 615px;
}
#interview .flBox2 .flL{
	width: 460px;
}
#interview .flBox2 .flR{
	width: 500px;
}
/*-----pickup, challenge----*/
#pickup{
	padding: 55px 0 90px;
}
#challenge{
	padding: 0 0 50px;
}
#pickup{
	background-color: #fafafa;
	margin-bottom: 40px;
}
#pickup > .sec,
#challenge > .sec {
    padding-top: 85px;
}
#pickup .bnr,
#challenge .bnr{
	display: block;
	text-align: center;
}
#pickup .bnr a,
#challenge .bnr a{
	border: 1px solid #333333;
	text-align: center;
	padding: 19px 58px 13px 47px;
	background: url(../images/icon_bnr.png) right 20px center no-repeat;
	display: inline-block;
	color: inherit;
	text-decoration: none;
}
#pickup .bnr a:hover,
#challenge .bnr a:hover{
	text-decoration: none;
}
#pickup .bold,
#challenge .bold{
	font-weight: bold;
}
#pickup .mb55,
#challenge .mb55{
	margin-bottom: 55px;
}
#pickup .boldTtl01,
#challenge .boldTtl01{
	font-size: 22px;
	font-weight: bold;
}
@media screen and (max-width: 767px){
	#interview{
		padding: 40px 0 0;
	}
	#interview .sec{
		/* padding-top: 40px; */
	}
	#interview .pplImg{
		width: 100%;
		margin: 0 auto 30px;
	}
	#interview .pplImg .name{
		margin: 20px 0 0;
		line-height: 2.4;
	}
	[data-ruby]::before {
		top: -2em;
	}
	#interview .pplImg .cap{
		font-size: 13px;
	}
	#interview .interviewBlk{
		margin-bottom: 35px;
	}
	/*-----interview----*/
	#interview .flBox1 .flL,
	#interview .flBox1 .flR,
	#interview .flBox2 .flL,
	#interview .flBox2 .flR{
		width: 100%;
	}

	#pickup{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	#challenge{
	}
	#pickup > .sec {
		padding-top: 40px;
	}
	#challenge > .sec {
		padding-top: 40px;
	}
}

/* ========================================
  example
======================================== */
#example{
	padding: 85px 0 75px;
}
#example .sec{
	padding-top: 85px;
}
#example .secTtl{
	margin-bottom: 70px;
}
#example .bnr{
	margin-top: 25px;
}
@media screen and (max-width: 767px){
	#example{
		padding: 40px 0;
	}
	#example .sec{
		padding-top: 25%;
	}
	#example .secTtl{
		margin-bottom: 30px;
	}
	#example .bnr{
		margin-top: 15px;
	}
}
/* ========================================
  recruit
======================================== */
#recruit{
	background: url(../images/bg_recruit.jpg) ,url(../images/bg_recruit_repeat.jpg);
	background-repeat: no-repeat, repeat-y;
	background-position: top left, top 3px left;
	background-size: 100%, 100%;
	padding: 85px 0 130px;
}
#recruit .sec {
	padding-top: 85px;
	text-align: center;
}
#recruit .recTtl{
	color: #fff;
	font-weight: normal;
	font-size: 32px;
	margin-bottom: 40px;
}
#recruit .bnr{
	text-align: center;
}
@media screen and (max-width: 767px){
	#recruit{
		background: url(../images/bg_recruit_sp.jpg) ,url(../images/bg_recruit_repeat_sp.jpg);
		background-size: 100%, 100%;
		background-repeat: no-repeat, repeat-y;
		background-position: top left, top 3px left;
		padding: 40px 0 65px;
	}
	#recruit .sec {
		background:none;
		padding-top: 25%;
	}
	#recruit .recTtl{
		font-size: 22px;
		margin-bottom: 20px;
	}
}

@media print{
	.slideTtl{
		top: 0;
		left: 0;
		opacity: 1;
		text-align: left;
	}
	.fadeBlock{
		opacity: 1;
	}
}

.slideIn{
	animation: none;
}

/* ========================================
  sldLink
======================================== */
.sldLink02{
	color: #333;
	text-decoration: none;
}
.sldLink{
	color: #007ec4;
	text-decoration: underline;
}
/* ===================== contactArea */
#bottomBlock {
	padding-bottom: 40px;
}
#bottomBlock .contactArea{
	margin: 60px auto 0;
	clear: both;
	padding: 35px;
}

#bottomBlock .contactArea .contactBox{
	display: table;
	margin: auto;
	color: #fff;
}

#bottomBlock .contactArea .contactBox li{
	display: table-cell;
	vertical-align: middle;
}

#bottomBlock .contactArea .contactBox li:first-child{
	border-right: 1px solid #fff;
	padding-right: 25px;
}

#bottomBlock .contactArea .contactBox h2{
	text-align: center;
}

#bottomBlock .contactArea .contactBox h2 em{
	color: #fff;
	font-size: 2.9rem;
	font-weight: bold;
}

#bottomBlock .contactArea .contactBox h2 span{
	color: #fff;
}

#bottomBlock .contactArea .contactBox li:last-child{
	padding-left: 30px;
}

#bottomBlock .contactArea .contactBox .txt{
	font-size: 1.6rem;
	line-height: 1.5;
}

#bottomBlock .contactArea .contactBox dl{
	display: table;
	margin-top: 15px;
}

#bottomBlock .contactArea .contactBox dl > *{
	display: table-cell;
	vertical-align: middle;
	padding-left: 10px;
}

#bottomBlock .contactArea .contactBox dt .name{
	display: inline-block;
	border: 1px solid #fff;
	padding: 3px 5px 1px;
}

#bottomBlock .contactArea .contactBox .tel{
	display: inline-block;
	text-decoration: none;
	margin-left: 10px;
	vertical-align: bottom;
}

#bottomBlock .contactArea .contactBox .tel span{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	color: #fff;
	position: relative;
	line-height: 1;
	padding-left: 20px;
}

#bottomBlock .contactArea .contactBox .tel span:before{
	content: '';
	position: absolute;
	display: block;
	background: url(../images/icon_tel17x23.png) no-repeat center;
	top: 50%;
	margin-top: -14px;
	left: 0;
	width: 17px;
	height: 23px;
	background-size: contain;
}

#bottomBlock .contactArea .contactBox .btn a{
	border-radius: 10px;
	text-decoration: none;
	display: block;
	background-image: linear-gradient(to top, #ffffff, #f8f8f9, #f0f1f4, #e8eaef, #e0e4e9);
	padding: 10px 10px 8px 20px;
	position: relative;
	-webkit-box-shadow: 0px 12px 15px -6px rgba(0,0,0,0.87);
	box-shadow: 0px 12px 15px -6px rgba(0,0,0,0.87);
}

#bottomBlock .contactArea .contactBox .btn a span{
	position: relative;
	color: #222;
	font-size: 1.5rem;
	font-weight: bold;
}

#bottomBlock .contactArea .contactBox .btn a svg{
	content: '';
	position: absolute;
	display: block;
	top: 50%;
	margin-top: -7px;
	right: 10px;
	width: 13px;
	height: 11px;
	background-size: contain;
}
.bg_repeat_main {
    background-color: #46d78e !important;
}
@media screen and (max-width:768px){

	#bottomBlock .contactArea{
		margin: 30px auto 0;
		padding: 20px 10px;
	}

	#bottomBlock .contactArea .contactBox{
		display: block;
	}

	#bottomBlock .contactArea .contactBox li{
		display: block;
	}

	#bottomBlock .contactArea .contactBox li:first-child{
		border-right: none;
		padding-right: 0;
	}

	#bottomBlock .contactArea .contactBox h2 em{
		font-size: 2.3rem;
		line-height: 1;
	}

	#bottomBlock .contactArea .contactBox h2 span{
		font-size: 1.3rem;
		padding-bottom: 3px;
		border-bottom: 1px solid #fff;
	}

	#bottomBlock .contactArea .contactBox li:last-child{
		padding-left: 0;
	}

	#bottomBlock .contactArea .contactBox .txt{
		font-size: 1.4rem;
		margin-top: 20px;
	}

	#bottomBlock .contactArea .contactBox dl{
		display: block;
		margin-top: 10px;
	}

	#bottomBlock .contactArea .contactBox dl > *{
		display: block;
		padding-left: 0;
	}

	#bottomBlock .contactArea .contactBox dt{
		position: relative;
		text-align: center;
		border: 1px solid #fff;
		padding: 5px;
	}

	#bottomBlock .contactArea .contactBox dt svg{
		position: absolute;
		display: block;
		top: 50%;
		margin-top: -7px;
		right: 10px;
		width: 13px;
		height: 11px;
		background-size: contain;
	}

	#bottomBlock .contactArea .contactBox dt .name{
		display: block;
		padding: 4px 5px 2px;
		text-align: center;
		border: none;
	}

	#bottomBlock .contactArea .contactBox .tel a{
		display: block;
		margin-top: 10px;
		padding-left: 0;
		text-align: center;
	}

	#bottomBlock .contactArea .contactBox .tel a span{
		font-size: 18rem;
	}

	#bottomBlock .contactArea .contactBox .btn a{
		margin-top: 10px;
		display: block;
		padding: 10px 10px 8px 20px;
		text-align: center;
	}

	#bottomBlock .contactArea .contactBox .btn a span{
		display: block;
		font-size: 1.4rem;
		padding-right: 25px;
	}

	#bottomBlock .contentsBlockMod .contactArea .contactBox .btn a {
		border-radius: 10px;
		background-image: linear-gradient(to top, #ffffff, #f8f8f9, #f0f1f4, #e8eaef, #e0e4e9);
		-webkit-box-shadow: 0px 12px 15px -6px rgb(0 0 0 / 87%);
   		box-shadow: 0px 12px 15px -6px rgb(0 0 0 / 87%);
	}

}/* --- max-width:768px */


/* keyword adjustment */

.keyword .bgGray {
	background: #aaaaaa !important;
}
.keyword .contentsBlock{
	position: relative;
	z-index: 1;
	padding: 60px 0 60px;
}

.keyword .section{
	width: 1000px;
	margin: auto;
}

.keyword .arw_l{
	display: inline-block;
	position: relative;
	padding-left: 20px;
}

.keyword .arw_l:before{
	content: '';
	position: absolute;
	display: block;
	top: 0.4em;
	left: 0;
	width: 8px;
	height: 8px;
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
}

.keyword .arw_l.toRight:before {
	transform: rotateZ( -45deg);
}

.keyword .ttl_bigLine{
	font-size: 3.2rem;
	border-left: 2px solid;
	padding: 7px 0 7px 16px;
	/* margin-top: 3rem; */
}

.keyword a {
	color: #222;
}


@media screen and (max-width: 767px){
	.keyword .ttl_bigLine{
		font-size: 2.3rem;
		padding: 7px 0 7px 15px;
		/* margin-top: 15px; */
	}

	.keyword .contentsBlock{
		padding: 30px 10px 30px;
	}

	.keyword .section{
		width: 100%;
	}
}

.keyword .productBox{
	margin-top: 30px;
}

.keyword .productBox dt{
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	padding: 12px 15px;
}

.keyword .productBox dd{
	padding: 30px 0;
}

.keyword .productBox dd ul{
	display: table;
}

.keyword .productBox dd ul > li{
	display: table-cell;
	vertical-align: middle;
}

.keyword .productBox dd ul > li .img{
	width: 195px;
}

/*
201119 サムネが無い時にテキストの余白が出てしまう為削除
.keyword .productBox dd ul > li:last-child{
	padding-left: 40px;
}
*/
.keyword .productBox dd ul > li:first-child{/*201119 サムネが無い時にテキストの余白が出てしまう為追記*/
	padding-right: 40px;
}

.keyword .productBox dd ul > li .ttl a{
	font-size: 16px;
	font-weight: bold;
	text-decoration: underline;
}
.keyword .productBox dd ul > .ttl a{/*サムネ無しリンクのフォントサイズが反映されない為追記*/
		font-size: 16px;
}
.keyword .productBox dd ul > li .ttl a:hover{
	text-decoration: none;
}

.keyword .productBox dd ul > li .txt{
	margin-top: 10px;
}

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

	.keyword .productBox{
		margin-top: 15px;
	}

	.keyword .productBox dt{
		font-size: 14px;
		padding: 12px 10px;
	}

	.keyword .productBox dd{
		padding: 15px 0;
	}

	.keyword .productBox dd ul{
		display: block;
	}

	.keyword .productBox dd ul > li{
		display: block;
	}
	.keyword .productBox dd ul > li:first-child{
		padding-right: 0;
	}

	.keyword .productBox dd ul > li .img{
		text-align: center;
		padding: calc(100vw * 0.04) 21%;
		width: auto;
	}

	.keyword .productBox dd ul > li:last-child{
		padding-left: 0;
		margin-top: 15px;
	}

	.keyword .productBox dd ul > li .ttl a{
		font-size: 14px;
	}

	.keyword .productBox dd ul > li .txt{
		margin-top: 5px;
		font-size: 13px;
	}

	}/* --- max-width:768px */
	.toTop.fixed a  {
		z-index: 999;
	}

/* 220623 */
.div_ttl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.div_ttl h2 span.ttl_icon img {
	width: auto;
	margin-left: 20px;
}
.div_ttl .sub_ttl {
	width: 65%;
}
@media screen and (max-width:768px){
	.div_ttl h2 span.ttl_icon img {
		width: 37px;
	}
	.div_ttl .sub_ttl {
		width: 100%;
		margin-top: 10px;
	}
}


	/* ############################### linkList */

.linkList {
	overflow: hidden;
}
.linkList li {
	float: left;
}
.linkList li a {
	display: block;
	margin-right: 20px;
	padding: 8.6px 10px 8.6px 35px;
	border: 1px solid #bfbfbf;
	box-sizing: border-box;
	width: 180px;
	text-decoration: none !important;
	position: relative;
	font-size: 1.4rem;
}
.linkList li a:before {
	display: inline-block;
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotateZ( 45deg );
	left: 15px;
	border-right: 3px solid;
	border-bottom: 3px solid;
	background-size: contain;
	width: 10px;
	height: 10px;
}
.linkList li:last-child a {
	margin-right: 0;
}

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

	.linkList li {
		width: 49%;
		margin-bottom: 2%;
	}
	.linkList li a {
		width: auto;
		margin-right: 0;
	}
	.linkList li:nth-child(odd) {
		margin-right: 1%;
	}
	.linkList li:nth-child(even) {
		margin-left: 1%;
	}

	/* tab */
	.contentsBlock .tabArea .tabMenu {
		display: table;
	}
	.contentsBlock .tabArea .tabMenu li {
		border: 1px solid #46d78e !important;
	}
	.contentsBlock .tabArea.ver2 .tabMenu li a {
		border-bottom: 0;
	}
	.contentsBlock .tabArea .tabSelect {
		display: none;
	}

	}/* --- max-width:768px */

	@media screen and (max-width:480px){
		.linkList li,
		.linkList li:nth-child(odd),
		.linkList li:nth-child(even) {
			width: 100%;
			margin: 0 0 2% 0;
		}
	}

/* 220623 ico_color */
.ico_tag {
	display: inline-block;
	width: 92px;
	padding: 6px 10px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.7;
	margin-left: 10px;
	vertical-align: bottom;
	text-align: center;
	text-indent: 0;
}

.ico_tag.ico_orange {
	background: #F17D49;
}

.ico_tag.ico_green {
	background: #38AB9F;
}

.ico_tag.ico_blue {
	background: #0764D1;
}

.ico_tag.ico_yellow {
	background: #FFC000;
}

/* 220623 col */
/* pc_col2 sp_col1 */
.imgtxt_col_2_1 {
	display: flex !important;
	justify-content: space-between;
}
.imgtxt_col_2_1 .cnt_1 {
	width: 53%;
}
.imgtxt_col_2_1.img_right .cnt_1 {
	order: 2;
}
.imgtxt_col_2_1 .cnt_2 {
	width: 45%;
}
.imgtxt_col_2_1.img_right .cnt_2 {
	order: 1;
}
/* 220623 sustainability */
#sustainability {
	margin-bottom: 40px;
	padding: 55px 0 90px;
}
#sustainability .sec {
	padding-top: 125px;
}
#sustainability .slideTtl {
	left: 0;
}
@media screen and (max-width:767px) {
	#sustainability {
		margin-bottom: 20px;
		padding: 20px 0;
	}
	#sustainability .sec {
		/* padding-top: 85px; */
		padding-top: 18%;
	}
	#sustainability .slideTtl {
		width: 92%;
		left: 0;
		right: 0;
		margin: auto;
	}
	.imgtxt_col_2_1 {
		flex-wrap: wrap;
	}
	.imgtxt_col_2_1 .cnt_1,
	.imgtxt_col_2_1 .cnt_2 {
		width: 100%;
	}
	.imgtxt_col_2_1 .cnt_1 p {
		margin-bottom: 10px;
	}.imgtxt_col_2_1 img {
		width: 100%;
		margin: 0 auto;
	}
	.imgtxt_col_2_1.img_right .cnt_1 {
		order: 1;
	}
	.imgtxt_col_2_1.img_right .cnt_2 {
		order: 2;
	}
	.tabArea.ver2 .tabMenu li a {
		padding: 15px 5px;
		font-size: 1.1rem;
	}
	.tabArea .tabMenu li a {
		font-size: 1.1rem;
	}
}
.fadeBlock .secTtl {
	position: relative;
	z-index: 1;
}

/* @media screen and (max-width: 1200px){
.tybHeader .hLinks.modify .nav > ul.buttonBox > li {
    width: 30%;
    height: 40px;
    justify-content: center;
}
.tybHeader .hLinks.modify .nav > ul.buttonBox {
    flex-wrap: wrap;
}
    
.tybHeader .hLinks.modify .nav > ul.buttonBox li{
    padding: 0 20px 0 0;
}

@media screen and (max-width: 475px){
.tybHeader .hLinks.modify .nav > ul.buttonBox > li {
    width: 100%;
    padding-left: 47px;
}
.tybHeader .hLinks.modify .nav > ul.buttonBox {
    flex-wrap: wrap;
}
    
.tybHeader .hLinks.modify .nav > ul.buttonBox li{
    padding: 0 20px 0 0;
}



}

@media screen and (min-width: 768px) and (max-width: 1024px){
.tybHeader .hLinks {
    float: none;
}
} */