html,body{
	margin:0;
	padding:0;
}

body{
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size:18px;
	line-height:2.4em;
}

.pc{display:inline;}
.sp{display:none;}

a{
	color:#d7001d;
}
	a:hover{
		opacity:.6;
		transition: 0.4s;
	}

img{
	max-width:100%;
	vertical-align: bottom;
}

.header,.footer{
	display:flex;
	justify-content: space-between;
	align-items:center;
}
.header .text{
	position:relative;
	display:flex;
	align-items:center;
}
	.header .text p{
		font-size:4em;
		font-weight:bold;
		line-height:1em;
		margin:0;
	}
		.header .text small{
			font-size:.3em;
			line-height:.8em;
		}
	.header .text .circle{
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		display: flex;
		align-items:center;
		border-radius: 50%;
		background: #d7001d;
		color:#FFF;
		text-align:center;
		font-weight:bold;
		width: 80px;
		height: 80px;
		line-height:1em;
		margin-right:20px;
	}
		.header .text .circle p{
			font-size:1.4em;
			line-height:1.2em;
			margin:auto;
		}
article{
	width:100%;
	margin-bottom:80px;
}

	article section,.contents{
		max-width:1000px;
		width:calc(100% - 2em);
		margin:auto;
		padding:0 1em;
	}
article h2{
	font-size:2.6em;
	text-align:center;
	letter-spacing: .4em;
}
	article h2:before{
		content:"＜";
	}
	article h2:after{
		content:"＞";
	}
article h3{
	font-size:1.6em;
	font-weight:bold;
	margin-bottom:0.5em;
}

article.main{
	text-align:center;
}
	article.main h2{
		font-size:2.2em;
		font-weight:normal;
		margin:60px 0;
	}
	article.main p{
		font-size:2em;
		line-height:1.6em;
		letter-spacing: .2em;
	}

article.soudan{
	text-align:center;
}
	article.soudan h2{
		font-size:2.2em;
		color:#c30d23;
	}
	article.soudan p{
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		font-size:1.6em;
		font-weight:bold;
	}

article.theme{}

	article.theme .theme_list{
		display:flex;
		justify-content: flex-start;
		align-items: flex-start;
		margin-bottom:100px;
	}
		article.theme .theme_list dl{
			width:100%;
			margin:0 0 0 20px;
			padding:0;
		}
				article.theme .theme_list dl dt h3{
					margin:0 0 .5em 0;
				}
			article.theme .theme_list dl dd{
				margin:0;
				padding:0;
			}
			article.theme .theme_list dl dd ul{
				list-style:none;
				display:flex;
				justify-content: flex-start;
				color:#c30d23;
				font-size:1.7em;
				font-weight:bold;
				margin:20px 0 0 0;
				padding:0;
			}
				article.theme .theme_list dl dd ul li{
					vertical-align:bottom;
					list-style:none;
					margin:0 1em 0 0;
					padding:0;
				}
				article.theme .theme_list dl dd ul li strong{
					font-size:1.05em;
					margin-right:10px;
				}
article.cta{}

	article.cta a{
		position:relative;
		display:block;
		box-shadow: 0px 0px 0px 6px #c1272d;
		border:1px solid #FFF;
		background:#c1272d;
		border-radius:5px;
		color:#FFF;
		text-align:center;
		text-decoration:none;
		font-size:1.2em;
		max-width:860px;
		width:100%;
		margin:auto;
		padding:2em 1em;
	}

article.comment{}
article.comment p{
	margin-bottom:3em;
}
footer{
	margin-bottom:20px;
}
	footer h2{
		font-weight:normal;
		margin-bottom:0;
	}
	footer dl{
		display:flex;
		justify-content: flex-start;
		line-height:1.6em;
		margin:0;
	}
		footer dl dd{
			margin-left:2em;
		}
	footer p{
		margin:0;
	}
	footer a.page{
		color:#d7001d;
		font-size:1.6em;
	}
	footer a.contact{
		display:block;
		background:#d7001d;
		color:#FFF;
		text-align:center;
		text-decoration:none;
		font-size:1.6em;
		padding:5px .5em;
	}

@media screen and (max-width: 749px){
.pc{display:none;}
.sp{display:inline;}
	
body{
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size:16px;
	line-height:1.8em;
}
header{
	padding:10px 0;
}
.header{
	width:100%;
	}
.header img{
	width:20%;
}
	.header .text{
		width:80%;
	}
		.header .text p{
			font-size:1.6em;
			font-weight:bold;
			line-height:1em;
			margin:0;
		}
			.header .text small{
				font-size:.4em;
				line-height:.8em;
			}
		.header .text .circle{
			font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
			display: flex;
			align-items:center;
			border-radius: 50%;
			background: #d7001d;
			color:#FFF;
			text-align:center;
			font-weight:bold;
			width: 50px;
			height: 50px;
			line-height:1em;
			margin:0 10px;
		}
			.header .text .circle p{
				font-size:.9em;
				line-height:1.1em;
			}

.footer{
	flex-direction: column;
}

article{
	width:100%;
	margin-bottom:100px;
}

	article section,.contents{
		max-width:750px;
		width:calc(100% - 2em);
		margin:auto;
		padding:0 1em;
	}
article h3 {
    font-size: 1.2em;
	line-height:1.6em;
}
	
article.main h2 {
	position:relative;
    font-size: 1.6em;
    font-weight: normal;
    margin: 60px 0;
}
	article.main h2:before{
		position:absolute;
		top:25%;
		left:0;
		content:"＜";
	}
	article.main h2:after{
		position:absolute;
		top:25%;
		right:0;
		content:"＞";
	}
	article.main p {
		font-size: 1.4em;
	}
	
article.soudan h2 {
	position:relative;
    font-size: 1.8em;
    color: #c30d23;
}
	article.soudan h2:before {
		content:"＜";
		position:absolute;
		top:40%;
		left:0;
	}
	article.soudan h2:after {
		content:"＞";
		position:absolute;
		top:40%;
		right:0;
	}

article.theme h2 {
	position:relative;
    font-size: 1.8em;
}
	article.theme h2:before {
		content:"＜";
		position:absolute;
		top:40%;
		left:0;
	}
	article.theme h2:after {
		content:"＞";
		position:absolute;
		top:40%;
		right:0;
	}

	article.theme .theme_list{
		justify-content: center;
		align-items: center;
		flex-direction: column;
		margin-bottom:100px;
	}
		article.theme .theme_list dl {
			margin: 1em 0 0 0;
			padding: 0;
		}
			article.theme .theme_list dl dd ul {
				list-style: none;
				display: flex;
				justify-content: space-between;
				font-size: 1em;
				font-weight: bold;
				margin: 20px 0 0 0;
				padding: 0;
			}
				article.theme .theme_list dl dd ul li{
					list-style:none;
					margin:0;
					padding:0;
				}
article.comment p{
	margin-bottom:2em;
}

article.cta{}

	article.cta a{
		max-width:750px;
		width:90%;
		padding:1em;
	}

	footer h2{
		font-size:1.2em;
		text-align:center;
		margin-bottom:10px;
	}
	footer .text{
		text-align:center;
		width:100%;
	}
	footer dl{
		text-align:left;
		font-size:.8em;
		margin-bottom:10px;
	}
		footer dl dd {
			margin-left:1em;
		}
		footer dl dd small{
			font-size:.9em;
		}
	footer a.page {
		color: #d7001d;
		text-align:center;
		font-size: 1.2em;
	}
	footer a.contact{
		margin-top:20px;
	}
}