@charset "UTF-8";

/* reset
---------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
detail,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

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

a {
	text-decoration: none;
}

/* border-box */

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* Reset input */

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	outline: none;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* cmn
---------------------------------------- */

.inner {
	position: relative;
	margin: 0 auto;
	zoom: 1;
}

.inner:before,
.inner:after {
	content: '';
	display: table;
}

.inner:after {
	clear: both;
}

/* cmn
---------------------------------------- */
body {
	position: relative;
	color: #493d3d;
	font-size: 20px;
	font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	text-align: center;
}

body a {
	color: #493d3d;
}

body a:hover {
	opacity: .6;
	-webkit-transition: .6s;
	-o-transition: .6s;
	transition: .6s;
}

body .wrapper {
	min-height: 100vh;
	/*background: url('../images/bg_body.png') repeat-y;*/
	background-size: 100% auto;
}

body .wrapper:after {
	content: '';
	display: block;
	width: 100%;
	/*background: url('../images/bg_foot.png') center top no-repeat;*/
	background-size: 100% auto;
}
body #contents {
	min-height: 100vh;
    background-color: #015690;
}

body .content-area {
	background-color: #fff;
	width: 800px;
  padding: 0;
	margin: 40px auto 120px;
}
body .complete .content-area {
	padding-bottom: 80px;
}

body input[type=text],
body textarea {
	width: 100%;
	padding: .5em;
	font-size: 2rem;
	border: #000 1px solid;
	border-radius: 6px;
}
body input[type=text]#team_capacity{
	width: 15%;
	margin-right: .5em;
}

/* content
---------------------------------------- */
h1 img{
	width: 100%;
}

.content-area> .content-title {
	color: #015690;
	font-weight: bold;
	font-size: 2rem;
	text-align: center;
}

.content-area> .content-title {
	color: #015690;
	font-size: 32px;
	text-align: center;
	font-weight: 600;
	margin-bottom: 10px;
	padding: 40px 100px 0;
}
.content-area> .content-text {
	text-align: left;
	padding: 0px 100px 0;
}
.confirm .content-area> .content-text {
	text-align: left;
	padding: 40px 100px 0;
}
.complete .content-area> .content-text {
	text-align: center;
}

.content-area .form-area {
	margin-top: 40px;
	padding-top: 40px;
	border-top: #015690 10px solid;
}

.content-area .form-area> .input-name {
	width: 100%;
	color: #015690;
	font-weight: bold;
	font-size: 2rem;
	line-height: 2.307692308;
	text-align: center;
}
.content-area .form-area> .input-caption {
	width: 100%;
	color: #000;
	font-size: 1.4rem;
	text-align: center;
	margin-bottom: 10px;
}

.content-area .form-area> .input-parts {
	position: relative;
	margin-bottom: 30px;
	text-align: center;
	padding: 0 100px 0;
}
.input-file-container{
	margin: 0 100px 0;
	box-sizing: border-box;
}
.content-area .form-area> .input-parts.textarea {
	margin-bottom: 30px;
}
.confirm .content-area .form-area> .input-parts.textarea {
	/*text-align: left;*/
}

.content-area .form-area> .input-parts> .error-area {
	position: relative;
	top: 20px;
	padding: .8em .5em;
	color: #fff;
	font-size: 2rem;
	background: #e02f45;
	border-radius: 6px;
}
.content-area .form-area> .input-parts.textarea> .error-area {
	font-size: 1.6rem;
}


.content-area .form-area> .input-parts> .error-area:before {
	content: '';
    position: absolute;
    top: -21.5625px;
    left: 50%;
    width: 1.5625px;
    border-right: transparent 21.5625px solid;
    border-bottom: #e02f45 21.5625px solid;
    border-left: transparent 21.5625px solid;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.content-area .btn-color {
	display: block;
	width: 40%;
	margin: 0 auto;
	color: #fff;
	font-weight: bold;
	font-size: 2rem;
	line-height: 3.333333333;
	text-align: center;
	background: #015690;
	border-radius: 7.8125px;
	cursor: pointer;
}

.content-area .btn-back {
	width: 40%;
	margin-top: 20px;
	color: #fff;
	font-weight: bold;
	font-size: 2rem;
	line-height: 3.333333333;
	background: #c8c8c8;
	border-radius: 7.8125px;
}

.content-area .mt60 {
	margin-top: 5vw;
}

.checkbox-group {
	padding: 0 100px 0;
	text-align: left;
}
span.error-area {
	color: #e02f45;
}

.form-foot{
    padding: 40px 0 80px;
}

.sp-hide,
header{ 
	display: none !important; 
	
	}
.pc-hide { display: inline-block; }

.pc-hide {
	width: 100%;
	background-image:url(pc_bg_image.png);
	background-repeat:repeat-x;
	}

/* 閉じるボタン */

.remodal-close {
  position: absolute;
  top: 25px;
  right: 25px;
  left: auto;

  display: block;
  overflow: visible;

  width: 52.5px;
  height: 52.5px;
  margin: 0;
  padding: 0;

  cursor: pointer;
  transition: color 0.2s;
  text-decoration: none;

  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent;
  z-index: 9999;
}

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38;
  opacity: 1;
}

.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 40px;
  line-height: 35px;

  position: absolute;
  top: 0;
  right: 0;

  display: block;

  width: 35px;

  content: "\00d7";
  text-align: center;
}

span.error-area{
	font-size: 2rem;
}

@media screen and (max-width: 640px) {
	header{
		display:block !important;
	}
	img { width: 100%; }
	.sp-hide { 
		display: inline-block !important;
	}
	.pc-hide { display: none; }
	
	
	/* cmn
	---------------------------------------- */

	.inner {
		position: relative;
		margin: 0 auto;
		zoom: 1;
	}

	.inner:before,
	.inner:after {
		content: '';
		display: table;
	}

	.inner:after {
		clear: both;
	}

	/* cmn
	---------------------------------------- */
	body {
		position: relative;
		color: #493d3d;
		font-size: 3.4375vw;
		font-family:"Hiragino Sans", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		line-height: 1.6;
		text-align: center;
	}

	body a {
		color: #493d3d;
	}

	body a:hover {
		opacity: .6;
		-webkit-transition: .6s;
		-o-transition: .6s;
		transition: .6s;
	}

	body .wrapper {
		min-height: 100vh;
		padding: 9.375vw 3.125vw;
		/*background: url('../images/bg_body.png') repeat-y;*/
		background-size: 100% auto;
	}

	body .wrapper:after {
		content: '';
		display: block;
		width: 100%;
		height: 9.375vw;
		/*background: url('../images/bg_foot.png') center top no-repeat;*/
		background-size: 100% auto;
	}

	body .content-area {
		width: 90%;
		padding: 0;
		padding-bottom: 12vw;
		/*padding: 6.25vw 6.25vw 12.25vw;*/
		/*background: url('../images/bg_content.png') repeat-y;*/
		background-size: 100% auto;
		margin: 6vw auto 16vw;
	}

	body input[type=text],
	body textarea {
		width: 100%;
		padding: .5em;
		font-size: 4.6875vw;
		border: #000 1px solid;
		border-radius: 6px;
	}

	/* head
	---------------------------------------- */

	.header-area> .head-tltle {
		height: 21.875vw;
	}

	/* content
	---------------------------------------- */
	.content-area .form-area {
		margin-top: 9.375vw;
		padding-top: 9.375vw;
		border-top: #ccc 4px dotted;
	}

	.content-area .form-area> .input-name {
		width: 100%;
		height: 9.375vw;
		color: #015690;
		font-weight: bold;
		font-size: 4.0625vw;
		line-height: 2.307692308;
		text-align: center;
	}

	.content-area .form-area> .input-parts {
		position: relative;
		margin-bottom: 6.25vw;
		text-align: center;
	}

	.content-area .form-area> .input-parts> .error-area {
		position: relative;
		padding: .8em .5em;
		color: #fff;
		font-size: 4.0625vw;
		background: #e02f45;
		border-radius: 6px;
	}

	.content-area .form-area> .input-parts> .error-area:before {
		content: '';
		position: absolute;
		top: -1.5625vw;
		left: 50%;
		width: 1.5625vw;
		height: 1.5625vw;
		border-right: transparent 1.5625vw solid;
		border-bottom: #e02f45 1.5625vw solid;
		border-left: transparent 1.5625vw solid;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.content-area .btn-color {
		display: block;
		width: 100%;
		height: 15.625vw;
		color: #fff;
		font-weight: bold;
		font-size: 4.6875vw;
		line-height: 3.333333333;
		text-align: center;
		background: #015690;
		border-radius: 2.8125vw;
	}

	.content-area .btn-back {
		width: 100%;
		height: 15.625vw;
		margin-top: 3.125vw;
		color: #fff;
		font-weight: bold;
		font-size: 4.6875vw;
		line-height: 3.333333333;
		background: #c8c8c8;
		border-radius: 2.8125vw;
	}

	.content-area .mt60 {
		margin-top: 9.375vw;
	}

	/* head
	---------------------------------------- */

	.header-area> .head-tltle {
		height: 21.875vw;
	}

	/* content
	---------------------------------------- */

	.content-area> .content-title {
		color: #015690;
		font-weight: bold;
		font-size: 5.6875vw;
		text-align: center;
		margin-bottom: 0;
    padding: 8vw 2vw 0;
 	}

	.content-area> .content-text {
			margin-top: 3.125vw;
	    padding: 0 5vw 0;
	}
	.confirm .content-area> .content-text {
			text-align: center;
	    padding: 5vw 5vw 0;
	}
	.complete .content-area> .content-text {
	    text-align: center;
	    padding: 5vw 5vw 0;
	}

	.content-area .form-area {
		margin-top: 4.375vw;
		padding-top: 6.375vw;
		border-top: #015690 6px solid;
	}

	.content-area .form-area> .input-name {
		width: 100%;
		height: 9.375vw;
		color: #015690;
		font-weight: bold;
		font-size: 4.0625vw;
		line-height: 2.307692308;
		text-align: center;
	}

	.content-area .form-area> .input-parts {
		position: relative;
		margin-bottom: 6.25vw;
		text-align: center;
    padding: 0 5vw 0;
	}

	.content-area .form-area> .input-parts> .error-area {
    display: inline-block;
     *display: inline;
     *zoom: 1;
    margin: 0 auto;
    text-align: center;
		position: relative;
		padding: .8em .5em;
		color: #fff;
		font-size: 4.0625vw;
		background: #e02f45;
		border-radius: 6px;
	}

	.content-area .form-area> .input-parts> .error-area:before {
		content: '';
		position: absolute;
		top: -1.5625vw;
		left: 50%;
		width: 1.5625vw;
		height: 1.5625vw;
		border-right: transparent 1.5625vw solid;
		border-bottom: #e02f45 1.5625vw solid;
		border-left: transparent 1.5625vw solid;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.content-area .btn-color {
		display: block;
		width: 80%;
		height: 15.625vw;
		color: #fff;
		font-weight: bold;
		font-size: 4.6875vw;
		line-height: 3.333333333;
		text-align: center;
		background: #015690;
		border-radius: 2.8125vw;
	}

	.content-area .btn-back {
		width: 80%;
		height: 15.625vw;
		margin-top: 3.125vw;
		color: #fff;
		font-weight: bold;
		font-size: 4.6875vw;
		line-height: 3.333333333;
		background: #c8c8c8;
		border-radius: 2.8125vw;
	}

	.content-area .mt60 {
		margin-top: 9.375vw;
	}

	.checkbox-group {
    padding: 0 5vw 0;
    text-align: left;
	}
	span.error-area {
		display: block;
		text-align: center;
    padding: 0 5vw 0;
    font-size: 4.0625vw;
 	}
	.form-foot {
    padding: 10vw 0 0;
	}
	.confirm .form-foot {
    padding: 0 0 0;
	}

	.input-file-container {
	    margin: 0 5vw 0;
	}
}

