@charset"utf-8";
html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td, figure {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 100%;
}
article, header, footer, aside, figure, figcaption, nav, section {
	display: block;
}
html {
	font-size: 62.5%;
}
body {
	line-height: 1;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	 font-size: 1.6rem; 
}
p  { font-size: 1.6rem; } /* 16px */
li { font-size: 1.6rem; } /* 16px */
ol, ul {
	list-style: none;
	list-style-type: none;
}
ul.indent li{padding-left:1em;
text-indent:-1em;}
.clearfix:after {
	content: " ";
	display: block;
	clear: both;
}
img {
	vertical-align: bottom;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
table {
	border-collapse: collapse;
}
/*IE*/
main{display: block;}
table{table-layout: fixed;}
/* flort,clear
----------------------------------------------------*/
.fLeft {
	float: left;
}
.fRight {
	float: right;
}
.clear {
	clear: both;
}
/* img
---------------------------------------- */
.imgL {
	float: left;
	margin-right: 20px;
}
.imgLbtm {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.imgR {
	float: right;
	margin-left: 20px;
}
.imgRbtm {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
.center {
	display: block;
	text-align: center;
	margin: 0 auto;
}
/* text
---------------------------------------- */
.tLeft {
	text-align: left;
}
.tRight {
	text-align: right;
}
.tCenter {
	text-align: center;
}
a {
	text-decoration: none;
}
a:hover {
	transition: opacity 0.4s ease-in-out;
	transition: all 0.4s ease;
}
.red {
	color: #DD0003;
}
.bold {
	font-weight: bold;
}
.fsize16 {
	font-size: 1.6rem;
}
/* flex
---------------------------------------- */
.flexW {
	display: flex;
	flex-wrap: wrap;
}
.flexSb {
	display: flex;
	justify-content: space-between;
}
.flexSbW {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flexC {
	display: flex;
	justify-content: center;
}
.flexCW {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.flexCC {
	display: flex;
	align-items: center;
	justify-content: center;
}
.flexSbC {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.flexE {
	display: flex;
	justify-content: flex-end;
}
.flex {
	display: flex;
}
@media screen and ( min-width:769px) {
	.flexW-p {
		display: flex;
		flex-wrap: wrap;
	}
	.flexSb-p {
		display: flex;
		justify-content: space-between;
	}
	.flexSbC-p {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.flexSbW-p {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.flexC-p {
		display: flex;
		justify-content: center;
	}
	.flexCW-p {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.flexCC-p {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.flex-p {
		display: flex;
	}
}
/* space
---------------------------------------- */
.mt10 {
	margin-top: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt60 {
	margin-top: 60px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb80 {
	margin-bottom: 80px;
}
.m0 {
	margin: 0!important;
}
.mt0 {
	margin-top: 0!important;
}
.ml10 {
	margin-left: 10px;
}
.ml20 {
	margin-left: 20px;
}
.p20 {
	padding: 20px;
}
.pt10 {
	padding-top: 10px;
}
.pt20 {
	padding-top: 20px;
}
.pt30 {
	padding-top: 30px;
}
.pt40 {
	padding-top: 40px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb20 {
	padding-bottom: 20px;
}
.pb30 {
	padding-bottom: 30px;
}
.pb40 {
	padding-bottom: 40px;
}
.tablet {
	display: none;
}
.sp {
	display: none;
}
@media screen and ( max-width:768px) {
	.pc {
		display: none!important;
	}
	.tablet {
		display: block;
	}
	img.tablet {
		display: inline;
	}
}
@media screen and ( max-width:414px) {
	.pc-sp {
		display: none!important;
	}
	.sp {
		display: block;
	}
	img.sp {
		display: inline;
	}
}
