@charset "utf-8";

/* ////////////////////
PC,SP共通 
//////////////////// */

/* display */
.inline{
	display: inline;
}
.block{
	display: block;
}
.inlineBlock{
	display: inline-block;
}
.flex{
	display: flex;
}
/* display */

/* position */
.relative{
    position: relative;
}
.absolute{
    position: absolute;
}
/* position */

/* 左右位置 */
.floatLeft{
	float: left;
}
.floatRight{
	float: right;
}
.alignLeft{
	text-align: left;
}
.alignRight{
	text-align: right;
}
.alignCenter{
	text-align: center;
}
.blockCenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* 幅可変時 */
.tableCenter{
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.absoluteCenter{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
/* 左右位置 */


/* リストマーク　ドット */
.list-dot > li{
	margin-left: 1em;
	text-indent: -1em;
}
.list-dot > li:before{
	content: "・";
}
/* リストマーク　ドット */


/* リストマーク　黒丸 */
.list-circle > li{
	margin-left: 1em;
	text-indent: -1em;
}
.list-circle > li:before{
	content: "●";
}
/* リストマーク　黒丸 */


/* リストマーク右で行揃え indent */
.indent{
	margin-left: 1em;
	text-indent: -1em;
}
/* リストマーク右で行揃え indent */


/* 角括弧 */
.brackets:before{
	content: "[";
}
.brackets:after{
	content: "]";
}
/* 角括弧 */


/* 隅付き括弧 */
.corner-brackets:before{
	content: "【";
}
.corner-brackets:after{
	content: "】";
}
/* 隅付き括弧 */


.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

.hidden{
    overflow: hidden;
}
.underline{
    text-decoration: underline;
}
.imgFullWidth{
	display: block;
	width: 100%;
	height: auto;
}

/* 要素下間隔（最後にはmarginを入れない） */
.interval05em > *:not(:last-child){
	margin-bottom: 0.5em;
}
.interval1em > *:not(:last-child){
	margin-bottom: 1em;
}
.interval15em > *:not(:last-child){
	margin-bottom: 1.5em;
}
.interval2em > *:not(:last-child){
	margin-bottom: 2em;
}
/* 要素下間隔（最後にはmarginを入れない） */


/* 横並びfloat */
.wrapSbs:after{
	content:"";
	display:block;
	clear:both;
}
.wrapSbs > *{
	float: left;
	display: inline-block;
}
/* 横並びfloat */


/* 左右 float */
.wrapLR:after{
	content:"";
	display:block;
	clear:both;
}
.wrapLR > *:first-child{
	float: left;
	display: inline-block;
}
.wrapLR > *:last-child{
	float: right;
	display: inline-block;
}
/* 左右 float */


/* 画像拡大・戻り zoom */
.zoom{
    -moz-transform: scale3d(1.0,1.0,1.0);
    -webkit-transform: scale3d(1.0,1.0,1.0);
    -o-transform: scale3d(1.0,1.0,1.0);
    -ms-transform: scale3d(1.0,1.0,1.0);
    transition: transform 0.2s;
}
.zoom:hover{
    -moz-transform: scale3d(1.2,1.2,1.2);
    -webkit-transform: scale3d(1.2,1.2,1.2);
    -o-transform: scale3d(1.2,1.2,1.2);
    -ms-transform: scale3d(1.2,1.2,1.2);
    transition: transform 0.2s;
}
/* 画像拡大・戻り zoom */


/* カッコ付数字リスト parentheses */
.parentheses-num > li{
    list-style-position: inside;
    counter-increment: parentheses-cnt;
	margin-left: 2em;
	text-indent: -2em;
}
.parentheses-num > li:before{
    content: "(" counter(parentheses-cnt) ")";
	display: inline-block;
	width: 2em;
	text-align: right;
}
/* カッコ付数字リスト parentheses */


/* ピリオド数字リスト period */
.period-num > li{
	list-style-position: inside;
	counter-increment: period-cnt;
	margin-left: 1em;
	text-indent: -1em;
}
.period-num > li:before{
	content: counter(period-cnt) ".";
}
/* ピリオド数字リスト period */


/* 丸数字リスト */
.circle-num > li{
	margin-left: 1em;
	text-indent: -1em;
}
.circle-num > li:nth-child(1):before{
	content: "\2460";
}
.circle-num > li:nth-child(2):before{
	content: "\2461";
}
.circle-num > li:nth-child(3):before{
	content: "\2462";
}
.circle-num > li:nth-child(4):before{
	content: "\2463";
}
.circle-num > li:nth-child(5):before{
	content: "\2464";
}
.circle-num > li:nth-child(6):before{
	content: "\2465";
}
.circle-num > li:nth-child(7):before{
	content: "\2466";
}
.circle-num > li:nth-child(8):before{
	content: "\2467";
}
.circle-num > li:nth-child(9):before{
	content: "\2468";
}
.circle-num > li:nth-child(10):before{
	content: "\2469";
}


.circle-num1:before{
	content: "\2460";
}
.circle-num2:before{
	content: "\2461";
}
.circle-num3:before{
	content: "\2462";
}
.circle-num4:before{
	content: "\2463";
}
.circle-num5:before{
	content: "\2464";
}
/* 丸数字リスト */

/* ※印リスト */
.list-caution > li{
	margin-left: 1em;
	text-indent: -1em;
}
.list-caution > li:before{
	content: "※";
}
/* ※印リスト */


/* ピリオド数字リスト period */
.wrap-num-period > *{
	list-style-position: inside;
	counter-increment: num-cnt;
}
.num-period:before{
	content: counter(num-cnt) ".";
}
/* ピリオド数字リスト period */


/* アイコンチェックマークリスト */
.icon-check li:before{
	font-family: FontAwesome;
	content: "\f046";
	margin-right: 0.5em;
}
/* アイコンチェックマークリスト */

/* 上下のグラデーション */
.gradation-top,
.gradation-bottom{
	position: relative;
}
.gradation-top:before{
	content: "";
	position: absolute;
	top: -10px;
	display: block;
	width: 100%;
	height: 10px;
	
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 99%, rgba(0,0,0,0.1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 99%,rgba(0,0,0,0.1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 99%,rgba(0,0,0,0.1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
	
}
.gradation-bottom:after{
	content: "";
	position: absolute;
	bottom: -10px;
	display: block;
	width: 100%;
	height: 10px;
	
	background: -moz-linear-gradient(top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.1) 1%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.1) 0%,rgba(0,0,0,0.1) 1%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%,rgba(0,0,0,0.1) 1%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}
/* 上下のグラデーション */


/* object-fit */
.object-fit-cover{
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
.object-fit-contain{
	object-fit: contain;
	font-family: 'object-fit: contain;';
}
/* object-fit */


/* margin */
.mB05em{
    margin-bottom: 0.5em;
}
.mB1em{
    margin-bottom: 1em;
}
.mB2em{
    margin-bottom: 2em;
}
.mB3em{
    margin-bottom: 3em;
}
.mB4em{
    margin-bottom: 4em;
}
.mB5em{
    margin-bottom: 5em;
}
.mB6em{
    margin-bottom: 6em;
}
.mB7em{
    margin-bottom: 7em;
}
.mB8em{
    margin-bottom: 8em;
}
.mB9em{
    margin-bottom: 9em;
}
.mB10em{
    margin-bottom: 10em;
}
/* margin */

.weightBold{
	font-weight: bold;
}
.weightNomal{
	font-weight: normal;
}
.underline{
	text-decoration: underline;
}

.lineMarker{
	position: relative;
	z-index: 1;
}
.lineMarker:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 5px;
	width: 100%;
	background: #ff9baf;
	z-index: -1;
}
.back{
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: auto;
	z-index: 1;
}
.front{
	position: relative;
	z-index: 10;
}
/* ////////////////////
PC,SP共通 
//////////////////// */

/* ////////////////////
PCのみ
//////////////////// */
@media screen and (min-width:641px) , print {
	.sp{
		display: none;
	}
	.pcFloatLeft{
		float: left;
		display: inline-block;
	}
	.pcFloatRight{
		float: right;
		display: inline-block;
	}
	
	.pcAlignLeft{
		text-align: left;
	}
	.pcAlignRight{
		text-align: right;
	}
	.pcAlignCenter{
		text-align: center;
	}
	
	
	/* 横並びfloat */
	.pcWrapSbs:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapSbs > *{
		float: left;
		display: inline-block;
	}
	/* 横並びfloat */
	
	
	/* 左右 float */
	.pcWrapLR:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapLR > *:first-child{
		float: left;
		display: inline-block;
	}
	.pcWrapLR > *:last-child{
		float: right;
		display: inline-block;
	}
	/* 左右 float */
	
	
	/* 右左 float */
	.pcWrapRL:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapRL > *:first-child{
		float: right;
		display: inline-block;
	}
	.pcWrapRL > *:last-child{
		float: left;
		display: inline-block;
	}
	/* 右左 float */
	
	
	/* margin */
	.pcMB5px{
		margin-bottom: 5px;
	}
	.pcMB10px{
		margin-bottom: 10px;
	}
	.pcMB15px{
		margin-bottom: 15px;
	}
	.pcMB20px{
		margin-bottom: 20px;
	}
	.pcMB25px{
		margin-bottom: 25px;
	}
	.pcMB30px{
		margin-bottom: 30px;
	}
	.pcMB35px{
		margin-bottom: 35px;
	}
	.pcMB40px{
		margin-bottom: 40px;
	}
	.pcMB45px{
		margin-bottom: 45px;
	}
	.pcMB50px{
		margin-bottom: 50px;
	}
	.pcMB60px{
		margin-bottom: 60px;
	}
	.pcMB70px{
		margin-bottom: 70px;
	}
	.pcMB80px{
		margin-bottom: 80px;
	}
	.pcMB90px{
		margin-bottom: 90px;
	}
	.pcMB100px{
		margin-bottom: 100px;
	}
	/* margin */
}
/* ////////////////////
PCのみ
//////////////////// */

/* ////////////////////
SPのみ
//////////////////// */
@media screen and (max-width: 640px){
	.pc{
		display: none;
	}
	.spFloatLeft{
		float: left;
	}
	.spFloatRight{
		float: right;
	}
	
	/* 横並びfloat 2列 */
	.spWrapSbs2:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapSbs2{
		margin: -1.5%;
	}
	.spWrapSbs2 > *{
		float: left;
		margin: 1.5%;
		width: 47%;
	}
	.spWrapSbs2 > * img{
		width: 100%;
		height: auto;
	}
	/* 横並びfloat 2列 */
	
	/* 横並びfloat 3列 */
	.spWrapSbs3:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapSbs3{
		margin: -1.5%;
	}
	.spWrapSbs3 > *{
		float: left;
		margin: 1.5%;
		width: 30.3%;
	}
	.spWrapSbs3 > * img{
		width: 100%;
		height: auto;
	}
	/* 横並びfloat 3列 */
	
	
	/* 左右 float */
	.spWrapLR:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapLR > *:first-child{
		float: left;
		display: inline-block;
	}
	.spWrapLR > *:last-child{
		float: right;
		display: inline-block;
	}
	/* 左右 float */
	
	
	/* 右左 float */
	.spWrapRL:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapRL > *:first-child{
		float: right;
		display: inline-block;
	}
	.spWrapRL > *:last-child{
		float: left;
		display: inline-block;
	}
	/* 右左 float */
	
	
	.spFullWidth{
		width: 100%;
		height: auto;
	}
	.spImgFullWidth{
		display: block;
		width: 100%;
		height: auto;
	}
	
	/* table モバイル時リスト表示 list-table */
	.list-table > tbody > tr{
		display: block;
		width: 100%;
	}
	.list-table > tbody > tr > th,
	.list-table > tbody > tr > td{
		display: list-item;
		width: 100%;
		list-style-type: none;
		box-sizing: border-box;
	}
	/* table モバイル時リスト表示 list-table */
	
	/* margin */
	.spMB1vw{
		margin-bottom: 1vw;
	}
	.spMB2vw{
		margin-bottom: 2vw;
	}
	.spMB3vw{
		margin-bottom: 3vw;
	}
	.spMB4vw{
		margin-bottom: 4vw;
	}
	.spMB5vw{
		margin-bottom: 5vw;
	}
	.spMB10vw{
		margin-bottom: 10vw;
	}
	.spMB15vw{
		margin-bottom: 15vw;
	}
	.spMB20vw{
		margin-bottom: 20vw;
	}
	.spMB25vw{
		margin-bottom: 25vw;
	}
	.spMB30vw{
		margin-bottom: 30vw;
	}
	.spMB35vw{
		margin-bottom: 35vw;
	}
	.spMB40vw{
		margin-bottom: 40vw;
	}
	.spMB45vw{
		margin-bottom: 45vw;
	}
	.spMB50vw{
		margin-bottom: 50vw;
	}
	.spMB60vw{
		margin-bottom: 60vw;
	}
	.spMB70vw{
		margin-bottom: 70vw;
	}
	.spMB80vw{
		margin-bottom: 80vw;
	}
	.spMB90vw{
		margin-bottom: 90vw;
	}
	.spMB100vw{
		margin-bottom: 100vw;
	}
	/* margin */
}
/* ////////////////////
SPのみ
//////////////////// */