@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; overflow:hidden; }
.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%; vertical-align: top; }
a:hover img { opacity:0.8; filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; }
.clearBoth { clear:both; font-size:1px; height:0; text-align:center; }
iframe { vertical-align: bottom;}





/*-------------------------------------------*/
/*	#ナビゲーション
/*-------------------------------------------*/
/* --------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;}
ul#menu-glnv>li { padding-top:20px; padding-bottom:20px; }/*リンク部分を広くするために必要*/
#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 .2s ease;
 transition: all .2s 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;}
	}

/*-------------------------------------------*/
/*	ログイン時の編集ボタン
/*-------------------------------------------*/
.hensyuu { font-size:10px; color:#FFF; background-color: #EEE; border: #E1E1E1 1px solid; display:inline-block; width:50px; font-weight:bold; text-align:center; border-radius: 3px; cursor:pointer; padding-left:3px; padding-right:3px; position: absolute; bottom:0px; right:0px; }
.hensyuu a { color:#FFF; text-decoration:none; }
.hensyuu:hover { opacity:0.8; filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; }
.log_tensen { border: #E1E1E1 dashed 1px; margin-bottom:3px; margin-left:3px; margin-right:3px; position:relative; }

/*-------------------------------------------*/
/*	▼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; }


/*-------------------------------------------*/
/*	その他
/*-------------------------------------------*/
/* 中央に合わせて写真のトリミング */
.trim { overflow: hidden; width: 100%;  /* トリミングしたい枠の高さ */ position: relative; }
.trim img {max-width: none !important;  position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

/*-------------------------------------------*/
/*	#テーブルをスクロールさせる
/*-------------------------------------------*/
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; }