@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900|Raleway:700,800,900');
@import url('https://fonts.googleapis.com/css?family=Ribeye');

*{
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
}
body {
	background: #fff7f9;
}
header {
	background: #fa5f93;
	border-top: 2px solid #e6276d;
	padding: 10px 0;
	position: relative;
	z-index: 2;
	border-bottom: #ffd4e1 solid 4px;
}
h1 {
	line-height: 1;
	text-align: center;
	font-family: 'Ribeye', cursive;
	color: #ffffff;
	font-size: 25px;
	font-weight: 100;
}
.main {
	max-width: 1080px;
	padding: 50px 20px 50px;
	box-sizing: border-box;
	margin: auto;
	background: #ffffff;
	position: relative;
	z-index: 1;
	box-shadow: #cccccc 0px 0px 15px;
}
.thum {
	width: 120px;
	overflow: hidden;
	height: 120px;
	border-radius: 50%;
	vertical-align: middle;
	text-align: center;
}
.thum img {
	width: 110%;
	margin: -5%;
}
a.topic {
	display: flex;
	width: 936px;
	margin: auto;
	background: #ffffff;
	padding: 2%;
	margin-bottom: 30px;
	box-shadow: #cccccc 0px 0px 8px;
	box-sizing: border-box;
	transition: .5s;
	text-decoration: none;
	color: #333333;
	border-radius: 85px 0 0 0;
	position: relative
}
a.topic:hover {
	box-shadow: #cccccc 0px 0px 30px 7px;
}
a.topic:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	height: 2px;
	width: 100%;
	background: linear-gradient(120deg, #ffc4d8 0%, #ff8eb7 100%);
}
h2.topic_ttl {
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #aaa;
	color: #1f282c;
	font-size: 1.2rem;
}
.topic_txt {
	width: 85%;
	margin-left: 3%;
}
footer {
	background: #241f1b;
	width: 100%;
	position: relative;
	z-index: 2;
	color: #ffffff;
	text-align: center;
	padding: 25px 0 50px;
}
footer a {
	color: #ffffff;
	text-decoration: none;
	display: block;
	width: 80%;
	margin: 0 auto 45px;
	border-bottom: 1px dotted #f3baa4;
	padding-bottom: 14px;
}
footer a:visited {
	color: #ffffff;
	text-decoration: none;
}
footer a:link {
	text-decoration: none;
}
footer img {
	width: 140px;
	display: block;
	margin: 15px auto;
}
footer small {
	font-weight: 300;
	letter-spacing: 1px;
	font-size: 0.8rem;
	line-height: 1rem;
	margin: 0;
}
.main.info table {
	border: 1px solid #241f1b;
	border-collapse: collapse;
	border-spacing: 0;
}
.main.info table th {
	border: 1px solid #241f1b;
	padding: 1%;
	width: 20%;
	color: #241f1b;
}
.main.info table td {
	padding: 1%;
	border: 1px solid #241f1b;
}
a.home {
	display: block;
	width: 100%;
	text-align: center;
	margin: 4% auto 0;
	color: #241f1b;
}
@media (max-width:620px) {
	.main {
		width: 100%;
		padding: 7% 0;
	}
	p.topic_discription {
		display: none;
	}
	.thum img {
		width: 120%;
		margin: -10%;
	}
	a.topic {
		border-radius: 50px 0 0 0;
		margin-bottom: 5%;
		width: 90%;
	}
	.thum {
		width: 100px;
		height: 100px;
	}
	h2.topic_ttl {
		border-bottom: none;
		font-size: 1rem;
	}
	.topic_txt {
		width: 66%;
		margin-left: 3%;
	}
	.main.info table {
		width: 90%;
		margin: auto;
		font-size: .9rem;
	}
	.main.info table th {
		border: 1px solid #241f1b;
		padding: 1%;
		width: 30%;
		color: #241f1b;
	}
}























