@charset "utf-8";@import url("./reset.css");@import url('./style.css');/* --------------------------------------------------- *//* レイアウト *//* --------------------------------------------------- */.wrap {	margin: 0;	padding: 0;	display: -webkit-box;	display: -ms-flexbox;	display: flex;	width: 100%;	min-width: 320px;	background: #fff;	overflow: hidden;}.wrap.fixed { position: fixed; }.vertical-column {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-direction: column;	width: 100%;	min-height: 100vh;}.container { flex: 1 0 auto; }main { margin-top: 90px; }main section { padding-left: 5%; padding-right: 5%; }main section.fitted { padding-left: 0; padding-right: 0; }.contents {	margin: 0 auto;	max-width: 960px;}.inner {	display: table;	width: 100%;}@media screen and (min-width: 960px) {	.container { flex: 1 0 auto; min-width: 960px; }}@media screen and (max-width: 767px) {	main { margin-top: 0; }}.loading {	position: fixed;	top: 0;	left: 0;	width: 100%;	height: 100%;	background-color: #e5f5e5;	z-index: 999;}/* --------------------------------------------------- *//* フッター *//* --------------------------------------------------- */footer {	position: relative;	padding: 35px 5% 20px;	background-color: #00a000;}footer dl { display: table; width: 100%; }footer dl dt,footer dl dd {	display: table-cell;	width: 50%;	vertical-align: top;}footer h1 {	margin: 0 0 5px 0;	color: #fff;	font-size: 1.8rem;	font-weight: 900;}footer h1 em { font-size: 115%; font-weight: 700; }footer ul li {	display: inline-block;	margin-right: 20px;}footer ul li:last-child { margin-right: 0; }footer ul li a {	display: inline-block;	padding-left: 20px;	background-image: url('../image/common/ar-w.png');	background-repeat: no-repeat;	background-size: 16px 16px;	background-position: 0 50%;	color: #fff;	font-size: 1.4rem;	line-height: 16px;}footer .btn-contact {	display: table;	margin: 0 0 8px auto;}footer .btn-contact a {	display: block;	width: 260px;	color: #fff;	border: 1px solid #fff;	text-align: center;}footer .btn-contact a span {	display: inline-block;	padding-right: 36px;	background-image: url('../image/common/mail.png');	background-repeat: no-repeat;	background-size: 27px 20px;	background-position: 100% 50%;	font-size: 1.8rem;	font-weight: 700;	line-height: 42px;}footer .credit {	color: #fff;	font-size: 1.0rem;	text-align: right;}@media screen and (min-width: 960px) {	footer h1 a:hover,	footer ul li a:hover,	footer .btn-contact a:hover { opacity: 0.5; }}@media screen and (max-width: 767px) {	footer { padding: 30px 5% 20px; }	footer h1 a { font-size: 1.6rem; }	footer ul li a { font-size: 1.3rem; }	footer .btn-contact a { width: 220px; }	footer .btn-contact a span { font-size: 1.6rem; line-height: 40px; }}@media screen and (max-width: 599px) {	footer { padding: 20px 0 15px;}	footer dl dt {		display: block;		margin: 0 auto 15px;		width: 90%;	}	footer dl dd { display: block; width: 100%; }	footer h1 { display: table; margin: 0 auto 5px;  }	footer ul { text-align: center; }	footer ul li { margin-right: 15px; }	footer .btn-contact {		display: block;		margin: 0 0 8px 0;		border-top: 1px solid #fff;		border-bottom: 1px solid #fff;	}	footer .btn-contact a { width: 100%; border: none; }	footer .credit { text-align: center; }}@media screen and (max-width: 419px) {	footer { padding: 52px 0 15px;}}/* ページトップボタン */footer #pgtop {	position: fixed;	bottom: 100px;	right: 30px;	z-index: 555;}footer #pgtop a {	display: table;	width: 48px;	height: 48px;	background-color: #00a000;	background-image: url('../image/common/ar2u-w.png');	background-repeat: no-repeat;	background-position: 50% 50%;	background-size: 20px 20px;	border-radius: 50%;}@media screen and (min-width: 960px) {	footer #pgtop a:hover { opacity: 0.5; }}@media screen and (max-width: 767px) {	footer #pgtop { bottom: 100px; right: 20px; }	footer #pgtop a {		width: 36px;		height: 36px;		background-size: 18px 18px;	}}@media screen and (max-width: 599px) {	footer #pgtop { bottom: 25px; right: 12px; }	footer #pgtop a {		width: 32px;		height: 32px;		background-size: 14px 14px;	}}@media screen and (max-width: 419px) {	footer #pgtop {		position: absolute;		top: 0;		right: 0;		bottom: auto;		width: 100%;	}	footer #pgtop a {		position: relative;		width: 100%;		height: 40px;		background-size: 14px 14px;		background-position: 50% 25%;		background-color: #99d999;		border-radius: 0;	}	footer #pgtop a::after {		content: 'TOP';		position: absolute;		bottom: 2px;		left: 49.5%;		display: table;		color: #fff;		font-size: 1.0rem;		text-align: center;		transform: scale(0.8) translateX(-50%);	}}