@charset "utf-8";
/* ****************************

front-page.php 用スタイルシート

******************************* */










/* =============================================================================
   コンテンツスタイル
   ========================================================================== */

/* mv */
#content .mv {
	background: url("../img/content/top/bg_mv.jpg") no-repeat center top;
	background-size: cover;
	height: 900px;
}
#content .mv .wrap {
	position: relative;
	height: 100%;
}
#content .mv .wrap h1 {
	position: relative;
	background: rgba(0,0,0,0.8);
	display: inline-block;
	height: 100%;
	padding: 50px 0;
	box-sizing: border-box;
	margin-left: -500%;
	padding-left: 500%;
}
#content .mv .wrap h1::before {
    content: "";
    top: 0;
    right: -400px;
    border-bottom: 900px solid transparent;
    border-left: 400px solid rgba(0,0,0,0.8);
    position: absolute;
    z-index: 100;
}
#content .mv .wrap h1 img {
	max-height: 100%;
}
@media only screen and (max-width: 767px) {
	#content .mv {
		background: url("../img/content/top/bg_mv.jpg") no-repeat left top;
		background-size: cover;
		height: 400px;
	}
	#content .mv .wrap {
		padding: 0 40px;
	}
	#content .mv .wrap h1 {
		padding: 30px 0;
		margin-left: -500%;
		padding-left: 500%;
	}
	#content .mv .wrap h1::before {
		right: -200px;
		border-bottom: 400px solid transparent;
		border-left: 200px solid rgba(0,0,0,0.8);
	}
}






/* sec01 */
#content .front .sec01 {}
#content .front .sec01 .wrap {
	display: flex;
	justify-content: space-between;
}
#content .front .sec01 h2 {
	width: 20%;
	font-size: 1.0em;
	font-weight: normal;
}
#content .front .sec01 h2 span {
	font-size: 2.0em;
	color: #60875A;
	display: block;
}
#content .front .sec01 h2 em {
	font-style: normal;
}
#content .front .sec01 .inner {
	width: 70%;
}
#content .front .sec01 ul.list {
}
#content .front .sec01 ul.list li {
	border-bottom: 1px solid #E6E6E6;
}
#content .front .sec01 ul.list li:first-child {
	border-top: 1px solid #E6E6E6;
}
#content .front .sec01 ul.list li a {
	padding: 30px 20px;
	display: flex;
	justify-content: space-between;
	background: #fff;
	color: #333333;
	text-decoration: none;
}
#content .front .sec01 ul.list li a:hover {
	background: #e9f8e6;
}
#content .front .sec01 ul.list li .date {
	width: 100px;
}
#content .front .sec01 ul.list li .fa-chevron-right {
	width: 60px;
	text-align: right;
}
#content .front .sec01 ul.list li .text {
	flex: 1;
}
#content .front .sec01 ul.list li .text h3 {
	font-size: 1.0em;
	line-height: 1.7;
}
#content .front .sec01 nav.link {
	text-align: right;
	margin-top: 30px;
}
#content .front .sec01 nav.link a {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#content .front .sec01 nav.link a:hover {
	text-decoration: none;
}
#content .front .sec01 nav.link a .fa-chevron-right {
	font-size: 0.75em;
	margin-left: 1.0em;
}
@media only screen and (max-width: 767px) {
	#content .front .sec01 {}
	#content .front .sec01 .wrap {
		flex-direction: column;
	}
	#content .front .sec01 h2 {
		width: 100%;
		margin-bottom: 1.0em;
	}
	#content .front .sec01 .inner {
		width: 100%;
	}
	#content .front .sec01 ul.list li a {
		padding: 20px 0;
		flex-direction: column;
	}
	#content .front .sec01 ul.list li a:hover {
		background: #fff;
	}
	#content .front .sec01 ul.list li .date {
		width: auto;
		margin-bottom: 0.5em;
	}
	#content .front .sec01 ul.list li .fa-chevron-right {
		display: none;
	}
	#content .front .sec01 nav.link {
		margin-top: 20px;
	}
}



/* sec02 */
.front .sec02 {}
.front .sec02 h2 {
	color: #FC794C;
}
.front .sec02 h2 em {
	color: #333333;
	font-style: normal;
	font-size: 0.6em;
	margin-left: 1.0em;
}
.front .sec02 .col {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-top: 40px;
}
.front .sec02 .col figure {
	position: relative;
	width: 48%;
	margin-left: 10%;
}
.front .sec02 .col figure figcaption {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	right: 0;
	top: 0;
	background: #60875A;
	color: #fff;
	padding: 2.0em 1.0em;
	font-size: 1.6em;
}
.front .sec02 .col .text {
	/*-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;*/
	flex: 1;
	max-height: 500px;
	flex-direction: column;
}
.front .sec02 .col .text h3 {
	color: #60875A;
	font-size: 1.6em;
	line-height: 1.7;
	margin-bottom: 2em;
	/*margin-left: 2.0em;*/
}
.front .sec02 .col .text nav.link {
	margin-left: auto;
	margin-right: auto;
	text-align: right;
}
.front .sec02 .col .text nav.link a {
	padding: 0 1.0em;
}
.front .sec02 .col .text nav.link a .fa-chevron-down {
	margin-top: 0.5em;
	display: inline;
}
.front .sec02 .col .text nav.link a .fa-chevron-right {
	margin-left: 0.5em;
	display: none;
}
.front .sec02 .col .text p.ceo {
	padding-bottom: 0;
	max-width: 150px;
	margin-left: auto;
	padding: 0.5em 0;
}

@media only screen and (max-width: 1200px) {
	.front .sec02 .col figure {
		margin-left: 5%;
	}
}
@media only screen and (max-width: 767px) {
	.front .sec02 .col {
		margin-top: 40px;
		flex-direction: column;
	}
	.front .sec02 .col figure {
		width: 80%;
		margin: 0 auto;
		margin-bottom: 2.0em;
	}
	.front .sec02 .col figure figcaption {
		padding: 1.0em 1.0em;
		font-size: 1.2em;
	}
	.front .sec02 .col .text {
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}
	.front .sec02 .col .text h3 {
		font-size: 1.3em;
		text-align: center;
		margin-left: 0;
		margin-bottom: 1.0em;
	}
	.front .sec02 .col .text nav.link {
		margin-top: 1.5em;
	}
	.front .sec02 .col .text nav.link a {
		padding: 1.0em 0;
	}
	.front .sec02 .col .text nav.link a .fa-chevron-down {
		display: none;
	}
	.front .sec02 .col .text nav.link a .fa-chevron-right {
		display: inline;
	}
}




/* sec03 */
.front .sec03 {}
.front .sec03 figure {
	position: relative;
	margin-bottom: 2.0em;
}
.front .sec03 figure figcaption {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background: #60875A;
	color: #fff;
	padding: 2.0em 1.0em;
	font-size: 1.6em;
}
.front .sec03 h2 {
	font-weight: normal;
	text-align: center;
	font-size: 1.75em;
	margin-bottom: 1.0em;
	color: #60875A;
}
.front .sec03 ul.link {
	display: flex;
	justify-content: space-between;
	margin-top: 1.5em;
	text-align: center;
}
.front .sec03 ul.link li {
	width: 33%;
}
.front .sec03 ul.link li a {
	display: block;
	position: relative;
	color: #60875A;
	background: #fff;
	border: 1px solid #333333;
	border-radius: 5px;
	padding: 1.0em 0;
	font-size: 1.1em;
}
.front .sec03 ul.link li a:hover {
	background: #60875A;
	color: #fff;
	text-decoration: none;
}
@media only screen and (max-width: 767px) {
	.front .sec03 figure {
		margin: 0 -16px;
		margin-bottom: 2.0em;
	}
	.front .sec03 figure figcaption {
		padding: 1.0em 1.0em;
		font-size: 1.2em;
	}
	.front .sec03 h2 {
		font-size: 1.4em;
	}
	.front .sec03 ul.link {
		margin-top: 1.0em;
	}
	.front .sec03 ul.link li a {
		font-size: 0.875em;
		padding: 1.2em 0;
	}
}


