@charset "UTF-8";
@font-face {
	font-family: "gen";
	src:url("../fonts/SourceHanSansJP-Normal.eot?yahl8x");
	src:url("../fonts/SourceHanSansJP-Normal.eot?#iefixyahl8x") format("embedded-opentype"),
		url("../fonts/SourceHanSansJP-Normal.woff?yahl8x") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "gen";
	src:url("../fonts/SourceHanSansJP-Bold.eot?yahl8x");
	src:url("../fonts/SourceHanSansJP-Bold.eot?#iefixyahl8x") format("embedded-opentype"),
		url("../fonts/SourceHanSansJP-Bold.woff?yahl8x") format("woff");
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family: "gen";
	src:url("../fonts/SourceHanSansJP-Heavy.eot?yahl8x");
	src:url("../fonts/SourceHanSansJP-Heavy.eot?#iefixyahl8x") format("embedded-opentype"),
		url("../fonts/SourceHanSansJP-Heavy.woff?yahl8x") format("woff");
	font-weight: 900;
	font-style: normal;
}

@font-face {
	font-family: 'sns';
	src:url('../fonts/snsico.eot?os0557');
	src:url('../fonts/snsico.eot?os0557#iefix') format('embedded-opentype'),
		url('../fonts/snsico.ttf?os0557') format('truetype'),
		url('../fonts/snsico.woff?os0557') format('woff'),
		url('../fonts/snsico.svg?os0557#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/*
	base
=========================================*/
html {
	min-height: 100%;
}
body {
	background: #fff;
	font-family: "gen", "Hiragino Kaku Gothic ProN", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	letter-spacing: normal;
	color: #504a49;
}
a {
	text-decoration: none;
	color: #000;
}
a[onclick],
a[href] {
	text-decoration: underline;
	color: #000;
	cursor: pointer;
}
a[href=""] {
	background: #fcc !important;
	color: #f00 !important;
}
	a[href=""] img {
		opacity: 0.25;
	}
strong {
	font-weight: bold;
}
em {
	font-weight: bold;
}
#page-name {
	display: none;
}
img {
	max-width: 100%;
}


/*
	xAlign
=========================================*/
.x-left {
	text-align: left !important;
}
.x-center {
	text-align: center !important;
}
.x-right {
	text-align: right !important;
}
.x-top {
	vertical-align: top !important;
}
.x-middle {
	vertical-align: middle !important;
}
.x-bottom {
	vertical-align: bottom !important;
}
.x-baseline {
	vertical-align: baseline !important;
}


/*
	xDisplay
=========================================*/
.x-hide {
	display: none;
}


/*
	xColor
=========================================*/
.x-red {
	color: #d00;
}
.x-black {
	color: #000;
}


.x-bold {
	font-weight: bold;
}


/*
	.x-through
=========================================*/
.x-through {
	text-decoration: line-through !important;
}


/*
	.form-text
=========================================*/
.form-text {
	display: inline-block;
	width: 150px;
	position: relative;
	overflow: hidden;
	zoom: 1;
}
	.form-text input {
		background: #fff;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 8px 10px;
		border: 1px solid;
		border-color: #aaa #ccc #ccc #aaa;
		border-radius: 5px;
		font-size: 18px;
	}
	.form-text input:focus {
		background: #f9f9f9;
	}
	.error input {
		border-color: #f00;
	}
.form-text.full {
	display: block;
	width: 100%;
}
.form-text.half {
	width: 50%;
	float: left;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 20px 0 0;
}


/*
	.form-textarea
=========================================*/
.form-textarea {
	display: block;
	width: 100%;
	position: relative;
	overflow: hidden;
	zoom: 1;
}
	.form-textarea textarea {
		background: #fff;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		min-height: 7.5em;
		margin: 0;
		padding: 8px 10px;
		border: 1px solid;
		border-color: #aaa #ccc #ccc #aaa;
		border-radius: 5px;
		font-size: 18px;
	}
	.form-textarea textarea:focus {
		background: #f9f9f9;
	}
	.error textarea {
		border-color: #f00;
	}


/*
	.form-select
=========================================*/
.form-select {
	display: block;
	width: 100%;
	position: relative;
	overflow: hidden;
	zoom: 1;
}
	.form-select select {
		background: #fff;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 8px 10px;
		border: 1px solid;
		border-color: #aaa #ccc #ccc #aaa;
		border-radius: 5px;
		font-size: 18px;
	}
	.form-select select:focus {
		background: #f9f9f9;
	}
	.error select {
		border-color: #f00;
	}


/*
	.form-checkbox
=========================================*/
.form-checkbox {
	display: inline-block;
	position: relative;
	zoom: 1;
}
	.form-checkbox input {
		margin: -6px 0 0;
		padding: 0;
		position: absolute;
		top: 50%;
		left: 0;
	}
	.form-checkbox label {
		display: inline-block;
		padding: 0 0 0 16px;
		cursor: pointer;
		position: relative;
		zoom: 1;
		z-index: 1;
	}
.form-checkbox.error:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	padding: 2px 6px;
	border: 1px solid #f00;
	position: absolute;
	top: -2px;
	left: -6px;
}


/*
	.form-button--submit
=========================================*/
.form-button--submit {
	display: inline-block;
	vertical-align: middle;
}
	.form-button--submit button {
		background: #000;
		min-width: 300px;
		padding: 0 2em;
		border: none;
		font-weight: bold;
		font-size: 16px;
		line-height: 3.8;
		letter-spacing: 0.2em;
		cursor: pointer;
		color: #fff;
	}


/*
	.form-button--prev
=========================================*/
.form-button--prev {
	display: inline-block;
	vertical-align: middle;
}
	.form-button--prev button {
		background: none;
		margin: 1em 0;
		padding: 0;
		border: none;
		font-weight: normal;
		font-size: 16px;
		letter-spacing: 0.2em;
		cursor: pointer;
	}


/*
	icon
=========================================*/










/*

=========================================*/





