@charset "UTF-8";

	#contentsBox {
		background-color: #ffffff;
		width: 100%;
		min-height: 100%;
		
	}
	#header {
		width: 100%;
		
	}
	#under {
		width: 100%;
	}

	/* ホバー */
	.mouseHvr {
		opacity: 1;
	}

	.mouseHvr:hover {
		opacity: 0.7;
	}
	/* ホバー */
	.mouseHvrB {
		/*opacity: 1;*/
		margin-left: 15px;
		-webkit-transition: .3s ease-in-out;
		 transition: .3s ease-in-out;
		filter: grayscale(33%);
	}

	.mouseHvrB:hover {
		/*opacity: 0.7;*/
		margin-left: 0;
		filter: grayscale(0%);
	}
	#under {
		background-color:#F7FFFA;
		width:100%;
	}
	#under h2{
	color:#069;
	font-size : 28px;
	text-align: center;
	line-height: 200%;
	}
	#undertext{
		padding-left:1%;

	}
	#undertext h2{
	font-size : 28px;
	text-align: left;
	line-height: 200%;
	}

	#under h3{
		color:#333;
		font-size : 18px;
		margin-top:100px; 
	}

	.msArea {
	background-color: #FDFBCE;
	padding-bottom: 45px;
	width:100%;
	clear:both;
	}
	.photoArea {
		background-color: #fff;
		padding-top: 20px;
		padding-bottom: 45px;
		width:100%;
		clear:both;
	}
	#under h1{
	font-weight:550;
	text-align: center;
	line-height:400%;
	margin: 18px;

	}
	.photos{
		margin:0 auto;
		width:85%;
		max-width:1250px;
		min-width:320px;
	}
	.photos4{
		margin:0 auto;
		width:100%;
		max-width:1400px;
		min-width:320px;
	}
	.photos4 ul , .photos ul{
		position: relative;
		float: left;
		padding-bottom: 50px;
		text-align: center;
  	}

	.photos img , .photos4 img{
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
		-webkit-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		opacity: 0.7;
		z-index:0;
	}
	.photos img:hover , .photos4 img:hover{
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		display: block;
	}
	.aboutimg{
		margin:0 auto;
		width:85%;
		max-width:1250px;
		min-width:320px;
		margin-bottom:15px;
	}
	.photosunder{
		margin:0 auto;
		width:85%;
		max-width:1250px;
		min-width:320px;
	}
	.photosunder ul{
		position: relative;
		float: left;
		padding-bottom: 50px;
		text-align: center;
  	}

	.photosunder img{
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
		-webkit-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		opacity: 0.7;
		z-index:0;
	}
	.photosunder img:hover{
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		display: block;
	}
		.MSphoto{
		margin:0 auto;
	}		
	.MSphoto img{
	display:block;
	max-width:100%;
	height:auto;
	margin: 0 auto;
		}
	
	.back {
		clear:both;
		
		
	}

	.back:before {
		position: absolute;
		padding: 10px;
	}
	
	.button_base {
		margin: 0;
		border: 0;
		position: relative;
		top: 50%;
		left: 50%;
		margin-top: -25px;
		margin-left: -150px;
		width: 300px;
		height: 50px;
		text-align: center;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-user-select: none;
		cursor: default;
	}
	
	.button_base:hover {
		cursor: pointer;
	}
	
	.infobtn {
	overflow: hidden;
	border: #000000 solid 1px;
	font-size:100%;
	}
	
	.infobtn div {
		position: absolute;
		text-align: center;
		width: 100%;
		height: 50px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		padding: 10px;
	}
	
	.infobtn div:nth-child(1) {
		color: #000000;
		background-color: #ffffff;
	}
	
	.infobtn div:nth-child(2) {
		background-color: #000000;
		width: 230px;
		transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		transform: translate(-250px, 0px) skewX(-30deg);
		-webkit-transform: translate(-250px, 0px) skewX(-30deg);
		-moz-transform: translate(-250px, 0px) skewX(-30deg);
	}
	
	.infobtn div:nth-child(3) {
		color: #ffffff;
		left: -200px;
		transition: left 0.2s ease;
		-webkit-transition: left 0.2s ease;
		-moz-transition: left 0.2s ease;
	}
	
	.infobtn:hover div:nth-child(2) {
		transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		transform: translate(-15px, 0px) skewX(-30deg);
		-webkit-transform: translate(-15px, 0px) skewX(-30deg);
		-moz-transform: translate(-15px, 0px) skewX(-30deg);
	}
	
	.infobtn:hover div:nth-child(3) {
		left: 0px;
		transition: left 0.30000000000000004s ease;
		-webkit-transition: left 0.30000000000000004s ease;
		-moz-transition: left 0.30000000000000004s ease;
	}
	.afield{
	width:50%;
	margin:0 auto;
	font-weight: 700;
	color: #666;
	text-align: center;
	}
	.bfield{
	width:50%;
	max-width:900px;
	min-width:320px;
	margin:0 auto;
	
	}
	.bfield ul{
		text-align: center;
	}	
	.bfield li{
		width:45%;
		padding: 10px;
		min-width:300px;
		background-color: #fff;
		box-shadow: 0 0 25px 4px rgba(0, 0, 0, 0.1);
		transition: opacity .5s,box-shadow .5s;
		flex-grow: initial;
		flex-basis: initial;
		float:left;
	}

	.bfield li img{
		margin:0 auto;
	}
	
	li a:focus, a:hover{
	color: #CCC;
	text-decoration: none;
	}
	.cfield{
		width:55%;
		margin:0 auto;
		font-weight: 600;
		color: #666;
		margin-top:50px;
	
	}
	.cfield span,.dfield span {
		font-weight: 500;
		font-size: 16px;
	}	
	.cfield li{
		list-style:none;
		display:inline;
		border-bottom:dotted #CCC 2px;
	}
	.dfield{
		width:40%;
		margin:0 auto;
		font-weight: 600;
		color: #666;
	
	}
	.efield{
	width:70%;
	margin:0 auto;
	font-weight: 600;
	color: #666;
	margin-top:60px;
	
	
	}

	.cfield li a:before{
		content: "　";
	}
	.cfield li a:hover{
		color: #666;
	}
	.dfield table{
        width: 100%;
    }
	.dfield input{
        width: 30%;
		margin:0 auto;
    }
	input[type="text"],textarea {
		padding: 0.8em;
		outline: none;
		border: 1px solid #DDD;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		font-size: 16px;
	}
	textarea {
		width: 70%;
	}
	input[type="text"] {
		-webkit-transition: all .3s;
		-moz-transition: all .3s;
		transition: all .3s;
		width: 70%;
	}
	input[type="submit"] {
		
		margin:0 auto;
		text-align:center;
		border-radius: 0;	
		background: -moz-linear-gradient(top, #FFF 0%, #EEE);
		background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
		border: 1px solid #DDD;
		padding: 10px 30px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		color: #000;
	}
	input[type="submit"]:hover {
		background: -moz-linear-gradient(top, #EFEFEF 0%, #EEE);
		background: -webkit-gradient(linear, left top, left bottom, from(#EFEFEF), to(#EEE));
	}
	.square_btn{
		margin:10px;
		display: inline-block;
		padding: 0.5em 1em;
		text-decoration: none;
		background: #040d82;/*ボタン色*/
		color: #FFF;
		border-bottom: solid 4px #627295;
		border-radius: 3px;
	}
	


	/* タブレット */
		
@media screen and (max-width: 1203px) and (min-width: 768px) {
	#pcNav {
		left: 0;
		position: absolute;
		display: block;
		width: 100%;
		height: 100px;
		background-color:#468DCF;
		z-index: 100;
	}
	#spNavHeader,#spNav {
		display: none;
	}
	#spmain,#spline {
		display: none;
	}
	#subNav {
		padding-top: 20px;
		padding-left:350px;
		margin: 0 auto;
		max-width:720px;
	}
	#subNav li {
		float: left;
	}
	#subNav li > a{
		font:"Arial Black", Gadget, sans-serif;
		font-size:80%;
		font-weight:700;
		color:#FFF;
		transition:opacity .8s;
		display: block;
		padding: 5px;
		color: #fff;
		opacity:0.8;
	}	

	#headerInner {
		height: 100px;
		position: relative;
	}
	
	#headerInner h1 {
		top: 0;
		float: left;
		left: 0;
	}
	.newsArea table{
		background-color:#fff;
		margin:3px;
		float:left;
		width:29%;
		font-size:70%;
	}
	.newsArea table th{
		padding: 5px;
	}	
	.newsArea table td{
		padding: 5px;
	}	
	.photos{
		margin:0 auto;
		width:88%;
		max-width:750px;
		min-width:400px;
	}
	.photos li{
		overflow: hidden;
		background: #000;
		margin-right: 15px;
		float:left;
		position: relative;
		height:auto;
		width: 30%;
	}
	.photos li:nth-of-type(3n){
		margin-right: 0px;
	}
	.photos .text {
		font-size:	90%;
		font-weight:700;
		text-align:	center;
		bottom:		30%;
		padding:	0;
		color:		#fff;
		background:	rgba(0,0,0,0.3); /* 帯の透明度 */
		position:	absolute; /* 絶対位置 */
		z-index:1;
	}
	.photosunder{
		margin:0 auto;
		width:88%;
		max-width:750px;
		min-width:400px;
	}
	.photosunder li{
		overflow: hidden;
		background: #000;
		margin-right: 15px;
		float:left;
		position: relative;
		height:auto;
		width: 30%;
	}
	.photosunder li:nth-of-type(3n){
		margin-right: 0px;
	}
	.photosunder .text {
		font-size:	90%;
		font-weight:700;
		text-align:	center;
		bottom:		30%;
		padding:	0;
		color:		#fff;
		background:	rgba(0,0,0,0.3); /* 帯の透明度 */
		position:	absolute; /* 絶対位置 */
		z-index:1;
	}
	.afield,.cfield,.dfield,efield{
	width:90%;
	
	}

	.bfield{
		width: 100%;
	}

	.bfield li{
		margin-right:15px;
	}
	
	#main {
		padding-top:150px;
		
	}
	.recruitAreaSp{
		display: none;
	}
		.cfield,.dfield{
	width:80%;
	margin:0 auto;
	font-weight: 600;
	color: #666;
	}
}

@media screen and (max-width: 1203px) and (min-width: 1054px) {
		#subNav li > a:after {
		content: "";
		width: 1px;
		height: 20px;
		background: #ddd;
		position: absolute;
		top: 30px;
		margin-left:5px;
	}
}
@media screen and (min-width: 1204px) {
	
	

	#header {
		width: 100%;
		height: 100px;
	}
	#pcNav {
		line-height:50px;
		float:left;
		position:fixed;
		display: block;
		width: 100%;
		height: 100px;
		text-align:center;
		background-color:#468DCF;
		z-index: 100;
	}
	
	#headerInner {
		height: 100px;
		position: relative;
	}
	
	#headerInner h1 img{
		top: 0;
		float: left;
		left: 0;
		display:block;
	}
	
	#subNav {
		padding-top: 40px;
		margin: 0 auto;
		width:100%;
		max-width:1350px;
		margin-left:350px;
	}
	#subNav li {
		float: left;
	}


	#subNav li > a:after {
		content: "";
		width: 1px;
		height: 20px;
		background: #ddd;
		position: absolute;
		top: 70px;
		margin-left:13px;
	}
	#subNav li > a{
		font:"Arial Black", Gadget, sans-serif;
		font-size:100%;
		font-weight:700;
		color:#FFF;
		transition:opacity .8s;
		display: block;
		padding: 15px;
		color: #fff;
		opacity:0.8;
	}	
	#main {
		
		width: 100%;
		height: auto;
		
		margin:0 auto;
	}
	#spmain,#spline{
		display: none;
	}
	#spNav{
		display: none;
	}
	#mainImg {
		width: 100%;
		padding-top: 40px;
		line-height: 0;
	}
	

	/*コンテンツ*/
	.msArea{
		height:auto;
	}
	.photos4 li {
		overflow: hidden;
		background: #000;
		margin-right: 8px;
		float:left;
		position: relative;
		height:190px;
		width: 23%;
	}
	 .photos li{
		overflow: hidden;
		background: #000;
		margin-right: 15px;
		float:left;
		position: relative;
		height:210px;
		width: 31%;
	}
	.photos li:nth-of-type(4n) , .photos4 li:nth-of-type(4n){
		margin-right: 0px;
	}
	.photos .text , .photos4 .text {
		font-size:	120%;
		font-weight:700;
		text-align:	center;
		bottom:		15%;
		padding:	0;
		color:		#fff;
		background:	rgba(0,0,0,0.5); /* 帯の透明度 */
		position:	absolute; /* 絶対位置 */
		z-index:1;
	}
	.photosunder li{
		overflow: hidden;
		background: #000;
		margin-right: 33px;
		float:left;
		position: relative;
		height:200px;
		width: 30%;
	}
	.photosunder li:nth-of-type(3n){
		margin-right: 0px;
	}
	.photosunder .text {
		font-size:	120%;
		font-weight:700;
		text-align:	center;
		bottom:		15%;
		padding:	0;
		color:		#fff;
		background:	rgba(0,0,0,0.5); /* 帯の透明度 */
		position:	absolute; /* 絶対位置 */
		z-index:1;
	}	.afield{
		width:50%;
	
	}

	.bfield{
		width: 70%;
	}
	.bfield li{
		margin-right:30px;
	}
	.bfield li:nth-of-type(2n){
		margin-right: 0px;
	}
	
	#pageTop {
		width: 90%;
		height: 44px;
		margin: 0 auto;
		position: relative;
	}
	
	#pageTop p {
		width: 56px;
		line-height: 0;
		position: absolute;
		top: 0;
		right: 0;
	}
	
	.pcListLink {
	width: 160px;
	margin: 15px auto;
	line-height: 0;
	}
	
	.spListLink {
		display: none;
	}

	#under h1{
		color:#666;
		font-size : 15px;
		padding-top:50px;
    	line-height : 350%;
	}
	
	
}

/*{　スマートフォン用CSS記述　}*/

@media screen and (max-width:767px)

{
	body{font-size: 3.5vw;}
	h1{ font-size::7.2vw;float:none;}
	h2{ font-size:6vw;}
	header{position: relative;}

	#pcNav,#banner02 {
		display: none;
	}
	#spNavHeader {
		width: 100%;
		background-color: #333;
	}
	
	#spMenuBtn {
		max-width: 46px;
		cursor: pointer;
		position: absolute;
		top: 15px;
		right: 2%;
		z-index: 2;
	}
	
	#spMenuBtn img {
		width: 100%;
		height: auto;
	}

	#spNav h1 {
		max-width: 210px;
		padding: 0 10px 10px;
		line-height: 0;
	}
	
	#spNav h1 img {
		width: 100%;
		height: auto;
	}
	
	#spNav {
		position:fixed;
		width:100%;
		height:50px;
		top:0;
		left:0;
		background:#FFF;
		border-bottom:1px solid #000;
		z-index:100;
	
	}
	
	.spmenu_btn {
		display:block;
		position:absolute;
		top:14px;
		right:15px;
		width:30px;
		height:22px;
		background:#000;
		border-top:10px solid #fff;
		border-bottom:10px solid #fff;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		-moz-transition:all 0.3s;
		-webkit-transition:all 0.3s;
		transition:all 0.3s;
	}
	.spmenu_btn:before {
		content:'';
		position:absolute;
		width:30px;
		height:2px;
		background:#000;
		top:-9px;
		right:0;
		-moz-transition:all 0.3s;
		-webkit-transition:all 0.3s;
		transition:all 0.3s;
	}
	.spmenu_btn:after {
		content:'';
		position:absolute;
		width:30px;
		height:2px;
		background:#000;
		bottom:-9px;
		right:0;
		-moz-transition:all 0.3s;
		-webkit-transition:all 0.3s;
		transition:all 0.3s;
	}
	.spmenu_btn.active {
		background:#FFF;
	}
	.spmenu_btn.active:before {
		-moz-transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
		transform:rotate(-135deg);
		top:0;
		right:0;
	}
	.spmenu_btn.active:after {
		-moz-transform:rotate(135deg);
		-webkit-transform:rotate(135deg);
		transform:rotate(135deg);
		bottom:0;
		right:0;
		
	}
	 
	.spmenu {
		display:none;
		position:absolute;
		top:51px;
		left:45%;
		width:100%;
		background:#333;
		
	}
	nav {
		display:block;
		width:100%;
		float:right;
	}
	nav li a {
		display:block;
		color:#FFF;
		padding:15px;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		position:relative;
		border-bottom:1px solid #999;
	}

	#under {
		width: 100%;
		background-color:#F7FFFA;
	}
	.msArea {
		
		padding-top: 50px;
		padding-bottom: 10px;
	
	}
	.afield{
		width: 80%;
	}

	.bfield{
		width: 95%;
	}

	.bfield li{
		margin-right:0px;
		width:90%;
	}
	
	input[type="text"],textarea,input[type="submit"] {
		width: 90%;
	}
	.cfield,.dfield,.efield{
	width:90%;
	
	}
    table th,
    table td {
        display: block;
    }	
	#spBanner {
		width: 96%;
		max-width: 570px;
		margin: 0 auto 10px;
		line-height: 0;
	}
	
	#spBanner img {
		width: 100%;
		height: auto;
	}
	
	.spNavClose {
		width: 96%;
		max-width: 570px;
		margin: 0 auto;
		padding-bottom: 10px;
		line-height: 0;
	}
	
	.spNavClose img {
		width: 100%;
		height: auto;
	}
	#main {
		display: none;
	}
	#spmain img{
		width: 100%;
		height: auto;
		position: relative;
		margin-top:50px;
	}

	#under .newsArea table{
		background-color:#fff;
		margin:10px;
		float:left;	
	}
	.msArea .photos{
		margin:0 auto;
		width:90%;
		max-width:750px;
		min-width:320px;
	}
	.msArea .photos li{
		overflow: hidden;
		background: #000;
		margin: 15px;
		float:left;
		position: relative;
		height:auto;
		width: 90%;
	}
	.msArea .photos .text {
		font-size:	120%;
		font-weight:700;
		text-align:	center;
		bottom:		30%;
		padding:	0;
		color:		#fff;
		background:	rgba(0,0,0,0.3); /* 帯の透明度 */
		position:	absolute; /* 絶対位置 */
		z-index:1;
	}
	
	#mainContents {
	width: 100%;
	position: relative;
	}
	
	.topPage {
		background-color: #ffffff;
		padding-bottom: 85px;
	}
	
	.subPage {
		background-color: #faf7ee;
		padding-bottom: 100px;
	}


	#pageTop {
		width:80%;
		height: 44px;
		margin: 0 auto;
		position: relative;
	}
	
	#pageTop p {
		width: 56px;
		line-height: 0;
		position: absolute;
		top: 0;
		right: 0;
	}
	.pcListLink {
		display: none;
	}
	
	.spListLink {
		width: 58%;
		margin: 0 auto;
		padding: 10px 0 15px;
		line-height: 0;
	}
	
	.spListLink img {
		width: 100%;
		height: auto;
	}
	
	.cfield,.dfield{
	width:80%;
	margin:0 auto;
	font-weight: 600;
	color: #666;
	}

}
	@media screen and (min-width: 1200px){
	.br-sp {display: none; }
	}
	
	@media screen and (max-width: 767px){
	.under-pc {
		display: none; 
	}
	}
	@media screen and (min-width: 768px){
	.under-sp {
		display: none;
	}
	}
		
	.efrt {
	margin: 1em 0 30px;
	padding: 1em 1.5em;
	line-height: 2;
}
	
	
	/* Map */

	.map {
	height: 350px;
	}
	.map iframe {
	  
	}
	.text9 {
	  font-weight:800 ;
	  font-size:20px;
	  color:#000;
	  background: linear-gradient(transparent 75%, #ffb5ad 75%);
	}
	.cfield blockquote{
	  
	  font-size:120%;
	  
	}
	/*フッター*/
	#footer {
		
		padding-top:10px;
		
		width: 100%;
		background-image:url(../images/2025/bk.png);
		
		
	}
	#footerContents {
		
	}
	
	#footerContents p {
		width: 320px;
		margin: 0 auto 15px;
		
		line-height: 0;
	}
	
	address {
		color: #ffffff;
		font-style: normal;
		font-size: 65%;
		text-align: center;
	}
.qa-8 dt {
    margin-bottom: 1em;
    color: #333333;
    font-weight: 600;
}

.qa-8 dt::before,
.qa-8 dd::before {
    margin-right: .4em;
}

.qa-8 dt::before {
    content: "Q.";
}

.qa-8 dd {
    margin: 0 0 2.5em;
    padding: 1em 1.5em;
    background-color: #f1effb;
    color: #333333;
}

.qa-8 dd::before {
    content: "A.";
}