@CHARSET "UTF-8";

/* Maker */
.slider-maker .swiper-wrapper{
	margin:0;
	transition-timing-function:linear;
	will-change:transform;
	align-items:center;}
.slider-maker .swiper-slide{
	flex-shrink:0;}
.slider-maker img{
	height:55px;}
.slider-maker .maker1{
	margin:0 0 15px;}
@media screen and (min-width:768px){
	.slider-maker .swiper-wrapper{
		margin:10px;}
}
@media screen and (max-width:767px){
	.slider-maker img{
		width:calc(330 / 1000 * 100vw);
		height:auto;}
}

/* Service */
.res_none-top.swiper-wrap{
	margin-bottom:0;}
#service{
	padding:40px 30px;}
#service .flex-content{
	max-width:1200px;
	margin:auto;}
#service .arw-btn{
	margin:0;}
.srv-inner{
	max-width:1200px;
	margin:auto;}
.srv-link{
	margin:30px 0 0;
	text-align:left;}
.srv-col{
	margin:0 auto 15px;
	max-width:270px;
	position:relative;}
.srv-col:last-child{
	margin:0 auto;}
.srv-col figure{
	position:relative;
	line-height:0;}
.srv-col figure::after{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	transition:0.3s;
	mix-blend-mode:multiply;
	background:rgba(65,80,115,0.8);}
.srv-col:hover figure::after{
	background:rgba(65,80,115,0.5);}
.srv-col img{
	width:100%;}
.srv-col p{
	text-align:center;
	font-weight:bold;
	padding:0 10px;
	margin:0;
	font-size:24px;
	width:100%;
	box-sizing:border-box;
	color:#fff;
	position:absolute;
	top:50%;
	left:0%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);}
.srv-col p.col_w{
	font-size:24px;}
@media only screen and (min-width:768px){
	#service{
		padding:80px 30px 22px;}
	.srv-link{
		text-align:right;}
	.srv-flex{
		display:flex;
		flex-wrap:wrap;}
	.srv-col{
		width:calc(25% - 15px);
		margin:0 20px 0 0;
		max-width:none;}
	.srv-col p.col_w{
		font-size:20px;}
}
@media screen and (min-width:1024px){
	.srv-col{
		width:calc(25% - 30px);
		margin:0 40px 0 0;}
	.srv-col p{
		font-size:30px;}
	.srv-col p.col_w{
		font-size:24px;}
}

/* Major */
#major{
	margin-bottom:40px;}
@media only screen and (min-width:768px){
	#major{
		margin-bottom:60px;
		padding:22px 0 22px;}
}
@media only screen and (min-width:1024px){
	#major{
		margin-bottom:80px;}
}

/* Company List */
.logo-list{
	padding:0;
	display:flex;
	flex-wrap:wrap;
	width:calc(100% - 60px);
	margin:auto;
	align-items:center;}
.logo-list li{
	width:calc(25% - 10px);
	line-height:0;}
.logo-list li{
	margin:10px 5px 0;}
.logo-list li img{
	height:auto;
	max-width:100%;}
@media screen and (min-width:768px){
	.logo-list li{
		width:calc(100%/9);
		margin:20px 0 0;}
	.logo-list li:nth-child(-n+9){
		margin:0;}
}

/* News */
#news{
	margin:0 0 40px;
	padding:0 30px;}
.news-fixed{
	display:flex;
	flex-wrap:wrap;
	justify-content:letf;
	max-width:1200px;
	margin:auto;
	align-items:flex-end;}
.news-grid{
	max-width:1200px;
	margin:auto;}
.news-list{
	overflow:hidden;
	margin-bottom:4rem;
	max-width:900px;
	margin:auto;
	cursor:pointer;
	position:relative;}
.news-list dt,
.news-list dd{
	text-align:left;}
.news-list dt{
	cursor:pointer;
	padding:1rem 1rem 0;}
.news-list dt span{
	display:inline-block;
	text-align:center;
	font-size:14px;
	margin:0 0 0 10px;
	line-height:1.8;
	padding:0 0.6rem;
	width:5rem;
	background:#fff;}
.news-list dd{
	padding:1rem;
	transition:0.2s;
	margin:0;
	border-bottom:1px solid #999;}
.news-list:hover dd{
	text-decoration:underline;}
.news-list .icon-exhibition{
	color:#7FB8DF;
	border:1px solid #7FB8DF;}
.news-list .icon-release{
	color:#E0A9E0;
	border:1px solid #E0A9E0;}
.news-list .icon-info{
	color:#6ED6A9;
	border:1px solid #6ED6A9;}
.news-list .icon-media{
	color:#AE9FE5;
	border:1px solid #AE9FE5;}
.news-list .icon-others{
	color:#9fa7b8;
	border:1px solid #9fa7b8;}
@media only screen and (min-width:768px){
	#news{
		margin:0 0 65px;}
	#news .arw-btn{
		margin:30px 0 15px auto;}
	.news-grid{
		width:calc(100% - 160px);}
	.news-fixed{
		justify-content:right;}
	.news-list{
		display:flex;
		flex-wrap:wrap;}
	.news-list dt,
	.news-list dd{
		padding:15px 0;
		width:265px;}
	.news-list dt{
		display:flex;}
	.news-list dd{
		border-bottom:none;
		width:calc(100% - 265px);}
	.news-list dt span{
		display:flex;
		align-items:center;
		justify-content:center;
		height:28px;
		margin:0 30px;}
	.news-link{
		width:140px;
		margin:0 0 0 20px;}
}
@media only screen and (min-width:640px){
	#news{
		margin:0 0 85px;}
}

/* Feature */
#feature{
	background:#99c6e5;
	padding:30px 30px 80px;}
.section-title{
	text-align:center;
	font-size:25px;
	letter-spacing:6px;
	color:#fff;
	margin-bottom:35px;}
.feat-row{
	max-width:1200px;
	margin:auto;}
.feat-col{
	position:relative;
	margin:30px 0 0;
	width:100%;
	box-sizing:border-box;}
.feat-col:first-child{
	margin:0;}
.feat-ttl{
	margin:0 0 15px;
	font-size:20px;
	text-align:center;
	color:#405072;
	position:relative;
	padding:0 0 65px;}
.feat-ttl::after{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	width:1px;
	height:50px;
	background:#425073;}
.feat-txt{
	text-align:center;
	display:table;
	margin:auto;}
.feat-btn{
	display:table;
	margin:60px auto 0;}
.feat-btn a{
	display:inline-block;
	position:relative;
	transition:0.3s;}
.feat-btn a span{
	position:relative;
	display:inline-block;
	color:#415073;
	padding:0.5rem 0;
	width:245px;
	text-align:center;
	background:#fff;
	font-size:18px;
	z-index:2;
	transition:0.3s;}
.feat-btn a::before{
	content:'';
	position:absolute;
	bottom:-4px;
	right:-4px;
	width:100%;
	height:100%;
	background:#949bae;}
.feat-btn a:hover span{
	background:#67738f;
	color:#fff;
	/* transform:translate(6px, 6px) */;}
.support-box{
	background:#ecedf1;
	max-width:1200px;
	margin:40px auto 0;
	padding:25px 20px;}
.support-image{
	margin:0 0 20px;}
.support-image img{
	width:100%;}
.support-text h2{
	margin:0 0 20px;}
.support-text p{
	text-align:center;
	margin:0 0 30px;}
.support-button a{
	display:inline-block;
	position:relative;
	transition:0.3s;}
.support-button a span{
	position:relative;
	display:inline-block;
	color:#415073;
	width:245px;
	padding:0.5rem 0;
	color:#fff;
	background:#68738f;
	font-size:18px;
	z-index:2;
	transition:0.3s;}
.support-button a::before{
	content:'';
	position:absolute;
	bottom:-4px;
	right:-4px;
	width:100%;
	height:100%;
	background:#949bae;}
.support-button a:hover span{
	color:#415073;
	background:#fff;
	/* transform:translate(6px, 6px) */;}
@media screen and (min-width:768px){
	#feature{
		padding:40px 30px 115px;}
	.section-title{
		font-size:35px;
		margin-bottom:55px;}
	.feat-row{
		display:flex;
		flex-wrap:wrap;}
	.feat-col{
		width:calc(100%/3 - 14px);
		margin:20px 20px 0 0;}
	.feat-col:nth-child(3n){
		margin:20px 0 0;}
	.feat-col:nth-child(-n+2){
		margin:0 20px 0 0;}
	.feat-col:nth-child(3){
		margin:0;}
	.feat-ttl{
		font-size:25px;
		padding:0 0 95px;
		margin:0 0 20px;
		height:calc(1em * 1.5 * 2);
		overflow:hidden;
		-webkit-line-clamp:2;}
	.feat-ttl::after{
		height:75px;}
	.feat-txt{
		display:block;}
	.feat-btn{
		margin:60px auto 0;}
	.feat-btn a span{
		font-size:20px;}
	.support-box{
		margin:60px auto 0;}
	.support-grid{
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		justify-content:center;
		flex-direction:row-reverse;}
	.support-image{
		width:calc(40% - 20px);
		margin:0 0 0 20px;}
	.support-text{
		width:60%;}
	.support-text h2{
		text-align:center;
		font-size:30px;}
	.support-button a span{
		font-size:20px;}
}
@media screen and (min-width:1024px){
	.section-title{
		margin-bottom:75px;}
	.feat-col{
		width:calc(100%/3 - 27px);
		margin:40px 40px 0 0;}
	.feat-col:nth-child(3n){
		margin:40px 0 0;}
	.feat-col:nth-child(-n+2){
		margin:0 40px 0 0;}
	.feat-col:nth-child(3){
		margin:0;}
	.support-box{
		margin:80px auto 0;
		padding:35px 30px;}
	.support-image{
		width:calc(40% - 40px);
		margin:0 0 0 40px;}
}
@media screen and (max-width:346px){
	.support-button a span{
		width:220px;}
}

/* Attention */
#attention{
	background:#ECEDF1;
	padding:30px 30px 80px;}
#attention img{
	width:100%;}
.attn-fixed{
	max-width:1200px;
	margin:auto;}
.attn-col{
	position:relative;
	margin:30px 0 0;
	width:100%;
	padding:20px;
	background:#fff;
	box-sizing:border-box;}
.attn-col:first-child{
	margin:0;}
.attn-ttl{
	text-align:center;
	font-size:20px;
	margin:0 0 20px;}
.attn-col:hover .attn-ttl{
	color:#0064b9;}
.attn-ttl span{
	font-size:15px;
	margin:0 0 0 10px;
	display:inline-block;}
.attn-img{
	line-height:0;
	margin:0 0 15px;}
.attn-img img{
	transition:0.2s;}
.attn-col:hover .attn-img img{
	opacity:0.5;}
.attn-txt{
	line-height:1.5;
	margin:0;}
.attn-col:hover .attn-doc p{
	color:#0064b9;}
.attn-btn{
	position:relative;
	display:inline-block;
	margin:30px 0 0 auto;
	text-decoration:none;
	padding:0 30px 0 0;
	color:#415073;
	font-size:16px;
	cursor:pointer;
	overflow:hidden;}
.attn-btn span{
	position:relative;
	z-index:1;}
.attn-btn::before,
.attn-btn::after{
	content:'';
	position:absolute;
	bottom:0;
	right:0;
	background:#415073;
	height:1px;
	transition:all 0.4s ease;}
.attn-btn::before{
	width:100%;}
.attn-btn::after{
	width:15px;
	bottom:5px;
	transform:rotate(35deg);}
.attn-col:hover .attn-btn::before,
.attn-col:hover .attn-btn::after{
	opacity:0;
	transform:translateX(50px);
	transition:all 0.3s ease;}
.attn-col:hover .attn-btn::before{
	animation:reappearLine 0.3s 0.3s forwards;}
.attn-col:hover .attn-btn::after{
	animation:reappearArrow 0.3s 0.3s forwards;}
@keyframes reappearLine{
	0%{
		opacity:0;
		transform:translateX(-50px);}
	100%{
		opacity:1;
		transform:translateX(0);}
}
@keyframes reappearArrow{
	0%{
		opacity:0;
		transform:translateX(-50px) rotate(35deg);}
	100%{
		opacity:1;
		transform:translateX(0) rotate(35deg);}
}
@media screen and (min-width:768px){
	#attention{
		padding:40px 30px 115px;}
	.attn-row{
		display:flex;
		flex-wrap:wrap;}
	.attn-col{
		width:calc(100%/3 - 14px);
		margin:20px 20px 0 0;
		display:flex;
		flex-direction:column;}
	.attn-col:nth-child(3n){
		margin:20px 0 0;}
	.attn-col:nth-child(-n+2){
		margin:0 20px 0 0;}
	.attn-col:nth-child(3){
		margin:0;}
	.attn-doc{
		display:flex;
		flex-direction:column;
		justify-content:space-around;
		height:100%;}
	.attn-ttl{
		font-size:25px;}
}
@media screen and (min-width:1024px){
	.attn-col{
		width:calc(100%/3 - 27px);
		margin:40px 40px 0 0;}
	.attn-col:nth-child(3n){
		margin:40px 0 0;}
	.attn-col:nth-child(-n+2){
		margin:0 40px 0 0;}
	.attn-col:nth-child(3){
		margin:0;}
}

/* Etc */
#etc{
	padding:75px 30px 20px;}
#etc img{
	width:100%;}
.etc-row{
	max-width:1200px;
	margin:auto;}
.etc-col{
	position:relative;
	margin:0 0 30px;
	width:100%;
	box-sizing:border-box;}
.etc-col:last-child{
	margin:0;}
.etc-col figure{
	position:relative;
	line-height:0;}
.etc-col figure::after{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0.8;
	transition:0.3s;
	mix-blend-mode:multiply;
	background:#415073;}
.etc-col:hover figure::after{
	opacity:0.5;}
.etc-txt{
	position:absolute;
	margin:0 20px;
	width:calc(100% - 40px);
	text-align:center;
	top:50%;
	left:0%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	z-index:2;
	font-weight:900;
	color:#fff;
	font-size:25px;}
@media screen and (min-width:768px){
	#etc{
		padding:95px 30px 30px;}
	.etc-row{
		display:flex;
		flex-wrap:wrap;}
	.etc-col{
		width:calc(100%/3 - 14px);
		margin:0 20px 0 0;}
	.etc-col:nth-child(3n){
		margin:0;}
	.etc-txt{
		font-size:30px;}
}
@media screen and (min-width:1024px){
	#etc{
		padding:115px 30px 40px;}
	.etc-col{
		width:calc(100%/3 - 27px);
		margin:0 40px 0 0;}
}

/* Others */
h3.center_title{
	padding:0;}
.res-br{
	display:block;}
@media screen and (min-width:768px){
	.res-br{
		display:none;}
}
@media screen and (max-width:375px){
	.attn-ctc-in{
		display:block;}
	.attn-ctc-ttl{
		font-size:20px;}
	.attn-ctc-btn a span{
		width:220px;}
}