@charset "UTF-8";
.font-roboto {
	font-family: "Roboto", sans-serif; }

.fw-100 {
	font-weight: 100; }

.fw-300 {
	font-weight: 300; }

.fw-400 {
	font-weight: 400; }

.fw-500 {
	font-weight: 500; }

.fw-700 {
	font-weight: 700; }

.fw-900 {
	font-weight: 800; }

.inner-left {
	float: left; }

.inner-right {
	float: right; }

.pol {
	position: absolute; }

.pol-right {
	right: 0; }

.pol-left {
	left: 0; }

@media only screen and (max-width: 750px) {
	.pol {
		width: 70px; } }

/* 赤ボタン
----------------------------------------------*/
.btn-red a {
	width: 100%;
	height: 100%;
	display: block;
	font-size: 16px;
	text-align: center;
	letter-spacing: 2px;
	color: #d9242d;
	border: solid 1px #d9242d;
	background: #fff;
	transition: all .3s; }
	.btn-red a:hover, .btn-red a.hover {
		background: #d9242d;
		color: #fff; }

@media only screen and (max-width: 750px) {
	.btn-red a {
		font-size: 13px; } }

/* メインビジュアル ページタイトル
----------------------------------------------*/
.tpl-mv {
	width: 100%;
	height: 443px;
	position: relative; }
	.tpl-mv .tpl-page_ttl {
		text-align: center;
		font-size: 48px;
		font-family: "Roboto", sans-serif;
		font-weight: 300;
		color: #fff;
		line-height: 443px;
		position: relative;
		z-index: 1; }

@media only screen and (max-width: 750px) {
	.tpl-mv {
		margin-top: 60px;
		width: 100%;
		height: 220px;
		position: relative; }
		.tpl-mv .tpl-page_ttl {
			text-align: center;
			font-size: 35px;
			font-family: "Roboto", sans-serif;
			font-weight: 300;
			color: #fff;
			line-height: 220px;
			position: relative;
			z-index: 1; } }

/* セクション
----------------------------------------------*/
.tpl-section {
	padding: 95px 0 150px;
	position: relative; }

@media only screen and (max-width: 750px) {
	.tpl-section {
		padding: 30px 0; } }

/* セクション見出し
----------------------------------------------*/
.tpl-ttl-section {
	text-align: center;
	font-size: 33px;
	font-weight: 200;
	margin-bottom: 35px; }
	.tpl-ttl-section .ico {
		display: block;
		margin-bottom: 20px; }

@media only screen and (max-width: 750px) {
	.tpl-ttl-section {
		font-size: 20px;
		margin-bottom: 20px;
		line-height: 1.6; }
		.tpl-ttl-section .ico {
			margin: 0 auto;
			width: 55px;
			margin-bottom: 20px; } }

/* セクションリード文
----------------------------------------------*/
.tpl-read_txt {
	width: 700px;
	margin: 0 auto; }

@media only screen and (max-width: 750px) {
	.tpl-read_txt {
		width: 100%; } }

/* ページ内アンカーナビ
----------------------------------------------*/
.page-nav {
	padding: 40px 0;
	background: #f6f6f6; }
	.page-nav ul {
		width: 1200px;
		margin: 0 auto;
		position: relative;
		z-index: 1; }
	.page-nav li {
		text-align: center;
		float: left; }
		.page-nav li a {
			border: solid 1px #bbb;
			box-sizing: border-box;
			display: block;
			width: 100%;
			height: 70px;
			background: #fff;
			line-height: 68px;
			position: relative; }
			
		.page-nav li + li a {
			border-left: none; }

@media only screen and (max-width: 750px) {
	.page-nav {
		padding: 15px; }
		.page-nav ul {
			width: 100%;
			margin: 0 auto; }
		.page-nav li {
			text-align: left;
			width: 100%;
			float: none; }
		}

.flex-lay {
	display: -webkit-flex;
	display: flex; }
