/* general */
* {
  box-sizing:border-box;
}
html, body {
	margin: 0;
	padding: 0;
	height: 100%;
	width: 100%;
	background-color: #efefef;
	font-family: "Fira Code", "Noto Sans JP";
}
a:link { color: #555555; text-decoration: none; }
a:visited { color: #555555; text-decoration: none; }
a:hover { color: #555555; text-decoration: underline; }
a:active { color: #555555; text-decoration: none; }
img {
	border: 0px;
}

/* title */
.title {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;

	padding-top: 50px;
	background-color: #ffffff;
}

.title-item {
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;	
	padding-bottom: 50px;
}
.title-prince {
	width: auto;
	height: 208px;
}

.title-logo {
	width: 205px;
	height: auto;
}

/* cards */
.cards {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;

  margin-top: 50px;
}
.cards-end {
	height: 50px;
}

.card {
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;

  margin: 15px;

	width: 220px;
	border: 0px;
	border-radius: 16px;
	padding: 15px;
	background-color: #ffffff;
  position: relative;
}

.card img {
	margin-left: auto;
	margin-right: auto;
	width: auto;
	height: 80px;
	padding: 15px 5px 0px 5px;
  display: block;
}

.card-title {
	text-align: center;
}

.card-text {
	text-align: center;
	color: #555555;
  width: 100%;
  padding: 15px;
	border: 0px;
	border-radius: 16px;
  font-size: 0.9rem;
	background-color: rgba(0, 0, 0, 0.05);
}

/* single card */
.card-single {
	width: 420px;
	padding: 30px;
	text-align: center;
}

.card-message {
	margin: 0 0 20px 0;
	color: #555555;
	font-size: 0.95rem;
	line-height: 1.9;
}

.card-link {
	display: inline-block;
	padding: 12px 24px;
	border: 0px;
	border-radius: 16px;
	font-size: 1.1rem;
	font-weight: 700;
	background-color: rgba(0, 0, 0, 0.05);
}

/* not found notice */
.card-notice {
	margin: 0 0 14px 0;
	color: #999999;
	font-size: 0.8rem;
	letter-spacing: 0.04em;
}

@media
	screen and (max-width: 860px),
	screen and (max-device-width: 736px) {
  .card {
    width: 80%;
  }
}