/*--------------------------------------------------------------
#message-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#message-area {
		margin: 0 0 80px 0;
		padding: 0;
	}
	
	#message-area h3 {
		margin: 0 0 30px 0;
		padding: 0;
		color: #6596E5;
		font-size: 20px;
		text-align: center; 
		font-weight: bold;
	}
	
	.president {
		margin: 0 0 50px 0;
		padding: 0;
		background: url("images/message.png") top center no-repeat;
		background-size: cover;
		position: relative;
		height: 50vh;
	}
	
	.president dl {
		margin: 0;
		padding: 0;
		position: absolute;
		bottom: 8vw;
		left: 6vw;
	}
	
	.president dd {
		margin: 10px 0;
		padding: 5px 0;
		font-size: 18px;
		overflow: hidden;
		font-weight: bold;
		letter-spacing: 1px;
	}
	
	.president dd span {
		margin: 0;
		padding: 10px;
		background: #FFF;
	}
	
	#message-area h4 {
		margin: 0 10% 20px 10%;
		padding: 0;
		color: #6596E5;
		font-size: 18px;
		font-weight: bold;
		width: auto;
	}
    
	#message-area p {
		margin: 0 10%;
		padding: 0;
		font-size: 14px;
		line-height: 1.8;
		width: auto;
	}
	
	#message-area p span {
		margin: 30px 0 0 0;
		padding: 0;
		text-align: right;
		display: block;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	.president dd {
		margin: 10px 0;
		padding: 5px 0;
		font-size: 22px;
		overflow: hidden;
		font-weight: bold;
		letter-spacing: 1px;
	}
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#message-area {
		margin: 0 0 150px 0;
		padding: 0;
	}
	
	#message-area h3 {
		margin: 0 0 30px 0;
		padding: 0;
		color: #6596E5;
		font-size: 25px;
		text-align: center; 
		font-weight: bold;
	}
	
	.president {
		margin: 0 0 50px 0;
		padding: 0;
		background: url("images/message.png") top center no-repeat;
		background-size: cover;
		position: relative;
		height: 50vh;
	}
	
	.president dl {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 8vw;
		left: 8vw;
		bottom: auto;
	}
	
	.president dd {
		margin: 10px 0;
		padding: 5px 0;
		font-size: 33px;
		overflow: hidden;
		font-weight: bold;
		letter-spacing: 1px;
	}
	
	.president dd span {
		margin: 0;
		padding: 20px;
		background: #FFF;
	}
	
	#message-area h4 {
		margin: 0 auto 30px auto;
		padding: 0;
		color: #6596E5;
		font-size: 20px;
		font-weight: bold;
		width: 800px;
	}
    
	#message-area p {
		margin: 0 auto;
		padding: 0;
		font-size: 15px;
		line-height: 1.8;
		width: 800px;
	}
	
	#message-area p span {
		margin: 30px 0 0 0;
		padding: 0;
		text-align: right;
		display: block;
	}

}

/*--------------------------------------------------------------
.company_inner_top
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.company_inner_top {
		margin: 0;
		padding: 0;
		height: 30vh;
		position: relative;
	}
	
	.company_inner_top h3 {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 50%;
		left: 10vw;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
		font-size: 20px;
		color: #FFF;
		font-weight: bold;
	}
	
	.profile {
		background: url("images/profile.png") top left no-repeat;
		background-size: cover;
	}
	
	.history {
		background: url("images/history.png") top left no-repeat;
		background-size: cover;
	}
	
	.management {
		background: url("images/management.png") top left no-repeat;
		background-size: cover;
	}
	
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.company_inner_top {
		margin: 0;
		padding: 0;
		height: 25vh;
		position: relative;
	}
	
	.company_inner_top h3 {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 50%;
		left: 10vw;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
		font-size: 25px;
		color: #FFF;
		font-weight: bold;
	}

}


/*--------------------------------------------------------------
#profile-area
#recruit-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#profile-area {
		margin: 0;
		padding: 0 0 50px 0;
		background: #F5FAFF;
	}
	
	#recruit-area {
		margin: 0;
		padding: 10px 0;
		background: #F5FAFF;
	}
	
	#profile-area dl,
	#recruit-area dl {
		margin: 30px 5%;
		padding: 30px 5%;
		background: #FFF;
		font-size: 14px;
		line-height: 1.8;
	}
	
	#profile-area dt,
	#recruit-area dt {
		margin: 0;
		padding: 5px 0;
		float: left;
		width: 120px;
		color: #567EA5;
	}
	
	#profile-area dd,
	#recruit-area dd {
		margin: 0 0 0 120px;
		padding: 5px 0;
	}
	
	.policy {
		margin: 0 5%;
		padding: 0;
		width: auto;
	}
	
	.googlemap {
		margin: 0 0 80px 0;
		padding: 0;
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 60%;
	}
	
	.googlemap iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#profile-area {
		margin: 0;
		padding: 0 0 50px 0;
		background: #F5FAFF;
	}
	
	#recruit-area {
		margin: 0;
		padding: 50px 0;
		background: #F5FAFF;
	}
	
	#profile-area dl,
	#recruit-area dl {
		margin: 30px 10%;
		padding: 30px 10%;
		background: #FFF;
		font-size: 15px;
		line-height: 1.8;
	}
	
	#profile-area dt,
	#recruit-area dt {
		margin: 0;
		padding: 5px 0;
		float: left;
		width: 170px;
		color: #567EA5;
	}
	
	#profile-area dd,
	#recruit-area dd {
		margin: 0 0 0 200px;
		padding: 5px 0;
	}
	
	.policy {
		margin: 0 auto;
		padding: 0;
		width: 600px;
	}
	
	.googlemap {
		margin: 0 0 100px 0;
		padding: 0;
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 40%;
	}
	
	.googlemap iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

}


/*--------------------------------------------------------------
#flow-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#flow-area {
		margin: 50px 0 0 0;
		padding: 0;
	}
	
	#flow-area ul {
		margin: 0 5% 100px 5%;
		padding: 0;
		width: auto;
	}
	
	#flow-area li {
		margin: 0;
		padding: 3px;
		background: rgb(112,149,223);
		background: linear-gradient(45deg, rgba(112,149,223,1) 10%, rgba(223,155,210,1) 84%);
	}
	
	#flow-area li:nth-child(even){
		background: #FFF;
	}
	
	#flow-area li span {
		margin: 0;
		padding: 0;
		color: #6596E5;
		font-size: 40px;
		display: block;
		text-align: center;
	}
	
	#flow-area li dl {
		margin: 0;
		padding: 30px;
		background: #FFF;
	}
	
	#flow-area li:last-child dl {
		background: none;
		color: #FFF;
		font-weight: bold;
	}
	
	#flow-area li dt {
		margin: 0 0 10px 0;
		padding: 0;
		width: auto;
		font-size: 16px;
		font-weight: bold;
	}
	
	#flow-area li dd {
		margin: 0;
		padding: 0;
		font-size: 14px;
		line-height: 1.8;
		border-left: none;
	}
	
	.entry-text {
		margin: 0 10% 30px 10%;
		padding: 0;
		font-size: 14px;
		line-height: 1.8;
		text-align: left;
	}
	
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#flow-area {
		margin: 100px 0 0 0;
		padding: 0;
	}
	
	#flow-area ul {
		margin: 0 auto 100px auto;
		padding: 0;
		width: 800px;
	}
	
	#flow-area li {
		margin: 0;
		padding: 3px;
		background: rgb(112,149,223);
		background: linear-gradient(45deg, rgba(112,149,223,1) 10%, rgba(223,155,210,1) 84%);
	}
	
	#flow-area li:nth-child(even){
		background: #FFF;
	}
	
	#flow-area li span {
		margin: 0;
		padding: 0;
		color: #6596E5;
		font-size: 40px;
		display: block;
		text-align: center;
	}
	
	#flow-area li dl {
		margin: 0;
		padding: 30px 60px;
		background: #FFF;
	}
	
	#flow-area li:last-child dl {
		background: none;
		color: #FFF;
	}
	
	#flow-area li dt {
		margin: 0;
		padding: 0;
		float: left;
		width: 150px;
		font-size: 18px;
		font-weight: bold;
	}
	
	#flow-area li dd {
		margin: 0 0 0 150px;
		padding: 0 0 0 20px;
		font-size: 15px;
		line-height: 1.8;
		border-left: 3px solid #E8F1FA;
	}
	
	.entry-text {
		margin: 0 0 30px 0;
		padding: 0;
		font-size: 15px;
		line-height: 1.8;
		text-align: center;
	}

}

/*--------------------------------------------------------------
.entry-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.entry-area {
		margin: 0;
		padding: 60px 0;
		background: #F5FAFF;
		color: #294191;
	}
	
	.entry-area h4 {
		margin: 0 0 20px 0;
		padding: 0;
		font-size: 15px;
		font-weight: bold;
		text-align: center;
	}
	
	.entry-area p {
		margin: 0 0 20px 0;
		padding: 0;
		font-size: 30px;
		font-weight: bold;
		text-align: center;
		font-family: 'Outfit', sans-serif;
	}
	
	.entry-area .material-icons {
		margin: 0 5px 0 0;
		padding: 0;
		font-size: 20px;
		vertical-align: middle;
	}
	
	.entry-area p span {
		vertical-align: 0.1em;;
	}
	
	.entry-area dl {
		margin: 0 10%;
		padding: 20px 0 0 0;
		width: auto;
		font-size: 14px;
		font-weight: bold;
		border-top: 1px solid #CCC;
	}
	
	.entry-area dt {
		margin: 0;
		padding: 0;
		width: 50px;
		float: left;
		font-size: 12px
	}
	
	.entry-area dt span {
		margin: 0 0 0 10px;
		padding: 0;
		vertical-align: -0.1em;
	}
	
	.entry-area dt span img {
		width: 10px;
	}
	
	.entry-area dd {
		margin: 0 0 0 60px;
		padding: 0;
		line-height: 1.8;
	}
	
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.entry-area {
		margin: 0;
		padding: 60px 0;
		background: #F5FAFF;
		color: #294191;
	}
	
	.entry-area h4 {
		margin: 0 0 5px 0;
		padding: 0;
		font-size: 16px;
		font-weight: bold;
		text-align: center;
	}
	
	.entry-area p {
		margin: 0 0 30px 0;
		padding: 0;
		font-size: 50px;
		font-weight: bold;
		text-align: center;
		font-family: 'Outfit', sans-serif;
	}
	
	.entry-area .material-icons {
		margin: 0 5px 0 0;
		padding: 0;
		font-size: 40px;
		vertical-align: middle;
	}
	
	.entry-area p span {
		vertical-align: 0.1em;;
	}
	
	.entry-area dl {
		margin: 0 auto;
		padding: 0;
		width: 450px;
		font-size: 15px;
		font-weight: bold;
		border-top: none;
	}
	
	.entry-area dt {
		margin: 0;
		padding: 0;
		width: 100px;
		float: left;
		font-size: 15px
	}
	
	.entry-area dt span {
		margin: 0 0 0 20px;
		padding: 0;
		vertical-align: -0.1em;
	}
	
	.entry-area dt span img {
		width: 18px;
	}
	
	.entry-area dd {
		margin: 0 0 0 100px;
		padding: 0;
		line-height: 1.8;
	}
	

}


/*--------------------------------------------------------------
#office-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#office-area {
		margin: 0;
		padding: 0 0 80px 0;
	}
	
	#office-area h4 {
		position: relative;
		margin: 0 0 50px 0;
		padding: 0 0 20px 0;
		text-align: center;
		color: #6596E5;
		font-size: 18px;
		font-weight: bold;
	}
	
	#office-area h4:before {
		position: absolute;
		bottom: -10px;
		left: calc(50% - 50px);
		width: 100px;
		height: 5px;
		content: '';
		border-radius: 3px;
		background: #E8F1FA;
	}
	
	#office-area ul {
		margin: 0;
		padding: 0;
	}
	
	#office-area ul li {
		margin: 0;
		padding: 0;
		width: auto;
	}
	
	#office-area ul li:first-child {
		margin: 0 0 50px 0;
		padding: 0;
		border-right: none;
	}
	
	#office-area dl {
		margin: 0 10%;
		padding: 0;
	}
	
	#office-area dt {
		margin: 0 0 30px 0;
		padding: 15px 0;
		font-size: 14px;
		font-weight: bold;
		color: #FFF;
		text-align: center;
		background: #6596E5;
		border-radius: 50px;
	}
	
	#office-area dd {
		margin: 0 0 10px 0;
		padding: 0 5%;
		font-size: 14px;
		line-height: 1.8;
	}
	
	#office-area dd.map {
		margin: 0 0 30px 0;
		position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
	}
	
	#office-area dd.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
	
	
	#office-area dd span.bl {
		margin: 0;
		padding: 0;
		display: block;
		color: #567EA5;
	}
	
	#office-area dd.group {
		margin: 30px 0 0 0;
		padding: 0;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#office-area {
		margin: 0;
		padding: 0 0 100px 0;
	}
	
	#office-area h4 {
		position: relative;
		margin: 0 0 50px 0;
		padding: 0 0 20px 0;
		text-align: center;
		color: #6596E5;
		font-size: 20px;
		font-weight: bold;
	}
	
	#office-area h4:before {
		position: absolute;
		bottom: -10px;
		left: calc(50% - 50px);
		width: 100px;
		height: 5px;
		content: '';
		border-radius: 3px;
		background: #E8F1FA;
	}
	
	#office-area ul {
		margin: 0 10%;
		padding: 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
	}
	
	#office-area ul li {
		margin: 0;
		padding: 0;
		width: 50%;
	}
	
	#office-area ul li:first-child {
		margin: 0;
		padding: 0;
		border-right: 1px dotted #ccc;
	}
	
	#office-area dl {
		margin: 0 10%;
		padding: 0;
	}
	
	#office-area dt {
		margin: 0 0 30px 0;
		padding: 15px 0;
		font-size: 15px;
		font-weight: bold;
		color: #FFF;
		text-align: center;
		border-radius: 50px;
	}
	
	#office-area dd {
		margin: 0 0 10px 0;
		padding: 0 5%;
		font-size: 15px;
		line-height: 1.8;
	}
	
	
	
	#office-area dd span.bl {
		margin: 0;
		padding: 0;
		display: block;
		color: #567EA5;
	}

}


/*--------------------------------------------------------------
#history-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#history-area {
		margin: 0 0 0 0;
		padding: 0 0 50px 0;
	}
	
	#history-area dl {
		margin: 50px 10%;
		padding: 0;
		background: url("images/line.png") repeat-y;
		-webkit-background-size: 1px 100%;
		background-size: 1px 100%;
		background-position: top 0  left 90px;
	}
	
	#history-area dt {
		margin: 0;
		padding: 10px 0;
		width: 110px;
		float: left;
		color: #567EA5;
		position: relative;
		font-size: 13px;
	}
	
	#history-area dt span {
		margin: 0;
		padding: 0;
		position: absolute;
		left: 85px;
		top: 10px;
	}
	
	#history-area dt span img {
		width: 10px;
	}
	
	#history-area dd {
		margin: 0;
		padding: 10px 0 10px 110px;
		font-size: 14px;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#history-area {
		margin: 0 0 0 0;
		padding: 0 0 50px 0;
	}
	
	#history-area dl {
		margin: 50px 20%;
		padding: 0;
		background: url("images/line.png") repeat-y;
		-webkit-background-size: 1px 100%;
		background-size: 1px 100%;
		background-position: top 0  left 110px;
	}
	
	#history-area dt {
		margin: 0;
		padding: 10px 0;
		width: 140px;
		float: left;
		color: #567EA5;
		position: relative;
		font-size: 15px;
	}
	
	#history-area dt span {
		margin: 0;
		padding: 0;
		position: absolute;
		left: 105px;
		top: 10px;
	}
	
	#history-area dt span img {
		width: 10px;
	}
	
	#history-area dd {
		margin: 0;
		padding: 10px 0 10px 140px;
		font-size: 15px;
	}

}


/*--------------------------------------------------------------
#management-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#management-area {
		margin: 0 0 0 0;
		padding: 0 0 50px 0;
		background: #F5FAFF;
	}
	
	#management-area h4 {
		position: relative;
		margin: 80px 10% 50px 10%;
		padding: 0 0 20px 0;
		text-align: left;
		color: #6596E5;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.5;
	}
	
	#management-area h4:before {
		position: absolute;
		bottom: -10px;
		left: calc(50% - 50px);
		width: 100px;
		height: 5px;
		content: '';
		border-radius: 3px;
		background: #E8F1FA;
	}
	
	#management-area p {
		margin: 0 10% 80px 10%;
		padding: 0;
		font-size: 14px;
		width: auto;
		text-align: left;
		line-height: 1.8;
	}
	
	#management-area p img {
		margin: 0;
		padding: 0;
		width: 100%;
	}
	
	#management-area h5 {
		margin: 0 0 30px 0;
		padding: 0;
		text-align: center;
		color: #6596E5;
		font-size: 17px;
		font-weight: bold;
	}
	
	#management-area ul {
		margin: 0 5%;
		padding: 0;
	}
	
	#management-area li {
		margin: 0 0 15px 0;
		padding: 0;
		background: url("images/icon.png") no-repeat;
		-webkit-background-size: 15px auto;
		background-size: 15px auto;
		background-position: top 50% left 10px;
		background-color: #FFF;
		font-size: 14px;
	}
	
	#management-area li a {
		margin: 0;
		padding: 20px 20px 20px 35px;
		display: block;
	}
	
	#management-area li span.icon {
		margin: 0 0 0 10px;
		padding: 0;
	}
	
	#management-area li span.icon img {
		width: 20px;
		vertical-align: middle;
	}
	
	
	#management-area a:link,
	#management-area a:visited{
		color: #101010;
		text-decoration: none;
	}
	
	#management-area a:hover,
	#management-area a:active,
	#management-area a:focus {
		text-decoration: none;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	#management-area p img {
		margin: 0;
		padding: 0 10%;
		width: 100%;
	}
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	#management-area {
		margin: 0 0 0 0;
		padding: 0 0 50px 0;
		background: #F5FAFF;
	}
	
	#management-area h4 {
		position: relative;
		margin: 80px 0 50px 0;
		padding: 0 0 20px 0;
		text-align: center;
		color: #6596E5;
		font-size: 20px;
		font-weight: bold;
		line-height: 1.5;
	}
	
	#management-area h4:before {
		position: absolute;
		bottom: -10px;
		left: calc(50% - 50px);
		width: 100px;
		height: 5px;
		content: '';
		border-radius: 3px;
		background: #E8F1FA;
	}
	
	#management-area p {
		margin: 0 auto 80px auto;
		padding: 0;
		font-size: 15px;
		width: 800px;
		text-align: center;
	}
	
	#management-area p img {
		margin: 0;
		padding: 0;
		width: 500px;
	}
	
	#management-area h5 {
		margin: 0 0 30px 0;
		padding: 0;
		text-align: center;
		color: #6596E5;
		font-size: 20px;
		font-weight: bold;
	}
	
	#management-area ul {
		margin: 0 10%;
		padding: 0;
	}
	
	#management-area li {
		margin: 0 0 15px 0;
		padding: 0;
		font-size: 15px;
	}
	
	#management-area li a {
		margin: 0;
		display: block;
	}
	
	#management-area li span.icon {
		margin: 0 0 0 10px;
		padding: 0;
	}
	
	#management-area li span.icon img {
		width: 20px;
		vertical-align: middle;
	}
	

}