@charset "utf-8";
/* ------------------------------------------------------------

base

------------------------------------------------------------ */


/* reset
------------------------------------------------------------ */
html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
	font-size:62.5%;
}
body {
	margin:0;
	padding:0;
	background:#ffffff;
	font-size:1.4rem;
	line-height:2em;
	letter-spacing:0.05em;
	color: #111111;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	-webkit-backface-visibility: hidden;
}

@media screen and (max-width: 768px) {
body {
	font-size:1.2rem;
	line-height:2em;
	letter-spacing:0.05em;
}
}

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 { margin:0px; padding:0px; list-style-type:none; }
h1,h2,h3,h4,h5,h6 { font-size:100%; font-weight:normal; }
img { vertical-align:middle; border:none; }
em { font-style:normal; }
a,button { outline:0; }




/* 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; }
.mtem1 { margin-top:1em;}

@media screen and (min-width: 768px) {
	.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; }
	.mt100pc { margin-top:100px!important; }
	.mt110pc { margin-top:110px!important; }
	.nmt70pc { margin-top:-70px!important; }
}
@media screen and (max-width: 768px) {
	.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; }
}


/* 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; }



/* 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; }
.mbem1 { margin-bottom:1em;}

@media screen and (min-width: 768px) {
	.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; }
}

@media screen and (max-width: 768px) {
	.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; }
}



/* 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 (min-width: 768px) {
	.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; }
}
@media screen and (max-width: 768px) {
	.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; }
}



/* 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 (min-width: 768px) {
	.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; }
}

@media screen and (max-width: 768px) {
	.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; }
}




/* 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 (min-width: 769px) {
	.pt10pc { padding-top:10px!important; }
	.pt20pc { padding-top:20px!important; }
	.pt30pc { padding-top:30px!important; }
	.pt40pc { padding-top:40px!important; }
	.pt50pc { padding-top:50px!important; }
}
@media screen and (max-width: 768px) {
	.pt10sp { padding-top:10px!important; }
	.pt20sp { padding-top:20px!important; }
	.pt30sp { padding-top:30px!important; }
	.pt40sp { padding-top:40px!important; }
	.pt50sp { padding-top:50px!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; }



/* 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; }



/* 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; }



/* 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; }






/* width
------------------------------------------------------------ */
.w50 { width:50px!important; }
.w60 { width:60px!important; }
.w70 { width:70px!important; }
.w80 { width:80px!important; }
.w90 { width:90px!important; }
.w100 { width:100px!important; }
.w110 { width:110px!important; }
.w120 { width:120px!important; }
.w130 { width:130px!important; }
.w140 { width:140px!important; }
.w150 { width:150px!important; }
.w160 { width:160px!important; }
.w170 { width:170px!important; }
.w180 { width:180px!important; }
.w190 { width:190px!important; }
.w200 { width:200px!important; }
.w220 { width:220px!important; }
.w230 { width:230px!important; }
.w240 { width:240px!important; }
.w260 { width:260px!important; }
.w280 { width:280px!important; }
.w320 { width:320px!important; }
.w400 { width:400px!important; }



/* layout style
------------------------------------------------------------ */
.fL { float:left; display: inline; }
.fR { float:right; display: inline; }
.clear { clear:both; }

.taL { text-align: left; }
.taC { text-align: center; }
.taR { text-align: right; }

@media screen and (max-width: 768px) {
	.taCsp { text-align: center; }
}

@media screen and (min-width: 769px) {
	.taLpc { text-align: left; }
	.taCpc { text-align: center; }
	.taRpc { text-align: right; }
}
@media screen and (max-width: 768px) {
	.taLsp { text-align: left; }
	.taCsp { text-align: center; }
	.taRsp { text-align: right; }
}



/* font style
------------------------------------------------------------ */

.fs12 { font-size:1.2rem; line-height:1.5em; }
.fs14 { font-size:1.4rem; line-height:1.5em; }

.fsU1 { font-size:1.15em!important; line-height:2em;}
.fsU2 { font-size:1.29em!important; line-height:2em;}
.fsU3 { font-size:1.43em!important; line-height:2em;}
.fsU4 { font-size:1.58em!important; line-height:2em;}
.fsU5 { font-size:1.72em!important; line-height:2em;}

.fsD1 { font-size:0.86em!important; line-height:2em;}
.fsD2 { font-size:0.72em!important; line-height:2em;}
.fsD3 { font-size:0.58em!important; line-height:2em;}

.fwb { font-weight: bold; }
.fwn { font-weight: normal; }

.fcWhi { color:#ffffff; }
.fcBra { color:#92771a; }
.fcRed { color:#c40813; }
.fcOre { color:#b66200; }

.diib { display:inline-block; }


/* link
------------------------------------------------------------ */
a {
	color:#111111;
	text-decoration:underline; 
	-webkit-transition: all 0.5s ease;
	transition:all 0.5s ease;
	outline: none;
}
a:hover {
	text-decoration:none;
}
area{ border:none; outline:none; }

.ov {
	-webkit-transition: all 0.5s ease;
	transition:all 0.5s ease;
}
.ov:hover {
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	opacity:0.6; 
	zoom:1; /*IE*/
}


/* overflow
------------------------------------------------------------ */
.ofh { overflow: hidden;}



/* br
------------------------------------------------------------ */

@media screen and (min-width: 769px) {
	.pc { display:block; }
	.sp { display:none; }
	.pcib { display:inline-block; }
}
@media screen and (max-width: 768px) {
	.sp { display:block; }
	.pc { display:none; }
	.pcib { display:none; }
}



/* parts
------------------------------------------------------------ */
/* -- ルビ -- */
.ruby {
	position:relative;
	line-height:1em;
}
.ruby .rt{
	font-size:10px;
	position:absolute;
	top:-14px;
	left:-40%;
	text-align:center;
	width:180%;
	display:block;
}


/* -- リスト -- */
.list {
	padding:20px 10px 0;
}
.list li {
	margin:5px 0;
	padding-left:1em;
	text-indent:-1em;
	text-align:left;
	font-size:1.2rem;
	line-height:1.8em;
}


/*----------------------------------------------------------
	animation
----------------------------------------------------------*/

.se {
	opacity:0;
}
.scrollUp {
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
	opacity: 0;
	-webkit-transition: 0.8s;
	transition: 0.8s;
}
.scrollUp.is-animated {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1; 
}



/* clearfix
------------------------------------------------------------ */
.cf:after {
  visibility:hidden;
  display:block;
  font-size:0;
  content:" ";
  clear:both;
  height:0;
}
* html .cf { zoom:1; } /* IE6 */
*:first-child+html .cf { zoom:1; } /* IE7 */


