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

common.css

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

/* ==================== mainVisual ==================== */

.mainVisual {
	background-image: url(../images/mainVisual_pic_01.jpg);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	width: 100%;
	margin-top: 100px;
	position: relative;
	padding: 30px 0 0;
}
.mainVisual__overlay01{
	background-image: url(../images/mainVisual_pic_02.png);
	background-repeat: no-repeat;
	background-position: top center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 101;
}
.mainVisual__overlay02{
	width: 100%;
	height: 100px;
	background-color: #24958d;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 100;
}
.mainVisual__subtit{
	position: relative;
	z-index: 102;
	text-align: center;
	max-width: 990px;
	margin: 0 auto;
}
.mainVisual__subtit img{
	margin: 0 auto;
}
.mainVisual__cont{
	/*margin-top: 20px;*/
}
.mainVisual__cont .mainVisual__cont1{
	max-width: 880px;
	width: 75.67%;
	position: relative;
	bottom: 0;
	left: 50%;
	transform: translateX(-68.92%);
	z-index: 103;
}
.mainVisual__cont .mainVisual__cont2{
	max-width: 278px;
	width: 23.9%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(108%);
	z-index: 104;
}

@media screen and (max-width: 1163px) {

}

@media screen and (max-width: 780px) {

	.mainVisual {
		background-image: url(../images/mainVisual_pic_01_sp.jpg);
		background-color: #24958d;
		background-size: 100% 60%;
		background-position: left top;
		margin-top: 60px;
	}

	.mainVisual__overlay01,
	.mainVisual__overlay02{
		display: none;
	}

	.mainVisual__cont{
		width: 89.33%;
		margin: 0 auto;
	}

	.mainVisual__cont .mainVisual__cont1{
		width: 100%;
		top: 0;
		left: 0;
		transform: translateX(0);
	}
	.mainVisual__cont .mainVisual__cont2{
		width: 100%;
		max-width: 780px;
		position: relative;
		top: 0;
		left: 0;
		transform: translateX(0);
	}
} 


/* ==================== intro ==================== */

.intro{
	margin: 120px auto 60px;
}
.intro__subtit{
	
}
.intro__box{
	display: flex;
    align-items: center;
	/*justify-content: space-between;*/
	justify-content: center;
	gap: 20px;
}
.intro__figure{
	max-width: 160px;
}
.intro__tit{
	font-size: 35px;
	color: #24958d;
	text-align:start;
	line-height: 1.6em;
}
.intro__tit a,
.intro__tit a:hover{
	transition: 0.3s;
}
.intro__txt{
	font-size: 18px;
	color: #333;
	line-height: 2em;
	text-align: center;
	margin-top: 30px;

}
.intro__txt--big{
	font-size: 20px;
}
.intro__txt--big.c-titUnderline--orange{
	font-size: 36px;
}

.intro__picWrap{
	display:  block;
	margin: 30px auto;
}
.intro__txt--green{
	color: #24958d;
	font-weight: bold;
	font-size: 18px;
}

@media screen and (max-width: 960px) {
	.intro{
		margin: 80px auto 60px;
	}
	.intro__box{
		justify-content: center;
		gap: 0px;
	}
 	.intro__tit{
		font-size: 24px;
	}
	.intro__figure{
		max-width: 130px;
		margin-right: 15px;
	}
}

@media screen and (max-width: 780px) {
	.intro{
		margin: 60px auto 50px;
	}
	.intro__box{
		display: block;
	}
	.intro__subtit{
		
	}
	.intro__tit{
		text-align: center;
	}
	.intro__figure{
		max-width: 100px;
		margin: 20px auto;

	}
	.intro__txt{
		margin-top: 35px;
		font-size: 16px;
		text-align: left;
		line-height: 1.8em;
	}
	.intro__txt--big{
		font-size: 18px;
	}
	.intro__txt--green{
		font-size: 16px;
	}
	.intro__txt .intro__txt--big.c-titUnderline--orange{
		font-size: 18px;
	}
}

/* ==================== about ==================== */

.about{
	background-color: #fbfaf5 ;
	text-align: center;
	padding: 60px 0;
}
.about__tit{
	font-size: 32px;
	margin: 0 0 40px;
	font-weight: bold;
}
.about__list{
	margin-bottom: 30px;
}
.about__list:last-child{
	margin-bottom: 0;
}

@media screen and (max-width: 780px) {
	.about{
		padding: 30px 0;
	}
	.about__tit{
		font-size: 14px;
		margin: 0 0 20px;
	}
	.about__list{
		
	}
}	

/* ==================== area ==================== */

.area{
	margin: 60px auto 120px;
}

@media screen and (max-width: 780px) {
	.area{
		margin: 30px auto 60px;
	}
}

/* ==================== cvArea ==================== */

.cvArea{
	width: 100%;
	background-image: url(../images/cvArea_bg_01.jpg);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	padding: 60px 0 0;
}
.cvArea .cvArea__wrap{
	display: flex;
	justify-content: space-between;
}
.cvArea__present{

}
.cvArea__cont{

}
.cvArea__cont .cvArea__contFigure{

}
.cvArea__cont .cvArea__button{
	text-align: center;
	margin: 30px auto 0;
}
.cvArea__cont .cvArea__button a{
	background-color: #f4901e;
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    padding: 20px 25px;
    display: inline-block;
    box-shadow: 2px 2px 4px 2px rgba(0,0,0, 0.2);
    border-radius: 33px;
}

@media screen and (max-width: 780px) {
	.cvArea{
		background-image: url(../images/cvArea_bg_01_sp.jpg);
		padding: 50px 0;
	}
	.cvArea .cvArea__wrap{
		display: block;
	}
	.cvArea__present{
		display: none;
	}
	.cvArea__cont .cvArea__button a{
		font-size: 18px;
    }
}


/* ==================== contDetails ==================== */

.contDetails{
	padding: 100px 0;
}

/* ====== contDetail01 ====== */
.contDetail01{

}
.contDetail01 .contDetail01__subtit{
	margin: 0 auto;
}
.contDetail01 .contDetail01__tit{
	font-size: 36px;
	text-align: center;
	margin-top: 20px;
}
.contDetail01 .contDetail01__arrow{
	max-width: 120px;
	width: 100%;
	margin: 30px auto;
}

/* ====== contDetail02 ====== */
.contDetail02{

}
.contDetail02 .contDetail02__tit{
	font-size: 36px;
	text-align: center;
	background-color: #fff7c5;
	padding: 20px 0;
}
.contDetail02 .contDetail02__tit span{
	color: #24958d;
	font-weight: bold;
}
.contDetail02 .contDetail02__figure01{
	margin-top: 30px;
}
.contDetail02 .contDetail02__figure02{
	margin-top: 30px;
}

/* ====== contDetail03 ====== */
.contDetail03{
	margin-top: 100px;
}
.contDetail03 .contDetail03__tit{
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	background-color: #1c2f42;
	padding: 20px 0;
	color: #fff;
}
.contDetail03 .contDetail03__cont{
	background-color: #fbfaf5;
	padding: 40px;
}
.contDetail03 .contDetail03__cont .contDetail03__contTit{
	color: #24958d;
	font-size: 36px;
	text-align: center;
	font-weight: bold;

}
.contDetail03 .contDetail03__cont .contDetail03__contWrap{
	display: flex;
	justify-content: space-between;
	margin: 40px auto 0;
}
.contDetail03 .contDetail03__cont .contDetail03__contFigure{
	width: 40.7%;
	max-width: 350px;
}
.contDetail03 .contDetail03__cont .contDetail03__contTxt{
	width: 55.81%;
	max-width: 480px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.8;
}
.contDetail03 .contDetail03__cont .contDetail03__contTxt--green{
	font-weight: bold;
	color: #24958d;
}

/* ====== contDetail04 ====== */
.contDetail04{
	margin-top: 80px;
}

/* ====== contDetail05 ====== */
.contDetail05{
	margin-top: 80px;
	background-color: #fff7c5;
	padding: 70px 0;
}
.contDetail05 .contDetail05__wrap{
	display: flex;
    align-items: center;
	justify-content: space-between;
}
.contDetail05 .contDetail05__figure{
	max-width: 160px;
	width: 13.76%;
}
.contDetail05 .contDetail05__txt{
	font-size: 34px;
	font-weight: bold;
	line-height: 2em ;
	display: inline-block;
	text-align: left;
}
.contDetail05 .contDetail05__txt span{
	color: #24958d;
	font-weight: bold;
}
@media screen and (max-width: 1163px) {
	.contDetail05 .contDetail05__txt{
		font-size: 30px;
	}
}
@media screen and (max-width: 1050px) {
	.contDetail05 .contDetail05__txt{
		font-size: 27px;
	}
}
@media screen and (max-width: 960px) {
	.contDetail01 .contDetail01__tit{
		
	}
	.contDetail02 .contDetail02__tit{
		
	}
	.contDetail03 .contDetail03__tit{
		
	}
	.contDetail03 .contDetail03__cont .contDetail03__contTit{
		
	}
	.contDetail03 .contDetail03__cont .contDetail03__contTxt{
		font-size: 16px;
	}
	.contDetail05 .contDetail05__txt{
		font-size: 24px;
	}
}
@media screen and (max-width: 845px) {
	.contDetail05 .contDetail05__wrap{
		display: block;
	}
	.contDetail05 .contDetail05__figure{
		width: 30%;
		margin: 0 auto 12px;
	}
	.contDetail05 .contDetail05__txt{
		font-size: 20px;
		line-height: 1.8em ;
	}
}

@media screen and (max-width: 780px) {
	.contDetails{
		padding: 50px 0;
	}
	.contDetail01 .contDetail01__tit{
		font-size: 24px;
	}
	.contDetail01 .contDetail01__arrow{
		max-width: 60px;
	}
	.contDetail02 .contDetail02__tit{
		font-size: 23px;
	}
	.contDetail02 .contDetail02__figure01,
	.contDetail02 .contDetail02__figure02{
		margin-top: 20px;
	}
	.contDetail03{
		margin-top: 50px;
	}
	.contDetail03 .contDetail03__tit{
		font-size: 24px;
		line-height: 1.5em ;
	}
	.contDetail03 .contDetail03__cont{
		padding: 20px;
	}
	.contDetail03 .contDetail03__cont .contDetail03__contFigure{
		width: 80%;
		margin: 0 auto 20px;
	}
	.contDetail03 .contDetail03__cont .contDetail03__contTxt{
		width: 100%;
	}
	.contDetail03 .contDetail03__cont .contDetail03__contTit{
		font-size: 24px;
		line-height: 1.5em ;
	}
	.contDetail03 .contDetail03__cont .contDetail03__contWrap{
		display: block;
	}
	.contDetail04{
		margin-top: 40px;
	}
	.contDetail05{
		margin-top: 40px;
		padding: 35px 0;
	}
	
}

/* ==================== voice ==================== */

.voice{
	padding: 0 0 60px;
}
.voice__tit{
	background-color: #1c2f42;
	margin-bottom: 60px;
}
.voice__wrap{
	width: 100%;
	margin: 0 auto 30px;
}
.voice__wrap:last-child{
	margin: 0 auto;
}

@media screen and (max-width: 780px) {
	.voice{
		padding: 0 0 30px;
	}
	.voice__tit{
		margin-bottom: 30px;
	}
}

/* ==================== flow ==================== */

.flow{
	padding: 0 0 60px;
}
.flow__tit{
	background-color: #24958d;
	margin-bottom: 60px;
}

.flow__items{

}
.flow__items .flow__item{
	text-align: center;
	margin-bottom: 15px;
}

.flow__item:nth-child(1) .flow__itemText{
	padding-left: 5%;
}
.flow__item:nth-child(2) .flow__itemText{
	padding-left: 11%;
}
.flow__item:nth-child(3) .flow__itemText{
	padding-left: 20%;
}
.flow__item:nth-child(4) .flow__itemText{
	padding-left: 16%;
}
.flow__item:nth-child(5) .flow__itemText{
	padding-left: 14%;
}

.flow__item .flow__itemWrap{
	display: flex;
	font-size: 28px;
	border-radius: 10px;
	border: 1px solid #ccc;
	margin-bottom: 20px;
}
.flow__item .flow__itemStep{
	color: #fff;
	background-color: #24958d;
	padding: 30px 50px;
	border-radius: 9px 0 0 9px;
	font-weight: bold;
}
.flow__item .flow__itemText{
	padding: 30px;					
	font-weight: bold;
}
.flow__item .flow__itemText span{
	font-weight: bold;
}
.flow__item .flow__itemAnnotation{
	display: inline-block;
	text-align: left;
	line-height: 1.8;
	margin-bottom: 20px;
	font-size: 16px;
}
.flow__item i{
	width: 0px;
	display: block;
	border-right: 20px solid transparent;
	border-top: 35px solid #53baba;
	border-left: 20px solid transparent;
	margin: 0 auto;
}

@media screen and (max-width: 780px) {
	.flow__item:nth-child(1) .flow__itemText,
	.flow__item:nth-child(2) .flow__itemText,
	.flow__item:nth-child(3) .flow__itemText,
	.flow__item:nth-child(4) .flow__itemText,
	.flow__item:nth-child(5) .flow__itemText{
		padding-left: 2.99%;
	}
	.flow__item .flow__itemWrap{
		font-size: 15px;
		margin-bottom: 10px;
		line-height: 1.5;
	}
	.flow__item .flow__itemStep{
		padding-top: 2.99%;
		padding-bottom: 2.99%;
		padding-left: 3.73%;
		padding-right: 3.73%;
	}
	.flow__item .flow__itemText{
		padding: 2.99%;
		font-size: 15px;
	}
	.flow__item .flow__itemText span{
		font-size: 11px;
	}
	.flow__item .flow__itemAnnotation{
		display: block;
		margin-bottom: 10px;
		font-size: 12px;
	}
	.flow__item i{
		border-right: 15px solid transparent;
		border-top: 25px solid #53baba;
		border-left: 15px solid transparent;
	}
}



