@charset "UTF-8";

/* ------------------------------
	mv
------------------------------ */
#mv{
	position: relative;
}
.mv_scroll{
	position: absolute;
	bottom: 8px;
	left: 50%;
	margin-left: -485px;
	color: #fff;
	height: 80px;
	padding: 8px 0 0 20px;
	letter-spacing: 0.2em;
}
.mv_scroll:before{
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: 80px;
	left: 0;
}

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.mv_scroll{
		bottom: 8px;
		margin-left: -45vw;
		height: 10vw;
		padding: 8px 0 0 2vw;
		font-size: 2.9vw
	}
	.mv_scroll:before{
		height: 10vw;
	}

}

/* ------------------------------
	whatis
------------------------------ */
#whatis .ttl{
	font-size: 2.4rem;
	margin-bottom: 14px;
}
#whatis .ttl .small{
	font-size: 1.6rem;
}
#whatis p{
	font-size: 1.45rem;
	line-height: 2;
	margin-bottom: 5px;
}

@media screen and (min-width: 769px) {
	#whatis .wrap{
		width: 1000px;
	}

}
@media screen and (max-width: 768px) {
	#whatis .ttl{
		font-size: 5.3vw;
		margin-bottom: 0.5em;
	}
	#whatis .ttl .small{
		font-size: 2.9vw;
		line-height: 1;
		display: block;
		margin-bottom: 0.5em;
	}
	#whatis p{
		font-size: 3.2vw;
	}
}
/* ------------------------------
	message
------------------------------ */
#message .ttl{
	font-size: 2.4rem;
	margin-bottom: 34px;
}
#message dl {
	margin-bottom: 25px;
}
#message dl dt {
	margin-bottom: 10px;
	font-size: 1.8rem;
	color: #EF857D;
}
#message dl dd {
	font-size: 1.3rem;
}
#message ul {
	display: flex;
	gap: 0 10px;
}
#message ul li {

}
@media screen and (max-width: 768px) {
	#message .ttl{
		font-size: 5.3vw;
		margin-bottom: 1em;
	}
}
/* ------------------------------
	news
------------------------------ */
#news{

}
.newsLi{
	border-bottom: 1px solid #DEDEDE;
	margin-bottom: 42px;
}
.newsLi li{
	position: relative;
	border-top: 1px solid #DEDEDE;
}
.newsLi li:before, .newsLi li:after{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 2px;
	border-radius: 8px;
	background: #C4C4C4;
	transform-origin: top right;
}
.newsLi li:before{
	transform: rotate(-40deg);
	margin-right: 1px;
}
.newsLi li:after{
	transform: rotate(40deg);
	margin-top: 1px;
}
.newsLi li a{
	padding: 15px 40px 15px 23px;
	letter-spacing: 0.1em;
}
.newsLi li .date{
	font-weight: 500;

}
.newsLi li .txt{

}
#news .btn{
	display: block;
	line-height: 1;
	width: 260px;
	margin: 0 auto;
	text-align: center;
	padding: 14px 0;
	border:1px solid #ef857d;
	color: #ef857d;
}
#news .btn:hover{
	background: #ef857d;
	color: #fff;
	opacity: 1;
}
@media screen and (min-width: 769px) {
	.newsLi{
		padding-top: 4px;
	}
	.newsLi li .txt{
		width: 610px;
	}
}
@media screen and (max-width: 768px) {
	.newsLi{
		margin-bottom: 20px;
	}
	.newsLi li:before, .newsLi li:after{
		right: 1vw;
	}
	.newsLi li a{
		padding: 10px 20px 10px 10px;
	}
	.newsLi li span{
		display: block;
	}
	#news .btn{
		width: 70vw;
		padding: 10px 0;
	}
}


/* ------------------------------
	reason
------------------------------ */
#reason{
/*	background: url(../img/reason_bg.jpg) center no-repeat; lazyload*/
	background-size: cover;

}
#reason .ttl{
	font-size: 1.7rem;
	margin-bottom: 25px;
	font-weight: bold;
	letter-spacing: 0.03em;
}
#reason .txt{
	letter-spacing: 0.03em;
	margin-bottom: 25px;
}
#reason .txt p+p{
	margin-top: 2em;
}
.reason_blk{
	width: 100%;
	background: rgba(255,255,255,0.7);
	border: 1px solid rgba(255,20,64,0.7);
	padding: 14px 25px 10px 25px;
}
.reason_blk .ttls{
	font-size: 1.5rem;
	font-weight: bold;
	color: #FF1440;
	line-height: 1.3;
	letter-spacing: 0.05em;

}
.reason_blk ul{
	padding-top: 0.2em;
}
.reason_blk li{
	font-size: 1.2rem;
	padding-left: 10px;
	position: relative;
	line-height: 1.8;
}
.reason_blk li:before{
	content: "";
	display: block;
	position: absolute;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #FF1440;
	top: 0.5em;
	left: 0px;
}

.reason_blk .img{
	padding-left: 25px;
}
.reason_blk .img img{
	width: 120px;
}
@media screen and (min-width: 769px) {
	#reason{
		background-position: top center;
	}
	#reason .wrap{
		width: 750px;
	}
	#reason .txt{
		padding: 0 25px;
	}

}
@media screen and (max-width: 768px) {
	#reason{
	}
	#reason .ttl{
		font-size: 4.2vw;
		margin-bottom: 1.2em;
	}
	#reason .txt{
		margin-bottom: 15px;
	}
	#reason .txt p+p{
		margin-top: 1em;
	}
	.reason_blk{
		padding: 2vw 3.5vw;
	}
	.reason_blk .ttls{
		font-size: 3.7vw;
	}
	.reason_blk ul{
	}
	.reason_blk li{
		font-size: 2.6vw;
		padding-left: 8px;
	}
	.reason_blk li:before{
		width: 4px;
		height: 4px;
		top: 0.7em;
	}

	.reason_blk .img{
		padding-left: 0;
		padding-top: 0.5em;
	}
	.reason_blk .img img{
		width: 26vw;
	}
}




/* ------------------------------
	company
------------------------------ */
#company{

}
#company .ttl{
	color: #AAB4C4;
	letter-spacing: 0.3em;
	padding-left: 20px;
	margin-bottom: 8px;
	font-weight: 300;
}
.companyTbl{
	margin-bottom: 50px;
	border-top: 1px solid #DEDEDE;
}
.companyTbl3{
	margin-bottom: 0;
}
.companyTbl th, .companyTbl td{
	border-bottom: 1px solid #DEDEDE;
	vertical-align: middle;
	font-weight: 100;
}
.companyTbl th{
	font-weight: 400;
	letter-spacing: 0.1em;
	width: 140px;
	padding: 15px 0 15px 20px;
	color: #666;
	font-weight: 300;
}
.companyTbl td{
	padding: 15px 20px;
	letter-spacing: 0.05em;
	line-height: 1.7;
}

@media screen and (min-width: 769px) {
	#company{
		padding-bottom: 88px;
	}
	.companyTbl2 th{
		width: 120px;
	}

}
@media screen and (max-width: 768px) {
	#company{
	}
	#company .ttl{
		padding-left: 2vw;
		margin-bottom: 0.2em;
	}
	.companyTbl{
		margin-bottom: 30px;
	}
	.companyTbl3{
		margin-bottom: 0;
	}
	.companyTbl th{
		letter-spacing: 0.1em;
		width: 5em;
		padding: 2vw 0 2vw 2vw;
	}
	.companyTbl td{
		padding: 2vw;
	}

}


/* ------------------------------
	history
------------------------------ */
#history{
	width: 100%;
	overflow: hidden;
}
.history_timeline{
	position: relative;
	padding: 38px 0 0 ;
	z-index: 1;
	width: 100%;
}
.history_timeline:before{
	content: "";
	display: block;
	position: absolute;
	width: 7px;
	height: 100%;
	left: 50%;
	top: 0;
	margin-left: -3px;
	background: linear-gradient(45deg, rgba(250, 247, 244, 1) 20%, rgba(239, 133, 125, 1) 100%);
}
.history_box{
	position: relative;
	padding: 50px 0 50px;
}
.history_box:before{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}
.history_box:nth-of-type(even):before{
	background: linear-gradient(45deg, rgba(246,247,249,1) 0%,rgba(250, 247, 244,1) 95%);
}
.history_box:nth-of-type(4n):before{
	background: linear-gradient(45deg, rgba(246,247,249,1) 0%,rgba(250, 247, 244,1) 95%)
}
.history_box .ttl{
	z-index: 3;
	position: absolute;
	top: 0;
	line-height: 1;
	font-size: 5rem;
	color: #919191;
}
.history_box .ttl span{
	display: inline-block;
	position: absolute;
	transform: translateY(-65%);
	left: 247px;
}
.history_box .ttl:before, .history_box .ttl:after{
	content: "";
	display: block;
	position: absolute;
}
.history_box .ttl:before{
	width: 7px;
	height: 7px;
	background: #ABABAB;
	left: 0;
	top: -3px;
}
.history_box .ttl:after{
	width: 200px;
	height: 1px;
	background: #ABABAB;
	top: 0;
	left: 27px;
}
.year2{
	position: absolute;
	writing-mode: vertical-rl;
	line-height: 1;
	top: 0;
	color: #ECF5FF;
	font-size: 9.5rem;
	z-index: -1;
}
.history_box:nth-of-type(odd) .year2{
	right: -0.35em;
}
.history_box:nth-of-type(even) .year2{
	left: -0.05em;
	color: #FFFFFF;
}
.history_box:nth-of-type(4n+1) .year2{
	color: #F2F4F6;
}
.history_item{
	align-items: center;
}
.history_item .ph{
	position: relative;
}
.history_item .txt{
}

	.history_item p{
		line-height: 1.8;
		letter-spacing: 0.05em;
	}
	.history_item .ttl_year{
		font-size: 1.6rem;
		color: #A7B1C1;
		font-weight: bold;
		position: relative;
		line-height: 1;
		margin-bottom: 0.4em;
	}
	.history_item .ttl_year:before{
		content: "";
		display: block;
		position: absolute;
		left: -16px;
		top: 50%;
		transform:translateY(-50%);
		width: 8px;
		height: 8px;
		background: #A6B2C2;
	}
	.history_item .ttls{
		font-size: 1.6rem;
		font-weight: bold;
		text-indent: -0.5em;
		line-height: 1.4;
		margin-bottom: 0.2em;
		letter-spacing: 0.05em;
	}


	.item2010_1 img{
		width: 124px;
	}
	.item2010_2 img{
		width: 126px;
	}
	.item2011_2 img{
		width: 183px;
	}
	.item2011_3 img{
		width: 96px;
	}
	.item2013_1 img{
		width: 83px;
	}
	.item2014_1 img{
		width: 60px;
	}
	.item2017_1 img{
		width: 86px;
	}
	.item2017_2 img{
		width: 227px;
	}
	.item2020_1 img{
		width: 69px;
	}



@media screen and (min-width: 769px) {
	.history_box{
		padding: 30px 0 30px;
	}
	.history_box .ttl{
		width: 50%;
	}
	.history_box .ttl{
		left: calc(50% - 3px);
	}
	.history_box .ttl_r{
		left: auto;
		right: calc(50% - 4px);
		padding-left: 0;
		text-align:right;
	}
	.history_box .ttl_r span{
		right: 247px;
		left: auto;
	}
	.history_box .ttl_r:before{
		left: auto;
		right: 0;
		top: -3px;
	}
	.history_box .ttl_r:after{
		top: 0;
		right: 27px;
		left: auto;
	}
	.history_item{
		width: 460px;
		margin:0 50% 0 auto;
		padding-right: 32px;
		flex-direction: row-reverse;
	}
	.history_item.item_r{
		width: 490px;
		margin:0 auto 0 50%;
		padding-right: 0;
		padding-left: 50px;
		flex-direction: row;
	}

	.history_item .ph{
		margin-right: 25px;
	}
	.history_item.item_r .ph{
		margin-left: 0;
		margin-right: 0;
	}

	.history2010{

	}
	.item2010_1{

	}
	.item2010_1 img{
		margin-bottom: -15px;
	}

	.item2010_2{
		width: 485px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-100%, -50%);
	}
	.item2010_2 .ph{
		margin-right: 30px;
	}

	.history2011{
		padding-bottom: 30px;
	}
	.item2011_1{

	}
	.item2011_2{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	.item2011_3{
		margin-top: 96px;
	}
	.item2011_3 .txt{
		padding-left: 77px;
	}
	.item2011_3 .ph img{
		position: absolute;
		top: 0;
		left: -15px;
		transform: translateY(-50%);
	}

	.history2013{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.item2013_1{
		width: 460px!important;
	}
	.item2013_1 .txt{
		padding-right: 100px;
	}
	.item2013_1 .ph img{
		position: absolute;
		top: 0;
		right: 0;
		transform: translateY(-50%);
	}

	.history2014{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.item2014_1{
	}
	.item2014_1 .txt{
		padding-left: 85px;
	}
	.item2014_1 img{
		position: absolute;
		transform: translateY(-50%);
		margin-top: -20px;
	}
	.item2014_2{
	
	}

	.history2017{
		padding-top: 15px;
		padding-bottom: 45px;
	}
	.item2017_1{
	
	}
	.item2017_2{
		width: 480px;
		position: absolute;
		bottom: -30px;
		left: 50%;
		transform: translate(-100%, 0%);
	}

	.history2020{
		height: 220px;
	}
	.item2020_1{
		position: absolute;
		top: -35px;
	}
	.item2020_1 img{
		margin-right: 8px;
	}
	.history2025{
		padding-top: 15px;
		padding-bottom: 45px;
	}
	.item2025_1{
	
	}
	.item2025_2{
		width: 480px;
		position: absolute;
		bottom: -30px;
		right: 50%;
		transform: translate(100%, 0%);
	}
}
@media screen and (max-width: 768px) {
		.history_timeline{
			padding-top: 5vw;
		}
		.history_timeline:before{
			left: 5vw;
			margin-left: 0;
		}
		.history_box{
			padding: 7vw 0;
		}
		.history_box .ttl{
			margin-left: 5vw;
			font-size: 9vw;
		}
	.safari .history_box .ttl span{
		/*transform:translateY(-50%);*/
		font-style: italic;
	}
	.history_box .ttl span{
		left: 70vw;
	}
	.history_box .ttl:after{
		width: 60vw;
		left: 6vw;
	}
	.history_item{
		padding: 0 5vw 0 13vw;
	}
	.history_item +.history_item{
		margin-top: 5vw;
	}

	.history_item .ph{
		margin-left: 3vw;
	}
	.history_item .txt{
	}

	.history_item p{
		line-height: 1.6;
		letter-spacing: 0.05em;
	}
	.history_item .ttl_year{
		font-size: 3.7vw;
	}
	.history_item .ttl_year:before{
		content: "";
		display: block;
		position: absolute;
		left: -3.5vw;
		top: 50%;
		transform:translateY(-50%);
		width: 2vw;
		height: 2vw;
		background: #A6B2C2;
	}
	.history_item .ttls{
		font-size: 4.2vw;
		font-weight: bold;
		text-indent: -0.5em;
		line-height: 1.4;
		margin-bottom: 0.2em;
		letter-spacing: 0.05em;
	}

	.history2020{
		padding-bottom: 0;
	}
	.item2010_1 img{
		width: 21.8vw;
		margin-right: 1vw;
	}
	.item2010_2 img{
		width: 22.4vw;
		margin-right: 1vw;
	}
	.item2011_2 img{
		width: 32.5vw;
	}
	.item2011_3 img{
		width: 17vw;
		margin-right: 2vw;
	}
	.item2013_1 img{
		width: 14.6vw;
		margin-right: 3vw;
	}
	.item2014_1 img{
		width: 10.6vw;
		margin-right: 4vw;
	}
	.item2017_1 img{
		width: 15.2vw;
		margin-right: 2vw;
	}
	.item2017_2 img{
		width: 34vw;
	}
	.item2020_1 img{
		width: 12.2vw;
		margin-right: 3vw;
	}
	.item2025_1 img{
		width: 12.2vw;
		margin-right: 3vw;
	}
	.item2025_2 img{
		width: 12.2vw;
		margin-right: 3vw;
	}


}


/* ------------------------------
	menber
------------------------------ */
#menber{
	background: linear-gradient(45deg, rgba(250, 247, 244, 1) 20%, rgba(239, 133, 125, 1) 100%);
}
#menber .mid1 .txt{
	color: #fff;
}
#menber .lead{
	color: #1A1A1A;
	line-height: 2;
	font-weight: 100;
	margin-bottom: 50px;
}

/*--slide--*/
.member_slide{
	width: 930px;
	margin: 0 auto;
	position: relative;
}
.member_slide li{
	width: 280px;
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 40%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 40%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
	text-align:center;
	margin: 0 15px;
	padding: 28px 25px 60px;
}
.member_slide li p{
	font-weight: 100;
	letter-spacing: 0.1em;
	line-height: 1.9;
}
.member_slide li .ttl{
	font-size: 1.7rem;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #AAB4C4;
	margin-bottom: 18px;
}
.member_slide li .ph{
	width: 110px;
	margin: 0 auto 15px;
}
.member_slide li .ph img{

}
.member_slide li .namebox{
	border-top: 1px solid #E1E5EA;
	border-bottom: 1px solid #E1E5EA;
	text-align:left;
	line-height: 1.8;
	padding: 10px 10px 8px;
	margin-bottom: 16px;
}
.member_slide li .namebox .sub{
	font-weight: 100;
}
.member_slide li .namebox .name{
	font-size: 1.4rem;

}
.member_slide .slick-arrow{
	position: absolute;
	top: 198px;
	width: 30px;
	height: 30px;
	background: #808080;
	text-indent: -9999px;
	z-index: 99;
	transition: 0.4s;
}
.member_slide .slick-arrow:before, .member_slide .slick-arrow:after{
	content: "";
	display: block;
	position: absolute;
	width: 7px;
	height: 1px;
	background: #C5E2FF;
	top: 50%;
	left: 50%;
	margin-left: -3px;
	transform-origin: left;
}

.member_slide .slick-arrow:hover{
	opacity: 0.7;
}
.member_slide .slick-prev{
	left: -35px;
}
.member_slide .slick-arrow:before{
	transform:rotate(40deg);
}
.member_slide .slick-arrow:after{
	transform:rotate(-40deg);
}
.member_slide .slick-next:before, .member_slide .slick-next:after{
	transform-origin: right;
}
.member_slide .slick-next{
	right: -35px;
}
.member_slide .slick-arrow:hover{
	opacity: 1;
	background: #ef857d;
}

@media screen and (min-width: 769px) {
	.member_slide li{
		/*height: 530px;*/
		height: 570px;
	}
}
@media screen and (max-width: 768px) {
	#menber{
	}
	#menber .lead{
		margin-bottom: 20px;
	}

	/*--slide--*/
	.member_slide{
		width: 100%;
	}
	.member_slide li{
		width: 100%;
		margin: 0 15px;
		padding: 5vw;
	}
	.member_slide li p{
	}
	.member_slide li .ttl{
		font-size: 4.5vw;
		margin-bottom: 0.5em;
	}
	.member_slide li .ph{
		width: 29vw;
		margin: 0 auto 4vw;
	}
	.member_slide li .ph img{

	}
	.member_slide li .namebox{
		text-align:left;
		padding: 2vw;
		margin-bottom: 3.2vw;
	}
	.member_slide li .namebox .sub{
	}
	.member_slide li .namebox .name{
		font-size: 4.2vw;

	}
	.member_slide .slick-arrow{
		top: 30vw;
	}
	.member_slide .slick-prev{
		left: 2vw;
	}
	.member_slide .slick-next{
		right: 2vw;
	}

}




/* ------------------------------
	flow
------------------------------ */
#flow{

}
#flow .lead_ttl{
	font-size: 1.6rem;
	margin-bottom: 12px;
	font-weight: 500;
}
#flow .lead{
	line-height: 2;
	font-weight: 100;
	margin-bottom: 50px;
}
.flow_li{

}
.flow_li li{
	width: 150px;

}
.flow_li .ph{
	margin-bottom: 30px;
}
.flow_li .txt{
	
}
.flow_li .txt p{
	line-height: 2;
	letter-spacing: 0.2em;
}
.flow_li .txt .ttl{
	text-align:center;
	color: #ef857d;
	font-size: 1.7rem;
	line-height: 1;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

@media screen and (min-width: 769px) {
	#flow{
		padding-top: 90px;
		width: 1000px;
	}
	.flow_li{
		width: 940px;
		margin: 0 auto;
	}

}
@media screen and (max-width: 768px) {
	#flow{

	}
	#flow .lead_ttl{
		font-size: 4.2vw;
		margin-bottom: 0.5em;
	}
	#flow .lead{
		margin-bottom: 30px;
	}
	.flow_li{

	}
	.flow_li li{
		width: 100%;
		display: flex;
		align-items: center;
	}
	.flow_li li+li{
		margin-top: 15px;
	}
	.flow_li .ph{
		width: 25%;
		margin-bottom: 0px;
	}
	.flow_li .txt{
		width: 75%;
		padding-left: 4%;
	}

	.flow_li .txt p{
		line-height: 1.6;
		letter-spacing: 0.1em;
	}
	.flow_li .txt .ttl{
		font-size: 4vw;
		margin-bottom: 0.3em;
		text-align: left;
	}
}




/* ------------------------------
	products
------------------------------ */
#products{

}
/*--detail--*/
.mid2{
	text-align:center;
	font-size: 2.1rem;
	color: #0083C4;
	position: relative;
	font-weight: bold;
	line-height: 1.5;
	padding-bottom: 14px;
	margin-bottom: 30px;
}
.mid2:before{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform:translateX(-50%);
	width: 20px;
	height: 1px;
	background: #0071B4;
}

.product_main{
	position: relative;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
	padding-top: 58px;
	padding-bottom: 75px;
}
.product_main .ph{
	text-align:center;
}
.product_main .txt{
}
.product_main .txt p{
	line-height: 2;
	font-weight: 100;
}


.product_reasonblk{
	background: #fff;
	margin-bottom: 22px;
}
.product_reasonblk .ttl{
	text-align:center;
	color: #fff;
	padding: 11px;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	background: -moz-linear-gradient(45deg,  rgba(126,188,255,0.05) 0%, rgba(126,188,255,0.5) 5%, rgba(126,188,255,1) 23%, rgba(126,188,255,1) 77%, rgba(126,188,255,0.5) 95%, rgba(126,188,255,0.05) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(45deg,  rgba(126,188,255,0.05) 0%,rgba(126,188,255,0.5) 5%,rgba(126,188,255,1) 23%,rgba(126,188,255,1) 77%,rgba(126,188,255,0.5) 95%,rgba(126,188,255,0.05) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(45deg,  rgba(126,188,255,0.05) 0%,rgba(126,188,255,0.5) 5%,rgba(126,188,255,1) 23%,rgba(126,188,255,1) 77%,rgba(126,188,255,0.5) 95%,rgba(126,188,255,0.05) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0d7ebcff', endColorstr='#0d7ebcff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.product_reasonblk ul{
	padding: 10px 42px 18px;
}
.product_reasonblk li{
	text-align:center;
	line-height: 2;
	padding: 16px 0;
	letter-spacing: 0.1em;
	font-weight: 400;
	color: #4D4D4D;
}
.product_reasonblk li+li{
	border-top: 1px solid #EEF0F3;
}


.product_detail{
	padding: 80px 0;
	position: relative;
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: 100%;
}
.product_detail1{
	margin-bottom: 105px;
}
.product_detail1 p{
	line-height: 2;
}


.product_step{

}
.product_step li{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
	text-align:center;
	position: relative;
}
.product_step li:last-child{
	background-position: top;
}
.product_step li p{
	text-align:center;
}
.product_step li .ttl{
	font-size: 1.8rem;
}
 .product_step li .ttl .num{
	display: inline-block;
}
#product1 .product_main{
/*	background-image: url(../img/product1_1bg.jpg); lazyload*/
}
#product1 .product_detail{
/*	background-image: url(../img/product1_3bg.png); lazyload*/
}
.product1_detailbox ul{
	margin-bottom: 12px;
}
.product1_detailbox li{
	font-size: 1.4rem;
}
.product1_detailbox li+li{
	margin-top: 12px;
}
.product1_detailbox li span{
	font-size: 1.1rem;
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 0.2em;
	letter-spacing: 0.1em;
	color: #9ECEFF;
	margin-right: 8px;
}

.product1_detailbox .point{
	border:1px solid #919191;
	padding: 4px;
	letter-spacing: normal;
	width: 470px;
	margin-left: 7px;
	text-align:center;
}

.product1_detailbox{

}
#product1 .product_step img{

}
#product1 .product_step{
	margin-bottom: 20px;
}

/*--detail 2--*/
#product2{

}
#product2 .mid2{
	color: #FF1440;
}
#product2 .mid2:before{
	background: #FF1440;
}
#product2 .product_main{
/*	background-image: url(../img/product2_1bg.jpg); lazyload*/
}
#product2 .product_reasonblk .ttl{
	background: -moz-linear-gradient(45deg,  rgba(228,0,127,0.05) 0%, rgba(228,0,127,0.5) 5%, rgba(228,0,127,1) 23%, rgba(228,0,127,1) 77%, rgba(228,0,127,0.5) 95%, rgba(228,0,127,0.05) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(45deg,  rgba(228,0,127,0.05) 0%,rgba(228,0,127,0.5) 5%,rgba(228,0,127,1) 23%,rgba(228,0,127,1) 77%,rgba(228,0,127,0.5) 95%,rgba(228,0,127,0.05) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(45deg,  rgba(228,0,127,0.05) 0%,rgba(228,0,127,0.5) 5%,rgba(228,0,127,1) 23%,rgba(228,0,127,1) 77%,rgba(228,0,127,0.5) 95%,rgba(228,0,127,0.05) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
#product2 .product_detail{
/*	background-image: url(../img/product2_3bg.png); lazyload*/
}
#product2 .product_step li{
/*	background-image: url(../img/product2_step_bg.png); lazyload*/
}
#product2 .product_step .point{
	text-align:center;
	margin-bottom: 12px;
}
#product2 .product_step .point span{
	text-align: left;
	display: inline-block;
	vertical-align: top;
}
#product2 .product_step .point span+span{
	margin-left: 10px;
}
.product2_3box{
	border: 2px solid #F37FBC;
	width: 430px;
	margin: 20px auto 0;
	padding: 6px 8px 8px;
}
#product3 .mid2{
	color: #EA6182;
}
#product3 .mid2:before {
	background: #EA6182;
}
#product3 .product_reasonblk .ttl{
	background: linear-gradient(
		45deg,
		rgba(237,163,180,0.05) 0%,
		rgba(237,163,180,0.5) 5%,
		rgba(237,163,180,1) 23%,
		rgba(237,163,180,1) 77%,
		rgba(237,163,180,0.5) 95%,
		rgba(237,163,180,0.05) 100%
	);
}
#product3 .product_detail {
	background: linear-gradient(
		to bottom,
		rgba(240,219,226,0) 0%,
		rgba(240,219,226,1) 100%
	);
}
#product3 .product1_detailbox li span{
	color: #E68399;
}
#product3 .product_step {
	display: flex;
}
#product3 .product_step li{
	flex-basis: calc( 100% / 3 );
	background: #FFF;
	position: relative;
	margin: 0 0 20px;
}
#product3 .product_step li .ttl {
	background: #D9BBC1;
	color: #FFF;
}
#product3 .product_step li .txt {
	padding: 20px 0 25px;
}
#product3 .product_step li .txt img {
	display: inline-block;
	max-width: 154px;
	max-height: 154px;
	margin: 0 0 20px;
}
/*--detail 4--*/
#product4{

}
#product4 .mid2{
	color: #E74282;
}

#product4 .mid2:before{
	background: #E74282;
}
#product4 .product_main{
/*	background-image: url(../img/product2_1bg.jpg); lazyload*/
}
#product4 .product_reasonblk .ttl{
	background: linear-gradient(
		45deg,
		rgba(236,109,133,0.05) 0%,
		rgba(236,109,133,0.5) 5%,
		rgba(236,109,133,1) 23%,
		rgba(236,109,133,1) 77%,
		rgba(236,109,133,0.5) 95%,
		rgba(236,109,133,0.05) 100%
	);
}
#product4 .product_detail{
	padding: 80px 0 50px;
	background: linear-gradient(
		to bottom,
		rgba(255,156,173,0) 0%,
		rgba(255,156,173,1) 100%
	);
/*	background-image: url(../img/product2_3bg.png); lazyload*/
}
#product4 .product_step li{
/*	background-image: url(../img/product2_step_bg.png); lazyload*/
}
#product4 .product_step li{
	background: #FFF;
	text-align:center;
	position: relative;
	border-bottom: 4px solid #FFE4E9;
}
#product4 .product_step li:last-child{
	background-position: top;
	border-bottom: none;
}
#product4 .product_step li::after {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	right: 0;
	bottom: -24px;
	width: 20px;
	margin: 0 auto;
	background: #FFF;
	border-top: 20px solid #FFE4E9;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
}
#product4 .product_step li::before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	right: 0;
	bottom: -16px;
	width: 20px;
	margin: 0 auto;
	border-top: 16px solid #FFF;
	border-left: 16px solid transparent;
	border-right: 16px solid transparent;
}
#product4 .product_step li:last-child::before,
#product4 .product_step li:last-child::after {
	content: unset;
}
#product4 .product_step .point{
	display: flex;
	align-items: center;
	text-align:left;
	margin: 12px 0;
}
#product4 .product_step li .ttl {
	color: #FFF;
}
#product4 .product_step .point span{
	text-align: left;
	display: inline-block;
	vertical-align: top;
}
#product4 .product_step .point span:first-child {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90px;
	height: 34px;
	border: 1px solid #CD7C7E;
}
#product4 .product_step .point span+span{
	margin-left: 10px;
}

@media screen and (min-width: 769px) {
	#products{
		padding-top: 70px;
	}
	.product_main img{
		width: auto;
	}
	.product_main .wrap{
		width: 1000px;
	}

	.product_reason .wrap{
		width: 1000px;
	}
	.product_reasonblk{
		width: 300px;
	}

	/*--detail 1--*/
	#product1 .product_detail .wrap{
		width: 1000px;
	}
	#product1 .product_main .txt{
		margin-top: -125px;
	}
	#product1 .product_reason{
		padding: 60px 0 80px;
	}
	.product1_detailbox .ph{
		padding-right: 68px;
	}
	.product1_detailbox .ph img{
		width:333px;
	}
	#product1 .product_step li{
		width: 33.3%;
/*		background-image: url(../img/product1_step_bg.png); lazyload*/
		background-position: right;
		height: 300px;
	}
	#product1 .product_step li:last-child{
		background-position: left;
	}
	#product1 .product_step li img{
		width: 155px;
		margin-bottom: 14px;
	}
	#product1 .product_step li .ttl{
		padding-top: 8px;
		margin-bottom: 25px;
		letter-spacing: 0.2em;
	}
	#product1 .product_step li .ttl .num{
		margin-left: 0.5em;
	}


	/*--detail 2--*/
	#product2 .product_main .txt{
		margin-top: -90px;
	}
	#product2 .product_reason{
		padding: 50px 0;
	}
	#product2 .product_detail{
		padding-top: 50px;
	}
	#product2 .product_step {
		width: 700px;
		margin: 0 auto;
	}
	#product2 .product_step li{
		padding: 30px 100px 50px;
		line-height: 1.9;
	}
	#product2 .product_step li:first-child{
		padding-top: 40px;
	}
	#product2 .product_step li:last-child{
		padding-top: 25px;
		padding-bottom: 30px;
	}

	#product2 .product_step li .ttl{
		writing-mode: vertical-rl;
		text-orientation: upright;
		letter-spacing: -0.2em;
		position: absolute;
		top: 50%;
		margin-top: -4.4em;
		left: 3px;
		white-space: nowrap;
	}
	#product2 .product_step li:first-child .ttl, #product2 .product_step li:last-child .ttl{
		margin-top: -3.6em;
	}

	#product2 .product_step li .ttl .num{
		margin-top: 0.1em;
	}
	#product2 .product_step li img{
		width: 430px;
	}
	/*--detail 3--*/
	#product3 .product1_detailbox {
		padding: 0 0 0 40px;
	}
	#product3 .product_step li::before {
		position: absolute;
		z-index: 1;
		right: -35px;
		top: 0;
		content: "";
		display: inline-block;
		width: 34px;
		height: 100%;
		background: url("/img/product3_step.png") no-repeat;
	}
	#product3 .product_step li:last-child::before {
		content: unset;
	}
	/*--detail 4--*/
	#product4 .product_main .txt{
		/*margin-top: 150px;*/
	}
	#product4 .product_reason{
		padding: 50px 0;
	}
	#product4 .product_detail{
		padding-top: 50px;
	}
	#product4 .product_step {
		width: 740px;
		margin: 0 auto 20px;
	}
	#product4 .product_step li{
		padding: 30px 100px 50px;
		line-height: 1.9;
	}
	#product4 .product_step li:nth-of-type(2) {
		padding: 50px 100px 75px;
	}
	#product4 .product_step li:first-child{
		padding-top: 40px;
	}
	#product4 .product_step li:last-child{
		padding-top: 25px;
		padding-bottom: 30px;
	}
	#product4 .product_step li .ttl{
		writing-mode: vertical-rl;
		text-orientation: upright;
		letter-spacing: -0.2em;
		position: absolute;
		top: 0;
		/*margin-top: -4.4em;*/
		left: 0;
		white-space: nowrap;
		background: #DA9E9E;
		height: 100%;
	}
	#product4 .product_step li:first-child .ttl, #product4 .product_step li:last-child .ttl{
		/*margin-top: -3.6em;*/
	}
	#product4 .product_step li .ttl .num{
		margin-top: 0.1em;
	}
	#product4 .product_step li img{
		width: unset;
	}
	#product4 .product_step li .txt p {
		text-align: left;
	}
	#product4 .product_step li .image {
		position: absolute;
		top: 0;
		right: 0;
	}
	#product4 .product_step li:first-child .image {
		top: 35px;
		right: 35px;
	}
	#product4 .product_step li:nth-of-type(2) .image {
		top: 5px;
		right: 85px;
	}
	#product4 .product_step li:nth-of-type(3) .image {
		top: 30px;
		right: 85px;
	}
}
@media screen and (max-width: 768px) {
	#products{
		padding-top: 30px;
	}
	/*--detail--*/
	.mid2{
		font-size: 4.5vw;
		padding-bottom: 0.5em;
		margin-bottom: 20px;
	}
	.product_main{
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.product_main .ph{
		text-align:center;
		padding: 0 5vw;
	}
	.product_main .txt{
		margin-top: -10vw;
	}
	.product_main .txt p{
		line-height: 1.8;
	}


	.product_reasonblk{
		margin-bottom: 20px;
	}
	.product_reasonblk .ttl{
		padding: 4vw;
		font-size: 4.2vw;
		line-height: 1;
	}
	.product_reasonblk ul{
		padding: 0 4vw 1vw;
	}
	.product_reasonblk li{
		padding: 2.9vw 0;
	}

	.product_detail{
		padding: 30px 0;
		background-size: 300vw;
	}
	.product_detail1{
		margin-bottom: 30px;
	}

	.product_step{

	}
	#product1 .product_step li{
		background-image: url(../img/product1_step_bg_sp.png);
	}
	#product2 .product_step li{
		background-image: url(../img/product2_step_bg_sp.png);
	}
	.product_step li{
		padding: 15vw 5vw 10vw 5vw;
		line-height: 1.9;
	}
	.product_step li::before,
	.product_step li::after {
		content: unset;
	}
	.product_step li:first-child{
		padding-top: 10vw;
	}
	.product_step li:last-child{
		padding-top: 10vw;
		padding-bottom: 4vw;
	}
	.product_step li p{
		text-align:center;
	}
	.product_step li .ttl{
		font-size: 4vw;
		position: absolute;
		top: 0;
		left: 0;
		background: #DA9E9E;
		width: 100%;
		white-space: nowrap;
		/*transform:rotate(270deg) translateY(50%);*/
		transform-origin: left center;
		letter-spacing: 0.2em;
	}
	.product_step li:first-child .ttl, .product_step li:last-child .ttl{
		margin-top: -0.1em;
	}
	.product_step li .ttl .num{
		margin-top: 0.1em;
	}

	/*--detail 1--*/
	#product1 .product_detail{
		background-size: 450vw;
	}
	.product1_detailbox ul{
		margin-bottom: 12px;
	}
	.product1_detailbox li{
		font-size: 3.2vw;
		text-align:center;
	}
	.product1_detailbox li+li{
		margin-top: 2.9vw;
	}
	.product1_detailbox li span{
		font-size: 2.9vw;
		display: block;
		padding-bottom: 0;
	}
	.product1_detailbox .point{
		padding: 0.3em;
		width: 100%;
		margin-left: 0;
		margin-bottom: 1.5em;
	}
	#product1 .product_step{
		margin-bottom: 10px;
	}
	#product1 .product_step img{
		width: 30vw;
	}


	/*--detail 2--*/
	#product2 .product_step .point{
		margin-bottom: 10px;
	}
	#product2 .product_step .point span{
		text-align:left;
		display: block;
	}
	#product2 .product_step .point span+span{
		margin-left: 0px;
	}
	.product2_3box{
		width: 100%;
		margin: 10px auto 0;
		padding: 1vw 0;
	}

	#product2 .product_reasonblk:last-of-type{
		margin-bottom: 0;
	}

	/*--detail 3--*/
	#product3 .product_step {
		margin: 0 0 10px;
		display: block;
	}
	#product3 .product_step li {
		margin: 0 0 0;
		padding: 15vw 5vw 5vw 5vw;
	}
	#product3 .product_step li:first-child {
		padding-top: 15vw;
	}
	#product3 .product_step li .txt {
		padding: 0 0 0;
	}
	#product4 .product_step {
		margin: 0 0 10px;
	}
	#product4 .product_step li {
		border-bottom: unset;
	}
	#product4 .product_step li::before,
	#product4 .product_step li::after {
		content: unset;
	}
	#product4 .product_step li:first-child .image {
		padding: 5vw 10vw 0;
	}
	#product4 .product_step li:nth-of-type(2) .image {
		padding: 5vw 20vw 0;
	}
	#product4 .product_step li:nth-of-type(3) .image {
		padding: 5vw 20vw 0;
	}
}




/* ------------------------------
	contact
------------------------------ */
#contact{

}
#contact{

}
@media screen and (min-width: 769px) {
	#contact{
		padding-bottom: 80px;
	}
	#contact.wrap{
		width: 870px;
	}
	#contact .mid1{
		margin-bottom: 45px;
	}
}
@media screen and (max-width: 768px) {
}





/* ------------------------------
    sec1
------------------------------ */
.sec1{
	background: #2c2c2c;
	padding-bottom: 60px;
	margin-bottom: 195px;
}
.sec1_1{
	position: relative;
	overflow: hidden;
}
.sec1_1 .txt{

}
.sec1_1 .txt p{
	color: #d7d7d7;
	line-height: 3;
}
.sec1_2{
	display: flex;
	justify-content: space-between;
}
.sec1_2 li{
}
.sec1_2 li a{
	display: block;
	background: #191919;
	width: 100%;
}
.sec1_2 li img{
	
}
.sec1_2 li .txt{
	padding: 0 15px;
}
.sec1_2 li .txt span{
	display: block;
	text-align: center;
}
.sec1_2 li .txt .en{
	color: #8c8c8c;
	border-bottom: 1px solid #555;
	font-weight: 900;
	height: 80px;
	line-height: 1.3;
	font-size: 1.8rem;
	padding-top: 40px;
}
.sec1_2 li:last-of-type .en{
	padding-top: 30px;
}
.sec1_2 li .txt .jp{
	line-height: 1;
	color: #efefef;
	font-size: 1.2rem;
	padding-top: 18px;
}

@media screen and (min-width: 769px) {
	.sec1{
	}
	.sec1_1 {
		height: 395px;
	}
	.sec1_1 img{
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: 1195px;
	}
	.sec1_1 .txt{
		position: relative;
		padding-top: 100px;
	}
	.sec1_1 .txt p{
		padding-left: 50%;
	}
	.sec1_2 li a{
		display: table;
	}
	.sec1_2 li img, .sec1_2 li .txt{
		display: table-cell;
		width: 160px;
	}
	.sec1_2 li img{
	}
	.sec1_2 li .txt{
		vertical-align: top;
	}

}
@media screen and (max-width: 768px) {
	.sec1{
		padding-bottom: 6px;
		margin-bottom: 86px;
	}

	.sec1_1{
		margin-bottom: 30px;
	}
	.sec1_2{
		width: 97.5%;
	}
	.sec1_2 li{
		width: 32.6%;
	}
	.sec1_2 li a{
		padding: 10px 7px 0;
	}
	.sec1_2 li .txt{
		padding: 0;
		height: 125px;
		position: relative;
	}
	.sec1_2 li .txt .en{
		height: 44px;
		font-size: 1.1rem;
		padding-top: 16px;
	}
	.sec1_2 li:last-of-type .en{
		padding-top: 9px;
	}
	.sec1_2 li .txt .jp{
		font-size: 1.2rem;
		padding-top: 8px;
		line-height: 1.4;
	}
	.sec1_2 li:nth-of-type(2) .txt .jp{
		padding-top: 18px;
	}
	.sec1_2 .btn_arrow{
		top: auto;
		bottom: 27px;
		right: 50%;
		transform: translate(50%, 0%);
	}
	.sec1_2 .btn_arrow:before, .sec1_2 .btn_arrow:after{
		background: #8c8c8c;
	}
}



/* ------------------------------
    sec2
------------------------------ */
.sec2{
	position: relative;
	background: #110c0b url(../img/index/sec2_2bg_pc.jpg) top center no-repeat;
	background-size: contain;
	padding: 0 0 50px;
	margin-bottom: 120px;
}
.sec2 .ttl{
	background: url(../img/bg_red.png);
	background-size: 180px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	text-align:center;
	line-height: 1;
	width: 420px;
	top: -92px;
	padding: 60px 0;
	font-size: 2.8rem;
}
.sec2 .ttl span{
	display: block;
	font-weight: 700;
	font-size: 1.4rem;
	margin-bottom: 26px;
	letter-spacing: 0.05em;
}


.sec2_1{
	padding-top: 122px;
	margin-bottom: 45px;
}
.sec2_1 p{
	color: #fff;
	text-shadow:black 1px 1px 10px, black -1px 1px 10px,
    			black 1px -1px 10px, black -1px -1px 10px;
	text-align:center;
	line-height: 2.8;
	letter-spacing: 0.1em;
}
.sec2_2{
	display: flex;
	justify-content: space-between;
}
.sec2_2 li{
}
.sec2_2 li a{
	display: block;
}

.sec2_2 .ttls{
	background-color:rgba(182,140,76,0.85);
	padding: 27px 0 25px;
	text-align: center;
}
.sec2_2 .ttls span{
	display: block;
	line-height: 1;
	margin-bottom: 15px;
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}
.sec2_2 .ttls img{
	width: auto;
	height: 32px;
}

.sec2_2 .txt{
	background: #000;
	padding-bottom: 20px;
}
.sec2_2 .txt img{
	margin-bottom: 20px;
}
.sec2_2 .btn_more{
	color: #b68c4c;
	border-color: #b68c4c;
}
.sec2_2 .btn_arrow:before, .sec2_2 .btn_arrow:after{
	background: #b68c4c;
}

@media screen and (min-width: 769px) {
	.sec2{
	}
}
@media screen and (max-width: 768px) {
	.sec2{
		background: #110c0b url(../img/index/sec2_2bg_sp.jpg) top center no-repeat;
		background-size: 100%;
		padding: 0;
		margin-bottom: 112px;
	}
	.sec2 .wrap{
		width: 100%;
	}
	.sec2 .ttl{
		background-size: 90px;
		width: 188px;
		top: -47px;
		padding: 23px 0;
		font-size: 1.6rem;
	}
	.sec2 .ttl span{
		font-size: 1rem;
		margin-bottom: 10px;
	}
	.sec2_1{
		padding: 70px 10px 0;
		margin: 0 auto 30px;
		max-width: 380px;
	}
	.sec2_1 p{
		line-height: 2.8;
		letter-spacing: normal;
	}
	.sec2_2 li+li{
		margin-left: 2px;
	}
	.sec2_2 li a{
	}

	.sec2_2 .ttls{
		padding: 16px 0 13px;
	}
	.sec2_2 .ttls span{
		margin-bottom: 8px;
		font-size: 1.4rem;
	}
	.sec2_2 .ttls img{
		height: 18px;
	}

	.sec2_2 .txt{
		padding-bottom: 23px;
	}

}



/* ------------------------------
    sec3
------------------------------ */
.sec3{
	margin-bottom: 100px;
}
.sec3box{
	position: relative;
	height: 582px;
	z-index: 1;
}
.sec3box + .sec3box{
	margin-top: 102px;
}
.sec3box .ph{
}
.sec3box .ph img{
}
.sec3box .sec3_logo{

}
.sec3box .txt{

}

.sec3box .txt p{
	color: #e7bfbf;
	line-height: 2.8;
}
.sec3box .txt .ttl1{
	color: #c43c00;
	font-weight: 900;
	font-size: 6rem;
	line-height: 1;
	margin-bottom: 35px;
}
.sec3box .txt .ttl2{
	font-size: 2.9rem;
	line-height: 1;
	margin-bottom: 20px;
	color: #eee;
}
.sec3box .txt .ttl2 .sec3_logo{
	vertical-align: middle;
	margin-left: 23px;
}
.sec3box .btn_more{
	color: #fff;
	border-color: #fff;
}
.sec3box .btn_arrow:before, .sec3box .btn_arrow:after{
	background: #fff;
}
.sec3_1 .txt{
	background: url(../img/index/sec3_1ph2.png) center;
	background-size: cover;
}
.sec3_1 .sec3_logo{
	width: 154px;
}
.sec3_2 .ph{
}
.sec3_2 .txt{
	background: url(../img/index/sec3_2ph2.png) center;
	background-size: cover;
	right: auto;
	left: 0;
}
.sec3_2 .sec3_logo{
	width: 58px;
}


.sec3_2{

}
@media screen and (min-width: 769px) {
	.sec3box .ph{
		width: 540px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}
	.sec3box .txt{
		width: calc(100% - 386px);
		height: 582px;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}

	.sec3box .txt_inner{
		position: absolute;
		top:  50%;
		transform: translateY(-50%);
		width: auto;
		max-width: 540px;
	}
	.sec3_1 .txt_inner{
		right: 50vw;
		margin-right: -540px;
	}
	.sec3_2 .ph{
		right: 0;
		left: auto;
	}
	.sec3_2 .txt_inner{
		left: 50vw;
		margin-left: -540px;
	}
	.sec3_2 .txt .ttl1{
		margin-bottom: 26px;
	}
	.sec3_2 .txt .ttl2{
		margin-bottom: 20px;
	}
	.sec3box .btn_more{
		margin: 26px 0 0 auto;
	}
}
@media screen and (min-width: 769px) and (max-width: 1219px){
	.sec3box .txt{
		width: 70%;
	}
	.sec3box .ph{
		width: 45%;
	}
	.sec3box .txt_inner{
		padding: 0 10px;
	}
	.sec3_1 .txt_inner{
		left: 25%;
		right: auto;
		margin-right:0;
	}
	.sec3_2 .txt_inner{
		right: 25%;
		left: auto;
		margin-left:0;
	}
	.sec3box .txt .ttl1{
		font-size: 5.7rem;
		white-space: nowrap;
	}
}

@media screen and (max-width: 768px) {
	.sec3{
		margin-bottom: 88px;
	}
	.sec3box{
		height: auto;
	}
	.sec3box + .sec3box{
		margin-top: 122px;
	}
	.sec3box .ph{
		position: absolute;
		width: 100%;
		margin-top: -61px;
		height: 182px;
	}
	.sec3box .ph img{
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}
	.sec3box .sec3_ph1{
		width: 238px;
		border:6px solid #ebebeb;
	}
	.sec3box .sec3_logo{
		bottom: 0;
	}
	.sec3box .txt{
		padding: 131px 0 30px;
	}

	.sec3box .txt p{
		line-height: 2.4;
		padding-left: 10%;
		padding-right: 10%;
	}
	.sec3box .txt .ttl1{
		font-size: 3rem;
		text-align:center;
		margin-bottom: 5px;
		font-weight: 700;
		padding-left: 0%;
		padding-right: 0%;
	}
	.sec3box .txt .ttl2{
		text-align:center;
		font-size: 1.6rem;
		margin-bottom: 12px;
	}
	.sec3box .btn_more{
		margin-top: 15px;
	}
	.sec3_1 .sec3_logo{
		width: 115px;
	}
	.sec3_2 .sec3_logo{
		width: 50px;
	}

}



/* ------------------------------
    sec4
------------------------------ */
.sec4{
	margin-bottom: 120px;
}
.sec4 .ttl{
	color: #b10000;
	font-size: 2.8rem;

}
.sec4 ul{

}
.sec4 li{
	font-size: 1.4rem;
	border-bottom: 1px solid #a0a0a0;
}
.sec4 li a{
	position: relative;
	padding: 18px 75px 18px 18px;
}
.sec4 li .date{
	color: #b10000;
}
.sec4 li p{

}
.sec4 li .btn_arrow:before, .sec4 li .btn_arrow:after{
	background: #b10000;
}
@media screen and (min-width: 769px) {
	.sec4{
		display: table;
		width: 1000px;
	}
	.sec4 .ttl{
		display: table-cell;
		width: 276px;
		padding-left: 76px;
		vertical-align: middle;
	}
	.sec4 ul{
		vertical-align: top;
		width: 650px;
	}
	.sec4 li .date{
		float: left;
	}
	.sec4 li p{
		float: left;
		width: calc(100% - 6em);
		padding-left: 2.3em;
	}
}
@media screen and (max-width: 768px) {
	.sec4{
		margin-bottom: 80px;
	}
	.sec4 .ttl{
		font-size: 1.6rem;
		text-align:center;
		margin-bottom: 10px;
	}
	.sec4 li{
		font-size: 1.1rem;
	}
	.sec4 li a{
		padding: 8px 32px 8px 0;
	}
	.sec4 li .date{
		display: block;
		padding-bottom: 3px;
	}

	.sec4 li .btn_arrow{
		top: auto;
		bottom: 15px;
		transform: translateY(0%);
		right: 0px;
		margin-top: -1px;
	}

}



/* ------------------------------
    sec5
------------------------------ */
.sec5{
	margin-bottom: 110px;
}
.sec5_1{
	margin-bottom: 15px;
}
.sec5_1 img{
	margin-bottom: 12px;
}
.sec5_1 p{
	font-size: 1.3rem;
	text-align:right
}
.sec5_2{

}
.sec5_2 ul{
}
.sec5_2 li{
}
.sec5_2 .ttl{
	font-weight: 700;
	font-size: 1.3rem;
	color: #b10000;
	margin-bottom: 5px;
}
.sec5_2 .add{
}
.sec5_2 .add p{
	font-size: 1.3rem;
}
.sec5_2 .add .tel{
	margin-top: 10px;
	display: inline-block;
}
.sec5_maplink{
	display: inline-block;
	color: #b10000;
	border: 1px solid #b10000;
	font-size: 1.1rem;
	line-height: 1;
	width: 40px;
	text-align: center;
	margin-left: 15px;
	padding: 3px 0;
}


@media screen and (min-width: 769px) {
	.sec5{
	}
	.sec5_2{
	}
	.sec5_2 ul{
		display: inline-block;
		vertical-align: top;
	}
	.sec5_2 ul:nth-of-type(-n+2){
		margin-right: 30px;
		padding-right: 30px;
		border-right: 1px solid #a0a0a0;

	}
	.sec5_2 ul+ul{
	}
	.sec5_2 li+li{
		margin-top: 20px;
	}
}
@media screen and (max-width: 768px) {
	.sec5{
		margin-bottom: 35px;
	}
	.sec5 .wrap{
		width: 100%;
	}
	.sec5_1{
		margin-bottom: 13px;
	}
	.sec5_1 img{
		margin-bottom: 8px;
	}
	.sec5_1 p{
		font-size: 1rem;
	}
	.sec5_2{

	}
	.sec5_2 ul{
	}
	.sec5_2 li{
		padding: 15px 0;
		border-bottom: 1px solid #a0a0a0;
	}
	.sec5_2 ul:last-of-type li:last-of-type{
		border-bottom: none;
	}
	.sec5_2 .ttl{
		font-size: 1.1rem;
		margin-bottom: 5px;
	}
	.sec5_2 .add{
	}
	.sec5_2 .add p{
		font-size: 1.1rem;
		position: relative;
	}
	.sec5_2 .add .tel{
		margin-top: 4px;
	}
	.sec5_maplink{
		display: block;
		position: absolute;
		right: 0;
		top: 0;
		font-size: 1rem;
		width: 34px;
		margin-left: 0px;
		padding: 1px 0;
	}

}

