/* ==========================================
   トップメッセージ
========================================== */
.message-heading .image{
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}
.message-heading .detail .ttl h1{
	font-weight: 700;
	line-height: 1;
}
.message-heading .detail .ttl p{
	font-weight: 700;
	line-height: 1.6;
}
.message-heading .detail .ttl h1 strong,
.message-heading .detail .ttl p strong{
	background-color: #D8D11F;
	font-weight: 700;
	padding: .015em .15em;
}
.message-heading .detail .ttl p:after{
	color: #D8D11F;
	content: "★";
	font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  font-style: normal;
	line-height: 1;
}
@media print, screen and (min-width:781px) {
	.message-heading{
		display: flex;
		height: calc(100vh - 100px);
		min-height: 630px;
	}
	.message-heading .image{
		background-image: url("../img/img_message_main.jpg");
		width: 53.074%;
	}
	.message-heading .detail{
		display: flex;
		align-items: center;
		width: calc(100% - 53.074%);
		transform: translateX(-17.16%);
	}
	.message-heading .detail .ttl h1{
		font-size: min(7.1vw,9.7rem);
	}
	.message-heading .detail .ttl p{
		font-size: min(3.66vw,5.0rem);
		margin-top: 50px;
	}
	.message-heading .detail .ttl p:after{
		font-size: min(4.53vw,6.2rem);
	}
}
@media screen and (max-width: 780px) {
	#footer-area{
		background-color: #004099;
	}
	
	
	.message-heading{
		padding-bottom: 55px;
	}
	.message-heading .image{
		background-image: url("../img/img_message_main_sp.jpg");
		padding-bottom: calc(106.837% * 90% / 100%);
		width: 90%;
	}
	.message-heading .detail{
		margin-left: auto;
		margin-right: auto;
		margin-top: -9.87%;
		display: flex;
		align-items: center;
		width: 80%;
	}
	.message-heading .detail .ttl h1{
		font-size: min(15.2vw,5.95rem);
	}
	.message-heading .detail .ttl p{
		font-size: min(5.64vw,2.2rem);
		margin-top: 20px;
	}
	.message-heading .detail .ttl p:after{
		font-size: min(4.53vw,6.2rem);
	}
}




.message-contents-wrap{
	background-color: #004099;
	color: #FFF;
	overflow-x: hidden;
}
.president{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.president .en2{
	background-color: #D8D11F;
	color: #2C3440;
	font-weight: 700;
	line-height: 1.2;
	padding: .015em .15em;
}
.president  dl dt,
.president  dl dd{
	font-weight: 700;
	line-height: 1.6;
}
.president  dl dd{
	border-bottom: 1px solid #FFF;
	display: inline-block;
}
@media print, screen and (min-width:781px) {
	.message-contents-wrap{
		padding-bottom: 300px;
	}
	.president{
		margin-left: auto;
		width: calc(100% - 53.074%);
	}
	.president .en2{
		font-size: min(3.79vw,4.1rem);
	}
	.president  dl dt{
		font-size: min(1.11vw,1.2rem);
		margin-top: 25px;
	}
	.president  dl dd{
		font-size: min(2.77vw,3.0rem);
		margin-top: 10px;
	}
}
@media screen and (max-width: 780px) {
	.message-contents-wrap{
		padding-bottom: 75px;
	}
	.president-wrap{
		display: flex;
		justify-content: flex-end;
	}
	.president{
		margin-right: 10%;
	}
	.president .en2{
		font-size: min(5.25vw,2.05rem);
	}
	.president  dl dt{
		font-size: min(2.56vw,1.0rem);
		margin-top: 30px;
	}
	.president  dl dd{
		font-size: min(5.12vw,2.0rem);
	}
}



.message-sec-heading{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.message-sec-heading .sub{
	background-color: #D8D11F;
	color: #2C3440;
	font-weight: 700;
	line-height: 1.2;
	padding: .015em .15em;
}
.message-sec-heading .main{
	font-weight: 700;
	line-height: 1.6;
}
.message-sec-heading .main strong{
	color: #D8D11F;
	font-weight: 700;
}
.message-sec .detail{
	position: relative;
}
.message-sec .detail > p{
	font-weight: 700;
	line-height: 3;
	letter-spacing: .05em;
}
.message-sec .detail > p strong{
	border-bottom: 1px solid #FFF;
	padding-bottom: 5px;
}
.message-sec .gonext{
	color: #D8D11F;
	font-weight: 700;
	line-height: .9;
	text-align: center;
	display: inline-block;
	position: relative;
	z-index: 2;
}
.message-sec .to-family{
	color: #D8D11F;
	font-weight: 700;
	line-height: 1;
	writing-mode: vertical-rl;
}
.message-sec .to-family:after{
	content: "★";
	font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-style: normal;
	line-height: 1;
}
@media print, screen and (min-width:781px) {
	.message-sec{
		margin-top: 160px;
	}
	.message-sec-heading{
		margin-left: auto;
		margin-right: auto;
		width: 90%;
		max-width: 980px;
	}
	.message-sec-heading .sub{
		font-size: min(1.85vw,2.0rem);
		padding: 5px 10px;
	}
	.message-sec-heading .main{
		font-size: min(3.66vw,5.0rem);
		margin-top: 30px;
	}
	.message-sec .detail{
		margin-top: 80px;
		margin-left: auto;
		margin-right: auto;
		width: 80%;
		max-width: 780px;
		z-index: 1;
	}
	.message-sec .detail > p{
		font-size: min(1.66vw,1.8rem);
	}
	
	
	.message-sec .gonext{
		font-size: min(3.58vw,4.9rem);
		margin-top: 70px;
	}
	.message-sec .gonext > span{
		font-size: min(8.41vw,11.5rem);
	}
	
	
	.message-sec .to-family{
		font-size: min(5.56vw,7.6rem);
		position: absolute;
		right: -7%;
		bottom: 10px;
		transform: translateX(100%);
	}
	.message-sec .to-family:after{
		font-size: min(4.61vw,6.3em);
	}
}
@media screen and (max-width: 780px) {
	.message-sec{
		margin-top: 125px;
	}
	.message-sec-heading{
		margin-left: 10%;
		margin-right: 5%;
	}
	.message-sec-heading .sub{
		font-size: min(3.84vw,1.5rem);
		padding: 5px 10px;
	}
	.message-sec-heading .main{
		font-size: min(7.69vw,3.0rem);
		margin-top: 20px;
	}
	.message-sec .detail{
		margin-top: 35px;
		margin-left: 20%;
		margin-right: 5%;
		z-index: 1;
	}
	.message-sec .detail > p{
		font-size: min(3.84vw,1.5rem);
		line-height: 2.33;
	}
	
	
	.message-sec .gonext{
		font-size: min(9.1vw,3.55rem);
		margin-top: 60px;
	}
	.message-sec .gonext > span{
		font-size: min(21.2vw,8.3rem);
	}
	
	
	.message-sec .to-family{
		font-size: min(9.74vw,3.8rem);
		position: absolute;
		left: -5%;
		bottom: 10px;
		transform: translateX(-100%);
	}
	.message-sec .to-family:after{
		font-size: min(8.07vw,3.15em);
	}
}




.message-sec .image-wrap{
	position: relative;
	transition: margin-left 0.05s ease-out;
}
.message-sec .image{
	background-repeat: no-repeat;
	background-size: cover;
}
.message-sec .photo1 .image{
	background-image: url("../img/img_message_photo1.jpg");
}
.message-sec .photo2 .image{
	background-image: url("../img/img_message_photo2.jpg");
}
@media print, screen and (min-width:781px) {
	.message-sec .photo1{
		margin-top: -25px;
		z-index: 0;
	}
	.message-sec .photo1 .image{
		padding-bottom: 37.771%;
	}
	.message-sec .photo2 .image{
		margin-top: 150px;
		padding-bottom: calc(55.7165% * 33% / 100%);
		width: 33%;
	}
}
@media screen and (max-width: 780px) {
	.message-sec .photo1{
		margin-top: -15px;
		margin-left: auto !important;
		width: 80%;
		z-index: 0;
	}
	.message-sec .photo1 .image{
		padding-bottom: 63.694%;
	}
	.message-sec .photo2{
		margin-left: 0 !important;
		margin-right: auto !important;
		margin-top: 85px;
		width: 80%;
	}
	.message-sec .photo2 .image{
		padding-bottom: 63.694%;
	}
}