@charset "utf-8";
/* CSS Document */


/* ================= 目次 ======================

　1.  Body
　2.  reset.cssの追加分・レスポンシブ用imgの追加分
　3.  リンク・display:block or none;
　4.  フォント（font-size、color、font-weight、text-align、vertical-align）
　5.  レイアウト（container、block、float、column、hr）
　6.  パディング・マージン・横幅
　7.  背景（background、border）
　8.  リストスタイル
　9.  テーブル
　10. ロールオーバー
　11. clearfix

============================================= */





/* ----------------------------------------------
　1.  Body
---------------------------------------------- */


html { font-size: 62.5%; }

@import url(https://fonts.googleapis.com/css?family=Lato:400,700);

body {
	font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4rem;
	font-size: 14px;
	color: #333;
	line-height: 1.8;
	width: 100%;
	-webkit-text-size-adjust: 100%;
}

/* ----------------------------------------------
　2.  reset.cssの追加分
---------------------------------------------- */


li {
	list-style: none;
}

html {	/* htmlに */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	     -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	        box-sizing: border-box;
}
*, *:before, *:after {	/* html内の全ての要素に継承 */
	-webkit-box-sizing: inherit;
	   -moz-box-sizing: inherit;
	     -o-box-sizing: inherit;
	    -ms-box-sizing: inherit;
	        box-sizing: inherit;
}

img {
	width: auto\9;
	height: auto;
	max-width: 100%;
	vertical-align: middle;
	border: 0;
	-ms-interpolation-mode: bicubic;
}

address {
	font-style: normal;
}



/* ----------------------------------------------
　3.  リンク・display:block or none;
---------------------------------------------- */


/*--- リンク ----------*/

a:link,
a:visited,
a:active {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #FF0;
	text-decoration: none;
}


/*--- display ----------*/

.dBl {
	display: block;
}
.dNo {
	display: none;
}
.dNoPc {	/* PCのみnone */
	display: none;
}
@media screen and (max-width: 767px) {
.dNoPc {	/* PCのみnone */
	display: block;
}
.dNoMb {	/* MBのみnone */
	display: none;
}
}


/* ----------------------------------------------
　4.  フォント（font-size、color、font-weight、text-align）
---------------------------------------------- */


/*--- font-size ----------*/

.ft10 { font-size: 10px !important; font-size: 1.0rem !important; }
.ft11 { font-size: 11px !important; font-size: 1.1rem !important; }
.ft12 { font-size: 12px !important; font-size: 1.2rem !important; }
.ft13 { font-size: 13px !important; font-size: 1.3rem !important; }
.ft14 { font-size: 14px !important; font-size: 1.4rem !important; }
.ft15 { font-size: 15px !important; font-size: 1.5rem !important; }
.ft16 { font-size: 16px !important; font-size: 1.6rem !important; }
.ft17 { font-size: 17px !important; font-size: 1.7rem !important; }
.ft18 { font-size: 18px !important; font-size: 1.8rem !important; }
.ft19 { font-size: 19px !important; font-size: 1.9rem !important; }
.ft20 { font-size: 20px !important; font-size: 2.0rem !important; }
.ft21 { font-size: 21px !important; font-size: 2.1rem !important; }
.ft22 { font-size: 22px !important; font-size: 2.2rem !important; }
.ft23 { font-size: 23px !important; font-size: 2.3rem !important; }
.ft24 { font-size: 24px !important; font-size: 2.4rem !important; }
.ft25 { font-size: 25px !important; font-size: 2.5rem !important; }
.ft30 { font-size: 30px !important; font-size: 3.0rem !important; }
.ft35 { font-size: 35px !important; font-size: 3.5rem !important; }
.ft40 { font-size: 40px !important; font-size: 4.0rem !important; }
.ft45 { font-size: 45px !important; font-size: 4.5rem !important; }
.ft50 { font-size: 50px !important; font-size: 5.0rem !important; }
@media screen and (max-width: 767px) {
.ft10 { font-size:  8px !important; font-size: 0.8rem !important; }
.ft11 { font-size:  9px !important; font-size: 0.9rem !important; }
.ft12 { font-size: 10px !important; font-size: 1.0rem !important; }
.ft13 { font-size: 11px !important; font-size: 1.1rem !important; }
.ft14 { font-size: 12px !important; font-size: 1.2rem !important; }
.ft15 { font-size: 13px !important; font-size: 1.3rem !important; }
.ft16 { font-size: 14px !important; font-size: 1.4rem !important; }
.ft17 { font-size: 15px !important; font-size: 1.5rem !important; }
.ft18 { font-size: 16px !important; font-size: 1.6rem !important; }
.ft19 { font-size: 17px !important; font-size: 1.7rem !important; }
.ft20 { font-size: 18px !important; font-size: 1.8rem !important; }
.ft21 { font-size: 19px !important; font-size: 1.9rem !important; }
.ft22 { font-size: 20px !important; font-size: 2.0rem !important; }
.ft23 { font-size: 21px !important; font-size: 2.1rem !important; }
.ft24 { font-size: 22px !important; font-size: 2.2rem !important; }
.ft25 { font-size: 23px !important; font-size: 2.3rem !important; }
.ft30 { font-size: 28px !important; font-size: 2.8rem !important; }
.ft35 { font-size: 33px !important; font-size: 3.3rem !important; }
.ft40 { font-size: 38px !important; font-size: 3.8rem !important; }
.ft45 { font-size: 43px !important; font-size: 4.3rem !important; }
.ft50 { font-size: 48px !important; font-size: 4.8rem !important; }
}


/*--- color ----------*/

.clrRed    { color: #F44336 !important; }
.clrPink   { color: #E91E63 !important; }
.clrOrange { color: #FF5722 !important; }
.clrYellow { color: #FFC107 !important; }
.clrLime   { color: #8BC304 !important; }
.clrGreen  { color: #4CAF50 !important; }
.clrCyan   { color: #00BCD4 !important; }
.clrBlue   { color: #1976D2 !important; }
.clrNavy   { color: #303F9F !important; }
.clrPurple { color: #9C27B0 !important; }
.clrBrown  { color: #5D4037 !important; }
.clrBlack  { color: #000000 !important; }
.clrWhite  { color: #FFFFFF !important; }
.clrGray   { color: #9E9E9E !important; }


/*--- font-weight ----------*/

.ftB { font-weight: bold; }


/*--- text-align ----------*/

.txL { text-align:   left; }
.txC { text-align: center; }
.txR { text-align:  right; }


/*--- vertical-align ----------*/

.vaT, .vaM ,.vaB ,.vaBl { display: table-cell; }
.vaT  { vertical-align:      top; }
.vaM  { vertical-align:   middle; }
.vaB  { vertical-align:   bottom; }
.vaBl { vertical-align: baseline; }

/* ----------------------------------------------
　5.  レイアウト（contents、block、float、column、hr）
---------------------------------------------- */

/*--- float ----------*/

.flL { float:  left; }
.flR { float: right; }
.flLPc { float:  left; }
.flRPc { float: right; }
@media screen and (max-width: 767px) {
.flLPc,
.flRPc { float: none; }
}


/*--- float（画像のfloat） ----------*/

.flImgL { float:  left; margin-right: 10px; }
.flImgR { float: right; margin-left:  10px; }
.flImgLPc { float:  left; margin-right: 10px; }
.flImgRPc { float: right; margin-left:  10px; }
@media screen and (max-width: 767px) {
.flImgLPc,
.flImgRPc { float: none; margin: 0 0 10px 0; width: 100%; }
}


/* ----------------------------------------------
　6.  パディング・マージン・横幅
---------------------------------------------- */


/*--- 中央配置 ----------*/

.mgC {
	margin-right: auto !important;
	margin-left : auto !important;	
}
	

/*--- 上 ----------*/

.mgT0  { margin-top:  0px !important; }
.mgT5  { margin-top:  5px !important; }
.mgT10 { margin-top: 10px !important; }
.mgT15 { margin-top: 15px !important; }
.mgT20 { margin-top: 20px !important; }
.mgT25 { margin-top: 25px !important; }
.mgT30 { margin-top: 30px !important; }
.mgT40 { margin-top: 40px !important; }
.mgT50 { margin-top: 50px !important; }
.pdT5  { padding-top: 5px !important; }
.pdT10 { padding-top:10px !important; }
.pdT15 { padding-top:15px !important; }
.pdT20 { padding-top:20px !important; }
.pdT25 { padding-top:25px !important; }
.pdT30 { padding-top:30px !important; }
.pdT40 { padding-top:40px !important; }
.pdT50 { padding-top:50px !important; }


/*--- 右 ----------*/

.mgR0  { margin-right:  0px !important; }
.mgR10 { margin-right: 10px !important; }
.mgR15 { margin-right: 15px !important; }
.mgR20 { margin-right: 20px !important; }
.mgR25 { margin-right: 25px !important; }
.mgR30 { margin-right: 30px !important; }
.mgR40 { margin-right: 40px !important; }
.mgR50 { margin-right: 50px !important; }
.pdR5  { padding-right: 5px !important; }
.pdR10 { padding-right:10px !important; }
.pdR15 { padding-right:15px !important; }
.pdR20 { padding-right:20px !important; }
.pdR25 { padding-right:25px !important; }
.pdR30 { padding-right:30px !important; }
.pdR40 { padding-right:40px !important; }
.pdR50 { padding-right:50px !important; }


/*--- 左 ----------*/

.mgL0  { margin-left:  0px !important; }
.mgL10 { margin-left: 10px !important; }
.mgL15 { margin-left: 15px !important; }
.mgL20 { margin-left: 20px !important; }
.mgL25 { margin-left: 25px !important; }
.mgL30 { margin-left: 30px !important; }
.mgL40 { margin-left: 40px !important; }
.mgL50 { margin-left: 50px !important; }
.pdL5  { padding-left: 5px !important; }
.pdL10 { padding-left:10px !important; }
.pdL15 { padding-left:15px !important; }
.pdL20 { padding-left:20px !important; }
.pdL25 { padding-left:25px !important; }
.pdL30 { padding-left:30px !important; }
.pdL40 { padding-left:40px !important; }
.pdL50 { padding-left:50px !important; }


/*--- 下 ----------*/

.mgB0  { margin-bottom:  0px !important; }
.mgB5  { margin-bottom:  5px !important; }
.mgB10 { margin-bottom: 10px !important; }
.mgB15 { margin-bottom: 15px !important; }
.mgB20 { margin-bottom: 20px !important; }
.mgB25 { margin-bottom: 25px !important; }
.mgB30 { margin-bottom: 30px !important; }
.mgB40 { margin-bottom: 40px !important; }
.mgB50 { margin-bottom: 50px !important; }
.pdB5  { padding-bottom: 5px !important; }
.pdB10 { padding-bottom:10px !important; }
.pdB15 { padding-bottom:15px !important; }
.pdB20 { padding-bottom:20px !important; }
.pdB25 { padding-bottom:25px !important; }
.pdB30 { padding-bottom:30px !important; }
.pdB40 { padding-bottom:40px !important; }
.pdB50 { padding-bottom:50px !important; }


/*--- 上下 ----------*/

.mgTB0  { margin-top:  0px !important; margin-bottom:  0px !important; }
.mgTB5  { margin-top:  5px !important; margin-bottom:  5px !important; }
.mgTB10 { margin-top: 10px !important; margin-bottom: 10px !important; }
.mgTB15 { margin-top: 15px !important; margin-bottom: 15px !important; }
.mgTB20 { margin-top: 20px !important; margin-bottom: 20px !important; }
.mgTB20 { margin-top: 25px !important; margin-bottom: 25px !important; }
.mgTB30 { margin-top: 30px !important; margin-bottom: 30px !important; }
.mgTB40 { margin-top: 40px !important; margin-bottom: 40px !important; }
.mgTB50 { margin-top: 50px !important; margin-bottom: 50px !important; }
.pdTB5  { padding-top: 5px !important; padding-bottom: 5px !important; }
.pdTB10 { padding-top:10px !important; padding-bottom:10px !important; }
.pdTB15 { padding-top:15px !important; padding-bottom:15px !important; }
.pdTB20 { padding-top:20px !important; padding-bottom:20px !important; }
.pdTB25 { padding-top:25px !important; padding-bottom:25px !important; }
.pdTB30 { padding-top:30px !important; padding-bottom:30px !important; }
.pdTB40 { padding-top:40px !important; padding-bottom:40px !important; }
.pdTB50 { padding-top:50px !important; padding-bottom:50px !important; }


/*--- 左右 ----------*/

.mgLR0  { margin-left:  0px !important; margin-right:  0px !important; }
.mgLR10 { margin-left: 10px !important; margin-right: 10px !important; }
.mgLR15 { margin-left: 15px !important; margin-right: 15px !important; }
.mgLR20 { margin-left: 20px !important; margin-right: 20px !important; }
.mgLR25 { margin-left: 25px !important; margin-right: 25px !important; }
.mgLR30 { margin-left: 30px !important; margin-right: 30px !important; }
.mgLR40 { margin-left: 40px !important; margin-right: 40px !important; }
.mgLR50 { margin-left: 50px !important; margin-right: 50px !important; }
.pdLR5  { padding-left: 5px !important; padding-right: 5px !important; }
.pdLR10 { padding-left:10px !important; padding-right:10px !important; }
.pdLR15 { padding-left:15px !important; padding-right:15px !important; }
.pdLR20 { padding-left:20px !important; padding-right:20px !important; }
.pdLR25 { padding-left:25px !important; padding-right:25px !important; }
.pdLR30 { padding-left:30px !important; padding-right:30px !important; }
.pdLR40 { padding-left:40px !important; padding-right:40px !important; }
.pdLR50 { padding-left:50px !important; padding-right:50px !important; }


/*--- 全体 ----------*/

.mgA0  { margin:  0px !important; }
.mgA10 { margin: 10px !important; }
.mgA15 { margin: 15px !important; }
.mgA20 { margin: 20px !important; }
.mgA25 { margin: 25px !important; }
.mgA30 { margin: 30px !important; }
.mgA40 { margin: 40px !important; }
.mgA50 { margin: 50px !important; }
.pdA5  { padding: 5px !important; }
.pdA10 { padding:10px !important; }
.pdA15 { padding:15px !important; }
.pdA20 { padding:20px !important; }
.pdA25 { padding:25px !important; }
.pdA30 { padding:30px !important; }
.pdA40 { padding:40px !important; }
.pdA50 { padding:50px !important; }


/*--- 横幅 ----------*/

/* ピクセル */
.w1000 { width: 1000px; }
.w950  { width:  950px; }
.w900  { width:  900px; }
.w850  { width:  850px; }
.w800  { width:  800px; }
.w750  { width:  750px; }
.w700  { width:  700px; }
.w650  { width:  650px; }
.w600  { width:  600px; }
.w550  { width:  550px; }
.w500  { width:  500px; }
.w450  { width:  450px; }
.w400  { width:  400px; }
.w350  { width:  350px; }
.w300  { width:  300px; }
.w250  { width:  250px; }
.w200  { width:  200px; }
.w150  { width:  150px; }
.w100  { width:  100px; }
.w50   { width:   50px; }

/* パーセント */
.wP100 { width: 100%; }
.wP95  { width:  95%; }
.wP90  { width:  90%; }
.wP85  { width:  85%; }
.wP80  { width:  80%; }
.wP75  { width:  75%; }
.wP70  { width:  70%; }
.wP65  { width:  65%; }
.wP60  { width:  60%; }
.wP55  { width:  55%; }
.wP50  { width:  50%; }
.wP45  { width:  45%; }
.wP40  { width:  40%; }
.wP35  { width:  35%; }
.wP30  { width:  30%; }
.wP25  { width:  25%; }
.wP20  { width:  20%; }
.wP15  { width:  15%; }
.wP10  { width:  10%; }
.wP5   { width:   5%; }



/* ----------------------------------------------
　7.  背景（background、border）
---------------------------------------------- */


/*--- background-color ----------*/

.bgRed    { background-color: #F44336 !important; }
.bgPink   { background-color: #E91E63 !important; }
.bgOrange { background-color: #FF5722 !important; }
.bgYellow { background-color: #FFEB3B !important; }
.bgLime   { background-color: #8BC34A !important; }
.bgGreen  { background-color: #4CAF50 !important; }
.bgCyan   { background-color: #00BCD4 !important; }
.bgBlue   { background-color: #1976D2 !important; }
.bgNavy   { background-color: #303F9F !important; }
.bgPurple { background-color: #9C27B0 !important; }
.bgBrown  { background-color: #5D4037 !important; }
.bgBlack  { background-color: #000000 !important; }
.bgWhite  { background-color: #FFFFFF !important; }
.bgGray   { background-color: #9E9E9E !important; }


/*--- background-color（淡い色[undertone]） ----------*/

.bgUPink   { background-color: #FDE3ED !important; }
.bgUCyan   { background-color: #C9F1F5 !important; }
.bgUYellow { background-color: #FFF9C4 !important; }
.bgUGreen  { background-color: #F2F5CD !important; }
.bgUGray   { background-color: #EAEAEA !important; }


/*--- background-image（テクスチャ） ----------*/

.bgTNote   { background-image: url(../../img/texture/note.jpg) !important; }
.bgTCanvas { background-image: url(../../img/texture/canvas.jpg) !important; }
.bgTGrid   { background-image: url(../../img/texture/grid.jpg) !important; }
.bgTCork   { background-image: url(../../img/texture/cork.jpg) !important; }
.bgTWood   { background-image: url(../../img/texture/wood.jpg) !important; }


/*--- border ----------*/

.bdRed    { border: 1px solid #F44336 !important; }
.bdPink   { border: 1px solid #E91E63 !important; }
.bdOrange { border: 1px solid #FF5722 !important; }
.bdYellow { border: 1px solid #FFEB3B !important; }
.bdLime   { border: 1px solid #8BC34A !important; }
.bdGreen  { border: 1px solid #4CAF50 !important; }
.bdCyan   { border: 1px solid #00BCD4 !important; }
.bdBlue   { border: 1px solid #1976D2 !important; }
.bdNavy   { border: 1px solid #303F9F !important; }
.bdPurple { border: 1px solid #9C27B0 !important; }
.bdBrown  { border: 1px solid #5D4037 !important; }
.bdBlack  { border: 1px solid #000000 !important; }
.bdWhite  { border: 1px solid #FFFFFF !important; }
.bdGray   { border: 1px solid #CCCCCC !important; }

.bd1  { border-width:  1px !important; }
.bd2  { border-width:  2px !important; }
.bd3  { border-width:  3px !important; }
.bd4  { border-width:  4px !important; }
.bd5  { border-width:  5px !important; }
.bd6  { border-width:  6px !important; }
.bd7  { border-width:  7px !important; }
.bd8  { border-width:  8px !important; }
.bd9  { border-width:  9px !important; }
.bd10 { border-width: 10px !important; }



/* ----------------------------------------------
　8.  リストスタイル
---------------------------------------------- */


ul.lsDisc li,
ul.lsCircle li,
ul.lsSquare li {
	text-indent: -2.8rem;
	padding-left: 2.8rem;
}
ol.lsDecimal li,
ol.lsUpperAlpha li,
ol.lsLowerAlpha li {
	text-indent: -1.9rem;
	padding-left: 1.9rem;
}
@media screen and (max-width: 767px) {
ul.lsDisc li,
ul.lsCircle li,
ul.lsSquare li {
	text-indent: -1.2rem;
	padding-left: 1.2rem;
}
ol.lsDecimal li,
ol.lsUpperAlpha li,
ol.lsLowerAlpha li {
	text-indent: -1.2rem;
	padding-left: 1.2rem;
}
}
ul.lsDisc li {
	list-style: inside disc;
}
ul.lsCircle li {
	list-style: inside circle;
}
ul.lsSquare li {
	list-style: inside square;
}
ol.lsDecimal li {
	list-style: inside decimal;
}
ol.lsUpperAlpha li {
	list-style: inside upper-alpha;
}
ol.lsLowerAlpha li {
	list-style: inside lower-alpha;
}



/* ----------------------------------------------
　9.  テーブル
---------------------------------------------- */


table {
	text-align: left;
	width: 100%;
	border-collapse: collapse;
}
table th,
table td {
	padding: 10px;
	border: 1px solid #BBB;
}



/* ----------------------------------------------
　10. ロールオーバー
---------------------------------------------- */


a:hover > img.ro {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}



/* ----------------------------------------------
　11. clearfix
---------------------------------------------- */


.clear {
	clear: both;
	_zoom: 1;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
}

/*--- cssハック ----------*/

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

.clearfix {
	display: inline-block;
}

/*--- hides IE-mac \ ----------*/

*html .clearfix { height: 1% }
.clearfix { display: block; }

/*--- hide  IE-mac ----------*/