@charset "UTF-8";
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 100;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 200;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: local('NotoSansJP-Regular.otf'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 500;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 900;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.otf) format('opentype');
}
/* CSS Document */
/*================================================================== Reset */
html {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%; /* 2 */
	-ms-text-size-adjust: 100%; /* 2 */
}
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;

}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
ul,ol {
	list-style-type:none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}

/*===================================================================== common format */
body {
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size:16px;
	*font-size:small; /* for IE6/7 */
	*font:x-small; /* for IE Quirks Mode */
	line-height: 1;
	min-height: 100%;
	text-align: center;
	color:#492d09;
	background:url(../images/bg.png) repeat;
}

a:hover img{
	opacity:0.5;
}

a.links:hover img{
	opacity:1;
}

input:focus,select:focus,textarea:focus{
	background-color: #ccffff;
}
pre,code,kbd,samp,tt {
	font-family:monospace;
	*font-size:108%;
	line-height:100%;
}
img,
img a {
	border: none;
}

header{
	background:url(../images/bg_header.png?2) 50% 50% no-repeat;
	height:425px;
	z-index:2;
	position:relative;
}
.oyakataform header{
	background:url(../images/bg_header_oyakata.png) 50% 50% no-repeat;
}
header h1{
	padding-top:100px;
}
.kv{
	max-width:700px;
	margin-left:auto;
	margin-right:auto;
	padding:0 10%;
}
.kv img{
	max-width: 100%;
}
.etc{
	padding-top:50px;
	background:url(../images/bg2.png) repeat;
	z-index:1;
	position:relative;
	top:-50px;
}
.seminar{
	margin:30px 0 50px;
}
.seminar_top{
	margin:-30px 0 50px;
}
.nayami{
	background:url(../images/bg_nayami.png) 50% 50% no-repeat;
	height:712px;
	position:relative;
	top:-70px;
	z-index:2;
}
.nayami .nayami1{
	position:relative;
	top:78px;
	display:block;
	margin:0 auto;
}
.nayami .nayami2{
	position:absolute;
	bottom:12px;
	left:calc( (100% - 1013px) / 2);
	display:block;
	margin:0 auto;
}
.clear{
	margin-bottom:47px;
}
.concept{
	background:url(../images/bg_concept.png?2) 50% 50% no-repeat;
	color:#ffffff;
	height:1081px;
}
.concept h2{
	font-size:36px;
	line-height:1.2;
	font-weight:normal;
	padding:60px 0 40px;
}
.concept h2 span{
	display:block;
	font-size:24px;
}
.concept .message{
	width:864px;
	text-align:left;
	padding:0 80px;
	margin:0 auto;
	line-height:1.8;
}
.concept .message .member{
	margin:0 auto 40px;
	display:block;
}

.concept .message p{
	padding-bottom:24px;
	font-weight:200;
}
.merit{
	padding-top:40px;
}
.merit .btn{
	width:1024px;
	margin:0 auto 30px;
	overflow:hidden;
}
.merit .btn a{
	display:block;
	float:left;
	margin-right:32px;
}
.merit .btn a:nth-child(3){
	margin-right:0;
}
.merit > img{
	margin-bottom:30px;
}
.more{
	margin:100px 0 30px;
}
.cost{
	padding-top:90px;
	background:#ffffff;
}
.cost h2{
	padding:100px 0 60px;
}
.cost .sikamo{
	display:block;
	margin:30px auto -20px;
}
.cost .free{
	margin-left:-38px;
}
.cost .free2{
	margin:30px 0 0 -38px;
}
.cost .comment{
	margin-top:20px;
}
.howto{
	padding-top:80px;
}
.question{
	padding-top:80px;
	padding-bottom:80px;
}
.entry{
	background:#ffffff;
	padding:20px 0 80px;
	overflow:hidden;
}
.entry .inner{
	width:1024px;
	margin:0 auto;
}
.entry h2{
	margin:30px 0;
	font-size: 2em;
	line-height:1.5;
}
.entry h2 img{
	height: 1em;
	display: inline-block;
}
.entry h2 span{
	border-bottom:1px dashed #4e2912;
}
.entry .announce{
	border: 1px #eadcc4 solid;
	text-align: left;
	padding:20px;
	line-height: 2;
	margin-bottom:2em;
}
.entry .announce p:first-child{
	text-align: center;
	margin-bottom:0.5em;
	font-size: 120%;
	font-weight: bold;
}
.entry .announce ul{
	list-style: disc;
	padding-left:2em;
}
.entry .telcontact{
	margin:2em 0 1em;
	font-weight: bold;
	font-size: 150%;
	line-height: 1.5;
}
.entry .telcontact a{
	color:#ff0033;
	font-size: 150%;
	text-decoration: none;
}
.entry .lead{
	font-weight: bold;
	font-size: 140%;
	margin:0 0 2em;
}
.entry .applydate dd{
	font-weight: bold;
	font-size: 120%;
}
.entry .free2{
	margin:30px 0 0 -38px;
}

.prerelease h2{
	line-height:1.2;
}

.entry dl{
	display:table;
	padding:10px 80px;
}
.entry dt,
.entry dd{
	display:table-cell;
	vertical-align:top;
}
.entry dt{
	text-align:left;
	min-width:220px;
	position:relative;
	line-height:1.5;
}
.entry dd{
	text-align:left;
	line-height:1.5;
	position:relative;
}
.entry .lineinfo{
	display:block;
	margin:15px 0 10px;
	line-height:1;
}
.entry .require{
	display:inline-block;
	background:#ff0033;
	border-radius:3px;
	color:#ffffff;
	padding:5px;
	font-size:12px;
	margin:0 10px 0;
	position:absolute;
	right:0;
	top:0;
}
.entry .norequire{
	display:inline-block;
	background:#3300ff;
	border-radius:3px;
	color:#ffffff;
	padding:5px;
	font-size:12px;
	margin:0 10px 0;
	position:absolute;
	right:0;
	top:0;
}
.entry p.dayparts{
	margin:0 0 10px;
}
.entry input[type="text"],
.entry input[type="email"],
.entry .inquiry textarea{
	border:solid 1px #eadcc4;
	border-radius:3px;
	background:#f6f1e9;
	width:600px;
	padding:10px 0;
	font-size:16px;
}
.entry input[type="text"].input-half{
	max-width:50%;
}
.entry input[type="text"].input-small{
	max-width:200px;
}
.entry input[type="text"].input-xxsmall{
	max-width:4em;
	text-align: center;
}
.entry select{
	font-size:16px;
	max-width:100%;
}
.entry input[type="text"].zip{
	width:100px;
	margin-bottom:10px;
}
.entry input[type="text"]::placeholder,
.entry input[type="email"]::placeholder{
	color:#ccc;
}
.entry label{
	padding:0 20px 0 0;
}
.entry .inquiry textarea{
	max-width: 100%;
	min-height: 5em;
}
.entry .btns{
	text-align: center;
}
.entry .entry_btn,
.entry .back_btn{
	width:30%;
	display:inline-block;
}
.entry .entry_btn input[type="submit"]{
	background:#ff0033;
	border:none;
	border-radius:10px;
	color:#ffffff;
	font-size:18px;
	padding:10px 20px;
	margin:30px 0 0;
}

.entry .back_btn input[type="submit"]{
	background:#aaaaaa;
	border:none;
	border-radius:10px;
	color:#ffffff;
	font-size:18px;
	padding:10px 20px;
	margin:30px 0 0;
}
.entry .moretext{
	border:solid 1px #eadcc4;
	border-radius:3px;
	background:#f6f1e9;
	width:600px;
	height:200px;
	padding:10px 0;
	font-size:16px;
}

.entry .know{
	line-height:2;
}
.entry .know label{
	display:inline-block;
	padding:0 40px 0 0;
}
.entry .know label.etcari{
	padding:0 0 0 0;
}
.entry .know span{
	padding:0 40px 0 0;
}

.entry .know input[type="text"]{
	border:solid 1px #eadcc4;
	border-radius:3px;
	background:#f6f1e9;
	width:180px;
	padding:2px 0;
	font-size:12px;
}

.entry .info{
	text-align:left;
	font-size:16px;
}
.entry .forminfo{
	text-align:center;
	font-size:16px;
	margin-bottom:20px;
}
.caution{
	color:#ff0000;
	padding:10px 0;
}
.entry .userinfo{
	font-weight: bold;
	text-align: left;
/*
	text-align: center;
	border-top:solid 1px #eadcc4;
	border-bottom:solid 1px #eadcc4;
*/
	padding:0.5em 0;
	margin:0 0 0.5em;
}
.adduserinfo{
	text-align: center;
	margin:1em 0;
}
.rank dd{
	line-height: 2;
}
.agreement{
	margin:20px auto;
	text-align: left;
	border:solid 1px #eadcc4;
	padding:10px 80px;
	max-width: 800px;
}
.agreement .lead{
	font-weight: bold;
	margin:1em;
	text-align: center;
	line-height: 1.5;
}
.agreement label{
	text-align: left;
}
.agreement .checkarea{
	line-height: 1.5;
	margin:0 0 1em;
	padding:5px;
	position:relative;
}
.agreement input[type="checkbox"]{
}
.agreement input[type="checkbox"] + label {
}
.agreement input[type="checkbox"]:checked + label {
	background:#f6f1e9;
}
.agreement .agree{
	text-align: center;
	display: block;
}
.agreement .agree label{
	display: inline-block;
	padding:1em 2em;
	margin:0 0 1em;
	background: #f6f1e9;
	border:solid 1px #eadcc4;

}

.form-block {
}

.form-block .close {
    background-color: #aaa;
    border-radius: 50%;
    box-shadow: 1px 1px 1px #ddc inset;
    color: #666;
    display: inline-block;
    font-size: 24px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    text-shadow: 1px 1px 0 #fff;
    top: 4px;
    position: absolute;
    right: 4px;
    width: 25px;
    cursor: pointer;
}

.form-block .add {
	background: #492d09;
	color:#fff;
    cursor: pointer;
}
ul{
    padding-left:1.5rem;
}
ul > li{
    list-style-type:disc;
}
ol > li{
	list-style-type:decimal;
	margin-left:1rem;
	padding-left:1rem;
}
ol ul {
    padding-left:0;
}
ol ul > li {
    list-style-type:circle;
}
.supplementary{
    text-align:right;
}
footer{
	text-align:right;
	background:#492d09;
	color:#ffffff;
	overflow:hidden;
	font-size:14px;
	line-height:1.5;
}
footer a,
footer a:hover,
footer a:visited{
	text-decoration:none;
	color:#ffffff;
}
footer .inner{
	width:1024px;
	margin:0 auto;
}
footer .info{
	display:block;
	margin:20px 0 20px auto;
	width:380px;
}
footer .info th{
	padding: 0 10px 0 0;
}
footer .info td{
	padding: 0 0 0 10px;
	border-left:solid 2px #ffffff;
	text-align:left;
}

.totop{
	position:fixed;
	top:10px;
	right:calc( (100% - 1024px ) / 2 );
	z-index:3;
}
.entrylink{
	position:fixed;
	bottom:calc( 50% - 150px );
	right:0;
	z-index:2;
}
.entrylink2{
	/*bottom:50%;*/
	top:10px;
}
.entrytel{
	position:fixed;
	top:300px;
	right:0;
	z-index:2;
}

.sp_inline{
	display:none !important;
}

.sp_block{
	display:none !important;
}

.pc_inline{
	display:inline !important;
}

.pc_block{
	display:block !important;
}

#line{
	background:#ffffff;
}
#line .inner{
	width:500px;
	margin:0 auto;
	text-align:left;
}
#line .inner h1{
	margin:30px 0 30px;
}
#line .inner h1 img{
	display:inline-block;
	vertical-align:middle;
	margin-right:30px;
	width:30%;
}
#terms{
	background:#ffffff;
}
#terms .inner{
	max-width:1000px;
	margin:0 auto;
	text-align:left;
	line-height: 2;
	font-size: .9em;
}
#terms .inner h1{
	margin:30px 0 30px;
}
#terms .inner h2{
	margin:2em 0 0;
	font-size: 120%;
}
#terms .inner h2 + p{
	margin:0.5em 0 0;
}
#terms .inner h1 img{
	display:inline-block;
	vertical-align:middle;
	margin-right:30px;
	width:30%;
}
#terms.buying_terms ul{
	list-style:disc;
}
#terms.buying_terms ol{
	list-style:decimal;
}
#terms.buying_terms ul > li,
#terms.buying_terms ol > li{
	margin:0 0 0 20px;
	padding:0 0 0 10px;
}

.thankyou{
	line-height:1.8;
}

@media only screen and (max-width : 1400px){
	.entrylink{
		top:120px;
	}
}

@media only screen and (max-width : 1024px){
	img{
		max-width:90%;
	}
	.concept .message{
		width: 80%;
	}
	.merit .btn{
		width:90%;
		margin:0 auto 30px;
		overflow:hidden;
	}
	.merit .btn a{
		display:block;
		float:left;
		margin-right:32px;
		width: calc( 33% - 21px );
	}
	.merit .btn a img{
		width:100%;
	}

	.merit .btn a:nth-child(3){
		margin-right:0;
	}
	.merit > img{
		margin-bottom:30px;
	}

	.entry .inner{
		width:100%;
	}
	.entry dl{
		padding:10px;
	}
	.entry .announce{
		padding:10px;
	}
	.entry .announce{
	}
	footer .inner{
		width:100%;
	}
	.totop{
		top:10px;
		right:10px;
	}
	#line .inner{
		width:90%;
		font-size:0.8rem;
	}
	#line .inner h1{
		font-size:0.8rem;
	}
	#line .inner h1 img{
		width:40%;
	}
	#terms .inner{
		width:90%;
		font-size:0.8rem;
	}
	#terms .inner h1{
		font-size:0.8rem;
	}
	#terms .inner h1 img{
		width:40%;
	}
}
@media only screen and (max-width : 768px){
	header{
		background:url(../images/bg_header_sp.png?3) 50% 10px no-repeat;
		background-size:contain;
		height:508px;
	}
	.oyakataform header{
		background:url(../images/bg_header_oyakata_sp.png) 50% 10px no-repeat;
	}
	header h1{
		padding-top:164px;
	}
	.etc{
		top:-72px;
	}
	.nayami{
		background: url(../images/bg_nayami_sp.png) 50% 50% no-repeat;
		top:-89px;
		height:1217px;
	}
	.nayami .nayami2{
		bottom:7px;
		left:calc( (100% - 691px) / 2);
	}

	.concept{
		background:url(../images/bg_concept_sp.png?2) 50% 50% no-repeat;
		height:1662px;
	}
	.concept h2{
		padding:30px 0 60px;
		font-size:28px;
	}
	.concept h2 span{
		font-size:22px;
	}
	.concept .message{
		width:90%;
		font-size:24px;
		padding:0;
	}
	.concept .message p{
		padding-bottom:36px;
	}
	.more{
		background:url(../images/bg2.png) repeat;
		padding:50px 0;
		margin:30px 0 0;
	}
	.merit .btn{
		width:100%;
		margin:0 auto 10px;
		overflow:hidden;
	}
	.merit .btn a{
		display:block;
		float:none;
		margin-right:0;
		margin-bottom:10px;
		width: 100%;
	}
	.merit .btn a img{
		width:100%;
	}

	.merit .btn a:nth-child(3){
		margin-right:0;
	}

	.cost{
		padding:30px 0 0;
	}
	.cost .free{
		margin-left:0;
	}
	.howto{
		padding-top:30px;
	}
	.question{
		background:url(../images/bg2.png) repeat;
		padding-top:30px;
		padding-bottom:30px;
	}
	.entry {
		font-size:13px;
	}
	.entry h2{
		margin:20px 0;
	}
	.entry h2 img{
		width:30%;
	}
	.entry dl,
	.entry dt,
	.entry dd{
		display:block;
	}
	.entry dt{
		width:95%;
		min-width:95%;
		padding-bottom:10px;
		padding-left:5%;
	}
	.entry dd{
		width:95%;
		min-width:95%;
		padding-left:5%;
		text-align:left;
		padding-bottom:5px;
		line-height:1.8;
	}
	.entry .require{
		position:relative;
	}
	.entry .norequire{
		position:relative;
	}
	.entry input[type="text"],
	.entry .inquiry textarea{
		width:95%;
	}
	.entry .entry_btn,
	.entry .back_btn{
		width:50%;
		display:inline-block;
	}
	.entry .free2{
		margin:0;
	}

	.totop{
		width:15%;
		right:10px;
	}
	.entrylink{
		bottom:5%;
		top:inherit;
		right:4%;
		width:44%;
	}
	.entrytel{
		bottom:5%;
		top:inherit;
		left:4%;
		width:44%;
	}
	.entrylink img,
	.entrytel img{
		max-width:100%;
		width:100%;
		z-index:3;
		opacity:0.8;
		border-radius:5px;
	}

	.entry .moretext{
		width:95%;
	}

	.sp_inline{
		display:inline !important;
	}

	.sp_block{
		display:block !important;
	}

	.pc_block{
		display:none !important;
	}

	.pc_inline{
		display:none !important;
	}
	.agreement{
		margin-left: 5%;
		margin-right: 5%;
		padding-left:5%;
		padding-right: 5%;
	}

}
@media only screen and (max-width : 487px){
	header:before{
		content:'';
		display:block;
		overflow:hidden;
		padding-top:63%;
	}
	header{
		height:inherit;
		position:relative;
	}
	header h1{
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		padding-top:24%;
	}
	header h1 img{
		max-width:50%;
	}
	.etc{
		margin-top:-5%;
		top:0;
	}
	.nayami{
		margin-top:-5%;
		top:0;
		height:inherit;
		background-size:100% 100%;
	}
	.nayami .nayami1{
		top:0;
		display:inline-block;
		padding-top:30px;
	}
	.nayami .nayami2{
		position:relative;
		top:0;
		left:0;
		display:inline-block;
		padding-top:30px;
	}
	.clear{
		margin-top:30px;
	}
	.concept{
		background:url(../images/bg_concept_sp.png) 50% 50% no-repeat;
		height:inherit;
		background-size:100% 100%;
	}
	.concept .message{
		font-size:18px;
		padding-bottom:28px;
	}
	.cost .sikamo{
		margin:30px auto 0;
	}
	footer{
		margin-bottom:40px;
	}
	footer .info{
		width:100%;
		font-size:12px;
	}
	.sp-hide{
		display: none;
	}
}

