@charset "utf-8";
/* ------------------------------------------------------------

style.css

------------------------------------------------------------ */


/* reset
------------------------------------------------------------ */

* {
	box-sizing: border-box;
}

html {
	margin: 0;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
	text-rendering: optimizeLegibility;
	font-size: 62.5%;
	line-height: 1.15;
}

body {
	margin: 0;
	padding: 0;
	line-height: 2.0;
	letter-spacing: 0.02em;
	text-indent: 0.02em;
	color: #fff;
	font-family: "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
	-webkit-backface-visibility: hidden;
}

body.open {
	overflow: hidden;
}

#overray {
	display: none;
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000000;
	z-index: 999;

}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
address,
figure {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

img {
	vertical-align: bottom;
	border: none;
	outline: none;
}

em,
address {
	font-style: normal;
}

a,
button,
area {
	outline: 0;
	border: none;
}

img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

img[src$=".svg"] {
	width: 100%;
	height: auto;
	vertical-align: top;
}


/*----------------------------------------------------------
	Display：← 768px（ sp tablet ）
----------------------------------------------------------*/

@media screen and (max-width:768px) {

	body {
		font-size: 1.4rem;
		letter-spacing: 0em;
	}

	.pc {
		display: none;
	}

}

/*----------------------------------------------------------
	Display：769px →（ tablet pc ）
----------------------------------------------------------*/

@media screen and (min-width:769px) {

	body {
		font-size: 1.6rem;
	}

	.sp {
		display: none;
	}
}


/* margin top
------------------------------------------------------------ */
.mt0 {
	margin-top: 0px !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt45 {
	margin-top: 45px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mt55 {
	margin-top: 55px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mt65 {
	margin-top: 65px !important;
}

.mt70 {
	margin-top: 70px !important;
}

.mt75 {
	margin-top: 75px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mt85 {
	margin-top: 85px !important;
}

.mt90 {
	margin-top: 90px !important;
}

.mt95 {
	margin-top: 95px !important;
}

.mt100 {
	margin-top: 100px !important;
}

.mt0_5em {
	margin-top: 0.5em;
}

.mt1_0em {
	margin-top: 1.0em;
}

.mt1_5em {
	margin-top: 1.5em;
}

.mt2_0em {
	margin-top: 2.0em;
}

.mt2_5em {
	margin-top: 2.5em;
}

.mt3_0em {
	margin-top: 3.0em;
}

@media screen and (max-width: 559px) {
	.mt0sp {
		margin-top: 0px !important;
	}

	.mt5sp {
		margin-top: 5px !important;
	}

	.mt10sp {
		margin-top: 10px !important;
	}

	.mt15sp {
		margin-top: 15px !important;
	}

	.mt20sp {
		margin-top: 20px !important;
	}

	.mt25sp {
		margin-top: 25px !important;
	}

	.mt30sp {
		margin-top: 30px !important;
	}

	.mt35sp {
		margin-top: 35px !important;
	}

	.mt40sp {
		margin-top: 40px !important;
	}

	.mt45sp {
		margin-top: 45px !important;
	}

	.mt50sp {
		margin-top: 50px !important;
	}

	.mt55sp {
		margin-top: 55px !important;
	}

	.mt60sp {
		margin-top: 60px !important;
	}

	.mt65sp {
		margin-top: 65px !important;
	}

	.mt70sp {
		margin-top: 70px !important;
	}

	.mt75sp {
		margin-top: 75px !important;
	}

	.mt80sp {
		margin-top: 80px !important;
	}

	.mt85sp {
		margin-top: 85px !important;
	}

	.mt90sp {
		margin-top: 90px !important;
	}

	.mt95sp {
		margin-top: 95px !important;
	}

	.mt100sp {
		margin-top: 100px !important;
	}
}

@media screen and (min-width: 560px) {
	.mt0pc {
		margin-top: 0px !important;
	}

	.mt5pc {
		margin-top: 5px !important;
	}

	.mt10pc {
		margin-top: 10px !important;
	}

	.mt15pc {
		margin-top: 15px !important;
	}

	.mt20pc {
		margin-top: 20px !important;
	}

	.mt25pc {
		margin-top: 25px !important;
	}

	.mt30pc {
		margin-top: 30px !important;
	}

	.mt35pc {
		margin-top: 35px !important;
	}

	.mt40pc {
		margin-top: 40px !important;
	}

	.mt45pc {
		margin-top: 45px !important;
	}

	.mt50pc {
		margin-top: 50px !important;
	}

	.mt55pc {
		margin-top: 55px !important;
	}

	.mt60pc {
		margin-top: 60px !important;
	}

	.mt65pc {
		margin-top: 65px !important;
	}

	.mt70pc {
		margin-top: 70px !important;
	}

	.mt75pc {
		margin-top: 75px !important;
	}

	.mt80pc {
		margin-top: 80px !important;
	}

	.mt85pc {
		margin-top: 85px !important;
	}

	.mt90pc {
		margin-top: 90px !important;
	}

	.mt95pc {
		margin-top: 95px !important;
	}

	.mt100pc {
		margin-top: 100px !important;
	}
}


/* nagative margin
------------------------------------------------------------ */
.nmt5 {
	margin-top: -5px !important;
}

.nmt10 {
	margin-top: -10px !important;
}

.nmt15 {
	margin-top: -15px !important;
}

.nmt20 {
	margin-top: -20px !important;
}

.nmt25 {
	margin-top: -25px !important;
}

.nmt30 {
	margin-top: -30px !important;
}

.nmt35 {
	margin-top: -35px !important;
}

.nmt40 {
	margin-top: -40px !important;
}

.nmt45 {
	margin-top: -45px !important;
}

.nmt50 {
	margin-top: -50px !important;
}

.nmt55 {
	margin-top: -55px !important;
}

.nmt60 {
	margin-top: -60px !important;
}

.nmt65 {
	margin-top: -65px !important;
}

.nmt70 {
	margin-top: -70px !important;
}

.nmt75 {
	margin-top: -75px !important;
}

.nmt80 {
	margin-top: -80px !important;
}

.nmt85 {
	margin-top: -85px !important;
}

.nmt90 {
	margin-top: -90px !important;
}

.nmt95 {
	margin-top: -95px !important;
}

.nmt100 {
	margin-top: -100px !important;
}

@media screen and (max-width: 559px) {
	.nmt5sp {
		margin-top: -5px !important;
	}

	.nmt10sp {
		margin-top: -10px !important;
	}

	.nmt15sp {
		margin-top: -15px !important;
	}

	.nmt20sp {
		margin-top: -20px !important;
	}

	.nmt25sp {
		margin-top: -25px !important;
	}

	.nmt30sp {
		margin-top: -30px !important;
	}

	.nmt35sp {
		margin-top: -35px !important;
	}

	.nmt40sp {
		margin-top: -40px !important;
	}

	.nmt45sp {
		margin-top: -45px !important;
	}

	.nmt50sp {
		margin-top: -50px !important;
	}

	.nmt55sp {
		margin-top: -55px !important;
	}

	.nmt60sp {
		margin-top: -60px !important;
	}

	.nmt65sp {
		margin-top: -65px !important;
	}

	.nmt70sp {
		margin-top: -70px !important;
	}

	.nmt75sp {
		margin-top: -75px !important;
	}

	.nmt80sp {
		margin-top: -80px !important;
	}

	.nmt85sp {
		margin-top: -85px !important;
	}

	.nmt90sp {
		margin-top: -90px !important;
	}

	.nmt95sp {
		margin-top: -95px !important;
	}

	.nmt100sp {
		margin-top: -100px !important;
	}
}

@media screen and (min-width: 560px) {
	.nmt5pc {
		margin-top: -5px !important;
	}

	.nmt10pc {
		margin-top: -10px !important;
	}

	.nmt15pc {
		margin-top: -15px !important;
	}

	.nmt20pc {
		margin-top: -20px !important;
	}

	.nmt25pc {
		margin-top: -25px !important;
	}

	.nmt30pc {
		margin-top: -30px !important;
	}

	.nmt35pc {
		margin-top: -35px !important;
	}

	.nmt40pc {
		margin-top: -40px !important;
	}

	.nmt45pc {
		margin-top: -45px !important;
	}

	.nmt50pc {
		margin-top: -50px !important;
	}

	.nmt55pc {
		margin-top: -55px !important;
	}

	.nmt60pc {
		margin-top: -60px !important;
	}

	.nmt65pc {
		margin-top: -65px !important;
	}

	.nmt70pc {
		margin-top: -70px !important;
	}

	.nmt75pc {
		margin-top: -75px !important;
	}

	.nmt80pc {
		margin-top: -80px !important;
	}

	.nmt85pc {
		margin-top: -85px !important;
	}

	.nmt90pc {
		margin-top: -90px !important;
	}

	.nmt95pc {
		margin-top: -95px !important;
	}

	.nmt100pc {
		margin-top: -100px !important;
	}
}


/* margin bottom
------------------------------------------------------------ */
.mb0 {
	margin-bottom: 0px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb55 {
	margin-bottom: 55px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.mb65 {
	margin-bottom: 65px !important;
}

.mb70 {
	margin-bottom: 70px !important;
}

.mb75 {
	margin-bottom: 75px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.mb85 {
	margin-bottom: 85px !important;
}

.mb90 {
	margin-bottom: 90px !important;
}

.mb95 {
	margin-bottom: 95px !important;
}

.mb100 {
	margin-bottom: 100px !important;
}

.mb0_5em {
	margin-bottom: 0.5em;
}

.mb1_0em {
	margin-bottom: 1.0em;
}

.mb1_5em {
	margin-bottom: 1.5em;
}

.mb2_0em {
	margin-bottom: 2.0em;
}

.mb2_5em {
	margin-bottom: 2.5em;
}

.mb3_0em {
	margin-bottom: 3.0em;
}

@media screen and (max-width: 559px) {
	.mb0sp {
		margin-bottom: 0px !important;
	}

	.mb5sp {
		margin-bottom: 5px !important;
	}

	.mb10sp {
		margin-bottom: 10px !important;
	}

	.mb15sp {
		margin-bottom: 15px !important;
	}

	.mb20sp {
		margin-bottom: 20px !important;
	}

	.mb25sp {
		margin-bottom: 25px !important;
	}

	.mb30sp {
		margin-bottom: 30px !important;
	}

	.mb35sp {
		margin-bottom: 35px !important;
	}

	.mb40sp {
		margin-bottom: 40px !important;
	}

	.mb45sp {
		margin-bottom: 45px !important;
	}

	.mb50sp {
		margin-bottom: 50px !important;
	}

	.mb55sp {
		margin-bottom: 55px !important;
	}

	.mb60sp {
		margin-bottom: 60px !important;
	}

	.mb65sp {
		margin-bottom: 65px !important;
	}

	.mb70sp {
		margin-bottom: 70px !important;
	}

	.mb75sp {
		margin-bottom: 75px !important;
	}

	.mb80sp {
		margin-bottom: 80px !important;
	}

	.mb85sp {
		margin-bottom: 85px !important;
	}

	.mb90sp {
		margin-bottom: 90px !important;
	}

	.mb95sp {
		margin-bottom: 95px !important;
	}

	.mb100sp {
		margin-bottom: 100px !important;
	}
}

@media screen and (min-width: 560px) {
	.mb0pc {
		margin-bottom: 0px !important;
	}

	.mb5pc {
		margin-bottom: 5px !important;
	}

	.mb10pc {
		margin-bottom: 10px !important;
	}

	.mb15pc {
		margin-bottom: 15px !important;
	}

	.mb20pc {
		margin-bottom: 20px !important;
	}

	.mb25pc {
		margin-bottom: 25px !important;
	}

	.mb30pc {
		margin-bottom: 30px !important;
	}

	.mb35pc {
		margin-bottom: 35px !important;
	}

	.mb40pc {
		margin-bottom: 40px !important;
	}

	.mb45pc {
		margin-bottom: 45px !important;
	}

	.mb50pc {
		margin-bottom: 50px !important;
	}

	.mb55pc {
		margin-bottom: 55px !important;
	}

	.mb60pc {
		margin-bottom: 60px !important;
	}

	.mb65pc {
		margin-bottom: 65px !important;
	}

	.mb70pc {
		margin-bottom: 70px !important;
	}

	.mb75pc {
		margin-bottom: 75px !important;
	}

	.mb80pc {
		margin-bottom: 80px !important;
	}

	.mb85pc {
		margin-bottom: 85px !important;
	}

	.mb90pc {
		margin-bottom: 90px !important;
	}

	.mb95pc {
		margin-bottom: 95px !important;
	}

	.mb100pc {
		margin-bottom: 100px !important;
	}
}


/* margin right
------------------------------------------------------------ */
.mr0 {
	margin-right: 0px !important;
}

.mr5 {
	margin-right: 5px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.mr15 {
	margin-right: 15px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.mr25 {
	margin-right: 25px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.mr35 {
	margin-right: 35px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.mr45 {
	margin-right: 45px !important;
}

.mr50 {
	margin-right: 50px !important;
}

.mr55 {
	margin-right: 55px !important;
}

.mr60 {
	margin-right: 60px !important;
}

.mr65 {
	margin-right: 65px !important;
}

.mr70 {
	margin-right: 70px !important;
}

.mr75 {
	margin-right: 75px !important;
}

.mr80 {
	margin-right: 80px !important;
}

.mr85 {
	margin-right: 85px !important;
}

.mr90 {
	margin-right: 90px !important;
}

.mr95 {
	margin-right: 95px !important;
}

.mr100 {
	margin-right: 100px !important;
}

@media screen and (max-width: 559px) {
	.mr0sp {
		margin-right: 0px !important;
	}

	.mr5sp {
		margin-right: 5px !important;
	}

	.mr10sp {
		margin-right: 10px !important;
	}

	.mr15sp {
		margin-right: 15px !important;
	}

	.mr20sp {
		margin-right: 20px !important;
	}

	.mr25sp {
		margin-right: 25px !important;
	}

	.mr30sp {
		margin-right: 30px !important;
	}

	.mr35sp {
		margin-right: 35px !important;
	}

	.mr40sp {
		margin-right: 40px !important;
	}

	.mr45sp {
		margin-right: 45px !important;
	}

	.mr50sp {
		margin-right: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.mr0pc {
		margin-right: 0px !important;
	}

	.mr5pc {
		margin-right: 5px !important;
	}

	.mr10pc {
		margin-right: 10px !important;
	}

	.mr15pc {
		margin-right: 15px !important;
	}

	.mr20pc {
		margin-right: 20px !important;
	}

	.mr25pc {
		margin-right: 25px !important;
	}

	.mr30pc {
		margin-right: 30px !important;
	}

	.mr35pc {
		margin-right: 35px !important;
	}

	.mr40pc {
		margin-right: 40px !important;
	}

	.mr45pc {
		margin-right: 45px !important;
	}

	.mr50pc {
		margin-right: 50px !important;
	}
}


/* margin left
------------------------------------------------------------ */
.ml0 {
	margin-left: 0px !important;
}

.ml5 {
	margin-left: 5px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.ml15 {
	margin-left: 15px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.ml25 {
	margin-left: 25px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.ml35 {
	margin-left: 35px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.ml45 {
	margin-left: 45px !important;
}

.ml50 {
	margin-left: 50px !important;
}

.ml55 {
	margin-left: 55px !important;
}

.ml60 {
	margin-left: 60px !important;
}

.ml65 {
	margin-left: 65px !important;
}

.ml70 {
	margin-left: 70px !important;
}

.ml75 {
	margin-left: 75px !important;
}

.ml80 {
	margin-left: 80px !important;
}

.ml85 {
	margin-left: 85px !important;
}

.ml90 {
	margin-left: 90px !important;
}

.ml95 {
	margin-left: 95px !important;
}

.ml100 {
	margin-left: 100px !important;
}

@media screen and (max-width: 559px) {
	.ml0sp {
		margin-left: 0px !important;
	}

	.ml5sp {
		margin-left: 5px !important;
	}

	.ml10sp {
		margin-left: 10px !important;
	}

	.ml15sp {
		margin-left: 15px !important;
	}

	.ml20sp {
		margin-left: 20px !important;
	}

	.ml25sp {
		margin-left: 25px !important;
	}

	.ml30sp {
		margin-left: 30px !important;
	}

	.ml35sp {
		margin-left: 35px !important;
	}

	.ml40sp {
		margin-left: 40px !important;
	}

	.ml45sp {
		margin-left: 45px !important;
	}

	.ml50sp {
		margin-left: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.ml0pc {
		margin-left: 0px !important;
	}

	.ml5pc {
		margin-left: 5px !important;
	}

	.ml10pc {
		margin-left: 10px !important;
	}

	.ml15pc {
		margin-left: 15px !important;
	}

	.ml20pc {
		margin-left: 20px !important;
	}

	.ml25pc {
		margin-left: 25px !important;
	}

	.ml30pc {
		margin-left: 30px !important;
	}

	.ml35pc {
		margin-left: 35px !important;
	}

	.ml40pc {
		margin-left: 40px !important;
	}

	.ml45pc {
		margin-left: 45px !important;
	}

	.ml50pc {
		margin-left: 50px !important;
	}
}


/* margin all
------------------------------------------------------------ */
.ma0 {
	margin: 0px !important;
}

.ma5 {
	margin: 5px !important;
}

.ma10 {
	margin: 10px !important;
}

.ma15 {
	margin: 15px !important;
}

.ma20 {
	margin: 20px !important;
}

.ma25 {
	margin: 25px !important;
}

.ma30 {
	margin: 30px !important;
}

.ma35 {
	margin: 35px !important;
}

.ma40 {
	margin: 40px !important;
}

.ma45 {
	margin: 45px !important;
}

.ma50 {
	margin: 50px !important;
}


/* padding top
------------------------------------------------------------ */
.pt0 {
	padding-top: 0px !important;
}

.pt5 {
	padding-top: 5px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pt35 {
	padding-top: 35px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pt45 {
	padding-top: 45px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pt55 {
	padding-top: 55px !important;
}

.pt60 {
	padding-top: 60px !important;
}

.pt65 {
	padding-top: 65px !important;
}

.pt70 {
	padding-top: 70px !important;
}

.pt75 {
	padding-top: 75px !important;
}

.pt80 {
	padding-top: 80px !important;
}

.pt85 {
	padding-top: 85px !important;
}

.pt90 {
	padding-top: 90px !important;
}

.pt95 {
	padding-top: 95px !important;
}

.pt100 {
	padding-top: 100px !important;
}

@media screen and (max-width: 559px) {
	.pt0sp {
		padding-top: 0px !important;
	}

	.pt5sp {
		padding-top: 5px !important;
	}

	.pt10sp {
		padding-top: 10px !important;
	}

	.pt15sp {
		padding-top: 15px !important;
	}

	.pt20sp {
		padding-top: 20px !important;
	}

	.pt25sp {
		padding-top: 25px !important;
	}

	.pt30sp {
		padding-top: 30px !important;
	}

	.pt35sp {
		padding-top: 35px !important;
	}

	.pt40sp {
		padding-top: 40px !important;
	}

	.pt45sp {
		padding-top: 45px !important;
	}

	.pt50sp {
		padding-top: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.pt5pc {
		padding-top: 5px !important;
	}

	.pt10pc {
		padding-top: 10px !important;
	}

	.pt15pc {
		padding-top: 15px !important;
	}

	.pt20pc {
		padding-top: 20px !important;
	}

	.pt25pc {
		padding-top: 25px !important;
	}

	.pt30pc {
		padding-top: 30px !important;
	}

	.pt35pc {
		padding-top: 35px !important;
	}

	.pt40pc {
		padding-top: 40px !important;
	}

	.pt45pc {
		padding-top: 45px !important;
	}

	.pt50pc {
		padding-top: 50px !important;
	}

	.pl5Ppc {
		padding-left: 5% !important;
	}
}


/* padding bottom
------------------------------------------------------------ */
.pb0 {
	padding-bottom: 0px !important;
}

.pb5 {
	padding-bottom: 5px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.pb35 {
	padding-bottom: 35px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pb45 {
	padding-bottom: 45px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

.pb55 {
	padding-bottom: 55px !important;
}

.pb60 {
	padding-bottom: 60px !important;
}

.pb65 {
	padding-bottom: 65px !important;
}

.pb70 {
	padding-bottom: 70px !important;
}

.pb75 {
	padding-bottom: 75px !important;
}

.pb80 {
	padding-bottom: 80px !important;
}

.pb85 {
	padding-bottom: 85px !important;
}

.pb90 {
	padding-bottom: 90px !important;
}

.pb95 {
	padding-bottom: 95px !important;
}

.pb100 {
	padding-bottom: 100px !important;
}

@media screen and (max-width: 559px) {
	.pb0sp {
		padding-bottom: 0px !important;
	}

	.pb5sp {
		padding-bottom: 5px !important;
	}

	.pb10sp {
		padding-bottom: 10px !important;
	}

	.pb15sp {
		padding-bottom: 15px !important;
	}

	.pb20sp {
		padding-bottom: 20px !important;
	}

	.pb25sp {
		padding-bottom: 25px !important;
	}

	.pb30sp {
		padding-bottom: 30px !important;
	}

	.pb40sp {
		padding-bottom: 40px !important;
	}

	.pb50sp {
		padding-bottom: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.pb5pc {
		padding-bottom: 5px !important;
	}

	.pb10pc {
		padding-bottom: 10px !important;
	}

	.pb15pc {
		padding-bottom: 15px !important;
	}

	.pb20pc {
		padding-bottom: 20px !important;
	}

	.pb25pc {
		padding-bottom: 25px !important;
	}

	.pb30pc {
		padding-bottom: 30px !important;
	}

	.pb40pc {
		padding-bottom: 40px !important;
	}

	.pb50pc {
		padding-bottom: 50px !important;
	}
}


/* padding right
------------------------------------------------------------ */
.pr0 {
	padding-right: 0px !important;
}

.pr5 {
	padding-right: 5px !important;
}

.pr10 {
	padding-right: 10px !important;
}

.pr15 {
	padding-right: 15px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.pr25 {
	padding-right: 25px !important;
}

.pr30 {
	padding-right: 30px !important;
}

.pr35 {
	padding-right: 35px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.pr45 {
	padding-right: 45px !important;
}

.pr50 {
	padding-right: 50px !important;
}

.pr55 {
	padding-right: 55px !important;
}

.pr60 {
	padding-right: 60px !important;
}

.pr65 {
	padding-right: 65px !important;
}

.pr70 {
	padding-right: 70px !important;
}

.pr75 {
	padding-right: 75px !important;
}

.pr80 {
	padding-right: 80px !important;
}

.pr85 {
	padding-right: 85px !important;
}

.pr90 {
	padding-right: 90px !important;
}

.pr95 {
	padding-right: 95px !important;
}

.pr100 {
	padding-right: 100px !important;
}

@media screen and (max-width: 559px) {
	.pr10sp {
		padding-right: 10px !important;
	}

	.pr20sp {
		padding-right: 20px !important;
	}

	.pr30sp {
		padding-right: 30px !important;
	}

	.pr40sp {
		padding-right: 40px !important;
	}

	.pr50sp {
		padding-right: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.pr10pc {
		padding-right: 10px !important;
	}

	.pr20pc {
		padding-right: 20px !important;
	}

	.pr30pc {
		padding-right: 30px !important;
	}

	.pr40pc {
		padding-right: 40px !important;
	}

	.pr50pc {
		padding-right: 50px !important;
	}
}



/* padding left
------------------------------------------------------------ */
.pl0 {
	padding-left: 0px !important;
}

.pl5 {
	padding-left: 5px !important;
}

.pl10 {
	padding-left: 10px !important;
}

.pl15 {
	padding-left: 15px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.pl25 {
	padding-left: 25px !important;
}

.pl30 {
	padding-left: 30px !important;
}

.pl35 {
	padding-left: 35px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.pl45 {
	padding-left: 45px !important;
}

.pl50 {
	padding-left: 50px !important;
}

.pl55 {
	padding-left: 55px !important;
}

.pl60 {
	padding-left: 60px !important;
}

.pl65 {
	padding-left: 65px !important;
}

.pl70 {
	padding-left: 70px !important;
}

.pl75 {
	padding-left: 75px !important;
}

.pl80 {
	padding-left: 80px !important;
}

.pl85 {
	padding-left: 85px !important;
}

.pl90 {
	padding-left: 90px !important;
}

.pl95 {
	padding-left: 95px !important;
}

.pl100 {
	padding-left: 100px !important;
}

@media screen and (max-width: 559px) {
	.pl0sp {
		padding-left: 0px !important;
	}

	.pl10sp {
		padding-left: 10px !important;
	}

	.pl20sp {
		padding-left: 20px !important;
	}

	.pl30sp {
		padding-left: 30px !important;
	}

	.pl40sp {
		padding-left: 40px !important;
	}

	.pl50sp {
		padding-left: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.pl0pc {
		padding-left: 0px !important;
	}

	.pl10pc {
		padding-left: 10px !important;
	}

	.pl20pc {
		padding-left: 20px !important;
	}

	.pl30pc {
		padding-left: 30px !important;
	}

	.pl40pc {
		padding-left: 40px !important;
	}

	.pl50pc {
		padding-left: 50px !important;
	}
}



/* padding all
------------------------------------------------------------ */
.pa0 {
	padding: 0px !important;
}

.pa5 {
	padding: 5px !important;
}

.pa10 {
	padding: 10px !important;
}

.pa15 {
	padding: 15px !important;
}

.pa20 {
	padding: 20px !important;
}

.pa25 {
	padding: 25px !important;
}

.pa30 {
	padding: 30px !important;
}

.pa35 {
	padding: 35px !important;
}

.pa40 {
	padding: 40px !important;
}

.pa45 {
	padding: 45px !important;
}

.pa50 {
	padding: 50px !important;
}

@media screen and (max-width: 559px) {
	.pa10sp {
		padding: 10px !important;
	}

	.pa20sp {
		padding: 20px !important;
	}

	.pa30sp {
		padding: 30px !important;
	}

	.pa40sp {
		padding: 40px !important;
	}

	.pa50sp {
		padding: 50px !important;
	}
}

@media screen and (min-width: 560px) {
	.pa10pc {
		padding: 10px !important;
	}

	.pa20pc {
		padding: 20px !important;
	}

	.pa30pc {
		padding: 30px !important;
	}

	.pa40pc {
		padding: 40px !important;
	}

	.pa50pc {
		padding: 50px !important;
	}
}


/* layout style
------------------------------------------------------------ */

.em1-5 {
	width: 1.5em;
	display: inline-block;
}

.em2 {
	width: 2em;
	display: inline-block;
}

.floatL {
	float: left;
	display: inline;
}

.floatR {
	float: right;
	display: inline;
}

.clear {
	clear: both;
	display: inline;
}

.alignL {
	text-align: left !important;
}

.alignC {
	text-align: center !important;
}

.alignR {
	text-align: right !important;
}

.ofh {
	overflow: hidden;
}

@media screen and (max-width: 559px) {
	.alignLsp {
		text-align: left;
	}

	.alignCsp {
		text-align: center;
	}

	.alignRsp {
		text-align: right;
	}
}

@media screen and (min-width: 560px) {
	.alignLpc {
		text-align: left;
	}

	.alignCpc {
		text-align: center;
	}

	.alignRpc {
		text-align: right;
	}
}



/* font style
------------------------------------------------------------ */
.fsU1 {
	font-size: 1.14em;
}

.fsU2 {
	font-size: 1.28em;
}

.fsU3 {
	font-size: 1.42em;
}

.fsU4 {
	font-size: 1.56em;
}

.fsU5 {
	font-size: 1.70em;
}

.fsD1 {
	font-size: 0.86em;
}

.fsD2 {
	font-size: 0.72em;
}

.fsD3 {
	font-size: 0.58em;
}

.fs10 {
	font-size: 1.0rem;
}

.fs12 {
	font-size: 1.2rem;
}

.ti05 {
	text-indent: -0.5em;
}

.bold {
	font-weight: bold !important;
}

.normal {
	font-weight: normal;
}

.eng {
	font-family: 'Shippori Mincho', sans-serif;
	font-weight: 400;
	font-weight: normal;
}

.eng2 {
	font-family: 'Concert One', cursive;
	font-weight: normal;
}

.jp {
	font-family: 'Noto Sans JP', sans-serif;
}

.jp2 {
	font-family: 'Hina Mincho', sans-serif;
}

.jp3 {
	font-family: 'sicsquare', sans-serif;
}

.fcWhite {
	color: #fff !important;
}

.fcBlack {
	color: #000 !important;
}

.fcRed {
	color: #af2525 !important;
}

.fcPink {
	color: #ff9999 !important;
}

.fcBlue {
	color: #5eaacc !important;
}

.fcGreen {
	color: #26aa85 !important;
}

.fcLGreen {
	color: #69b875 !important;
}

.fcBrown {
	color: #aa752e !important;
}

.fcOrange {
	color: #ee8a54 !important;
}

.fcOrange2 {
	color: #ce5e20 !important;
}

.ruby {
	position: relative;
	overflow: visible;
}

.ruby .rt {
	width: 180%;
	font-size: 8px !important;
	line-height: 2;
	position: absolute;
	left: -40%;
	top: -1.9em;
	text-align: center !important;
	text-indent: 0;
	display: inline-block;
	overflow: visible;
	white-space: nowrap;
	box-sizing: border-box;
}


/* link
------------------------------------------------------------ */

a {
	color: #c90e17;
}

a.link {
	color: #ffea00;
	cursor: pointer;
	transition: opacity 0.5s ease;
}

a.link:hover {
	opacity: 0.6;
}

.ov {
	transition: all 0.5s ease;
}

.ov:hover {
	opacity: 0.6;
}



/* block
------------------------------------------------------------ */

.display-i {
	display: inline !important;
}

.display-ib {
	display: inline-block !important;
}

.display-b {
	display: block !important;
}

.viewSp {
	display: none;
}

.viewTab {
	display: none;
}

.viewPc {
	display: none;
}

@media screen and (max-width: 559px) {
	.viewTab {
		display: none;
	}

	.viewPc {
		display: none;
	}

	.viewSp {
		display: block;
	}
}

@media screen and (min-width: 560px) {
	.viewPc {
		display: none;
	}

	.viewSp {
		display: none;
	}

	.viewTab {
		display: block;
	}
}

@media screen and (min-width: 769px) {
	.viewSp {
		display: none;
	}

	.viewTab {
		display: none;
	}

	.viewPc {
		display: block;
	}
}



/* br
------------------------------------------------------------ */

.brTab,
.brPc,
.br1160 {
	display: none;
}

@media screen and (max-width: 559px) {
	.brSp {
		display: block;
	}
}

@media screen and (min-width: 560px) {
	.brSp {
		display: none;
	}

	.brTab {
		display: block;
	}
}

@media screen and (min-width: 769px) {
	.brTab {
		display: none;
	}

	.brPc {
		display: inline;
	}
}

@media screen and (min-width: 1160px) {
	.br1160 {
		display: inline;
	}
}



/* clearfix
------------------------------------------------------------ */
.cf:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}