@charset "utf-8";

/* 基礎レイアウト
========================================================= */

img { width: 100%; height: auto; vertical-align: top; }

#contentsheader {
	width: 100%;
	height: 360px;
	display: block;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	text-align: center;
	overflow: hidden;
}
#contentsheader p.icon {
	width: 55px;
	height: 55px;
	background: url(/images/h1_special2_icon.svg) no-repeat;
	margin: 120px auto 25px;
}
#contentsheader h1 { color: #ffffff; font-size: 48px; margin-right: auto; margin-left: auto; }



@media screen and (max-width: 1199px) {
	#contentsheader { height: 320px; }
	#contentsheader p.icon { margin-top: 100px; }
}

@media screen and (max-width: 992px) {
	#contentsheader { height: 280px; }
	#contentsheader p.icon { margin-top: 80px; }
}

@media screen and (max-width: 768px) {
	#contentsheader { height: 240px; }
	#contentsheader p.icon { width: 44px; height: 44px; margin-top: 60px; margin-bottom: 22px; }
	#contentsheader h1 { font-size: 36px; }
}

@media screen and (max-width: 480px) {
	#contentsheader { height: 160px; }
	#contentsheader p.icon { width: 33px; height: 33px; margin-top: 40px; margin-bottom: 16px; }
	#contentsheader h1 { font-size: 24px; }
}





/* criacao
========================================================= */

#criacao { background: #addef8; color: #000000; line-height: 1.0; padding: 30px 0 120px 0; }



@media screen and (max-width: 767px) {
	#criacao { padding: 20px 0 80px 0; }
}





/* criacaoMain
========================================================= */

#criacao .criacaoMain { width: 100%; max-width: 1500px; margin: 0 auto; padding: 60px 0 0 0; position: relative; }
#criacao .criacaoMain li:nth-child(1) {
	width: calc(950/1500 * 100%);
	display: table;
	background: #3c2388;
	box-sizing: border-box;
	padding: 80px 95px 80px calc(15/320 * 100%);
	position: relative;
	z-index: 2;
}
#criacao .criacaoMain li:nth-child(1) > div { max-width: 584px; float: right; }
#criacao .criacaoMain li:nth-child(1) p {
	color: #ffffff;
	font-size: 17px;
	line-height: 1.8;
	text-align: center;
	margin: 60px 0 0 0;
}
#criacao .criacaoMain li:nth-child(1) p span { display: inline-block; }
#criacao .criacaoMain li:nth-child(2) { width: 1000px; position: absolute; top: 0; right: 0; }
#criacao .criacaoMain .sns_icon_area {  margin: 60px 0 0 0; }



@media screen and (max-width: 1148px) {
	#criacao .criacaoMain li:nth-child(1) { padding: 80px calc(15/320 * 100%); transition: 0.2s }
	#criacao .criacaoMain li:nth-child(2) { width: 85%; transition: 0.2s }
	#criacao .criacaoMain li:nth-child(1) p { text-align: left; }
	#criacao .criacaoMain li:nth-child(1) p span { display: inline; }
}

@media screen and (max-width: 767px) {
	#criacao .criacaoMain { padding: 0; }
	#criacao .criacaoMain li:nth-child(1) { width: 100%; padding: 20px calc(15/320 * 100%); }
	#criacao .criacaoMain li:nth-child(1) p { font-size: 16px; margin: 30px 0 0 0; }
	#criacao .criacaoMain li:nth-child(2) { width: 100%; position: static; }
	#criacao .criacaoMain .sns_icon_area {  margin: 30px 0 0 0; }
}





/* criacaoMap
========================================================= */

#criacao .criacaoMap { padding: 0 calc(15/320 * 100%); margin: 50px 0 0 0; position: relative; }
#criacao .criacaoMap .title {
	width: 100%;
	max-width: 760px;
	display: block;
	border: solid 5px #3c2388;
	border-radius: 10px;
	background: #ffffff;
	color: #511f87;
	font-size: 24px;
	line-height: 1.3;
	font-weight: bold;
	text-align: center;
	box-sizing: border-box;
	padding: 18px;
	margin: 0 auto;
	position: relative;
}
#criacao .criacaoMap .title:after {
	content: "";
	width: 200px;
	height: 29px;
	display: block;
	background: url(/images/special/13-3/map_star.png);
	position: absolute;
	bottom: -18px;
	left: 50%;
	transform: translateX(-50%);
}
#criacao .criacaoMap .title img { width: 20px; display: inline-block; padding: 0 0.3em; }
#criacao .criacaoMap .title br { display: none; }
#criacao .criacaoMap .data { width: 100%; max-width: 560px; margin: 30px auto 0; }
#criacao .criacaoMap .map { width: 100%; max-width: 920px; margin: 15px auto 0; }



@media screen and (max-width: 767px) {
	#criacao .criacaoMap { margin: 30px 0 0 0;  }
	#criacao .criacaoMap .title { border: solid 3px #3c2388; border-radius: 8px; font-size: 20px; padding: 15px 5px; }
	#criacao .criacaoMap .title:after { width: 150px; height: 22px; background-size: 100%; bottom: -13px; }
	#criacao .criacaoMap .title img { width: 16px; }
	#criacao .criacaoMap .title br { display: block; }
	#criacao .criacaoMap .map { margin: 20px auto 0; }
}





/* criacaoCourse
========================================================= */

#criacao .criacaoCourse { padding: 0 calc(15/320 * 100%); margin: 110px 0 0 0; position: relative; }
#criacao .criacaoCourse .start { max-width: 1040px; margin: 0 auto; position: relative; z-index: 2; }
#criacao .criacaoCourse .start img:nth-child(2) {
	width: calc(160/1040 * 100%);
	min-width: 70px;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
#criacao .criacaoCourse .courseLine {
	width: calc(120/1040 * 100%);
	max-width: 120px;
	min-width: 60px;
	height: 100%;
	display: table-cell;
	background: rgba(255,255,255,0.3);
	box-sizing: border-box;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
}
#criacao .criacaoCourse .courseLine:before {
	content: "";
	width: 2px;
	height: 100%;
	background-image : linear-gradient(to bottom, #000000, #000000 8px, transparent 8px, transparent 12px);
	background-size: 2px 12px;
	background-position: left top;
	background-repeat: repeat-y;
	position: absolute;
	top: 0;
	left: -1px;
}
#criacao .criacaoCourse .courseLine:after {
	content: "";
	width: 2px;
	height: 100%;
	background-image : linear-gradient(to bottom, #000000, #000000 8px, transparent 8px, transparent 12px);
	background-size: 2px 12px;
	background-position: left top;
	background-repeat: repeat-y;
	position: absolute;
	top: 0;
	right: -1px;
}
#criacao .criacaoCourse .coursePlace { margin: 40px auto 0; position: relative; }
#criacao .criacaoCourse .coursePlace.p1 { margin: 70px auto 0; }
#criacao .criacaoCourse .coursePlace ul {
	width: 100%;
	max-width: 1040px;
	display: table;
	border: solid 5px #3c2388;
	border-radius: 20px;
	background: #addef8;
	box-sizing: border-box;
	padding: 45px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#criacao .criacaoCourse .coursePlace li { width: calc(440/940 * 100%); position: relative; }
#criacao .criacaoCourse .coursePlace li:nth-child(1) { float: left; }
#criacao .criacaoCourse .coursePlace li:nth-child(2) {
	float: right;
	padding: calc(350/940 * 100%) 0 0 0;
	position: relative;
}
#criacao .criacaoCourse .coursePlace li:nth-child(2) img { position: absolute; top: 0; left: 0; }
#criacao .criacaoCourse .coursePlace .number {
	width: 60px;
	position: absolute;
	top: -40px;
	left: calc(50% - 30px);
	z-index: 3;
}
#criacao .criacaoCourse .coursePlace h3 { color: #0787d9; font-size: 32px; font-weight: bold; }
#criacao .criacaoCourse .coursePlace h4 { font-size: 18px; line-height: 1.7; font-weight: bold; margin: 30px 0 0 0; }
#criacao .criacaoCourse .coursePlace h4 + p { font-size: 15px; line-height: 1.8; margin: 5px 0 0 0; }
#criacao .criacaoCourse .coursePlace .data { font-size: 13px; line-height: 1.7; margin: 20px 0 0 0; }
#criacao .criacaoCourse .coursePlace .data dt,
#criacao .criacaoCourse .coursePlace .data dd { display: table-cell; vertical-align: top; }
#criacao .criacaoCourse .coursePlace .data dt { white-space: nowrap; }
#criacao .criacaoCourse .coursePlace .data dd span { display: inline-block; }

#criacao .criacaoCourse .arrow1 { width: 34px; padding: calc(105/1040 * 100%) 0; margin: 0 auto; }
#criacao .criacaoCourse .arrow2 { width: 34px; padding: calc(40/1040 * 100%) 0; margin: 0 auto; }
#criacao .criacaoCourse .arrow3 { width: 34px; padding: calc(50/1040 * 100%) 0; margin: 0 auto; }
#criacao .criacaoCourse .arrow4 { width: 34px; padding: calc(80/1040 * 100%) 0; margin: 0 auto; }

#criacao .criacaoCourse .coursePlace li.player1 {
	width: calc(360/1030 * 100%);
	position: absolute;
	top: calc(330/360 * 100%);
}
#criacao .criacaoCourse .coursePlace li.player2 p { 
	width: calc(180/440 * 100%);
	font-size: 11px;
	line-height: 1.5;
	text-indent: -1em;
	box-sizing: border-box;
	padding: 0 0 0 1em;
	position: absolute;
	bottom: calc(-180/440 * 100%);
	left: calc(290/440 * 100%);
}
#criacao .criacaoCourse .coursePlace li.player5 {
	width: calc(250/1030 * 100%);
	position: absolute;
	bottom: calc(-70/250 * 100%);
	left: calc(135/1030 * 100%);
}

#criacao .criacaoCourse .coursePoint {
	width: 100%;
	max-width: 800px;
	display: table;
	border: solid 5px #3c2388;
	border-radius: 50px;
	background: #ffffff;
	box-sizing: border-box;
	padding: 25px 20px 35px;
	margin: 40px auto 0;
	position: relative;
	z-index: 3;
}

#criacao .criacaoCourse .coursePoint .deco { width: 56px; margin: 0 auto; }
#criacao .criacaoCourse .coursePoint h5 {
	color: #3c2388;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
	margin: 10px 0 0 0;
}
#criacao .criacaoCourse .coursePoint h5 span { display: inline-block; }
#criacao .criacaoCourse .coursePoint ul { display: table; table-layout: fixed; margin: 15px auto 0; }
#criacao .criacaoCourse .coursePoint li { display: table-cell; padding: 0 25px; }
#criacao .criacaoCourse .coursePoint li img { width: 100px; display: block; margin: 0 auto; }
#criacao .criacaoCourse .coursePoint li dl { font-size: 14px; line-height: 1.6; }
#criacao .criacaoCourse .coursePoint li dt {
	color: #3c2388;
	font-weight: bold;
	text-align: center;
	padding: 15px 0 0 0;
}
#criacao .criacaoCourse .coursePoint li dt + dd { padding: 10px 0 0 0; }
#criacao .criacaoCourse .coursePoint li dd + dd { text-align: center; font-weight: bold; padding: 5px 0 0 0; }



@media screen and (max-width: 767px) {
	#criacao .criacaoCourse {  margin: 50px 0 0 0; }
	#criacao .criacaoCourse .goal { margin: 20px auto 0; }
	
	#criacao .criacaoCourse .coursePlace { margin: 40px auto 0; position: relative; }
	#criacao .criacaoCourse .coursePlace.p1 { margin: 40px auto 0; }
	#criacao .criacaoCourse .coursePlace ul {
		border: solid 3px #3c2388;
		border-radius: 15px;
		padding: 40px 15px 15px;
	}
	#criacao .criacaoCourse .coursePlace li { width: 100%; }
	#criacao .criacaoCourse .coursePlace li:nth-child(1) { float: none; }
	#criacao .criacaoCourse .coursePlace li:nth-child(2) { float: none; padding: 0; margin: 30px 0 0 0; }
	#criacao .criacaoCourse .coursePlace li:nth-child(2) img {
		max-width: 350px;
		display: block;
		margin: 0 auto;
		position: relative;
	}
	#criacao .criacaoCourse .coursePlace .number { width: 40px; top: -20px; left: calc(50% - 20px); }
	#criacao .criacaoCourse .coursePlace h3 { font-size: 24px; }
	#criacao .criacaoCourse .coursePlace h4 { font-size: 16px; line-height: 1.5; margin: 20px 0 0 0; }
	#criacao .criacaoCourse .coursePlace h4 br { display: none; }
	#criacao .criacaoCourse .coursePlace h4 + p { font-size: 14px; line-height: 1.5; margin: 5px 0 0 0; }
	#criacao .criacaoCourse .coursePlace .data { font-size: 13px; line-height: 1.5; margin: 15px 0 0 0; }
	
	#criacao .criacaoCourse .arrow1,
	#criacao .criacaoCourse .arrow2,
	#criacao .criacaoCourse .arrow3,
	#criacao .criacaoCourse .arrow4 { width: 24px; padding: 20px 0 0 0; }
	
	#criacao .criacaoCourse .coursePlace li.player1 { width: 220px; margin: 15px auto 0; position: static; }
	#criacao .criacaoCourse .coursePlace li.player2 p {
		width: auto;
		display: table;
		margin: 5px auto 0;
		position: static;
	}
	#criacao .criacaoCourse .coursePlace li.player5 { width: 170px; margin: 15px auto 0; position: static; }
	
	#criacao .criacaoCourse .coursePoint {
		border: solid 3px #3c2388;
		border-radius: 15px;
		padding: 15px 15px;
		margin: 40px auto 0;
	}
	#criacao .criacaoCourse .coursePoint .deco { width: 56px; margin: 0 auto; }
	#criacao .criacaoCourse .coursePoint h5 { font-size: 18px; }
	#criacao .criacaoCourse .coursePoint ul { display: block; margin: 0 auto 0; }
	#criacao .criacaoCourse .coursePoint li { display: table; padding: 20px 0 0; margin: 0 auto; }
	#criacao .criacaoCourse .coursePoint li img { width: 70px; }
	#criacao .criacaoCourse .coursePoint li dl { font-size: 13px; line-height: 1.5; }
	#criacao .criacaoCourse .coursePoint li dt { padding: 10px 0 0 0; }
	#criacao .criacaoCourse .coursePoint li dt + dd { padding: 5px 0 0 0; }
}

@media screen and (max-width: 480px) {
	#criacao .criacaoCourse { }
}





/* criacaoShinjuku
========================================================= */

#criacao .criacaoShinjuku { padding: 0 calc( 15 / 320 * 100% ); margin: 150px 0 0 0; }
#criacao .criacaoShinjuku > div {
	max-width: 1040px;
	display: block;
	border-radius: 20px;
	background: #3c2388;
	color: #ffffff;
	box-sizing: border-box;
	padding: 50px;
	margin: 0 auto;
	position: relative;
}
#criacao .criacaoShinjuku .balloon {
	display: table;
	background: #ffffff;
	color: #3c2388;
	font-size: 16px;
	font-weight: bold;
	box-sizing: border-box;
	padding: 20px 30px;
	position: absolute;
	top: -30px;
	left: 50px;
}
#criacao .criacaoShinjuku .balloon:after {
	content: "";
	width: 22px;
	height: 15px;
	border-top: solid 15px #ffffff;
	border-right: solid 11px transparent;
	border-left: solid 11px transparent;
	box-sizing: border-box;
	position: absolute;
	right: 0;
	bottom: -15px;
	left: 0;
	margin: auto;
}

#criacao .criacaoShinjuku .top { width: 100%; display: table; }
#criacao .criacaoShinjuku .top li { width: calc(440/940 * 100%); }
#criacao .criacaoShinjuku .top li:nth-child(1) { float: left; }
#criacao .criacaoShinjuku .top li:nth-child(2) { float: right; }
#criacao .criacaoShinjuku .top h3 { font-size: 32px; font-weight: bold; }
#criacao .criacaoShinjuku .top h3 + a { display: inline-block; color: #ffffff; font-size: 15px; margin: 15px 0 0 0; }
#criacao .criacaoShinjuku .top h3 + a img { width: 18px; vertical-align: middle; margin-right: 1em; }
#criacao .criacaoShinjuku .top .logo { max-width: 243px; margin: 30px 0 0 0; }
#criacao .criacaoShinjuku .top .txt { font-size: 15px; line-height: 1.8; margin: 25px 0 0 0; }
#criacao .criacaoShinjuku .top .category { margin: 40px 0 0 0; position: relative; }
#criacao .criacaoShinjuku .top .category dl {
	width: 55%;
	font-size: 13px;
	line-height: 1.8;
	position: absolute;
	top: 0;
	right: 0;
}
#criacao .criacaoShinjuku .top .category dt { font-size: 15px; font-weight: bold; }
#criacao .criacaoShinjuku .top .category img { width: calc(270/440 * 100%); max-width: 270px; }
#criacao .criacaoShinjuku .top li:nth-child(2) img { max-width: 440px; display: block; margin: 0 auto; }
#criacao .criacaoShinjuku .top li:nth-child(2) img + img { margin: 40px auto 0; }

#criacao .criacaoShinjuku .bottom {
	width: 100%;
	background: #b59833;
	box-sizing: border-box;
	padding: 20px;
	margin: 60px 0 0 0;
}
#criacao .criacaoShinjuku .bottom li:nth-child(1) dl { display: table; margin: 0 auto; }
#criacao .criacaoShinjuku .bottom li:nth-child(1) dt { color: #3c2388; font-size: 18px; font-weight: bold; }
#criacao .criacaoShinjuku .bottom li:nth-child(1) dt + dd { font-size: 15px; line-height: 1.8; margin: 5px 0 0 0; }
#criacao .criacaoShinjuku .bottom li:nth-child(2) { display: table; margin: 20px auto 0; }
#criacao .criacaoShinjuku .bottom li:nth-child(2) a {
	display: block;
	border-top: solid 1px #ffffff;
	border-bottom: solid 1px #ffffff;
	color: #ffffff;
	font-size: 15px;
	line-height: 1.7;
	font-weight: bold;
	text-decoration: none;
	boox-sizing: border-box;
	padding: 10px 50px 8px;
	position: relative;
}
#criacao .criacaoShinjuku .bottom li:nth-child(2) a span { display: inline-block; }





@media screen and (min-width: 769px) {
	#criacao .criacaoShinjuku .bottom li:nth-child(2) a:hover {
		background: rgba(255,255,255,0.3);
		transition: 0.2s ease;
	}
}

@media screen and (max-width: 1148px) {
	#criacao .criacaoShinjuku .top .txt { font-size: 1.3vw; }
	#criacao .criacaoShinjuku .top .category dl { font-size: 1.2vw; }
}

@media screen and (max-width: 767px) {
	#criacao .criacaoShinjuku { margin: 70px 0 0 0; }
	#criacao .criacaoShinjuku > div { border-radius: 15px; padding: 50px 15px 30px 15px; }
	#criacao .criacaoShinjuku .balloon {
		width: calc(100% - 40px);
		display: block;
		font-size: 14px;
		text-align: center;
		margin: 0 20px;
		padding: 14px 20px;
		top: -20px;
		left: 0;
	}
	
	#criacao .criacaoShinjuku .top li { width: 100%; }
	#criacao .criacaoShinjuku .top li:nth-child(1) { float: none; }
	#criacao .criacaoShinjuku .top li:nth-child(2) { float: none; }
	#criacao .criacaoShinjuku .top h3 { font-size: 24px; }
	#criacao .criacaoShinjuku .top .txt { font-size: 14px; }
	#criacao .criacaoShinjuku .top .category { margin: 30px 0 0 0; }
	#criacao .criacaoShinjuku .top .category dl { width: 65%; font-size: 12px; line-height: 1.5; }
	#criacao .criacaoShinjuku .top .category dt { font-size: 14px; font-weight: bold; }
	#criacao .criacaoShinjuku .top .category img { width: 150px; }
	#criacao .criacaoShinjuku .top li:nth-child(2) img { margin: 30px auto 0; }
	#criacao .criacaoShinjuku .top li:nth-child(2) img + img { margin: 30px auto 0; }
	
	#criacao .criacaoShinjuku .bottom { margin: 40px 0 0 0; }
	#criacao .criacaoShinjuku .bottom li { display: block; }
	#criacao .criacaoShinjuku .bottom li:nth-child(1) dt { font-size: 16px; }
	#criacao .criacaoShinjuku .bottom li:nth-child(1) dt + dd {
		font-size: 14px;
		line-height: 1.5;
		margin: 10px 0 0 0;
	}
	#criacao .criacaoShinjuku .bottom li:nth-child(2) a {
		font-size: 14px;
		line-height: 1.5;
		padding: 10px;
		margin: 10px 0 0 0;
	}
}





/* plusIssue
========================================================= */

.plusIssue { padding: 0 calc(15/320 * 100% ); margin: 50px 0 0 0; }
.plusIssue p { text-align: center; margin: 0 auto; }
.plusIssue p span { display: inline-block; padding: 0 0.5em; }
.plusIssue ul { display: table; font-size: 13px; line-height: 20px; margin: 15px auto 0; }
.plusIssue li { display: table-cell; vertical-align: top; }

@media screen and (max-width: 767px) {
	.plusIssue { margin: 30px 0 0 0; }
}





/* 汎用パーツ
========================================================= */

/* detailsLink
------------------------------------------ */

.detailsLink1 { max-width: 190px; margin-top: 15px; }
.detailsLink1 a {
	display: block;
	background-color: #333333;
	color: #ffffff;
	border-radius: 5px;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
	text-decoration: none;
	padding: 6px 5px 5px;
}

.detailsLink2 { max-width: 190px; margin-top: 15px; }
.detailsLink2 a {
	display: block;
	background-color: #ffffff;
	color: #333333;
	border-radius: 5px;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
	text-decoration: none;
	padding: 6px 5px 5px;
}

@media screen and (min-width: 769px) {
	.detailsLink1 a { transition: 0.2s ease; }
	.detailsLink1 a:hover { background-color: #fe8781; }
	
	.detailsLink2 a { transition: 0.2s ease; }
	.detailsLink2 a:hover { background-color: #000000; color: #ffffff; }
}

@media screen and (max-width: 767px) {
	.detailsLink1 { margin: 15px auto 0; }
}


