#form .requirement .card{
	border : 1px solid #ddd;
	position : relative;
	display : flex;
}
#form .requirement .card picture{
	overflow : hidden;
}
#form .requirement .card picture > img{
	width : 100%;
	height : 100%;
	object-fit : cover;
	font-family : "object-fit: cover;";
}
#form .requirement .card > div{
	display : flex;
	flex-direction : column;
	justify-content : center;
}
#form .requirement .card h4{
	font-weight : 600;
}
#form .requirement .card p{
	font-weight : 300;
	color : #666;
}
#form .requirement pre {
	white-space: pre-line;
}
@media screen and (max-width: 768px){
	#form .requirement .card{
		height : calc( 100 * 100vw / 375 );
	}
	#form .requirement .card picture{
		width : calc( 98 * 100vw / 375 );
		height : calc( 98 * 100vw / 375 );
	}
	#form .requirement .card div{
		padding-left : calc( 10 * 100vw / 375 );
		padding-right : calc( 10 * 100vw / 375 );
	}
	#form .requirement .card h4{
		font-size : calc( 15 * 100vw / 375 );
	}
	#form .requirement .card p{
		font-size : calc( 12 * 100vw / 375 );
		line-height : 1.7;
		margin-top : calc( ( 19 * 100vw / 375 ) - .35em );
	}
}
@media screen and (min-width: 769px) and (max-width:1299px){
	#form .requirement .card{
		height : calc( 100 * 100vw / 1300 );
	}
	#form .requirement .card picture{
		width : calc( 98 * 100vw / 1300 );
		height : calc( 98 * 100vw / 1300 );
	}
	#form .requirement .card div{
		padding-left : calc( 10 * 100vw / 1300 );
		padding-right : calc( 30 * 100vw / 1300 );
	}
	#form .requirement .card h4{
		font-size : calc( 15 * 100vw / 1300 );
	}
	#form .requirement .card p{
		font-size : calc( 12 * 100vw / 1300 );
		line-height : 1.7;
		margin-top : calc( ( 19 * 100vw / 1300 ) - .35em );
	}
}
@media print,screen and (min-width: 1300px){
	#form .requirement .card{
		height : 100px;
	}
	#form .requirement .card picture{
		width : 98px;
		height : 98px;
	}
	#form .requirement .card div{
		padding-left : 10px;
		padding-right : 30px;
	}
	#form .requirement .card h4{
		font-size : 15px;
	}
	#form .requirement .card p{
		font-size : 12px;
		line-height : 1.7;
		margin-top : calc( 19px - .35em );
	}
}
#form .requirement .box{
	background-color : #fff;
}
#form .requirement .box01:after{
	display : block;
	order : 2;
	content : "";
	background : url("../images/form/and02.svg") 0 0 / contain no-repeat;
}
#form .requirement .box > .card:nth-of-type(1){
	order : 1;
}
#form .requirement .box > .card:nth-of-type(2){
	order : 3;
}
#form .requirement h2{
	text-align : center;
	font-weight : 600;
	letter-spacing : .1em;
}
#form .requirement dl{
	border-bottom : 1px solid #ddd;
}
#form .requirement dl > div{
	border-top : 1px solid #ddd;
}
#form .requirement dt{
	font-weight : 600;
}
#form .requirement dd{
	font-weight : 300;
}
#form .requirement dd li:before{
	content : "・";
}
#form .requirement dd.studio-list a {
	text-decoration: underline;
}
#form .requirement .link01{
	margin-left : auto;
	margin-right : auto;
}
#form .requirement ul.catchphrases {
	display: flex;
	justify-content: space-between;
}
#form .requirement ul.catchphrases li {
	display: block;
	width: 33%;
	text-align: center;
}
#form .requirement ul.catchphrases li .icon {
	height: calc(60vw / 3);
	display: flex;
	align-items: center;
	justify-content: center;
}
#form .requirement ul.catchphrases li p.lead {
	margin-bottom: 4%;
}
#form .requirement ul.catchphrases li p.lead span {
	font-size: 0.7rem;
	line-height: 1rem;
}
#form .requirement ul.catchphrases li p.text span {
	font-size: 0.9rem;
	font-weight: bold;
	line-height: 1.2rem;
}
#form .requirement ul.catchphrases li p span {
	display: inline-block;
}
#form .requirement .join-us {
	text-align: center;
	background-color: #F5F5F5;
}
#form .requirement .join-us .lead {
	margin-bottom: 4%;
}
#form .requirement .join-us .lead span {
	font-size: 0.8rem;
	display: inline-block;
	font-weight: bold;
	line-height: 1rem;
}
#form .requirement .join-us .text span {
	font-size: 1.1rem;
	display: inline-block;
	font-weight: bold;
	line-height: 1.4rem;
}
#form .requirement ul.catchphrases strong, #form .requirement .join-us strong {
	color: #c00;
}
#form .requirement ul.catchphrases .catch-income img {
	width: 46% /*31.366*/
}
#form .requirement ul.catchphrases .catch-member img {
	width: 72% /*47.833*/
}
#form .requirement ul.catchphrases .catch-independence img {
	width: 42% /*28.243*/
}

@media screen and (max-width: 768px){
	#form .requirement .box01{
		padding-top : calc( 20 * 100vw / 375 );
		padding-bottom : calc( 20 * 100vw / 375 );
		padding-left : calc( 14 * 100% / 335 );
		padding-right : calc( 14 * 100% / 335 );
		display : flex;
		flex-direction : column;
	}
	#form .requirement .box:after{
		width : calc( 48 * 100vw / 375 );
		height : calc( 48 * 100vw / 375 );
		margin-left : auto;
		margin-right : auto;
		margin-top : calc( 20 * 100vw / 375 );
		margin-bottom : calc( 20 * 100vw / 375 );
	}
	#form .requirement .card{
		width : 100%;
	}
	#form .requirement .box02{
		margin-top : calc( 40 * 100vw / 375 );
		padding-left : calc( 14 * 100% / 335 );
		padding-right : calc( 14 * 100% / 335 );
		padding-bottom : calc( 45 * 100vw / 375 );
		padding-top : calc( 10 * 100vw / 375 );;
	}
	#form .requirement h2{
		font-size : calc( 20 * 100vw / 375 );
		line-height : 1.67;
	}
	#form .requirement dl{
		margin-top : calc( ( 58 - 10 ) * 100vw / 375 );
	}
	#form .requirement dt{
		font-size : calc( 18 * 100vw / 375 );
		padding-top : calc( 20 * 100vw / 375 );
		padding-bottom : calc( 20 * 100vw / 375 );
		padding-left : calc( 12 * 100% / 307 );
		padding-right : calc( 12 * 100% / 307 );
	}
	#form .requirement dd{
		padding-bottom : calc( 24 * 100vw / 375 );
		padding-left : calc( 12 * 100% / 307 );
		padding-right : calc( 12 * 100% / 307 );
	}
	#form .requirement dd , #form .requirement dd li , #form .requirement dd p{
		font-size : calc( 15 * 100vw / 375 );
		line-height : 2;
	}
	#form .requirement dd li{
		display : flex;
		align-items : flex-start;
	}
	#form .requirement .link01{
		margin-top : calc( 80 * 100vw / 375 );
		width : calc( 280 * 100% / 307 );
	}
	#form .requirement ul.catchphrases li .icon {
		height: calc(60vw / 3);
	}
	#form .requirement ul.catchphrases li p.lead span {
		font-size: 0.7rem;
		line-height: 1rem;
	}
	#form .requirement ul.catchphrases li p.text span {
		font-size: 0.8rem;
		line-height: 1.2rem;
	}
	#form .requirement .requirement-top-filler {
		margin-top: calc( 35 * 100vw / 375 );
	}
	#form .requirement .join-us {
		padding: 1rem 5%;
		margin: 1.3rem 0 1.5rem;
	}
	#form .requirement .join-us .lead span {
		font-size: 0.8rem;
		line-height: 1rem;
	}
	#form .requirement .join-us .text span {
		font-size: 1.1rem;
		line-height: 1.4rem;
	}
}
@media print,screen and (min-width: 769px){
	#form .requirement .box01{
		display : flex;
		justify-content : space-between;
		align-items : center;
	}
	#form .requirement dl > div{
		display : flex;
	}
	#form .requirement dt{
		flex-shrink : 0;
		background-color : #f9f9f9;
	}
	#form .requirement dd{
		flex-grow : 1;
	}
}
#form .requirement dl > div:nth-of-type(5) dd p{
	margin-top : 1em;
}
@media screen and (min-width: 769px) and (max-width:1299px){
	#form .requirement .box01{
		padding-top : calc( 20 * 100vw / 1300 );
		padding-bottom : calc( 20 * 100vw / 1300 );
		padding-left : calc( 20 * 100% / 1000 );
		padding-right : calc( 20 * 100% / 1000 );
	}
	#form .requirement .box:after{
		width : calc( 74 * 100vw / 1300 );
		height : calc( 74 * 100vw / 1300 );
	}
	#form .requirement .card{
		width : calc( 400 * 100% / 960 );
	}
	#form .requirement .box02{
		margin-top : calc( 41 * 100vw / 1300 );
		padding-left : calc( 140 * 100% / 1000 );
		padding-right : calc( 140 * 100% / 1000 );
		padding-bottom : calc( 101 * 100vw / 1300 );
		padding-top : calc( 10 * 100vw / 1300 );
	}
	#form .requirement h2{
		font-size : calc( 30 * 100vw / 1300 );
		line-height : 1.67;
	}
	#form .requirement dl{
		margin-top : calc( ( 58 - 10 ) * 100vw / 1300 );
	}
	#form .requirement dt{
		width : calc( 200 * 100% / 720 );
		font-size : calc( 18 * 100vw / 1300 );
		padding-top : calc( 31 * 100vw / 1300 );
		padding-left : calc( 31 * 100% / 720 );
		padding-right : calc( 31 * 100% / 720 );
	}
	#form .requirement dd{
		padding-top : calc( ( 32 - 7.5 ) * 100vw / 1300 );
		padding-bottom : calc( ( 32 - 7.5 ) * 100vw / 1300 );
		padding-left : calc( 30 * 100vw / 1300 );
		padding-right : calc( 30 * 100vw / 1300 );
	}
	#form .requirement dd , #form .requirement dd li , #form .requirement dd p{
		font-size : calc( 15 * 100vw / 1300 );
		line-height : 2;
	}
	#form .requirement .link01{
		margin-top : calc( 101 * 100vw / 1300 );
	}
	#form .requirement ul.catchphrases li .icon {
		height: calc(50vw / 3);
	}
	#form .requirement ul.catchphrases li p.lead span {
		font-size: 0.9rem;
		line-height: 1.1rem;
	}
	#form .requirement ul.catchphrases li p.text span {
		font-size: 1.1rem;
		line-height: 1.4rem;
	}
	#form .requirement .requirement-top-filler {
		margin-top: calc( 90 * 100vw / 1300 );
	}
	#form .requirement .join-us {
		padding: 1.2rem 5%;
		margin: 1.6rem 0 1.8rem;
	}
	#form .requirement .join-us .lead {
		margin-bottom: 1.5%;
	}
	#form .requirement .join-us .lead span {
		font-size: 1rem;
		line-height: 1.2rem;
	}
	#form .requirement .join-us .text span {
		font-size: 1.3rem;
		line-height: 1.5rem;
	}
}
@media print,screen and (min-width: 1300px){
	#form .requirement .box01{
		padding-top : 20px;
		padding-bottom : 20px;
		padding-left : 20px;
		padding-right : 20px;
	}
	#form .requirement .box:after{
		width : 74px;
		height : 74px;
	}
	#form .requirement .card{
		width : 400px;
	}
	#form .requirement .box02{
		margin-top : 41px;
		padding-left : 140px;
		padding-right : 140px;
		padding-bottom : 101px;
		padding-top : 10px;
	}
	#form .requirement h2{
		font-size : 30px;
		line-height : 1.67;
	}
	#form .requirement dl{
		margin-top : calc( 58px - 10px );
	}
	#form .requirement dt{
		width : 200px;
		font-size : 18px;
		padding-top : 31px;
		padding-left : 31px;
		padding-right : 31px;
	}
	#form .requirement dd{
		padding-top : calc( 32px - 7.5px );
		padding-bottom : calc( 32px - 7.5px );
		padding-left : 30px;
		padding-right : 30px;
	}
	#form .requirement dd , #form .requirement dd li , #form .requirement dd p{
		font-size : 15px;
		line-height : 2;
	}
	#form .requirement .link01{
		margin-top : 101px;
	}
	#form .requirement ul.catchphrases li .icon {
		height: 235px;
	}
	#form .requirement ul.catchphrases li p.lead span {
		font-size: 0.9rem;
		line-height: 1.1rem;
	}
	#form .requirement ul.catchphrases li p.text span {
		font-size: 1.1rem;
		line-height: 1.4rem;
	}
	#form .requirement .requirement-top-filler {
		margin-top: 90px;
	}
	#form .requirement .join-us {
		padding: 1.2rem 5%;
		margin: 1.6rem 0 1.8rem;
	}
	#form .requirement .join-us .lead {
		margin-bottom: 1.5%;
	}
	#form .requirement .join-us .lead span {
		font-size: 1rem;
		line-height: 1.2rem;
	}
	#form .requirement .join-us .text span {
		font-size: 1.3rem;
		line-height: 1.5rem;
	}
}
#form h2#requirements-opener {
	border: solid 2px #e7e7e7;
	padding: 2% 0;
	position: relative;
}
#form h2#requirements-opener::after {
	content: "+";
	position: absolute;
	top: 50%;
	right: 5%;
	margin-top: -2.7rem;
	font-size: 3rem;
	font-family: serif;
}