@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Fjalla+One&subset=latin-ext');

/* CSS Document 
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
*/

/* ================= 目次 ======================

　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%; }


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%;
}
@media screen and (min-width: 767px) {
body {
	min-width: 1000px;
}
}
@media screen and (max-width: 767px) {
body {
	font-size: 1.2rem;
	font-size: 12px;
}
}

*/

/* ----------------------------------------------
　2.  reset.cssの追加分
---------------------------------------------- */

/*
li {
	list-style: none;
}

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 {	
	-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: #333;
	text-decoration: none;
}
a:hover {
	color: #1976D2;
	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;
}
}

/*--- youtube ----------*/

.youtube_rsp {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_rsp iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/* ----------------------------------------------
　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）
---------------------------------------------- */


/*--- container ----------*/

.container {width: 96%;margin: 0 2%; position: relative; }
.containerFull   { max-width: 100%; }	/* 横幅100% */
.containerFullPc { width: 100%; }	/* PCのみ横幅100% */
.container:after { clear: both; }
@media screen and (min-width: 1280px) {
.container {width: 1200px;margin: 0 auto;}
.containerFull   { max-width: 100%; margin : 0 auto; }	/* 横幅100% */
}
@media screen and (max-width: 767px) {
.container       { width:  96%; margin: 0   2%; }
.containerFull   { width: 100%; margin: 0 auto; }	/* 横幅100% */
.containerFullPc { width:  96%; margin: 0   2%; }	/* PCのみ横幅100% */
.containerFullMb { width: 100% !important; margin: 0; }	/* MBのみ横幅100% */
}


/*--- block ----------*/

.bl       { margin-bottom: 50px !important; }
.blBoder  { margin-bottom: 50px; border: 1px solid #BBB; padding: 20px; }
.blNotice { margin-bottom: 0px; border: 5px solid #F44336; padding: 20px; }
@media screen and (max-width: 767px) {
.blBoder,
.blNotice { margin: 0 10px 0px; padding: 10px; }
}


/*--- 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%; }
}

/*--- column（float） ----------*/

.clm2-1,
.clm2-2,
.clm3-1,
.clm3-2,
.clm3-3,
.clm4-1,
.clm4-2,
.clm4-4,
.clm5-1,
.clm5-3,
.clm5-5 { width: 100%; overflow: hidden; }
ul.clm2-1 > li, .clm2-1 > dl, .clm2-1 > div,
ul.clm2-2 > li, .clm2-2 > dl, .clm2-2 > div,
ul.clm3-1 > li, .clm3-1 > dl, .clm3-1 > div,
ul.clm3-2 > li, .clm3-2 > dl, .clm3-2 > div,
ul.clm3-3 > li, .clm3-3 > dl, .clm3-3 > div,
ul.clm4-1 > li, .clm4-1 > dl, .clm4-1 > div,
ul.clm4-2 > li, .clm4-2 > dl, .clm4-2 > div,
ul.clm4-4 > li, .clm4-4 > dl, .clm4-4 > div,
ul.clm5-1 > li, .clm5-1 > dl, .clm5-1 > div,
ul.clm5-3 > li, .clm5-3 > dl, .clm5-3 > div,
ul.clm5-5 > li, .clm5-5 > dl, .clm5-5 > div { float: left; margin-bottom: 20px; }
ul.clm2-1 > li a, .clm2-1 > dl > a, .clm2-1 > div > a,
ul.clm2-2 > li a, .clm2-2 > dl > a, .clm2-2 > div > a,
ul.clm3-1 > li a, .clm3-1 > dl > a, .clm3-1 > div > a,
ul.clm3-2 > li a, .clm3-2 > dl > a, .clm3-2 > div > a,
ul.clm3-3 > li a, .clm3-3 > dl > a, .clm3-3 > div > a,
ul.clm4-1 > li a, .clm4-1 > dl > a, .clm4-1 > div > a,
ul.clm4-2 > li a, .clm4-2 > dl > a, .clm4-2 > div > a,
ul.clm4-4 > li a, .clm4-4 > dl > a, .clm4-4 > div > a,
ul.clm5-1 > li a, .clm5-1 > dl > a, .clm5-1 > div > a,
ul.clm5-3 > li a, .clm5-3 > dl > a, .clm5-3 > div > a,
ul.clm5-5 > li a, .clm5-5 > dl > a, .clm5-5 > div > a { display: block; width: 100%; height: 100%; }
@media screen and (max-width: 767px) {
ul.clm2-1 > li, .clm2-1 > dl, .clm2-1 > div,
ul.clm2-2 > li, .clm2-2 > dl, .clm2-2 > div,
ul.clm3-1 > li, .clm3-1 > dl, .clm3-1 > div,
ul.clm3-2 > li, .clm3-2 > dl, .clm3-2 > div,
ul.clm3-3 > li, .clm3-3 > dl, .clm3-3 > div,
ul.clm4-1 > li, .clm4-1 > dl, .clm4-1 > div,
ul.clm4-2 > li, .clm4-2 > dl, .clm4-2 > div,
ul.clm4-4 > li, .clm4-4 > dl, .clm4-4 > div,
ul.clm5-1 > li, .clm5-1 > dl, .clm5-1 > div,
ul.clm5-3 > li, .clm5-3 > dl, .clm5-3 > div,
ul.clm5-5 > li, .clm5-5 > dl, .clm5-5 > div { float: left; margin-bottom: 10px; }
}

ul.clm2-1 > li, .clm2-1 > dl, .clm2-1 > div,
ul.clm2-2 > li, .clm2-2 > dl, .clm2-2 > div { width:   49%; margin-right: 2%; }
	ul.clm2-1 > li:nth-child(2n), .clm2-1 > dl:nth-child(2n), .clm2-1 > div:nth-child(2n),
	ul.clm2-2 > li:nth-child(2n), .clm2-2 > dl:nth-child(2n), .clm2-2 > div:nth-child(2n) { margin-right: 0; }
ul.clm3-1 > li, .clm3-1 > dl, .clm3-1 > div,
ul.clm3-2 > li, .clm3-2 > dl, .clm3-2 > div,
ul.clm3-3 > li, .clm3-3 > dl, .clm3-3 > div { width:   32%; margin-right: 2%; }
	ul.clm3-1 > li:nth-child(3n), .clm3-1 > dl:nth-child(3n), .clm3-1 > div:nth-child(3n),
	ul.clm3-2 > li:nth-child(3n), .clm3-2 > dl:nth-child(3n), .clm3-2 > div:nth-child(3n),
	ul.clm3-3 > li:nth-child(3n), .clm3-3 > dl:nth-child(3n), .clm3-3 > div:nth-child(3n) { margin-right: 0; }
ul.clm4-1 > li, .clm4-1 > dl, .clm4-1 > div,
ul.clm4-2 > li, .clm4-2 > dl, .clm4-2 > div,
ul.clm4-4 > li, .clm4-4 > dl, .clm4-4 > div { width: 23.5%; margin-right: 2%; }
	ul.clm4-1 > li:nth-child(4n), .clm4-1 > dl:nth-child(4n), .clm4-1 > div:nth-child(4n),
	ul.clm4-2 > li:nth-child(4n), .clm4-2 > dl:nth-child(4n), .clm4-2 > div:nth-child(4n),
	ul.clm4-4 > li:nth-child(4n), .clm4-4 > dl:nth-child(4n), .clm4-4 > div:nth-child(4n) { margin-right: 0; }
ul.clm5-1 > li, .clm5-1 > dl, .clm5-1 > div,
ul.clm5-3 > li, .clm5-3 > dl, .clm5-3 > div,
ul.clm5-5 > li, .clm5-5 > dl, .clm5-5 > div { width: 18.4%; margin-right: 2%; }
	ul.clm5-1 > li:nth-child(5n), .clm5-1 > dl:nth-child(5n), .clm5-1 > div:nth-child(5n),
	ul.clm5-3 > li:nth-child(5n), .clm5-3 > dl:nth-child(5n), .clm5-3 > div:nth-child(5n),
	ul.clm5-5 > li:nth-child(5n), .clm5-5 > dl:nth-child(5n), .clm5-5 > div:nth-child(5n) { margin-right: 0; }
@media screen and (max-width: 767px) {
ul.clm2-1 > li, .clm2-1 > dl, .clm2-1 > div,
ul.clm3-1 > li, .clm3-1 > dl, .clm3-1 > div,
ul.clm4-1 > li, .clm4-1 > dl, .clm4-1 > div,
ul.clm5-1 > li, .clm5-1 > dl, .clm5-1 > div { width: 100%; margin-right:  0; }
ul.clm3-2 > li, .clm3-2 > dl, .clm3-2 > div,
ul.clm4-2 > li, .clm4-2 > dl, .clm4-2 > div { width:  49%; margin-right: 2%; }
	ul.clm3-2 > li:nth-child(3n), .clm3-2 > dl:nth-child(3n), .clm3-2 > div:nth-child(3n) { margin-right: 2%; }
	ul.clm3-2 > li:nth-child(2n), .clm3-2 > dl:nth-child(2n), .clm3-2 > div:nth-child(2n) { margin-right:  0; }
	ul.clm4-2 > li:nth-child(2n), .clm4-2 > dl:nth-child(2n), .clm4-2 > div:nth-child(2n) { margin-right:  0; }
ul.clm5-3 > li, .clm5-3 > dl, .clm5-3 > div { width:  32%; margin-right: 2%; }
	ul.clm5-3 > li:nth-child(5n), .clm5-3 > dl:nth-child(5n), .clm5-3 > div:nth-child(5n) { margin-right: 2%; }
	ul.clm5-3 > li:nth-child(3n), .clm5-3 > dl:nth-child(3n), .clm5-3 > div:nth-child(3n) { margin-right:  0; }
}

/*--- column（inline-block） ----------*/

.clmIb2-1,
.clmIb2-2,
.clmIb3-1,
.clmIb3-2,
.clmIb3-3,
.clmIb4-1,
.clmIb4-2,
.clmIb4-4,
.clmIb5-1,
.clmIb5-3,
.clmIb5-5 { width: 100%; letter-spacing: -0.4em; }
ul.clmIb2-1 > li, .clmIb2-1 > dl, .clmIb2-1 > div,
ul.clmIb2-2 > li, .clmIb2-2 > dl, .clmIb2-2 > div,
ul.clmIb3-1 > li, .clmIb3-1 > dl, .clmIb3-1 > div,
ul.clmIb3-2 > li, .clmIb3-2 > dl, .clmIb3-2 > div,
ul.clmIb3-3 > li, .clmIb3-3 > dl, .clmIb3-3 > div,
ul.clmIb4-1 > li, .clmIb4-1 > dl, .clmIb4-1 > div,
ul.clmIb4-2 > li, .clmIb4-2 > dl, .clmIb4-2 > div,
ul.clmIb4-4 > li, .clmIb4-4 > dl, .clmIb4-4 > div,
ul.clmIb5-1 > li, .clmIb5-1 > dl, .clmIb5-1 > div,
ul.clmIb5-3 > li, .clmIb5-3 > dl, .clmIb5-3 > div,
ul.clmIb5-5 > li, .clmIb5-5 > dl, .clmIb5-5 > div { display: inline-block; letter-spacing: normal; }
ul.clmIb2-1 > li, .clmIb2-1 > dl, .clmIb2-1 > div,
ul.clmIb2-2 > li, .clmIb2-2 > dl, .clmIb2-2 > div { width: 50%; }
ul.clmIb3-1 > li, .clmIb3-1 > dl, .clmIb3-1 > div,
ul.clmIb3-2 > li, .clmIb3-2 > dl, .clmIb3-2 > div,
ul.clmIb3-3 > li, .clmIb3-3 > dl, .clmIb3-3 > div { width: 33.333%; }
	ul.clmIb3-1 > li:nth-child(3n+2), .clmIb3-1 > dl:nth-child(3n+2), .clmIb3-1 > div:nth-child(3n+2),
	ul.clmIb3-2 > li:nth-child(3n+2), .clmIb3-2 > dl:nth-child(3n+2), .clmIb3-2 > div:nth-child(3n+2),
	ul.clmIb3-3 > li:nth-child(3n+2), .clmIb3-3 > dl:nth-child(3n+2), .clmIb3-3 > div:nth-child(3n+2) { width: 33.334%; }
ul.clmIb4-1 > li, .clmIb4-1 > dl, .clmIb4-1 > div,
ul.clmIb4-2 > li, .clmIb4-2 > dl, .clmIb4-2 > div,
ul.clmIb4-4 > li, .clmIb4-4 > dl, .clmIb4-4 > div { width: 25%; }
ul.clmIb5-1 > li, .clmIb5-1 > dl, .clmIb5-1 > div,
ul.clmIb5-3 > li, .clmIb5-3 > dl, .clmIb5-3 > div,
ul.clmIb5-5 > li, .clmIb5-5 > dl, .clmIb5-5 > div { width: 20%; }
ul.clmIb2-1 > li a, .clmIb2-1 > dl > a, .clmIb2-1 > div > a,
ul.clmIb2-2 > li a, .clmIb2-2 > dl > a, .clmIb2-2 > div > a,
ul.clmIb3-1 > li a, .clmIb3-1 > dl > a, .clmIb3-1 > div > a,
ul.clmIb3-2 > li a, .clmIb3-2 > dl > a, .clmIb3-2 > div > a,
ul.clmIb3-3 > li a, .clmIb3-3 > dl > a, .clmIb3-3 > div > a,
ul.clmIb4-1 > li a, .clmIb4-1 > dl > a, .clmIb4-1 > div > a,
ul.clmIb4-2 > li a, .clmIb4-2 > dl > a, .clmIb4-2 > div > a,
ul.clmIb4-4 > li a, .clmIb4-4 > dl > a, .clmIb4-4 > div > a,
ul.clmIb5-1 > li a, .clmIb5-1 > dl > a, .clmIb5-1 > div > a,
ul.clmIb5-3 > li a, .clmIb5-3 > dl > a, .clmIb5-3 > div > a,
ul.clmIb5-5 > li a, .clmIb5-5 > dl > a, .clmIb5-5 > div > a { display: block; width: 100%; height: 100%; }
@media screen and (max-width: 767px) {
ul.clmIb2-1 > li, .clmIb2-1 > dl, .clmIb2-1 > div,
ul.clmIb3-1 > li, .clmIb3-1 > dl, .clmIb3-1 > div,
ul.clmIb4-1 > li, .clmIb4-1 > dl, .clmIb4-1 > div,
ul.clmIb5-1 > li, .clmIb5-1 > dl, .clmIb5-1 > div { width: 100%; }
	ul.clmIb3-1 > li:nth-child(3n+2), .clmIb3-1 > dl:nth-child(3n+2), .clmIb3-1 > div:nth-child(3n+2) { width: 100%; }
ul.clmIb3-2 > li, .clmIb3-2 > dl, .clmIb3-2 > div,
ul.clmIb4-2 > li, .clmIb4-2 > dl, .clmIb4-2 > div { width: 50%; }
	ul.clmIb3-2 > li:nth-child(3n+2), .clmIb3-2 > dl:nth-child(3n+2), .clmIb3-2 > div:nth-child(3n+2) { width: 50%; }
ul.clmIb5-3 > li, .clmIb5-3 > dl, .clmIb5-3 > div { width: 33.333%; }
	ul.clmIb5-3 > li:nth-child(3n+2), .clmIb5-3 > dl:nth-child(3n+2), .clmIb5-3 > div:nth-child(3n+2) { width: 33.334%; }
}


/*--- flexbox ----------*/

.clmFl2, ul.clmFl2 > li, .clmFl2 > dl,
.clmFl3, ul.clmFl3 > li, .clmFl3 > dl,
.clmFl4, ul.clmFl4 > li, .clmFl4 > dl,
.clmFl5, ul.clmFl5 > li, .clmFl5 > dl {
	display: flex;
	display: -webkit-box;	/* Androidブラウザ用 */
	display: -ms-flexbox;	/* IE10 */
	display: -webkit-flex;	/* safari（PC）用 */
	justify-content: space-between;
	align-content: space-between;
	-ms-align-content: space-between;		/* IE10 */
	-webkit-align-content: space-between;	/* safari（PC）用 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;		/* IE10 */
	-webkit-flex-wrap: wrap;	/* safari（PC）用 */
	align-items: stretch;
	-ms-align-items: stretch;		/* IE10 */
	-webkit-align-items: stretch;	/* safari（PC）用 */
}
.clmFl2, ul.clmFl2 > li, .clmFl2 > dl { flex-basis:   49%; }
.clmFl3, ul.clmFl3 > li, .clmFl3 > dl { flex-basis:   32%; }
.clmFl4, ul.clmFl4 > li, .clmFl4 > dl { flex-basis: 23.5%; }
.clmFl5, ul.clmFl5 > li, .clmFl5 > dl { flex-basis: 18.4%; }
.clmFl2 a, ul.clmFl2 > li a, .clmFl2 > dl a,
.clmFl3 a, ul.clmFl3 > li a, .clmFl3 > dl a,
.clmFl4 a, ul.clmFl4 > li a, .clmFl4 > dl a,
.clmFl5 a, ul.clmFl5 > li a, .clmFl5 > dl a { display: block; width: 100%; height: 100%; }


/*--- flexbox（複数行に渡って上下左右の間隔を均等にする場合） ----------*/

.clmFlSp2-1, ul.clmFlSp2-1 > li, .clmFlSp2-1 > dl,
.clmFlSp2-2, ul.clmFlSp2-2 > li, .clmFlSp2-2 > dl,
.clmFlSp3-1, ul.clmFlSp3-1 > li, .clmFlSp3-1 > dl,
.clmFlSp3-2, ul.clmFlSp3-2 > li, .clmFlSp3-2 > dl,
.clmFlSp3-3, ul.clmFlSp3-3 > li, .clmFlSp3-3 > dl,
.clmFlSp4-1, ul.clmFlSp4-1 > li, .clmFlSp4-1 > dl,
.clmFlSp4-2, ul.clmFlSp4-2 > li, .clmFlSp4-2 > dl,
.clmFlSp4-4, ul.clmFlSp4-4 > li, .clmFlSp4-4 > dl,
.clmFlSp5-1, ul.clmFlSp5-1 > li, .clmFlSp5-1 > dl,
.clmFlSp5-3, ul.clmFlSp5-3 > li, .clmFlSp5-3 > dl,
.clmFlSp5-5, ul.clmFlSp5-5 > li, .clmFlSp5-5 > dl {
	display: flex;
	display: -webkit-box;	/* Androidブラウザ用 */
	display: -ms-flexbox;	/* IE10 */
	display: -webkit-flex;	/* safari（PC）用 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;		/* IE10 */
	-webkit-flex-wrap: wrap;	/* safari（PC）用 */
	align-items: stretch;
	-ms-align-items: stretch;		/* IE10 */
	-webkit-align-items: stretch;	/* safari（PC）用 */
	margin: 0.5%;
}
.clmFlSp2-1, ul.clmFlSp2-1 > li, .clmFlSp2-1 > dl,
.clmFlSp2-2, ul.clmFlSp2-2 > li, .clmFlSp2-2 > dl { flex-basis:     49%; }
.clmFlSp3-1, ul.clmFlSp3-1 > li, .clmFlSp3-1 > dl,
.clmFlSp3-2, ul.clmFlSp3-2 > li, .clmFlSp3-2 > dl,
.clmFlSp3-3, ul.clmFlSp3-3 > li, .clmFlSp3-3 > dl { flex-basis: 32.333%; }
.clmFlSp4-1, ul.clmFlSp4-1 > li, .clmFlSp4-1 > dl,
.clmFlSp4-2, ul.clmFlSp4-2 > li, .clmFlSp4-2 > dl,
.clmFlSp4-4, ul.clmFlSp4-4 > li, .clmFlSp4-4 > dl { flex-basis:     24%; }
.clmFlSp5-1, ul.clmFlSp5-1 > li, .clmFlSp5-1 > dl,
.clmFlSp5-3, ul.clmFlSp5-3 > li, .clmFlSp5-3 > dl,
.clmFlSp5-5, ul.clmFlSp5-5 > li, .clmFlSp5-5 > dl { flex-basis:     19%; }
.clmFlSp2-1 a, ul.clmFlSp2-1 > li a, .clmFlSp2-1 > dl > a,
.clmFlSp2-2 a, ul.clmFlSp2-2 > li a, .clmFlSp2-2 > dl > a,
.clmFlSp3-1 a, ul.clmFlSp3-1 > li a, .clmFlSp3-1 > dl > a,
.clmFlSp3-2 a, ul.clmFlSp3-2 > li a, .clmFlSp3-2 > dl > a,
.clmFlSp3-3 a, ul.clmFlSp3-3 > li a, .clmFlSp3-3 > dl > a,
.clmFlSp4-1 a, ul.clmFlSp4-1 > li a, .clmFlSp4-1 > dl > a,
.clmFlSp4-2 a, ul.clmFlSp4-2 > li a, .clmFlSp4-2 > dl > a,
.clmFlSp4-4 a, ul.clmFlSp4-4 > li a, .clmFlSp4-4 > dl > a,
.clmFlSp5-1 a, ul.clmFlSp5-1 > li a, .clmFlSp5-1 > dl > a,
.clmFlSp5-3 a, ul.clmFlSp5-3 > li a, .clmFlSp5-3 > dl > a,
.clmFlSp5-5 a, ul.clmFlSp5-5 > li a, .clmFlSp5-5 > dl > a { display: block; width: 100%; height: 100%; }
@media screen and (max-width: 767px) {
.clmFlSp2-1, ul.clmFlSp2-1 > li, .clmFlSp2-1 > dl,
.clmFlSp3-1, ul.clmFlSp3-1 > li, .clmFlSp3-1 > dl,
.clmFlSp4-1, ul.clmFlSp4-1 > li, .clmFlSp4-1 > dl,
.clmFlSp5-1, ul.clmFlSp5-1 > li, .clmFlSp5-1 > dl { flex-basis:    100%; margin: 0 0 1% 0; }
.clmFlSp3-2, ul.clmFlSp3-2 > li, .clmFlSp3-2 > dl,
.clmFlSp4-2, ul.clmFlSp4-2 > li, .clmFlSp4-2 > dl { flex-basis:     49%; }
.clmFlSp5-3, ul.clmFlSp5-3 > li, .clmFlSp5-3 > dl { flex-basis: 32.333%; }
}


/*--- hr ----------*/

hr          { border-top: 1px  solid #BBB; }
hr.hrDotted { border-top: 1px dotted #666; }
hr.hrDashed { border-top: 1px dashed #BBB; }
hr.hrDouble { border-top: 3px double #BBB; }
hr.hrFade  {	/* 両サイドがフェード */
    border: 0;
	background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.3), rgba(0,0,0,0));
	background-image:    -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.3), rgba(0,0,0,0));
	background-image:     -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.3), rgba(0,0,0,0));
	background-image:      -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.3), rgba(0,0,0,0));
}
hr.hrStripe {	/* ストライプ */
	height: 5px;
	background-image: linear-gradient(90deg,
	hsla(0, 0%, 60%, 1),
	hsla(0, 0%, 60%, 1)  30%,
	hsla(0, 0%, 60%, 0)  30%,
	hsla(0, 0%, 60%, 0) 100%);
	background-size: 3px 100%;
	border-top: none;
}
hr.hrOblique {	/* 斜線 */
	height: 5px;
	background-image: linear-gradient(-45deg,
	hsla(0, 0%, 60%, 0)  0%, hsla(0, 0%, 60%, 0)  30%,
	hsla(0, 0%, 60%, 1) 30%, hsla(0, 0%, 60%, 1)  50%,
	hsla(0, 0%, 60%, 0) 50%, hsla(0, 0%, 60%, 0)  80%,
	hsla(0, 0%, 60%, 1) 80%, hsla(0, 0%, 60%, 1) 100%);
	background-size: 4px 100%;
	border-top: none;
}



/* ----------------------------------------------
　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; }
.mgR5  { margin-right:  5px !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; }
.mgL5  { margin-left:  5px !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; }
.mgLR5  { margin-left:  5px !important; margin-right:  5px !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; }
.mgA5  { margin:  5px !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 ----------*/