@charset "utf-8";
/*=============================================================
 contents Layout
=============================================================*/
#contents{
	line-height: 1.8;
}
/*=============================================================
 #ttl
=============================================================*/
h2{
	padding: 0 0 20px;
	font-size: 22px;
	color: #3B8B42;
}
/*=============================================================
 #main
=============================================================*/
#main{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
}
#mainPhoto{
	width: 56%;
}
#mainPhoto img{
	border-radius: 0 40px 40px 0;
	position: relative;
	z-index: 2;
}
#mainPhoto .photo{
	position: relative;
}
#mainPhoto .photo:after{
	content: "";
	width: calc(100%);
	height: calc(100%);
	display: block;
	background: url("../../shared/img/bg_line_green.png") repeat left top;
		border-radius: 0 40px 40px 0;
	position: absolute;
	bottom: -10px;
	left: -10px;
	z-index: 1;
}
#mainTxt{
	width: 40%;
	padding: 0 10% 220px 0;
}
#mainTxt h1{
	display: inline-block;	
	padding: 10px 0 35px 0;
	font-size: 42px;
	line-height: 1.15em !important;
	color: #3B8B42;
	position: relative;
}
#mainTxt h1 span{
	display: inline-block;
	padding: 0.25em 0 0;
	font-size: 60px;
	position: absolute;
	right: 0;
	bottom: 0;
}
#mainTxt h1 span:before{
	content: "";
	width: calc(2px);
	height: calc(100%);
	display: block;
	background-color: #3B8B42;
	position: absolute;
	top: 0;
	left: -15px;
	z-index: 1;
	transform: skewX(-30deg);
}
#mainTxt p.catch{
	padding: 30px 0 15px;
	font-size: 28px;
	line-height: 1.45;
	font-weight: 500;
}
#mainTxt p.caption{
	font-size: 18px;
	line-height: 1.45;
	font-weight: 500;
	color: #3B8B42;
}
#mainTxt p.name{
	font-size: 24px;
	line-height: 1.45;
}
#mainProfile{
	width: 45%;
	padding: 2.5%;
	border-radius: 25px;
	background-color: #3B8B42;
	position: absolute;
	bottom: -30px;
	right: 10%;
	z-index: 4;
	color: #fff;
	box-shadow: 0px 3px 6px -2px rgba(0,0,0,0.6);
}
#mainProfile dt{
	font-size: 20px;
	padding: 0 0 10px;
	font-weight: 500;
}
#mainProfile dd{
	font-size: 14px;
}
/*=============================================================
 #clm01
=============================================================*/
#clm01{
	width: 100%;
	margin: 125px 0 0;
	padding: 90px 0 90px 16.5%;
	position: relative;	
}
#clm01:after{
	content: "";
	width: calc(60%);
	height: calc(100%);
	display: block;
	border-radius: 40px;
	background-color: #f3f3f3;
	position: absolute;
	top: 0;
	left: 10%;
	z-index: 1;
}
#clm01Inner{
	width: 100%;
	position: relative;	
		z-index: 2;
}
#clm01Inner .clm{
	width: 100%;
	position: relative;
}
#clm01Inner .clmL{
	width: 44%;
}
#clm01Inner .clmR{
	width: 51%;
	position: absolute;
	top: 0;
	right: 0;
}
#clm01Inner .clmR .photo{
	width: 100%;
	padding: 0 0 10px 10px;
	position: relative;
}
#clm01Inner .clmR .photo div{
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 40px 0 0 40px;
}
#clm01Inner .clmR .photo img{
	border-radius: 40px 0 0 40px;
	position: relative;
	z-index: 3;
}
#clm01Inner .clmR .photo:after{
	content: "";
	width: calc(100%);
	height: calc(100% - 10px);
	display: block;
	background: url("../../shared/img/bg_line_green.png") repeat left top;
	border-radius: 40px 0 0 40px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
#clm01 h2.second,
#clm01 p + h2{
	padding: 65px 0 25px;
}
#clm01 p + p{
	padding: 25px 0 0;
}
/*=============================================================
 #clm02
=============================================================*/
#clm02{
	width: 67%;
	margin: 125px auto 0;
	position: relative;
	z-index: 2;
}
#clm02 .txt{
	width: 100%;
	padding: 0 20% 0 0;
	position: relative;
}
/*=============================================================
 #clm03
=============================================================*/

#clm03{
	width: 100%;
	margin: 125px 0 0;
	padding: 90px 0 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
}
#clm03 .clmL{
	width: 42%;
	position: relative;
	z-index: 3;
}
#clm03 .clmL .photo{
	width: 100%;
	padding: 0 0 10px;
	position: relative;
}
#clm03 .clmL .photo div{
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 0 40px 40px 0;
}
#clm03 .clmL .photo img{
	border-radius: 0 40px 40px 0;
	position: relative;
	z-index: 3;
}
#clm03 .clmL .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../../shared/img/bg_line_green.png") repeat left top;
	border-radius: 0 40px 40px 0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
#clm03 .clmR{
	width: 49%;
	padding: 0 12.5% 0 0;
	position: relative;
	z-index: 2;
}
#clm03 .clmR p + h2{
	padding: 65px 0 25px;
}
#clm03 .clmR p + p{
	padding: 25px 0 0;
}
#clm03 .clmR:after{
	content: "";
	width: calc(140%);
	height: calc(100% + 160px);
	display: block;
	border-radius: 25px 0 0 25px;
	background-color: #f3f3f3;
	position: absolute;
	top: -80px;
	right: 0;
	z-index: -1;
}
/*=============================================================
 #clm04
=============================================================*/
#clm04{
	width: 67%;
	margin: 125px auto 0;
	position: relative;
	z-index: 2;
}
#clm04 .txt{
	width: 100%;
	padding: 0 20% 0 0;
	position: relative;
}
#clm04 .photo{
	width: 100%;
	margin: 60px 0 0;
	padding: 0 0 10px 10px;
	position: relative;
}
#clm04 .photo div{
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 40px;
}
#clm04 .photo img{
	border-radius: 40px;
	position: relative;
	z-index: 2;
}
#clm04 .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../../shared/img/bg_line_green.png") repeat left top;
	border-radius: 40px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}



/*=============================================================
 #field
=============================================================*/
#field{
	margin: 100px 0 0;
	padding: 80px 0;
	position: relative;
	background-color: #ebf3ec;
}
#field:after{
	content: "";
	width: calc(70%);
	height: calc(100%);
	display: block;
	border-radius: 40px 0 0 40px;
	position: absolute;
	background-color: #ebf3ec;
	top: 0px;
	right: 0px;
	z-index: 1;
}
#field .fieldInner{
	width: 67%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#field .fieldInner p.txt{
	margin: 40px 0;
	font-size: 20px;
}
#field .fieldBtn{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
#field .fieldBtn .box{
	width: 47.5%;
}
#field .fieldBtn .box.act{
	opacity: 0.5;
}
#field .fieldBtn .box a{
	width: 100%;
	display: block;
	opacity: 1 !important;
}
#field .fieldBtn .box .photo{
	width: 100%;
	padding: 0 0 10px 10px;
	position: relative;
}
#field .fieldBtn .box .photo div{
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 18px;
}
#field .fieldBtn .box .photo img{
	border-radius: 18px;
	position: relative;
	z-index: 2;
	opacity: 1 !important;
	transition:transform 0.4s ease-out;
}
#field .fieldBtn .box a:hover .photo img{
	transform: scale(1.1);
}
#field .fieldBtn .box .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../../shared/img/bg_line_green.png") repeat left top;
	border-radius: 18px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#field .fieldBtn .box p.catch{
	padding: 20px 0 0 10px;
	font-size: 32px;
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.45;
}
#field .fieldBtn .box .boxName{
	width: 100%;
	padding: 20px 0 0 10px;
	display: flex;
	justify-content: space-between;
}
#field .fieldBtn .box .boxNameL{
	width: calc(100% - 70px);
}
#field .fieldBtn .box .caption{
	font-size: 18px;
	color: #3B8B42;
	font-weight: 500;
}
#field .fieldBtn .box .name{
	font-size: 24px;
	color: #333;
}
#field .fieldBtn .box .arw{
	width: 60px;
	height: 60px;
	margin-top: 5px;
	background-color: #3B8B42;
	border-radius: 9999px;
	position: relative;
}
#field .fieldBtn .box .arw:after{
	content: "";
	width: 23px;
	height: 16px;
	display: block;
	background: url("../../shared/img/arw_white.svg") no-repeat 0 0;
	position: absolute;
	top: 50%;
	right: 17px;
	transform: translateY(-50%);
	transition:right 0.4s ease-out;
}
#field .fieldBtn .box a:hover .arw{
	background-color: #FFC900;
}
#field .fieldBtn .box a:hover .arw:after{
	right: 12px;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:899px){
/*=============================================================
 #ttl
=============================================================*/
h2{
	padding: 0 0 15px;
	font-size: 16px;
}
/*=============================================================
 #main
=============================================================*/
#main{
	display: block;
}
#mainPhoto{
	width: 78.5%;
}
#mainPhoto .photo:after{
	background-size: 6px 10px;
}
#mainTxt{
	width: 100%;
	padding: 30px 5% 0px 5%;
}
#mainTxt h1{
	font-size: 40px;
}
#mainTxt h1 span{
	font-size: 57px;
}
#mainTxt p.catch{
	font-size: 20px;
}
#mainTxt p.catch span{
	white-space: nowrap;
}
#mainTxt p.caption{
	font-size: 16px;
}
#mainTxt p.name{
	font-size: 20px;
	line-height: 1.45;
}
#mainTxt p.sholder{
	font-size: 12px;
}
#mainProfile{
	width: 90%;
	margin: 30px 5% 0;
	padding: 5%;
	position: static;
}
/*=============================================================
 #clm01
=============================================================*/
#clm01{
	width: 100%;
	margin: 80px 0 0;
	padding: 5% 0 5%;
}
#clm01:after{
	content: "";
	width: calc(90%);
	height: calc(100%);
	left: 5%;
	border-radius: 25px;
}
#clm01Inner{
	width: 100%;
	position: relative;	
		z-index: 2;
}
#clm01Inner .clm{
	width: 100%;
	position: relative;
}
#clm01Inner .clmL{
	width: 100%;
	padding: 0 10%;
}
#clm01Inner .clmR{
	width: 100%;
	position: static;
	padding: 0 0 0 10%
}
#clm01Inner .clmR .photo{
	width: 100%;
	margin: 45px 0 0;
}
#clm01Inner .clmR .photo:after{
	content: "";
	width: calc(100%);
	background-size: 6px 10px;
}
#clm01 h2.second,
#clm01 p + h2{
	padding: 45px 0 20px;
}
#clm01 p + p{
	padding: 20px 0 0;
}
/*=============================================================
 #clm02
=============================================================*/
#clm02{
	width: 90%;
	margin: 80px auto 0;
}
#clm02 .txt{
	width: 100%;
	padding: 0;
}
/*=============================================================
 #clm03
=============================================================*/
#clm03{
	width: 100%;
	margin: 80px 0 0;
	padding: 50px 0 0;
	display: block;
}
#clm03 .clmL{
	width: 100%;
}
#clm03 .clmL .photo{
	width: 95%;
	padding: 0 0 10px;
	position: relative;
}
#clm03 .clmL .photo:after{
	content: "";
	width: calc(95%);
	background-size: 6px 10px;
}
#clm03 .clmR{
	width: 100%;
	padding: 10% 5% 5% 10%;
}
#clm03 .clmR p + h2{
	padding: 45px 0 20px;
}
#clm03:after{
	content: "";
	width: calc(95%);
	height: calc(100%);
	display: block;
	border-radius: 25px 0 0 25px;
	background-color: #f3f3f3;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}
#clm03 .clmR:after{
	display: none;
}
/*=============================================================
 #clm04
=============================================================*/
#clm04{
	width: 90%;
	margin: 80px auto 0;
}
#clm04 .txt{
	padding: 0;
}
#clm04 .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background-size: 6px 10px;
}
/*=============================================================
 #field
=============================================================*/
#field{
	margin: 110px 0 0;
	padding: 40px 5%;
}
#field:after{
	content: "";
	width: calc(82.5%);
}
#field .fieldInner{
	width: 100%;
}
#field .fieldInner p.txt{
	margin: 30px 0;
	font-size: 16px;
}
#field .fieldBtn{
	display: block;
}
#field .fieldBtn .box{
	width: 100%;
}
#field .fieldBtn .box + .box{
	margin: 70px 0 0;
}
#field .fieldBtn .box .photo{
	padding: 0 0 7px 7px;
}
#field .fieldBtn .box .photo:after{
	width: calc(100% - 7px);
	height: calc(100% - 7px);
	background-size: 6px 10px;
}
#field .fieldBtn .box p.catch{
	padding: 20px 0 0 0;
	font-size: 22px;
}
#field .fieldBtn .box p.catch span{
	white-space: nowrap;
}
#field .fieldBtn .box .boxName{
	align-items: center;
	padding: 20px 0 0 0;
}
#field .fieldBtn .box .caption{
	font-size: 14px;
}
#field .fieldBtn .box .name{
	font-size: 20px;
}
#field .fieldBtn .box .arw{
	margin-top: 0px;
}
}
