@charset "UTF-8";

/*==========*/
/*!profile*/
/*==========*/
/*greeting*/
.profile .greeting {
	padding:50px 0;
}

.profile .greeting > div {
	margin:0 auto;
	max-width:980px;
	width:90%;
}

.profile .greeting h3 {
	margin-bottom:50px;
	padding-left:.15em;
	text-align:center;
	letter-spacing:.15em;
	font-weight:500;
	font-size:280%;
}

.profile .greeting p {
	padding-left:.05em;
	text-align:center;
	letter-spacing:.05em;
}

.profile .greeting p span {
	display:inline-block;
	white-space:nowrap;
	line-height:2.8;
}

/*information, history*/
.profile .information,.profile .history {
	padding:50px 0;
}

.profile .information > div,.profile .history > div {
	margin:0 auto;
	max-width:980px;
	width:90%;
}

.profile .information table,.profile .history table {
	width:100%;
	border-top:2px solid #EAEAEA;
	letter-spacing:.05em;
	line-height:2;
}

.profile .information table th,.profile .history table th {
	padding:25px 0;
	width:200px;
	border-right:2px solid #EAEAEA;
	border-bottom:2px solid #EAEAEA;
	text-align:left;
	font-weight:500;
}

.profile .information table td,.profile .history table td {
	padding:25px 0;
	padding-left:35px;
	border-bottom:2px solid #EAEAEA;
}

.profile .information table strong,.profile .history table strong {
	font-weight:500;
}

/*access*/
.profile .access {
	padding:50px 0 100px;
}

.profile .access > div {
	margin:0 auto;
	max-width:980px;
	width:90%;
}

.profile .access h2 {
	margin-bottom:70px;
}

.profile .access .box {
	padding:70px 0;
	border-bottom:2px solid #EAEAEA;
}

.profile .access .box.head {
	border-top:2px solid #EAEAEA;
}

.profile .access .box p {
	float:left;
	padding-right:50px;
	width:50%;
	letter-spacing:.05em;
	line-height:2;
}

.profile .access .box p > strong {
	display:block;
	font-weight:500;
	font-size:120%;
}

.profile .access .box p span {
	display:block;
	margin-top:40px;
}

.profile .access .box div {
	position:relative;
	display:block;
	float:left;
	overflow:hidden;
	width:50%;
}

.profile .access .box div iframe {
	width:100%;
	height:400px;
}

/*.profile .access .box div img {
	position:absolute;
	top:50%;
	left:50%;
	display:block;
	width:600px;
	height:auto;
	-webkit-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
}

.profile .access .box div a {
	position:absolute;
	right:1em;
	bottom:1em;
	display:block;
	background-color:#FFF;
}

.profile .access .box div a span {
	display:block;
	padding:0 1em 0 1.05em;
	background-color:#1D4786;
	color:#FFF;
	letter-spacing:.05em;
	font-weight:500;
	font-size:70%;
	line-height:2.4;
}*/
@media screen and (max-width:768px) {
	/*greeting*/
	.profile .greeting {
		padding:2em 0;
	}
	
	.profile .greeting > div {
		width:80%;
	}
	
	.profile .greeting h3 {
		margin-bottom:1em;
		font-size:200%;
	}
	
	/*information, history*/
	.profile .information,.profile .history {
		padding:2em 0;
	}
	
	.profile .information h2,.profile .history h2 {
		margin-bottom:3em;
	}
	
	.profile .information table,.profile .history table {
		width:100%;
		border-top:2px solid #EAEAEA;
		letter-spacing:.05em;
		line-height:2;
	}
	
	.profile .information table th,.profile .history table th {
		display:block;
		float:left;
		padding:1em .5em .25em;
		width:100%;
		border-right:none;
		border-bottom:none;
	}
	
	.profile .information table th {
		font-weight:700;
	}
	
	.profile .history table th {
		font-size:95%;
	}
	
	.profile .information table td,.profile .history table td {
		display:block;
		float:left;
		padding:.25em .5em 1em;
		width:100%;
	}
	
	/*access*/
	.profile .access {
		padding:2em 0 4em;
	}
	
	.profile .access h2 {
		margin-bottom:3em;
	}
	
	.profile .access .box {
		padding:2em .5em;
	}
	
	.profile .access .box p {
		float:none;
		padding-right:0;
		width:100%;
	}
	
	.profile .access .box p span {
		margin-top:1em;
	}
	
	.profile .access .box div {
		margin-top:1.5em;
		width:100%;
	}
	
	.profile .access .box div iframe {
		height:24em;
	}/*.profile .access .box div a span {
					font-size:80%;
				}*/
	
}

/*==========*/
/*!philosophy*/
/*==========*/
/*detail*/
.philosophy .detail {
	padding:50px 0;
}

.philosophy .detail > div {
	margin:0 auto;
	max-width:1160px;
	width:90%;
}

.philosophy .detail p {
	margin-bottom:50px;
	line-height:2.4;
}

/*policy*/
.philosophy .policy {
	padding:50px 0 60px;
}

.philosophy .policy > div {
	margin:0 auto;
	max-width:1160px;
	width:90%;
}

.philosophy .policy > div > div {
	margin-bottom:40px;
}

.philosophy .policy h3 {
	margin-bottom:10px;
	font-weight:500;
	font-size:120%;
	line-height:1.4;
}

.philosophy .policy p {
	line-height:2.4;
}

@media screen and (max-width:768px) {
	/*detail*/
	.philosophy .detail {
		padding:2em 0;
	}
	
	.philosophy .detail > div {
		width:100%;
	}
	
	.philosophy .detail p {
		margin:0 5% 2em;
	}
	
	/*policy*/
	.philosophy .policy {
		padding:2em 0;
	}
	
	.philosophy .policy > div > div {
		margin-bottom:2em;
	}
	
	.philosophy .policy h3 {
		margin-bottom:1em;
		font-size:110%;
	}
}

/*==========*/
/*!csr*/
/*==========*/
/*csr-index*/
.csr .csr-index {
	padding:50px 0;
}

.csr .csr-index > div {
	overflow:hidden;
	margin:0 auto;
	max-width:1160px;
	width:90%;
}

.csr .csr-index ul {
	margin:0 -6px;
}

.csr .csr-index li {
	display:block;
	float:left;
	padding:0 6px;
	width:20%;
}

.csr .csr-index li a {
	display:block;
	padding:30px 0 20px;
	background-color:#1D4786;
}

.csr .csr-index li a span {
	display:block;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:110%;
	line-height:1.4;
}

.csr .csr-index li a > img {
	display:block;
	margin:10px auto;
	max-width:100px;
	width:80%;
}

.csr .csr-index li i {
	display:block;
	margin:0 auto;
	width:30px;
	height:30px;
	background:url(../img/csr-arrow.png) center center no-repeat;
	background-size:cover;
}

@media screen and (max-width:1200px) {
	.csr .csr-index li a span {
		font-size:95%;
	}
	
	.csr .csr-index li a > img {
		max-width:90px;
	}
	
	.csr .csr-index li i {
		width:24px;
		height:24px;
	}
}

@media screen and (min-width:769px) {
	.csr .csr-index li a span {
		transition:all .2s;
	}
	
	.csr .csr-index li a:hover i {
		-webkit-animation:fuwa .5s infinite linear alternate;
		animation:fuwa .5s infinite linear alternate;
	}
}

/*detail*/
.csr .detail {
	padding:0 0 50px;
}

.csr .detail > div {
	margin:0 auto;
	max-width:1160px;
	width:90%;
}

.csr .detail > div > div {
	padding:50px 0;
}

.csr .detail p {
	line-height:2.4;
}

.csr .detail li {
	line-height:2.4;
}

.csr .detail ol > li {
	list-style:decimal inside;
}

.csr .detail ul > li:before {
	content:"・ ";
}

@media screen and (max-width:768px) {
	/*csr-index*/
	.csr .csr-index {
		padding:2em 0;
	}
	
	.csr .csr-index ul {
		margin:0;
	}
	
	.csr .csr-index li {
		float:none;
		padding:0;
		padding:2px 0;
		width:100%;
		font-size:110%;
	}
	
	.csr .csr-index li a {
		position:relative;
		padding:0;
	}
	
	.csr .csr-index li a span {
		margin-left:6em;
		text-align:left;
		font-size:inherit;
		line-height:4em;
	}
	
	.csr .csr-index li a > img {
		position:absolute;
		top:0;
		left:1em;
		margin:0;
		max-width:none;
		width:auto;
		height:4em;
	}
	
	.csr .csr-index li i {
		position:absolute;
		top:1.375em;
		right:1em;
		width:1.25em;
		height:1.25em;
	}
	
	/*detail*/
	.csr .detail {
		padding:0 0 2.5em;
	}
	
	.csr .detail > div > div {
		padding:1.5em 0;
	}
}
