body{
	color: #444;
	font-family: "Yu Gothic", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", sans-serif;
	font-size: 16px;
	margin: 0;
	padding:0;
	position: relative;
}
p {
	margin: 0 0 1.6em 0;
}
ul {
	margin: 0;
	padding:0;
}
li {
	list-style: none;
}

/* Common styles
* --------------------------------------- */
.wrap{
	width: 1200px;
	height: 100%;
	margin: 0 auto 50px;
	position: relative;
	line-height: 1.6em;
	font-size: 1.125rem;
	padding-top: 150px;
}

@media screen and (max-width: 1199px) {
	.wrap{
		width:calc(100% - 128px);
		margin: 0 64px;
	}
}
@media screen and (max-width: 1024px) {
	.wrap{
		width:94%;
		font-size: 1rem;
		margin: 0 auto 50px;
	}
}
@media screen and (max-width: 767px) {
	.wrap{
		font-size: 0.875rem;
	}
}
@media screen and (max-width: 478px) {
}


	/* header
	* --------------------------------------- */
	header {
		border-bottom:1px solid #e8e8e8;
		margin: 0 0 30px;
	}
	header h1 {
		margin: 0.5em 0 0 0;
		padding:0 0 0 1em;
	}

	/* footer
	* --------------------------------------- */
	footer p {
		text-align: center;
		width:100%;
		font-size: 0.75rem;
		margin-top: 300px;
	}

	/* main
	* --------------------------------------- */
	main {
	}
	section {
		margin-bottom: 50px;
	}
@media screen and (max-width: 1024px) {
	a.top {
		height: 30px;
		width: 30px;
	}
}

/* #contact
* --------------------------------------- */
#contact h2 {
	text-align: center;
	font-family: "Yu Mincho", "YuMincho", serif;
	font-size: 2.25rem;
	margin: 0 0 0.5em 0;
}
#contact h3 {
	margin: 0 0 0.5em 0;
	font-size: 1.25rem;
}

#contact table {
	border-collapse:collapse;
	border-spacing:0;
	width: 100%;
	margin-bottom: 60px;
}
#contact th {
	text-align: left;
	width: 13em;
	font-weight: bold;
	margin: 0;
	padding: 15px 0;
	white-space: nowrap;
}
#contact td {
	margin:0;
	padding: 15px 0;
}
#contact td input[type=checkbox] {
	margin-left: 1em;
}
#contact td input[type=checkbox]:first-child {
	margin-left: 0;
}
#contact td input:not([type=checkbox]) {
	border:0;
	border-bottom:1px solid #c4c4c4;
	line-height: 1.6rem;
	padding: 3px;
	color: #444;
	font-family: "Yu Gothic", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", sans-serif;
	font-size: 1.125rem;
	width: 100%;
}
#contact td textarea {
	border:1px solid #c4c4c4;
	line-height: 1.6rem;
	padding: 3px;
	color: #444;
	font-family: "Yu Gothic", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", sans-serif;
	font-size: 1.125rem;
	height: 8em;
	width: 100%;
}

.btn {
	margin: 0 auto 100px;
	padding: 0;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-ms-flex-pack:justify;
	-webkit-justify-content: space-between;
	justify-content:space-between;
	width: 100%;
}
.btn li {
	width: 45%;
}
.btn li input {
	width: 100%;
	font-family: "Yu Gothic", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", sans-serif;
	font-size: 1.125rem;
	background:#fff;
	transition: .4s;
	border:1px solid #c4c4c4;
	padding: 10px;
}
.btn li input:hover {
	color: #fff;

	background: #333; /* Old browsers */

	cursor: pointer;
}
input[type="text"]:focus,
textarea:focus {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
    outline: 0;
}
input:-webkit-autofill,textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}
/*input[type="submit" i]:disabled {
	color: #fff !important;
	border:0;
}*/
input[type="submit" i]:disabled:hover {
	background: none;
	cursor: auto;
	color: graytext;
}


#contact p a {
	width: 100%;
	color: #999;
	transition: .1s;
	position:relative;
	text-decoration: none;
}
#contact p a:hover {
	color: #333;
}
#contact p a::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #333;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}

#contact p a:hover::after {
  transform: scale(1, 1);
}

@media screen and (max-width: 1024px) {
	#contact h2 {
		font-size: 2.5rem;
	}
	#contact td input:not([type=checkbox]) {
		font-size:1rem;
	}
	#contact td textarea {
		font-size:1rem;
	}
	.btn li input {
		font-size: 1rem;
	}
}
@media screen and (max-width: 767px) {
	#contact h2 {
		font-size: 2rem;
	}
	#contact th {
		display: block;
		width: 100%;
		padding: 15px 0 0 3px;
	}
	#contact td {
		display: block;
		width: 100%;
		padding: 5px 0 15px 0;
	}
	#contact td input:not([type=checkbox]) {
		font-size:0.875rem;
	}

	.btn {
		display: block;
		width: 100%;
	}
	.btn li {
		width: 100%;
		display: block;
		margin: 0 0 0.5em 0;
	}
	.btn li input {
		font-size: 0.875rem;
		padding: 15px 10px;
	}
	#contact td textarea {
		font-size:0.875rem;
	}
	#contact aside ul {
		display: block;
	}
	#contact aside li {
		width: 100%;
		display: block;
		margin: 0 0 0.5em 0;
	}
}

/*.gray
* --------------------------------------- */
.gray {
	background: #f4f4f4;
	padding: 60px 0;
}
.gray .wrap {
	margin: 0 auto;
}
.gray a {
	color: #999;
	transition: .1s;
	position:relative;
	text-decoration: none;
	padding-left: 1em;
	margin: 0;
}
.gray a:hover {
	color: #444;
}
.gray a:before{
	position: absolute;
	top: 1.3em;
	left: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 1px;
	transition: .4s;

	background: #666; /* Old browsers */
	background: -moz-linear-gradient(left,  #ff0000 0%, #2a77d6 16%, #5eb524 32%, #eacd25 48%, #ff0000 64%, #2a77d6 80%, #5eb524 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ff0000), color-stop(16%,#2a77d6), color-stop(32%,#5eb524), color-stop(48%,#eacd25), color-stop(64%,#ff0000), color-stop(80%,#2a77d6), color-stop(100%,#5eb524)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #ff0000 0%,#2a77d6 16%,#5eb524 32%,#eacd25 48%,#ff0000 64%,#2a77d6 80%,#5eb524 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #ff0000 0%,#2a77d6 16%,#5eb524 32%,#eacd25 48%,#ff0000 64%,#2a77d6 80%,#5eb524 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #ff0000 0%,#2a77d6 16%,#5eb524 32%,#eacd25 48%,#ff0000 64%,#2a77d6 80%,#5eb524 100%); /* IE10+ */
	background: linear-gradient(to right,  #ff0000 0%,#2a77d6 16%,#5eb524 32%,#eacd25 48%,#ff0000 64%,#2a77d6 80%,#5eb524 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff0000', endColorstr='#5eb524',GradientType=1 ); /* IE6-9 */
	-webkit-background-size: 300% 300%;
	-moz-background-size: 300% 300%;
	background-size: 300% 300%;


	        animation:section0 infinite 3s linear;
	     -o-animation:section0 infinite 3s linear;
	   -moz-animation:section0 infinite 3s linear;
	-webkit-animation:section0 infinite 3s linear;
}
.gray a:after {
	position: absolute;
	left: 0;
	content: ">";
	font-size: 10px;
}
.gray a:hover:before{
	width: 100%;
}

main#policy{
	width: 1200px;
	margin: 0 auto;
	padding-top: 150px;
}

main#policy h2{
	text-align: center;
	font-family: "Yu Mincho", "YuMincho", serif;
	font-size: 2.25rem;
	margin: 0 0 0.5em 0;
}
@media screen and (max-width: 1200px) {
	main#policy{
		width: 100%;
		padding: 150px 20px 0 20px;
		box-sizing: border-box;
	}
}