@charset "utf-8";

/* ------------------------------------------------------------------
 * (C) KADOKAWA CORPORATION
------------------------------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

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

html {	font-size: 62.5%; }
body { 
	background-color: #ffe5f5;
	font-family:  "Noto Sans JP","ヒラギノ角ゴ pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
	color: #333;
	position: relative;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height:1.5;
	font-size: 1.3rem;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
a:link, a:visited { color:#1155cc; }
a:hover { color:#00bbff;text-decoration:none; }

.flex {
	display:flex;
}
.ml5 { margin-left:5px !important; }
.mr5 { margin-right:5px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top:30px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }

.fcbl { color:#0060c2 !important; }
.fcrd { color:#cc0000 !important; }

ul[class^="list-"]  {
	padding:0;
}
ul[class^="list-"] li {
	margin:0 0 10px;
	padding-left:1em;
	list-style:none;
    text-indent:-1em;
}
.list-dia li:before {
	content:"◆ ";	
}

#header { margin: 0; padding: 20px 20px 0; background-color: #fff; }
#header h1 { margin: 0; padding: 10px; border: 10px solid #e8e8e8; color: #000; font-size: 1.9rem; line-height: 1.6;text-align: center; }
#header h1 span { display: block; font-size: 2.0rem; }
#header h1 img { margin: 0 auto; display: block; width: 100%; height: auto; }

#header .key-visual { margin: 0 auto 20px; width: 100%; text-align: center; }
#header .key-visual img { max-width: 100%; }
.progress { margin:20px auto 0; padding: 0;position:relative;width:280px;display:flex;flex-wrap:wrap;justify-content:space-between; }
.progress li { position:relative;list-style-type:none;width: 33.333%;color:#ccc;font-size:1.2rem;font-weight:bold;text-align:center;text-transform:uppercase; }
.progress li:before { margin:7px auto 10px auto;content: '';display: block; width:10px;height:10px;border-radius:50%;background-color:#ccc;text-align:center;z-index: 2; position: relative; }
.progress li:after { content:'';background-color:#ccc;position:absolute;z-index: 1;top:12px;left:-50%;width:100%;height:1px; }
.progress li:first-child:after { content: none; }
.progress li.current, .progress li.complete{ color: #fd0196; }
.progress li.current:before, .progress li.complete:before { background-color:#fd0196; }
.progress li.current:after, .progress li.complete:after { background-color:#fd0196; }

#footer { margin: 0; padding:20px 15px 25px;background: #333;text-align:center; }
#footer p,footer a { color:#ffffff;font-size:1.4rem; }
#footer a { font-weight:bold; }
#footer a:link, footer a:visited { color:#ffffff; }
#footer a:hover { text-decoration:none; }
#footer .copytext { font-size:1.2rem;font-family:sans-serif; }
.content-header { margin:0 auto;padding:30px 15px;}
.content-header h2 { margin:0;font-size:1.8rem;font-weight: bold;text-align: center; }
.content-header h2 span { display: block;font-size:1.8rem; }

#base { margin:0 auto; padding: 20px 0 0; background:#ffffff;}

.inner { padding:25px 15px 0; }

#base ul.asterisk		{	margin: 10px 0; padding: 0; list-style-type: none; font-size: 1.4rem;}
#base ul.asterisk li		{	 margin: 0 0 .5em; padding-left: 1em;  text-indent: -1em; }
#base ul.asterisk li:before		{	content: '※ '; }

#base p.asterisk	{	 margin: 0 0 .75em; padding-left: 1em;  text-indent: -1em; }
#base p.asterisk:before		{	content: '※ '; }

.lede { padding: 20px; border: 5px solid #F6E5CC; }
.lede p {
	margin: 0;
	font-size: 1.4rem;
}
.lede p.catch {
	font-size: 1.5rem;
}
.lede p.small {
	font-size: 1.3rem;
}
.lede dl {
	margin: 1em 0;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	font-size: 1.5rem;
	font-weight: bold;
}
.lede dt {
	margin: 0 0 5px;
	padding: 0;
}
.lede dd {
	margin: 0 0 5px;
	padding: 0;
	width: calc(100% - 5em);
}
.lede ol {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-size: 1.5rem;
}
.lede ol li {
	margin: 1em 0;
	padding-left:1em;
	text-indent:-1em;
	font-weight: bold;
}
.notes {
	margin: 20px auto 0;
	padding:20px 15px 10px;
	background: #f6f5f3;
	border-radius:4px;
	border: 1px solid #dddddd;
}
.notes h2 {
	margin: 0 0 20px;
	padding: 3px 5px;
	background: #64461e;
	width: 10em;
	color: #fff;
	border-radius: 5px;
	text-align: center;
	font-size: 1.4rem;
}
.notes h3 {
	margin: 0 0 .5em;
	font-size: 1.5rem;
}
.notes p {
	margin:0 0 1em;
	font-size:1.3rem;
}
.notes ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.3rem;
}
.notes li:before {
	content: "◎ ";
}
.notes li {
	margin:0 0 10px;
	padding-left: 1em;
	text-indent: -1em;
}
.notes .imgtext { 
	margin:0;
}
.notes .imgtext img { 
	width:100%;
	height:auto;
}
.noticeMsg {
	padding: 10px 20px;
}
#errMsg {
	margin: 0;
	color:#F10101;
	font-size:1.3rem;
	font-weight:bold;
}
.form-contents {
	margin: 0;
	padding: 0 0 50px;
	background:#ffffff;
}
.form-contents h2 {
	margin:0 15px 10px;
	color: #000;
	font-size:1.6rem;
}
.form-contents .notes {
	margin: 20px 0 0 0;
	padding: 10px 15px;
	background: none;
	border: 0;
}
.form-contents .notes p {
	font-size: 1.5rem;
	font-weight: bold;
}
.form-content-head {
	margin:0 0 15px;
	padding:20px 15px;
	background: #F5F6F9;
	display:block;
	width:100%;
	font-size:1.4rem;
	font-weight:bold;
	line-height:1.6;
}
.form-label-required {
	margin:0 0 0 5px;
	padding:2px 4px;
	background: #ff0202;
	color:#ffffff;
	display:inline-block;
	font-size:1.1rem;
	line-height:1;
	vertical-align:10%;
	font-weight:normal;
}
.form-err-message {
	margin:0 15px 10px;
	color:#ff0202;
	font-size:1.3rem;
	font-weight:bold;
}
.form-content-data {
	margin:0;
	padding:0 15px 20px;
}
.form-content-data p {
	margin:0 0 10px;
}
.form-content-data p span {
	margin: 0 0 5px;
	display: block;
	width: auto;
}
.form-content-data p strong {
	margin: 0 0 10px;
	display:block;
}
.form-content-subque {
	font-weight: bold;
	font-size:1.4rem;
}
.form-content-message {
	display:block;
	font-size:1.2rem;
}
.form-input {
	padding:7px;
	background: #F8F8FA;
	border:1px solid #dddddd;
	border-radius:4px;
	width:100%;
	max-width:100%;
	line-height:normal;
}
.form-input.min {
	margin-right: 5px;
	margin-bottom: 5px;
	width:100%;
	max-width:100%;
}
.form-input.mic {
	margin-right: 5px;
	width:30%;
	max-width:30%;
}
.sep .form-input {
	margin-right:2%;
	padding:7px;
	width: 49%;
}
.sep .form-input:last-child {
	margin:0;
}
.select-item {
	overflow:hidden;
}
.form-file {
	padding: 2px;
	line-height: 1.6;
}
.form-select {
	padding:7px ;
	border:1px solid #dddddd;
	border-radius:4px;
	background:#F8F8FA url(../img/icn_dropdown.png) right 2% top 50% no-repeat;
	outline:none;
	width:auto;
	min-width:100%;
}

.form-select option {
	background:#F8F8FA;
}

.form-text {
	padding:7px;
	border:1px solid #dddddd;
	border-radius:4px;
	background:#F8F8FA;
	width:100%;
	max-width:100%;
}

.form-radio label {
	margin: 0 0 1em;
	padding: 0 1.5em 0 0;
	display: block;
}
.form-radio label:last-of-type {
	padding: 0;
}
.form-radio input[type="radio"] {
	margin:0 7px 0 0;
	position:relative;
	top:1px;
}

.form-check label {
	margin:0 0 10px;
	display:block;
	font-size: 1.4rem;
}
.form-check input[type="checkbox"] {
	margin:0 7px 0 0;
	position:relative;
	top:1px;
}

.form-submit {
	margin: 0;
	padding: 15px 15px 0;
}
.form-submit p {
	margin: 0 0 20px;
	font-size:1.4rem;
}
.form-submit .submit { 
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 20px auto;
	padding:20px;
	display:block;
	width:100%;
	background: #e65496;
	border:0;
	border-radius:4px;
	color: #fff;
	outline:none;
	overflow:hidden;
	font-size:1.8rem;
	font-weight:bold;
	line-height:100%;
	text-align:center;
	text-decoration:none;
	cursor:pointer;
}
.form-submit .submit:hover,
.form-submit .submit:focus { opacity:0.8; }
.form-submit .btn { background:#aaaaaa; }
.form-submit .btn:hover,
.form-submit .btn:focus { background:#cccccc; }
.form-submit .btn small { font-size:1.3rem; }

.form-contents.comfirm .form-content-data p { margin:0;font-size:1.5rem; }

.form-contents.complete .textbox { margin: 0 15px 20px;}
.form-contents.complete .textbox p { font-size:1.4rem; }
.form-contents.complete .form-submit p { margin: 0 0 40px; }
.form-contents.complete .form-submit p.logo-brand{ text-align: center; font-size: 1.2rem; }
.form-contents.complete .form-submit p.logo-brand img { max-width: 200px; }
.form-contents.complete .form-submit p.logo-brand img:hover { opacity: 0.7; }


@media screen and (min-width:960px) {
	body { padding-bottom:154px;min-height: 100vh;position:relative; }
	.sp { display: none; }
	#header { margin: 40px auto 0; max-width: 960px; }
	#header h1 { margin: 0 0 20px; padding: 20px 40px; border-width: 20px; text-align:center; line-height:1.6; font-size:3.2rem; }
	#header h1 span { font-size: 3.1rem; }
	#header h1 img { max-width: 560px; height: auto; }
	#header .key-visual { margin-bottom: 20px; }
	.content-header { max-width:1024px;}
	.content-header h2 { font-size:2.2rem; }
	.content-header h2 span { font-size:2.4rem; }

	#footer { margin:60px 0 0;position:absolute;bottom:0;width:100%; }

	#base { margin: 0 auto; padding: 20px 50px 20px; background:#ffffff; max-width: 960px; }
	.contents { padding:0; }
	.lede { padding: 20px 30px; border: 7px solid #F6E5CC; }
	.lede p { margin: 0 0 1.5em; font-size: 1.4rem; }
	.lede p.catch { font-size: 1.6rem; }
	.lede p.small { font-size:1.4rem; }
	.lede dl { font-size: 1.5rem; }
	.lede ol { font-size: 1.5rem; }

	.notes { margin-bottom: 20px; padding: 20px; }
	.notes h3 { font-size: 1.7rem; }
	.notes p { font-size: 1.4rem; }
	.notes .imgtext { margin:0; }
	.notes .imgtext img { width:420px; height:auto; }

	.form-contents { padding:10px 0 0;}
	.form-contents .notes { margin: 2em 0 0;  }
	.form-contents .notes:first-child {
		margin: 0;
	}
	.form-contents h2 { margin:0 0 1.5em; font-size: 1.8rem; text-align:center; }
	.form-content-wrap {
		margin:0 0 10px;
		border:1px solid #dddddd;
		border-bottom:0;
	}

	.form-content-item { 
		display:table;
		width:100%;
	}
	.form-content-head { margin:0; padding:20px; border-bottom:1px solid #dddddd; border-right:1px solid #dddddd; font-size:1.5rem; vertical-align:middle; }
	.form-content-data { margin:0; padding:20px; border-bottom:1px solid #dddddd; font-size: 1.5rem; vertical-align:middle; }

	.form-content-message { font-size:1.4rem; }

	.form-input,
	.form-select,
	.form-text { font-size:1.4rem; }

	.form-content-data p.sep {
		width: 360px;
	}
	.form-input.min {
		margin-bottom: 0;
		width: 260px;
	}
	.form-input.mic {
		width: 100px;
	}
	.form-input.mid {
		width: 360px;
	}
	.form-select { background:#F8F8FA url(../img/icn_dropdown_pc.png) right 2% top 50% no-repeat;
	;width:auto;min-width:200px; }
	.form-radio label { margin-bottom: 0; display: inline-block; }
	.form-submit { padding:60px 0 0; }
	.form-submit p { margin:0 0 40px;font-size:1.6rem;text-align:center; }
	.form-submit .submit { width:390px; }


	.form-contents.comfirm .form-content-data p { margin:5px 0; }
	.form-content-data p span { display: inline-block; width: 8em; }

	.form-contents.complete .textbox { margin: 2em 4em; padding-bottom: 20px; }
	.form-contents.complete .textbox p { font-size:1.5rem; }
	.form-contents.complete .form-submit p { font-size: 1.4rem; }

}
