@charset "utf-8";

/* clearfix */
.cf{
	zoom: 1;
}
.cf:before, .cf:after{
	content: "";
	display: table;
}
.cf:after{
	clear: both;
}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
全デバイス共通のスタイルとスマートフォンおよび小型タブレット向けレイアウトの指定
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/*==================================================
body
====================================================*/

body{
	width: 100%;
	background-color: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #000;
	font-size: 16px;
}

a{
	color: #000;
	text-decoration: underline;
}

a:hover{
	color: #000;
	text-decoration: underline;
}

img{
	vertical-align: middle;
}

.kaig{
	display: none;
}

.bold{
	font-weight: bold;
}

.red{
	color: #ff0000;
}

/*==================================================
header
====================================================*/

header{
	border-top: solid 3px #de3923;
}

header h1, header .logo{
	text-align: center;
	margin: 15px;
}

header h1 img, header .logo img{
	width: 100%;
	max-width: 309px;
}

header p{
	display: none;
}

header p.logo{
	display: block;
}

/*==================================================
topnav
====================================================*/

nav#gl_menu ul#main-menu{
	border-top: solid 1px #de3923;
	border-bottom: solid 1px #de3923;
}

/*==================================================
topimg
====================================================*/

#topimg {
	height: 600px !important;
}

#topimg p img{
	display: block;
	position: absolute;
	left: 20px;
	top: 20px;
	width: 90%;
	max-width: 860px;
}

/*==================================================
topcopy
====================================================*/
#topcopy{
	background: url(../img/copy01_bg.png) left top repeat-x;
	background-size: cover;
	margin-top: 30px;
}


#topcopy p{
	text-align: center;
	padding: 60px 15px;
}

#topcopy p img{
	width: 100%;
	max-width: 800px;
}



/*==================================================
contnets
====================================================*/

#contents .top_cont{
	background: url(../img/top_contents_bg.png) left top repeat;
	background-size: contain;
	padding-top: 30px;
	padding-bottom: 30px;
	margin-top: 30px;
	border-top: solid 1px #de3923;
	border-bottom: solid 1px #de3923;
}

/*#contents #top_cont_fast{
	margin-top: 0;
}*/

#contents .top_cont h2{
	text-align: center;
}

#contents .top_cont h2 img{
	width: 100%;
	max-width: 716px;
}

#contents .top_cont p img{
	width: 100%;
	max-width: 1920px;
}

#contents .top_cont ul li{
	background-color: #000000;
	color: #ffffff;
	border: solid 1px #666666;
	line-height: 1.5;
	padding: 15px 0 15px 0;
	margin-top: 15px;
	text-align: center;
	list-style-type: none;
}

#contents .top_cont ul li a{
	display: block;
	width: 100%;
	color: #ffffff;
}

#contents #top_news{
	padding: 30px 15px 15px 15px;
	background-color: #ffffff;
}

#contents #top_news h2{
	font-size: 24px;
}

#contents #top_news article{
	line-height: 1.5;
	border-bottom: double 3px #de3923;
	margin-top: 30px;
}

#contents #top_news article h3{
	border-bottom: solid 1px #de3923;
	
}

#contents #top_news article div{
	padding: 15px;
}

#contents #top_news article div p{
	padding-bottom: 15px;
}

#contents #top_news article div p:last-child{
	padding-bottom: 0;
}

#contents #top_news #news_history{
	background-color: #000000;
	padding: 10px;
	text-align: center;
	margin-top: 15px;
}

#contents #top_news #news_history a{
	display: block;
	width: 100%;
	color: #ffffff;
}

/*==================================================
footer
====================================================*/
footer{
	margin-top: 60px;
}

footer nav{
	background-color: #4f4f4f;
}

footer nav ul{
	padding: 15px;
}

footer nav ul li{
	list-style-type: none;
	line-height: 1.5;
}

footer nav ul li.lay1{
	background: url(../img/footer_nav.png) left 5px no-repeat;
	padding-left: 10px;
}

footer nav ul li a{
	color: #ffffff;
}

footer nav ul li a:hover{
	color: #ffffff;
}

footer #foot_addr{
	background-color: #efefef;
	line-height: 1.5;
	padding: 15px;
}

footer #foot_addr a{
	color: #000000;
}

footer .cor{
	background-color: #efefef;
	border-top: solid 2px #de3923;
	padding: 15px;
	line-height: 1.5;
}

/*==================================================
pagetop
====================================================*/

.pagetop {
    display: none;
    position: fixed;
    bottom: 0;
    right: 30px;
}
.pagetop a {
    display: block;
    /*background-color: #ccc;*/
    text-align: center;
    color: #222;
    font-size: 24px;
    text-decoration: none;
}
 
.pagetop a:hover {
    display: block;
    /*background-color: #1b608c;*/
    text-align: center;
    color: #fff;
    font-size: 24px;
    text-decoration: none;
}





/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
メディアクエリによる切り替え
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* PC向けおよび大型タブレット向けのレイアウトの指定：768px～1320px */
@media only screen and (min-width: 768px){
	
	/* header */
	header h1, header .logo{
		width: 309px;
		float: left;
		margin-top: 18px;
	}
	
	header p{
		display: block;
		width: 255px;
		float: right;
		margin: 15px;
	}
	
	/* topimg */
	#topimg p img{
		width: 60%;
	}
	
	/* contents */
	#contents .top_cont ul{
		width: 80%;
		margin: 0 auto;
	}
	
	#contents .top_cont ul li{
		width: 33%;
		float: left;
	}
	
	#contents .top_cont ul.row4 li.fast{
		margin-left: 7%;
		margin-right: 20%;
	}
	
	#contents .top_cont ul.row2 li.fast{
		margin-left: 7%;
		margin-right: 20%;
	}
	
	#contents #top_news article h3{
		border-bottom: none;
		width: 30%;
		float: left;
	}
	
	#contents #top_news article div{
		width: 67%;
		float: right;
		padding: 0 0 15px 0;
	}
	
	/* footer */
	footer nav ul li.lay1{
		width: 31%;
		float: left;
	}
	
	footer #foot_addr{
		text-align: center;
	}
	
	footer .cor{
		text-align: center;
	}
	
	
}

/* PC向けレイアウトの指定：961px以上では固定レイアウト 1280px */
@media only screen and (min-width: 1321px){
	
	body{
		font-size: 14px;
	}
	
	.kaig{
		display: inline;
	}
	
	/* header */
	header #header_in{
		width: 1280px;
		margin: 0 auto;
	}
	
	/* nav */
	nav#gl_menu{
		border-top: solid 1px #de3923;
		border-bottom: solid 1px #de3923;
	}
	
	nav#gl_menu ul#main-menu{
		width: 1280px;
		margin: 0 auto;
		border-top: none;
		border-bottom: none;
	}
	
	/* topimg */
	
	#topimg p img{
		width: 40%;
	}
	
	/* contents */
	#contents .top_cont .top_cont_in{
		width: 1280px;
		margin: 0 auto 30px auto;
	}
	
	#contents .top_cont ul{
		width: 100%;
	}
	
	#contents .top_cont ul li a{
		text-decoration: none;
	}
	
	#contents .top_cont ul.row3 li{
		width: 424px;
		margin-top: 0;
	}
	
	#contents .top_cont ul.row3 li.fast{
		width: 426px;
	}
	
	#contents .top_cont ul.row2 li{
		width: 638px;
		margin-top: 0;
	}
	
	#contents .top_cont ul.row2 li.fast{
		margin: 0;
	}
	
	#contents .top_cont ul.row4 li{
		width: 318px;
		margin-top: 0;
	}
	
	#contents .top_cont ul.row4 li.fast{
		margin: 0;
	}
	
	#contents #top_news #top_news_in{
		width: 1280px;
		margin: 0 auto;
	}
	
	#contents #top_news #news_history a{
		text-decoration: none;
	}
	
	/* footer */
	footer nav ul.foot_nav_in{
		width: 1280px;
		margin: 0 auto;
		font-size: 13px;
	}
	
	footer nav ul li.lay1{
		width: 13%;
		float: left;
	}
}
