@charset "UTF-8";
/* CSS Document */

* {
	margin: 0;
	padding: 0;
}
body {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1rem;
	margin: 0;
	padding: 0;
	color: #333;
}
a {
	outline: none;
}
.blinking {
    -webkit-animation: 0.5s linear 0s alternate none infinite running blink;
    -moz-animation: 0.5s linear 0s alternate none infinite running blink;
    animation: 0.5s linear 0s alternate none infinite running blink;
}
@-webkit-keyframes blink {
    0% { opacity: 0; }
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@-moz-keyframes blink {
    0% { opacity: 0; }
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@keyframes blink {
    0% { opacity: 0; }
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
/* ----- clearfix ----- */
/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */

img {
	border: none;
	vertical-align: bottom;
}
ul, li, p, h1, h2, h3 {
	margin: 0;
	padding: 0;
}
.media_contents {
	max-width: 800px;
	padding: 50px 50px 100px;
	margin: 0 auto;
	background: #fff;
}
h1.media_title {
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.5px;
	margin-bottom: 70px;
}
.media_title > span {
	color: #888;
	display: block;
	font-size: 0.7rem;
	font-weight: 400;
	margin-top: 15px;
	text-align: right;
}
.media_text {
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	line-height: 35px;
}
.media_text b.red {
	color: #e11111;
	font-size: 1.2rem;
}
.media_text b.blue {
	color: #3f7dd9;
	font-size: 1.2rem;
}

.media_text span.bg {
    background-color: #ffde00;
    color: #e11111;
    font-size: 1.2rem;
    font-weight: 600;
    margin: 0 10px;
    padding: 0 10px 2px;
}
.media_text img {
	display: block;
	height: auto;
	margin: 60px auto;
	width: 100%;
}
.media_text a img {
	display: block;
	height: auto;
	margin: 60px auto;
	width: 60%;
}
.media_text a.red {
    color: #e11111;
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 600;
    padding: 0 10px;
	margin: 0;
    text-align: left;
}
.media_text > h2 > a.red {
    color: #e11111;
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 600;
    padding: 0 10px 0 0;
	margin: 0;
    text-align: left;
}
.media_text h2 {
    border-bottom: 2px solid #cbdff2;
    border-left: 7px solid #cbdff2;
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 40px;
    margin: 80px 0 40px;
    padding: 20px 20px 30px;
}

.media_text h3 {
	font-size: 1.3rem;
    line-height: 40px;
    margin: 0 0 10px;
}
h4 {
	background: #eee none repeat scroll 0 0;
	font-size: 1.3rem;
	margin: 35px 0 15px;
	padding: 15px 20px;
}
.media_text a {
	line-height: 22px;
	color: #aa7c7c;
	display: block;
	font-size: 0.75rem;
	font-weight: 400;
	margin-bottom: 60px;
	text-align: right;
	-webkit-transition: all 0.15s ease-in-out;
	-moz-transition: all 0.15s ease-in-out;
	-o-transition: all 0.15s ease-in-out;
	-ms-transition: all 0.15s ease-in-out;
	transition: all 0.15s ease-in-out;
}
.media_text a:hover {
	opacity: 0.7;
}
.quote {
	padding: 30px;
	background: #fffdef;
	border: 2px solid #f2efda;
	font-size: 0.9rem;
	font-weight: 500;
	margin: 30px 0;
}
.quote_title {
	border-bottom: 2px solid #f2efda;
	font-size: 1.2rem;
	font-weight: 700;
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.text_small {
    color: #aaa;
    font-size: 0.9rem;
}
footer {
	padding: 30px;
	display: block;
	color: #aaa;
	text-align: center;
	font-size: 0.7rem;
}
footer a:hover {
	background: rgba(255,255,255,0.5);
}
.footer_banner {
	text-align: center;
	margin-top: 80px;
}
.footer_banner:hover {
	opacity: 0.9;
}
small a {
	color: #aaa;
	display: block;
	text-decoration: none;
	margin: 10px auto 0;
}

@media screen and (max-width: 600px) {
.media_contents {
	max-width: 900px;
	padding: 5% 5% 20%;
	margin: 0 auto;
	background: #fff;
}
.media_text {
	letter-spacing: 0.5px;
	line-height: 32px;
	font-size: 1rem;
}
h1.media_title {
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.5px;
	line-height: 32px;
	margin-bottom: 40px;
	padding: 30px 0;
}
.media_text h2 {
	display: block;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 34px;
	margin: 80px 0 40px;
	padding: 20px 0;
}
.media_text h3 {
	font-size: 1.2rem;
	line-height: 34px;
	margin: 50px 0 20px;
}
.media_contents {
	background: #fff none repeat scroll 0 0;
	margin: 0 auto;
	max-width: 900px;
	padding: 5% 5% 0;
}
.media_text a img {
	margin: 30px auto;
    width: 100%;
}	
}
