@charset "utf-8";

/* link
------------------------------------------------------------*/
a {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  text-decoration: underline;
  color: inherit;
}
a:hover, a:focus, a:active {
  text-decoration: none; }

a:hover {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  opacity: 0.8; }

/* header
--------------------------------------------------*/
header {
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

header img {
	margin-bottom:5%;
}

/* main
--------------------------------------------------*/

main {
	display:block;
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

main h1 {
	margin-bottom:6.6%;
}

main>p {
	margin-bottom:8%;
}

.features h2 {
	margin-bottom:4%;
}

.features section {
	background-position:center top,center bottom;
	background-repeat:no-repeat,no-repeat;
	background-size:100% auto,100% auto;
}

.features section:nth-of-type(1) {
	padding:15.7% 11% 11%;
	background-image:url(../img/bg_features01.png),url(../img/bg_features02.png);
}
	
.features section:nth-of-type(2) {
	padding:0 11% 13%;
	background-image:url(../img/bg_features03.png),url(../img/bg_features04.png);
}

.features section:nth-of-type(3) {
	padding:0 11% 6%;
	background-image:url(../img/bg_features05.png),url(../img/bg_features06.png);
}

.features section:nth-of-type(4) {
	padding:0 11% 30%;
	background-image:url(../img/bg_features07.png),url(../img/bg_features08.png);
}
	

.features section>div {
	padding-bottom:5%;
	background-image:url(../img/bg_features11.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:100% auto;
}

.features section div div {
	padding:4% 5.5% 0;
	background-color:#e40012;
	color:#fff;
}

.features section div div img {
	margin:3% 0;
}

.yamamoto {
	padding:0 7% 10%;
}

.yamamoto>div {
	width:64%;
	float:left;
}

.yamamoto div div:first-child {
	padding-bottom:7%;
	background-image:url(../img/bg_features10.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:100% auto;
}

.yamamoto div div:first-child p {
	padding:3.3% 5% 3.3% 22%;
	background-color:#e40012;
	background-image:url(../img/bg_features09.png);
	background-position:4% center;
	background-repeat:no-repeat;
	background-size:17% auto;
	color:#fff;
	font-size:75%;
}

.yamamoto div div:last-child p:first-child {
	font-size:115%;
	font-weight:bold;
	text-align:center;
	border-bottom:solid 7px #e40012;
	margin-bottom:2.5%;
}

.yamamoto div div:last-child p:last-child {
	font-size:62.5%
}

.yamamoto>p {
	width:30%;
	float:right;
}
.yamamoto>p span {
	display:block;
	margin-right:-21.4%;
}

.apply h2 {
	margin-bottom:10%;
}

.apply section:nth-of-type(1) {
	width:88%;
	margin:0 auto 10%;
	padding-top:6.6%;
	background-image:url(../img/bg_apply01.png);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:100% auto;
}


.apply section:nth-of-type(1) h3 {
	padding:6.6% 0;
	border-left:solid 7px #e40012;
	border-right:solid 7px #e40012;
}

.apply section:nth-of-type(1) ul {
	border:solid 7px #e40012;
	border-top:none;
	padding:0 1% 1%;
	text-align:center;
}

.apply section:nth-of-type(1) ul li {
	display:inline-block;
	width:225px;
	margin:0 1% 3%;
	font-size:75%;
	text-align:center;
	vertical-align:top;
}

.apply section:nth-of-type(1) ul li img {
	width:95%;
}

.apply section:nth-of-type(1) ul li p {
	line-height:1.2;
}
.apply section:nth-of-type(1) ul li p span {
	font-size:90%;
	letter-spacing:-0.3em;
}

.apply section:nth-of-type(1) ul li p:first-child {
	margin-bottom:5%;
}

.apply section:nth-of-type(2) {
	width:87%;
	margin:0 auto;
}

.apply section:nth-of-type(2) h3 {
	margin-bottom:7%;
}

.apply section:nth-of-type(2)>p {
	text-align:center;
	margin-bottom:7%;
}

.apply section:nth-of-type(2) ul li {
	margin:0 auto 8%;
}

.apply section:nth-of-type(2) ul li h4 {
	margin-bottom:3%;
}

.apply section:nth-of-type(2) ul li p {
	text-align:center;
}

.apply section:nth-of-type(2) ul li p span {
	display:inline-block;
}

.apply section:nth-of-type(2) ul li p:nth-of-type(1) {
	margin-bottom:5%;
	font-size:120%;
	font-weight:bold;	
}

.apply section:nth-of-type(2) ul li p:nth-of-type(n+2) {
	margin-bottom:4%;
	font-size:90%;
}

.apply section:nth-of-type(2) ul li p:last-child {
	margin-bottom:0;
}

.apply section:nth-of-type(2) ul li a {
	display:block;
	width:64%;
	margin:0 auto;
}

.apply section:nth-of-type(3) h3 {
	width:87%;
	margin:0 auto;
}

.apply section:nth-of-type(3)>img {
	margin:-7.4% 0 2%;
}

.apply section:nth-of-type(4) {
	background-image:url(../img/bg_apply02.png);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:100% auto;
}

.apply section:nth-of-type(4) h3 {
	width:87%;
	margin:0 auto 4.5%;
}

.apply section:nth-of-type(4) div {
	width:80%;
	max-width:820px;
	margin:0 auto 15%;
}

.apply section:nth-of-type(4) div p:first-child {
	font-size:180%;
	font-weight:bold;
}
.apply section:nth-of-type(4) div p:first-child span {
	display:block;
	text-align:right;
}

.apply section:nth-of-type(4) div p:last-child {
	text-align:right;
}

.apply section:nth-of-type(5) {
	width:87%;
	margin:0 auto 10%;
}

.apply section:nth-of-type(5) h3 {
	margin:0 auto 5%;
}

.apply section:nth-of-type(5) p {
	text-align:center;
	font-weight:bold;
	font-size:180%;
}

.apply section:nth-of-type(5) p span {
	display:inline-block;
}

.apply section:nth-of-type(5) p:nth-of-type(even) {
	margin-bottom:2.5%;
	color:#e40012;
}

.apply section:nth-of-type(6) {
	width:87%;
	margin:0 auto 10%;
}

.apply section:nth-of-type(6) h3 {
	margin:0 auto 5%;
}

.apply section:nth-of-type(6) p {
	text-align:center;
	font-weight:bold;
	font-size:180%;
}

.apply section:nth-of-type(n+7) {
	width:90%;
	max-width:1044px;
	margin:0 auto 1.5%;
}

.apply section:last-of-type {
	margin:0 auto 10%;
}

.apply section:nth-of-type(n+7) h3 {
	margin-bottom:1%;
	border-bottom:solid 5px #e40012;
}

.apply section:nth-of-type(n+7) p {
	font-size:75%;
}

.sponsor {
	width:78%;
	margin:0 auto 10%;
	padding:2%;
	background-color:#e40012;
}

.sponsor div {
	padding:3%;
	border:solid 5px #fff;
	text-align:center;
	color:#fff;
}

.sponsor h2 {
	font-size:120%;
	font-weight:bold;
}

.sponsor p {
	font-size:75%;
}

/* footer
--------------------------------------------------*/

footer {
	padding:6.5% 0 5.6%;
	background-image:url(../img/bg_footer01.png),url(../img/bg_footer02.png);
	background-position:center top,center bottom;
	background-repeat:no-repeat,no-repeat;
	background-size:100% auto,100% auto;
}

footer div {
	padding:2.5% 11%;
	background-color:#e40012;
	color:#fff;
}

footer div p:first-child {
	font-size:150%;
}

	
#pagetop {
	position:fixed;
	right:0px;
	bottom:0px;
}
#pagetop img {
	width:75px;
}