@charset 'UTF-8';

html, body,
header, footer, nav, main,
section, article, address,
figure, time,
h1, h2, h3, h4, h5, h6,
ul, ol, li,
div, p,
table, caption, th, td,
a, span, img, iframe, strong, em,
dl, dt, dd,
input, textarea, select, option {
	margin: 0;
	padding: 0;
	list-style: none;
	border: none;
	outline: none;
	color: #fff;
	text-decoration: none;
	text-align: left;
	font-weight: normal;
	font-style: normal;
	line-height: 100%;
	vertical-align: baseline;
	font-family: 'Yu-Gothic', sans-serif;
	line-height: 1.6em;
	box-sizing: border-box;
	-webkit-text-size-adjust: none;
}
input, textarea, select, option {
	color: #000;
}
header, footer, nav, main,
section, article, address {
	display: block;
}
body {
	background-color: #00101B;
}
header {
	padding: 24px 0;
	position: relative;
}
header .site-home {
	position: absolute;
	top: 16px;
	left: 16px;
	height: 48px;
	width: 48px;
}
header .site-home img {
	height: 48px;
}
header .site-home:hover {
	opacity: .8;
}
header h1 img {
	display: block;
	margin: auto;
	width: 320px;
}
footer {
	background-color: #000;
	padding: 24px 0 8px;
	position: relative;
	z-index: 2;
}
footer .sitemap {
	display: flex;
	justify-content: space-between;
}
footer .logo {
	margin-bottom: 24px;
}
footer .sitemap .links {
	width: 620px;
	display: flex;
	justify-content: space-between;
}
footer .sitemap .links > div h2,
footer .sitemap .links a {
	color: #fff;
	font-size: 16px;
}
footer .sitemap .links > div h2 {
	margin-bottom: 16px;
}
footer .sitemap .links ul li {
	margin-bottom: 12px;
}
footer .sitemap .links ul li a {
	font-size: 14px;
}
footer .sitemap .links .sub ul {
	margin-top: 32px;
}
footer .sitemap .links .sub ul li {
	color: #aaa;
}
footer .sitemap .info {
	width: 340px;
}
footer .sitemap .info .sns {
	display: flex;
	margin-bottom: 24px;
}
footer .sitemap .info .sns li {
	margin-right: 16px;
}
footer .sitemap .info .sns li a {
	font-family: FontAwesome;
	color: #fff;
	font-size: 32px;
	display: block;
	padding: 8px;
	border-radius: 4px;
	box-shadow: 1px 1px 2px 0 #444;
	line-height: 1em;
}
footer .sitemap .info .sns .facebook:before {
	content: '\f230';
}
footer .sitemap .info .sns .twitter:before {
	content: '\f099';
}
footer .sitemap .info .sns .instagram:before {
	content: '\f16d';
}
footer .sitemap .info h2 {
	color: #fff;
	font-size: 16px;
	margin-bottom: 16px;
}
footer .sitemap .info address {
	color: #fff;
	line-height: 1.8em;
	font-size: 14px;
	margin-bottom: 16px;
}
footer .sitemap .info p,
footer .sitemap .info p a {
	color: #fff;
	font-size: 14px;
}
footer .sitemap .info .tel {
	margin-bottom: 16px;
}
footer .inner small {
	margin-top: 24px;
	display: block;
	color: #fff;
	text-align: center;
}
[type="text"],
[type="password"],
select,
textarea,
select {
	border: 1px solid #aaa;
	padding: 8px;
	border-radius: 3px;
	width: 49%;
}
[type="submit"],
[type="button"] {
	border-radius: 4px;
}
.error {
	font-size: 13px;
	color: #FF4AF1;
}
.error.right {
	text-align: right;
}
.error.center {
	text-align: center;
}
.inner {
	width: 1000px;
	margin: auto;
	display: block;
}
.clearfix:after,
#clearfix:after {
	content: '';
	display: block;
	clear: both;
	width: 0;
	height: 0;
}
img {
	font-size: 10px;
}
#sp-footer,
.youth2019-top .sp {
	display: none;
}
.youth2019-top * {
	color: #fff;
}
.youth2019-top footer {
	background-color: #000;
}
main {
	width: 1000px;
	margin: 0 auto 160px;
}
main h2 {
	text-align: center;
	margin-bottom: 80px;
}
.submit-home main > p,
.submit-enter main > p {
	font-size: 14px;
}
.submit-home main form {
	margin-top: 24px;
}
.submit-home main table {
	margin-top: 8px;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}
.submit-home main table tr:first-child {
	border-bottom: 1px solid #999;
}
.submit-home main table th,
.submit-home main table td {
	padding: 8px 16px;
}
.submit-home main table td {
	text-align: right;
}
.submit-home main table td input {
	padding: 6px;
}
.submit-home main table td input[name="mail"] {
  width: 400px;
}
.submit main .btn {
	margin-top: 80px;
	text-align: center;
}
.submit main .btn input,
.submit main .btn a {
	background-color: #00FFD8;
	color: #000;
	display: inline-block;
	margin: 0 8px;
	border-radius: 0;
	font-size: 16px;
	font-weight: bold;
	padding: 10px 0;
	width: 144px;
	text-align: center;
	cursor: pointer;
}
.submit main .btn .back {
	background-color: #D8D8D8;
}
.submit main .btn input:hover,
.submit main .btn a:hover {
	opacity: .8;
}
.submit-enter table {
	margin-top: 32px;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}
.submit-enter main table tr {
	border-bottom: 1px solid #999;
}
.submit-enter main > p + table tr:last-child {
	border: none;
}
.submit-enter main table th,
.submit-enter main table td {
	padding: 16px 24px;
}
.submit-enter main table caption {
	padding: 8px 0;
}
.submit-enter main table th {
	width: 60%;
}
.submit-form form {
	margin-top: 32px;
}
.submit-form table {
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}
.submit-form main table th,
.submit-form main table td {
	padding: 16px 24px;
}
.submit-form main table caption {
	padding: 8px 0;
}
.submit-form main table tr {
	border-top: 1px solid #999;
}
.submit-form main table td input,
.submit-form main table td textarea {
	padding: 6px;
	width: 100%;
}
.submit-form main table td textarea {
	height: 240px;
}
.submit-form main table th aside {
	font-size: 13px;
	margin-top: 8px;
}
.submit-form main table th aside p {
	margin-top: 16px;
}
.submit-form main table th aside p.flex {
	display: flex;
}
.submit-form main table th aside p.flex span:last-child {
	margin-left: 16px;
}
.submit-form main table th aside p a {
	color: #00FFD8;
}
.submit-form main table th aside ul {
	margin-top: 16px;
	margin-bottom: 16px;
	margin-left: 1em;
}
.submit-form main table th aside ul li {
	list-style: disc;
}
.submit-form main table .agreement {
	margin-top: 24px;
	text-align: center;
}
.submit-form main table .agreement input {
	margin-right: 8px;
}
.submit-confirm table {
	margin-top: 32px;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
	border-bottom: 1px solid #999;
}
.submit-confirm main table tr {
	border-top: 1px solid #999;
}
.submit-confirm main table th,
.submit-confirm main table td {
	padding: 16px 24px;
}
.submit-confirm main table caption {
	padding: 8px 0;
}
.submit-confirm main table th {
	width: 60%;
}
.submit-thanks main > p {
	margin: 160px 0 120px;
	text-align: center;
}
.submit-thanks main > a {
	display: block;
	padding: 10px 0;
	text-align: center;
	width: 144px;
	margin: auto;
	font-weight: bold;
	background-color: #00FFD8;
	color: #000;
}
.submit-thanks main > a:hover {
	opacity: .8;
}
@media only screen and (max-width : 480px) {
		* {
		max-width: 100%;
		box-sizing: border-box;
	}
	[type="submit"],
	[type="button"] {
		-webkit-appearance: none;
		border-radius: 0;
	}
	input, select, option {
		font-size: 16px;
	}
	#sp-footer {
		background-color: #000;
		margin-top: 48px;
	}
	#sp-footer h2 {
		color: #fff;
		text-align: center;
		padding: 16px 0;
	}
	#sp-footer .sitemap {
		border-top: 1px solid #898989;
		display: block;
	}
	#sp-footer .sitemap section {
		border-bottom: 1px solid #898989;
		padding: 16px;
	}
	#sp-footer .sitemap section .m-title {
		color: #fff;
		cursor: pointer;
	}
	#sp-footer .sitemap section .m-title h3 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		color: #fff;
	}
	#sp-footer .sitemap section .m-title h3 a {
		color: #fff;
	}
	#sp-footer .sitemap section .m-title.am h3:after {
		font-family: FontAwesome;
		content: '\f067';
	}
	#sp-footer .sitemap section .m-title.am h3.close:after {
		content: '\f068';
	}
	#sp-footer .sitemap section .m-contents {
		margin-top: 8px;
		margin-left: 24px;
		display: none;
	}
	#sp-footer .sitemap section .m-contents ul li {
		margin-bottom: 8px;
	}
	#sp-footer .sitemap section .m-contents ul li a {
		color: #fff;
	}
	#sp-footer small {
		display: block;
		text-align: center;
		color: #fff;
		font-size: 12px;
		padding: 0 0 8px;
		margin-top: 40px;
	}
	* {
		max-width: 100%;
	}
	header .site-home {
		display: none;
	}
	header h1 img {
		width: 240px;
	}
	.youth2019-top .pc {
		display: none;
	}
	#sp-footer,
	.youth2019-top .sp {
		display: block;
	}
	#sp-footer {
		margin: 0!important;
	}
	.submit main {
		padding: 0 16px;
	}
	.submit main table,
	.submit main caption,
	.submit main table tbody,
	.submit main table tr,
	.submit main table thead,
	.submit main table th,
	.submit main table td {
		display: block;
		width: 100%;
		text-align: left;
	}
	.submit main table th,
	.submit main table td {
		padding-left: 0;
		padding-right: 0;
	}
	.submit main table td {
		padding-bottom: 16px;
	}
	.submit-home main form table td input[name="id"] {
		width: 100%;
	}
	.submit main .btn input {
		width: 70%;
	}
	.submit-confirm main table th,
	.submit-form main table th,
	.submit-enter main table th {
		padding: 0;
		padding-bottom: 2px;
		font-size: 12px;
		margin-top: 16px;
	}
	.submit-form main table td,
	.submit-confirm main table td,
	.submit-enter main table td {
		padding-top: 0;
	}
	.submit-enter main table caption {
		border-bottom: 1px solid #999;
	}
	.submit-confirm main table th,
	.submit-confirm main table td,
	.submit-enter main table th,
	.submit-enter main table td {
		padding-left: 16px;
		padding-right: 16px;
	}
	.submit-confirm main .btn,
	.submit-form main .btn,
	.submit-enter main .btn {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row-reverse;
		justify-content: center;
	}
	.submit-confirm main .btn a,
	.submit-confirm main .btn input,
	.submit-confirm main .btn .back,
	.submit-form main .btn a,
	.submit-form main .btn input,
	.submit-form main .btn .back,
	.submit-enter main .btn a,
	.submit-enter main .btn .back {
		width: 70%;
		margin: 10px 0;
	}
	.submit-form #precautions {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.submit-form #precautions:after {
		content: '▼';
		font-size: 10px;
		margin-right: 10px;
	}
	.submit-form .precautions-detail {
		display: none;
	}
	.submit-form .agreement {
		padding-bottom: 24px;
		border-bottom: 1px solid #999;
	}
  .submit-form main table th aside p.flex {
		display: block;
	}
	.submit-form main table th aside p.flex span:last-child {
		display: block;
		margin-top: 16px;
	}
	.submit-thanks main > a {
		width: 70%;
	}
}
