/*
Theme Name: LIM
Author: tkswtnb
Version: 2

Breakpoint
- 1100px
- 760px
- 480px

border: solid 1px #efefef;
border: dotted 1px #dfdfdf;

Update info
Ver.1 - テーマを「FLAT」から「LIM」にアップデート
Ver.2 - ティンカーベルドリーム用に修正

*/

/*-------------------------------------------------------------------------------------------------- */
/* Reset */
/*-------------------------------------------------------------------------------------------------- */
html, body, div, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align:baseline;
}
html {
	overflow-y: scroll;
	font-size: 100%;
}
body {
	line-height: 1;
	background: #fff;
	color: #000;
	-webkit-text-size-adjust: 100%;/*スマホを横にしたときに文字が大きくならないようにする*/
	-ms-text-size-adjust: 100%;
}
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
audio,
canvas,
video {
	display: inline-block;
}
audio:not([controls]) {
	display: none;
}
ul {
	list-style: none;
}
a {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration:none;
	outline:none;
}
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted #000;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size:inherit;
	font:100%;
}
caption,th,td {
	font-weight: normal;
}
blockquote,q {
	quotes: none;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: solid 1px #efefef;
	margin: 1em 0;
	padding: 0;
}
pre,code,kbd,samp,tt{
	line-height:100%;
	font-family:monospace;
	*font-size:108%;
}
img,object {
	border: 0;
	vertical-align:text-bottom;
	-ms-interpolation-mode: bicubic; /*for IE6&7*/
	max-width : 100%; /*Fluid Image*/
}

/* Make sure videos and embeds fit their containers */
embed,
iframe,
object,
video {
	max-width: 100%;
}


/* フォーム要素
-------------------------------------------------------------- */
input[type="text"],
input[type="button"],
input[type="checkbox"],
input[type="radio"],
input[type="file"],
input[type="hidden"],
input[type="image"],
input[type="color"],
input[type="submit"],
button,
select,
textarea {
	margin:0;
	padding:0;
	font-size: 1.0em;
	/*font-family: inherit;*/
	border: 0;
	border-radius: 0;
	background: none;
}
select{
	display: block;
	overflow: hidden;
	background: #fff;
	padding: 8px;/* for FF */
	margin-bottom: 8px;
	/*-webkit-appearance: none;*/
}
button{
	line-height: normal;
	/*-webkit-appearance: none;*/
}
textarea,
input[type="text"]{
	width: 90%;
	padding: 8px;
	background: #fff;
}
textarea{
	display: block;
	max-width: 500px;
	height: 100px;
	vertical-align: top;
	overflow:auto;
	/*-webkit-appearance: none;*/
}
input[type="text"]{
	max-width:300px;
	/*-webkit-appearance: none;*/
}
input[type="checkbox"]{
	/*-webkit-appearance: none;*/
}
input[type="radio"]{
	margin-right: 4px;
	/*-webkit-appearance: none;*/
}
input[type="file"]{
	font-size: 0.8em;
	/*-webkit-appearance: none;*/
}
input[type="submit"]{
	cursor: pointer;
}
input:hover,
select:hover,
textarea:hover{
	transition:0.4s ease;
	-webkit-transition:0.4s ease;
	-moz-transition:0.4s ease;
	-o-transition:0.4s ease;
	-ms-transition:0.4s ease;
}


/* Print
-------------------------------------------------------------- */
@media print {
	body {
		background: none !important;
		color: #000;
		font-size: 10pt;
	}
}


















/* --------------------------------------------------------------------------------------------------
class
-------------------------------------------------------------------------------------------------- */
.clearfix:before,
.clearfix:after		{content:"";display:table;}/* For modern browsers */
.clearfix:after		{clear:both;}
.clearfix 			{zoom:1;} /* For IE 6&7 (trigger hasLayout) */

.center		{text-align:center !important;}
.align_l	{text-align:left !important;}
.align_r	{text-align:right !important;}

.bold		{font-weight:bold !important;}
.normal		{font-weight:normal !important;}

.inline		{display:inline !important;}
.block		{display:block !important;}
.none		{display:none !important;}
.hidden		{overflow:hidden !important;}
.nowrap		{white-space:nowrap !important;}

.float_l	{float:left !important;}
.float_r	{float:right !important;}
.clear		{clear:both !important;}

.relative	{position:relative;}
.absolute	{position:absolute;}
.fixed		{position:fixed;}

.font_200	{font-size:200% !important;}
.font_190	{font-size:190% !important;}
.font_180	{font-size:180% !important;}
.font_170	{font-size:170% !important;}
.font_160	{font-size:160% !important;}
.font_150	{font-size:150% !important;}
.font_140	{font-size:140% !important;}
.font_130	{font-size:130% !important;}
.font_120	{font-size:120% !important;}
.font_110	{font-size:110% !important;}
.font_100	{font-size:100% !important;}
.font_95	{font-size:95% !important;}
.font_90	{font-size:90% !important;}
.font_85	{font-size:85% !important;}
.font_80	{font-size:80% !important;}
.font_75	{font-size:75% !important;}
.font_70	{font-size:70% !important;}

.line_200	{line-height:200% !important;}
.line_190	{line-height:190% !important;}
.line_180	{line-height:180% !important;}
.line_170	{line-height:170% !important;}
.line_160	{line-height:160% !important;}
.line_150	{line-height:150% !important;}
.line_140	{line-height:140% !important;}
.line_130	{line-height:130% !important;}
.line_120	{line-height:120% !important;}
.line_110	{line-height:110% !important;}
.line_100	{line-height:100% !important;}

.black	{color:#000000 !important;}
.white	{color:#ffffff !important;}
.gray	{color:#646464 !important;}
.grey	{color:#646464 !important;}
.red	{color:#ff3333 !important;}
.pink	{color:#ff6699 !important;}
.blue	{color:#6495ed !important;}
.green	{color:#779100 !important;}
.orange	{color:#ff8c00 !important;}
.purple	{color:#800080 !important;}
.yellow	{color:#ffff00 !important;}
.brown	{color:#8b4513 !important;}
.eee	{color:#eeeeee !important;}
.ddd	{color:#dddddd !important;}
.ccc	{color:#cccccc !important;}
.bbb	{color:#bbbbbb !important;}
.aaa	{color:#aaaaaa !important;}

.bg_fff		{background-color:#ffffff !important;}
.bg_eee		{background-color:#eeeeee !important;}
.bg_ddd		{background-color:#dddddd !important;}
.bg_ccc		{background-color:#cccccc !important;}
.bg_bbb		{background-color:#bbbbbb !important;}
.bg_aaa		{background-color:#aaaaaa !important;}
.bg_999		{background-color:#999999 !important;}
.bg_666		{background-color:#666666 !important;}
.bg_333		{background-color:#333333 !important;}
.bg_000		{background-color:#000000 !important;}
.bg_white	{background-color:#ffffff !important;}
.bg_black	{background-color:#000000 !important;}

.bd_none	{border:none !important;}

.height_auto	{height:auto !important;}
.height_max		{height:100% !important;}
.width_auto		{width:auto !important;}
.width_max		{width:100% !important;}
.width_half		{width:50% !important;}

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

.mg_0	{margin:0px !important;}.mgt_0		{margin-top:0px !important;}.mgr_0		{margin-right:0px !important;}.mgl_0	{margin-left:0px !important;}.mgb_0	{margin-bottom:0px !important;}
.mg_5	{margin:5px !important;}.mgt_5		{margin-top:5px !important;}.mgr_5		{margin-right:5px !important;}.mgl_5	{margin-left:5px !important;}.mgb_5	{margin-bottom:5px !important;}
.mg_10	{margin:10px !important;}.mgt_10	{margin-top:10px !important;}.mgr_10	{margin-right:10px !important;}.mgl_10	{margin-left:10px !important;}.mgb_10	{margin-bottom:10px !important;}
.mg_15	{margin:15px !important;}.mgt_15	{margin-top:15px !important;}.mgr_15	{margin-right:15px !important;}.mgl_15	{margin-left:15px !important;}.mgb_15	{margin-bottom:15px !important;}
.mg_20	{margin:20px !important;}.mgt_20	{margin-top:20px !important;}.mgr_20	{margin-right:20px !important;}.mgl_20	{margin-left:20px !important;}.mgb_20	{margin-bottom:20px !important;}
.mg_25	{margin:25px !important;}.mgt_25	{margin-top:25px !important;}.mgr_25	{margin-right:25px !important;}.mgl_25	{margin-left:25px !important;}.mgb_25	{margin-bottom:25px !important;}
.mg_30	{margin:30px !important;}.mgt_30	{margin-top:30px !important;}.mgr_30	{margin-right:30px !important;}.mgl_30	{margin-left:30px !important;}.mgb_30	{margin-bottom:30px !important;}
.mg_35	{margin:35px !important;}.mgt_35	{margin-top:35px !important;}.mgr_35	{margin-right:35px !important;}.mgl_35	{margin-left:35px !important;}.mgb_35	{margin-bottom:35px !important;}
.mg_40	{margin:40px !important;}.mgt_40	{margin-top:40px !important;}.mgr_40	{margin-right:40px !important;}.mgl_40	{margin-left:40px !important;}.mgb_40	{margin-bottom:40px !important;}
.mg_45	{margin:45px !important;}.mgt_45	{margin-top:45px !important;}.mgr_45	{margin-right:45px !important;}.mgl_45	{margin-left:45px !important;}.mgb_45	{margin-bottom:45px !important;}
.mg_50	{margin:50px !important;}.mgt_50	{margin-top:50px !important;}.mgr_50	{margin-right:50px !important;}.mgl_50	{margin-left:50px !important;}.mgb_50	{margin-bottom:50px !important;}

.pd_0	{padding:0px !important;}.pdt_0		{padding-top:0px !important;}.pdr_0		{padding-right:0px !important;}.pdl_0	{padding-left:0px !important;}.pdb_0	{padding-bottom:0px !important;}
.pd_5	{padding:5px !important;}.pdt_5		{padding-top:5px !important;}.pdr_5		{padding-right:5px !important;}.pdl_5	{padding-left:5px !important;}.pdb_5	{padding-bottom:5px !important;}
.pd_10	{padding:10px !important;}.pdt_10	{padding-top:10px !important;}.pdr_10	{padding-right:10px !important;}.pdl_10	{padding-left:10px !important;}.pdb_10	{padding-bottom:10px !important;}
.pd_15	{padding:15px !important;}.pdt_15	{padding-top:15px !important;}.pdr_15	{padding-right:15px !important;}.pdl_15	{padding-left:15px !important;}.pdb_15	{padding-bottom:15px !important;}
.pd_20	{padding:20px !important;}.pdt_20	{padding-top:20px !important;}.pdr_20	{padding-right:20px !important;}.pdl_20	{padding-left:20px !important;}.pdb_20	{padding-bottom:20px !important;}
.pd_25	{padding:25px !important;}.pdt_25	{padding-top:25px !important;}.pdr_25	{padding-right:25px !important;}.pdl_25	{padding-left:25px !important;}.pdb_25	{padding-bottom:25px !important;}
.pd_30	{padding:30px !important;}.pdt_30	{padding-top:30px !important;}.pdr_30	{padding-right:30px !important;}.pdl_30	{padding-left:30px !important;}.pdb_30	{padding-bottom:30px !important;}
.pd_35	{padding:35px !important;}.pdt_35	{padding-top:35px !important;}.pdr_35	{padding-right:35px !important;}.pdl_35	{padding-left:35px !important;}.pdb_35	{padding-bottom:35px !important;}
.pd_40	{padding:40px !important;}.pdt_40	{padding-top:40px !important;}.pdr_40	{padding-right:40px !important;}.pdl_40	{padding-left:40px !important;}.pdb_40	{padding-bottom:40px !important;}
.pd_45	{padding:45px !important;}.pdt_45	{padding-top:45px !important;}.pdr_45	{padding-right:45px !important;}.pdl_45	{padding-left:45px !important;}.pdb_45	{padding-bottom:45px !important;}
.pd_50	{padding:50px !important;}.pdt_50	{padding-top:50px !important;}.pdr_50	{padding-right:50px !important;}.pdl_50	{padding-left:50px !important;}.pdb_50	{padding-bottom:50px !important;}

.inlink:before {
	content: "\f0c1";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 0.2em;
}
.outlink:before {
	content: "\f08e";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 0.2em;
}





/* グリッドレイアウト
----------------------------------------------*/
.grid2,.grid2fix			{list-style:none;margin-left:-1%;}
.grid2 > *,.grid2fix > *	{float:left;margin:0 0 1% 1%;width:49%;}/* 98/2 */
.grid3,.grid3fix			{list-style:none;margin-left:-1%;}
.grid3 > *,.grid3fix > *	{float:left;margin:0 0 1% 1%;width:32.33333333333333%;}/* 97/3 */
.grid4,.grid4fix			{list-style:none;margin-left:-1%;}
.grid4 > *,.grid4fix > *	{float:left;margin:0 0 1% 1%;width:24%;}/* 96/4 */
.grid5,.grid5fix			{list-style:none;margin-left:-1%;}
.grid5 > *,.grid5fix > *	{float:left;margin:0 0 1% 1%;width:19%;}/* 95/5 */
.grid6,.grid6fix			{list-style:none;margin-left:-1%;}
.grid6 > *,.grid6fix > *	{float:left;margin:0 0 1% 1%;width:15.66666666666667%;}/* 94/6 */
.grid7,.grid7fix			{list-style:none;margin-left:-1%;}
.grid7 > *,.grid7fix > *	{float:left;margin:0 0 1% 1%;width:13.28571428571429%;}/* 93/7 */
.grid8,.grid8fix			{list-style:none;margin-left:-1%;}
.grid8 > *,.grid8fix > *	{float:left;margin:0 0 1% 1%;width:11.5%;}/* 92/8 */

/*clearfix*/
.grid2:before,.grid2fix:before,.grid2:after,.grid2fix:after,
.grid3:before,.grid3fix:before,.grid3:after,.grid3fix:after,
.grid4:before,.grid4fix:before,.grid4:after,.grid4fix:after,
.grid5:before,.grid5fix:before,.grid5:after,.grid5fix:after,
.grid6:before,.grid6fix:before,.grid6:after,.grid6fix:after,
.grid7:before,.grid7fix:before,.grid7:after,.grid7fix:after,
.grid8:before,.grid8fix:before,.grid8:after,.grid8fix:after	{content:"";display:table;}/* For modern browsers */
.grid2:after,.grid2fix:after,
.grid3:after,.grid3fix:after,
.grid4:after,.grid4fix:after,
.grid5:after,.grid5fix:after,
.grid6:after,.grid6fix:after,
.grid7:after,.grid7fix:after,
.grid8:after,.grid8fix:after	{clear:both;}
.grid2,.grid2fix,
.grid3,.grid3fix,
.grid4,.grid4fix,
.grid5,.grid5fix,
.grid6,.grid6fix,
.grid7,.grid7fix,
.grid8,.grid8fix	{zoom:1;} /* For IE 6&7 (trigger hasLayout) */

/* 768px（iPadmini）以下の場合 */
@media screen and (max-width: 768px) {
.grid2		{margin-left:0;}
.grid2 > *	{width:100%;margin:0 0 10px 0;} /* grid1 */
.grid3 > *	{width:49%;} /* grid2 */
.grid4 > *	{width:49%;} /* grid2 */
.grid5 > *	{width:32.33333333333333%;} /* grid3 */
.grid6 > *	{width:32.33333333333333%;} /* grid3 */
.grid7 > *	{width:24%;} /* grid4 */
.grid8 > *	{width:24%;} /* grid4 */
}

/* 320px（iPhone5）以下の場合 */
@media screen and (max-width: 320px) {
.grid3		{margin-left:0;}
.grid3 > *	{width:100%;margin-left:0;} /* grid1 */
.grid4 > *	{width:49%;} /* grid2 */
.grid5 > *	{width:49%;} /* grid2 */
.grid6 > *	{width:32.33333333333333%;} /* grid3 */
.grid7 > *	{width:24%;} /* grid4 */
.grid8 > *	{width:24%;} /* grid4 */
}



.flex{
	display: flex; /* IE10以上 */
	flex-wrap: nowrap; /* 子要素を折り返えさない */
}
.reverse{
	flex-direction:row-reverse;/*子要素の配置方向を右から左に*/
}
.flex > *{
	flex: 1 1 0%; /* ‘flex-grow’、’flex-shrink’、’flex-basis’ ※IE10-11ではflex-basisの単位必須 */
	flex: 0 1 auto; /* デフォルト値 */
	justify-content: space-between;/* 水平方向の揃え */
}
.flex2,.flex3,.flex4,.flex6,.flex8{
	display: flex; /* IE10以上 */
	flex-wrap: wrap; /* 子要素を折り返す */
	margin-left: -3%;
	list-style:none;
}
.flex2 > *{margin:0 0px 3% 3%;flex-basis:calc(50.000% - calc(2 * 3% / 2));} /* 余白2列分 × 3% ÷ 2 */
.flex3 > *{margin:0 0px 3% 3%;flex-basis:calc(33.330% - calc(3 * 3% / 3));} /* 余白3列分 × 3% ÷ 3 */
.flex4 > *{margin:0 0px 3% 3%;flex-basis:calc(25.000% - calc(4 * 3% / 4));} /* 余白4列分 × 3% ÷ 4 */
.flex6 > *{margin:0 0px 3% 3%;flex-basis:calc(16.660% - calc(6 * 3% / 6));} /* 余白6列分 × 3% ÷ 6 */

.flex2 > *.col20{flex-basis:calc(20% - 3%);margin-bottom:0;}
.flex2 > *.col30{flex-basis:calc(30% - 3%);margin-bottom:0;}
.flex2 > *.col40{flex-basis:calc(40% - 3%);margin-bottom:0;}
.flex2 > *.col60{flex-basis:calc(60% - 3%);margin-bottom:0;}
.flex2 > *.col70{flex-basis:calc(70% - 3%);margin-bottom:0;}
.flex2 > *.col80{flex-basis:calc(80% - 3%);margin-bottom:0;}

.flex img,.flex p,
.flex2 img,.flex2 p,
.flex3 img,.flex3 p,
.flex4 img,.flex4 p,
.flex6 img,.flex6 p{margin:0;}

@media screen and (max-width:980px) {
	.flex1lg	{margin-left:0px;}
	.flex1lg > *{flex-basis:100%;margin:0 0 2em;}
	.flex1lg > *.col20,
	.flex1lg > *.col30,
	.flex1lg > *.col40,
	.flex1lg > *.col60,
	.flex1lg > *.col70,
	.flex1lg > *.col80{flex-basis:100%;}
	.flex2lg > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3lg > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4lg > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
}
@media screen and (max-width:640px) {
	.flex1md	{margin-left:0px;}
	.flex1md > *{flex-basis:100%;margin:0 0 0.4em;} /*margin-bottomを設定すると画像だけのレイアウトにした際に余計な余白が発生する*/
	.flex1md > *.col20,
	.flex1md > *.col30,
	.flex1md > *.col40,
	.flex1md > *.col60,
	.flex1md > *.col70,
	.flex1md > *.col80{flex-basis:100%;}
	.flex2md > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3md > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4md > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
	.flex1md img{margin:0 auto 1em;} /*サムネイル付きの2カラムを一列に戻した際にセンタリングと下余白を設定*/
	.flex1md p,
	.flex2md p,
	.flex3md p,
	.flex4md p{margin:0 0 1.6em;}
}
@media screen and (max-width:480px) {
	.flex1sm	{margin-left:0px;}
	.flex1sm > *{flex-basis:100%;margin:0 0 0.4em;} /*margin-bottomを設定すると画像だけのレイアウトにした際に余計な余白が発生する*/
	.flex1sm > *.col20,
	.flex1sm > *.col30,
	.flex1sm > *.col40,
	.flex1sm > *.col60,
	.flex1sm > *.col70,
	.flex1sm > *.col80{flex-basis:100%;}
	.flex2sm > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3sm > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4sm > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
	.flex1sm img{margin:0 auto 1em;} /*サムネイル付きの2カラムを一列に戻した際にセンタリングと下余白を設定*/
	.flex1sm p,
	.flex2sm p,
	.flex3sm p,
	.flex4sm p{margin:0 0 1.6em;}
}



/* 可変グリッドレイアウト */
#flexibleGrid		{width:100%;margin:-5px 0 0 -5px;border:solid 0px blue;}
#flexibleGrid li	{width:210px;background-color:#eee;margin:5px;}



/* テーブルレイアウト */
.table{
	display: table;
	width: 100%;
	table-layout:auto;
}
.table_fixed{
	display: table;
	width: 100%;
	table-layout:auto;
	table-layout:fixed; /*子要素を均一幅で表示*/
}
.table > *,
.table_fixed > *{
	display: table-cell;
	word-wrap: break-word;
	vertical-align: top;
}


/* = YouTube レスポンシブ
-------------------------------------------------------------- */
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}




























/* --------------------------------------------------------------------------------------------------
structure
-------------------------------------------------------------------------------------------------- */

body {
	color:#3d3d3d;
	background-color: #fbf8f3;
	line-height: 1.9;
	font-size: 17px;
	/*font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";*/
	font-family: "YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;/*テキストのカーニング*/
	*font-size:small;
	*font:x-small;
}
@media screen and (max-width: 480px) {
	body {
		line-height: 1.6;
		font-size: 15px;
	}
}

a {
	color:#3d3d3d;
	transition:0.1s linear;
}
a:hover {
	color:#999;
}
a img {
	transition:0.1s linear;
}
a:hover	img	{
	opacity:0.8;
	box-shadow: 0px 3px 5px rgba(255,255,255,0.01);/* マウスオンで1pxズレるのを回避 */
}





/* = ID
-------------------------------------------------------------- */

/* パンくずリスト */
#breadcrumbs-wrap{
	background-color: #fff;
	background-color: rgba(255,255,255,0.5);
}
#breadcrumbs{
	padding: 10px 0;
	font-size: 0.8em;
	border-bottom: solid 1px #efefef;
}
#breadcrumbs,
#breadcrumbs a{
	color: #999;
}
#breadcrumbs a:hover{
	color: #333;
}
#breadcrumbs div{
	display:inline;
}

/* 検索フォーム */
#searchform{
	border: solid 1px red;
	border:none;
}
#searchform input#searchinput,
#searchform input#searchsubmit{
	display: block;
	height:50px;
	margin: 0px;
	padding: 0px;
	font-size: 13px;
	border:none;
	background-color:#fff;
}
#searchform input#searchinput {
	float: left;
	width: 74%;
	padding: 0 3%;
	background-color:#fff;
	background-color:#eee;
}
#searchform input#searchsubmit {
	float: right;
	width: 20%;
	background: #666;
	color: #fff;
	font-family: FontAwesome;
}
#searchform input#searchsubmit:hover {
	background-color:#999;
}

/* SNSボタン */
.sns_btn li a{
	display: block;
	position: relative;
	height: 20px;
	line-height: 20px;
	margin: 0 0 5px;
	padding: 13px 0 11px;
	border-radius: 3px;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	transition:0s linear;
	font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";

}
.sns_btn li a i,
.sns_btn li a span{ /* icon */
	padding-right: 6px;
	text-shadow: 0px 0px 0px rgba(0,0,0,0.1);
}
.btn-facebook a	{background-color: #4962a0;/*box-shadow: 0 3px 0 #42588f*/;}
.btn-twitter a	{background-color: #38abda;/*box-shadow: 0 3px 0 #3898c1*/;}
.btn-gplus a	{background-color: #d3544a;/*box-shadow: 0 3px 0 #bd4c43*/;}
.btn-feedly a	{background-color: #87c040;/*box-shadow: 0 3px 0 #7bad3e*/;}
.btn-rss a		{background-color: #ff9933;/*box-shadow: 0 3px 0 #e38b35*/;}
.btn-hatena a	{background-color: #4b82c4;/*box-shadow: 0 3px 0 #4373ac*/;}
.btn-pocket a	{background-color: #e15466;/*box-shadow: 0 3px 0 #c74c5c*/;}
.btn-line a		{background-color: #7cca48;/*box-shadow: 0 3px 0 #73b346*/;}

.btn-facebook a:hover	{background-color: #42588f;}
.btn-twitter a:hover	{background-color: #3898c1;}
.btn-gplus a:hover		{background-color: #bd4c43;}
.btn-feedly a:hover		{background-color: #7bad3e;}
.btn-rss a:hover		{background-color: #e38b35;}
.btn-hatena a:hover		{background-color: #4373ac;}
.btn-pocket a:hover		{background-color: #c74c5c;}
.btn-line a:hover		{background-color: #73b346;}

.sns_btn li a:hover{
	bottom: 3px;
	/*box-shadow: none;*/
}
.sns_btn li a:active{
	bottom: 0px;
	/*box-shadow: 0 5px 5px rgba(0,0,0,0.1) inset;*/
}




/* = Layout
-------------------------------------------------------------- */
#page{
	width: auto;
	/*margin: 32px;*/
	/*background: #fff;*/
}
@media screen and (max-width: 760px) {
	#page{
		/*margin: 0;*/
	}
}

main{
	margin-bottom: 2em;
}
main,.breakpoint{
	width: 980px;
	margin-right: auto;
	margin-left: auto;
}
.home main{
	width: 100%;
	margin-bottom: 0em;
}
@media screen and (max-width: 1100px) {
	main,.breakpoint{
		width: 640px;
	}
}
@media screen and (max-width: 760px) {
	main,.breakpoint{
		width: 94%;
		max-width: 640px;
	}
	.home main{
		width: 100%;
		max-width: 100%;
	}
}

.post-header{
	padding: 0 0 3em;
	margin: 3em 0;
	position: relative;
	border-bottom:solid 1px #efefef;
}
.post-header h1{
	color: #333;
	font-size: 2em;
	font-weight: bold;
	line-height: 140%;
	letter-spacing: -2px;
}
@media screen and (max-width: 480px) {
	.post-header h1{
		font-size: 1.6em;
	}
}
.post-header .post-discription{
	font-size: 0.95em;
	margin: 0.5em 0 0 0.1em;
}
.post-edit-link { /* 記事修正リンク（ログイン時のみ） */
	font-size: 0.75em;
	position: absolute;
	bottom: 0px;
	right: 0px;
	opacity: 0.3;
}

.post-footer{
	padding: 2.4em 0 0;
}
.post-footer #postdate{ /* 投稿日 */
	padding: 0 0 0.8em;
	border-bottom:solid 1px #efefef;
	text-align: right;
	font-size: 0.85em;
	color:#999;
}
.post-footer .share{
	padding: 1.6em 0;
	border-bottom:solid 1px #efefef;
}
.post-footer .similar{
	padding: 1.6em 0;
}
.post-footer h2{
	margin: 0 0 0.5em;
	font-size: 1.2em;
	font-weight: bold;
}


#content{
	float:left;
	width: 640px;
}
#sidebar{
	float:right;
	width: 300px;
	font-size: 0.9em;
}
@media screen and (max-width: 1100px) {
	#content,
	#sidebar{
		float:none;
		width: 100%;
		margin-bottom: 4em;
		border-bottom:solid 1px #efefef;
	}
}
@media screen and (max-width: 480px) {
	#sidebar{
		font-size: 1em;/*スマホのときはセカンダリのフォントサイズをプライマリと同一にする*/
	}
}


#header{
	width: 100%;
	background-color: #ffffff;
	font-size: 0.9em;
}

#header-wrap{
	padding: 20px 0;
}
#header-logo{
	height: 60px;
	float: left;
}
#header-logo img{
	display: block;
}
#header-description{
	float: left;
	line-height: 60px;
	font-size: 0.85em;
	font-size: 0.9em;
	letter-spacing: -0.5px;
	padding-left: 20px;
	color: #888;
}
#header-right{
	height:60px;
	overflow: hidden;
}
#header-icon{
	float: right;
	width: 300px;
	height:50px;
	margin-top: 5px;
	text-align: right;
}
#header-icon li{
	display: inline-block;

}
#header-icon li a{
	font-size: 1.6em;
	margin-left: 0.5em;
	color: #ccc;
}
@media screen and (max-width: 1100px) {
	#header-wrap{
		position: absolute;
		top: 0;
		left: 0;
		z-index: 99;
	}
	#header-right{ /* インフォ用 */
		display: none;
	}
	#header-icon{ /* フィードアイコン */
		display: none;
		float: none;
		line-height: auto;
		text-align: center;
		padding: 0px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 760px) {
	#header-description{
		display: none;
	}
}
@media screen and (max-width: 480px) {
	#header-wrap{
		padding: 0px 0;
	}
	#header-logo img{
		/*width: 200px;*/
		height: 44px;
		margin: 10px auto 10px;
	}
}


/*グローバルナビ*/
#site-navigation{
	background:#ff999a;
}
#site-navigation input,
#site-navigation label{
	display: none;
}
#site-navigation ul{
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
#site-navigation ul li{
	display: inline-block;
	color: #fff;
	letter-spacing: normal; /* 文字間を通常に戻す */
}
#site-navigation ul li:after{/* セパレータ */
	content: "/";
	font-weight: normal;
	font-style: normal;
	font-size: 0.9em;
	padding: 0 1.6em;
	color: #666;
	color: rgba(255,255,255,0.3);
}
#site-navigation ul li:last-child:after{
	content: "";
}
#site-navigation ul li a{
	display: inline-block;
	height: 70px;
	line-height: 70px;
	margin: 0px auto;
	transition:0.2s linear;
	font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";
	font-weight: bold;
	font-size: 0.95em;
	color: #fff;
}
#site-navigation ul li a:hover{
	transition:0.1s linear;
	color: #aaa;
	color: rgba(255,255,255,0.5);
}
#site-navigation ul li.current-menu-item a{ /* Current Text */
	cursor: default;
	color: #3d3d3d;
	color: #aaa;
	color: rgba(255,255,255,0.5);
}
@media screen and (max-width: 1100px) {

	#site-navigation {
		display: block;
		width: 100%;
		background: #fff;
		text-align: center;
	}
	#site-navigation .breakpoint{
		/*border:solid 1px green;*/
	}
	#site-navigation label{ /* MENUボタン */
		float: right;
		display: block;
		width: 40px;
		height: 40px;
		line-height: 40px;
		margin: 30px 0 30px;
		padding: 8px 16px;
		padding: 0;
	    cursor:pointer;
	    text-align: center;
	    border:solid 2px #bbb;
	    color: #bbb;
	}
	#site-navigation label:hover{
		background-color: #eee;
	    transition:0.1s linear;
	}
	#site-navigation label:before{/* ハンバーガアイコン */
		content: "\f0c9";/* fa-bars */
		font-family: FontAwesome;
		font-weight: normal;
		font-style: normal;
		display: inline-block;
	}
	#site-navigation input#trigger {/* hidden checkbox */
	    position: absolute;
	    left: 0;
	    opacity: 0;
	    z-index: 2;
	    height: 1em;
	    width: 1em;
	    top: 0;
	}
	#site-navigation .changed {/* checkbox OFF */
		width: 100%;
		height:0px;
		overflow: hidden;
		text-align: left;
	    transition:0.1s linear;
	}
	#site-navigation input[type=checkbox]:checked ~ .changed {/* checkbox ON */
		height: auto;
	    display:block;
		margin: 1em 0;
	    transition:0.1s linear;
	}
	#site-navigation .changed li:first-child{
	    border-top:0px dotted #666;
	}
	#site-navigation input[type=checkbox]:checked ~ label:before {
		content: "\f00d";/* fa-times  */
	}
	#site-navigation ul{
		border-top: dotted 1px #dfdfdf;
	}
	#site-navigation ul li{
		display: block;
		border-bottom: dotted 1px #dfdfdf;
	}
	#site-navigation ul li:after{
		content: "";/* セパレータ */
		padding: 0;
	}
	#site-navigation ul li a:before{
		content: "\f105";/* fa-angle-right */
		font-family: FontAwesome;
		font-weight: normal;
		font-style: normal;
		display: inline-block;
		padding-right: 6px;
	}
	#site-navigation ul li a{
		display: block;
		height: auto;
		padding: 0.8em 0;
		line-height: 20px;
		color: #3d3d3d;
	}
	#site-navigation ul li a:hover{
		transition:0.1s linear;
		color: #bbb
	}
	#site-navigation ul li.current-menu-item a{ /* Current Text */
		color: #bbb
	}
}
@media screen and (max-width: 480px) {
	#site-navigation label{ /* MENUボタン */
		margin: 10px 0;
	}
}


/* ナビゲーション内の検索フォーム */
#nav-search{
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	color: red;
}
#nav-search input#searchinput {/*入力フォーム*/
	display: block;
	width: 50px;
	height: 70px;
	padding: 0 10px;
	text-align: center;
	cursor:pointer;
	border:none;
	background: none;
	font-size: 13px;
	font-family: FontAwesome;
}
#nav-search input#searchinput:hover{ /*オンマウス時*/
	background:rgba(255,255,255,0.2);
}
#nav-search input#searchinput:focus{ /*フォーカス時*/
	display: block;
	width: 200px;
	height: 50px;
	margin: 10px 0px; /*フォーカス時の枠が切れるので1px空ける*/
	background-color:#fff;
	background:rgba(255,255,255,0.9);
	text-align: left;
	cursor:default;
	color: #333;
}
#nav-search input#searchsubmit {/*送信ボタン*/
	display: none;
}
#nav-search input#searchinput::-webkit-input-placeholder {
	color: #fff;
}
#nav-search input#searchinput:-ms-input-placeholder {
	color: #fff;
}
#nav-search input#searchinput::-moz-placeholder {
	color: #fff;
}
@media screen and (max-width: 1100px) {
	#nav-search{
		position: relative;
		border-bottom: dotted 1px #dfdfdf;
	}
	#nav-search input#searchinput {/*入力フォーム*/
		width: 100%;
		max-width: 240px;
		height: 40px;
		margin: 10px 2px; /*フォーカス時の枠が切れるので2px空ける*/
		text-align: left;
		background-color: #efefef;
		border:solid 1px #efefef;
	}
	#nav-search input#searchinput:focus{ /*フォーカス時*/
		width: 100%;
		max-width: 240px;
		height: 40px;
		margin: 10px 2px; /*フォーカス時の枠が切れるので2px空ける*/
	}
}


#footer {
	background: #fff;
	font-size: 0.95em;
	position: relative;
	background-color:#ff999a;
	color: #fff;
	padding: 3.2em 0;
}
#footer a:link,
#footer a:visited,
#footer a:active {
	color: #fff;
}
#footer a:hover {
	color: #222;
	color: rgba(255,255,255,0.5);
}
#footer nav ul li{
	font-weight: bold;
}
#footer nav ul li a:before{
	content: "\f105";/* fa-angle-right */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 6px;
}
#footer #footer_search{
	position:absolute;
	top: 0;
	right: 0;
	width: 300px;
}
#footer #footer_search #searchinput,
#footer #footer_search #searchsubmit{
	color: #fff;
	background: rgba(0,0,0,0.1);
}
#footer #footer_search #searchsubmit:hover{
	background: rgba(0,0,0,0.3);
}
#footer #footer_search #searchinput::-webkit-input-placeholder {
	color: #fff;
}
#footer #footer_search #searchinput:-ms-input-placeholder {
	color: #fff;
}
#footer #footer_search #searchinput::-moz-placeholder {
	color: #fff;
}

#footer #footer_sns{
	margin: 1em 0;
	text-shadow: none;
}
#footer #footer_sns li{
	display: inline;
}
#footer #footer_sns li a{
	font-size: 1.6em;
	margin-right: 0.5em;
}
#footer #copyright{
	font-size: 0.9em;
	text-shadow: none;
}
#footer #totop a{
	position: fixed;
	bottom: 10px;
	right: 10px;
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	background-color: #333;
	background-color: rgba(0,0,0,0.4);
	color: #fff;
	border-radius: 40px;
	font-size: 30px;
}
#footer #totop a:hover{
	background-color: rgba(0,0,0,0.7);
}

@media screen and (max-width: 760px) {
	#footer {
		font-size: 1em;
	}
	#footer nav:before {
		content: "Menu";
		display: block;
		text-align: center;
		font-weight: bold;
		font-size: 1.2em;
		margin-bottom: 30px;
	}
	#footer nav ul{
		border-top: dotted 1px #fff;
		border-top: dotted 1px rgba(255,255,255,0.2);
	}
	#footer nav ul li{
		padding: 10px;
		border-bottom: dotted 1px #fff;
		border-bottom: dotted 1px rgba(255,255,255,0.2);
	}
	#footer #footer_search{
		position:relative;
		width: auto;
		margin-top: 30px;
	}
	#footer #footer_sns,
	#footer #copyright{
		text-align: center;
	}
}

@media screen and (max-width: 480px) {
	#footer #totop a{
		bottom: 5px;
		right: 5px;
		width: 40px;
		height: 40px;
		line-height: 40px;
		font-size: 20px;
	}
}


/* = サイドバー
-------------------------------------------------------------- */
#sidebar h3{
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 0.8em;
	padding-bottom: 0.4em;
	text-align: center;
	border-bottom:solid 4px #ff999a;
}

/* ランキングウィジェット（Popular Posts） */
.popular-posts ul{
	list-style: none;
}
.popular-posts ul li{
	display: block;
	line-height: 1.4;
	width: 100%;
	margin: 0px 0;
	padding: 20px 0;
	border-top: dotted 1px #dfdfdf;
}
.popular-posts ul li img{
	display: block;
	width: 100%;
	height :auto;
	margin: 0 0 8px;
	border:solid 1px #ccc;
}
.popular-posts li .text{
	font-weight: bold;
}
@media screen and (max-width: 1100px) {
	.popular-posts ul{
		margin-left:-3%;
	}
	.popular-posts ul li{
		float:left;
		margin:0 0 3% 3%;
		padding: 0 0;
		width:47%;
		height:200px;
		border-top: none;
	}
}
@media screen and (max-width: 480px) {
	.popular-posts ul{
		margin-left: 0;
	}
	.popular-posts ul li{
		float:none;
		width: 100%;
		height: auto;
		margin: 0px 0;
		padding: 20px 0;
		border-top: dotted 1px #dfdfdf;

	}
}

/* バナー */
.bnn_300{
	overflow: hidden;
	width: 300px;
	height: 250px;
	margin-right: auto;
	margin-left: auto;
}

.bnn_service{
	margin-bottom: 40px;
	padding: 10px;
	background-color: white;
	position: relative;
	border:solid 1px #efefef;
}
.bnn_service img{
	display: block;
}
.bnn_service div{
	position: absolute;
	top: 50%;
	width: 100%;
	line-height: 1.2em;
	margin-top: -1.2em;
	font-size: 1.6em;
	font-weight: bold;
	color: white;
	text-align: center;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.2);
}
@media screen and (max-width: 1100px) {
	.bnn_service div{
		font-size: 2.6em;
	}
}
@media screen and (max-width: 480px) {
	.bnn_service div{
		font-size: 1.4em;
	}
}

/* リスト */
.list-with-arrow li{
	border-top: solid 1px #efefef;
}
.list-with-arrow li:first-child{
	border-top: none;
}
.list-with-arrow li a{
	display: block;
	padding: 10px 0;
}
.list-with-arrow li a:hover{
	text-indent: 7px;
}
.list-with-arrow li a:before{
	content: "\f054";/* fa-chevron-right */
	content: "\f101";/* fa-angle-double-right */
	content: "\f0da";/* fa-caret-right */
	content: "\f105";/* fa-angle-right */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 6px;
	color: #999;
}
.list-with-arrow li:hover a:before{
	color: #cdccc2;
}

/* サムネ付き記事リスト */

.list-img li{
	position: relative;
	line-height: 1.4;
	padding: 12px 0px 12px 40px;
	border-bottom: dotted 1px #dfdfdf;
	font-weight: bold;
}
.list-img li img{
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	border-radius:100px;
	width: 30px;
	height: 30px;
	margin-top: -15px; /* height÷2 */
}


/* トップページ
-------------------------------------------------------------- */
#hero {
	position: relative;
	overflow: hidden;
}
#hero img.hero_bg{
	display: block;
	margin: 0 auto;
	width: 100%;
}
#hero h1{
	position: absolute;
	top: 50%;
	left: 0%;
	width: 100%;
	opacity: 0.01;
	/*border:solid 1px blue;*/
}
#hero h1 img{ /*780x120px*/
	display: block;
	margin: 0 auto;
	/*border:solid 1px red;*/
}

#heroimage .bx-wrapper img { /* 2000*800px */
    width: 100% !important;
	height: 40vw;
    display: block;
	object-fit: cover;
}


.home main header {
	margin-bottom: 1.6em;
}
.home main header h2{
	font-size: 1.2em;
	text-align: center;
}
.home main header .subtitle{
	font-size: 0.9em;
	text-align: center;
	color:#ff999a;
}
.home .subtitle:after,
.home .subtitle:before{
	content:'ー';
	padding:0 10px;
}

.index_description,
.cat_description{
	/*background-color: #fff;*/
	/*text-shadow: 1px 1px 5px rgba(0,0,0,0.1);*/
}
.index_description{
	/*background-color: #f5f5f5;*/
	padding: 80px 0;
	/*margin-bottom: 20px;*/
	font-size: 1.0em;
	text-align: center;
}
.index_description span{
	display: block;
}
@media screen and (max-width: 760px) {
	.index_description{
		padding: 20px 0;
		font-size: 1.0em;
		text-align: left;
	}
	.index_description span{
		display: inline;/*改行を解除*/
	}
}
.cat_description{
	padding: 40px 0;
	margin-bottom: 20px;
}

#step{
	padding: 80px 0;
	background-color:#ff999a;
	text-align: center;
	color: #fff;
	/*text-shadow: 1px 1px 0px rgba(255,255,255,0.9);*/
	/*font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";*/
}
#step h2{
	margin-bottom: 1.6em;
	font-size: 2.4em;
	font-weight: bold;
	letter-spacing: -1px;
}
#step ol li {
	list-style: none;
	float: left;
	position: relative;
	width: 25%;
}
#step ol li:after { /*fa-angle-right */
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0;
	right: -10px;/* width/2 */
	content: "\f105";/* fa-bars */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	font-size: 40px;
}
#step ol li:last-child:after { /* 一番右は「>」を消す */
	display: none;
}
#step ol li i { /*アイコン*/
	font-size: 80px;
}
@media screen and (max-width: 1100px) {
	#step h2{
		font-size: 1.6em;
		margin-bottom: 1em;
	}
	#step ol li i {
		font-size: 40px;
	}
	#step ol li:after {
		font-size: 20px;
	}
}
@media screen and (max-width: 480px) {
	#step h2{
		font-size: 1.3em;
	}
}

#pickup{
	padding: 80px 0;
	background-color: #fff;
	text-align: center;
	/*color: #fff;*/
	/*text-shadow: 1px 1px 0px rgba(255,255,255,0.9);*/
	/*font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";*/
	/*border:solid 1px red;*/
}

.column4{
	list-style:none;
	margin-top: 2.4em;
	margin-left:-60px;
	font-size: 0.85em;
	/*border:solid 1px green;*/
}
.column4 li,
.column4 article{
	float:left;
	margin:0 0 30px 60px;
	width:200px;;
	/*border:solid 1px blue;*/
}
.column4 li img,
.column4 article img{
	display: block;
	margin-bottom: 0.8em;
}
@media screen and (max-width: 1100px) {
	.column4 {
		margin-left:-20px;
	}
	.column4 li,
	.column4 article{
		margin:0 0 20px 20px;
	}
}
@media screen and (max-width: 760px) {
	.column4{
		margin-left:-1%;
	}
	.column4 li,
	.column4 article{
		margin:0 0 20px 1%;
		width:32.33333333333333%;
	}
}
@media screen and (max-width: 480px) {
	.column4{
		margin-left:-1%;
	}
	.column4 li,
	.column4 article{
		margin:0 0 20px 1%;
		width:49%;
	}
}


.index_2grid{
	padding: 100px 0;
	background-color: #f5f5f5;
}
.index_2grid h2{
	margin-bottom: 1em;
	text-align: center;
	line-height: 160%;
	font-size: 2.4em;
	font-weight: bold;
	letter-spacing: -1px;
}
.index_2grid h2 span{
	display: block;
}
.index_2grid h2:after{
	content: '';
	display:block;
	width: 100px;
	height: 4px;
	margin: 1em auto 0;
	background-color:#ff999a;
}
.index_2grid p{
	color: #666;
	margin-bottom: 1em;
}
.index_2grid ul{
	list-style:none;
	margin-top: 40px;
	margin-left:-3%;
}
.index_2grid ul li{
	float:left;
	margin:0 0 3% 3%;
	width:47%;
	background-color:#ffffff;
}
.index_2grid ul li a{
	display: block;
	border:solid 1px #efefef;
}
.index_2grid ul li a .img{
	height: 240px;
	overflow: hidden;
}
.index_2grid ul li a .text{
	height: 48px;
	line-height: 24px;
	padding: 20px 30px;
	font-weight: bold;
}
@media screen and (max-width: 1100px) {
	.index_2grid {
		padding: 60px 0;
	}
	.index_2grid h2{
		font-size: 1.6em;
		margin-bottom: 1em;
	}
	.index_2grid ul li a .img{
		height: 160px;
	}
	.index_2grid ul li a .text{
		height: 72px;
		padding: 15px 20px;
	}
}
@media screen and (max-width: 480px) {
	.index_2grid h2{
		font-size: 1.3em;
	}
	.index_2grid h2 span{
		display: block;
	}
	.index_2grid ul{
		max-width: 462px;
		margin-left: auto;
		margin-right: auto;
	}
	.index_2grid ul li{
		float: none;
		margin: 0 auto 20px ;
		width: 100%;
	}
	.index_2grid ul li a .text{
		height: auto;
		padding: 10px 15px;
	}
}

.index_news{
	padding: 80px 0;
	background: #fff;
}
.index_news h2{
}
.index_news ul{
	font-size: 0.9em;
	list-style: none;
}
.index_news ul li{
	margin-bottom: 1em;
}
.index_news ul li span{
	padding-right: 2em;
}
@media screen and (max-width: 1100px) {
	.index_news{
		padding: 60px 0;
	}
	.index_news ul{
		font-size: 1em;
	}
	.index_news ul li span{
		display: block;
		font-size: 0.8em;
		padding-right: 0em;
	}
}
@media screen and (max-width: 760px) {
	.index_news h2{
		text-align: center;
	}
	.index_news ul{
		border-top: dotted 1px #dfdfdf;
	}
	.index_news ul li{
		margin: 0px;
		padding: 10px 0;
		border-bottom: dotted 1px #dfdfdf;
	}
}


/* entry-content（シングルページ、固定ページ）
-------------------------------------------------------------- */

.entry-content a		{color:#1681b2;}
/*.entry-content a:link	{color:#1681b2;}*/
/*.entry-content a:visited{color:#1681b2;}*/
.entry-content a:active	{color:#1681b2;}
.entry-content a:hover	{color:#269bd0;text-decoration:underline;}
.entry-content a:focus	{outline:none;}

.entry-content h2{
	color: #222;
	margin: 3em 0 0.8em 0;
	padding: 0.5em 0px 0.5em 0;
	font-size: 1.6em;
	font-weight: normal;
	font-weight: bold;
	line-height: 1.5;
	border-bottom: dotted 1px #dfdfdf;
	border-bottom: solid 5px #ff999a;
}
@media screen and (max-width: 480px) {
	.entry-content h2{
		font-size: 1.4em;
	}
}
.entry-content h3{
	color: #222;
	margin: 2em 0 0.4em;
	font-size: 1.2em;
	font-weight: normal;
	font-weight: bold;
	line-height: 1.5;
}
.entry-content h2 + h3{/* h2直後のh3は上部の余白なし */
	margin-top: 0;
}
.entry-content strong {
	background: linear-gradient(transparent 50%, #ffffb4 50%);
}
.entry-content h4,
.entry-content b,
.entry-content em,
.entry-content strong {
	font-weight: bold;
}
.entry-content p,
.entry-content ul,
.entry-content ol,
.entry-content dl,
.entry-content blockquote {
	margin-bottom: 1.8em;
}
.entry-content table {
	margin-bottom: 1.6em;
}
.entry-content ul li,
.entry-content dl dd{
	display: list-item;
	list-style-type: disc;
	margin-left: 1.4em;
}
.entry-content ol li{
	margin-left: 1.7em;
}
.entry-content dl dt{
	font-weight:bold;
	margin-top: 0.8em;
}
.entry-content dl dt:first-child{
	margin-top: 0em;
}
.entry-content dl.line dt{
	clear: left;
	float: left;
	margin: 0;
	font-size: 0.9em;
}
.entry-content dl.line dd{
	list-style: none;
	font-size: 0.9em;
}
.entry-content dl.line dd:before{
	content: '：';
}
.entry-content img{
	display: inline;
	margin-bottom: 0.8em;
	border:solid 1px #efefef;
}
.entry-content img + small,
.entry-content img + br + small,
.entry-content iframe + small,
.entry-content iframe + br + small,
.entry-content .youtube + small,
.entry-content .youtube + br + small{
	position: relative;
	top: -1.4em;
}
.entry-content td img,
.entry-content th img{
	display: block;
	margin: 0 auto;
	border: none;
}
.entry-content .source{
	font-size: 0.8em;
}
.entry-content .source img{
	margin-bottom: 0;
}
.entry-content .source,
.entry-content .source a{
	color: #999;
}

.entry-content table{
	width:100%;
	border-collapse: collapse;
	font-size: 0.8em;
	text-align:center;
	/*table-layout:fixed;列幅均等固定*/
}
.entry-content table caption{
	text-align:center;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.entry-content table th,
.entry-content table td{
	line-height:1.5;
	vertical-align:middle;
	padding:5px 10px;
	font-weight:normal;
	border:#e3e3e3 1px solid;
}
.entry-content table th{
	background:#fafafa;
	white-space: nowrap;
}
.entry-content table td{
	background:#ffffff;
}
.entry-content table td img	{
		display:block;
		margin:0 auto;
}
@media screen and (max-width: 640px) {
	.entry-content table{
		display: block;
		overflow: auto;
	}
}
.entry-content blockquote {
    background-color:#fff;
    border: solid 1px #efefef;
    padding:1.6em;
    position:relative;
    z-index:1;
}
.entry-content blockquote:before,
.entry-content blockquote:after {
    font-size: 4em;
    font-family:"ＭＳ Ｐゴシック",sans-serif;
    line-height:1em;
    color:#fff;
    color:#ddd;
    position:absolute;
    z-index:-1;
}
.entry-content blockquote:before {
    content:"“";
    left:0;
    top:0;
}
.entry-content blockquote p:last-child {
    margin-bottom: 0;
}
.entry-content blockquote table,
.entry-content blockquote p,
.entry-content blockquote img {
    margin-bottom: 0;
}
.entry-content small {
    font-size: 0.8em;
    color: #999;
}
.entry-content small a{
    color: #999;
}


/* CTA ボタン */
.cta-wrap{
	line-height: 1.7;
	margin-bottom: 1em;
}
.cta-wrap span.img{
	display: block;
	float: right;
	width: 200px;
	margin-left: 10px;
	border:solid 1px #efefef;
}
.cta-wrap span.img img{
	display: block;
	margin: 0;
	border: none;
}
.cta-btn a,
.cta-btn input[type="submit"]{
	display: block;
	width: 100%;
	margin: 0px auto;
	padding: 20px 0;
	text-align: center;
	text-decoration: none;
	font-size: 1.2em;
	font-weight: bold;
	font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";
	color: #fff!important;
	background: #f59e39;/*ORANGE*/
	border:solid 4px #f59e39;/*ORANGE*/
	/*border-radius:4px;*/
}
.cta-btn a:hover,
.cta-btn input[type="submit"]:hover{
	color: #f59e39!important;/*ORANGE*/
	background: #e69435;/*DARK ORANGE*/
	background: #ffffff;
	text-decoration: none;
	/*transform: translateY(-4px);*/
	/*transition-duration: 0.1s;*/
	/*box-shadow: 0px 5px 0px #ca8738;*/
}
.cta-btn a:active,
.cta-btn input[type="submit"]:active{
	/*box-shadow: 0 0 0 #8b9d27, 0 0 0px rgba(0,0,0,0.1);*/
	/*transform: translateY(6px);*/
	/*transition-duration: 0.1s;*/
}
@media screen and (max-width: 480px) {
	.cta-wrap{
		margin-bottom: 0;
	}
	.cta-wrap span.img{
		float: none;
		width: 100%;
		height: 150px;
		margin: 0px auto 1em;
		overflow: hidden;
	}
	.cta-btn a,
	.cta-btn input[type="submit"]{
		font-size: 1.0em;
	}
}




/* = カテゴリページ
-------------------------------------------------------------- */
.cat-list{
	position: relative;
	display: table;
	table-layout: auto;
	line-height: 1.4;
	width: 100%;
	background: #fff;
	overflow: hidden;
	margin-bottom: 20px;
}
.cat-list .img{
	display: table-cell;
	width: 160px; /* to fix img-cell */
	height: auto;
}
.cat-list .img img{
	margin: 0px;
	display: block;
}
.cat-list .text{
	display: table-cell;
	vertical-align: middle;
	word-wrap: break-word;
	padding: 0 1em;
}
.cat-list .next{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.cat-list .next a{
	display: block;
	width: 100%;
	height: 160px;
	padding-top: 80px;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
	color: white;
	opacity: 0;
	transition:0.2s linear;
}
.cat-list .next a:hover{
	padding-top: 60px;
	background: rgba(0,0,0,0.6);
	opacity: 1;
}

@media screen and (max-width: 760px) {
	.cat-list {
		display: block;
	}
	.cat-list .img{
		display: block;
		float: right;
		width: 90px; /* to fix img-cell */
		padding: 10px 10px 5px 5px;
	}
	.cat-list .img img{
		margin: 0px;
		display: block;
		border-radius:100px;
	}
	.cat-list .text{
		display: block;
		vertical-align: middle;
		padding: 1em;
		word-wrap: break-word;
	}
	.cat-list .next{
		position: relative;
		width: auto;
		padding: 0 10px 10px;
	}
	.cat-list .next a{
		display: block;
		width: auto;
		height: auto;
		margin: 0px auto;
		padding: 10px 0;
		text-align: center;
		font-weight: bold;
		font-size: 1.0em;
		color: #333;
		opacity: 1;
		transition:0.2s linear;
		background: #eee;
	}
	.cat-list .next a:hover{
		padding: 10px 0;
		background: #ddd;
	}
}





/* = メールフォーム
-------------------------------------------------------------- */
/*button*/
#mailform input:hover,
#mailform select:hover,
#mailform textarea:hover{
	background: #ddd;
}
#mailform button{
	cursor:pointer;
	width: 200px;
	padding: 15px;
	background: #ff6666;
	color: #fff;
	font-size: 1.1em;
	font-weight: bold;
	border-radius:4px;
}
@media screen and (max-width: 480px) {
		#mailform button{
		width: 45%;
		padding: 10px 0;
	}
}

#mailform button:hover{
	background: #df5757;
}
#mailform form.soushin,
#mailform form.shuusei{
	display: inline;
}
/* 送信ボタン */
#mailform form.soushin button:before{
	content: "\f1d9";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 10px;
}
/* 修正ボタン */
#mailform form.shuusei button{
	background: #777;
}
#mailform form.shuusei button:hover{
	background: #555;
}
#mailform form.shuusei button:before{
	content: "\f122";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 10px;
}
/*form table*/
#mailform dl{
	margin-bottom: 40px;
}
#mailform dl dt{
	font-size:1.0em;
	font-weight: bold;
	margin-bottom: 5px;
}
#mailform dl dd{
	list-style: none;
	line-height: 1.4em;
	margin-left: 0;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: dotted 1px #ccc;
}
#mailform dl dd p{
	margin:0px;
}
#mailform .must	{
	color:#ff6666;
	padding-left: 5px;
	font-size:0.8em;
	font-weight:normal;
}
#mailform .error{
	color:#ff6666;
	display:block;
	margin-top: 5px;
}
#mailform .errorMsg{
	color:#ff6666;
	margin: 0 0 20px;
	padding: 20px;
	border:solid 1px #ff6666;
	text-align: center;
	font-weight: bold;
}


/* ゴーストボタン
----------------------------------------------*/
.ghost {
	text-align: center;
}
.ghost a,
.ghost form input{
	display: inline-block;
	padding: 16px 40px;
	font-size: 0.9em;
	font-weight: bold;
	color: #333;
	color: #ff999a;
	border:solid 3px #333;
	border:solid 3px #ff999a;
}
.ghost a:hover,
.ghost form input:hover{
	background: #333;
	background: #ff999a;
	color: #FFF;
}
@media screen and (max-width: 480px) {
	.ghost a,
	.ghost form input {
		display: block;
		width: auto;
		padding: 16px 0px;
	}
}


/* テーブル
-------------------------------------------------------------- */

.table_01			{width:100%;text-align:left;background:lightgrey;border-collapse:separate;border-spacing:1px;}
.table_01 th		{line-height:1.5;padding:8px 6px 6px;vertical-align:middle;background:#ddd url(images/bg_gradient60.png) repeat-x;border:solid 1px white;text-shadow:1px 1px 0px white;}
.table_01 td		{line-height:1.5;padding:8px 6px 6px;vertical-align:middle;background:#fff;}

.table_02 			{width:100%;text-align:left;border-top:#e3e3e3 1px solid;border-collapse:collapse;}
.table_02 th		{line-height:1.5;border-bottom:#e3e3e3 1px solid;padding:5px 10px;font-weight:normal;background:#f7f7f7;white-space: nowrap;}
.table_02 td		{line-height:1.5;border-bottom:#e3e3e3 1px solid;padding:5px 10px;}

.table_03 			{width:100%;text-align:left;border-top:#ddd 3px double;border-left:#ddd 1px solid;border-collapse:collapse;}
.table_03 th		{line-height:1.5;border-bottom:#ddd 1px solid;border-right:#ddd 1px solid;padding:8px;font-weight:normal;background:#f7f7f7;font-weight:bold;}
.table_03 td		{line-height:1.5;border-bottom:#ddd 1px solid;border-right:#ddd 1px solid;padding:8px;}

.table_04 			{width:100%;border:#e3e3e3 1px solid;border-collapse:collapse;}
.table_04 th		{line-height:1.5;text-align:center;border-bottom:#e3e3e3 1px solid;border-right:#e3e3e3 1px solid;padding:5px 10px;background:#f7f7f7;font-weight:normal;}
.table_04 td		{line-height:1.5;text-align:center;border-bottom:#e3e3e3 1px solid;border-right:#e3e3e3 1px solid;padding:5px 10px;}

.table_05 			{width:100%;border-collapse:separate;border-top:#e3e3e3 1px solid;border-left:#e3e3e3 1px solid;}
.table_05 th		{line-height:1.5;text-align:center;vertical-align:middle;padding:5px 10px;background:#f7f7f7;font-weight:normal;border-top:white 1px solid;border-left:white 1px solid;border-right:#e3e3e3 1px solid;border-bottom:#e3e3e3 1px solid;}
.table_05 td		{line-height:1.5;text-align:center;vertical-align:middle;padding:5px 10px;background:#ffffff;font-weight:normal;border-top:white 1px solid;border-left:white 1px solid;border-right:#e3e3e3 1px solid;border-bottom:#e3e3e3 1px solid;}
.table_05 td img	{display:block;margin:0 auto;}

.table_01 caption,
.table_02 caption,
.table_03 caption,
.table_04 caption,
.table_05 caption	{font-weight:bold;margin-bottom:5px;text-align:left;}

.responsive-table{
	width:100%;
	max-width: 100%;
	overflow: hidden;
	background:#ffffff;
	border-collapse:separate;
	border-top:#e3e3e3 1px solid;
	border-left:#e3e3e3 1px solid;
	font-size: 0.9em;
}
.responsive-table th,
.responsive-table td{
	line-height: 1.5;
	text-align:center;
	vertical-align:middle;
	padding:10px;
	font-weight:normal;
	border-top:#ffffff 1px solid;
	border-left:#ffffff 1px solid;
	border-right:#e3e3e3 1px solid;
	border-bottom:#e3e3e3 1px solid;
	position: relative;
}
.responsive-table thead th{
	background:#ddd;
	white-space: nowrap;
}
.responsive-table thead th span{
	display: block;
	font-weight:bold;
}
.responsive-table tbody tr{
	position: relative;
}
.responsive-table tbody tr:nth-child(odd){
	background-color: #fafafa;
}
.responsive-table tbody th{
	position: relative;
	font-weight: bold;
}
.responsive-table tbody th a img{
	display:block;
	border-radius: 200px;
	max-width: 60px;
	max-height: 60px;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (max-width: 1100px) {
	.responsive-table{
        display: block;
        position: relative;
        font-size: 0.8em;
    }
	.responsive-table:before{
        content:'';
        display: block;
        width: 30px;
		height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        background:url(images/table_comment.png) no-repeat center center;
    }
	.responsive-table th,
	.responsive-table td{
		padding:5px;
		border-left: none;
		border-right: none;
        min-height: 20px;
	}
	.responsive-table tbody tr:last-child th,
	.responsive-table tbody tr:last-child td{
		margin-right:30px;/* スワイプコメント分のマージン */
	}
	.responsive-table thead{
        display: block;
        float: left;
    }
	.responsive-table thead th{
        display: block;
    }
	.responsive-table thead th span{
		display: inline;
	}
	.responsive-table tbody{
        display: block;
        width: auto;
        position: relative;
        overflow-x: auto;
        white-space: nowrap;
    }
 	.responsive-table tbody tr{
        display: inline-block;
        vertical-align: top;
        margin: 0 -3px;/*何故か隙間ができるので回避*/
    }
 	.responsive-table tbody tr th,
 	.responsive-table tbody tr td{
        display: block;
    }
	.responsive-table th.img, /* .imgのセルは高さ固定して中央配置*/
	.responsive-table td.img{
        height: 60px;
        line-height: 60px;
        text-align: center;
    }
	.responsive-table th.img img,
	.responsive-table td.img img{
        display: block;
        height: 60px;
        margin: 0 auto;
        border-radius: 100px;
    }
}

.responsive-table2{
	width:100%;
	border-collapse:collapse;
	border-spacing:0;
	padding:0;
	margin:0;
	font-size: 0.9em;
}
.responsive-table2 tr{
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
}
.responsive-table2 thead tr th{
	font-weight: bold;
}
.responsive-table2 th,
.responsive-table2 td{
	padding:10px;
	text-align:center;
	border-right:1px solid #ddd;
	border-bottom:1px solid #ddd;
}
@media screen and (max-width: 768px) {
	.responsive-table2 thead{
		display:none;
	}
	.responsive-table2 tr{
		display:block;
		margin-bottom:10px;
		border-bottom:1px solid #ddd;
	}
	.responsive-table2 td{
		display:block;
		text-align:right;
		border-bottom:1px dotted #ddd;
	}
	.responsive-table2 td:last-child{
		border-bottom:0;
	}
	.responsive-table2 td:before {
		content:attr(data-label);
		float:left;
		font-weight: bold;
	}
}


/* = 比較表
-------------------------------------------------------------- */
.sortable{
	width:100%;
	max-width: 100%;
	border-collapse:separate;
	border-top:#e3e3e3 1px solid;
	border-left:#e3e3e3 1px solid;
	font-size: 0.9em;
	box-shadow: 0px 3px 5px rgba(0,0,0,0.1);
	font-family: "メイリオ","Meiryo","YuGothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Arial","Verdana","sans-serif";
}
.sortable th,
.sortable td{
	line-height: 1.5;
	text-align:center;
	vertical-align:middle;
	padding:10px;
	font-weight:normal;
	border-top:#ffffff 1px solid;
	border-left:#ffffff 1px solid;
	border-right:#e3e3e3 1px solid;
	border-bottom:#e3e3e3 1px solid;
	position: relative;
}
.sortable tbody img{
	display: inline;
	margin: 0 auto 5px;
}
.sortable thead th{
	background:#ddd;
	font-weight: bold;
	white-space: nowrap;
	padding: 10px 10px 25px 10px;
	position: relative;
}
.sortable thead th.header{
	cursor: pointer;
}
.sortable thead th:before{/* for background */
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 20px;
	background-color:#ccc;
}
.sortable thead th.header:before{/* default icon */
	position:absolute;
	bottom:0 ;
	content: "\f150";/* toggle down */
	content: "\f078";/* chevron down */
	content: "\f0d7";/* caret down */
	font-family: FontAwesome;
	font-weight: normal;
	font-size: 16px;
	color: #aaa;
}
.sortable thead th.headerSortDown:before{
	color: #666;
}
.sortable thead th.headerSortUp:before{
	content: "\f151";/* toggle up */
	content: "\f077";/* chevron up */
	content: "\f0d8";/* caret up */
	color: #666;
}
.sortable thead th.header:hover{
	background-color:#ccc;
}
.sortable thead th span{
	display: block;
	font-weight:bold;
}
.sortable tbody tr{
	background:#fff;
	position: relative;
}
.sortable tbody tr:hover{
	background-color:#fffbc7;
}
.sortable tbody th{
	position: relative;
	font-weight: bold;
	text-align: center;
}
.sortable tbody td span{
	display: block;
}
.sortable .titleline{
	word-wrap:break-word;
}
.sortable .titleline img{
	display: block;
	margin: 0 auto 5px;
}
.sortable .label{
	white-space: nowrap;
	font-size: 11px;
	font-weight: bold;
	color: #fff;
	margin: 2px auto;
	padding: 3px 2px;
	border-radius: 2px;
}
@media screen and (max-width: 1100px) {
	.sortable{
		display:block;
		box-shadow: none;
		border: none;
	}
	.sortable thead{
		display:none;
	}
	.sortable tbody{
		width: 100%;
		display:-webkit-box;
		display:-moz-box;
		display:box; /* for Mobile */
		display:-webkit-flex;
		display:flex;

		/* 子要素の折り返しを許可 */
		-ms-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;

		/* 均等に間隔を空ける */
		-moz-box-pack:justify;
		-ms-box-pack:justify;
		box-pack:justify;
		flex-pack:justify;
		-webkit-justify-content:space-between;
		justify-content:space-between;
	}
	.sortable tbody tr{/*NEEEEEEEEEEEEEEEEE*/
		display:block;
		box-shadow: 0px 3px 5px rgba(0,0,0,0.1);
	    width: 43%;
	    padding: 3% 3% 60px;
		margin: 0 0 1em;
		position: relative;
	}
	.sortable tbody th{
		display:block;
		width: 100%!important; /* imgの幅分をstyleで確保していたのを打ち消す*/
		text-align: center;
	}
	.sortable tbody th{
		margin: 0 0 10px;
		padding: 0 0 10px;
		border: none;
		border-bottom:dotted 1px silver;
	}
	.sortable tbody td{
		display:block;
		padding: 0px;
		text-align:left;
		border: none;
	}
	.sortable tbody td:before {
		content:attr(data-label);/* 指定した属性名の値を表示 */
		display: inline;
		font-weight: bold;
	}
	.sortable tbody td:after { /*clearfix*/
		content:"";
		clear: both;
	}
	.sortable tbody td.titleline{
		text-align:center;
		padding: 5px 10px 10px;
	}
	.sortable tbody td.buttonline{/* CTAボタン行 */
		position: absolute;
		bottom: 0;
		left: 0;
		width: 90%;
		margin: 0;
		padding: 10px 5%;
		text-align:center;
		border-top:dotted 1px silver;
	}
	.sortable tbody td.titleline:before,
	.sortable tbody td.buttonline:before{
		display: none;
	}
	.sortable tbody td.buttonline a{
		width: 42%;
		float:right;
	}
	.sortable tbody td.buttonline a:first-child{
		float:left;
	}
	.sortable tbody td span{
		display: inline;
	}
	.sortable tbody td span:before {
		content:attr(data-label);/* 指定した属性名の値を表示 */
	}
	.sortable tbody .label{
		display: inline-block;
		font-size: 10px;
	}
	.sortable tbody .hiddenlabel{
		display: none;
	}
	.sortable tbody .nowrap{
		white-space: normal!important;/* スマホ時は nowrap を無効化 */
	}
	.sortable tbody .hidden_mobile{
		display: none;
	}
}
.sortGroup .title{
	display: inline-block;
	width: 100px;
	font-size: 0.9em;
	font-weight: bold;
}
.sortGroup button{
	display: inline;
    border: solid 1px #ccc;
    background-color: #fff;
    margin: 0 3px 5px 0;
    padding: 5px 10px;
    font-size: 0.75em;
    font-weight: bold;
    border-radius: 3px;
    cursor:pointer;
}
.sortGroup button:hover{
	background-color: #ccc;
	cursor: pointer;
}
.sortGroup button.current{
	color: #fff;
	background-color: #333;
}
.sortGroup img{
	cursor: pointer;
}
.sortGroup img:hover{
	opacity: 0.5;
}
@media screen and (max-width: 760px) {
	.sortGroup .title{
		display: block;
		margin-top: 10px;
	}
	.sortGroup form input{
		border:solid 1px #ccc;
		background-color: #ddd;
		margin-right: 3px;
		padding: 0px 10px;
		font-size: 0.75em;
		font-weight: bold;
		border-radius: 2px;
	}
}


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

/* オンマウスで半透明の白背景を適用 */
.rollover_01			{opacity:1.0;-moz-opacity:1.0;-webkit-transition:0.5s linear;-moz-transition:0.5s linear;-o-transition:0.5s linear;}
.rollover_01:hover 		{background:white;opacity:0.5;-moz-opacity:0.5;-ms-filter:"alpha(opacity=50)";filter:alpha(opacity=50);-webkit-transition:0.1s linear;-moz-transition:0.1s linear;-o-transition:0.1s linear;cursor:pointer;}
.rollover_01:hover img 	{background:white;opacity:0.5;-moz-opacity:0.5;-ms-filter:"alpha(opacity=50)";filter:alpha(opacity=50);-webkit-transition:0.1s linear;-moz-transition:0.1s linear;-o-transition:0.1s linear;cursor:pointer;}

/* オンマウスで透明にする */
.rollover_02		{opacity:1.0;-moz-opacity:1.0;-webkit-transition:0.5s linear;-moz-transition:0.5s linear;-o-transition:0.5s linear;}
.rollover_02:hover	{opacity:0;-moz-opacity:0;-ms-filter:"alpha(opacity=50)";filter:alpha(opacity=50);-webkit-transition:0.1s linear;-moz-transition:0.1s linear;-o-transition:0.1s linear;cursor:pointer;}

/* オンマウスで110%拡大にする */
.rollover_03		{-webkit-transform: scale(1.0);-moz-transform: scale(1.0);-webkit-transition:0.1s linear;-moz-transition:0.1s linear;-o-transition:0.1s linear;}
.rollover_03:hover	{-webkit-transform: scale(1.1);-moz-transform: scale(1.1);cursor:pointer;}

/* オンマウスで傾ける */
.rollover_04		{-webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;-ms-transition: all 0.5s ease;transition: all 0.5s ease;}
.rollover_04:hover	{-webkit-transform: rotate(-10deg);-moz-transform: rotate(-10deg);-o-transform: rotate(-10deg);-ms-transform: rotate(-10deg);transform: rotate(-10deg);}

/* オンマウスで明るくする */
.rollover_05		{-webkit-filter: brightness(-30%);-webkit-transition: all 1s ease;-moz-transition: all 1s ease;-o-transition: all 1s ease;-ms-transition: all 1s ease;transition: all 1s ease;}
.rollover_05:hover	{-webkit-filter: brightness(0%);}

/* オンマウスでモノクロにする */
.rollover_06		{-webkit-transition: all 1s ease;-moz-transition: all 1s ease;-o-transition: all 1s ease;-ms-transition: all 1s ease;transition: all 1s ease;}
.rollover_06:hover	{-webkit-filter: grayscale(100%);}

/* img要素を半透明にしてドロップシャドウ */
.hover_01 img{
	cursor:pointer;
	opacity:1.0;-moz-opacity:1.0;-ms-filter:"alpha(opacity=100)";filter:alpha(opacity=100);
	-webkit-transition:0.2s linear;-moz-transition:0.2s linear;-o-transition:0.2s linear;
	box-shadow:#999 0px 0px 0px;-webkit-box-shadow:#999 0px 0px 0px;-moz-box-shadow:#999 0px 0px 0px;
}
.hover_01 img:hover	{
	opacity:0.8;-moz-opacity:0.8;-ms-filter:"alpha(opacity=80)";filter:alpha(opacity=80);
	-webkit-transition:0.4s linear;-moz-transition:0.4s linear;-o-transition:0.4s linear;
	box-shadow:#ccc 0px 0px 8px;-webkit-box-shadow:#ccc 0px 0px 8px;-moz-box-shadow:#ccc 0px 0px 8px;
}


/* ツールチップ
-------------------------------------------------------------- */

.tooltip_01 span.tooltip{/*位置調整はspan要素のmarginで*/
	visibility:hidden;/*display:none;（visibilityじゃないとtransitionが効かない）*/
	position:absolute;/* Position of Tooltip */
	display:block;/*表示位置がinline上になるのを防止*/
	color:#fff;
	text-align:left;
	-webkit-transition:0.1s linear;-moz-transition:0.1s linear;-o-transition:0.1s linear;
}
.tooltip_01:hover span.tooltip{
	visibility:visible;/*display:block;*/
	display:block;/*for Firefox*/
	padding:10px;/*0→10pxにtransition*/
	text-align:left;
	background:#000;-ms-filter:"alpha(opacity=70)";filter:alpha(opacity=70);/* for IE */
	background:rgba(247,49,49,0.85);/* レッド */
	background:rgba(41,137,216,0.85);/* ブルー */
	background:rgba(241,218,54,0.85);/* イエロー */
	background:rgba(41,154,11,0.85);/* グリーン */
	background:rgba(51,51,51,0.85);/* ブラック */
	box-shadow:lightgrey 0px 0px 5px;-webkit-box-shadow:lightgrey 0px 0px 5px;-moz-box-shadow:lightgrey 0px 0px 5px;
	border-radius:4px;-moz-border-radius:4px;-webkit-border-radius:4px;
}


/* 画像キャプション
-------------------------------------------------------------- */

/* 画像内に黒透明背景で挿し込むタイプ（IEだとopacityを使うので文字が読みにくい） */
.caption_01{
	position:relative;border:solid 1px silver;
}
.caption_01 img{
	display: block;
}
.caption_01 span {
    position:absolute;bottom:0;width:100%;color:white;text-align:center;font-size:0.9em;padding:5px 0 3px;
	background:#000;-ms-filter:"alpha(opacity=55)";filter:alpha(opacity=55);/* for IE */
    background:rgba(51,51,51,0.6);
}

/* 画像の下にキャプチャを表示するタイプ */
.caption_02{
	position:relative;padding-bottom:25px;
}
.caption_02 img{
	display:block;
}
.caption_02 span {
    position:absolute;bottom:0px;width:100%;height:25px;line-height:25px;text-align:center;font-size:0.9em;
}

/* 画像の中に「クリックで拡大」のコメントを入れる（aタグにつけること！） */
.caption_03{
	position:relative;
}
.caption_03:before{
	content:"※クリックで拡大";
	display:block;
	white-space:nowrap;
	position:absolute;left:0;top:0;
	font-size:10.5px;
	z-index:99;
	padding:3px 6px;
}

/* 画像の中に「クリックで拡大」のコメントを入れる（aタグにつけること！） */
.caption_04{
	position:relative;
	}
.caption_04:before{
	content:"※クリックで拡大";
	display:block;
	white-space:nowrap;
	position:absolute;left:0;top:0;
	font-size:10.5px;
	z-index:99;
	padding:3px 6px;
	background-color:#FFF;
	background-color:rgba(255,255,255,0.5);
	border:solid 0px black;
	}

/* 画像の中に「クリックで拡大」のコメントを入れる（aタグにつけること！） */
.caption_05{
	position:relative;
}
.caption_05:before{
	content:"※クリックで拡大";
	display:block;
	white-space:nowrap;
	position:absolute;left:0;top:0;
	font-size:10.5px;
	z-index:99;
	padding:3px 6px;
	background-color:#000;
	background-color:rgba(0,0,0,0.5);
	color:#FFF;
}



/* ゴーストボタン
----------------------------------------------*/
.btn_ghost,
.btn_ghost2 {
	display: inline-block;
	text-align: center;
}
.btn_ghost a,
.btn_ghost input,
.btn_ghost2 a,
.btn_ghost2 input{
	position: relative;
	line-height: 1.0; /*to Align the height*/
	display: inline-block;
	padding: 16px 40px;
	font-weight: bold;
	transition:0.2s ease;
	-webkit-appearance: none;
	z-index: 1;
	background: #333;
	color: #fff;
	border:solid 3px #333;
}
.btn_ghost2 a,
.btn_ghost2 input{
	background: none;
	color: #333;
}
.btn_ghost a:hover,
.btn_ghost2 a:hover{
	text-decoration: none;
	color: #333;
	background: #f8f5ee; /* =background-color */
}
.btn_ghost2 a:hover{
	background: #333;
}
.btn_ghost input:hover,
.btn_ghost2 input:hover{
	color: #333;
	background: none;
}
.btn_ghost2 a:hover,
.btn_ghost2 input:hover{
	color: #fff;
	background: #333;
}
.btn_ghost a:after,
.btn_ghost2 a:after{
	content: "";
	display: block;
	position: absolute;
	top: 0%;
	left: 50%;
	width: 0%;
	height: 100%;
	z-index: -1;
	transition:0.2s ease;
	background: #f8f5ee; /* =background-color */
}
.btn_ghost2 a:after{
	background: #333;
}
.btn_ghost a:hover:after,
.btn_ghost2 a:hover:after{
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 480px) {
	.btn_ghost a,
	.btn_ghost input,
	.btn_ghost2 a,
	.btn_ghost2 input {
		display: block;
		width: auto;
		padding: 16px 0px;
	}
	.btn_ghost input,
	.btn_ghost2 input {
		width: 100%;
	}
}

/* 立体ボタン
----------------------------------------------*/
.btn_solid {
	display: inline-block;
	text-align: center;
}
.btn_solid a,
.btn_solid input{
	display: inline-block;
	line-height: 1.0; /*to Align the height*/
	padding: 16px 40px;
	position: relative;
    cursor: pointer;
	background-color: #f59e39;
	border-radius: 2px;
	box-shadow: 0 3px 0 #ca8738;
	color: #fff;
    font-weight: bold;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    text-align: center;
    transition: none;
	-webkit-appearance: none;
}
.btn_solid a:hover,
.btn_solid input:hover {
    text-decoration: none;
	color: #fff;
	top: 3px;
	box-shadow: none;
	box-shadow: 0 5px 5px rgba(0,0,0,0.1) inset;
}


/* Prev&Next ボタン
----------------------------------------------*/
.btn_prev,
.btn_next {
	display: inline-block;
	text-align: center;
}
.btn_prev a,
.btn_next a{
	display: block;
	line-height: 1.0; /*to Align the height*/
	min-width: 200px;
	padding: 16px 0px;
	font-weight: bold;
	background: none;
	color: #333;
	border:solid 3px #333;
	transition:0.3s ease;
	z-index: 1;
}
@media screen and (max-width: 480px) {
	.btn_prev,
	.btn_next{
		width: 48%;
	}
	.btn_prev a,
	.btn_next a{
		min-width: initial;
	}
}
.btn_prev a:hover,
.btn_next a:hover{
	color: #fff;
	background: #333;
	cursor:pointer;
    text-decoration: none;
}
.btn_prev a:after,
.btn_next a:before{
	content: "\f061";/* fa-arrow-right  */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	transition:0.3s ease;
	opacity: 0;
	width: 1em;
}
.btn_prev a:after{
	content: "\f061";/* fa-arrow-right  */
	margin-left: -1em;
}
.btn_next a:before{
	content: "\f060";/* fa-arrow-left  */
	margin-right: -1em;
}
.btn_prev a:hover:after,
.btn_next a:hover:before{
	margin:0 0.5em;
	opacity: 1;
}

/* メールフォーム用ボタン
----------------------------------------------*/
.btn_check,
.btn_send ,
.btn_modify {
	display: inline-block;
	text-align: center;
}
.btn_check button,
.btn_send button,
.btn_modify button{
	position: relative;
	display: block;
	line-height: 1.0; /*to Align the height*/
	min-width: 220px;
	height: 76px;
	padding-right: 42px;
	font-weight: bold;
	background: none;
	transition:0.3s ease;
	z-index: 1;
	overflow: hidden;
}
@media screen and (max-width: 480px) {
	.btn_check,
	.btn_send,
	.btn_modify {
		display: block;
		width: 100%;
		margin-bottom: 10px;
	}
	.btn_check button,
	.btn_send button,
	.btn_modify button{
		width: 100%;
		min-width: initial;
	}
}
.btn_check button,
.btn_send button{
	color: #3399cc;
	border:solid 3px #3399cc;
}
.btn_modify button{
	color: #a3a3a3;
	border:solid 3px #a3a3a3;
}
.btn_check button:hover,
.btn_send button:hover,
.btn_modify button:hover{
	cursor:pointer;
	box-shadow: 0 10px 10px rgba(0,0,0,0.0.8) inset;
}
.btn_check button:after,
.btn_send button:after,
.btn_modify button:after{
	content: "\f061";/* fa-arrow-right  */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	transition:0.3s ease;
	position: absolute;
	top: 10px;
	right: 0;
	width: 50px;
	height: 50px;
	line-height: 50px;
}
.btn_check button:after{
	content: "\f061";/* fa-arrow-right  */
	border-left:solid 1px #3399cc;
}
.btn_send button:after{
	content: "\f1d8";/* fa-paper-plane  */
	border-left:solid 1px #3399cc;
}
.btn_modify button:after{
	content: "\f040";/* fa-pencil  */
	border-left:solid 1px #a3a3a3;
}
.btn_check button:hover:after,
.btn_send button:hover:after,
.btn_modify button:hover:after{
	top: 0;
	width: 100%;
	height: 100%;
	font-size: 1.6em;
	line-height: 70px;
	background: #cedde5;
	background: rgba(206,221,229,0.9);
}
.btn_modify button:hover:after{
	background: rgba(226,226,226,0.9);
}


/* フレックスレイアウト
-------------------------------------------------------------- */
.flex{
	display: flex; /* IE10以上 */
	flex-wrap: wrap; /* 子要素を折り返す（子要素のflex-basis必須） */
	margin-left: -32px;
	/*justify-content: flex-start;*/
	/*justify-content: space-between;*/
}
.reverse	{flex-direction: row-reverse;}
.align_c	{align-items: center;}
.align_t	{align-items: flex-start;}
.align_b	{align-items: flex-end;}

.flex > div,
.flex > p,
.flex > article,
.flex > section,
.flex > aside,
.flex > li{
	flex-grow: 0; /* Flexアイテムの「伸びる」倍率 */
	flex-shrink: 1; /* Flexアイテムの「縮む」倍率 */
	flex-basis: 100%; /* デフォルト値は auto だがIE10-11でバグがあるので単位必須 */
	flex-basis: auto;
	margin:0 0 32px 32px;
	box-sizing: border-box;
	/*border:solid 1px red;*/
}
/*.flex > div img:first-child,
.flex > p img:first-child,
.flex > article img:first-child,
.flex > section img:first-child,
.flex > aside img:first-child,
.flex > li img:first-child{
	margin-top: 0;
}
.flex > div img:last-child,
.flex > p img:last-child,
.flex > article img:last-child,
.flex > section img:last-child,
.flex > aside img:last-child,
.flex > li img:last-child{
	margin-bottom: 0;
}*/
.flex > .col1	{flex-basis:calc(100 / 12 * 1% - 32px);}
.flex > .col2	{flex-basis:calc(100 / 12 * 2% - 32px);}
.flex > .col3	{flex-basis:calc(100 / 12 * 3% - 32px);}
.flex > .col4	{flex-basis:calc(100 / 12 * 4% - 32px);}
.flex > .col5	{flex-basis:calc(100 / 12 * 5% - 32px);}
.flex > .col6	{flex-basis:calc(100 / 12 * 6% - 32px);}
.flex > .col7	{flex-basis:calc(100 / 12 * 7% - 32px);}
.flex > .col8	{flex-basis:calc(100 / 12 * 8% - 32px);}
.flex > .col9	{flex-basis:calc(100 / 12 * 9% - 32px);}
.flex > .col10	{flex-basis:calc(100 / 12 * 10% - 32px);}
.flex > .col11	{flex-basis:calc(100 / 12 * 11% - 32px);}
.flex > .col12	{flex-basis:calc(100 / 12 * 12% - 32px);}

@media screen and (max-width:1100px) {
	.flex > .col1lg	{flex-basis:calc(100 / 12 * 1% - 32px);}
	.flex > .col2lg	{flex-basis:calc(100 / 12 * 2% - 32px);}
	.flex > .col3lg	{flex-basis:calc(100 / 12 * 3% - 32px);}
	.flex > .col4lg	{flex-basis:calc(100 / 12 * 4% - 32px);}
	.flex > .col5lg	{flex-basis:calc(100 / 12 * 5% - 32px);}
	.flex > .col6lg	{flex-basis:calc(100 / 12 * 6% - 32px);}
	.flex > .col7lg	{flex-basis:calc(100 / 12 * 7% - 32px);}
	.flex > .col8lg	{flex-basis:calc(100 / 12 * 8% - 32px);}
	.flex > .col9lg	{flex-basis:calc(100 / 12 * 9% - 32px);}
	.flex > .col10lg	{flex-basis:calc(100 / 12 * 10% - 32px);}
	.flex > .col11lg	{flex-basis:calc(100 / 12 * 11% - 32px);}
	.flex > .col12lg	{flex-basis:calc(100 / 12 * 12% - 24px);width:calc(100 / 12 * 12% - 24px);/* 内包する要素のwidthを%指定するためにはwidth必須 */}
}
@media screen and (max-width:768px) {
	.flex > .col1md	{flex-basis:calc(100 / 12 * 1% - 32px);}
	.flex > .col2md	{flex-basis:calc(100 / 12 * 2% - 32px);}
	.flex > .col3md	{flex-basis:calc(100 / 12 * 3% - 32px);}
	.flex > .col4md	{flex-basis:calc(100 / 12 * 4% - 32px);}
	.flex > .col5md	{flex-basis:calc(100 / 12 * 5% - 32px);}
	.flex > .col6md	{flex-basis:calc(100 / 12 * 6% - 32px);}
	.flex > .col7md	{flex-basis:calc(100 / 12 * 7% - 32px);}
	.flex > .col8md	{flex-basis:calc(100 / 12 * 8% - 32px);}
	.flex > .col9md	{flex-basis:calc(100 / 12 * 9% - 32px);}
	.flex > .col10md	{flex-basis:calc(100 / 12 * 10% - 32px);}
	.flex > .col11md	{flex-basis:calc(100 / 12 * 11% - 32px);}
	.flex > .col12md	{flex-basis:calc(100 / 12 * 12% - 24px);width:calc(100 / 12 * 12% - 24px);/* 内包する要素のwidthを%指定するためにはwidth必須 */}
}
@media screen and (max-width:480px) {
	.flex > .col1sm	{flex-basis:calc(100 / 12 * 1% - 32px);}
	.flex > .col2sm	{flex-basis:calc(100 / 12 * 2% - 32px);}
	.flex > .col3sm	{flex-basis:calc(100 / 12 * 3% - 32px);}
	.flex > .col4sm	{flex-basis:calc(100 / 12 * 4% - 32px);}
	.flex > .col5sm	{flex-basis:calc(100 / 12 * 5% - 32px);}
	.flex > .col6sm	{flex-basis:calc(100 / 12 * 6% - 32px);}
	.flex > .col7sm	{flex-basis:calc(100 / 12 * 7% - 32px);}
	.flex > .col8sm	{flex-basis:calc(100 / 12 * 8% - 32px);}
	.flex > .col9sm	{flex-basis:calc(100 / 12 * 9% - 32px);}
	.flex > .col10sm	{flex-basis:calc(100 / 12 * 10% - 32px);}
	.flex > .col11sm	{flex-basis:calc(100 / 12 * 11% - 32px);}
	.flex > .col12sm	{flex-basis:calc(100 / 12 * 12% - 24px);width:calc(100 / 12 * 12% - 24px);/* 内包する要素のwidthを%指定するためにはwidth必須 */}
}


ol.number{
	counter-reset: number;
	/* margin: 0; */
}
ol.number > li{
	counter-increment: number;
	list-style: none;
	position: relative;
	margin-left: 1em;
	padding-left: 1.6em;
	padding-bottom: 2em;
}
ol.number > li:not(:last-child){
}
ol.number > li::before{
	content: counter(number);
	position: absolute;
	left: -0.9em;
	width: 1.8em;
	height: 1.8em;
	line-height: 1.8em;
	text-align: center;
	border-radius: 50px;
	background-color: #ff999a;
	color: white;
}
