@charset "utf-8";

body{
	color:#333333;
	font-family: "Gilroy-Regular", 'Noto Sans JP',"Hiragino sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-size:16px;
	line-height:1.8;
	background:none;
}

body.on{
	overflow:hidden;
}


ul{
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}

li{
	letter-spacing: normal; /* 文字間を通常に戻す */
}
a {
	color:#333333;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-ms-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	text-decoration:none;
}

header a , nav a{
	text-decoration:none;
}


img{
	max-width:100%;
	height:auto;
}

.clear{
	clear:both;
}

.clearfix_af:after{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}

.clearfix_bf:before{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}
.clearfix_af ,.clearfix_bf{
	display: inline-block;
} 
/* Hides from IE Mac */
* html .clearfix_af{
	height: 1%;
}
.clearfix_af ,.clearfix_bf{
	display:block;
}
/* End Hack */

.container{
	max-width:640px;
	padding:0 20px;
	box-sizing:border-box;
	margin:120px auto 0 auto;
}

h2.regist_title{
	text-align:center;
	font-size: 24px;
	line-height:1.2;
	color:#000;
}

h2.regist_title span{
	display:block;
	font-size: 14px;
	letter-spacing: 0.04em;
	color: #A3A3A3;
}

.content_frame{
	padding-top:10px;
}

p.main_attend{
	text-align:center;
	font-size: 15px;
	line-height: 160%;
	margin-top:25px;
	margin-bottom:20px;
}


dl.input_area{
	margin-bottom:20px;
}


dl.input_area dt{
	font-weight: 500;
	font-size: 15px;
}

dl.input_area dt small{
	display: block;
    font-size: 12px;
    letter-spacing: 0.04em;
    color: #A3A3A3;
	line-height: 1;
}

dl.input_area dt small span{
    color: #A3A3A3;
	display: block;
	font-size: 12px;
	padding-right: 10px;
}

dl.input_area dd small{
    font-size: 12px;
    letter-spacing: 0.04em;
    color: #A3A3A3;
	line-height: 1;
}

.know_area{
	line-height: 1.2;
}

.know_area small{
    font-size: 12px;
    letter-spacing: 0.04em;
    color: #A3A3A3;
	line-height: 1;
}

.checkbox_en{
    font-size: 12px;
    letter-spacing: 0.04em;
    color: #A3A3A3;
	line-height: 1;
}

dl.input_area dt span{
	color:#ff0000;
}

dl.input_area dd ul{
	justify-content:space-between;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}

dl.input_area dd ul.two_column li{
	width:49%;
}

dl.input_area dd ul.two_column02 li:first-child{
	width:31%;
}

dl.input_area dd ul.two_column02 li:last-child{
	width:66%;
}

dl.input_area dd ul.three_column li{
	width:31%;
}

.know_area{
	background: #F4F4F4;
	border-radius: 20px;
	padding:40px;
	box-sizing:border-box;
}

dl.know_list{
	justify-content:space-between;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	margin-top:5px;
}

dl.know_list dt{
	width:140px;
}

dl.know_list dd{
	flex:1;
}

span.attend{
	font-weight: 500;
	font-size: 12px;
	line-height: 180%;
	color: #808080;
	display:block;
	margin-top:5px;
}

input[type="text"]{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
	-webkit-appearance: none; 
}

input[type="password"]{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
	-webkit-appearance: none; 
}

input[type="radio"]{
	vertical-align: initial;
}

select{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
	color: #333;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position:relative;
}

textarea{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
	height:100px;
	-webkit-appearance: none; 
}

input[type="radio"] {
    position: relative;
    -webkit-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    content: "";
    background-color: #FFFFFF;
    border: 1px solid #999999;
    -webkit-border-radius: 24px;
    border-radius: 24px;
    vertical-align: middle;
    cursor: pointer;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
	outline: none;
}

input[type="radio"]:checked:after {
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    content: "";
    width: 10px;
    height: 10px;
    background:#2AC5FF;
    -webkit-border-radius: 12px;
    border-radius: 12px;
}

input[type="checkbox"] {
    position: relative;
    -webkit-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    content: "";
    background-color: #FFFFFF;
    border: 1px solid #999999;
    vertical-align: middle;
    cursor: pointer;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
	outline: none;
}

input[type="checkbox"]:checked:after {
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    content: "";
    width: 10px;
    height: 10px;
    background:#2AC5FF;
}


input[type="submit"]{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input::placeholder {
	color: #A3A3A3;
}
input:-ms-input-placeholder {
	color: #A3A3A3;
}
input::-ms-input-placeholder {
	color: #A3A3A3;
}

.banner{
	text-align:center;
}

#submit{
	padding:40px 0;
}

#submit img{
	display:block;
}

#submit span{
	display:block;
	width:280px;
	margin:auto;
	color:#fff;
	background: #cacaca;
	border-radius: 8px;
	text-align:center;
	font-size: 16px;
	padding:12px 0;
	border:0;
	line-height: 1.3;
	height:64px;
}


#submit input{
	display:block;
	width:280px;
	margin:auto;
	color:#fff;
	background: #2AC5FF;
	border-radius: 8px;
	text-align:center;
	font-size: 16px;
	padding: 12px 0;
    border: 0;
    height: 64px;
    cursor: pointer;
    line-height: 1.3;
}

.agree_area a{
	color:#2AC5FF;
}

.error_title{
	text-align:center;
	color:#ff0000;
	font-weight:bold;
	font-size:18px;
}

.error_comment{
	color:#ff0000;
}

.submit_btn{
	justify-content:space-between;
	display:flex;
	flex-wrap:wrap;
	margin-bottom:50px;
}

.agree_area{
	font-size:13px;
}

input{
	font-size:16px;
}

.btn01.back{
	background-color:#ccc;
	line-height: 1.3;
}

#cu_frame{
	display:none;
}

.cu_area{
	font-size:13px;
	background:#f2fbf3;
	padding:8px;
}

.no_cu_area{
	display:none;
}

@media only screen and (min-width: 768px) {
	.sp_only{
		display:none !important;
	}

	dl.input_area{
		justify-content:flex-start;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
	}

	dl.input_area dt{
		width:160px;
	}

	dl.input_area dd{
		flex:1;
	}


}

@media (max-width: 768px) {
	.tab_hidden{
		display:none !important;
	}

}


@media (max-width: 767px) {

	.pc_only{
		display:none !important;
	}

	.container{
		margin:70px auto 0 auto;
	}


	h2.regist_title{
		margin-left:auto;
		margin-right:auto;
		width:60%;
	}

	.know_area{
		border-radius: 10px;
		padding:15px;
	}

	dl.know_list{
		justify-content:space-between;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		margin-top:5px;
	}

	dl.know_list dt{
		width:100%;
	}

	dl.know_list dd{
		flex:1;
	}

	.btn01{
		width:45%;
	}

	.error_comment small{
		display: block;
	}

	.error_title .checkbox_en{
		display: block;
	}
	
}
