@charset "utf-8";
/* CSS Document */

#wrapper {
	width: 100%;
	background-size: auto 180px;
  background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(0, 151, 224, 1));
	background-repeat: no-repeat;
}

header {
	padding: 20px 10px;
	margin: 0;
	text-align: center;
}

header img {
	width: 100%;
	max-width: 850px;
	height: auto;
}

footer {
	background: #ED6D00;
	padding: 5px;
	text-align: center;
	clear: both;
	color: #FFF;
	font-size: 1.2rem;
	width: 100%;
}

footer a:link {
	color: #FFF;
}
footer a:visited {
	color: #FFF;
}
footer a:hover {
	color: #CCC;
}
footer a:active {
	color: #CCC;
}

footer hr.hr01 {
	background-color: #A19CCA;
	border-top: 1px solid #A19CCA;
	margin: 0.5em;
}

footer address {
	display: flex;
	text-align: left;
}

#contents {
	width: 100%;
	padding: 0;
}

/* 表示領域が767.98px以下の場合に適用するスタイル */
@media print, screen and (max-width: 767.98px) {
	header {
		padding: 15px;
		max-width: 767.98px;
		margin: 0 auto;
	}
	footer address {
		flex-direction: column;
		text-align: center;
	}
	footer address div:first-of-type {
		padding-bottom: 5px;
	}
	footer address div:nth-of-type(2) {
		border-left: none;
	}
	#contents {
		margin: 0 auto 10px;
	}
  .pcOnly {
    display: none !important;
  }
}

/* 表示領域が768px以上の場合に適用するスタイル */
@media screen and (min-width: 768px) {
	footer {
		width: 100%;
	}
	footer address {
		flex-wrap: wrap;
		justify-content: center;
	}
	footer address div:nth-of-type(2) {
		border-left: 1px solid #CCC;
		padding: 0 10px;
		margin-left: 10px;
	}
	#contents { /* 以上 */
		display: flex;
		justify-content: space-between;
		margin: 0 auto 10px;
	}
	#left-contents {
		margin-bottom: 10px;
	}
  .spOnly {
    display: none !important;
  }
}