@charset "utf-8";

/* common
-----------------------------------------------------------------*/
#Content .content-header .inside{
	background: url(../img/bg_header.png) no-repeat 0 0;
}

#Main{
	padding: 100px 0 40px;
}
.staffComment{
	padding: 50px 0 0 0;
}
#Main .staff-list{
	overflow: hidden;
	margin: -82px auto 0;
	width: 90%;
}
#Main .staff-list li a{
	color: #333;
	display: block;
	text-decoration: none;
}
#Main .staff-list li{
	float: left;
	margin: 82px 3% 0;
	width: calc((100% / 3) - 6%);
}
#Main .staff-list .wrap{
	overflow: hidden;
	width: 100%;
}
#Main .staff-list li img{
	height: auto;
	transition: .2s linear;
	width: 100%;
}
#Main .staff-list li a:hover img{
	opacity: .7;
}
#Main .staff-list dt{
	font-size: 87%;
	margin-top: 10px;
}
#Main .staff-list dt span{
	display: block;
	font-size: 125%;
	font-weight: bold;
}
#Main .staff-detail dt span{
	display: block;
	font-size: 150%;
	font-weight: bold;
}
#Main .staff-list dt span i,
#Main .staff-detail dt span i{
	display: inline-block;
	font-size: 87%;
	font-weight: normal;
	margin-right: 10px;
	vertical-align: bottom;
}
#Main .staff-list dd{
	margin-top: 10px;
}
#Main .staff-detail dd{
	margin-top: 14px;
}
#Main .staff-list dd h3{
	background-color: #00a7ea;
	color: #fff;
	display: inline-block;
	font-size: 75%;
	padding: 2px 10px 1px 8px;
}
#Main .staff-detail dd h3{
	background-color: #00a7ea;
	color: #fff;
	display: inline-block;
	font-size: 100%;
	padding: 2px 8px 1px 8px;
	margin-top:5px;
}
#Main .staff-list dd p{
	font-size: 88%;
	margin-top: 2px;
	word-break: break-all;
	word-wrap: break-word;
}
#Main .staff-detail dd p{
	margin-top: 16px;
}
#Main .staff-list dd p span,
#Main .staff-detail dd p span{
	display: inline-block;
}

#lab-ttl{
	width:65%;
	margin:-75px auto 20px auto;
}

#lab-ttl .staff-detail{
	margin: -75px auto 0;
	width: 100%;
}
#lab-ttl .staff-detail li{
	float: left;
	margin: 75px 3% 0;
	width: calc((100% / 2) - 6%);
}

#lab-ttl h2{
    font-size: 225%;
    font-weight: bold;
    padding: 0 0 20px;
	padding-left:63px;
	background:url("../img/h2-title.png") no-repeat 18px 9px;
	background-size: 39px;
}

article section{
	padding-bottom: 40px;
}
article section.or{
	background-color: #fdeace;
}
article section.bl{
	background-color: #e7f7fd;
	margin-bottom:-40px;
}
article section .no{
	background: url(/common/img/bg_arw03.png) no-repeat 0 0;
	color: #fff;
	font-size: 163%;
	font-weight: bold;
	height: 110px;
	line-height: 30px;
	margin: 0 auto;
	padding-top: 20px;
	text-align: center;
	width: 260px;
}
article section .insideContents,
article section .insideContents02,
article section .insideContents03{
    margin: 16px auto 0;
    width: 80%;
}
article section .insideContents:first-child,
article section .insideContents02:first-child,
article section .insideContents03:first-child{
	padding-top:40px;
}
article section .insideContents img,
article section .insideContents02 img,
article section .insideContents03 img{
	margin:0px 8px 5px 0px;
}
article section .insideContents .label{
	background-color: #f7940c;
	color: #fff;
	display: inline-block;
	font-size: 100%;
	padding: 2px 8px 1px 8px;
	margin-top:5px;
}
article section .insideContents02 .label{
	background-color: #ff0000;
	color: #fff;
	display: inline-block;
	font-size: 100%;
	padding: 2px 8px 1px 8px;
	margin-top:5px;
}
article section .insideContents03 .label{
	background-color: #00A7EA;
	color: #fff;
	display: inline-block;
	font-size: 100%;
	padding: 2px 8px 1px 8px;
	margin-top:5px;
}
article .img{
	margin: 25px auto 0;
	text-align: center;
	width: 80%;
}
article .img img{
	height: auto;
	width: 100%;
}
article section h4{
	font-size: 188%;
	line-height:137%;
	background: url(../img/h2-title.png) no-repeat 0.1% top;
	background-size: 35px;
    margin: 50px auto 0;
    width:77%;
    padding-left:40px;
}

article section h5:before{
	color: #00A7EA;
	content: "▶";
	margin-right: 5px;
}
article section h5{
	font-size: 144%;
	line-height:120%;
    margin: 50px auto 0;
    padding-left:1.5em;
    text-indent: -1.5em;
    width:75%;
}

article .lead{
	margin: 40px auto 0;
	width: 80%;
}
article .lead02{
	margin: 20px auto 0;
	width: 80%;
}
article .list{
	margin: 40px auto 0;
	width: 80%;
}
article .list dd span{
	display: inline-block;
	margin-right: .5em;
}
article .list dt{
	font-weight: bold;
}
article .link{
	text-align: center;
}
article .link a{
	border: 1px solid #000;
	box-sizing: border-box;
	color: #000;
	font-size: 113%;
	display: inline-block;
	margin-top: 20px;
	min-width: 80%;
	padding: 8px 40px;
	text-decoration: none;
	transition: background-color .2s linear, color .2s linear;
}
article .link a:hover{
	background-color: #00a7ea;
	border-color: #00a7ea;
	color: #fff !important;
}
article .insideContents li,
article .insideContents02 li,
article .insideContents03 li{
	padding-left: 1.5em;
	text-indent: -1.5em;
}
article .insideContents li:not(:first-child),
article .insideContents02 li:not(:first-child),
article .insideContents03 li:not(:first-child){
	margin-top: 5px;
}
article .insideContents li:before{
	color: #f7940c;
	content: "▶";
	margin-right: 5px;
}
article .insideContents02 li:before{
	color: #ff0000;
	content: "▶";
	margin-right: 5px;
}


#Main .staff-book{
	margin: -65px auto 0;
	width: 80%;
}
#Main .staff-book li{
	text-align:center;
	padding:5px;
	font-size:90%;
	line-height:150%;
}
#Main .staff-book li a{
	display: block;
	min-height:225px;
	max-height:300px;
}
#Main .staff-book li{
	float: left;
	margin: 85px 3% 0;
	width: calc((100% / 4) - 7.5%);
}
#Main .staff-book li:nth-child(n + 5){
	margin: 30px 3% 0;
}
#Main .staff-book .wrap{
	overflow: hidden;
	width: 100%;
	margin-bottom:16px;
}
#Main .staff-book li img{
	transition: .2s linear;
}
#Main .staff-book li a:hover img{
	opacity: .7;
}
#Main .staff-book dt{
	font-size: 87%;
	margin-top: 10px;
}
#Main .staff-book dt span{
	display: block;
	font-size: 125%;
	font-weight: bold;
}
#Main .staff-book dd{
	margin-top: 10px;
}
#Main .staff-book dd p{
	font-size: 88%;
	margin-top: 2px;
	word-break: break-all;
	word-wrap: break-word;
}
#Main .staff-book dd p span{
	display: inline-block;
}

/* overwrite */
article .outline {
    margin: 0 auto;
    position: relative;
    width: 80%;
}
.swiper-container{
	width: 100% !important;
}
#Main .swiper-button-prev{
	background-image: none !important;
	background-color: #aaa;
	border-radius: 25px;
	color: #fff;
	display: block;
	font-weight: bold;
	height: 50px;
	left: -25px;
	line-height: 50px;
	margin-top: -25px;
	text-align: center;
	-webkit-transition: background-color .2s linear;
	transition: background-color .2s linear;
	width: 50px;
}
#Main .swiper-button-next{
	background-image: none !important;
	background-color: #aaa;
	border-radius: 25px;
	color: #fff;
	display: block;
	font-weight: bold;
	height: 50px;
	line-height: 50px;
	margin-top: -25px;
	right: -25px;
	text-align: center;
	-webkit-transition: background-color .2s linear;
	transition: background-color .2s linear;
	width: 50px;
}
.swiper-button-prev:hover{
	background-color: #00a7ea;
}
.swiper-button-next:hover{
	background-color: #00a7ea;
}
.swiper-pagination{
	bottom: 0 !important;
	left: auto !important;
	right: 20px !important;
	text-align: right;
}
.swiper-pagination-bullet{
	background: #fff;
	opacity: .8;
}
.swiper-pagination-bullet-active{
	background: #00a7ea !important;
	opacity: 1;
}
/* for tb
-----------------------------------------------------------------*/
@media screen and (max-width: 979px){
	#Main{
		padding: 40px 0;
	}
	#Main .staff-list,
	#Main .staff-book,
	#lab-ttl .staff-detail{
		width: 90%;
	}
	#Main .staff-list li a:hover img,
	#Main .staff-book li a:hover img,
	#lab-ttl .staff-detail li a:hover img{
		opacity: 1;
	}
}

/* for tb - sp
-----------------------------------------------------------------*/
@media screen and (max-width: 767px){
	.swiper-button-prev{
		display: none;
	}
	.swiper-button-next{
		display: none;
	}
	.swiper-pagination{
		text-align: center;
		right: 0 !important;
	}
	.swiper-pagination-bullet{
		height: 20px;
		width: 20px;
	}
	#lab-ttl{
		margin:0px auto;
	}
	#Main .staff-list,
	#Main .staff-book,
	#lab-ttl .staff-detail{
		margin-top: -40px;
	}
	#Main .staff-list li,
	#Main .staff-book li,
	#lab-ttl .staff-detail li{
		margin: 40px 2% 0;
		width: calc((100% / 1) - 4%);
	}
	#Main #lab-ttl h2{
	    font-size: 135%;
		padding-left:46px;
		background:url("../img/h2-title.png") no-repeat 18px top;
		background-size: 23px;
	}
	#Main .staff-detail dt span{
		font-size: 125% !important;
		line-height:130%;
		font-weight: bold;
	}
	article section h4{
		font-size: 125% !important;
		font-weight: bold;
		background: url(../../staff/img/h2-title.png) no-repeat 0 top;
		background-size: 25px;
	    margin: 20px auto 20px;
	    padding-left:28px;
		width: 85%;
	}
	article section h5{
		font-size: 115% !important;
		font-weight: bold;
	    margin: 30px auto 20px;
		width: 80%;
	}
	#Main .staff-book{
		margin: -25px auto 0;
	}
	article .lead,
	article .lead02{
		margin-top: 20px;
		width: 90%;
	}
	.inside .img{
		height: auto;
		width: 90%;
	}
	#Main .swiper-button-prev{
		display: none;
	}
	#Main .swiper-button-next{
		display: none;
	}
	#Main .swiper-pagination{
		text-align: center;
		right: 0 !important;
	}
	#Main .swiper-pagination-bullet{
		height: 20px;
		width: 20px;
	}
	#Main .lead-box{
		padding: 20px 10px;
	}
	#Main .local-navi{
		padding: 10px 0;
	}
	section .img img,
	section .outline img{
		height: auto;
		width: 100%;
	}
	section .outline{
		width: 90%;
	}
	#lab-ttl h2{
		line-height:120%;
		margin-bottom:20px;
		padding:0 0 0 67px;
		background:url("../img/h2-title.png") no-repeat 20px top;
		background-size: 40px 40px;
	}
}

/* for sp
-----------------------------------------------------------------*/
@media screen and (max-width: 479px){
	#lab-ttl{
		margin:-10px auto 0 auto;
		width: 90%;
	}
	#lab-ttl h2{
		line-height:120%;
		margin-bottom:50px;
		padding:0 0 0 67px;
		background:url("../img/h2-title.png") no-repeat 20px top;
		background-size: 40px 40px;
	}
	#Main .staff-list,
	#Main .staff-book{
		text-align: center;
	}
	#Main .staff-list li,
	#Main .staff-book li{
		float: none;
		margin: 40px auto 0 !important;
		text-align: center;
		width: 80%;
	}
	#lab-ttl .staff-detail li{
		float: none;
		margin: 40px auto 0 !important;
		width: 95%;
	}
	#Main .staff-list .wrap,
	#Main .staff-book .wrap{
		height: auto;
		width: 100%;
	}
	#Main .staff-list li img{
		height: auto;
		width: 100%;
	}
	#Main .staff-img img{
		height: auto;
		width: 100%;
	}
	#Main .staff-list dt span i{
		display: block;
		font-size: 87%;
		font-weight: normal;
		margin: 0 0 -5px 0;
	}
	article section h4{
		font-size: 125% !important;
		font-weight: bold;
		background: url(../../staff/img/h2-title.png) no-repeat 0 top;
		background-size: 25px;
	    margin: 20px auto 20px;
	    padding-left:29px;
		width: 83%;
	}
}