@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100..900&display=swap");

/* ------------------------------------------------------------------
 * (C) KADOKAWA CORPORATION
 * カドコミWEB持ち込み
------------------------------------------------------------------- */

html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,img	{	margin: 0;	padding: 0;	}
area, base, basefont, head, meta, script, style, title, noembed, param	{display: none;}
*, *:before, *:after {
	-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}
html,body,#wrap,form	{ width:100%;height: 100%;}
html { font-size: 62.5%; }

body{
	background:#fff;
	color: #000;
	width: 100%;
	margin: 0 auto;
	font-size:1.4rem;
	font-family:  "M PLUS 1","Noto Sans JP","ヒラギノ角ゴ pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
	font-weight:normal;
	font-style:normal;
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6	{	font-weight: bold;	line-height: 1em;	}
img						{	border:0; margin:0; -ms-interpolation-mode: bicubic;	}
fieldset				{	border:0; margin:0;	}
br						{	letter-spacing:0;	}
ol,ul,li				{	list-style:none;list-style-position: outside;	}
li img					{	vertical-align:top;	}
li a					{	zoom: 1;	}
em,cite					{	font-style: normal;	}
strong					{	font-weight:bold;	}
table					{	border-collapse: collapse;	border-spacing: 0;	}
p						{	line-height: 1.5em;}

input,button,input:focus,button:focus {	outline:0px none ;}
input,button,textarea,select {	font-family : inherit; font-size: 1.6rem; text-align:left;padding: 2px;}

a img {vertical-align: bottom;}

/*-------------------------------------------------------------------- */
a:link		{	color: #000;	text-decoration: underline; outline:none;	}
a:visited	{	color: #000;	text-decoration: underline;	}
a:hover		{	color: #009ad0;	text-decoration: underline;	}
/* float --------------------------------------------------------------------*/
.fL	{float:left;}
.fR	{float: right;}
.mt1 { margin-top:1em !important; }
.mb1 { margin-bottom:1em !important; }
.fcRed { color: #ff5555; }

#base ul.ul1 li:after,
#base .noticeChk .noticeChk_chk label:after,
#base:after,
.clearfix:after {	visibility: hidden;	display: block;	font-size: 0;	content: " ";	clear: both;	height: 0;	}

* html #base #base ul.ul1 li,
* html #base .noticeChk .noticeChk_chk label,
* html #base,
* html .clearfix {	zoom: 1; } /* IE6 */

*:first-child+html #base ul.ul1 li,
*:first-child+html #base .noticeChk .noticeChk_chk label,
*:first-child+html #base,
*:first-child+html .clearfix {	zoom: 1; } /* IE7 */

/* layout --------------------------------------------------------------------*/
form	{	margin: 0; padding: 0;	}
p.copy	{
	margin: 0 auto;
	padding: 40px 20px;
	background: #000;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
}

.lede{
	margin: 10px auto 40px;
	padding: 0 10px;
	color:#1f1f1f;
	max-width: 780px;
}

.lede p{
	margin: 1.5em auto !important;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}

#base{
	margin: -100px auto 0;
	padding: 90px 20px 80px;
	overflow: hidden; _zoom: 1;
	background: #f3f3f3;
	border: none;
	border-radius: 5px;
	font-size: 1.4rem;
}

.base-inner {
	margin: 0 auto;
	width: 800px;
}

h1 {
	margin: 0;
	padding: 20px 0 30px;
	color: #333;
	font-size: 2.8rem;
	text-align: center;
}
h1 img {
	width: 420px;
	height: auto;
}
h1 span {
	margin: 0;
	display: block;
	font-weight: 700;
}

h2 {
	color: #000;
	font-size: 2.8rem;
	margin: 1em 0 0.5em;
	padding:0 0 5px;
	line-height: 100%;
	border-bottom: 1px solid #000;
}

h3{
	background: #1f1f1f;
	color: #fff;
	font-size: 1.6rem;
	margin: 20px auto;
	padding: 10px;
	line-height: 100%;
	border-radius: 5px;
	text-align: center;
}


#base ul,#base ol		{	margin: 20px 0 20px 20px;}
#base ul li				{	list-style: disc outside ;	margin: 0 0 1em;	line-height: 1.4em;}
#base ul.circle li		{	list-style: circle outside ;}
#base ul.margin0 li		{	margin: 10px 0;}
#base ul.notype 		{	margin: 20px 0; }
#base ul.notype li		{	margin: 5px 0; list-style: none; }
#base ul.asterisk li		{ 	padding-left: 1em; text-indent: -1em; }
#base ul.asterisk li:before	{ 	content:"※"; }

#base ul li strong		{	font-size: 1.6rem; color: #333; padding-right: 1em;}
#base ol li				{	list-style: decimal outside ;	margin: 0.8em;	line-height: 1.4em;}
#base ul li p			{	line-height:1.6em;padding:0 5px 10px 10px;margin:5px 0;}

#base ul li ul.innerList		{	margin: 10px 0 30px 25px;}
#base ul li ul.innerList li		{	list-style: disc outside !important; color: #ccc; margin: 1em 0;font-size: 1.2rem;}
#base ul li ul.innerList li p	{	line-height: 1.2em;padding: 0;margin: 0; color: #555;}

#base ul.ul1			{	margin: 20px 0; border: 1px solid #ccc;}
#base ul.ul1 li			{	list-style: none outside ; margin: 5px; padding: 5px; _zoom: 1; overflow: hidden;}
#base ul.ul1 li strong	{	display: block; width: 100px; float: left;}
#base .borderBox{margin: 10px 0; border: 1px solid #ccc;padding: 10px;}
#base p					{	margin: 1.5em 0;	}
#base p em				{	font-weight: bold;	display: block;}
#base p.name			{	line-height: 1.7em;}
#base p.catch			{	font-weight: bold; color: #000;	text-shadow: 1px 1px 0px #ddd;font-size: 1.4rem;}

.submitBtn			{	margin: 50px auto;	text-align: center; }
.submitBtn .btn {
	margin: 20px auto;
	display: block;
	width: 100px;
	font-size: 1.8rem;
	line-height:100%;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 50px;
	outline: none;
	border:none;
	overflow: hidden;
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 3px solid #666;
	color: #666;
	border-radius: 8px;
}

.btn::before,
.btn::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.btn,
.btn::before,
.btn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.btn:hover {
	cursor: pointer;
	color: #fff;
	background: #666;
}

.submitBtn .submit,
.submitBtn .agree,
.submitBtn .chk,
.submitBtn .fix{
	width: 320px;
	border: 3px solid #000;
	color: #000;
	box-shadow: 0 4px 0 #000;
}
.submitBtn .submit:hover,
.submitBtn .agree:hover,
.submitBtn .chk:hover,
.submitBtn .fix:hover{
	color: #000;
	background: #ffe91c;
}
.submitBtn .submit:hover::after,
.submitBtn .agree:hover::after,
.submitBtn .chk:hover::after,
.submitBtn .fix:hover::after{
	background: #ffe91c;
}

.tableForm									{	border: 2px solid #000;	width: 100%;	margin: 20px 0 ;_zoom: 1;	overflow: hidden;border-radius: 5px;}
.tableForm table							{	width: 100%;	margin-top: -1px;}
.tableForm table th, .tableForm table td	{	border-top: 1px solid #d9d9d9;	 font-weight: normal;	padding: 20px 15px;word-break: break-all; line-height:1.5; }
.tableForm table th							{	width: 250px;	background: #f6f6f6;text-align: left;font-weight: bold;font-size: 1.5rem;}
.tableForm table th span					{	font-size: 1.2rem;	font-weight: bold;	color: #ff3333;display: block;}
.tableForm table th span.normal				{	font-weight: normal; color: #1f1f1f; line-height: 1.5; font-size: 1.2rem; }
.tableForm table td							{	background: #fff; }
.tableForm table td input					{	padding: 2px;}
.tableForm table td span.label					{   display: block; margin: 5px 0; }
.tableForm table td p						{	margin: 0 !important;padding-bottom: 0.5em;}
.tableForm table td p span					{	display: block; color: #3746ab;}

.tableForm table.imgup th 					{   width: 300px;}
.tableForm table td img						{	vertical-align: middle;}
.tableForm table td span.imgTitle			{	padding: 1em;}
.tableForm table td label { margin: 0 1em 0 0; font-size: 1.6rem; }

input#Name,input#NameKana,input#PenName,input#PenNameKana,input#Tel,input#Bumon,input#DataSize,input#BirAddr	{	width: 200px;}
input#Addr,input#MailAddr,input#Note,input#Title,input#Job	{	width: 550px;}
input#Zip,input#DataFormat,input#BirthY	{	width: 7em;}
input#Age	{	width: 3em;}
input#Age,input#BirthY	{	margin-right: 5px; }


.tableForm input[type="text"],
.tableForm input[type="email"],
.tableForm input[type="tel"],
.tableForm textarea {
	outline: none;
	-webkit-transition: all .3s;
	transition: all .3s;
	border: 1px solid #767676;
}
.tableForm input[type="text"]:focus,
.tableForm input[type="email"]:focus,
.tableForm input[type="tel"]:focus,
.tableForm textarea:focus {
	box-shadow: 0 0 5px #ffe91c;
	border: 1px solid #ffe91c;
}

.tableForm input[type="radio"] , input[type="checkbox"] {
	margin: 0.3em; width: 15px; height: 15px; vertical-align: top;
}

select[name^="Ent"] { margin: 0 5px 5px; }

textarea	{	width: 550px;height: 12em;overflow-y: scroll;overflow-x: hidden;font-size: 1.2rem;}

#BumonTable1 table th,
#BumonTable2 table th,
#BumonTable3 table th	{	width: 230px;}


#inputFile				{ margin: 20px 0 ;_zoom: 1;	overflow: hidden; border: 1px solid #828282;padding: 10px; background: #ede7c7;color: #333;font-weight: bold; text-align: center;}
#inputFile input		{ }

#base .completeMsg		{	padding: 20px 0 40px;}
#base .completeMsg p	{	margin: 1.5em auto;		width: 650px;	font-size: 1.6rem;	line-height: 1.6em;}
#base .endMsg			{	padding: 50px 0;}
#base .endMsg p			{	text-align: center;	font-size: 1.6rem;	line-height: 1.6em;}

#base .noticeMsg		{}
#base .noticeMsg p,
#jsoff		{	font-size: 1.4rem;	color: #d71111;	margin: 1em 0;}

#base .noticeData,
#base .noticeChk{
	margin: 20px 0;
	padding:0 20px;
	border-radius: 5px;
	border: 2px solid #000;
	background: #fdfdfd;
}

#base .noticeData h2,
#base .noticeChk h2{
	font-size: 1.6rem;
	margin:  0.5em -20px;
	padding:0 20px  0.5em;
	text-align: center;
}
#base .noticeData li{
	margin: 10px 0;
}

#base .noticeChk_chk				{	padding: 0; font-size: 1.5rem;
}
#base .noticeChk_chk label			{	display: flex; align-items: start; margin: 1em 0;_zoom: 1;	overflow: hidden;}
#base .noticeChk_chk label input	{	margin: 0.1em 0.5em; width: 16px; height: 16px; vertical-align: middle; }
#base .noticeChk_chk label span		{	display: inline-block; font-size: 1.5rem; }



@media only screen and (max-width: 700px) {
	body{
		font-size: 1.4rem;
		word-break:break-all;
	}
	h1 { padding: 20px; font-size: 2.2rem; }
	h1 img {
		width: 80%; max-width: 100%; height: auto;
	}
	.lede { padding: 0 10px; }
	.lede p { font-size: 1.6rem; }
	.lede p br { display: none; }
	#base { margin-top: -50px; padding: 30px 15px 50px; }
	.base-inner { width: 100%; }
	.tableForm table th,
	.tableForm table td,
	#BumonTable1 table th,
	#BumonTable2 table th,
	#BumonTable3 table th{
		padding: 15px;
		display: block;
		width: 100%;
	}
	.tableForm table th{
		border-top: 1px solid #999;
	}
	.tableForm table td{
		border: none;
	}
	#base .noticeData h2, #base .noticeChk h2 { margin: 0.5em -15px; text-align: left; line-height: 1.4; }
	#base .noticeData, #base .noticeChk { padding: 0 15px; }
	#base .noticeChk_chk label 			{ margin: .5em 0; }
	#base .noticeChk_chk label span		{	font-size: 1.4rem; }
	#base .noticeChk_chk label input	{	margin: 0.3em 0.5em; }
	input[type="text"],textarea{ width: 100% !important; }
	input#Male,input#Female,input#ReviewYes,input#ReviewNo,#base .noticeChk_chk label input { width: auto !important; height: auto; }
	input#Addr,input#MailAddr,input#Note,input#Title,input#Job { width: 100%; }
	input#Age,input#BirthY,input#Zip{ width: 7em !important; }
	.submitBtn {
		margin: 30px auto;
	}
	.submitBtn .submit, .submitBtn .agree, .submitBtn .chk, .submitBtn .fix {
		width: 100%;
	}
	#base .completeMsg {
		padding: 0;
	}
	#base .completeMsg p {
		margin: 0 auto 1.5em;
		width: auto;
	}
}

