@charset "utf-8";
/* 標準可変メディア
   メモ : 可変メディアでは、HTML からメディアの高さおよび幅の属性を削除する必要がある
   http://www.alistapart.com/articles/fluid-images/ 
*/
img, object, embed, video{ max-width: 100%; }
@media screen and (max-width: 989px) {
	img{
		height: inherit;
	}
}

/* IE 6 では最大幅がサポートされていないため、デフォルトで幅 100% に設定される */
.ie6 img{ width:100%; }

/*
	Dreamweaver 可変グリッドプロパティ
	----------------------------------
	dw-num-cols-mobile:		5;
	dw-num-cols-tablet:		8;
	dw-num-cols-desktop:	10;
	dw-gutter-percentage:	25;
	
	以下からヒントを入手 : Ethan Marcotte 氏の「レスポンシブ Web デザイン」 
	http://www.alistapart.com/articles/responsive-web-design
	
	および Joni Korpi 氏の「Golden Grid System」
	http://goldengridsystem.com/ 
*/


/*==================================
【目次】
clearfix
pc-sp切り替え
ベース
ヘッダ
ナビ
メイン
サイド
ニュー
フッタ
*/

/*==================================
clearfix
==================================*/
/* for modern browser */
.clearfix{ display:inline-block; }
.clearfix:after{
	content:".";
	display:block;
	clear:both;
	visibility:hidden;
	height:0;
	}
/* Hides from IE-mac \*/
* html .clearfix{ height:1%; }
.clearfix{ display:block; }
/* End hide from IE-mac */
/* 矢印等の縦軸合わせ */

/*==================================
pc/sp切り替え
==================================*/
.sp{ display: none; }

@media all and (max-width: 750px){
	.pc{ display: none; }
	.sp{ display: block; }
}

/*==================================
ベース
==================================*/
html, body{
	position:relative;
	min-width:980px;
/*	font-family: "FP-HiraMinStdN-W2";
  font-weight: 300;*/
	}
html { font-size: 62.5%; } /* 10px */

@media screen and (max-width: 750px) {
	html, body {
		min-width: inherit;
		}
	}
/*.container{
	position:relative;
}
@media screen and (max-width: 750px) {
#contents{
	float:left;
	width:700px;
	}
#contents.wide{
	width:980px;
	}
@media screen and (max-width: 750px) {
	#contents{
		margin-bottom: 50px;
	}
	#contents,#contents.wide{
		width: 100%;
		}
	}*/

/*==================================
ヘッダ
==================================*/
#header{
	position: relative;
	min-width:980px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 35px 15px 180px;
	box-sizing: border-box;
	}
#header h1{
	float: right;
	width: 168px;
	margin-left: 64px;
	}
#header .copy{
	float: right;
	width: 303.5px;
	}

@media screen and (max-width: 750px) {
	#header{
		width: 100%;
		min-width:0;
		padding: 24% 0 29.333%;
		}
	#header h1{
		float: none;
		width: 37.067%;
		margin-left: 45.333%;
		margin-bottom: 16%;
		}
	#header .copy{
		float: none;
		width: 56.533%;
		margin-left: 22.133%;
		}
}

/*==================================
ナビ
==================================*/
.mdLayer{ display: none; }
.mdWrap{ display: none; }


@media screen and (max-width: 750px) {
	.mdLayer{
		background-color: #fff;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
    height: 100dvh;
		z-index: 9999;
		pointer-events: none;
		}
	.mdWrap{
		position: fixed;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100vh;
		height: 100dvh;
		margin: 0 auto;
		z-index: 9999;
		overflow-y: auto;
		/* pointer-events: none; */
		}
	.mdWrap .spNav{
		position: relative;
		display: block;
		margin: 5.333% 0 9.333%;
		text-align: center;
		}
	.mdWrap .spNav p{ pointer-events: auto; }
	.mdWrap .spNav .burger{
		width: 6.933%;
		margin: 0 auto;
		opacity: 1;
    -webkit-transition: color .3s, background .3s;
    transition: color .3s, background .3s;
		}
	.mdWrap .spNav .burger.hide{
		opacity: 0;
		pointer-events: none;
		}
	.mdWrap .spNav .close{
		display: none;
		position: absolute;
		top:0;
		left:0; right:0;
		width: 6.933%;
		margin: 0 auto;
		}
	.mdWrap .navBox{
		display: none;
		width: 68%;
		margin: 0 auto 8%; 
		pointer-events: auto;
    overflow-y: scroll;
		}
	.mdWrap .btn-1fb244da a{
		display: block;
		border-bottom: solid 3.733vw #ffd700;
		width: 83.392%;
		margin: 0 auto 14.706%;
		font-size: 7.221vw;
		color: #000;
		letter-spacing: -0.34rem;
		text-align: center;
		}
	.mdWrap .btn-1fb244da a:hover{ text-decoration: none; }

	.mdWrap .searchBox{ margin-bottom: 11.765%; }
	.mdWrap .searchBox form{ font-size: 0; }
	.mdWrap .searchBox form input{
		display: inline-block;
		vertical-align: middle;
		font-size: 18px;
		}
	.mdWrap .searchBox form input[type="text"]{
		border: solid 2px #919191;
		border-right: none;
		width: 85.294%;
		padding: 2.941% 0 2.941% 2.941%;
		box-sizing: border-box;
		}
	.mdWrap .searchBox form input[type="submit"]{
		border: solid 2px #919191;
		border-left: none;
		background: url(../img/common/ico_search.png) no-repeat center/24px 24px;
		width: 14.706%;
		padding: 2.941%;
		cursor: pointer;
		box-sizing: border-box;
		}

	.mdWrap .categoryBox{ margin-bottom: 16.667%; }
	.mdWrap .categoryBox h3{
		margin-bottom: 20px;
		font-size: 7.307vw;
		letter-spacing: -0.1rem;
		}
	.mdWrap .categoryBox ul li{
		position: relative;
		background: url("../img/common/line_dot.png") repeat-x left bottom;
		margin-bottom: 3.922%;
		padding-bottom: 1.961%;
		}
	.mdWrap .categoryBox ul li:last-child{ margin-bottom: 0; }
	.mdWrap .categoryBox ul li a{
		display: inline-block;
		box-sizing: border-box;
		width: 100%;
		padding-left: 9.804%;
		font-size: 4.869vw;
		color: #000;
		letter-spacing: 0;
		line-height: 1.3;
		}
	.mdWrap .categoryBox ul li a::before{
		position: absolute;
		left: 0;
		top: 0;
		content: "◎";
		}
	.mdWrap .categoryBox ul li a:hover{ text-decoration: none; }

	.mdWrap #snsLnk{
		text-align: center;
		font-size: 0;
		margin-bottom: 14.706%;
		}
	.mdWrap #snsLnk li{
		display: inline-block;
		vertical-align: top;
		/* width: 25.490%;
		margin-left: 5.882%; 3つのとき */
		width: 19.608%;
		margin-left: 3.333%;
		}
	.mdWrap #snsLnk li:first-child{ margin-left: 0; }
	.mdWrap #snsLnk + .bnrLnk{
		margin-top: 7.848%;
		}
  .mdWrap .bnrLnk img{
    width: 100%;
  }
}


/*==================================
メイン
==================================*/
#wrap{ overflow: hidden; }
#contents{
	min-width:980px;
	max-width: 1100px;
	margin: auto;
	padding: 0 15px 80px;
	box-sizing: border-box;
	}
#mainColumn{
	float: left;
	width: 675px;
	}

@media screen and (max-width: 750px) {
	#contents{
		width: 100%;
		min-width:0;
		margin: auto;
		padding: 0;
		}
	#mainColumn{
		float: none;
		width: 85.6%;
		margin: 0 auto;
		}
}

/*==================================
サイド
==================================*/
#sideWrap{
	float: right;
	width: 260px;
	}
#sideWrap .btn-1fb244da a{
	display: block;
	border-bottom: solid 19px #ffd700;
	width: 100%;
	margin-bottom: 40px;
	font-size: 34px;
	color: #000;
	letter-spacing: -0.18rem;
	text-align: center;
	}
#sideWrap .btn-1fb244da a:hover{ text-decoration: none; }

#sideWrap .socialShare{
	text-align: center;
	font-size: 0;
	margin: 0 -5px 20px;
	}
#sideWrap .socialShare div{
	display: inline-block;
	margin: 0 1.5px;
	vertical-align: top;
	}

#sideWrap .profBox{ margin-bottom: 45px; }
#sideWrap .profBox p.txt{
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: 0;
	}
#sideWrap .profBox p.txt a{
	color: #000;
	text-decoration: underline;
	}

#sideWrap .searchBox{ margin-bottom: 34px; }
#sideWrap .searchBox form{ font-size: 0; }
#sideWrap .searchBox form input{
	display: inline-block;
	vertical-align: middle;
	font-size: 18px;
	}
#sideWrap .searchBox form input[type="text"]{
	border: solid 2px #919191;
	border-right: none;
	width: 220px;
	padding: 10px 0 10px 10px;
	box-sizing: border-box;
	}
#sideWrap .searchBox form input[type="submit"]{
	border: solid 2px #919191;
	border-left: none;
	background: url(../img/common/ico_search.png) no-repeat center/24px 24px;
	width: 40px;
	padding: 10px;
	cursor: pointer;
	box-sizing: border-box;
	}

#sideWrap .categoryBox{ margin-bottom: 55px; }
#sideWrap .categoryBox h3{
	margin-bottom: 20px;
	font-size: 24px;
	letter-spacing: -0.1rem;
	}
#sideWrap .categoryBox ul li{
	position: relative;
	background: url("../img/common/line_dot.png") repeat-x left bottom;
	margin-bottom: 8px;
	padding-bottom: 4px;
	}
#sideWrap .categoryBox ul li:last-child{ margin-bottom: 0; }
#sideWrap .categoryBox ul li a{
	display: inline-block;
	width: 100%;
	padding-left: 20px;
	font-size: 16px;
	color: #000;
	letter-spacing: 0;
	line-height: 1.3;
	}
#sideWrap .categoryBox ul li a::before{
	position: absolute;
	left: 0;
	top: 0;
	content: "◎";
	}
#sideWrap .categoryBox ul li a:hover{ text-decoration: none; }

#sideWrap #snsLnk{
	text-align: center;
	font-size: 0;
	margin-bottom: 40px;
	}
#sideWrap #snsLnk li{
	display: inline-block;
	vertical-align: top;
	/* width: 72px; 
	margin-left: 16px; 3つのとき */
	width: 53px;
	margin-left: 12px;
	}
#sideWrap #snsLnk li:first-child{ margin-left: 0; }
#sideWrap #snsLnk + .bnrLnk{
	margin-top: 20px;
	}

@media screen and (max-width: 750px) {
	#sideWrap{
		float: none;
		width: 85.6%;
		margin: 0 auto 17.333%;
 		}
	#sideWrap .btn-1fb244da a{
		border-bottom-width: 4.267vw;
		width: 71.651%;
		margin: 0 auto 11.682%;
		font-size: 8vw;
		letter-spacing: -0.38rem;
		}

	#sideWrap .socialShare{ margin: 0 -5% 9.346%; }
	#sideWrap .socialShare div{
		display: inline-block;
		margin: 0 1.5px;
		vertical-align: top;
		}

	#sideWrap .profBox{ margin-bottom: 0; }
	#sideWrap .profBox p.txt{
		font-size: 3.733vw;
		line-height: 1.857;
		}

	#sideWrap .searchBox{ display: none;}
	#sideWrap .categoryBox{ display: none;}
	#sideWrap #snsLnk{ display: none; }
}

/*==================================
ニュー
==================================*/
/*
#main_column .newWrap{  }
#main_column .newWrap h3{ color: #868686; font-size: 17px; font-size: 1.7rem; letter-spacing: 0.15rem; margin-bottom: 8px; }
#main_column .newWrap .t_info_update{ font-size: 0; }
#main_column .newWrap .t_info_update li{ border-bottom: 1px dotted #bebebe; }
#main_column .newWrap .t_info_update li a{ display: block; padding: 10px 0; font-size: 0; }
#main_column .newWrap .t_info_update li a:hover{ text-decoration: none; }
#main_column .newWrap .t_info_update li a p{ display: table-cell; vertical-align: middle; font-size: 13px; font-size: 1.3rem; letter-spacing: 0.1rem; }
#main_column .newWrap .t_info_update li a .newslist_time{ width: 100px; color: #939393; font-size: 12px; font-size: 1.2rem; }
#main_column .newWrap .t_info_update li a:hover .newslist_text{ text-decoration: underline; }

@media screen and (max-width: 989px) {
	#main_column .newWrap h3{ font-size: 16px; font-size: 1.6rem; margin-bottom: 1.242%; margin-bottom: 1rem; }
	#main_column .newWrap .t_info_update li a{ padding: 0.93rem 0; }
	#main_column .newWrap .t_info_update li a .newslist_time{ width: 10rem; }
}

@media screen and (max-width: 767px) {
	#main_column .newWrap h3{ margin-bottom: 1.842%; }
	#main_column .newWrap .t_info_update li a{ padding: 1.053% 0; padding: 0.8rem 0; }
	#main_column .newWrap .t_info_update li a .newslist_time{ width: 10rem; }
}*/

/*==================================
フッタ
==================================*/
footer{
	background: #f3f3f3;
	width: 100%;
	min-width:980px;
	padding: 45px 0 50px;
	}
footer .footIn{
	width: 100%;
	max-width: 1100px;
	margin: auto;
	padding: 0 15px;
	box-sizing: border-box;
	}
footer .footIn a:hover{ opacity: .7; }
footer .footIn .lBlk{
	float: left;
	width: 327px;
	margin-bottom: 10px;
	font-size: 0;
	}
footer .footIn .lBlk .logo{
	width: 327px;
	margin-bottom: 10px;
	}
footer .footIn .lBlk .fNav p{
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	color: #000;
	}
footer .footIn .lBlk .fNav p::before{
	content: "|";
	display: inline-block;
	vertical-align: middle;
	margin: 0 8px;
	font-size: 12px;
	color: #000;
	pointer-events: none;
	}
footer .footIn .lBlk .fNav p:first-child::before{ display: none; }
footer .footIn .lBlk .fNav p a{
	font-size: 12px;
	color: #000;
	text-decoration: none;
	}
footer .footIn .lBlk .fNav a:hover{ opacity: .7; }
footer .footIn .tel{
	float: right;
	font-size: 31px;
	line-height: .7;
	}
footer .footIn .tel img{
	display: inline-block;
	width: 39px;
	margin-right: 5px;
	vertical-align: top;
	}
footer .footIn .tel a{
	display: inline-block;
	vertical-align: middle;
	}
footer .footIn .tel span{
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0;
	}
footer .footIn .copyright{
	clear: both;
	font-size: 10px;
	}

@media screen and (max-width: 750px) {
	footer{
		min-width:0;
		padding: 10.667% 0;
		}
	footer .footIn{
		width: 76%;
		padding: 0;
		}
	footer .footIn a:hover{ opacity: 1; }
	footer .footIn .lBlk{
		float: none;
		border-bottom: solid 1px #5a5a5a;
		width: 100%;
		margin-bottom: 7.018%;
		padding-bottom: 7.018%;
		}
	footer .footIn .lBlk .logo{ display: none; }
	footer .footIn .lBlk .fNav{
		width: 66.649%;
		margin: 0 auto;
		text-align: center;
		}
	footer .footIn .lBlk .fNav p{
		margin-bottom: 5.882%;
		font-size: 3.2vw;
		}
	footer .footIn .lBlk .fNav p::before{
		margin: 0 1.5vw;
		font-size: 3.2vw;
		vertical-align: top;
		}
	footer .footIn .lBlk .fNav p:nth-child(3)::before{ display: none; }
	footer .footIn .lBlk .fNav p a{ font-size: 3.2vw; }
	footer .footIn .lBlk .fNav a:hover{ opacity: 1; }
	footer .footIn .tel{
		float: none;
		font-size: 3.2vw;
		line-height: 1;
		letter-spacing: -0.12em;
		text-align: center;
		}
	footer .footIn .tel a{
		margin-left: 1.44%;
		vertical-align: baseline;
		letter-spacing: 0;
		}
	footer .footIn .tel span{ font-size: 3.2vw; }
	footer .footIn .logo{
		width: 92.281%;
		margin: 0 auto 7.018%;
		}
	footer .footIn .copyright{
		font-size: 3.2vw;
		text-align: center;
		}
}




#slideNavi_trigger {
 font-size:32px;
 font-size:3.2rem;
 position:absolute;
 z-index:1000;
 top:10px;
 top:1rem;
 left:10px;
 left:1rem;
 left:20px;
 left:2rem;
 display:none;
 color:#939393
}
#slideNavi {
 font-size:15px;
 font-size:1.5rem;
 position:absolute;
 position:fixed;
 z-index:9000;
 top:0;
 display:none;
 overflow-x:none;
 overflow-y:auto;
 box-sizing:border-box;
 width:260px;
 width:26rem;
 height:100%;
 border-right:1px solid #e5e5e5;
 border-right:.1rem solid #e5e5e5;
 background-color:#fff
}
#slideNavi .sidr-inner>p {
 margin-right:15px;
 margin-right:1.5rem;
 margin-left:15px;
 margin-left:1.5rem
}
#slideNavi.right {
 right:-260px;
 right:-26rem;
 left:auto
}
#slideNavi.left {
 right:auto;
 left:-260px;
 left:-26rem
}
#slideNavi ul {
 display:block;
 padding:0
}
#slideNavi ul li {
 display:block;
 margin:0
}
#slideNavi ul li a,
#slideNavi ul li span {
 position:relative;
 display:block;
 padding:15px;
 padding:1.5rem;
 text-decoration:none;
 color:#333
}
#slideNavi ul li a:before,
#slideNavi ul li span:before {
 font-size:20px;
 font-size:2rem;
 position:absolute;
 top:50%;
 right:15px;
 right:1.5rem;
 margin-top:-10px;
 margin-top:-1rem
}
#slideNavi ul li br { display:none!important; }

@media screen and (max-width:989px) {
 #slideNavi ul li ul li {
  font-size:13px;
  font-size:1.3rem;
  padding-left:20px;
  padding-left:2rem
 }
}
@media screen and (max-width:989px) {
 #slideNavi_trigger {
  display:block
 }
}
@media screen and (max-width:767px) {
 #slideNavi_trigger {
  left:20px;
  left:2rem
 }
}


