.contents {
	width: 1850px;
	position: relative;
	margin: 0 auto;
	font-family: 'Noto Sans JP', sans-serif;
}

.contents#oudanmaku h3 {
	width: 420px;
	height: 60px;
	text-align: center;
	line-height: 60px;
	background-color: #0f1643;
	clip-path: polygon(0 0, 100% 0, 94% 100%, 6% 100%);
	margin: 0 auto;
	font-size: 34px;
	font-weight: 700;
	text-shadow: #000 2px 2px 2px;
	margin-bottom: 30px;
}

.point {
	width: 1097px;
	height: 164px;
	background: url(../images/oudanmaku_point.png) no-repeat center / 100%;
	margin: 30px auto -20px;
	position: relative;
	z-index: 1;
}

#massage {
	width: 1480px;
	height: 320px;
	margin: 0 auto 20px;
	background: url("../images/oudanmakubanner.png") no-repeat center center / 100%;
	position: relative;
}

#massage a {
	height: 24px;
	text-decoration: none;
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 16px;
	pointer-events: none;
	position: absolute;
	top: 233px;
	left: 553px;
}

.lead {
	background: #159EF980;
	color: #fff;
	margin: 0 auto 50px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 24px;
	line-height: 160%;
	padding: 30px 0;
	text-align: center;
}

.lead p {
	width: 1480px;
	margin: auto;
}

.info {
	width: 1480px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 50px;
}

.info h4 {
	text-align: center;
	font-weight: 700;
	font-size: 24px;
	margin-bottom: 30px;
	padding: 15px 0;
}

.info .kikaku,
.info .chui {
	clip-path: polygon(20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 20px);
	position: relative;
}

.info .kikaku::after,
.info .chui::after {
	content: '';
	background: #159EF9;
	position: absolute;
	width: 3px;
	height: 50px;
	transform: rotate(45deg);
	right: 5px;
	bottom: -15px;
}

.info .chui::after {
	background: #CC2EC1;
}

.info .kikaku {
	width: 620px;
	background: #159EF94d;
	border: solid 3px #159EF9;
}

.info .kikaku h4 {
	background: #159EF9;
}

.info .chui h4 {
	background: #CC2EC1;
}

.kikaku ul {
	padding: 0 30px 30px;
	font-size: 23px;
	font-weight: 700;
	line-height: 50px;
}

/* .kikaku ul * {
	font-family: "Noto Sans JP", sans-serif;

} */

.info .chui {
	width: 820px;
	background: #CC2EC14d;
	font-size: 16px;
	border: solid 3px #CC2EC1;
}

.chui ul {
	padding: 0 50px 30px;
}

.chui ul.gazo {
	padding: 0;
	margin-top: -20px;
}

.chui li {
	text-indent: -1em;
	margin-left: 1em;
}

.gazo li {
	text-indent: -1em;
	margin-left: 1em;
}

.error {
	background: #AB0002;
	color: #fff;
	font-size: 20px;
	line-height: 2em;
	width: 1080px;
	padding: 40px;
	margin-bottom: 50px;
}

.error span {
	color: #ffff00;
}

#form_wrap {
	width: 1480px;
	margin: 0 auto 40px;
}

#banner {
	width: 1160px;
	margin: auto;
	clip-path: polygon(20px 0, 100% 0, 100% 100%, 0 100%, 0 20px);
}

#banner h5 {
	width: 100%;
	height: 60px;
	background: #C30600;
	color: #fff;
	font-weight: 700;
	font-size: 26px;
	text-align: center;
	line-height: 60px;
}

.ouen {
	padding: 20px 120px 30px;
	background: rgba(0, 0, 0, 0.7);
	padding-top: 40px;
}




#banner .ouen {
	padding-top: 20px;
	padding-bottom: 60px;
}

.ouen_lead {
	width: 100%;
	text-align: center;
	line-height: 140%;
	font-size: 22px;
	font-weight: 700;
}

.ouen_lead span {
	font-size: 16px;
	font-weight: 400;
}


.ouen_race {
	width: 100%;
	position: relative;
	margin-top: 40px;
}

.check .ouen_race {
	margin-top: 20px;
}

.ouen_race .btn {
	width: 225px;
	height: 36px;
	position: absolute;
	top: 42px;
	left: 510px;
	background: #66189F;
	clip-path: polygon(12px 0, 100% 0, 213px 100%, 0 100%);
	text-align: center;
}

.ouen_race .btn:hover {
	transition: 0.3s all;
	opacity: 0.7;
}

.ouen_race .btn a {
	line-height: 36px;
	display: block;
	color: #fff;
	text-decoration: none;
	font-weight: 500;
}

.ouen_race .btn a::after {
	content: "▶︎";
	color: rgba(0, 0, 0, 0.5);
	margin-left: 4px;
	margin-right: -8px;
}



.ouen_race .btn.non {
	opacity: 0.3;
	pointer-events: none;
}


.ouen ul {
	padding: 0px 10px 10px;
	background: #fff;
	margin-top: 0px;
}

.ouen ul li {
	background: #fff;
	margin-top: 2px;
	padding-top: 10px;
}

.ouen.check ul li {
	border-bottom: 1px solid #ccc;
	padding: 20px 0;
}


#oudanmaku .race_name {
	width: 100%;
	line-height: 38px;
	font-family: 'Noto Sans JP', sans-serif;
	margin: 0px;
}

#oudanmaku .r_name {
	width: 810px;
	height: 41px;
	line-height: 40px;
	float: left;
	background: #fff;
	color: #000;
	font-weight: 500;
	padding-left: 40px;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 22px;
	position: relative;
	margin-left: -30px;
	z-index: 1;
}

.banner_upload {
	display: flex;
	align-items: center;
}

.banner_label {
	display: block;
	position: relative;
	width: 270px;
	height: 40px;
	flex-shrink: 0;
	background: #00378E;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	line-height: 40px;
	cursor: pointer;
	transition: all 0.3s;
	z-index: 1;
	margin: 0 10px;
}

.banner_btn {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	opacity: 0;
	cursor: pointer;
	border: none;
}

.file_name {
	font-size: 16px;
	font-weight: 400;
	color: #000;
	overflow-wrap: anywhere;
}

.banner_btn::file-selector-button {
	cursor: pointer;
}

/**********************************
日程
***********************************/
#oudanmaku .yoso_days_c {
	width: 498px;
	padding-left: 20px;
	font-size: 20px;
	line-height: 36px;
	font-weight: 500;
	float: left;
	background: #444;
	clip-path: polygon(0 0, 100% 0, calc(100% - 12px) 100%, 0 100%);
	font-family: 'Roboto', sans-serif;
}

#oudanmaku .simekiri {
	width: 170px;
	padding-left: 24px;
	height: 36px;
	float: left;
	font-size: 16px;
	font-weight: 700;
	margin-left: 208px;
	background: #C45300;
	clip-path: polygon(12px 0, 100% 0, 100% 100%, 0 100%);
}

#oudanmaku .yoso_days_c span,
#oudanmaku .simekiri span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	margin: 0 10px 0 4px;
	padding: 0px 3px;
	background: #000;
	border-radius: 10px;
	color: #FFF;
}

#oudanmaku span.hol {
	background: #CC1616;
}

#oudanmaku span.sat {
	background: #1F7AD5;
}

#oudanmaku .grade {
	width: 100px;
	float: left;
	height: 42px;
	position: relative;
	z-index: 2;
}

#oudanmaku .sg .grade {
	background: url("../images/yoso_sg.png") no-repeat top left;
}

#oudanmaku .g1 .grade {
	background: url("../images/yoso_g1.png") no-repeat top left;
}

#oudanmaku .g2 .grade {
	background: url("../images/yoso_g2.png") no-repeat top left;
}

#oudanmaku .g3 .grade {
	background: url("../images/yoso_g3.png") no-repeat top left;
}

#oudanmaku .ip .grade {
	background: url("../images/yoso_ip.png") no-repeat top left;
}

select {
	width: 260px;
	height: 40px;
	float: left;
	font-size: 18px;
	font-family: 'Noto Sans JP', sans-serif;
}

input {
	width: 490px;
	height: 34px;
	margin-left: 10px;
	float: left;
	font-size: 20px;
	font-family: 'Noto Sans JP', sans-serif;
}

.ouen_race li {
	position: relative;
}

.ouen_reset {
	width: 62px;
	height: 46px;
	background: url("../images/ouen_reset.png") no-repeat top left;
	cursor: pointer;
	position: absolute;
	top: 10px;
	right: 10px;
}


.ouen_add {
	width: 50px;
	height: 50px;
	background: url("../images/ouen_plus.png") no-repeat top left;
	margin: 0 auto -30px;
	cursor: pointer;
}

.ouen_reset:hover,
.ouen_add:hover {
	opacity: 0.7;
	transition: 0.3s all;
}


#oudanmaku_pi {
	width: 100%;
}

#oudanmaku_pi dl {
	width: 100%;
}

#oudanmaku_pi dl dt,
#oudanmaku_pi dl dd {
	float: left;
	margin-bottom: 10px;
}

#oudanmaku_pi dl dt {
	width: 220px;
	line-height: 40px;
	font-size: 16px;
	font-weight: 500;
}

#oudanmaku_pi dl dd {
	width: 210px;
}

.ouen.check dl {
	margin-top: -10px;
	margin-bottom: 20px;
}

.ouen.check dt {
	color: #0079D1;
}

.ouen.check dd {
	line-height: 40px;
	font-size: 20px;
	font-weight: 700;
}

.ouen.check dd.line2 {
	padding-top: 10px;
	line-height: 140%;
}


#nick {
	width: 240px;
}

#name1,
#name2 {
	width: 76px;
	float: left;
}

.txt {
	width: 21px;
	line-height: 40px;
	float: left;
	text-align: center;
}

#post1,
#post2 {
	width: 76px;
	float: left;
}

#oudanmaku_pi input {
	margin: 0;
}

#add1 {
	width: 247px;
}

#add2,
#add3 {
	width: 202px;
}

.check {
	width: 640px;
	font-size: 16px;
	margin: 50px auto 0;
}

#confirm {
	width: 400px;
	height: 60px;
	margin: 20px auto 10px;
	background: #C30600;
	border-radius: 27px;
	color: #fff;
}

#confirm input {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	width: 100%;
	height: 100%;
	font-size: 24px;
	color: #fff;
	font-weight: 700;
}

#sign {
	width: 466px;
	height: 70px;
	background: rgba(60, 60, 60, 0.7);
}

.sign_size {
	width: 306px;
	height: 70px;
	padding: 14px 10px 0;
	text-align: left;
	font-size: 14px;
}

.check_01,
.check_02 {
	color: #000;
	float: left;
}

.check_01 {
	width: 300px;
	padding-left: 20px;
}

.check_01 h6,
.check_02 h6 {
	font-size: 18px;
	font-weight: 700;
	margin-right: 8px;
	color: #6D11AC;
}


.success {
	width: 676px;
	margin: 60px auto 0;
	padding-top: 477px;
	background: url("../images/success.png") no-repeat center top;
}

.sorry {
	width: 676px;
	margin: 60px auto 0;
	padding-top: 477px;
	background: url("../images/sorry.png") no-repeat center top;
}


.thx {
	color: #FFDC00;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	margin: 50px auto;
}