@charset "utf-8";

*{
	margin: 0;
	padding: 0;
	list-style-type: none;
	text-decoration: none;
	font-feature-settings: "palt";
	color: #2c2d2b;
	font-family: "Hiragino Kaku Gothic ProN","Century Gothic","游ゴシック",sans-serif;
	letter-spacing: .02em;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: grayscale;
}

html{ scroll-behavior: smooth; }

.flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

a.under, 
article p.under a{
	text-decoration: underline;
	color: #5693ce;
}
a.under:hover, 
article p.under a:hover{ opacity: .4; }
strong{ color: #e20b04; }



table td{
	border-collapse: collapse;
	border-spacing: 0;
}

@media screen and ( min-width: 660.1px ){
	br.sp{ display: none; }
}


p, li, td{
	font-size: 15px;
	line-height: 180%;
}
@media screen and ( max-width: 660px){
	p, li, td{ font-size: 12.5px; }
}




.tc{ text-align: center; }
.tl{ text-align: left; }
.tr{ text-align: right; }


.mt0{ margin-top: 0; }
.mt5{ margin-top: 5px; }
.mt10{ margin-top: 10px; }
.mt15{ margin-top: 15px; }
.mt20{ margin-top: 20px; }
.mt30{ margin-top: 30px; }
.mt50{ margin-top: 50px; }
.mt70{ margin-top: 70px; }
.mt100{ margin-top: 100px; }
.mt150{ margin-top: 150px; }
.mt200{ margin-top: 200px; }
.mt300{ margin-top: 300px; }

.mt-5{ margin-top: -5px; }
.mt-10{ margin-top: -10px; }
.mt-15{ margin-top: -15px; }
.mt-20{ margin-top: -20px; }
.mt-30{ margin-top: -30px; }
.mt-50{ margin-top: -50px; }
.mt-70{ margin-top: -70px; }
.mt-100{ margin-top: -100px; }
.mt-150{ margin-top: -150px; }
.mt-200{ margin-top: -200px; }
.mt-300{ margin-top: -300px; }

.m0a{ margin: 0 auto; }
.m5a{ margin: 5px auto; }
.m10a{ margin: 10px auto; }
.m15a{ margin: 15px auto; }
.m20a{ margin: 20px auto; }
.m30a{ margin: 30px auto; }
.m50a{ margin: 50px auto; }


.mb0{ margin-bottom: 0; }
.mb5{ margin-bottom: 5px; }
.mb10{ margin-bottom: 10px; }
.mb15{ margin-bottom: 15px; }
.mb20{ margin-bottom: 20px; }
.mb30{ margin-bottom: 30px; }
.mb50{ margin-bottom: 50px; }
.mb70{ margin-bottom: 70px; }
.mb100{ margin-bottom: 100px; }
.mb150{ margin-bottom: 150px; }
.mb200{ margin-bottom: 200px; }
.mb300{ margin-bottom: 300px; }

.pt0{ padding-top: 0; }
.pt5{ padding-top: 5px; }
.pt10{ padding-top: 10px; }
.pt15{ padding-top: 15px; }
.pt20{ padding-top: 20px; }
.pt30{ padding-top: 30px; }
.pt50{ padding-top: 50px; }
.pt70{ padding-top: 70px; }
.pt100{ padding-top: 100px; }
.pt150{ padding-top: 150px; }
.pt200{ padding-top: 200px; }
.pt300{ padding-top: 300px; }

.pb0{ padding-bottom: 0; }
.pb5{ padding-bottom: 5px; }
.pb10{ padding-bottom: 10px; }
.pb15{ padding-bottom: 15px; }
.pb20{ padding-bottom: 20px; }
.pb30{ padding-bottom: 30px; }
.pb50{ padding-bottom: 50px; }
.pb70{ padding-bottom: 70px; }
.pb100{ padding-bottom: 100px; }
.pb150{ padding-bottom: 150px; }
.pb200{ padding-bottom: 200px; }
.pb300{ padding-bottom: 300px; }


.p0{ padding: 0; }
.p5{ padding: 5px; }
.p10{ padding: 10px; }
.p15{ padding: 15px; }
.p20{ padding: 20px; }
.p30{ padding: 30px; }
.p50{ padding: 50px; }
.p70{ padding: 70px; }
.p100{ padding: 100px; }
.p150{ padding: 150px; }
.p200{ padding: 200px; }
.p300{ padding: 300px; }


.fz10{ font-size: 10px; }
.fz11{ font-size: 11px; }
.fz12{ font-size: 12px; }
.fz13{ font-size: 13px; }
.fz14{ font-size: 14px; }
.fz16{ font-size: 16px; }
.fz18{ font-size: 18px; }
.fz20{ font-size: 20px; }
.fz22{ font-size: 22px; }
.fz24{ font-size: 24px; }
.fz28{ font-size: 28px; }
.fz32{ font-size: 32px; }
.fz36{ font-size: 36px; }


