/*// SDK ///*/
.movie{
	position: relative;
	width: 100%;
	padding-top: 56.25% ;
}
.movie iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
#keyvisual.subpage .maintitle h2{
	font-size:1.0rem;
	font-weight: 300;
}
#SDK h4{
	font-size:1.5rem;
	color:#1F8EC8;
}
div[id*="Op_"]{
	margin-bottom: 5%;
}
div[id*="Op_"] .opt_ti{
	position: relative;
	display: inline-block;
	min-width: 200px;
}
div[id*="Op_"] .opt_ti h3{
	font-size:30px;
}
div[id*="Op_"] .opt_ti:before,
div[id*="Op_"] .opt_ti:after{
	content:"";
	width:15px;
	height: 100%;
	border:1px solid #28BABF;
	display: block;
	position: absolute;
	top:50%;
	transform: translateY(-50%);
}
div[id*="Op_"] .opt_ti:before{
	border-right:0;
	left:-25px;
}
div[id*="Op_"] .opt_ti:after{
	border-left:0;
	right:-25px;
}
div[id*="Op_"] .movie{
	width:90%;
	margin:4% auto;
}
div[id*="Op_"] .kakomi{
	font-size:.8em;
	border:1px solid #ccc;
	padding:1em;
	width:90%;
	margin:4% auto;
}
#option .option {
	display: flex;
	justify-content:space-around;
	flex-wrap:wrap;
}
#option .option dl{
	width:30%;
	max-width: 305px;
	margin: 1rem 0;
	padding-bottom: 50px;
	position: relative;
}
#option .option dl dt{
	text-align: right;
}
#option .option dl dt span{
	font-size:1.1em;
	line-height: 1.4;
	font-weight: bold;
	background:#1F8EC8;
	color:white;
	display: inline-block;
	padding:0.4em 1em 0.3em 15px;
	position: relative;
}
#option .option dl dt span:before{
	content: "";
	display: block;
	width:20px;
	height: 100%;
	background:#1F8EC8;
	position: absolute;
	left:-10px;
	top:0;
	transform:skewX(-20deg);
}
#option .option dl dd p{
	font-size:.85em;
}
#option .option .btn{
	position: absolute;
	bottom:0;
	left:0;
	margin:0;
	width:100%;
}
#option .option .btn a.more_btn{
	border-radius:20px;
	background:#FFAF24;
	color:black;
	padding:.5em;
	max-width: 200px;
}
/* #option .option .btn.kakomi{
	font-size:.8em;
	border:1px solid #ccc;
	padding:1em;
} */

.opt{
	max-width: 925px;
	margin:auto;
}
.opt ul{
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	list-style: none;
}
.opt ul li{
	width:49%;
	max-width: 430px;
	border:5px solid #C8C8C8;
	margin:1em 0;
}
.opt dl{
	padding:1em;
}
.opt dl dt{
	font-size:1.1em;
	font-weight: bold;
}
.opt dl dd{
	font-size:.85em;
}
.opt li.long{
	width:100%;
	max-width: none;
}
.opt li.long dl dd p{
	text-align: center;
}

.opt li.long.flex dl dd p{
	text-align: left;
}
.opt li.flex{
	display: flex;
	justify-content: space-between;
}
.opt li.flex.reverse .thum{
	order:2;
}
.opt li.flex dl{
	width:50%;
}
.opt li .thum.flex{
	display: flex;
	justify-content: space-between;
	position: relative;
}
.opt li .thum.flex .arrow{
	position: absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
.callyou{
	margin:4% auto;
}
.callyou p{
	position: relative;
	text-align: center;
	font-size:2.5rem;
	font-weight: bold;
	color:#1F8EC8;
	line-height: 1.4;
	display: inline-block;
}
.callyou p:before,
.callyou p:after{
	content:"";
	height: 100%;
	width: 1px;
	border-left:2px solid #FFAF24;
	display: block;
	position: absolute;
	top:50%;
}
.callyou p:before{
	left:-4rem;
	transform: translateY(-50%) skewX(30deg);
}
.callyou p:after{
	right:-4rem;
	transform: translateY(-50%) skewX(-30deg);
}
.btnarea.inq_btn a{
	display: block;
	margin:auto;
	padding:1rem 2rem;
	background:#28BABF;
	border-radius: 30px;
	color:white;
	font-weight: bold;
	font-size:2rem;
	max-width: 500px;
}
.btnarea.inq_btn a .mini{
	display: block;
	font-size:.7em;
}
.btnarea.inq_btn a:hover{
	text-decoration: none;
	background:#1F8EC8;
}

@media screen and (max-width: 641px) {
	#option .option dl{
		width:46%;
	}
 div[id*="Op_"] dl dd p{
		padding:0;
		text-align: left !important;
	}
	.callyou p{
		font-size:1.8rem;
	}
	.callyou p br{
		display: inline-block;
	}
	.btnarea.inq_btn a{
	font-size:1.3rem;
	margin-left:1rem;
	margin-right:1rem;
	}
	.callyou p:before{
		left:-1rem;
	}
	.callyou p:after{
		right:-1rem;
	}
}
@media screen and (max-width: 480px) {
	#option .option{
		display: block;
	}
	#option .option dl{
		width:100%;
		margin:3rem auto;
	}
	.opt ul{
		display: block;
	}
	.opt ul li{
		width:90%;
		margin:1rem auto;
	}
	.opt li.flex{
		display: block;
	}
	.opt li.flex dl{
		width: auto;
	}
	.opt li.long{
		width:90%;
	}
	div[id*="Op_"] .opt_ti h3{
		font-size:20px;
	}
	.callyou p{
		font-size:1.2rem;
	}

}

/*//////// works //////////*/

#works .elem {
	margin: 10% auto;
}
#works .elem h4{
	font-size:1.3em;
	color:#1F8EC8;
}
#works .elem p{
	text-align: center;
	font-size:.85em;
}
#works .elem .link_btn{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 660px;
	min-width: 500px;
	margin:auto;
}
#works .elem .link_btn li{
	display: inline-block;
	min-width: 120px;
	margin:.3em 1em ;
}
#works .elem .textarea{
	margin:1.5rem auto;
}
#works .elem .link_btn a {
	display: block;
	line-height: 1.4;
	padding:.3em 1.3em;
	text-align: center;
	color:white;
	border-radius:50px;
	background:#28BABF;
}
#works .elem .link_btn a:hover {
 text-decoration: none;
 background:#1F8EC8;
}
#works .elem .link_btn.flex_start{
	justify-content: flex-start;
}
@media screen and (max-width: 641px) {
	#works .elem h4{
		font-size:1.2em;
	}
	#works .elem .link_btn{
		max-width: none;
		min-width: auto;
		width:auto;
	}
	#works .elem p br{
		display: inline-block;
	}
	#works .elem .link_btn.flex_start{
		justify-content: center;
	}
	#works .elem .link_btn li {
    min-width: 100px;
    margin: .3em 5px;
		font-size:.85em;
	}
	#works .elem .link_btn li a{
		padding:.5em 1.5em;
	}
}
