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

/* =====================
  .common
===================== */
/* sub-link */
.sub-link {
	text-align: center;
	margin-bottom: 80px;
}
.sub-link ul,
.sub-link ul li {
	display: inline-block;
}
.sub-link ul li a {
	padding: 0 20px;
	border-right: 1px solid #ccc;
	text-decoration: underline;
}
.sub-link ul li:last-child a {
	border-right: none;
}
.sub-link ul li a:hover {
	text-decoration: none;
}
.sub-link ul li.active a {
	color: #ccc;
	text-decoration: none;
}

/* =====================
  box
===================== */
main h3 {
	font-weight: bold;
	font-size: 3.6rem;
	padding-bottom: 100px;
	letter-spacing: 0.1em;
}
main .img-wrap {
	width: 37%;
	display: inline-block;
	vertical-align: top;
}
main .img-wrap img {
	width: 100%;
}
main .box {
	width: 100%;
	display: inline-block;
	text-align: left;
	vertical-align: top;
	position: relative;
}
main .box.right {
	margin-left: 2%;
}
main .box.left {
	margin-right: 5%;
}
main .box h4 {
	font-size: 2.8rem;
	text-align: left;
	margin-bottom: 40px;
	line-height: 1.4;
	letter-spacing: 0;
	font-weight: 600;
}

/*  sec01 */
main .sec01 .box {
	height: 380px;
}
main .sec01 .img-wrap {
	margin-top: -50px;
}
main .box .name {
	font-weight: bold;
	font-size: 2rem;
	position: absolute;
	left: 0;
	bottom: 0;
}
main .box .name span {
	font-size: 1.4rem;
	display: block;
}

/*  sec03  sec04 */
main .sec03 {
	background-color: #e5d6cd;
	padding-bottom: 100px;
}
main .sec04 {
		margin: 0px 0 0 0;
	    padding: 165px 0 60px 0;
	background-color: #fff;
}
main .sec04 .next{
    font-family: 'Roboto', sans-serif;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.8em;
	color: #e5d6cd;
}
main .sec04 h2{
	font-size: 60px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.1em;
}
main .sec04 .vision-logo{
	text-align: center;
	margin-top: 13px;
}

/* =====================
  future sec02
===================== */
main .sec02 {
	margin: -70px 0 0 0;
    font-family: 'Roboto', sans-serif;
	text-align: center;
    background-color: #e5d6cd;
	color: #fff;	
	padding: 100px 0 40px 0;
	font-size: 8rem;
	font-weight: bold;
	letter-spacing: 0.8em;
}

/* =====================
 .link-area
===================== */
.link-area a{
	width: 100%;
	height: 180px;
	display: table;
	box-sizing: border-box;
	border-radius: 10px;
	background-color:#009be9;
	overflow: hidden;
	position: relative;
	line-height: 0;
}
.link-area .detail01 {
	display: table-cell;
	vertical-align: middle;
	position: absolute;
	left: 80px;
	top: 50%;
	transform: translate(0,-50%);
}
.link-area .detail01 p {
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.3em;
	color: #fff;
}
.link-area .detail01 p:before{
	content: "-";
	color: #fff;
}
.link-area .detail02{
	position: absolute;
	right: 0;
	top: 0;
}

.link-bnr .detail01 .caption01 {
	font-size: 2.8rem;
	font-family: 'Roboto', sans-serif;
    padding: 10% 5%;
}
.link-bnr .detail01 .caption02 {
    padding: 14% 2%;
    font-weight: bold;
	padding: 11.5% 2%;
}
.link-bnr .detail02 {
    padding: 90px 0;
}


/* ====================================================================================
         SP時
  ==================================================================================== */
@media screen and (max-width: 768px) {

/* =====================
  .common
===================== */
	/* sub-link */
	.sub-link {
		margin-bottom: 40px;
	}
	.sub-link ul li a {
		padding: 0 10px;
	}


/* =====================
  box
===================== */
	main h3 {
		font-size: 2rem;
		margin-bottom: 40px!important;
	}
	main h3 span {
		display: block;
	}
	main .img-wrap {
		width: 100%;
		margin-bottom: 20px;
	}
	main .box {
		width: 100%;
	}
	main .box.right {
		margin-left: 0%;
	}
	main .box.left {
		margin-right: 0%;
	}
	main .box h4 {
		font-size: 1.8rem;
		margin-bottom: 20px;
	}
/*  sec01 */
	main .sec01 .box {
		height: auto;
	}
	main .sec01 .img-wrap {
		margin-top: 0px;
	}
	main .box .name {
		font-size: 1.8rem;
		position: static;
		margin-top: 20px;
	}
	main .box .name span {
		font-size: 1.2rem;
	}


/* =====================
  future sec02
===================== */
	main .sec02 {
		margin: 40px 0 0px 0;
		padding: 40px 0 20px;
		font-size: 4rem;
		letter-spacing: 0.4em;
	}	

/*  sec03  sec04 */
	main .sec03 .img-wrap {
		margin-top: 30px;
	}
	main .sec03{
		padding-bottom: 70px;
		margin: 0;
	}
	main .sec04 .box {
		margin-top: 25px;
	}
	main .sec04{
		margin: 0;
		padding: 90px 0;
	}
	main .sec04 .next{
		font-size: 14px;
		letter-spacing: 0.2em;
	}
	main .sec04 h2{
		font-size: 24px;
	}
	main .sec04 .vision-logo{
		margin-top: 10px;
	}

	
	
/* =====================
 .link-area
===================== */
	.link-area{
		margin-bottom: 60px;
	}
	.link-area a{
		width: 100%;
		height: auto;
		display: block;
	}
	.link-area .detail01 {
		display: block;
		position: static;
		transform: translate(0,0);
		width: 100%;
		text-align: center;
		padding: 20px;
	}
	.link-area .detail01 p {
		font-size: 1.4rem;
		letter-spacing: 0.1em;
	}
	.link-area .detail02{
		display: block;
		position: static;
		width: 100%;
	}
	.link-area .detail02 img{
		width: 100%;
	}

	.link-bnr {
		margin-bottom: 20px;
	}
	.link-bnr .detail01 .caption01 {
		font-size: 2rem;
		padding: 20px 0 0 0;
	}
	.link-bnr .detail01 .caption02 {
		padding: 0;
		margin: 15px 0 20px 0;
	}
	.link-bnr .detail02 {
		padding: 40px;
	}
	

}




