@charset "utf-8";
/*-------------------------------------------*/
/*初期化*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
* { margin: 0px; padding: 0px; line-height:1.4; word-wrap: break-word; font-weight:normal; }
ul { list-style: none; }
strong { font-weight: bold; }
#description, #header, #keyvisual, #main, #footer, .block { margin-left: auto; margin-right:auto; }
.pagewidth { margin-left: auto; margin-right:auto; }
a { color:#333; text-decoration:underline; font-size:100%; overflow:hidden; outline:none; }
a:hover { color:#0066FF; text-decoration: none; }
img, a img { border: no; text-decoration:none; max-width:100%;}
.clearBoth { clear:both; font-size:1px; height:0; text-align:center; }
iframe { vertical-align: bottom;}

/*-------------------------------------------*/
/*	#スマホとパソの表示分け
/*-------------------------------------------*/
@media screen and (max-width:768px){.pc {        display: none !important;    } }
@media screen and (min-width:768px){.sp{    	display: none !important;    }}


/*-------------------------------------------*/
/*	#ナビゲーション
/*-------------------------------------------*/
/* --------http://theorthodoxworks.com/web-design/drop-down-menu-multi-css/--------- */
#menu-glnv { position: relative; z-index: 100; }
#menu-glnv {display: flex; display: -webkit-flex; /* Safari */ justify-content: space-around; -webkit-justify-content: space-around; /* Safari */-webkit-align-items: center; align-items: center;}
#menu-glnv>li { margin-left:0 !important; margin-right:0 !important; }
#menu-glnv>li { flex-grow: 1; -webkit-flex-grow: 1; /* Safari */ }
ul.sub-menu { visibility: hidden; opacity: 0; z-index: 100; }
#menu-glnv > li:hover { -webkit-transition: all .5s;transition: all .5s;
}
.sub-menu li { border-top: 1px dashed #CCC; }
.init-bottom:after { content: ''; display: inline-block; width: 6px; height: 6px; margin: 0 0 0 15px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
#menu-glnv:after { clear: both; }
#menu-glnv { *zoom: 1;}

#menu-glnv li:first-child { border:none; }/*仕切り線を最初だけ削除*/
/* --------------------------------------------------- multi menu */
li ul.sub-menu { position: absolute; top: 50px; width:200px; background-color:rgba( 255, 255, 255, 0.8 ); -webkit-transition: all .8s ease; transition: all .8s ease;
padding-left:15px; padding-right:15px; text-align:left; }
li:hover ul.sub-menu { top: 50px; visibility: visible; opacity: 1; }
li ul.sub-menu li { position: relative; padding-top:10px; padding-bottom:10px; }
li ul.sub-menu li:hover { color:#036; }
.init-right:after { content: ''; display: inline-block; width: 6px; height: 6px; margin: 0 0 0 15px; border-right: 1px solid #fff; border-top: 1px solid #fff; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
/* --------------------------------------------------- mega menu */

li.menu__mega ul.sub-menu { position: absolute; top: 40px; left: 0; box-sizing: border-box; width: 80%; padding: 20px 2%; background: #C60; -webkit-transition: all .2s ease;
transition: all .2s ease;
}
li.menu__mega:hover ul.sub-menu { top: 50px; visibility: visible; opacity: 1; }
li.menu__mega ul.sub-menu > li { float: left; width: 32%; border: none; }
 li.menu__mega ul.sub-menu > li:nth-child(3n+2) {
margin: 0 1%;
}
/* ------------スマホ時 */
.collapse {text-align: center;padding:5px 0; color:#fff;}
#toggleDown {text-align: center}
#toggleDown a {color:#fff ;text-decoration: none;}
#toggleDown li {padding:8px 0;}

@media screen and (min-width: 320px) {
	.collapse {font-size: 1.1em}
	#toggleDown a {font-size: .9em;}
	#toggleClick{display:block;}
	#toggleDown{display:none;}
	#toggleClick {
    margin-top: -67px;
}
}
@media screen and (min-width: 375px) {
	.collapse {font-size: 1.2em}
	#toggleDown a {font-size: 1em;}
	#toggleClick{display:block;}
	#toggleDown{display:none;}
		#toggleClick {
    margin-top: 0px;
}
	}
@media screen and (min-width: 414px) {
	.collapse {font-size: 1.3em}
	#toggleDown a {font-size: 1.1em;}
	#toggleClick{display:block;}
	#toggleDown{display:none;}
	#toggleClick {
    margin-top: 0px;
}
	}
@media screen and (min-width: 767px) {
	#toggleClick{display:none;}
	#toggleDown{display:none;}
	}


/*-------------------------------------------*/
/*	▼TOPページへのスクロール
/*-------------------------------------------*/
#page-top { position: fixed; bottom: 50px; right: 20px; font-size: 67%; opacity:0.7; }
#page-top a { text-decoration: none; color: #fff; width: 70px; padding:20px 0; text-align: center; display: block; border-radius: 5px; }
#page-top a:hover { text-decoration: none; background: #999; }



/*-------------------------------------------*/
/*	#テーブルをスクロールさせる
/*-------------------------------------------*/
table.tablescroll {	overflow: auto;	white-space: nowrap;	display:block;	width:auto;}
table.tablescroll tbody {	width: 100%;	display:table;}
 /*tableにスクロールバーを追加*/
table.tablescroll::-webkit-scrollbar {	height: 5px;}
 /*tableにスクロールバーを追加*/table::-webkit-scrollbar-track {	background: #F1F1F1;}
 /*tableにスクロールバーを追加*/
table.tablescroll::-webkit-scrollbar-thumb {	background: #BCBCBC;}
table.tablescroll td  ,table.tablescroll th { display: table-cell !important;}

/*-------------------------------------------------------------------------------------*/
/*ブログページ　
/*-------------------------------------------------------------------------------------*/
ul.itiran li { margin-bottom:20px; padding-bottom:20px;;}
dl.itiran_dl { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; }
dl.itiran_dl dt { width:150px; height:150px; overflow:hidden;}
dl.itiran_dl dd {flex: 1; text-align:left !important;  margin-left:30px;}
.blog_thum { width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size: cover; }
.blog_thum a { display:block;  width:100%; height:100%;}
.blog_thum span { visibility: hidden; display: none;}


table.tabledesign_1 { text-align:left;}
table.tabledesign_1 th , table.tabledesign_1 td { padding:5px;}
table.tabledesign_1 tr {	background: #ffeaef;}
table.tabledesign_1 td { background-color:#FFF;} 
table.tabledesign_1 th  { font-weight:bold;}

/*-------------------------------------------*/
/*	#フォーム
/*-------------------------------------------*/
label { cursor:pointer; }
input[type="checkbox"].on-off { display: none; }
.formbox01 { -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; margin: 0; padding: 0; list-style: none; }
.formbox01 { padding-top:3px; }
input[type="checkbox"].on-off + div.formbox01 { height: 0; overflow: hidden; }
input[type="checkbox"].on-off:checked + div.formbox01 { height:450px; }
input[type="checkbox"].on-off:checked + div.formbox02 { height:auto; }
.bsform { display:block; width:100%; height:30px; padding:6px 12px; font-size:14px; line-height:2; color:#555; vertical-align:middle; background-color:#fff; background-image:none; border:1px solid #ccc; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); -webkit-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s
}
.btn-primary { color:#fff; background-color:#428bca; border-color:#357ebd }
.btn { display:inline-block; padding:6px 12px; margin-bottom:0; font-size:14px; font-weight:normal; line-height:1.428571429; text-align:center; white-space:nowrap; vertical-align:middle; cursor:pointer; background-image:none; border:1px solid transparent; border-radius:4px; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; -o-user-select:none; user-select:none }
.btn:focus { outline:thin dotted; outline:5px auto -webkit-focus-ring-color; outline-offset:-2px }
.btn:hover, .btn:focus { color:#333; text-decoration:none }
.bsform:focus { border-color:#66afe9; outline:0; -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6) }
.bsform:-moz-placeholder {
color:#999
}
.bsform::-moz-placeholder {
color:#999;
opacity:1
}
.bsform:-ms-input-placeholder {
color:#999
}
.bsform::-webkit-input-placeholder {
color:#999
}
.bsform[disabled], .bsform[readonly], fieldset[disabled] .bsform { cursor:not-allowed; background-color:#eee }
textarea.bsform { height:auto }
/*お問い合わせフォーム用*/
#formWrap { width:850px; margin:0 auto;  line-height:120%; font-size:90%; }
table.formTable { width:100%; margin:0 auto; border-collapse:collapse; }
table.formTable td, table.formTable th { border:1px solid #ccc; padding:10px; }
table.formTable th { width:30%; font-weight:normal; background:#efefef; text-align:left; }

/*-------------------------------------------*/
/*	クリック 表示 折りたたみ　アニメーション
/*-------------------------------------------*/
/*全体*/
.hidden_box {    margin: 2em 0;    padding: 0;}
/*ボタン装飾*/
.hidden_box label { display:block; text-align:left; padding: 15px;    font-weight: bold; border-radius: 5px; cursor :pointer; border:#CCC solid 1px;}
/*アイコンを表示*/
.hidden_box label:before { display: inline-block; content: '\f054'; font-family: 'FontAwesome'; padding-right: 5px; color:#999;}
/*アイコンを切り替え*/
.hidden_box input:checked ~ label:before { content: '\f078'; color: #668ad8;}
/*チェックは見えなくする*/
.hidden_box input { display: none;}
/*中身を非表示にしておく*/
.hidden_box .hidden_show { height: 0;    padding: 0;    overflow: hidden;    opacity: 0;    transition: 0.4s;}
/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {  padding: 10px 0;    height: auto;    opacity: 1;}

/*--------------------------------
SNS
---------------------------------*/

.sns{
	box-sizing:border-box;
	width:70%; height:150px;
	margin:0 auto;
	padding:0 0 20px;
}

.snstext{
	font-size:13px;
	vertical-align:middle;
	padding-left:10px;
}

.snscount{
	font-size:13px;
	vertical-align:middle;
	padding:0 10px;
}

.post .sns ul {
	list-style:none;
	padding:0px;
	margin:0px 0px 20px;

}
.sns li {
	float:left;
	list-style:none;
	width:50%;
}

.sns li a {
	font-size:15px;
	position:relative;
	display:block;
	padding:5px 10px 5px 15px;
	color:#fff;
	border-radius:3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	text-decoration: none;
	height:28px;
	margin:5px;
	cursor:pointer;
	line-height:25px;
}

.sns li a:hover {
}

/* ツイッター */
.sns .twitter a {
	background:#55acee;
}
.sns .twitter a:hover {
	background:#4892cb;
}

.sns .fa-twitter {
	border-right:1px solid #9ACFF4;
	padding-right:15px;
}

/* Facebook */
.sns .facebook a {
	background:#3b5998;
}
.sns .facebook a:hover {
	background:#324c81;
}

.sns .fa-facebook {
	border-right:1px solid #607BB2;
	padding-right:15px;
}

/* グーグル */
.sns .googleplus a {
	background:#dc4e41;
}
.sns .googleplus a:hover {
	background:#bb4237;
}

.sns .fa-google-plus {
	border-right:1px solid #E0776D;
	padding-right:13px;
}

/* はてぶ */
.sns .hatebu a {
	background:#00a5de;
}

.sns .hatebu a:hover {
	background:#008cbd;
}

.sns .fa-hatena {
	border-right:1px solid #48B6DB;
	padding-right:15px;
}

/* LINE */
.sns .line a {
	background:#25af00;
}
.sns .line a:hover {
	background:#219900;
}

.sns .fa-comment {
	border-right:1px solid #29c200;
	padding-right:15px;
}

/* Pocket */
.sns .pocket a {
	background:#f03e51;
}

.sns .fa-get-pocket {
	border-right:1px solid #F27985;
	padding-right:15px;
}
.sns .pocket a:hover {
	background:#c0392b;
}

